1. 程式人生 > >數位電路中的競爭冒險以及解決

數位電路中的競爭冒險以及解決

競爭冒險在《數位電子技術基礎》中有詳細的闡述,由於學過很久了,現在再翻開復習複習,總結總結。

在組合電路中,當輸入訊號改變狀態時,輸出端可能出現虛假訊號(過渡干擾脈衝),這對電路來說是不利的。

在數位電路中,任何一個閘電路只要有兩個輸入訊號同時向相反方向變化(由01變成10,或者相反),其輸出端就可能產生干擾脈衝。

訊號由於經由不同路徑傳輸達到某一匯合點的時間有先有後的現象,就稱之為競爭,英文名Race;由於競爭現象所引起的電路輸出發生瞬間錯誤的現象,就稱之為冒險,英文名Hazard或者Risk。

有競爭不一定有冒險,但出現了冒險就一定存在競爭。

如下圖的簡單電路,由於閘電路的延時,A非相對於A訊號會滯後一丟丟(時間由工藝決定),這就會導致輸出產生一個干擾脈衝。

更現實一點,對於一個與門:

解決方式:

1.引入封鎖脈衝:引入負脈衝,在輸入訊號發生競爭的時間內,把可能產生的干擾脈衝的門鎖住。

封鎖脈衝的寬度不應小於過渡時間且與輸出訊號轉換同步。

缺點:脈衝寬度和產生時間有嚴格要求。

 

2.引入選通脈衝:在電路狀態穩定後,再選通輸出。

缺點:脈衝寬度和產生時間有嚴格要求。

 

3.引入濾波電容:輸出端並接一個不大的濾波電容

缺點:輸出波形邊沿變壞。

 

4.修改邏輯設計,增加冗餘項:

對於給定的邏輯 Y=AB+ÃC,當BC都為1的時候,若A值改變,則會發生競爭。所以可以新增冗餘項:

Y=AB+ÃC+BC

分析有無競爭冒險:畫出函式的卡諾圖,檢查有無幾何相鄰的邏輯項,有則可能產生競爭冒險。