單位寬(Single bit)信號即該信號的位寬為1,通??刂菩盘柧佣唷τ诖祟愋盘?,如需跨時鐘域可直接使用xpm_cdc_single,如下圖代碼所示。參數(shù)DEST_SYNC_FF決定了級聯(lián)觸發(fā)器的個數(shù),取值范圍為2~10;參數(shù)INIT_SYNC_FF決定了仿真時是否使用初始值;參數(shù)SIM_ASSERT_CHK用于檢查仿真中的問題;參數(shù)SRC_INPUT_REG用于是否對輸入信號(待跨時鐘域信號)在自身時鐘下寄存一拍。

從綜合結果來看,當DEST_SYNC_FF設置為4,SRC_INPUT_REG設置為1時,形成如下圖所示電路??捎每吹降谝粋€觸發(fā)器位于src_clk時鐘域下,后續(xù)4個觸發(fā)器位于dest_clk時鐘域下。同時,xpm_cdc_single自帶約束將圖中紅色標記觸發(fā)器到綠色標記觸發(fā)器之間的路徑設置為偽路徑,使用set_false_path約束。


從最終的布線結果來看,工具會將后面4個觸發(fā)器放置的同一個SLICE內,這是因為這4個觸發(fā)器的屬性ASYNC_REG都被設置為TRUE。

從仿真結果來看,如果出現(xiàn)如下情形,即輸入信號在高有效時無法被接收時鐘穩(wěn)定地采樣到至少兩次,那么仿真就會給出Error信息。


滿足此條件時,就不會顯示此Error信息。這也告訴我們,工程實踐中,要確保待跨時鐘域信號在高有效時可以被接收時鐘至少穩(wěn)定地采樣到兩次。

此外,XPM_CDC還提供了xpm_cdc_array_single,與xpm_cdc_single相比只多了一個參數(shù)WIDTH,用于指定位寬,但是需要注意的是盡管從形式上看傳輸?shù)氖且粋€多位寬數(shù)據(jù),但實際上,每位是彼此相對獨立沒有關聯(lián)的。

例如,位寬為2,綜合結果如下,可以看到其實就是兩個xpm_cdc_single合并而成。

-
電路設計
+關注
關注
6745文章
2759瀏覽量
220091 -
仿真
+關注
關注
55文章
4530瀏覽量
138628 -
觸發(fā)器
+關注
關注
14文章
2065瀏覽量
63521 -
時鐘域
+關注
關注
0文章
53瀏覽量
10061 -
輸入信號
+關注
關注
0文章
559瀏覽量
13210
原文標題:跨時鐘域電路設計:單位寬信號如何跨時鐘域
文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
多位寬數(shù)據(jù)通過握手方式跨時鐘域
關于FPGA中跨時鐘域的問題分析
跨時鐘域電路設計:多位寬數(shù)據(jù)通過FIFO跨時鐘域
如何處理跨時鐘域這些基礎問題
跨時鐘域電路設計:單位寬信號如何跨時鐘域
評論