楊杰 盧貴主
(東莞理工學(xué)院 電子工程學(xué)院,廣東東莞 523808)
“競(jìng)爭(zhēng)-冒險(xiǎn)”是數(shù)字電路中特有的現(xiàn)象,它可能引起電路出現(xiàn)“莫名”的故障,是我們必須經(jīng)常面對(duì)且較為隱蔽的問題。在學(xué)習(xí)“EDA技術(shù)”、“數(shù)字集成電路設(shè)計(jì)”等課程時(shí),尤其到“系統(tǒng)優(yōu)化和時(shí)序分析”等章節(jié),只有掌握有關(guān)“競(jìng)爭(zhēng)-冒險(xiǎn)”的知識(shí),才能充分理解時(shí)序分析結(jié)果,修改并優(yōu)化自己的設(shè)計(jì)。因此,正確掌握有關(guān)“競(jìng)爭(zhēng)-冒險(xiǎn)”的知識(shí),對(duì)于提高學(xué)生調(diào)試、設(shè)計(jì)復(fù)雜數(shù)字電路的能力非常必要。
所謂“競(jìng)爭(zhēng)-冒險(xiǎn)”,實(shí)際上是由于邏輯電路信號(hào)傳輸延遲所產(chǎn)生的多余的尖峰脈沖。對(duì)于這種一閃即失的“毛刺”,如果用傳統(tǒng)的“靜態(tài)”教學(xué)方式進(jìn)行講解,往往顯得力不從心。而計(jì)算機(jī)仿真軟件的出現(xiàn),為“競(jìng)爭(zhēng)-冒險(xiǎn)”問題的講解提供了一個(gè)近乎完美的輔助平臺(tái)。在課堂上,老師借助于Multisim等軟件,高度逼真地模仿出電路的各種實(shí)際運(yùn)行情況,把“競(jìng)爭(zhēng)-冒險(xiǎn)”的成因及對(duì)策一一清晰地展現(xiàn)給學(xué)生,其“身臨其境”的教學(xué)效果是任何常規(guī)的多媒體技術(shù)根本無法比擬的[1]。如果再配合精心安排、組織教學(xué)內(nèi)容,可以起到事半功倍的成效。
我們有一個(gè)設(shè)計(jì)性實(shí)驗(yàn),要求學(xué)生將2片74192(十進(jìn)制可逆計(jì)數(shù)器)級(jí)聯(lián),組成1~29進(jìn)制的加法計(jì)數(shù)器。學(xué)生在利用仿真設(shè)計(jì)時(shí)發(fā)現(xiàn),按圖1設(shè)計(jì)的電路,用Multisim7.0仿真卻總也不能通過,原本應(yīng)該從“1”到“30/31”的計(jì)數(shù)器,每次計(jì)數(shù)到了“19”就又從頭開始了;而同一電路,在用Multisim的低版本軟件EWB5.12仿真卻又能順利通過。而實(shí)際搭建電路時(shí),又發(fā)現(xiàn)有的能正常工作,有的又不行!
學(xué)生百思不得其解,其實(shí)這只是教學(xué)設(shè)計(jì)中為講解“競(jìng)爭(zhēng)-冒險(xiǎn)”而提前所做的鋪墊。雖然在此之前,學(xué)生已經(jīng)學(xué)過關(guān)于“競(jìng)爭(zhēng)-冒險(xiǎn)”的概念,但大多僅是模模糊糊有一點(diǎn)印象而已,遇到實(shí)際問題依然一片茫然。這時(shí),深入講解“競(jìng)爭(zhēng)-冒險(xiǎn)”的時(shí)機(jī)成熟了。
圖1 29進(jìn)制加法計(jì)數(shù)器原理
在接下來的課堂教學(xué)中,教師首先分別用Multisim7.0和EWB5.12仿真運(yùn)行該電路,肯定學(xué)生設(shè)計(jì)的電路原理是正確的,所遇到的問題并不是操作上的失誤,更不是仿真軟件的缺陷。唯一的可能性是,在計(jì)數(shù)器“19”變到“20”的過程中,確確實(shí)實(shí)出現(xiàn)了錯(cuò)誤的信號(hào),導(dǎo)致了計(jì)數(shù)器又從頭開始。為了讓學(xué)生看清楚這個(gè)問題,老師現(xiàn)場(chǎng)修改仿真的時(shí)間步長(zhǎng),用“慢鏡頭”仔細(xì)重現(xiàn)剛才的過程,大家通過虛擬的“測(cè)試小燈”實(shí)實(shí)在在看到了這個(gè)一閃即失的信號(hào)。此時(shí),Multisim7.0仿真軟件開始發(fā)揮其逼真的演示效果。
顯然,這個(gè)信號(hào)的出現(xiàn)是我們預(yù)料之外的。仔細(xì)分析就不難發(fā)現(xiàn),在計(jì)數(shù)器從“19”跳到“20時(shí)”,用于控制反饋置數(shù)的2個(gè)計(jì)數(shù)器的輸出端,同時(shí)發(fā)生了向相反狀態(tài)變化的情況,即出現(xiàn)了“競(jìng)爭(zhēng)”!
為了證實(shí)由“競(jìng)爭(zhēng)”引起的“冒險(xiǎn)”確實(shí)存在,老師接著在打開的仿真設(shè)計(jì)中,查到仿真庫中74192的幾個(gè)傳輸延遲的具體數(shù)據(jù),如圖2所示。
圖2 仿真庫元件74192原始參數(shù)
由于仿真元件庫中的原始數(shù)據(jù)是,輸出端從低電平上升到高電平的時(shí)間為38 ns,從高電平下降到低電平的時(shí)間為47 ns,正是由于這個(gè)時(shí)間差,從“19”跳到“20”時(shí),狀態(tài)譯碼的與非門的輸入端出現(xiàn)了一個(gè)短暫的全“1”狀態(tài),因而反饋置數(shù)有效,計(jì)數(shù)重新開始。
為了徹底消除學(xué)生的疑慮,教師現(xiàn)場(chǎng)修改74192的電路模型參數(shù),將幾種信號(hào)傳輸時(shí)間改為一致,再次運(yùn)行仿真,如圖3。這次,一切正常了。
用另一個(gè)方案也可以進(jìn)行驗(yàn)證:在可能引發(fā)“競(jìng)爭(zhēng)-冒險(xiǎn)”的信號(hào)傳遞通道上,增加一個(gè)同相驅(qū)動(dòng)器,雖然沒有任何邏輯關(guān)系的變化,但電路“故障”也消失了!這些都說明罪魁禍?zhǔn)拙褪恰案?jìng)爭(zhēng)-冒險(xiǎn)”。
由于是當(dāng)堂修改,現(xiàn)場(chǎng)運(yùn)行,學(xué)生們身臨其境,看到了全過程,對(duì)“競(jìng)爭(zhēng)-冒險(xiǎn)”引發(fā)故障已深信不疑了。Multisim7.0仿真再次展現(xiàn)了無可比擬的演示效果,如圖4所示。
至于EWB5.12仿真不出錯(cuò)的疑惑是比較容易消除的:由于EWB5.12版本較低,仿真深度不夠,它只仿真了理想情況,沒出現(xiàn)“競(jìng)爭(zhēng)-冒險(xiǎn)”也在情理之中了。
接下來要解決的問題是:為什么實(shí)際接線中,有的出現(xiàn)了“競(jìng)爭(zhēng)-冒險(xiǎn)”、有的又沒有呢?借著這個(gè)疑慮,我們把討論引入到更高的層次:如何消除“競(jìng)爭(zhēng)-冒險(xiǎn)”?
圖3 修改仿真庫元件74192參數(shù)
圖4 增加延遲環(huán)節(jié)克服“競(jìng)爭(zhēng)-冒險(xiǎn)”
“競(jìng)爭(zhēng)-冒險(xiǎn)”在實(shí)際電路中確確實(shí)實(shí)是可能存在的,發(fā)現(xiàn)了“競(jìng)爭(zhēng)-冒險(xiǎn)”我們就必須克服它。通常教材中介紹的消除“競(jìng)爭(zhēng)-冒險(xiǎn)”的方法是[2]:修改邏輯、引入選通信號(hào)或人為增加某個(gè)信號(hào)傳輸?shù)臅r(shí)間。其中,最后一種方案較為實(shí)用,在一些工作頻率不是非常高的場(chǎng)合,在可能出現(xiàn)“競(jìng)爭(zhēng)-冒險(xiǎn)”的部位串接RC慣性環(huán)節(jié)的方法就可解決。由于邏輯門的輸出均有內(nèi)阻,甚至R都可能不需要,直接簡(jiǎn)單并聯(lián)小電容C即可。
老師在打開的仿真設(shè)計(jì)中,帶領(lǐng)學(xué)生重新查看仿真元件庫中74192的原始數(shù)據(jù),讓大家看到74192芯片從輸入到輸出的信號(hào)傳遞時(shí)間是數(shù)十ns級(jí)的,由它們之間的差異而造成的“冒險(xiǎn)”脈沖更是ns級(jí)。簡(jiǎn)單串接一個(gè)RC,只要時(shí)間常數(shù)有幾十個(gè)ns,這個(gè)“毛刺”干擾就被消除了。圖5就是現(xiàn)場(chǎng)仿真演示的電路,圖5中的R1C1即是為克服所增加的。運(yùn)行結(jié)果表明,“競(jìng)爭(zhēng)-冒險(xiǎn)”被消除了。
根據(jù)采樣地點(diǎn)統(tǒng)計(jì),檢出率最高的為商鋪20.00%,剩余依次為:綜合超市11.44%、飲用水生產(chǎn)廠家8.00%、農(nóng)貿(mào)市場(chǎng)6.25%,學(xué)校集體食堂、街頭流動(dòng)攤點(diǎn)均未檢出致病菌。
現(xiàn)在就可以解決學(xué)生的最后一個(gè)疑問了。同學(xué)們搭接實(shí)際電路時(shí),之所以有的錯(cuò)、有的不錯(cuò),存在2種可能性:
1)不同公司、不同批次的產(chǎn)品,動(dòng)態(tài)特性存在差異,不出錯(cuò)的電路本身就沒出現(xiàn)“競(jìng)爭(zhēng)-冒險(xiǎn)”;
2)74192的傳輸延遲本身很短,其差別 (引起“競(jìng)爭(zhēng)-冒險(xiǎn)”的根源)更小,由于實(shí)際接線不可避免地存在分散電容,出現(xiàn)的“競(jìng)爭(zhēng)-冒險(xiǎn)”無意中被消除了。
那些出錯(cuò)的電路,所用的芯片的傳輸延遲差別較大,分散電容尚不足以克服其“毛刺”影響。只要再適當(dāng)增大RC環(huán)節(jié)的慣性效果,必定能消除干擾。
“競(jìng)爭(zhēng)-冒險(xiǎn)”是數(shù)電課堂教學(xué)中的一個(gè)難點(diǎn),在實(shí)際電路中又是常見、隱蔽、難處理的問題。把這個(gè)知識(shí)點(diǎn)講透,對(duì)深入理解數(shù)電的核心內(nèi)容無疑是大有好處的。除此之外,我們還可借題發(fā)揮,帶動(dòng)其它知識(shí)點(diǎn)的學(xué)習(xí)。
圖5 增加RC慣性環(huán)節(jié)克服“競(jìng)爭(zhēng)-冒險(xiǎn)”
通過設(shè)計(jì)“日期計(jì)數(shù)器”的實(shí)例,特別是走了一點(diǎn)彎路之后,再重新復(fù)習(xí)什么是競(jìng)爭(zhēng)、什么是由競(jìng)爭(zhēng)引發(fā)的冒險(xiǎn),學(xué)生的認(rèn)識(shí)肯定與以前大不相同了;有了這個(gè)基礎(chǔ),也完全理解引入“格雷碼”等的用意了。
在討論時(shí)序電路的“競(jìng)爭(zhēng)-冒險(xiǎn)”時(shí),數(shù)電的核心內(nèi)容應(yīng)該已大部講完。這時(shí),結(jié)合“競(jìng)爭(zhēng)-冒險(xiǎn)”的深入學(xué)習(xí),可以對(duì)數(shù)電的內(nèi)容在以下幾方面加深理解:
1)邏輯電路,特別是現(xiàn)代高速的邏輯電路,主流是同步方式。異步方式的電路由于速度慢、易出現(xiàn)“競(jìng)爭(zhēng)-冒險(xiǎn)”而較少采用[3]。
2)組合邏輯電路和時(shí)序邏輯電路都會(huì)出現(xiàn)“競(jìng)爭(zhēng)-冒險(xiǎn)”。在組合邏輯電路中,“競(jìng)爭(zhēng)-冒險(xiǎn)”引起的短時(shí)尖峰脈沖不影響其穩(wěn)態(tài)輸出,因而危害作用并不明顯。而同樣的尖峰脈沖在時(shí)序邏輯電路中,則可能被觸發(fā)器接收造成誤翻轉(zhuǎn),進(jìn)而完全改變時(shí)序電路的進(jìn)程,故需特別小心!
3)傳統(tǒng)的電路設(shè)計(jì)方式,在實(shí)際電路搭建出來之前,均無法獲得精確的延時(shí)特性,處理“競(jìng)爭(zhēng)-冒險(xiǎn)”等問題就顯得十分困難。而現(xiàn)代電子設(shè)計(jì),由于采用EDA技術(shù),可以在設(shè)計(jì)的不同階段,進(jìn)行全面精準(zhǔn)的測(cè)試與仿真,特別是包含了具體芯片特性參數(shù)的時(shí)序仿真,可以得到精準(zhǔn)的硬件延遲信息,為分析及處理“競(jìng)爭(zhēng)-冒險(xiǎn)”等問題提供極為便利的條件。EDA是電子設(shè)計(jì)發(fā)展的必然趨勢(shì)[4]。
在深入了解“競(jìng)爭(zhēng)-冒險(xiǎn)”的根源時(shí),必須確切知道所用芯片的參數(shù)指標(biāo),特別是平時(shí)不太注意的動(dòng)態(tài)參數(shù)。這就迫使我們查看權(quán)威的文獻(xiàn)資料。在我們的現(xiàn)場(chǎng)教學(xué)中,我們數(shù)次經(jīng)歷了這個(gè)過程,而這恰好是對(duì)學(xué)生查找資料能力的一個(gè)訓(xùn)練。在信息時(shí)代,每個(gè)大學(xué)生除應(yīng)學(xué)好各自專業(yè)知識(shí)外,還必須掌握應(yīng)用各種手段查閱相關(guān)文獻(xiàn)資料、獲取信息的能力。
在課堂上用計(jì)算機(jī)仿真輔助教學(xué),可以使課堂內(nèi)容變得豐富、精彩,老師可以帶領(lǐng)學(xué)生把原本在實(shí)驗(yàn)室也不易看清的東西生動(dòng)、形象地展現(xiàn)給大家,極大地提升了教學(xué)效果[5];由于Multisim等仿真軟件可以高度逼真地模仿出電路的實(shí)際運(yùn)行情況,且可隨意實(shí)時(shí)修改,其教學(xué)效果是任何常規(guī)的多媒體技術(shù)根本無法比擬的[6]。結(jié)合實(shí)例的深入剖析,可以溫故知新,綱舉目張,把前后各個(gè)知識(shí)點(diǎn)串通起來學(xué)習(xí),可以起到事半功倍的成效。在后續(xù)課程的學(xué)習(xí)以及課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)中,但凡牽涉到此類的問題,同學(xué)們就可駕輕就熟、應(yīng)對(duì)自如了。
[1]吳學(xué)軍,張靜.EDA仿真設(shè)計(jì)在《數(shù)字電子技術(shù)基礎(chǔ)》課程教學(xué)中的應(yīng)用[J].湖北文理學(xué)院學(xué)報(bào),2013,34(11):78-81.
[2]閻石.?dāng)?shù)字電子技術(shù)基礎(chǔ)[M].5版.北京:高等教育出版社,2006:204-205.
[3]潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程[M].5版.北京:科學(xué)出版社,2013:10-11.
[4]潘明,潘松.?dāng)?shù)字電子技術(shù)基礎(chǔ)[M].北京:科學(xué)出版社,2008:180-192.
[5]王正勇,陳學(xué)昌.依托EDA技術(shù)促進(jìn)電子信息類專業(yè)教學(xué)模式改革的探索[J].工業(yè)和信息化教育,2014(7):51-53.
[6]王芳.淺談數(shù)字電子技術(shù)課程的教學(xué)改革方法[J].黑龍江教育學(xué)院學(xué)報(bào),2014(33):87-88.