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

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

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

介紹3個時序優(yōu)化的RTL改動及其中Formal SEC的角色

冬至配餃子 ? 來源:芯片驗證工程師 ? 作者:驗證哥布林 ? 2022-08-09 15:44 ? 次閱讀

修復(fù)關(guān)鍵路徑時序一直都是數(shù)字IC designer最耗時的工作任務(wù)之一,而且伴隨著同一個RTL設(shè)計應(yīng)用于不同的業(yè)務(wù)場景,時序、面積和功耗的約束也是不同的,所以時序優(yōu)化的方向也是多變的。

簡單來說,時序優(yōu)化的任務(wù)是常見的,并不是說RTL寫得足夠好,就不存在后續(xù)的時序優(yōu)化迭代。

本文介紹3個時序優(yōu)化的RTL改動以及在其中Formal SEC的角色。

logic redistribution

其中一種比較常用的關(guān)鍵時序修復(fù)方法是將兩個pipe之間的組合邏輯重新分配。

這個道理就是木桶原理,限制同步設(shè)計時鐘頻率的路徑就是關(guān)鍵時序路徑,如果一個木桶中所有的木板長短都是一樣的,那就是沒有短板,或者說全部都是短板。

pYYBAGLyD9-AWwBQAABughnhE9A516.png

如上圖所示,上方的設(shè)計是存在時序問題的設(shè)計,在第1個PIPE和第2個PIPE之間有一個比較長的組合邏輯,通過組合邏輯重新分配,讓組合邏輯在2個PIPE比較均勻地分配就可以優(yōu)化這類時序問題。

注意:前提是保證端到端功能是一致的,即使中間階段寄存器的狀態(tài)可能不一致。由于中間寄存器的狀態(tài)不一致所以不能夠使用combinational FEV,只能使用sequential FEV或者transaction FEV。

經(jīng)驗表明,這種時序優(yōu)化有非常非常大的概率引入bug。修復(fù)時序的前提的保證功能,方向錯誤,跑得越快,越不是好事情。

這種由于修復(fù)時序引入的bug很容易通過修改前RTL(SPEC RTL)和修改后RTL(IMP RTL)之間的等價性(sequential FEC)比對來確保設(shè)計的時序優(yōu)化修改沒有引入新的bug。

critical path reduction

在某些情況下組合邏輯重分配不可行時,可能需要將一個比較長的組合邏輯分拆成并行的2個比較小的組合邏輯,然后在后面的PIPE使用邏輯再匯聚在一起,如下圖所示。

poYBAGLyD_KANLMKAACKaiIr58o587.png

對于上面的修改,上方的設(shè)計存在時序問題,下方的設(shè)計是優(yōu)化后的問題,這個轉(zhuǎn)化的過程同樣非常非常容易導(dǎo)致bug的引入,也同樣可以通過FEC來保證。

Pipeline optimizations

隨著這個RTL設(shè)計的不同應(yīng)用場景需求變化(工藝變化、業(yè)務(wù)場景變化、算法變化以及物理實現(xiàn)的變化等等),designer發(fā)現(xiàn)時序無論如何也無法優(yōu)化,只能夠以犧牲latency的代價增加pipe數(shù)來優(yōu)化時序。又或者發(fā)現(xiàn)可以減少pipe來優(yōu)化latency,提升芯片的局部性能。

注意:同樣需要保證端到端的功能一致。

pYYBAGLyEAiABaFMAABobskMfyg210.png

如上圖所示,上方是優(yōu)化前的設(shè)計,下方是優(yōu)化后的設(shè)計(減少了一個pipe)。

對于這種pipe個數(shù)變化,但是端到端功能不變的修改,同樣可以使用sequential FEC來進(jìn)行等價性比對。只不過有所區(qū)別的是,需要指定比對是latency差異。


審核編輯:劉清

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

    關(guān)注

    31

    文章

    5253

    瀏覽量

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

    關(guān)注

    1

    文章

    384

    瀏覽量

    59520
  • 數(shù)字IC
    +關(guān)注

    關(guān)注

    1

    文章

    37

    瀏覽量

    12419
收藏 人收藏

    評論

    相關(guān)推薦

    進(jìn)行RTL代碼設(shè)計需要考慮時序收斂的問題

    更快,而一壞的代碼風(fēng)格則給后續(xù)時序收斂造成很大負(fù)擔(dān)。你可能要花費很長時間去優(yōu)化時序,保證時序收斂。拆解你的代碼,添加寄存器,修改走線,最后讓你原來的代碼遍體鱗傷。這一篇基于賽靈思的器
    的頭像 發(fā)表于 11-20 15:51 ?3786次閱讀
    進(jìn)行<b class='flag-5'>RTL</b>代碼設(shè)計需要考慮<b class='flag-5'>時序</b>收斂的問題

    優(yōu)化 FPGA HLS 設(shè)計

    優(yōu)化 FPGA HLS 設(shè)計 用工具用 C 生成 RTL 的代碼基本不可讀。以下是如何在不更改任何 RTL 的情況下提高設(shè)計性能。 介紹 高級設(shè)計能夠以簡潔的方式捕
    發(fā)表于 08-16 19:56

    FPGA中的I_O時序優(yōu)化設(shè)計

    FPGA中的I_O時序優(yōu)化設(shè)計在數(shù)字系統(tǒng)的同步接口設(shè)計中, 可編程邏輯器件的輸入輸出往往需要和周圍新片對接,此時IPO接口的時序問題顯得尤為重要。介紹了幾種FPGA中的IPO
    發(fā)表于 08-12 11:57

    FPGA的時序優(yōu)化高級研修班

    FPGA的時序優(yōu)化高級研修班通知通過設(shè)立四大專題,幫助工程師更加深入理解FPGA時序,并掌握時序約束和優(yōu)化的方法。1.FPGA靜態(tài)
    發(fā)表于 03-27 15:20

    推薦一時序優(yōu)化的軟件~~

    Hi,以前在學(xué)校的時候就經(jīng)常遇見時序收斂的問題,尤其是改RTL好麻煩啊。工作以后和朋友們一起做了時序優(yōu)化的軟件,叫InTime,希望可以幫
    發(fā)表于 05-11 10:55

    vivado:時序分析與約束優(yōu)化

    轉(zhuǎn)自:VIVADO時序分析練習(xí)時序分析在FPGA設(shè)計中是分析工程很重要的手段,時序分析的原理和相關(guān)的公式小編在這里不再介紹,這篇文章是小編在練習(xí)VIVADO軟件
    發(fā)表于 08-22 11:45

    時序邏輯等效性的RTL設(shè)計和驗證流程介紹

    關(guān)于時序邏輯等效性的RTL設(shè)計和驗證流程介紹。
    發(fā)表于 04-28 06:13

    介紹RTL設(shè)計引入的后端實現(xiàn)過程中的布線問題

    問題。下面舉兩RTL級別優(yōu)化電路走線問題的示例:1、大扇入在上面的電路中一MUX電路具有非常大的扇入(8X128=1024)??梢酝ㄟ^級聯(lián)MUX
    發(fā)表于 04-11 17:11

    你知道RTL時序優(yōu)化迭代的技巧有哪些嗎

    時需要能感知Critical path,并算出其大概的邏輯級數(shù)。3.可以考慮關(guān)鍵微架構(gòu)打散重構(gòu)。時序優(yōu)化不動微架構(gòu)可能走不太遠(yuǎn)。4.對多級Pipeline進(jìn)行調(diào)整和規(guī)劃。流水線上每一級的邏輯都要均勻和緊湊
    發(fā)表于 06-23 15:43

    A Roadmap for Formal Property

    What is formal property verification? A natural language such as English allowsus to interpret
    發(fā)表于 07-18 08:27 ?0次下載
    A Roadmap for <b class='flag-5'>Formal</b> Property

    用Elaborated Design優(yōu)化RTL的代碼

    在Vivado FlowNavigator中有一Elaborated Design,如下圖所示,屬于RTL Analysis這一步對應(yīng)的設(shè)計。可能很多工程師都沒有使用到,而實際上對于代碼優(yōu)化,它是很有幫助的。
    的頭像 發(fā)表于 10-21 10:56 ?4995次閱讀
    用Elaborated Design<b class='flag-5'>優(yōu)化</b><b class='flag-5'>RTL</b>的代碼

    時序分析的優(yōu)化策略詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA的時序分析的優(yōu)化策略詳細(xì)說明。
    發(fā)表于 01-14 16:03 ?17次下載
    <b class='flag-5'>時序</b>分析的<b class='flag-5'>優(yōu)化</b>策略詳細(xì)說明

    時序分析的優(yōu)化策略詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA的時序分析的優(yōu)化策略詳細(xì)說明。
    發(fā)表于 01-14 16:03 ?19次下載
    <b class='flag-5'>時序</b>分析的<b class='flag-5'>優(yōu)化</b>策略詳細(xì)說明

    可以通過降低約束的復(fù)雜度來優(yōu)化Formal的執(zhí)行效率嗎?

    我們可以通過降低約束的復(fù)雜度來優(yōu)化Formal的執(zhí)行效率,但是這個主要是通過減少Formal驗證空間來實現(xiàn)的,很容易出現(xiàn)過約,導(dǎo)致bug遺漏。
    的頭像 發(fā)表于 02-15 15:14 ?779次閱讀

    Formal Verification的基礎(chǔ)知識

    通過上一篇對Formal Verification有了基本的認(rèn)識;本篇將通過一簡單的例子,感受一下Formal的“魅力”;目前Formal Tool主流的有Synopsys的VC
    的頭像 發(fā)表于 05-25 17:29 ?2142次閱讀
    <b class='flag-5'>Formal</b> Verification的基礎(chǔ)知識