張玲 姚莉
摘要:針對數(shù)字邏輯電路實踐教學中存在的問題,提出將集成數(shù)字芯片的驅(qū)動編寫融入實踐教學,對數(shù)字電路課堂教學涉及到的集成芯片,利用C語言實現(xiàn)驅(qū)動對其進行控制,并利用MCU芯片進行仿真。不僅提高了學生的學習興趣和編程能力,而且有效改善了傳統(tǒng)單純驗證性實驗的教學效果,提高了學生對集成數(shù)字芯片的應(yīng)用能力,為后續(xù)硬件相關(guān)課程的學習提供基礎(chǔ)和保障。學生的反饋和階段考核結(jié)果表明,該實踐方式能有效地提高數(shù)字邏輯電路的教學效果。
關(guān)鍵詞:數(shù)字邏輯電路;芯片驅(qū)動編寫;實踐教學
一、引言
數(shù)字邏輯電路是計算機專業(yè)的一門基礎(chǔ)課,其教學目標包括數(shù)字信號的概念,組合邏輯電路和時序邏輯電路,常用的數(shù)字集成芯片,數(shù)字電路設(shè)計流程及應(yīng)用。傳統(tǒng)的數(shù)字邏輯電路實踐教學一般采用傳統(tǒng)的驗證性實驗[1-2]。為了提高學生的學習興趣和動手能力,基于數(shù)字模塊的綜合設(shè)計[3]將抽象的數(shù)字邏輯模塊與具體應(yīng)用聯(lián)系起來,對學過的電路模塊通過仿真實現(xiàn)出來?;谟布枋稣Z言的數(shù)字集成電路前端設(shè)計法[4-5]將硬件描述語言引入進來,用硬件語言行為描述法描述。這些實踐教學方法取得了一定的成效,一定程度上提高了教學效果。但針對計算機專業(yè)的同學來說,更注重的是數(shù)字集成芯片將來的應(yīng)用,特別是數(shù)字集成電路驅(qū)動的編寫和應(yīng)用,如何將數(shù)字邏輯電路驅(qū)動的編寫嵌入到數(shù)字邏輯電路時間教學中,并通過時序控制使得數(shù)字集成芯片工作起來是數(shù)字邏輯電路教學的一個重要任務(wù)。
本文提出以驅(qū)動編寫為導向的數(shù)字邏輯電路實踐教學,針對數(shù)字邏輯電路常用組合邏輯模塊,如編碼器和譯碼器模塊、數(shù)據(jù)選擇和分配器模塊、串并并串轉(zhuǎn)換等模塊進行分析,通過微控制單元(MCU)對其時序進行控制,實現(xiàn)集成數(shù)字芯片的驅(qū)動;針對常用時序邏輯模塊,如計數(shù)器模塊,寄存器模塊,通過MCU收發(fā)信號,實現(xiàn)相關(guān)集成數(shù)字模塊的驅(qū)動。這種實踐教學方式不僅提高了學生的學習興趣,加深了對數(shù)字邏輯模塊的理解,掌握相關(guān)硬件編程方法,而且對嵌入式開發(fā)過程有了一定的了解,為后續(xù)學習打下基礎(chǔ)。教學結(jié)果表明以驅(qū)動為導向的實踐教學較大程度的提高了數(shù)字邏輯電路的教學效果。
二、以驅(qū)動編寫為導向的數(shù)字集成電路實踐教學的教學設(shè)計
針對數(shù)字邏輯電路涉及的基本教學模塊,根據(jù)數(shù)字邏輯電路教學的經(jīng)驗,在教學中設(shè)計了三個部分的實踐教學:針對組合邏輯電路部分的實踐,針對時序邏輯電路部分的實踐安排和綜合實踐教學安排。
針對組合邏輯電路涉及的數(shù)字集成電路芯片,設(shè)計了以下相關(guān)模塊:集成雙全加器74LS183/C661的連線及驅(qū)動、4位集成數(shù)值比較器74LS85/C663的連線及驅(qū)動、8線-3線優(yōu)先編碼器74LS148、集成3-8譯碼器74LS138、電平驅(qū)動顯示譯碼器74LS48、集成4選1選擇器74LS151、1路4路數(shù)據(jù)分配器74LS139。
針對時序邏輯電路涉及的數(shù)字集成電路芯片,設(shè)計了以下相關(guān)模塊:集成4位二進制同步加法計數(shù)器74161的連線方式及驅(qū)動實現(xiàn)、集成十進制同步加法計數(shù)器74160、8位單向集成移位寄存器74164、4位雙向移位寄存器74LS194的連線及驅(qū)動實現(xiàn)、串并轉(zhuǎn)換芯片74HC595和并串轉(zhuǎn)換芯片74HC165的驅(qū)動的實現(xiàn)。
綜合實踐安排包括常用組合和時序邏輯模塊組成的綜合系統(tǒng),本部分安排了兩個小系統(tǒng)的實現(xiàn):數(shù)字時鐘的設(shè)計和實現(xiàn)和六路搶答器的設(shè)計和實現(xiàn)。
數(shù)字時鐘利用基本數(shù)字電路制作小時電子鐘,顯示時分秒,其電路包括24進制計數(shù)器,60進制計數(shù)器,譯碼電路和顯示電路模塊。
六路搶答器利用數(shù)字電路設(shè)計搶答器,它允許8路參加,用LED小燈顯示搶答結(jié)果,利用清除鍵對LED小燈滅燈。此電路包括門控電路、開關(guān)控制電路、數(shù)據(jù)鎖存電路、8-3優(yōu)先編碼模塊,案件輸入模塊、顯示模塊。
本實踐教學穿插在理論課上和課后進行,在學習每部分數(shù)字模塊基礎(chǔ)上,對相關(guān)模塊的應(yīng)用環(huán)境和作用作以介紹,給出相應(yīng)的原理圖及時序控制原理介紹。這部分的教學要求學生進行預(yù)習,在時間教學課堂前,以報告形式完成硬件電路設(shè)計及相關(guān)關(guān)鍵代碼設(shè)計,循序漸進,在實踐教學時進行調(diào)試,并利用互動教學來驗證、鞏固教學內(nèi)容。
三、數(shù)字集成電路芯片驅(qū)動編寫--以串并轉(zhuǎn)換集成芯片74HC595為例
數(shù)字集成電路芯片驅(qū)動編寫的實質(zhì)即對該芯片工作時序的控制。本小節(jié)為串并74HC595并串集成芯片為例,說明集成電路芯片驅(qū)動的編寫方法。
74HC595是將串行信號轉(zhuǎn)成并行數(shù)據(jù)信號的數(shù)字集成芯片,為了實現(xiàn)串并轉(zhuǎn)換,它具有一個串行輸入口,通過內(nèi)部8位移位寄存器經(jīng)過8個時鐘周期將8個1位的串行信號轉(zhuǎn)換成一個8位的并行信號,通過其內(nèi)部8位緩沖寄存器及一個具有三態(tài)輸出的移位寄存器將并行數(shù)據(jù)送出。為了讓74HC595實現(xiàn)串并轉(zhuǎn)換,必須根據(jù)其工作時序給出正確的控制信號。其工作時序圖在圖1中給出,該結(jié)構(gòu)串行數(shù)據(jù)的輸入和并行數(shù)據(jù)的輸出分別用不同的時鐘控制,分別為SCK和LCK,[Q0→Q7]并行輸出端,[Q7']串行數(shù)據(jù)輸出。
如時序圖所示,其基本時序運行如下:在輸入時鐘SCK的上升沿控制下,8位串行數(shù)據(jù)從SDI送入,8個周期后,該8位數(shù)據(jù)被送入到74HC595的緩沖區(qū);接著在輸出時鐘LCK的控制下,將8位并行數(shù)據(jù)從輸出端Q0-Q7送出。并行數(shù)據(jù)輸出在時鐘信號LCK控制下,一個時鐘上升沿便可完成輸出。8位串行數(shù)據(jù)num1轉(zhuǎn)成并行數(shù)據(jù)的關(guān)鍵時序代碼為:for (j=0;j<8;j++) {CY=num1&0x01;num1=num1>>1;ds=CY;SCK=1; SCK=0; }
四、小結(jié)
本文提出以驅(qū)動編寫為導向的數(shù)字電路的實踐教學方法,并應(yīng)用到數(shù)字電路實踐教學中,學生反映較好。以驅(qū)動編寫為導向進行數(shù)字電路的實踐教學將抽象概念具體化,使學生認識到數(shù)字模塊的作用和其應(yīng)用場合,并利用proteus仿真軟件進行仿真,增加了學生的學生興趣。通過綜合系統(tǒng)的實現(xiàn),提高了學生的動手能力,并提高了學生利用C語言進行硬件編程的編程能力,為后續(xù)相關(guān)硬件課程的學習及從事數(shù)字集成電路的工作打下基礎(chǔ)。
參考文獻
[1]王爾中,龐濤,李鵬,鄭丹,Multisim和Proteus仿真在數(shù)字電路課程教學中的應(yīng)用,實驗技術(shù)與管理,30(3):78-81.2013.
[2]唐凱,吳偉力,集成電路設(shè)計課程實驗內(nèi)容的探索,集美大學學報, 2013,14(3):121-124.
[3]毛松,EDA實驗在數(shù)字集成電路設(shè)計課程中的應(yīng)用,教育論壇,2012:159-160.
[4]陳海進,硬件描述語言與數(shù)字集成電路課程教學,2003,2(3):60-62.
[5]夏少波,榮麗麗,陳兆慶,數(shù)字集成電路試驗教學探討,山東電大學報,2008,4:39-40.
湖北理工學院教研項目:2014c25。
作者簡介:張玲,女,(1980-),講師,湖北理工學院計算機學院。endprint