處理跨時鐘域的資料有單bit和多bit之分,而打兩拍的方式常見於處理單bit資料的跨時鐘域問題。打兩拍本質就是定義兩級暫存器對資料進行延拍。流程如下圖所示:
兩級暫存器的原理:兩級寄存是一級寄存的平方,兩級並不能完全消除亞穩態危害,但是提高了可靠性減少其發生概率。總的來講,就是一級概率很大,**改善不大。
訊號同步的要求:
為了使同步工作能正常進行,從某個時鐘域傳來的訊號應先通過原時鐘域上的乙個觸發器,然後不經過兩個時鐘域間的任何組合邏輯直接進入同步器的第乙個觸發器中。這一要求非常重要,因為同步器的第一級觸發器對組合邏輯所產生的毛刺非常敏感。如果乙個足夠長的毛刺正好滿足建立-保持時間的要求則同步器的第一級觸發器會將其放行,給新時鐘域的後續邏輯送出乙個虛假的訊號。
常用的同步器:
同步器的型別基本上有三種:電平、邊沿檢測和脈衝。
a:電平同步器
在電平同步器中,跨時鐘域的訊號在新時鐘域中要保持高電平或低電平兩個時鐘週期以上,同步之後的訊號是電平的形式。
b: 邊沿檢測(edge detecting)同步器
c:脈衝同步器
脈衝同步器的作用是檢測原時鐘域的脈衝並在新時鐘域產生乙個新的脈衝。簡單的脈衝同步器設計步驟為:
1,將脈衝訊號在原時鐘域轉換為電平訊號;
2,將電平訊號通過打兩拍同步至另一時鐘域;
3,在新的時鐘域中進行邊沿檢測,產生新的脈衝訊號;
「單位元訊號同步」 學習筆記(跨時鐘域問題)
文章 1.概述 訊號同步的目的是防止新時鐘域中第一級觸發器 的亞穩態訊號對下一級邏輯造成影響。簡單的同步器由兩個觸發器串聯而成,中間沒有其它組合電路。這種設計可以保證後面的觸發器獲得前乙個觸發器輸出時 前乙個觸發器已退出了亞穩態,並且輸出已穩定。2.訊號同步的要求 為了使同步工作能正常進行 從某個時...
FPGA單位元訊號跨時鐘域處理
詳細的原理解釋 單位元訊號跨時鐘域問題詳解 輸入 singal in,來自10mhz慢速時鐘域的單位元訊號 輸出 singal out,輸出100mhz快速時鐘域的單位元訊號 10mhz 100ns 100mhz 10ns 因為慢速時鐘域的最簡訊號長度為1個時鐘時鐘週期即 100ns,大於快速時鐘域...
跨時鐘域訊號處理
一 場景描述 某訊號signal需要在不同的時鐘域進行處理,需要同步到的不同的時鐘域繼續使用。舉例說明 某定時器timer包含兩個時鐘域bus clk和tmr clk。狀態暫存器sts和控制暫存器ctrl定義如下。暫存器讀寫訪問採用bus clk時鐘,timer功能採用tmr clk時鐘,當發生溢位...