《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 信號跨時鐘域問題分析及驗證方法研究
信號跨時鐘域問題分析及驗證方法研究
2017年電子技術應用第1期
王 菲,張莎莎,王 茜
中國航天科技集團公司第九研究院第七七一研究所,陜西 西安710119
摘要: 航天用FPGA設計復雜度越來越高,其表現之一就是設計中存在多個時鐘域,當信號從一個時鐘域進入另一個時鐘域,即不同時鐘域之間發生數據交互時,就會帶來信號跨時鐘域產生的亞穩態問題(CDC問題)。亞穩態問題雖普遍存在,但依靠傳統的驗證手段即功能仿真或者時序仿真是很難定位的,提出一種分層次、多模式的跨時鐘域驗證方法,為跨時鐘域問題分析確認提供強有力的參考。
中圖分類號: TN710
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.01.011
中文引用格式: 王菲,張莎莎,王茜. 信號跨時鐘域問題分析及驗證方法研究[J].電子技術應用,2017,43(1):43-45,49.
英文引用格式: Wang Fei,Zhang Shasha,Wang Xi. Research of clock domain crossing problems and a verification method[J].Application of Electronic Technique,2017,43(1):43-45,49.
Research of clock domain crossing problems and a verification method
Wang Fei,Zhang Shasha,Wang Xi
771 Institute of China Aerospace,Xi′an 710119,China
Abstract: The FPGA design used in aerospace is becoming more and more complex, which includes the appearance of multi clock domain in design. The issue with metastability will arise when a signal traverses from one clock domain into another。Although the metastability exists widely, it is difficult to locate the issue based on traditional verification methods, including function simulation and timing simulation. This essay will propose a hierarchical and multi-mode verification method for clock domain crossing, which provides a strong reference for analyzing clock domain crossing issue.
Key words : FPGA;clock domain crossing;metastable;verification method

0 引言

    近些年,FPGA設計已由過去的譯碼、編碼等簡單電路升級為各種復雜接口電路、通訊協議甚至專用算法處理器的實現,因此,單時鐘設計遠不能滿足要求,多個時鐘域并存已非常普遍。這必然帶來信號跨時鐘域問題,如傳輸丟失、產生亞穩態導致功能錯誤等。然而在實際中,如何發現跨時鐘域問題是一個難點,本文提出一種跨時鐘域的驗證方法,對日常工作中發現及解決跨時鐘域問題有著重要意義。

1 信號跨時鐘域帶來的問題分析

    信號跨時鐘域是影響FPGA設計的可靠性、安全性的重要因素,究其根本原因都是由于亞穩態[1]造成。經過深入的分析歸納,信號跨時鐘域問題(CDC問題)主要分為亞穩態的傳播、數據丟失和跨時鐘域信號再聚合時引起功能出錯3類。

1.1 亞穩態的傳播

    如圖1所示,信號A違反了觸發器的建立-保持時間,導致輸出B產生振蕩,并持續一段時間,所以當clk_B的第二個有效沿到來時,B有可能穩定到一個中間電壓,也有可能繼續震蕩,因此就會給系統帶來以下的問題:

wdz8-t1.gif

    (1)不同的扇出會把不穩定的B判定為不同的值,這樣就使得系統進入了一個未知的狀態,導致某些功能失效。

    (2)造成至少一個周期的傳播延時,導致時序問題。

1.2 數據丟失

    觸發器的輸入A從clk_A時鐘域(較快時鐘域)進入clk_B時鐘域(較慢時鐘域)時,由于穩定的時間不夠長造成沒有被clk_B時鐘域采樣到,從而丟失正確的數據,如圖2所示。

wdz8-t2.gif

1.3 跨時鐘域信號再聚合(Re-convergence)時引起功能出錯

    當跨時鐘域信號再聚合時會引起電路功能錯誤。由于亞穩態的影響會造成接收到的CDC信號發生不可預測且可變的延遲,這些不同延遲的信號在重新聚合時就可能造成采樣失敗,從而導致功能錯誤。圖3為跨時鐘域信號再聚合的問題模型。這種設計路徑常見于多位控制總線信號的跨時鐘域傳播,跨時鐘域再聚合波形分析如圖4所示。

wdz8-t3.gif

wdz8-t4.gif

2 跨時鐘域驗證方法

    對于跨時鐘域驗證而言,目前業界并沒有統一的、成熟的驗證方法,這里主要結合多年FPGA設計驗證經驗,加入對業界領先技術的應用,提出一種多模式、互補型的跨時鐘域驗證方法。該方法從不同角度、多方位、分階段對FPGA進行檢查,是一種以靜態分析為主要技術手段,輔助以動態仿真驗證的驗證方法,跨時鐘域驗證的基本流程如圖5所示。

wdz8-t5.gif

2.1 結構驗證

    結構驗證是跨時鐘域驗證整個流程中的主要環節,它是一種以靜態分析為主要技術手段的形式驗證方法,通過對FPGA設計綜合后存在數據跨時鐘域傳播的路徑進行分析,檢查是否存在跨時鐘域問題。

    (1)檢查是否存在同步電路

    數據跨時鐘域傳播時(無論是從快時鐘域到慢時鐘域,或是從慢到快時鐘域),由于兩個時鐘域互不相關,均存在亞穩態的可能性。因此需插入同步電路模塊。沒有同步電路的設計結構如圖6所示。

wdz8-t6.gif

    (2)檢查同步電路的正確性

    目前對于單bit信號的同步,主要有電平同步器、邊沿同步器及脈沖同步器3種形式。但是無論哪種形式,同步電路的核心為兩級寄存器同步。下面列出幾種在FPGA設計中常見的無效同步電路形式,如圖7~圖11所示。

wdz8-t7.gif

wdz8-t8.gif

wdz8-t9.gif

wdz8-t10.gif

wdz8-t11.gif

    (3)檢查是否屬于多位信號的跨時鐘域問題

    對于多位信號,主要是以握手協議、異步fifo的交互方式來完成信號的跨時鐘域傳播。多bit信號在跨時鐘域傳播時不能簡單地采用同步每位信號來完成。這會帶來多位數據的一致性問題,造成目的時鐘域采樣錯誤。錯誤電路結構如圖12所示。

wdz8-t12.gif

    (4)檢查是否屬于跨時鐘域信號再聚合問題[4]

    跨時鐘域信號再聚合應與多位數據跨時鐘域的問題有所區分,問題電路結構如圖3所示,源時鐘域可以是一個或多個時鐘域,不同信號經過目的時鐘域同步后由組合邏輯再聚合,再聚合而成的信號在使用時會對后級電路造成威脅。其與多位時鐘跨時鐘域問題的解決辦法均為在源時鐘域的輸入端引入多位編碼方式,即格雷編碼。

    通過目前的驗證情況看,以上電路結構形式基本可以涵蓋90%以上的設計形式。

2.2 協議檢查

    協議檢查是對結構驗證的有力補充,可以發現通過電路結構檢查無法發現的跨時鐘域問題,這里的協議檢查仍然以靜態分析為主要技術手段。協議檢查的方法是通過對上級系統及任務需求等方面的深入分析,確認問題設計路徑上信號的輸入形式、變化快慢、保持時間等參數,從而確定是否存在跨時鐘域問題。

    典型的協議檢查例如數據由快時鐘域向慢時鐘域傳播的情況。如圖13的分析可知,當數據由快時鐘域向慢時鐘域傳播時,如果數據保持時間不夠則目的時鐘域無法采樣到數據,這種情況會造成數據丟失。這時就需要結合信號在實際電路中約定的協議來分析判斷跨時鐘域信號在源時鐘域是如何變化的,每次變化保持的時間是多長。

wdz8-t13.gif

    經協議分析檢查之后修改電路如圖14所示,使得源時鐘域的數據保持兩個時鐘周期從而使目的時鐘域能夠穩定采樣,避免數據丟失的問題,相比圖2波形發生的變化如圖15所示。當然,這種修改適用于目的時鐘域的時鐘頻率小于兩倍源時鐘域的情況。

wdz8-t14.gif

wdz8-t15.gif

2.3 CDC動態仿真

    前面的結構驗證和協議檢查的驗證方法都是靜態分析的方法,除此之外還可以采用動態仿真的方法對跨時鐘域問題進行驗證。這里的動態仿真與功能驗證中的仿真有很大區別,CDC動態仿真主要是引入斷言的方法針對數據跨時鐘域時可能存在問題的時序點進行仿真。CDC仿真要在前面靜態分析的基礎上,在已知電路結構存在跨時鐘域問題的前提下,有針對性地設計斷言,驗證時序的正確性。

    CDC動態仿真分為以下3個步驟:(1)提取屬性,(2)斷言設計,(3)斷言仿真。提取屬性和斷言設計這兩步可先由工具針對常見的CDC設計形式自動產生,這些自動產生的CDC協議檢測器在仿真環境下運行,最后通過調用仿真環境(testbench)檢查設計的功能是否正確。很多情況下,對于所需驗證的時序點,需要人工進行斷言的設計,這也是這個環節的難點。

3 總結

    本文主要對目前FPGA設計中存在的跨時鐘域問題進行了深入的分析總結,提出了一種多模式、互補型的跨時鐘域驗證方法。詳細講解了如何分層次、多方位地進行跨時鐘域驗證以確認設計中的亞穩態問題,為發現目前FPGA產品研制中的跨時鐘域問題提供了依據,后續會對方法中的斷言設計進行進一步的研究。

參考文獻

[1] 周偉.FPGA跨時鐘域亞穩態研究[J].電子世界,2012(3):87-89.

[2] Mike Stein,Paradigm Works.Crossing the abyss:asynchronous signals in a synchronous world[].EDN magazine,2003.

[3] San Jose.Real intent introduces CDC verification for altera customers.Real Intent Inc.2008.3.



作者信息:

王  菲,張莎莎,王  茜

(中國航天科技集團公司第九研究院第七七一研究所,陜西 西安710119)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产日韩欧美高清免费| 亚洲国产高清视频| 欧美www视频| 久久九九精品99国产精品| 亚洲影视在线| 一片黄亚洲嫩模| 亚洲乱码国产乱码精品精98午夜| 欧美在线一级视频| 欧美一区日韩一区| 亚洲欧美日韩国产成人| 亚洲伊人久久综合| 一区二区三区欧美视频| 99视频超级精品| 一本到高清视频免费精品| 日韩视频在线免费观看| 日韩视频免费在线观看| 亚洲精品日韩精品| a91a精品视频在线观看| 一本久道久久综合中文字幕| 日韩午夜av| 一区二区三区精品| 亚洲网站在线| 亚洲欧美综合精品久久成人| 亚洲欧美日本日韩| 欧美在线视频不卡| 亚洲风情亚aⅴ在线发布| 久久精品天堂| 亚洲精品日韩久久| 夜夜嗨av一区二区三区网站四季av| 日韩午夜免费| 亚洲免费小视频| 欧美一区二区三区在线免费观看| 久久aⅴ国产欧美74aaa| 久久中文字幕一区二区三区| 你懂的视频欧美| 欧美日韩人人澡狠狠躁视频| 国产精品久久二区二区| 国产精品尤物福利片在线观看| 国产婷婷精品| 在线看国产一区| 亚洲精品久久7777| 亚洲一区二区黄色| 久久精品国产99| 99热在线精品观看| 午夜精品久久久久久99热| 久久激情五月激情| 欧美国产一区视频在线观看 | 国产精品美女久久久久久久| 国产欧美一级| 亚洲国产精品www| 亚洲香蕉伊综合在人在线视看| 欧美一区影院| 99精品国产99久久久久久福利| 亚洲欧美日韩国产一区| 老司机午夜精品视频在线观看| 欧美激情综合亚洲一二区| 国产精品乱子久久久久| 激情视频一区二区| 宅男精品视频| 久久精品一区| 亚洲一区二区三区中文字幕| 久久精品免费观看| 欧美日韩二区三区| 国产亚洲欧美在线| 亚洲精品久久久久中文字幕欢迎你| 在线视频亚洲| 亚洲电影在线看| 亚洲一区二区三区在线观看视频 | 欧美日韩中文字幕在线| 国产日韩一区二区三区在线播放| 亚洲第一页在线| 亚洲免费视频网站| 99精品欧美一区二区三区| 欧美在线你懂的| 欧美日韩成人在线观看| 国产综合欧美在线看| 99一区二区| 亚洲国产视频直播| 欧美亚洲免费在线| 欧美日韩国产二区| 精品成人国产| 午夜亚洲性色视频| 亚洲午夜久久久久久久久电影院| 免费观看久久久4p| 国产午夜一区二区三区| 日韩视频亚洲视频| 亚洲日本欧美| 久久久久久久久久久久久女国产乱 | 亚洲专区在线视频| 一区二区日韩伦理片| 免费亚洲电影在线| 国内外成人免费激情在线视频| 亚洲一区二区欧美日韩| 99精品视频一区二区三区| 老色鬼久久亚洲一区二区| 国产精品美女久久久免费| 99精品久久久| 99re66热这里只有精品4| 久久先锋资源| 国产欧美亚洲日本| 亚洲一区二区三区视频| 在线一区视频| 欧美日本成人| 亚洲国产欧美国产综合一区| 久久国产视频网站| 欧美在线观看视频一区二区| 国产精品麻豆va在线播放| 亚洲免费精彩视频| 一区二区日本视频| 欧美精品久久久久久久久老牛影院 | 亚洲欧美国产高清| 欧美视频日韩| 99精品视频免费观看视频| 一区二区三区黄色| 欧美日韩亚洲综合在线| 亚洲伦理在线免费看| 亚洲精品影院| 欧美日本中文字幕| 亚洲美洲欧洲综合国产一区| 99精品视频免费观看视频| 欧美激情二区三区| 亚洲精品国产品国语在线app | 欧美视频一区二区| 99综合在线| 亚洲免费在线视频| 国产精品一区二区欧美| 亚洲欧美综合国产精品一区| 欧美一区二区三区四区在线 | 欧美手机在线| 一区二区精品在线| 午夜精品av| 国产日韩精品久久久| 午夜精品久久久久久| 欧美自拍偷拍午夜视频| 国内外成人在线视频| 亚洲黄色影片| 欧美精品一区二区久久婷婷| 9人人澡人人爽人人精品| 午夜精品偷拍| 国产一区二区无遮挡| 亚洲二区在线| 欧美日韩精品综合| 亚洲综合色丁香婷婷六月图片| 久久精品国产一区二区三区免费看 | 亚洲线精品一区二区三区八戒| 欧美一二三区在线观看| 国外成人网址| 亚洲欧洲在线一区| 欧美日韩国产小视频| 亚洲视频欧洲视频| 久久久久久久成人| 亚洲人成在线观看网站高清| 亚洲视屏在线播放| 国产婷婷色综合av蜜臀av | 久久精品国产77777蜜臀| 欲香欲色天天天综合和网| 艳妇臀荡乳欲伦亚洲一区| 国产精品www色诱视频| 性亚洲最疯狂xxxx高清| 欧美jizzhd精品欧美巨大免费| 99视频一区二区三区| 久久超碰97中文字幕| 亚洲人成久久| 欧美亚洲在线播放| 在线播放日韩| 亚洲欧美日韩国产综合在线| 韩国三级在线一区| 亚洲一区二区三区精品视频| 国产亚洲一区二区精品| 亚洲另类黄色| 国产日韩在线不卡| 一道本一区二区| 国产曰批免费观看久久久| 99视频精品免费观看| 国产一区二区黄| 一区二区三区鲁丝不卡| 国产一区二区三区黄视频| 日韩午夜精品视频| 国产一区日韩一区| 亚洲一区日韩| 亚洲高清在线| 久久国内精品视频| 夜夜嗨av一区二区三区网站四季av| 久久国产精品久久久久久久久久| 亚洲精品护士| 浪潮色综合久久天堂| 亚洲网站视频| 欧美精品国产一区| 久久国产精品亚洲va麻豆| 国产精品福利在线观看网址| 亚洲激情在线观看视频免费| 国产精品丝袜白浆摸在线| 亚洲免费大片| 黄网站色欧美视频| 亚洲精品社区| 国产日韩一区二区三区在线| 亚洲人午夜精品| 国产视频一区三区| 亚洲男女自偷自拍| 亚洲精品久久久蜜桃|