同步電路
即電路中的所有受時(shí)鐘控制的單元,全部由一個(gè)統(tǒng)一的全局時(shí)鐘控制:
- 觸發(fā)器(Flip Flop)
- 寄存器(Register)

同步電路優(yōu)點(diǎn):
- 在同步設(shè)計(jì)中,EDA工具可以保證電路系統(tǒng)的時(shí)序收斂,有效避免了電路設(shè)計(jì)中競爭冒險(xiǎn)現(xiàn)象。
- 由于觸發(fā)器只有在時(shí)鐘邊緣才改變?nèi)≈?,很大限度地減少了整個(gè)電路受毛刺和噪聲影響的可能。
缺點(diǎn):
電路里面所有的觸發(fā)器都由同一個(gè)時(shí)鐘驅(qū)動(dòng),所以必須構(gòu)建時(shí)鐘樹、時(shí)鐘網(wǎng)絡(luò),因此時(shí)鐘到達(dá)哥哥觸發(fā)器的時(shí)間不一樣,則會(huì)引入時(shí)鐘偏斜和時(shí)鐘抖動(dòng)問題:
- 時(shí)鐘偏斜( Clock Skew )
- 時(shí)鐘抖動(dòng)(Clock Jitter )
- 時(shí)鐘樹綜合,需要加入大量的延遲單元,使得電路的面積和功耗大大增加

全局異步電路
全局異步設(shè)計(jì)跟同步設(shè)計(jì)最大的不同就是它的電路中的數(shù)據(jù)傳輸可以在任何時(shí)候發(fā)生,電路中沒有一個(gè)全局的或局部的控制時(shí)鐘。

異步電路優(yōu)點(diǎn):
異步電路缺點(diǎn):
同步異步時(shí)鐘,指時(shí)鐘源是不是同一個(gè),假設(shè)是同一個(gè)PLL出來的,就能看成是同步時(shí)鐘,不同PLL下即使是同頻也是異步時(shí)鐘
在一個(gè)性想的全局時(shí)鐘控制下,只要電路的各個(gè)功能壞節(jié)都買現(xiàn)了時(shí)序收斂,整個(gè)電路就可以可靠工作了。由于 EDA 工具的廣泛支持,采用同步電路設(shè)計(jì)的方法是目前ASIC 和 SoC 設(shè)計(jì)的基本要求。但是常大規(guī)模 ASIC 和 SoC 芯片中都采用了全局異步、局部同步的方法。因此,在設(shè)計(jì)中必須要注意 異步信號與同步電路的交互問題 。
在不同時(shí)鐘域間,如何安全傳遞信號
跨時(shí)鐘域電路主要分為以下幾種:

亞穩(wěn)態(tài)相關(guān)概念和原理

- 亞穩(wěn)態(tài)是指觸發(fā)器無法在某個(gè)規(guī)定時(shí)間段內(nèi)達(dá)到一個(gè)可確認(rèn)的狀態(tài)。
- 亞穩(wěn)態(tài)是指觸發(fā)器無法在某個(gè)規(guī)定時(shí)間段內(nèi)達(dá)到一個(gè)可確認(rèn)的狀態(tài)。當(dāng)一個(gè)觸發(fā)器進(jìn)入亞穩(wěn)態(tài)時(shí),既無法預(yù)測該單元的輸出電平,也無法預(yù)測何時(shí)輸出才能穩(wěn)定在某個(gè)正確的電平上。
- 在這個(gè)期間,觸發(fā)器輸出一些中間級電平,或者可能處于振蕩狀態(tài),并且這種無用的輸出電平可以沿信號通道上的各個(gè)觸發(fā)器級聯(lián)式傳播下去。
- 亞穩(wěn)態(tài)不能從根本上消除,但可以通過采取一定的措施使其對電路造成的影響降低。
亞穩(wěn)態(tài)影響衡量指標(biāo)MTBF(Mean Time Between Failure),MTBF越大,亞穩(wěn)態(tài)影響越?。?/p>

雙鎖存器電平同步器
雖然說的是鎖存器,但實(shí)際上是兩個(gè)觸發(fā)器:
- 一個(gè)信號在過渡到另一個(gè)時(shí)鐘域時(shí),如果僅僅用一個(gè)觸發(fā)器將其鎖存,那么用b_clk進(jìn)行采樣的結(jié)果將可能是亞穩(wěn)態(tài)。這也是信號在跨時(shí)鐘域時(shí)應(yīng)該注意的問題。

為了避免上節(jié)所述的亞穩(wěn)態(tài)問題,就應(yīng)當(dāng)使參數(shù) MTBF 盡可能的大,通常采用的方法是雙鎖存器法,即在一個(gè)信號進(jìn)入另一個(gè)時(shí)鐘域之前,將該信號用兩個(gè)鎖存器連續(xù)鎖存兩次,最后得到的采樣結(jié)果就可以消除亞穩(wěn)態(tài)問題。

雙鎖存器法,優(yōu)點(diǎn):
- 結(jié)構(gòu)簡單、易實(shí)現(xiàn),面積消耗很小。
缺點(diǎn):
- 增加了兩級觸發(fā)器延時(shí);
- 高性能計(jì)算中,兩個(gè)時(shí)鐘周期消耗對系統(tǒng)性能有消極的影響。
- 當(dāng)快時(shí)鐘域轉(zhuǎn)到慢時(shí)鐘域時(shí),易造成慢時(shí)鐘采樣丟失(還未來得及采樣,數(shù)據(jù)就變化了)。
使用條件:
- 常用于慢時(shí)鐘域轉(zhuǎn)到快時(shí)鐘域
- {(Clk_slow的周期)} > {(Clk_fast的周期) + (路徑延時(shí))} ,確保信號可以被Clk_fast采樣到(假設(shè)Clk_fast和Clk_slow起始時(shí)刻相同求得)
- {(data數(shù)據(jù)變化間隔)}>{(Clk_slow的周期)+2*(CIk_fast的周期) +(路徑延時(shí))},確保所有的數(shù)據(jù)變化均能采集到。
結(jié)論:
- 對于典型的0.25gm 工藝 ASIC 庫中的一個(gè)觸發(fā)器,則 MTBF=2.01(day ) ,即觸發(fā)器每兩天便可能出現(xiàn)一次亞穩(wěn)態(tài)。如果將采樣時(shí)間和異步事件觸發(fā)頻率都提高,亞穩(wěn)態(tài)出現(xiàn)還要頻繁。
- 對于同樣的參數(shù),雙鎖存器法可將MTBF提升為9.57* 年,這個(gè)數(shù)值足夠保證電子系統(tǒng)穩(wěn)定地運(yùn)行。
- 兩級觸發(fā)器已經(jīng)將MTBF變得足夠大
- 三級或者更多級雖然能將亞穩(wěn)態(tài)出現(xiàn)概率 降得更低 ,但是影響電路效率
增加寄存器進(jìn)行同步的方法,只是不斷降低亞穩(wěn)態(tài)出現(xiàn)概率
單bit信號跨時(shí)鐘域如何傳輸
慢時(shí)鐘到快時(shí)鐘的信號傳輸
采用邊沿檢測同步器電路。這種方法通常應(yīng)用在慢速向快速時(shí)鐘傳遞過程中,可以檢測輸入信號的上升沿,也可以檢測它的下降沿。輸出的的與門間相差一個(gè)快時(shí)鐘的延遲:

其時(shí)序圖為:

適用條件:
- 輸入數(shù)據(jù)的寬度必須比—個(gè)接受時(shí)鐘周期加上一個(gè)同步觸發(fā)器的hold時(shí)間要長,最安全的就是兩個(gè)同步周期寬度。
- 保證: 慢時(shí)鐘域的脈沖足夠保持到被快時(shí)鐘的同步器拿到
快時(shí)鐘到慢時(shí)鐘的信號傳輸
對于快時(shí)鐘域到慢時(shí)鐘域,通常采用脈沖同步器進(jìn)行同步。這個(gè)電路結(jié)構(gòu)中,最左邊是快時(shí)鐘域下的一個(gè)翻轉(zhuǎn)電路。中間是慢時(shí)鐘域的兩級同步器,最后是慢時(shí)鐘域一級觸發(fā)器+一個(gè)邏輯門。

基本功能是從快時(shí)鐘域取出一個(gè)單時(shí)鐘寬度脈沖,然后在慢時(shí)鐘域中建立另一個(gè)單時(shí)鐘寬度的脈沖。對電路結(jié)構(gòu)的功能分析:

限制如下:
- 輸入脈沖之間的最小間隔必須等于兩個(gè)同步器時(shí)鐘周期。
- 如果輸入脈沖相互過近,則新時(shí)鐘域中的輸出脈沖也緊密相鄰,結(jié)果是輸出脈沖寬度比一個(gè)時(shí)鐘周期寬。
- 當(dāng)輸入脈沖時(shí)鐘周期大于兩個(gè)同步器時(shí)鐘周期時(shí),這個(gè)問題更加嚴(yán)重。
- 這種情況下,如果輸入脈沖相鄰太近,則同步器就不能檢測到每個(gè)脈沖。
對單bit同步器總結(jié):

三種同步器總結(jié)
- 電平同步器,輸入信號必須保持兩個(gè)接受時(shí)鐘周期寬度,每一次同步之后,輸入信號必須恢復(fù)到無效狀態(tài)。
- 邊沿檢測同步器,適用于低頻時(shí)鐘域向高頻時(shí)鐘域傳輸,輸入信號必須保持兩個(gè)接受時(shí)鐘周期寬度。
- 脈沖檢測同步器,適用于高頻時(shí)鐘域向低頻時(shí)鐘域傳輸,輸入的脈沖時(shí)間的距離必須保持兩個(gè)接收時(shí)鐘周 期以上。
采用結(jié)繩法 進(jìn)行單bit信號傳輸
- 信號從快時(shí)鐘域到慢時(shí)鐘域過渡時(shí) ,慢時(shí)鐘將可能無法對變化太快的信號實(shí)現(xiàn)正確采樣;
- 上述同步器法對兩個(gè)時(shí)鐘之間的關(guān)系要求很嚴(yán)格,而“結(jié)繩法”適合任何時(shí)鐘域的過渡。
“結(jié)繩法1”
原理:
- 將快時(shí)鐘信號的脈沖周期延長,等到慢時(shí)鐘同步采樣后再“解繩”,還原為原來的脈沖周期寬度。
- 利用數(shù)據(jù)的邊沿作時(shí)鐘(圖中上升沿)。(可以將脈沖無限延長,直到可以采集到數(shù)據(jù),然后復(fù)位,要考慮產(chǎn)生數(shù)據(jù)的頻率)。

- 這種結(jié)繩法的原理是,數(shù)據(jù)作為Din_clkA ,即當(dāng)數(shù)據(jù)有上升沿(0->1)時(shí),寄存器1的輸出將會(huì)穩(wěn)定在高電平,此時(shí)等待CIkB采樣;當(dāng)CIkB完成采樣后,寄存器4會(huì)輸出高電平,若此時(shí)Din_clkA為低電平,那么即可完成復(fù)位,開始下一次采樣等待。
- 這里需要注意的是當(dāng)數(shù)據(jù)來臨(上升沿)時(shí),ClkB域需要等待3個(gè)ClkB才會(huì)在寄存器4輸出并完成輸入端的復(fù)位,所以Din_CIkA如果變化較快,即持續(xù)時(shí)間短于3個(gè)CIkB,也就是Din_ClkA頻率大于CIkB的1/3,那么這時(shí)Din_ClkA的變化將無法被采樣到,因?yàn)镃IkB域需要3個(gè)CIkB才能完成采樣,并且此時(shí)Din_CIkA必須是低電平才能復(fù)位,采用異步復(fù)位。
- 在慢時(shí)鐘采樣快時(shí)鐘的時(shí)候,結(jié)繩法適合采樣數(shù)據(jù)較少(即脈沖間隔較大的控制信號。即脈沖間隔Ta>3Tb;即等待3個(gè)clkB時(shí)鐘后,完成復(fù)位,才允許下一個(gè)輸入脈沖。
結(jié)繩法2:
- 利用數(shù)據(jù)作為異步復(fù)位,置位信號:

結(jié)繩法3:
- 利用握手協(xié)議:

電路功能為:

結(jié)繩法總結(jié)
- 結(jié)繩就是將單脈沖延長,以方便采集到數(shù)據(jù)。
結(jié)繩的方法歸結(jié)為2類:
- 利用脈沖的邊沿做時(shí)鐘;
- 利用脈沖的電平(部分場合要求最小脈沖寬度)做選擇器或者異步復(fù)位,置位。
- 另外的關(guān)鍵點(diǎn)就是什么時(shí)候結(jié)繩結(jié)束(采集到了數(shù)據(jù)就要讓對方回到初始狀態(tài))
這里的操作也有2種方法:
- 利用采集到的脈沖做異步復(fù)位,置位。
- 利用采集到的脈沖再次結(jié)繩采集做握手響應(yīng)信號。
總結(jié):
- 結(jié)繩法可以解決快時(shí)鐘域向慢時(shí)鐘域過渡的問題,且其適用的范圍很廣。
- 結(jié)繩法實(shí)現(xiàn)較為復(fù)雜,特別是其效率不高,在對設(shè)計(jì)性能要求較高的場合應(yīng)該慎用。
傳輸兩個(gè)同時(shí)需要的信號(b_load 和b_en)
多個(gè)控制信號跨時(shí)鐘域僅僅通過簡單的同步器同步有可能是不安全的
當(dāng)兩個(gè)信號中出現(xiàn)一點(diǎn)skew時(shí),跨時(shí)鐘域不一定能夠正確在同一個(gè)時(shí)刻被采樣到:

b_load和b_en同步至a_clk時(shí)鐘域,如果這兩個(gè)信號有一個(gè)小的ske導(dǎo)致在a_clk時(shí)鐘域中兩個(gè)信號并不是在同一時(shí)刻起作用,與在b_clk中的邏輯關(guān)系不同。
解決方法(合并信號)
將b_load和b_en信號在b_clk時(shí)鐘域中合并成一個(gè)信號b_lden,然后同步至a_clk中。

對不能合并的情況
如果遇到不能合并的情況,如譯碼信號。如果Bdec[0]、bdec[1]間存在skew將導(dǎo)致同步至a_clk中后譯碼錯(cuò)誤,出現(xiàn)誤碼。

在這種情況下,建議加入另一個(gè)控制信號,確保bdec[0]、bec[1]穩(wěn)定時(shí)采。例如在bdec[0]、bec[1]穩(wěn)定輸出后一到兩個(gè)周期b_clk域輸出一個(gè)en信號,通知a_clk域此時(shí)可以采bdec[O]、bec[1]信號。這樣可確保正確采樣。
小結(jié)
采樣中“快到慢”與“慢到快”在考慮問題時(shí)有什么區(qū)別?
慢到快:
- 只需要考慮亞穩(wěn)態(tài)問題
快到慢:
- 亞穩(wěn)態(tài)問題
- 考慮慢時(shí)鐘的采樣速率問題。因?yàn)楦鶕?jù)采樣定理,采樣頻率低于信號最高頻率2倍的時(shí)候,是無法完整采樣的。
-
電磁兼容
+關(guān)注
關(guān)注
54文章
2092瀏覽量
100316 -
寄存器
+關(guān)注
關(guān)注
31文章
5609瀏覽量
130017 -
EDA工具
+關(guān)注
關(guān)注
5文章
276瀏覽量
34034 -
觸發(fā)器
+關(guān)注
關(guān)注
14文章
2056瀏覽量
63418 -
同步電路
+關(guān)注
關(guān)注
1文章
61瀏覽量
13759
發(fā)布評論請先 登錄
跨時(shí)鐘域控制信號傳輸設(shè)計(jì)方案
3.2.1]--1.單bit信號的跨時(shí)鐘域傳輸電路;2.FIFO導(dǎo)言
CDC單bit脈沖跨時(shí)鐘域的處理介紹
如何解決單bit和多bit跨時(shí)鐘處理問題?
單位寬信號如何跨時(shí)鐘域
CDC跨時(shí)鐘域處理及相應(yīng)的時(shí)序約束
從處理單bit跨時(shí)鐘域信號同步問題來入手
單bit信號跨時(shí)鐘域如何傳輸?
評論