一、組合邏輯電路中的競爭—冒險現象
1、競爭—冒險現象及其成因
- 競爭:門電路的兩個輸入信號同時向相反的邏輯電平跳變(一個從1變爲0,另一個從0變爲1)的現象。
注意:只要存在競爭現象,輸出就有可能出現違背穩態下邏輯關係的尖峯脈衝。
- 競爭—冒險:由於競爭而在電路輸出端可能產生尖峯脈衝的現象,即有競爭就存在冒險。
2、檢查競爭—冒險現象的方法
- 代數法
在輸入變量每次只有一個改變狀態的簡單情況下,可以通過邏輯函數式判斷組合邏輯電路中是否有競爭—冒險現象存在,具體方法如下:
在邏輯函數式中將n-1個輸入變量(共n個輸入)用固定的0或1帶入,最後能將邏輯函數式能化簡成
或
或者上面兩式的反,即可判定存在競爭—冒險現象。
補充:由上述判定可以得知,只要電路中的與門和非門的兩輸入同時向相反的邏輯電平跳變(一個從1變爲0,另一個從0變爲1),就存在競爭—冒險現象。
- 卡諾圖法
有兩個相切的卡諾圈,並且相切處沒有其他卡諾圈包圍,可能會出現競爭-冒險現象。
另外,較爲複雜的情況而採用計算機輔助分析+實驗的分析方法。
3、消除競爭—冒險現象的方法
(1)接入濾波電容
在輸出端並接一個很小的濾波電容,就足以把尖峯脈衝的幅度削弱至門電路的閾值電壓以下。
優點:簡單易行;
缺點:增加了電壓波形的上升時間和下降時間,使波形變壞;
適用:對輸出波形前、後沿無嚴格要求。
(2)引入選通脈衝
在電路中引入一個選通脈衝p,p的高電平(正脈衝)出現在電路到達穩定狀態以後,這時正常的輸出信號也將變成脈衝信號,且寬度與選通脈衝相同。
優點:簡單,不需要增加電路元件;
缺點:需要設法得到一個與輸入信號同步的選通脈衝,對其寬度和作用的時間也有嚴格要求。
(3)修改邏輯設計
例:邏輯函數式,在B = C = 1的條件下,當A改變狀態時存在競爭—冒險現象。通過增加冗餘項的方法,函數式可變爲,此時在B = C = 1的條件下無論A如何變化,輸出始終保持Y = 1,即A的狀態改變不再會引起競爭—冒險現象。
優點:不會給電路帶來不利的影響;
缺點:無法消除多變量同時改變狀態時,例如AB從10變爲01電路仍會存在競爭—冒險的現象,且該方法適用範圍有限;
上述方法適用於消除單變量改變狀態時存在競爭—冒險現象的情況。
二、時序邏輯電路中的競爭—冒險現象
因爲時序邏輯電路中通常包含組合電路和存儲電路兩個部分,所以它的競爭—冒險現象包含兩個部分。
1、組合邏輯電路中的競爭—冒險現象
見上,略。
2、存儲電路(觸發器)工作中的競爭—冒險現象
這是時序電路所特有的一個現象。
當輸入信號和時鐘信號同時改變,而且途徑不同路徑到達同一觸發器,便產生了競爭。競爭的結果有可能導致觸發器誤動作,這種現象稱爲存儲電路(或觸發器)的競爭—冒險現象。
在同步電路中,由於所有觸發器都在同一時鐘操作下動作,而在此之前每個觸發器的輸入信號已處於穩態狀態,因而可以認爲不存在競爭現象。因此,一般認爲存儲電路的競爭—冒險現象僅發生在異步時序電路中。
當然,同步時序電路(非嚴格意義上的)會存在時鐘偏移現象,有可能造成移位寄存器的誤動作。如下圖,由於和 到達的傳輸延遲時間不同。