包秀榮
(內(nèi)蒙古師范大學 物理與電子信息學院,內(nèi)蒙古 呼和浩特 010022)
《數(shù)字電路》是高等院校電子信息類專業(yè)的重要專業(yè)基礎(chǔ)課,其課程設(shè)計是實踐教學環(huán)節(jié)的重要組成部分,它給學生提供了理論聯(lián)系實際、加深認識、開拓思維的機會。隨著計算機技術(shù)和電子技術(shù)的不斷發(fā)展,傳統(tǒng)的數(shù)字電路課程設(shè)計方式在很多方面落后于現(xiàn)代教育形式的發(fā)展,成為現(xiàn)代化教育和培養(yǎng)創(chuàng)新人才的阻力。進入21世紀后,EDA技術(shù)得到了長足的發(fā)展,在數(shù)字電路課程設(shè)計中引入EDA技術(shù)的新教學模式成為必然趨勢。本文結(jié)合實際教學工作,舉例闡述了基于EDA技術(shù)的數(shù)字電路課程設(shè)計的實現(xiàn)方法,實踐證明其對提高課程設(shè)計的教學質(zhì)量和培養(yǎng)創(chuàng)新型人才都有重要作用。
數(shù)字電路課程設(shè)計中要求學生運用電子技術(shù)課程中有關(guān)的理論知識和實驗方法完成一些綜合性較強的設(shè)計課題。目前在數(shù)字電路課程設(shè)計教學中,有些院校仍然采用74系列固定功能標準芯片來實現(xiàn)設(shè)計功能。在了解課題原理和熟悉標準芯片功能的基礎(chǔ)上,“自底而上”地設(shè)計數(shù)字系統(tǒng)。當設(shè)計的數(shù)字電路系統(tǒng)比較復雜,需要多個集成芯片和大量連線時,就增加了設(shè)計電路板的難度和故障調(diào)試難度,延長設(shè)計周期,降低了學生的學習興趣,同時.常用中小規(guī)模集成芯片的大量重復使用也大大增加了設(shè)計成本。特別是隨著學生數(shù)量的劇增,由于教學經(jīng)費的原因而無法提供足量的所需芯片,再加上實驗場地和實驗時間的制約,以及輔導教師的缺少等因素,使得課程設(shè)計題目受限制,設(shè)計方案雷同,缺少個性,設(shè)計過程枯燥,學生的綜合能力和創(chuàng)新能力的培養(yǎng)嚴重受到阻力,課程設(shè)計的教學目標不能很好的實現(xiàn)。因此在數(shù)字電路課程設(shè)計中引入EDA技術(shù),改革傳統(tǒng)的課程設(shè)計方法已經(jīng)成為一種趨勢。IspLever是Lattice公司最新推出的一套EDA軟件。設(shè)計輸入可采用原理圖、硬件描述語言、混合輸入三種方式,能對所設(shè)計的數(shù)字電子系統(tǒng)進行功能仿真和時序仿真。編譯器是此軟件的核心,能進行邏輯優(yōu)化,將邏輯映射到器件中去,自動完成布局與布線,并生成編程所需要的熔絲圖文件。軟件中的Constraints Editor工具允許經(jīng)由一個圖形用戶接口選擇I/O設(shè)置和引腳分配。軟件包含Synolicity公司的Synplify綜合工具和Lattice的ispVM器件編程工具。IspLever軟件提供給開發(fā)者一個簡單而有力的工具,其界面友好,集成化程度高,是最易學、最易用的可編程邏輯器件開發(fā)軟件。利用它所配備的編輯、編譯、仿真、綜合、芯片編程等功能,可以完成數(shù)字電路從設(shè)計、檢查、模擬到下載的全過程。因此特別適合作為數(shù)字電路系統(tǒng)的設(shè)計和開發(fā)軟件。在系統(tǒng)可編程邏輯器件(In-System Programmable PLD,ISP-PLD)是90年代推出的新型的可編程邏輯器件,其最大特點是編程時既不需要使用編程器,也不需要將它從所在的系統(tǒng)板上取下,可以直接焊接在印刷電路板上,然后通過計算機的并口和專用的編程電纜對焊接在電路板上的ISP器件進行多次編程,對其邏輯功能進行修改,從而加快了數(shù)字系統(tǒng)的調(diào)試過程,提高了可靠性并避免對可編程器件造成機械損壞。PLD具有可重復使用、低投入、高性能、高密度、開發(fā)周期短等諸多優(yōu)點,不需要任何投片費用。
下面采用“自頂而下”層次化的設(shè)計方法,以DJ-E801型實驗開發(fā)系統(tǒng)和IspLever3.0EDA開發(fā)軟件設(shè)計時鐘為例,介紹基于EDA技術(shù)的數(shù)字電路系統(tǒng)設(shè)計的方法。運用此種方法進行課程設(shè)計時,需要先學習IspLever3.0軟件和Schematic的編程方法,掌握DJ-E801型實驗開發(fā)系統(tǒng)的使用。
1.設(shè)計要求。設(shè)計一個多功能數(shù)字鐘。系統(tǒng)能進行正常的時、分、秒計時功能,分別由6個數(shù)碼管顯示24小時、60分鐘、60秒鐘的計數(shù)器顯示;能利用實驗系統(tǒng)上的按鍵實現(xiàn)“校時”“校分”功能:(1)按下“SA”鍵時,計時器迅速遞增,并按24小時循環(huán),計滿23小時后再回00。(2)按下“SB”鍵時,計分器迅速遞增,并按59分鐘循環(huán),計滿59分鐘后再回00,但不向“時”進位。(3)按下“SC”鍵時,秒清零。(4)要求按下“SA”、“SB”或“SC”均不產(chǎn)生數(shù)字跳變(“SA″、“SB”、“SC”按鍵是有抖動的,必須對其消抖動處理);能利用揚聲器做整點報時:(1)當計時到達59’50”時開始報時,在59’50”、52”、54”、56”、58”鳴叫,鳴叫聲頻可為lKHz;(2)到達59’60”時為最后一聲整點報時,整點報時是頻率可定為500Hz。
2.設(shè)計思路。本設(shè)計中采用“自頂向下”的層次化、模塊化的設(shè)計思路,將系統(tǒng)分為cdu24、cdu60、cdu60s、control等四個模塊,再將其在頂層連結(jié)起來,完成系統(tǒng)功能。
下面介紹各個模塊所完成的功能。cdu24在clk1的激勵下有24進制計數(shù)功能,sa=1時在clk2的激勵下快速24進制計數(shù),能完成校時功能。cdu60在clk1的激勵下有60進制計數(shù)功能,ss=1時在clk2的激勵下快速60進制計數(shù),但無進位,完成校分功能。cdu60s在clk1的激勵下有60進制計數(shù)功能,clr=1時秒清零即可。Control主要完成報警功能。
3.功能仿真。運行ispLEVER軟件,建立一個新工程,然后在該工程下新建schematic文件,輸入原理圖以clk.sch文件保存,設(shè)為頂層,進行編譯,對照設(shè)計要求查看仿真結(jié)果。電路仿真結(jié)果正確后,其硬件的實現(xiàn)是Lattice公司的CPLD芯片ispLSI1032E-70LJ-84下載實驗板。設(shè)置芯片屬性及引腳分配,執(zhí)行編譯綜合后產(chǎn)生下載文件,將其在線下載到下載板,經(jīng)過硬件驗證完全符合設(shè)計要求。
在上面的例子中,若采用傳統(tǒng)的74系列中小規(guī)模集成器件來實現(xiàn),電路結(jié)構(gòu)復雜很多,難以調(diào)試,幾乎是“紙上談兵”的設(shè)計,設(shè)計過程枯燥乏味?;贓DA的數(shù)字電路設(shè)計采用“自頂向下”的設(shè)計方法,具有便于層次式、結(jié)構(gòu)化的設(shè)計思想,設(shè)計周期短,可以對每一層進行仿真驗證,設(shè)計電路錯誤可以在早期發(fā)現(xiàn),提高了設(shè)計的正確性,邏輯綜合之前的設(shè)計工作與具體的實現(xiàn)工藝器件等無關(guān)。因此,設(shè)計的可移植性好。為了提高數(shù)字電路教學的質(zhì)量,培養(yǎng)能適應電子技術(shù)發(fā)展趨勢的創(chuàng)新人才,將EDA技術(shù)引入數(shù)字電路課程設(shè)計中,不僅可以很好地鍛煉學生的綜合設(shè)計開發(fā)能力和動手能力,激發(fā)他們的學習興趣,還可以大大節(jié)約數(shù)字電路課程設(shè)計實驗的成本,提高設(shè)計效率。
[1]林敏,方穎立.VHDL數(shù)字系統(tǒng)設(shè)計與高層次綜合[M].北京:電子工業(yè)出版社,2002.
[2]黃招娣,黃德昌.數(shù)字邏輯設(shè)計與EDA仿真實驗教學的實踐與探索[J].華東交通大學學報,2007,24(12).
[3]郭永貞.數(shù)字電路實驗與EDA技術(shù)[M].南京:東南大學出版社,2010.