色偷偷偷久久伊人大杳蕉,色爽交视频免费观看,欧美扒开腿做爽爽爽a片,欧美孕交alscan巨交xxx,日日碰狠狠躁久久躁蜜桃

x
x

不同的verilog代碼風(fēng)格看RTL視圖之一

發(fā)布時間:2016-2-24 09:54    發(fā)布者:designapp
關(guān)鍵詞: FPGA , verilog , RTL
  剛開始玩CPLD/FPGA開發(fā)板的時候使用的一塊基于EPM240T100的板子,alter的這塊芯片雖說功耗小體積小,但是資源還是很小的,你寫點稍微復(fù)雜的程序,如果不注意coding style,很容易就溢出了。當(dāng)時做一個三位數(shù)的解碼基本就讓我苦死了,對coding style的重要性也算是有一個比較深刻的認識了。
  后來因為一直在玩xilinx的spartan3 xc3s400,這塊芯片資源相當(dāng)豐富,甚至于我在它里面緩存了一幀640*480*3/8BYTE的數(shù)據(jù)都沒有問題(VGA顯示用)。而最近接觸EPM7128,它的資源似乎也不豐富,我寫著寫著有時不注意就無法布線了。由此可見coding style對設(shè)計的重要性,尤其是在資源緊張或者速度要求較高的設(shè)計中。我個人對前者的體會深一些,高速的設(shè)計沒有涉及過,只是明白一些用流水線提高速度的方法。
  可以步入正題了,先拿一段簡單的代碼開始吧。我先提一點,這回我用的是quartus II 7.0進行測試,其它的EDA工具綜合出來的RTL視圖可能會不一樣,所以僅作為在quartus II 7.0環(huán)境下的一些參考吧。不過思路是一樣的,可以借鑒的。
  Ex1:
  input[1:0] xin;
  output dout;
  assign dout = (xin == 2'b0);
  代碼很簡單,就是當(dāng)xin==2’b0時dout=1,否則dout=0。上面這段程序的RTL視圖如下:
  


  其實就是一個比較器,如果xin=2’h0,那么輸出OUT就為1。和設(shè)想一樣。
  下面是我在參考一些別人的代碼的時候看到別人一種常見的寫法,它是用了?語句。
  input[1:0] xin;
  output dout;
  assign dout = (xin == 2'b0) ? 1'b1:1'b0;
  RTL如下:
  


  是不是發(fā)現(xiàn)多了以一個選擇器(可能不叫選擇器吧,但是你明白意思就可以),這樣平白無故的就多耗用了一點資源,剛開始的時候我也是傻乎乎的跟著別人用這種寫法,但是看到RTL視圖后我就不這么干了,既然前者一樣可以得到預(yù)期結(jié)果,為什么我還要畫蛇添足多一個選擇器呢。所以,推薦使用前者。資源的節(jié)約是潛移默化的~_~
  (先說一點吧,其它的待我想起或者是感悟到了再提吧,以上也完全是我的個人愚見,如有不妥之處歡迎拍磚~_~)
                               
                                                               
                               
               
本文地址:http://www.54549.cn/thread-161107-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表