0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

盡可能避免在RTL中調(diào)用門級電路

汽車玩家 ? 來源:單眼皮老王 ? 作者:單眼皮老王 ? 2020-01-21 11:35 ? 次閱讀

隨著功能復(fù)雜度的快速提升,對芯片的要求也是隨著提高,所以現(xiàn)在一款芯片的開發(fā),往往需要數(shù)十人,長達(dá)幾個月的共同開發(fā)才能完成。

因為Verilog HDL的語法相對開放,所以每個人開發(fā)的Verilog HDL之間的差異也是非常的大。但是一個設(shè)計團(tuán)隊之間,進(jìn)行RTL模塊的交叉review、相互調(diào)用是非常頻繁的事情,所以為了增強(qiáng)RTL代碼的可移植性,以及review的效率,我們通常在一個項目開始的時候,會統(tǒng)一整理一個RTL編碼規(guī)則,里面的內(nèi)容包括,命名的規(guī)則、單詞的縮略原則,一些標(biāo)準(zhǔn)電路的常用寫法等等。往往這個編碼規(guī)則會寫的很具體,但是個人認(rèn)為,這是非常有必要的。在前面的五篇文章中,我們已經(jīng)聊了一些,今天的文章,我就繼續(xù)來聊一聊一般常見的規(guī)則。

RTL推薦編碼規(guī)則

門級電路的使用,我們一定要特別注意。在RTL編碼過程中,很多時候我們出于時序或者其他的需要,可能需要調(diào)用門級電路,那么門級電路是不是真的那么好用,可以隨意調(diào)用?答案不是的。

門級電路的特點是可讀性不強(qiáng),難于閱讀,從而導(dǎo)致后期維護(hù)、修改的困難很大,我們來看一個門級電路的例子。

and u_2x2and (out, input1, input2);

上面就是一個與門電路的實例化調(diào)用,我們再來解釋一下這個調(diào)用方式以及門級電路的含義,首先是門級電路的類型,緊接著是實例化名,括號里面是端口名,包括input端口和output端口。具體到這個例子就是,調(diào)用一個2輸入與門and,實例化名是u_2x2and,括號里面包括output端口out,以及兩個輸入端口input1和input2,寫成RTL的形式就是out = input1 & input2,另外需要注意的是,端口中的input端口和output端口的順序一定要和所調(diào)用門級電路中的順序相對應(yīng)。

從上面的例子可以看出,門級電路在使用的時候,因為并沒有邏輯表達(dá)式,只是調(diào)用工藝庫或者其他庫里面的固有電路,所以如果大量調(diào)用這類門級電路進(jìn)行電路描述,則一定要增加閱讀以及維護(hù)的復(fù)雜度。并且因為很多門級電路是在某個工藝庫下面特有的,所以如果調(diào)用這類門級電路,就只能在這種工藝下面使用,不能移植到別的工藝,這基本上是不能允許的。

所以如果我們一定要調(diào)用門級電路的話,就必須調(diào)用獨立于具體工藝庫的門電路,這樣便于后面的電路移植。一般我們常見的獨立于某種工藝的如Synopsys的GTECH庫,里面包含了很多常用的門級電路,可以方便調(diào)用。

小結(jié)

門級電路可以作為RTL建模的一種補充方式可以調(diào)用,但是我們在編寫RTL的時候,還是要盡可能避免,因為Verilog表達(dá)式確實更容易閱讀和維護(hù)了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1351

    瀏覽量

    110124
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    385

    瀏覽量

    59820
收藏 人收藏

    評論

    相關(guān)推薦

    如何測量運算放大器的輸入電容以盡可能降低噪聲

    必須確保測量精度不受PCB或測試裝置的雜散電容和電感影響。您可以通過使用低電容探頭、PCB上使用短連接線,并且避免信號走線下大面積鋪地來盡可能規(guī)避這些問題。
    發(fā)表于 04-17 09:16 ?475次閱讀

    請問怎樣修改電路使帶寬盡可能加寬到200MHz以上,增益不要有太大的波動?

    在此電路輸入為100mV,但是50MHz到100MHz才能進(jìn)行五倍的增益,超過這個頻率就會迅速衰減,我想請問怎樣修改電路使帶寬盡可能
    發(fā)表于 08-23 07:04

    低噪聲放大器的第一放大電路盡可能的放大,為什么?

    為什么低噪聲放大器的第一放大電路盡可能的放大?
    發(fā)表于 08-30 07:40

    新人求助,求一個放大電路,分析電路發(fā)熱及效率,使效率盡可能

    ,相頻-90度超過5kHz,失真度不超過20%,分析電路發(fā)熱及效率,使效率盡可能大。求大神幫助,好人一生平安
    發(fā)表于 07-21 10:02

    RTL仿真與門仿真

    調(diào)用了modelsim進(jìn)行仿真,發(fā)現(xiàn)有毛刺,后來才知道有RTL仿真,運行后波形很好。想問下如何消除
    發(fā)表于 08-08 22:57

    哪里可以買到盡可能高頻率的無線能量發(fā)射接收模塊

    哪里可以買到盡可能高頻率的無線能量發(fā)射接收模塊。哪里可以買到盡可能高頻率的無線能量發(fā)射接收模塊。哪里可以買到盡可能高頻率的無線能量發(fā)射接收模塊。哪里可以買到盡可能高頻率的無線能量發(fā)射接
    發(fā)表于 12-05 22:48

    關(guān)于RTL仿真和仿真求助~

    `剛剛本科畢業(yè),假期導(dǎo)師要求做一個設(shè)計。實驗室沒有做過FPGA的學(xué)長只好問網(wǎng)上的各位了。寫好的FPGA代碼進(jìn)行RTL仿真波形是符合要求的,如下圖。但是做仿真的時候,時序就不對了,變成了這樣
    發(fā)表于 08-06 12:12

    請問為什么低噪聲放大器的第一盡可能的放大?

    為什么低噪聲放大器的第一盡可能的放大?
    發(fā)表于 08-24 07:15

    緩沖VDAC輸出損失如何盡可能的減少?

    ,但是連接后電壓不會下降到1.9V以下。JRK直接從電位器工作。我想在PSoC和控制器之間放置一個運放來緩沖這個,但是我想盡可能少的損失,盡可能地保持輸出的精確性。我需要一個DIL包,這樣我就可以剝離
    發(fā)表于 10-08 12:43

    為什么MCU盡可能少用浮點數(shù)運算?

    為什么MCU盡可能少用浮點數(shù)運算
    發(fā)表于 10-09 08:06

    為什么MCU盡可能少用全局變量?

    為什么MCU盡可能少用全局變量
    發(fā)表于 10-11 07:07

    為什么低噪聲放大器的第一盡可能的放大呀?

    為什么低噪聲放大器的第一盡可能的放大?
    發(fā)表于 11-21 08:01

    UPS蓄電池的設(shè)計為什么要讓電池保持盡可能的溫度

    UPS 的實際應(yīng)用,溫度對電池的自然老化過程有很大影響。詳細(xì)的實驗數(shù)據(jù)表明溫度每上升 5℃,電池壽命就下降 10%,所以 UPS 蓄電池的設(shè)計應(yīng)讓電池保持盡可能的溫度。
    發(fā)表于 08-09 15:22 ?1218次閱讀

    如何盡可能地加強(qiáng)Linux的安全性和隱私性?

    本指南旨在說明如何盡可能地加強(qiáng)Linux的安全性和隱私性,并且不限于任何特定的指南。 免責(zé)聲明:如果您不確定自己在做什么,請不要嘗試本文中使用任何內(nèi)容。 本指南僅關(guān)注安全性和隱私性,而不關(guān)注性能
    的頭像 發(fā)表于 04-25 14:58 ?2432次閱讀

    如何測量運算放大器的輸入電容以盡可能降低噪聲

    測量運算放大器輸入電容時,應(yīng)關(guān)注哪些方面? 必須確保測量精度不受PCB或測試裝置的雜散電容和電感影響。您可以通過使用低電容探頭、PCB上使用短連接線,并且避免信號走線下大面積鋪地
    的頭像 發(fā)表于 04-11 03:45 ?694次閱讀
    如何測量運算放大器的輸入電容以<b class='flag-5'>盡可能</b>降低噪聲