在實(shí)際的電路設(shè)計(jì)過程中,存在傳播延時(shí)和信號(hào)變換延時(shí)。由延時(shí)引起的競爭與冒險(xiǎn)現(xiàn)象會(huì)影響輸出的正確與否。下面將就競爭與冒險(xiǎn)產(chǎn)生的原因,判斷方法和避免競爭與冒險(xiǎn)的方法進(jìn)行討論,希望對(duì)諸位有所幫助。
產(chǎn)生原因
競爭:在組合邏輯電路中不同路徑的輸入信號(hào)到達(dá)同一個(gè)門級(jí)電路時(shí),在時(shí)間上有先有后,這種先后時(shí)間上的差異稱之為競爭(Competition)
冒險(xiǎn):由于競爭的存在,信號(hào)在過渡時(shí)間瞬間可能產(chǎn)生錯(cuò)誤的輸出,例如尖峰脈沖。成為冒險(xiǎn)。
有競爭不一定產(chǎn)生冒險(xiǎn),但是有冒險(xiǎn)一定存在競爭。
判斷方法
代數(shù)法
在電路的邏輯表達(dá)式中保持一個(gè)變量不變,其余變量用0或者1替代如果邏輯表達(dá)式可以化成:
F = A + ~A
或
F = A·~A
的形式則可以判斷出此邏輯存在競爭與冒險(xiǎn)。
卡諾圖法
存在兩個(gè)相切的卡諾圖,若在相切處沒有其他卡諾圖包圍,可能會(huì)出現(xiàn)競爭與冒險(xiǎn)現(xiàn)象。如下圖所示:
F = ~A·~B + A·C
F = A·~B + B·~C
消除方法
常見的避免競爭與冒險(xiǎn)的辦法有以下四種:
增加濾波電容,濾除窄脈沖
在輸出端并聯(lián)一個(gè)小電容,將尖峰脈沖幅度削弱至門電路閾值以下。這種方法的突出問題是會(huì)增加輸出電壓的翻轉(zhuǎn)時(shí)間,容易破壞波形。
修改邏輯,增加冗余項(xiàng)
在卡諾圖中兩個(gè)相切的圈之間增加一個(gè)圈,并加入邏輯表達(dá)式之中。如下圖所示:
F = ~A·~B + A·C + ~B·C
使用時(shí)鐘同步電路,利用觸發(fā)器進(jìn)行打拍延遲
同步電路信號(hào)的變化都發(fā)生在時(shí)鐘邊沿,對(duì)于D觸發(fā)器的輸入端而言,只要毛刺不出現(xiàn)在時(shí)鐘上升沿并且還不滿足建立保持時(shí)間要求,就不會(huì)對(duì)系統(tǒng)產(chǎn)生危害,即D觸發(fā)器對(duì)輸入端毛刺不敏感。因此在時(shí)鐘邊沿驅(qū)動(dòng)下,對(duì)組合邏輯信號(hào)進(jìn)行延遲打拍即可消除競爭冒險(xiǎn)。實(shí)際設(shè)計(jì)過程中可以根據(jù)設(shè)計(jì)需求對(duì)信號(hào)進(jìn)行合理的打拍延遲。
采用格雷碼計(jì)數(shù)器
在遞加的多bit位計(jì)數(shù)器,計(jì)數(shù)值有時(shí)候會(huì)發(fā)生多bit的跳變,產(chǎn)生短暫的尖峰脈沖。而格雷碼計(jì)數(shù)器,計(jì)數(shù)時(shí)相鄰的數(shù)之間只有一個(gè)bit數(shù)據(jù)發(fā)生跳變,所以能有效避免競爭與冒險(xiǎn)。
總結(jié)
在消除競爭與冒險(xiǎn)的辦法中,增加濾波電容和邏輯冗余都不是在代碼層面考慮的問題。利用觸發(fā)器在時(shí)鐘同步電路下對(duì)異步信號(hào)進(jìn)行打拍延時(shí)常在Verilog中使用。
審核編輯 黃宇
-
電路
+關(guān)注
關(guān)注
173文章
5973瀏覽量
173009 -
競爭冒險(xiǎn)
+關(guān)注
關(guān)注
0文章
2瀏覽量
5041
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Linux系統(tǒng)中的競爭與冒險(xiǎn)處理方法
FPGA中競爭與冒險(xiǎn)的前世今生
FPGA設(shè)計(jì)中競爭冒險(xiǎn)問題的研究
怎樣消除競爭冒險(xiǎn)
組合邏輯電路的競爭冒險(xiǎn),輸入信號(hào)同時(shí)從1變0會(huì)產(chǎn)生競爭冒險(xiǎn)嗎
FPGA中的競爭和冒險(xiǎn)現(xiàn)象
什么是競爭與冒險(xiǎn)現(xiàn)象?怎樣判斷?如何消除?
簡談FPGA的競爭冒險(xiǎn)和毛刺問題
FPGA | 競爭冒險(xiǎn)和毛刺問題
組合邏輯中的競爭與冒險(xiǎn)及毛刺的處理方法
![組合邏輯中的<b class='flag-5'>競爭</b>與<b class='flag-5'>冒險(xiǎn)</b>及毛刺的處理<b class='flag-5'>方法</b>](https://file.elecfans.com/web2/M00/48/D2/pYYBAGKhtCeAPjjOAAAJ9K6TUSs493.jpg)
FPGA視頻教程之FPGA設(shè)計(jì)中如何避免冒險(xiǎn)競爭
![FPGA視頻教程之FPGA設(shè)計(jì)中如何<b class='flag-5'>避免</b><b class='flag-5'>冒險(xiǎn)</b><b class='flag-5'>競爭</b>](https://file.elecfans.com/web1/M00/8B/BF/pIYBAFyUq4SAJnxYAAICdQXHrtA138.png)
評(píng)論