<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 揭開(kāi)未擴展時(shí)鐘的秘密

揭開(kāi)未擴展時(shí)鐘的秘密

作者: 時(shí)間:2016-10-16 來(lái)源:網(wǎng)絡(luò ) 收藏

時(shí)鐘擴展對使用賽靈思Vivado設計套件的工程師來(lái)說(shuō)是一個(gè)很大的挑戰,但不是一個(gè)不可逾越的障礙。

本文引用地址:http://dyxdggzs.com/article/201610/308302.htm

隨著(zhù)越來(lái)越多的賽靈思用戶(hù)開(kāi)始使用Vivado®設計套件,部分用戶(hù)對未擴展時(shí)鐘表示困惑。那么什么是未擴展時(shí)鐘呢?他們是如何進(jìn)行關(guān)聯(lián)和計時(shí)的?應對未擴展時(shí)鐘的標準方法又是什么呢?下面讓我們來(lái)詳細探討一下這個(gè)問(wèn)題,重點(diǎn)是探討確保設計人員使用正確的同步技術(shù)安全地穿越未擴展時(shí)鐘之間的跨時(shí)鐘域(clock domain crossing)的方法。

隨著(zhù)Vivado工具的推出,賽靈思現在能夠支持采用業(yè)界標準Synopsys設計約束(SDC)格式的時(shí)序約束。這是ISE設計套件工具處理時(shí)序方式上的重大轉變。Vivado套件最根本的區別在于所有時(shí)鐘在默認條件下都彼此關(guān)聯(lián)。這樣在ISE中處于無(wú)約束狀態(tài)的時(shí)序路徑在Vivado設計套件中則處于受約束狀態(tài)。如果兩個(gè)時(shí)鐘之間不存在周期性關(guān)系,這種約束會(huì )造成非常嚴格的時(shí)序要求。

未擴展時(shí)鐘是指在1,000個(gè)時(shí)鐘周期內與另一個(gè)時(shí)鐘之間不存在周期性關(guān)系的時(shí)鐘。Vivado BFT 內核范例設計即是體現未擴展時(shí)鐘工作方式的良好途徑。

發(fā)起和捕獲

時(shí)序路徑從發(fā)起事件開(kāi)始,由捕獲事件終止。發(fā)起事件發(fā)生在同步單元的時(shí)鐘從非工作狀態(tài)轉入工作狀態(tài)的時(shí)候。捕獲事件發(fā)生在下游的或者負責捕獲的同步單元的時(shí)鐘從非工作狀態(tài)轉入工作狀態(tài)的時(shí)候。從發(fā)起事件到捕獲事件之間所需的時(shí)間被稱(chēng)為“路徑要求”,它代表自事件發(fā)起后到捕獲單元引腳處出現有效數據之間所需的時(shí)間。

如果發(fā)起時(shí)鐘和捕獲時(shí)鐘同時(shí)位于同一物理時(shí)鐘網(wǎng)中,路徑要求僅指時(shí)鐘周期。以250MHz時(shí)鐘為例,如果發(fā)起單元和捕獲單元的工作沿相同(上升沿對上升沿或下降沿對下降沿),那么發(fā)起事件和捕獲事件之間的時(shí)間間隔則恰好為4納秒。如果發(fā)起單元和捕獲單元的工作沿不同,路徑就必須按一半的時(shí)鐘頻率進(jìn)行時(shí)間計算。這就是時(shí)鐘的上升沿對下降沿或下降沿對上升沿轉換的情況,對一個(gè)250MHz的時(shí)鐘來(lái)說(shuō),對應的就是2納秒的路徑要求。

在時(shí)鐘源(source clock)和時(shí)鐘目標端(destination clock)非同一個(gè)時(shí)鐘的情況下,時(shí)序問(wèn)題就變得更加復雜。具有不同時(shí)鐘源和時(shí)鐘目標端的時(shí)序路徑被稱(chēng)為跨時(shí)鐘域(CDC)路徑。

1.jpg

圖1:擴展時(shí)鐘的TCL腳本

如果發(fā)起時(shí)鐘和捕獲時(shí)鐘之間的相位關(guān)系未知,就無(wú)法計算路徑要求。由于不確定相位關(guān)系,則無(wú)法準確確定路徑時(shí)序。不安全時(shí)鐘在Vivado設計套件生成的時(shí)鐘交互報告中會(huì )突出顯示。在發(fā)起時(shí)鐘和捕獲時(shí)鐘之間的相位關(guān)系已知的情況下,只要兩個(gè)時(shí)鐘之間存在周期性關(guān)系,就可以用數學(xué)方法推導出路徑要求。用于判斷給定發(fā)起時(shí)鐘和捕獲時(shí)鐘之間最低路徑要求的方法稱(chēng)為時(shí)鐘擴展。不過(guò)確定兩個(gè)時(shí)鐘之間是否存在周期性關(guān)系需要用實(shí)際限制加以約束,因為一般情況下兩個(gè)不同時(shí)鐘之間不存在共同的周期性特征。Vivado設計套件使用的實(shí)際限制條件是1,000個(gè)時(shí)鐘周期,以?xún)蓚€(gè)時(shí)鐘中較小的時(shí)鐘周期為測量標準。如果在擴展兩個(gè)時(shí)鐘到超過(guò)1,000個(gè)時(shí)鐘周期后沒(méi)出現周期性關(guān)系,那么這兩個(gè)時(shí)鐘就被稱(chēng)為“未擴展”時(shí)鐘。Vivado設計套件對兩個(gè)未擴展時(shí)鐘之間的路徑要求為發(fā)起時(shí)鐘和捕獲時(shí)鐘相鄰工作沿之間相隔的最少時(shí)間。但需要注意的是對超過(guò)1,000個(gè)時(shí)鐘周期的情況有更加嚴格的路徑要求,這就是Vivado設計套件將這種類(lèi)型的兩個(gè)時(shí)鐘之間的關(guān)系稱(chēng)之為未擴展的原因。

2.jpg

圖2:125MHz和156.25MHz時(shí)鐘的時(shí)鐘擴展

Vivado BFT內核可為測試不同時(shí)鐘速率提供理想設置,從而判定兩個(gè)時(shí)鐘是否為擴展時(shí)鐘

為更好地理解Vivado設計套件計算未擴展時(shí)鐘的方法,先以圖1中的TCL腳本來(lái)對擴展任意兩個(gè)時(shí)鐘速率之間的上升沿對上升沿路徑要求的方法進(jìn)行詳細說(shuō)明。圖2是這個(gè)腳本的輸出,即兩個(gè)分別運行在125MHz和156.25MHz的時(shí)鐘的擴展。

為確認上述TCL腳本得出的結果,我們來(lái)觀(guān)察一下Vivado BFT 內核范例設計。BFT 內核可為測試不同時(shí)鐘速率提供理想設置,從而判定兩個(gè)時(shí)鐘是否為擴展時(shí)鐘。該內核有兩個(gè)獨立的時(shí)鐘源,分別命名為wbClk和bftClk。時(shí)序約束可將wbClk和bftClk的頻率分別設置為100MHz和200MHz。用戶(hù)可可對任意兩個(gè)時(shí)鐘速率的此類(lèi)約束進(jìn)行修改,以便確定由Vivado時(shí)序引擎判別的擴展關(guān)系。圖3是將bftClk設置為125MHz,將wbClk設置為156.25MHz時(shí)所顯示的結果,并提供了相關(guān)的時(shí)序(report_timing –from [get_clocks bftClk] -to [get_clocks wbClk])。請注意,由發(fā)起沿、捕獲沿和時(shí)序要求共同確認TCL腳本的預測結果。

表1是使用圖4中的TCL腳本獲得的幾種時(shí)鐘速率的發(fā)起沿、捕獲沿和路徑要求。

3.jpg

圖3:125MHz發(fā)起時(shí)鐘到156.25MHz捕獲時(shí)鐘的時(shí)鐘擴展

表1:時(shí)鐘擴展實(shí)例

4.jpg
5.jpg

圖4:時(shí)鐘擴展Tcl 腳本

處理未擴展時(shí)鐘

人們常常把未擴展時(shí)鐘視為異步時(shí)鐘,并通過(guò)FIFO、邊沿檢測器或同步器電路等適當的同步技巧來(lái)進(jìn)行處理。如果用戶(hù)使用此類(lèi)技巧,應在約束中使用時(shí)序例外來(lái)處理未擴展時(shí)鐘(一般使用set_false_path或set_max_delay例外)。

理解和說(shuō)明未擴展時(shí)鐘具有重要的意義,因為時(shí)鐘之間的邊沿關(guān)系將決定Vivado設計套件中時(shí)序引擎所使用的路徑要求。賽靈思希望對設計中的所有未擴展時(shí)鐘進(jìn)行詳查,以確保使用適當的同步技巧安全地穿越未擴展時(shí)鐘之間的跨時(shí)鐘域。



關(guān)鍵詞: 時(shí)鐘擴展 Vivado

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>