聽說這本書對數字IC設計中的常見問題講的非常清楚易懂,看了目錄感覺確實都是數字設計中一些關鍵問題,而且一共才217頁,爭取這個月看完吧,
書的PDF資源:
鏈接:https://pan.baidu.com/s/1b981albw_aZwLOhBvlHqpw
提取碼:80zc
1.1簡介
同步系統中如果資料和時鐘滿足建立保持時間的要求,不會發生亞穩態(meastable),
異步系統中資料和時鐘關系不固定,可能違反建立保持時間,就會輸出介于兩個有效狀態之間的中間級電平,且無法確定停留在中間狀態的時間,或者過了一定的延遲后才能正常轉換,這就是亞穩態,
1.2亞穩態理論
亞穩態產生原因:違背了觸發器的建立時間和保持時間,
現象:觸發器的輸出產生毛刺,或者暫時保持在不穩定狀態且需要較長時間才能回到穩定狀態,

tsu:建立時間(setup)
th:保持時間(hold)
tco:時鐘到輸出的延遲(clock-to-output delay)
tMET:亞穩態輸出恢復到穩定狀態所需的超過tco的額外時間部分(settling time)
并非所有不滿足建立時間和保持時間的輸入變化都會導致亞穩態,還取決于生產工藝和外界環境,
一般來說,觸發器會在一兩個周期回傳穩態,
同步失敗:信號再一個時鐘域里變換,在另一個時鐘域內采樣,導致輸出變成亞穩態,
1.3亞穩態視窗

這里書上講亞穩態視窗內信號和時鐘都應該保持不變,但是這里時鐘肯定是上升沿呀,怎么可能不變,我理解的應該只是資料不變,
視窗越大,進入亞穩態概率越高,一般新器件會有更小的亞穩態視窗,
1.4計算MTBF
MTBF(Mean/Average Time Between Failures,平均無故障時間),即故障率倒數.

公式成立條件:給定時鐘頻率,在該時鐘周期內具有均勻概率密度的異步資料信號邊沿的單級同步器,

兩級同步器:

可以看出,增大同步級數可以顯著提高MTBF
1.5避免亞穩態
以下條件中,信號可能違背時序要求,

亞穩態不能根除,但是可以減小亞穩態發生的概率,
最簡單的情況下減小亞穩態概率的方法:確保時鐘周期足夠長,但是會影響性能,并不實用,
另一種方法是使用同步器,
1.5.1使用多級同步器
避免亞穩態最常見的方法:在跨時鐘域的信號上加一個或多個同步觸發器,
缺點:增加了觀察同步邏輯輸入的延遲,

1.5.2使用時鐘倍頻電路的多級同步器
多級同步器缺點:系統需要花較長時間去回應異步輸入,
解決方法:使用倍頻時鐘作為兩個同步觸發器的時鐘輸入,Altera的FPGA中就具有這項技術,

這樣不僅能讓系統一個周期回應一個異步輸入,而且改善了MTBF,然而倍頻時鐘會降低MTBF,這個影響比兩個觸發器引起的偏移量要大,
1.6亞穩態測驗電路

當發生亞穩態時,異或非門會輸出高電平,所以FFD捕捉到高電平就代表檢測到亞穩態,時序圖如下,

由于中間兩個觸發器是下降沿觸發,所以高電平時間減去FFA的tco和FFB和FFC的建立時間等于穩定時間tMET,

1.7同步器的型別
一個異步信號不應被兩個或者多個同步器所同步,一開始不太理解這句話,google了一下:一個信號扇出到多個同步器之后同步所需的時間不同,可能出現競爭冒險,
模式A當異步輸入信號比時鐘周期大得多時最有效:(這里書上兩幅圖總感覺有問題,根據書上描述的確定是給反了,迷惑了好久,,,)

模式B:第一級觸發器輸入直接與Vcc相連,輸入信號直接連觸發器時鐘,輸入信號短脈沖把q1置為1之后,便會一直保持,直到輸出高電平,

總結:
1、信號跨時鐘,要采用同步器,
2、clk1<clk2,采用模式A,否則采用模式B,
1.8亞穩態/綜合性建議

這里面abde都很好理解,無非就是針對MTBF公式各個因子的優化,c亞穩態硬化觸發可以理解為針對亞穩態專門優化設計的一種觸發器,f則是增大輸入信號擺率,使信號不穩定的時間減少,
第一章看完感覺有點蒙,感覺很多問題都沒講清楚,不像是之前看的國外書那種特別詳細的模式,感覺有點像國內教材,就直接把結論告訴你,,,,碰到問題最好google,百度全是csdn各種復制粘貼怪,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/531918.html
標籤:其他
