CDC处理
亞穩(wěn)態(tài)問(wèn)題及其解決方法
本文簡(jiǎn)單介紹亞穩(wěn)態(tài)問(wèn)題的概念,著重介紹解決亞穩(wěn)態(tài)問(wèn)題的方法。
了解亞穩(wěn)態(tài)
亞穩(wěn)態(tài)問(wèn)題是FPGA、數(shù)字IC設(shè)計(jì)中最基礎(chǔ)的一個(gè)概念,掌握這個(gè)概念需要理解觸發(fā)器的基本原理、跨時(shí)鐘域(Cross Clock Domain)概念。
亞穩(wěn)態(tài)產(chǎn)生的原因?
亞穩(wěn)態(tài)問(wèn)題是由于違背了觸發(fā)器的建立時(shí)間和保持時(shí)間而產(chǎn)生的。
- 設(shè)計(jì)中任何一個(gè)觸發(fā)器都有特定的建立時(shí)間和保持時(shí)間,但是要求觸發(fā)器的時(shí)鐘邊沿到來(lái)前后的窗口期內(nèi)觸發(fā)器D端的輸入保持穩(wěn)定。 一旦在這個(gè)窗口期內(nèi)輸入數(shù)據(jù)發(fā)生了變化,由于觸發(fā)器的結(jié)構(gòu)特性會(huì)導(dǎo)致觸發(fā)器的Q端的輸出是未知的。這種未知的狀態(tài)會(huì)隨著電路傳播下去給電路造成危害,這種不確定狀態(tài)的傳播叫做亞穩(wěn)態(tài)。
- 觸發(fā)器是否進(jìn)入亞穩(wěn)態(tài)和返回穩(wěn)態(tài)所需的時(shí)間取決于工藝和環(huán)境,一般來(lái)說(shuō),觸發(fā)器會(huì)在一、二個(gè)時(shí)鐘周期內(nèi)返回穩(wěn)定的狀態(tài)。
亞穩(wěn)態(tài)問(wèn)題如何解決?
在多時(shí)鐘設(shè)計(jì)中,亞穩(wěn)態(tài)問(wèn)題是不可避免的,亞穩(wěn)態(tài)問(wèn)題無(wú)法從根本上消除、但可以通過(guò)特定的電路來(lái)降低亞穩(wěn)態(tài)的發(fā)生的概率。
- 解決方法分類(lèi):(1)單/多bit信號(hào)(控制/數(shù)據(jù))(2)快—>慢/慢—>快
- 邊沿檢測(cè)同步器:邊沿檢測(cè)同步器如圖所示,通過(guò)寄存器之間的與操作可以提取輸入信號(hào)的上升沿或者下降沿,電路圖和時(shí)序圖如下:
邊沿檢測(cè)同步器對(duì)輸入信號(hào)有要求,要求輸入信號(hào)寬度必須 > (采樣時(shí)鐘周期(CLKB)+A的Thold時(shí)間),最安全的就是輸入寬度為2個(gè)采樣周期(CLKB)的寬度。
單bit從快到慢:- 脈沖檢測(cè)同步器:脈沖檢測(cè)同步器如圖所示,通過(guò)提取快時(shí)鐘域下的一個(gè)脈沖并在慢時(shí)鐘域進(jìn)行展寬,展寬采用異或門(mén),電路圖和時(shí)序圖如下:
邊沿檢測(cè)同步器對(duì)輸入信號(hào)有要求,要求輸入信號(hào)寬度必須 > (采樣時(shí)鐘周期(CLKB)+A的Thold時(shí)間),最安全的就是輸入寬度為2個(gè)采樣周期(CLKB)的寬度。
握手信號(hào)
詳情參見(jiàn)3.2
多bit數(shù)據(jù)信號(hào)處理的時(shí)候主要看信號(hào)的變化特征,如果能夠滿(mǎn)足格雷碼的數(shù)據(jù)變換方式,由于每次只有1bit數(shù)據(jù)發(fā)生改變,那么能夠采用上述的同步方式,否則應(yīng)當(dāng)采用握手信號(hào)或者異步fifo的形式處理
參考:
[https://blog.csdn.net/CLL_caicai/article/details/104625791]
總結(jié)
- 上一篇: cad转图片,cad图纸该如何转换成sv
- 下一篇: python判断按键是否按下_pytho