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

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

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

RTL設(shè)計編碼原則

sakobpqhz6 ? 來源:IC學(xué)習(xí) ? 2023-01-12 09:44 ? 次閱讀

同步設(shè)計和異步設(shè)計的特點

同步邏輯是時鐘之間有固定的因果關(guān)系。異步邏輯是各時鐘之間沒有固定的因果關(guān)系。

同步電路特點:時鐘個數(shù)只有一個,電路中觸發(fā)器的時鐘輸入端連接同一個時鐘脈沖源,所有觸發(fā)器的狀態(tài)變化都與所加的時鐘脈沖信號同步;由于只有一個時鐘,所以整個電路所有時鐘應(yīng)該是同源同相的;一般會濾掉毛刺,不需要特別考慮競爭與冒險;有利于靜態(tài)時序分析;設(shè)計的電路具有強耦合關(guān)系,不利于面積優(yōu)化與低功耗優(yōu)化,不靈活;存在時鐘偏斜問題。

b3907712-91a2-11ed-bfe3-dac502259ad0.png

異步電路特點:電路中沒有統(tǒng)一的時鐘(可以有多個時鐘),有些觸發(fā)器的時鐘輸入端與時鐘脈沖源相連(與時鐘脈沖源同步),其余觸發(fā)器狀態(tài)變化不與時鐘脈沖源同步;由于有多個時鐘,因此有些時鐘是同源不同相的,有些是不同源的;很大概率存在競爭與冒險;一般無法對異步電路進行靜態(tài)時序分析;電路耦合關(guān)系很弱,設(shè)計比較靈活,相同條件下比同步電路功耗低;不存在時鐘偏斜問題。

b3c75d68-91a2-11ed-bfe3-dac502259ad0.png

做模塊劃分時應(yīng)該考慮哪些問題

結(jié)構(gòu)層次化是設(shè)計的一種基本思想,需要注意:結(jié)構(gòu)不宜太深,否則綜合時面積過大,綜合工具會默認做扁平化處理;頂層設(shè)置不宜過于復(fù)雜,主要完成諸如輸入輸出,模塊調(diào)用與實例化,全局時鐘,三態(tài)總線,全局復(fù)位等等簡單的功能;雙向的信號最好只在頂層出現(xiàn);子模塊之間最好不要有跨層次的接口;合理考慮子模塊的功能、結(jié)構(gòu)、時序等。

模塊劃分的技巧:對每個同步時序設(shè)計的子模塊的輸出使用寄存器處理;將相關(guān)的邏輯或者可以復(fù)用的邏輯寫在一起;將不同優(yōu)化目標(biāo)的部分分開,時序的和面積的分開處理;將時序?qū)捤傻姆值酵粋€模塊;將存儲器件獨立劃分;合理規(guī)劃模塊的規(guī)模。

b3fdfe72-91a2-11ed-bfe3-dac502259ad0.png

圖1模塊劃分示意圖

組合邏輯設(shè)計有哪些考慮點

根據(jù)邏輯功能的不同特點,可以將數(shù)字電路分成兩大類,一類稱為組合邏輯電路(簡稱組合電路),另一類稱為時序邏輯電路(簡稱時序電路)。

常見組合邏輯電路包括編碼器、譯碼器、數(shù)據(jù)選擇器、數(shù)值比較器、加法器、函數(shù)發(fā)生器、奇偶校驗器/發(fā)生器等。

b411a60c-91a2-11ed-bfe3-dac502259ad0.png

圖2組合邏輯之半加器

組合邏輯設(shè)計注意事項包括:避免組合邏輯反饋環(huán)路(容易毛刺、振蕩、時序違規(guī)等);替換延遲鏈,用倍頻、分頻或者同步計數(shù)器完成;替換異步脈沖產(chǎn)生單元(毛刺生成器),用同步時序設(shè)計脈沖電路;慎用鎖存器,鎖存器容易產(chǎn)生毛刺。

RTL代碼優(yōu)化有哪些技巧

Pipelining,即流水線時序優(yōu)化方法,其本質(zhì)是調(diào)整一個較長的組合邏輯路徑中的寄存器位置,用寄存器合理分割該組合邏輯路徑,從而降低了對路徑的Clock-To-Output和Setup等時間參數(shù)的要求,達到提高設(shè)計頻率的目的。但是必須要注意的是,使用Pipelining優(yōu)化技術(shù)只能合理地調(diào)整寄存器位置。

模塊復(fù)用與Resource Sharing,Sharing模塊復(fù)用和Resource Sharing是一種節(jié)約面積的思想,在設(shè)計電路中,在不影響性能的情況下,實現(xiàn)最少的邏輯資源開銷。

邏輯復(fù)制是一種通過增加面積而改善時序條件的優(yōu)化手段。邏輯復(fù)制最常使用的場合是調(diào)整信號的扇出。如果某個信號需要驅(qū)動后級的很多單元,換句話說,也就是其扇出非常大,那么為了增加這個信號的驅(qū)動能力,必須插入很多級Buffer,這樣就在一定程度上增加了這個信號路徑的延時。這時可以復(fù)制生成這個信號的邏輯,使多路同頻同相的信號驅(qū)動后續(xù)電路,平均到每路的扇出變低,不需要加Buffer也能滿足驅(qū)動能力的要求,這樣就節(jié)約了該信號的路徑時延。

香農(nóng)擴展(Shannon Expansion)也是一種邏輯復(fù)制、增加面積、提高頻率的時序優(yōu)化手段。香農(nóng)擴展通過邏輯復(fù)制、增加MUX(多路選擇器)來縮短某個優(yōu)先級高但組合路徑長的信號的路徑延時(信號a),從而提高該關(guān)鍵路徑的工作頻率,以增加面積換取電路時序性能的優(yōu)化。其擴展運算公式為:Fa,b,c=aF1,b,c+aF(0,b,c)。

b42cf0d8-91a2-11ed-bfe3-dac502259ad0.png

END

審核編輯 :李倩

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

    關(guān)注

    6

    文章

    918

    瀏覽量

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

    關(guān)注

    1

    文章

    384

    瀏覽量

    59534
  • 同步電路
    +關(guān)注

    關(guān)注

    1

    文章

    60

    瀏覽量

    13255

原文標(biāo)題:RTL設(shè)計編碼原則

文章出處:【微信號:IC學(xué)習(xí),微信公眾號:IC學(xué)習(xí)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    RTL8187L和802.11n

    RTL8187L和802.11n是兩種不同的無線技術(shù)和網(wǎng)絡(luò)標(biāo)準(zhǔn),它們在實際應(yīng)用中各有優(yōu)勢和局限性。 802.11n是一種無線網(wǎng)絡(luò)標(biāo)準(zhǔn),它利用MIMO(多輸入多輸出)技術(shù),可以提供更高的數(shù)據(jù)傳輸速率
    發(fā)表于 08-24 14:23

    RTL8201F 10兆可以連接,100兆無法連接是什么問題

    RTL8201F 10兆可以連接,100兆無法連接是什么問題 RTL8201F 10兆可以連接,100兆無法連接是什么問題RTL8201F 10兆可以連接,100兆無法連接是什么問題
    發(fā)表于 05-22 15:11

    rtl8367rb-cg數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《rtl8367rb-cg數(shù)據(jù)手冊.pdf》資料免費下載
    發(fā)表于 05-06 09:46 ?8次下載

    基于樹莓派5的RTL仿真體驗

    《基于樹莓派5的RTL仿真體驗》 對于FPGA或者RTL愛好者來講,樹莓派5開發(fā)板可以運行RTL仿真,仿真工具使用iverilog,波形工具使用gtkwave。為什么是這些?因為工具免費且對硬件性能
    發(fā)表于 04-30 17:35

    如何通過優(yōu)化RTL減少功耗

    對于功耗估算來說,架構(gòu)階段為時過早,物理設(shè)計階段為時已晚。有一種趨勢是在項目的RTL階段分析power hot spots。與后期分析相比,基于 RTL 的功耗分析更快、更容易執(zhí)行,迭代時間更短。
    的頭像 發(fā)表于 04-05 09:15 ?1864次閱讀
    如何通過優(yōu)化<b class='flag-5'>RTL</b>減少功耗

    編碼器如何選擇合適的脈沖數(shù)

    編碼器脈沖數(shù)的選擇原則 1. 分辨率需求:編碼器的分辨率決定了脈沖數(shù)的選擇。在符合應(yīng)用需求的前提下,應(yīng)選擇盡可能高的分辨率,以提高測量精度。 2、依據(jù)轉(zhuǎn)速要求選取:依據(jù)設(shè)備的工作速度要求來選擇
    的頭像 發(fā)表于 03-01 13:36 ?1826次閱讀
    <b class='flag-5'>編碼</b>器如何選擇合適的脈沖數(shù)

    RTL9210B-CG數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《RTL9210B-CG數(shù)據(jù)表.rar》資料免費下載
    發(fā)表于 02-03 15:19 ?32次下載

    磁性編碼器和光電編碼器的比較

    伺服電機編碼器是一種關(guān)鍵的反饋裝置,用于測量和控制電機的轉(zhuǎn)速和位置。在選擇伺服電機編碼器時,常常面臨一個選擇:使用磁電編碼器還是光電編碼器。接下來將從幾個關(guān)鍵方面比較這兩種類型的
    的頭像 發(fā)表于 01-18 10:29 ?2497次閱讀

    貼片電感選型原則

    電子發(fā)燒友網(wǎng)站提供《貼片電感選型原則.docx》資料免費下載
    發(fā)表于 12-28 09:15 ?5次下載

    嵌入式C編碼原則

    1 編碼原則 1.1 可讀性原則 (1)清晰第一 清晰性是易于維護程序必須具備的特征。維護期變更代碼的成本遠遠大于開發(fā)期,編寫程序應(yīng)該以人為本,計算機第二。一般情況下,代碼的可閱讀性高于性能,只有
    的頭像 發(fā)表于 12-07 14:21 ?308次閱讀

    數(shù)字前端生存指南—RTL

    在數(shù)字前端領(lǐng)域,RTL幾乎與“設(shè)計代碼”概念相同。
    的頭像 發(fā)表于 12-04 10:14 ?7880次閱讀
    數(shù)字前端生存指南—<b class='flag-5'>RTL</b>

    從可綜合的RTL代碼的角度聊聊interface

    SystemVerilog引入了interface,這里我們從可綜合的RTL代碼的角度聊聊interface。
    的頭像 發(fā)表于 10-12 09:06 ?1518次閱讀
    從可綜合的<b class='flag-5'>RTL</b>代碼的角度聊聊interface

    RTL8211F參考原理圖

    RTL8211F參考原理圖
    發(fā)表于 10-11 15:26 ?99次下載

    RTL8305光纖收發(fā)器原理圖

    RTL8305光纖收發(fā)器原理圖
    發(fā)表于 10-11 15:25 ?15次下載

    JK觸發(fā)器與T觸發(fā)器的Verilog代碼實現(xiàn)和RTL電路實現(xiàn)

    JK 觸發(fā)器的 Verilog 代碼實現(xiàn)和 RTL 電路實現(xiàn)
    的頭像 發(fā)表于 10-09 17:29 ?3793次閱讀
    JK觸發(fā)器與T觸發(fā)器的Verilog代碼實現(xiàn)和<b class='flag-5'>RTL</b>電路實現(xiàn)