電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 59|回復(fù): 0
收起左側(cè)

【芯片設(shè)計】異步電路碎碎念(五) 異步邏輯的幾個注意事項

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
匿名  發(fā)表于 2024-9-2 12:02:00 回帖獎勵 |正序瀏覽 |閱讀模式
UVM源碼計劃系列因為1X同學(xué)被分配了很繁重的工作,所以暫時先學(xué)到這,啥時候有閑暇時光了再繼續(xù)往下學(xué)。同時IC checklist的三篇也已經(jīng)推送完成,本來交付系列還有一些備份但是內(nèi)容還是沒打磨好,也日后再輸出吧?偨Y(jié)下來最近就先專心更從RTL到GDS、異步邏輯以及開源項目閱覽三個系列好了,在過程中再插入其他一些零散的文章,等到其他幾個備份中的專題大概完成了再增加推送的系列吧。
本篇跟前文的內(nèi)容有一定的重合,在行文中很多地方已經(jīng)體現(xiàn)過了。不過既然已經(jīng)寫到這里了就歸納一下吧。總的來說,異步邏輯處理中,注意事項大概有以下這些,總結(jié)并不全面歡迎大家補充。避免目的時鐘域再收斂即多比特信號進行同步時,如需要進行邏輯運算必須在源時鐘域完成組合邏輯并寄存處理,不能分別同步到目的時鐘域后再進行邏輯處理。這個老生常談了,每個比特在同步過程中收斂的時刻不同,有的在第2拍采到正確值,有的在3拍采樣到正確值,在目的時鐘域?qū)Χ鄠同步信號進行組合邏輯的話,產(chǎn)生的結(jié)果可能與預(yù)期不一致導(dǎo)致整個邏輯的混亂與進一步傳播。同步器之間不能有任何組合邏輯同樣是老生常談的一個點,同步就干干凈凈的處理就對了,千萬別有組合邏輯,一是觸發(fā)器路徑延遲不同,高低電平傳播時間不一致,組合邏輯會有錯誤邏輯以及競爭冒險與毛刺,同時也增加了采樣的不穩(wěn)定區(qū)間。同源信號扇出多個觸發(fā)器的情況,需要先同步再復(fù)制同步后的信號典型的場景就是A -> B,A -> C,BC都在目的時鐘域,此時不要講同步器復(fù)制對A分別跨異步,而是要先將A同步到目的時鐘域后再驅(qū)動多個邏輯路徑。使用格雷碼跨異步,格雷碼必須是依次變化的比較典型的場景是計數(shù)器非整2的冪次計數(shù)翻轉(zhuǎn),這過程中會有格雷碼多比特跳變的場景,不能使用格雷碼同步器。此外使用格雷碼同步器時,格雷碼必須打拍輸出,格雷碼多比特的走線延遲建議不要大于Tmin_cyc(min 源、目的時鐘周期),多比特之間的走線延遲差值盡可能的小。當(dāng)異步電路存在反饋機制時,應(yīng)當(dāng)通過握手機制進行同步尤其是反饋時間不定,異步握手同步器是合理的處理方式。對連續(xù)數(shù)據(jù)的傳輸速度有要求,或者實在不知道怎么同步了,就用異步FIFOemmm上學(xué)時老師跟我們說的,如果實在不會了就用異步fifo進行同步吧,然后轉(zhuǎn)頭就花了一周來講異步fifo怎么設(shè)計。單比特信號跨異步時的維持時間要求這個我筆記上一直記的是:Tcapture + Tjitter + Tsetup + Thold + T損失含義分別是目的使用周期,目的時鐘最大抖動,目的時鐘建立時間,目的時鐘保持時間,傳輸損失。但是我一直有點不太理解,對于Tcapture + Tjitter + TThold這三個時間我覺得很清晰,要保證目的始終不漏采確實需要滿足,但是Tsetup為什么需要包含在其中呢,我自己感覺不加這個時間也不會導(dǎo)致漏采的吧,沒太想清楚。還有就是損失的這個時間應(yīng)該如何計算,我也不太明白。因此,通常的做法是源脈沖信號大于Tcapture + 2ns(目的時鐘為高頻時鐘)或大于2Tcapture(目的時鐘為低頻)。同步器采樣點禁止動態(tài)門控異步傳輸中存在時序不確定性,因為不同信號的到達時間可能不同,或者在傳輸過程中可能發(fā)生抖動。因此,在異步傳輸?shù)膱鼍跋,動態(tài)門控可能導(dǎo)致采樣點的不確定性,使得同步器采樣到的信號不準(zhǔn)確,從而可能導(dǎo)致錯誤的數(shù)據(jù)處理。在芯片設(shè)計中,通常需要滿足一系列的時序約束,以確保數(shù)據(jù)在特定的時間窗口內(nèi)到達目的地。動態(tài)門控可能導(dǎo)致時序約束無法滿足,因為它會引入不確定的延遲,從而影響同步器的采樣時刻。為了保證時序約束的滿足,同步器的采樣點通常會禁止動態(tài)門控,以確保在固定的時刻進行采樣。

系列文章入口——
【芯片設(shè)計】SoC 101(一):緒論
【芯片設(shè)計】FIFO漫談(零)從無處不在的FIFO開始說起
【芯片設(shè)計】計算機體系結(jié)構(gòu)(一)虛擬內(nèi)存
【芯片設(shè)計】深入理解AMBA總線(零)緒論
【芯片設(shè)計】握手協(xié)議的介紹與時序說明
【芯片設(shè)計】復(fù)位那些小事 —— 復(fù)位消抖
【芯片設(shè)計】快速入門數(shù)字芯片設(shè)計(一)Introduction
【芯片驗證】UVM源碼計劃(零)下定決心讀源碼前的自測環(huán)節(jié)
【芯片設(shè)計】異步電路碎碎念(一) 到底什么是異步電路
【芯片設(shè)計】從RTL到GDS(一):Introduction
其他文章鏈接——
【芯片驗證】sva_assertion: 15道助力飛升的斷言練習(xí)
【芯片驗證】可能是RTL定向驗證的巔峰之作
【芯片驗證】RTL仿真中X態(tài)行為的傳播 —— 從xprop說起
【芯片驗證】年輕人的第一個systemVerilog驗證環(huán)境全工程與解析
【芯片設(shè)計】verilog中有符號數(shù)和無符號數(shù)的本質(zhì)探究
【芯片設(shè)計】論RTL中always語法的消失術(shù)
【芯片設(shè)計】代碼即注釋,注釋即代碼
【芯片設(shè)計】700行代碼的risc處理器你確實不能要求太多了
入職芯片開發(fā)部門后,每天摸魚之外的時間我們要做些什么呢
如何計算系統(tǒng)的outstanding 和 burst length?
芯片搬磚日!け扑缽娖劝Y的關(guān)鍵詞不對齊事件
熟人社會里,一群沒有社會價值的局外人

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?立即注冊

x
回復(fù)

使用道具

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表