丁淑妍 李世寶 劉建航
關(guān)鍵詞 Multisim 組合邏輯電路 競爭-冒險(xiǎn)
中圖分類號:TP301.1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識碼:A ? DOI:10.16400/j.cnki.kjdks.2019.09.016
Keywords Multisim; combinational logic circuits; competition-risk
1 背景
組合邏輯電路是數(shù)字邏輯電路的一種,由基本門電路構(gòu)成。理想情況下,只要按照給定問題建立數(shù)學(xué)模型,定義合適的輸入/輸出邏輯變量,明確邏輯關(guān)系,即可以利用門電路設(shè)計(jì)一個(gè)符合要求的組合邏輯電路。但是在實(shí)際電路設(shè)計(jì)過程中,由于存在競爭-冒險(xiǎn)現(xiàn)象而導(dǎo)致輸入和輸出在某些時(shí)刻或中間環(huán)節(jié)的某些邏輯門輸出不滿足邏輯函數(shù)表達(dá)式,最終將使得整個(gè)電路輸出端信號出現(xiàn)差錯(cuò)。Multisim仿真軟件可以虛擬電子元器件及儀器儀表,進(jìn)行原理圖設(shè)計(jì)和電路測試,而且界面友好、功能強(qiáng)大、易學(xué)易用。本文基于Multisim14分析組合邏輯電路競爭-冒險(xiǎn)現(xiàn)象產(chǎn)生的原因,并根據(jù)實(shí)際情況設(shè)計(jì)競爭-冒險(xiǎn)消除電路,從而提高整個(gè)電路的可靠性。
2 組合邏輯電路競爭-冒險(xiǎn)現(xiàn)象的成因
2.1 競爭-冒險(xiǎn)現(xiàn)象
在理想情況下,設(shè)計(jì)一個(gè)組合邏輯電路僅考慮了理論上輸入和輸出的邏輯關(guān)系,而忽略了以下兩個(gè)方面的問題:一方面,信號通過導(dǎo)線和門電路時(shí)存在時(shí)延。因此對于同一個(gè)門的多個(gè)輸入信號,由于它們在此之前通過的門數(shù)不同,經(jīng)過不同長度導(dǎo)線的傳輸,因此可能會產(chǎn)生不同的時(shí)間延遲,即各輸入端之間有時(shí)間延遲差;另一方面,當(dāng)輸入端信號從“0”變?yōu)椤?”或者從“1”變?yōu)椤?”時(shí),會有一定的上升時(shí)間或下降時(shí)間。這兩種現(xiàn)象就稱為組合邏輯電路的競爭。而由于競爭,導(dǎo)致輸出端邏輯關(guān)系在某些時(shí)刻發(fā)生錯(cuò)誤,出現(xiàn)不該有的尖峰脈沖,稱為冒險(xiǎn)現(xiàn)象。
2.2 Multisim仿真
組合邏輯函數(shù)Y=AB+A’C,當(dāng)B=C=1時(shí)可化簡為Y=A+A’,這種情況下產(chǎn)生競爭-冒險(xiǎn)現(xiàn)象的仿真示意圖如圖1所示。其中,輸入信號A頻率為1MHz,占空比為50%,上升和下降時(shí)延均設(shè)為10ns。
圖1(b)中從上到下的四個(gè)信號波形依次對應(yīng)圖1(a)中四通道示波器的A、B、C、D四路信號。根據(jù)組合邏輯關(guān)系表達(dá)式可知,當(dāng)B=C=1時(shí)輸出應(yīng)該為1,但是從實(shí)際輸出波形可以看出,在某些時(shí)刻會出現(xiàn)極短的負(fù)脈沖,而這些負(fù)脈沖出現(xiàn)在A從高電平跳變?yōu)榈碗娖酵瑫r(shí)A’從低電平跳變?yōu)楦唠娖降臅r(shí)刻,也就是當(dāng)或門的兩個(gè)輸入端同時(shí)發(fā)生電平跳變時(shí),由于存在延遲差,所以出現(xiàn)了兩個(gè)與門的輸出信號在該時(shí)刻部分和相應(yīng)邏輯關(guān)系,導(dǎo)致輸出結(jié)果出現(xiàn)錯(cuò)誤,即產(chǎn)生競爭-冒險(xiǎn)現(xiàn)象。
3 組合邏輯電路競爭-冒險(xiǎn)現(xiàn)象的消除
有競爭不一定會產(chǎn)生冒險(xiǎn),但是出現(xiàn)冒險(xiǎn)現(xiàn)象一定會有競爭。在設(shè)計(jì)組合邏輯電路時(shí),需要設(shè)法消除競爭,從而保證輸入和輸出邏輯關(guān)系的準(zhǔn)確性。常用的消除方法有修改邏輯設(shè)計(jì)和引入濾波電容。
3.1 修改邏輯設(shè)計(jì)法
利用修改邏輯設(shè)計(jì)法消除競爭-冒險(xiǎn)現(xiàn)象,通常是在邏輯表達(dá)式中增加冗余項(xiàng),保證輸入和輸出邏輯關(guān)系不變的情況下消除電路輸出端的窄脈沖。如在上例中,可以將組合邏輯函數(shù)修改為Y=AB+A’C+BC,那么當(dāng)B=C=1時(shí),無論A發(fā)生怎樣的跳變,輸出將始終為1。
這種方法需要在電路中用更多的邏輯門,如本例中需要增加一個(gè)與門,用來實(shí)現(xiàn)與項(xiàng)BC;另外需要增加一個(gè)或門,將BC項(xiàng)引入。但是該方法原理比較簡單,邏輯函數(shù)清晰易理解,所以不在此進(jìn)行仿真示意。
一般情況下,由于競爭-冒險(xiǎn)現(xiàn)象產(chǎn)生的尖峰脈沖很窄,可以在輸出端并聯(lián)濾波電容,從而消除該尖峰脈沖,如圖2所示。
圖2(a)在或門輸出端并聯(lián)了一個(gè)濾波電容,圖2(b)從上到下四個(gè)波形依次對應(yīng)圖2(a)中四通道示波器的A、B、C、D通道,從波形圖可以看出,通過引入濾波電容,可以消除尖峰脈沖,即消除競爭-冒險(xiǎn)現(xiàn)象。
該方法需要增加一個(gè)電阻和電容元件,但是不需要改變邏輯函數(shù)和電路的邏輯結(jié)構(gòu),也就是不需要增加額外的邏輯門電路,保持了各邏輯變量原有的邏輯關(guān)系。
4 結(jié)束語
競爭-冒險(xiǎn)現(xiàn)象是組合邏輯電路中信號的延遲和跳變產(chǎn)生的,利用Multisim仿真軟件可以清晰地判斷競爭-冒險(xiǎn)現(xiàn)象產(chǎn)生的時(shí)刻。本文搭建了原電路仿真圖和兩種消除電路,通過觀察各門電路的輸出波形,直觀地展示了競爭-冒險(xiǎn)現(xiàn)象產(chǎn)生的原因,并驗(yàn)證了修改邏輯設(shè)計(jì)和引入濾波電容兩種方法均可以較好地消除競爭冒險(xiǎn)現(xiàn)象。
參考文獻(xiàn)
[1] 閻石.數(shù)字電子技術(shù)基礎(chǔ)(第5版)[M].北京:高等教育出版社,2016.
[2] 胡偉.組合邏輯電路中競爭冒險(xiǎn)的虛擬仿真實(shí)驗(yàn)設(shè)計(jì)[J].湖南第一師范學(xué)院學(xué)報(bào),2010.5(10):152-155.
[3] 陳玲.基于Multisim仿真軟件在《數(shù)字電子技術(shù)》教學(xué)中的應(yīng)用[J].信息記錄材料,2016.17.5(10):130-133.
[4] 楊玉強(qiáng),騰香.組合邏輯電路競爭冒險(xiǎn)Multisim仿真分析[J].渤海大學(xué)學(xué)報(bào)(自然科學(xué)版),2012.32.2(6):120-123.