①CDC中的亞穩(wěn)態(tài)傳播問題
在數(shù)字系統(tǒng)級別的時鐘域交叉(CDC)中,亞穩(wěn)態(tài)傳播問題是一個重要的挑戰(zhàn)。在這個問題中,由于時序差異,信號在觸發(fā)器之間的傳輸可能會導(dǎo)致亞穩(wěn)態(tài)值的產(chǎn)生和傳播。讓我們來看一下模型,如圖1所示。
圖1 CDC 時候的亞穩(wěn)態(tài)
當(dāng)時鐘信號Clk_B的第二個上升沿到來時,輸入數(shù)據(jù)信號A正好處于變化過程中。這導(dǎo)致A信號未能滿足觸發(fā)器F2的建立-保持時間要求,從而在輸出節(jié)點B處產(chǎn)生了亞穩(wěn)態(tài)值。在B節(jié)點產(chǎn)生的這個亞穩(wěn)態(tài)中間值,會影響后續(xù)的三個分支X1、X2、X3,但對于其所代表的邏輯狀態(tài)可能存在不同的解讀。
其中一個分支可能將這個亞穩(wěn)態(tài)值解讀為邏輯值1,而另一個分支可能將其解讀為邏輯值0。這種后續(xù)電路對于前級亞穩(wěn)態(tài)的自由解讀可能會在系統(tǒng)電路運行過程中隨機(jī)出現(xiàn)。這種現(xiàn)象對完整的系統(tǒng)時序可能會產(chǎn)生巨大的影響,因此在設(shè)計數(shù)字系統(tǒng)時需要特別注意這種亞穩(wěn)態(tài)傳播問題的影響。
②CDC 中異步輸入數(shù)據(jù)的保持時間問題
在時鐘域交叉(CDC)中,當(dāng)一個數(shù)據(jù)信號從快時鐘域進(jìn)入慢時鐘域時,可能會產(chǎn)生與快時鐘周期等寬的脈沖信號,因為該數(shù)據(jù)信號的翻轉(zhuǎn)變化嚴(yán)格依賴于快時鐘域的信號采樣。然而,對于慢時鐘域的時鐘采樣邊沿來說,很容易忽略這種短暫脈沖狀的異步輸入數(shù)據(jù)。
圖2 數(shù)據(jù)保持時間問題電路模型與時序波形
這種情況可能導(dǎo)致在CDC傳輸過程中丟失數(shù)據(jù),主要原因是異步輸入數(shù)據(jù)的保持時間不符合目標(biāo)觸發(fā)器的要求。如圖2所示,異步輸入數(shù)據(jù)A隨著源時鐘域信號clk_A的一個周期變化。由于數(shù)據(jù)A的保持時間較短,小于目標(biāo)時鐘域的一個時鐘周期,并且兩個時鐘域的時鐘信號之間沒有固定的相位關(guān)系,結(jié)果是在clk_B的兩個上升采樣邊沿之間,類似脈沖信號的數(shù)據(jù)A被目標(biāo)時鐘域的同步觸發(fā)器所忽略,從而導(dǎo)致數(shù)據(jù)丟失的現(xiàn)象。
為確保異步數(shù)據(jù)在不同時鐘域之間的可靠傳輸,需要仔細(xì)考慮數(shù)據(jù)保持時間的問題,并采取適當(dāng)?shù)?a href="http://srfitnesspt.com/v/tag/167/" target="_blank">電路設(shè)計和時序調(diào)整措施,以避免這種數(shù)據(jù)丟失情況的發(fā)生。
③CDC 中的數(shù)據(jù)關(guān)聯(lián)和競爭
在圖3中展示了一個常見的兩級觸發(fā)器型同步設(shè)計,其主要功能是實現(xiàn)同步和孤立亞穩(wěn)態(tài)。然而,由于觸發(fā)器亞穩(wěn)態(tài)的恢復(fù)時間很難準(zhǔn)確預(yù)測,這種同步設(shè)計具有一個重要的特性,即"周期不確定性" 。
圖3 多觸發(fā)器同步電路模型與時序波形
從圖3的時序波形可以看出,盡管觸發(fā)器D1將亞穩(wěn)態(tài)孤立并禁止,但對于目標(biāo)觸發(fā)器D2而言,在Clk2的第二個上升沿時刻,無法確定其是否會成功翻轉(zhuǎn)到穩(wěn)定狀態(tài)。它有可能在第二個Clk2上升沿時刻翻轉(zhuǎn)為邏輯值1,也有可能不翻轉(zhuǎn),繼續(xù)保持邏輯值0。直到Clk2的第三個上升沿時刻到來,目標(biāo)觸發(fā)器D2才能穩(wěn)定輸出期望的邏輯值1。這種情況被稱為同步電路的"周期不確定性"。如果這個異步輸入數(shù)據(jù)是單比特類型,這種CDC問題可能不會對后續(xù)電路的正常功能產(chǎn)生影響。然而,如果涉及多比特數(shù)據(jù),采用這種同步方式就可能導(dǎo)致數(shù)據(jù)通道傳輸?shù)幕靵y。
圖4 多 bit 信號的匯聚問題
基于以上分析,當(dāng)多比特類型的數(shù)據(jù)信號采用分別同步的方式進(jìn)行處理時,一旦這個信號在跳變后發(fā)生,由于每條傳輸路徑上的延遲不同以及同步設(shè)計的周期不確定性,很可能導(dǎo)致最終輸出數(shù)據(jù)的不一致。這種情況可能引發(fā)目標(biāo)模塊邏輯中一組無法預(yù)測的數(shù)據(jù)值,從而破壞整體功能的穩(wěn)定性。
通過綜合考慮這些因素,在設(shè)計時必須慎重選擇適當(dāng)?shù)耐讲呗?,以確保數(shù)據(jù)的可靠傳輸和處理,避免因為同步問題而引發(fā)的數(shù)據(jù)競爭和不一致性。
那么問題來了,我們應(yīng)該如何對存在CDC的信號進(jìn)行同步處理呢?
對于時序要求較為嚴(yán)格的數(shù)字SOC電路,在處理時鐘域交叉(CDC)同步時,簡單地使用串聯(lián)觸發(fā)器的形式已經(jīng)無法滿足設(shè)計要求。必須采取更為復(fù)雜的同步設(shè)計機(jī)制。在實際工程項目中,有幾種常見的方法:
異步的 FIFO
握手協(xié)議
單一使能信號
結(jié)語:
在數(shù)字系統(tǒng)級別的時鐘域交叉(CDC)中,各種復(fù)雜的問題可能會影響設(shè)計的穩(wěn)定性和性能。亞穩(wěn)態(tài)傳播、異步輸入數(shù)據(jù)的保持時間和數(shù)據(jù)關(guān)聯(lián)競爭等都是必須認(rèn)真對待的挑戰(zhàn)。為了確保設(shè)計的正確性和可靠性,我們需要采取一系列嚴(yán)謹(jǐn)?shù)耐皆O(shè)計策略。
針對時序要求嚴(yán)格的數(shù)字SOC電路,簡單的串聯(lián)觸發(fā)器同步已不再足夠。我們需要借助更為復(fù)雜的同步設(shè)計機(jī)制來處理CDC問題。在實際項目中,常見的方法包括異步的FIFO,握手協(xié)議和單一使能信號。每種方法都有其適用的場景和特點,需要根據(jù)具體情況進(jìn)行選擇。
通過正確應(yīng)用這些同步設(shè)計機(jī)制,我們可以有效地解決CDC問題,提高系統(tǒng)的可靠性和性能。同時,在設(shè)計過程中還需要注意不同方法的優(yōu)缺點,綜合考慮設(shè)計的復(fù)雜性、時序要求和資源消耗等因素。通過科學(xué)合理的設(shè)計,我們能夠克服CDC帶來的挑戰(zhàn),實現(xiàn)數(shù)字系統(tǒng)的穩(wěn)定運行。
審核編輯:湯梓紅
-
時鐘
+關(guān)注
關(guān)注
10文章
1701瀏覽量
131184 -
CDC
+關(guān)注
關(guān)注
0文章
56瀏覽量
17737 -
觸發(fā)器
+關(guān)注
關(guān)注
14文章
1992瀏覽量
60976 -
數(shù)字設(shè)計
+關(guān)注
關(guān)注
0文章
46瀏覽量
22276 -
亞穩(wěn)態(tài)
+關(guān)注
關(guān)注
0文章
46瀏覽量
13217
原文標(biāo)題:數(shù)字設(shè)計中常見的CDC問題
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論