跨時鐘域( Clock Domain Crossing,CDC )通俗地講,就是 模塊之間數(shù)據(jù)交互時用的不是同一個時鐘進行驅(qū)動 ,如下圖所示:左邊的模塊FA由C1驅(qū)動,屬于C1時鐘域;右邊的模塊FB由C2驅(qū)動,屬于C2時鐘域。
跨時鐘域信號處理問題,首先要考慮的就是亞穩(wěn)態(tài)問題。
為了使觸發(fā)器正常工作,輸入信號和時鐘必須滿足觸發(fā)器的建立和保持時間要求。在上面的圖2中,信號A與目標時鐘域C2是異步的,因為C1和C2屬于不同時鐘域。一旦遇到異步信號進入時鐘域,就不太可能滿足建立和保持時序約束,因此觸發(fā)器可能以進入亞穩(wěn)態(tài)。在下圖中,F(xiàn)A的輸出信號A變化非常接近C2的時鐘邊緣,因此違反了FB的建立時間要求, 它可能導(dǎo)致目標觸發(fā)器FB違反setup或hold時間。輸出信號B可能會振蕩不確定時長。因此輸出是不穩(wěn)定的,也可能會在C2的下一個時鐘邊緣到達之前穩(wěn)定到某個值,這種現(xiàn)象被稱為亞穩(wěn)態(tài)。
如果輸入信號A變化非常接近時鐘C2的上升沿,那么目標觸發(fā)器的輸出是亞穩(wěn)態(tài)的。因此,可能最終穩(wěn)定到信號B1和B2所描述的1或0。
處理跨時鐘域**(CDC)信號同步**的最常見方法之一是使用同步器電路。同步器電路的目的是通過最小化亞穩(wěn)態(tài)的可能性和增加MTBF來保護下游邏輯。其中一個基本的同步器電路是 兩級觸發(fā)器同步器 (也稱為2-FF同步器)。
2-** FF同步器處理跨時鐘域信號同步**
兩級觸發(fā)器同步器是一種電路,其中兩個觸發(fā)器在目標時鐘域中背靠背連接。如果第一個觸發(fā)器由于建立/保持沖突而進入亞穩(wěn)態(tài),則第二個觸發(fā)器會提供足夠的時間讓第一個觸發(fā)器脫離亞穩(wěn)態(tài)。從理論上講,當(dāng)?shù)诙€FF對值進行采樣時,第一個FF可能仍處于亞穩(wěn)態(tài),因此可以對不正確的值進行采樣,使用超過2級FF作為同步器(3或4級FF),可以增加MTBF。
2-FF同步器電路非常適合單比特控制信號的同步 ,其中輸入切換速率小于目標時鐘頻率,換句話說,如果目標時鐘頻率超過源時鐘頻率的1.5倍,則不會丟失數(shù)據(jù) 。但是,如果源和目標時鐘頻率幾乎相同或目標時鐘頻率較慢,則源必須保持其值穩(wěn)定,以便目標捕獲它,然后再更改為下一個值。這可以通過 握手時鐘域交叉 (CDC)技術(shù)來處理。
握手機制處理跨時鐘域信號同步
在握手技術(shù)中,源時鐘域?qū)?*“請求”信號**發(fā)送到使用 2-FF同步器的目標域。一旦目標域收到請求,它就會向源域發(fā)送“ack”信號,該源域使用 2-FF 同步器進行同步。ack 信號向源時鐘域指示目標已收到該值,源時鐘域可以更新其值。握手機制有許多實現(xiàn)版本,但原理保持不變: 同步request和ack信號 。request信號將在總線上指示一個新值即將發(fā)送,ack信號將指示可以更新數(shù)據(jù)總線。
上述機制在接口的帶寬使用方面確實有一個缺點。對于握手機制,數(shù)據(jù)總線在接收ack信號時無法更新,存在瓶頸,可以使用雙時鐘異步FIFO來解決這個問題。正確設(shè)計的FIFO可以增加整個接口的帶寬,同時仍然保持跨時鐘域的可靠通信。
異步FIFO可以被視為數(shù)據(jù)容器,其中發(fā)送方以源時鐘速率將數(shù)據(jù)寫入,接收器以目標時鐘速率彈出數(shù)據(jù)。FIFO的深度應(yīng)該足夠,以便它不能溢出或下溢數(shù)據(jù)。
異步FIFO處理跨時鐘域信號同步
時鐘異步FIFO需要用到雙端口SRAM,一個控制寫入指針(數(shù)據(jù)應(yīng)在SRAM中寫入的地址)的源代碼控制塊,一個生成讀取指針(應(yīng)在SRAM中讀取數(shù)據(jù)的地址)的目標控制塊和二進制到格雷碼編碼器塊以及2-FF同步器電路。指針由各自的控制塊作為循環(huán)緩沖區(qū)進行管理。但是,要知道何時寫入(FIFO 未滿)和何時讀取(FIFO 不為空),源時鐘、目標時鐘控制塊需要分別具有讀取和寫入指針信號。將指針傳輸?shù)搅硪粋€時鐘域并非易事。由于指針是多位信號,因此直接使用2-FF同步器不是一個好的選擇。因此,兩個指針都通過二進制到格雷碼編碼塊傳遞。這確保了在傳輸值時,只有矢量的一個位從一個時鐘更新到另一個時鐘,從而消除了在時鐘邊沿上同步多位總線的問題。
-
觸發(fā)器
+關(guān)注
關(guān)注
14文章
1992瀏覽量
60976 -
同步器
+關(guān)注
關(guān)注
1文章
91瀏覽量
14583 -
FIFO存儲
+關(guān)注
關(guān)注
0文章
103瀏覽量
5953 -
時鐘驅(qū)動器
+關(guān)注
關(guān)注
0文章
32瀏覽量
13804 -
SRAM存儲器
+關(guān)注
關(guān)注
0文章
88瀏覽量
13254
發(fā)布評論請先 登錄
相關(guān)推薦
評論