跨時鐘域的同步問題

2021-08-04 15:40:26 字數 900 閱讀 2123

這個博主講解的還是很有意思的呢,

配合這個,簡短的講解:

亞穩態在同步系統中,如果觸發器的setup time / hold time不滿足,就可能產生亞穩態,此時觸發器輸出端q在有效時鐘沿之後比較長的一段時間處於不確定的狀態,在這段時間裡q端毛刺、振盪、固定的某一電壓值,而不是等於資料輸入端d的值。這段之間成為決斷時間(resolution time)。經過resolution time之後q端將穩定到0或1上,但是究竟是0還是1,這是隨機的,與輸入沒有必然的關係。

由於輸出在穩定下來之前可能是毛刺、振盪、固定的某一電壓值,因此亞穩態除了導致邏輯誤判之外,輸出0~1之間的中間電壓值還會使下一級產生亞穩態(即導致亞穩態的傳播)。 邏輯誤判有可能通過電路的特殊設計減輕危害(如非同步fifo中gray碼計數器的作用),而亞穩態的傳播則擴大了故障面,難以處理。

那麼究竟如何避免(或者減小)亞穩態的危險呢?注意到亞穩態的觸發器繼續停留在亞穩態的機率按照指數減少,那麼辦法就是 等——等足夠長的時間,直到這個機率變得小的實際 上不會發生。到底需要有多長呢?有的廠商有乙個資料,有的沒有,按照普通的做法,至少等乙個時鐘週期——這也就是所謂的非同步資料要用兩個觸發器打一下

世界上並沒有完全解決,只是等了一段時間,所以亞穩態的可能減小了很多

跨時鐘域的訊號傳輸過程中,可能出現亞穩態的情況,這個時候,需要同步器進行同步,減小亞穩態傳播下去的概率;注意這裡的同步器只能減少亞穩態往下傳播的概率,如果產生亞穩態,亞穩態恢復穩定後的電平不一定是正確的電平,如果穩定後的電平是錯誤的,那麼就很有可能引起後面的邏輯的錯誤,這是需要強調的;當然,一般情況下(我這裡是說一般情況)很少發生亞穩態,不然後面的邏輯豈不是要掛?

,,,

那麼問題來了,sync cell的sim jitter 是在抖動什麼呢?

sim jitter 和clk jitter有什麼差別呢?

Maybe跨時鐘域?同步性太差?

寫spi的時候,想接收sdo傳過來的資料。檢測sclk的上公升沿,對sdo進行移位儲存。然後就出現乙個很神奇的事,write cnt從10到18只有7個clk進行了資料的儲存。同步性太差導致的?看一下write cnt 20時寫資料看是什麼時序。果然是有問題的,cnt為20時,已經存資料了。所以我們...

「單位元訊號同步」 學習筆記(跨時鐘域問題)

文章 1.概述 訊號同步的目的是防止新時鐘域中第一級觸發器 的亞穩態訊號對下一級邏輯造成影響。簡單的同步器由兩個觸發器串聯而成,中間沒有其它組合電路。這種設計可以保證後面的觸發器獲得前乙個觸發器輸出時 前乙個觸發器已退出了亞穩態,並且輸出已穩定。2.訊號同步的要求 為了使同步工作能正常進行 從某個時...

跨時鐘域分析 單位元訊號同步

處理跨時鐘域的資料有單bit和多bit之分,而打兩拍的方式常見於處理單bit資料的跨時鐘域問題。打兩拍本質就是定義兩級暫存器對資料進行延拍。流程如下圖所示 兩級暫存器的原理 兩級寄存是一級寄存的平方,兩級並不能完全消除亞穩態危害,但是提高了可靠性減少其發生概率。總的來講,就是一級概率很大,改善不大。...