牛軍浩,胡 聰,殷賢華
(桂林電子科技大學(xué)電子工程與自動(dòng)化學(xué)院,廣西桂林541004)
EDA技術(shù)融合多學(xué)科于一體,又滲透于各學(xué)科之中,打破了軟件和硬件的壁壘,代表了電子設(shè)計(jì)技術(shù)的發(fā)展方向,在各個(gè)領(lǐng)域得到廣泛應(yīng)用[1,2]。
在高校電子信息類專業(yè)的教學(xué)中,數(shù)字電路設(shè)計(jì)是整個(gè)教學(xué)的核心主干課程之一。隨著半導(dǎo)體生產(chǎn)工藝的提高,以CPLD和FPGA為主導(dǎo)的可編程邏輯器件規(guī)模和性能都在不斷提高,知識(shí)產(chǎn)權(quán)核IP、片上系統(tǒng)SOC和片上網(wǎng)絡(luò)NOC等新概念及新的分析方法不斷涌現(xiàn),使高校電子信息類專業(yè)的數(shù)字電路課程的教學(xué)及實(shí)驗(yàn)面臨著新的挑戰(zhàn)。
改革和整合現(xiàn)存的數(shù)字電路教學(xué)內(nèi)容,將新技術(shù)、新方法引入EDA技術(shù)課程的教學(xué)中,形成新的不同層次的課程教學(xué)體系,這對(duì)于培養(yǎng)學(xué)生的電子系統(tǒng)設(shè)計(jì)能力和適應(yīng)各學(xué)科領(lǐng)域?qū)Ω邔哟坞娐吩O(shè)計(jì)人員需求是十分必要的[3]。
本文以ASIC為設(shè)計(jì)目標(biāo),以“數(shù)字邏輯”、“模擬電子技術(shù)”和“單片機(jī)原理及應(yīng)用”等主干課程為基礎(chǔ),研究并分析了EDA技術(shù)相關(guān)知識(shí),將課程教學(xué)內(nèi)容按設(shè)計(jì)難度劃分為三個(gè)層次:基礎(chǔ)層、應(yīng)用層和系統(tǒng)層。其結(jié)構(gòu)如圖1所示。
圖1 EDA教學(xué)內(nèi)容分層結(jié)構(gòu)
在所分三層結(jié)構(gòu)中,基礎(chǔ)層為EDA技術(shù)基礎(chǔ)知識(shí)的講授,首先是EDA發(fā)展過程及應(yīng)用領(lǐng)域,然后講述CPLD和FPGA結(jié)構(gòu)、原理和工藝等相關(guān)技術(shù)。具有代表性的有Altera公司的MAX7000系列CPLD及CycloneII系列的FPGA。我們結(jié)合EDA設(shè)計(jì)實(shí)例,如多路選擇器、計(jì)數(shù)器、譯碼器和全加器等,進(jìn)行VHDL語言程序的設(shè)計(jì),使學(xué)生通過基礎(chǔ)知識(shí)的學(xué)習(xí)并完成推薦的實(shí)驗(yàn)后,能初步了解和掌握EDA的基本知識(shí)及VHDL語言的基本構(gòu)成和設(shè)計(jì)方法。
在應(yīng)用層中,我們結(jié)合“電子測量”、“編碼技術(shù)”和“智能技術(shù)”等專業(yè)課程內(nèi)容以及各種電子大賽題目,采用EDA技術(shù),設(shè)計(jì)面向應(yīng)用的電子系統(tǒng),如高速A/D采集控制器、點(diǎn)陣液晶控制器、任意波形發(fā)生器和頻率計(jì)等,使學(xué)生能夠根據(jù)具體內(nèi)容,正確理解設(shè)計(jì)要求。他們可合理劃分功能組成,并通過層次設(shè)計(jì)方法,采用IP核和宏功能模塊等技術(shù)進(jìn)行面向應(yīng)用的電子系統(tǒng)設(shè)計(jì)。
在系統(tǒng)層中,我們結(jié)合“單片機(jī)原理”、“DSP原理及應(yīng)用”、“總線技術(shù)”和“嵌入式系統(tǒng)”等專業(yè)課程內(nèi)容,介紹SOC技術(shù)在系統(tǒng)級(jí)專用集成電路設(shè)計(jì)中的應(yīng)用,如Altera公司的片上可編程系統(tǒng)SOPC是一種靈活高效的SOC解決方案。該系統(tǒng)將處理器、存儲(chǔ)器、I/O口和LVDS等系統(tǒng)設(shè)計(jì)需要的功能模塊集成到一個(gè)PLD器件上,構(gòu)建一個(gè)可編程的片上系統(tǒng)。通過系統(tǒng)級(jí)學(xué)習(xí)及設(shè)計(jì),學(xué)生可以掌握基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)方法。
在傳統(tǒng)的EDA實(shí)驗(yàn)教學(xué)中,大都安排了基礎(chǔ)類和應(yīng)用類電路實(shí)驗(yàn)?;A(chǔ)類實(shí)驗(yàn)有譯碼器、計(jì)數(shù)器和邏輯運(yùn)算等,而設(shè)計(jì)類實(shí)驗(yàn)主要有數(shù)字秒表設(shè)計(jì)、頻率計(jì)設(shè)計(jì)和序列信號(hào)發(fā)生器設(shè)計(jì)等。對(duì)于完整的EDA技術(shù)層次來說,缺少系統(tǒng)級(jí)實(shí)驗(yàn)內(nèi)容,部分院校使用的實(shí)驗(yàn)系統(tǒng)采用的FPGA型號(hào)規(guī)模較小、資源不充足,無法滿足SOC的實(shí)驗(yàn)環(huán)境要求。
為了使學(xué)生掌握更加完整全面的EDA技術(shù),應(yīng)加強(qiáng)EDA教學(xué)實(shí)驗(yàn)環(huán)境建設(shè),升級(jí)實(shí)驗(yàn)系統(tǒng)核心部件,并在原來實(shí)驗(yàn)內(nèi)容基礎(chǔ)上開設(shè)系統(tǒng)級(jí)實(shí)驗(yàn),如采用NIOS嵌入式處理器、Avalon總線以及SOPC Builder軟件工具,實(shí)現(xiàn)數(shù)據(jù)采集、運(yùn)算和顯示等功能,設(shè)計(jì)一個(gè)完整的嵌入式系統(tǒng)。
1)EDA技術(shù)在基礎(chǔ)類課程中的應(yīng)用
在傳統(tǒng)的“數(shù)字電路技術(shù)”教學(xué)中,理論知識(shí)以基本門電路進(jìn)行講解;然后在實(shí)驗(yàn)室環(huán)境下,通過跳線和插座等方式,將各種74XX系列器件組合起來,實(shí)現(xiàn)要求的電路功能;使用LED、示波器和頻率計(jì)等對(duì)電路功能進(jìn)行驗(yàn)證;最后,在課程設(shè)計(jì)時(shí),使用Protel等電子電路CAD工具畫原理圖、布PCB板,通過制版和焊接元器件,實(shí)現(xiàn)完整的設(shè)計(jì)任務(wù)。
EDA技術(shù)引入以后,實(shí)驗(yàn)室環(huán)境可通過EDA工具來代替,如Altera的QuartusII和Xilinx的ISE集成開發(fā)環(huán)境[4]。借助EDA工具可以在計(jì)算機(jī)上快速設(shè)計(jì)數(shù)字電路系統(tǒng),并及時(shí)進(jìn)行仿真驗(yàn)證,原理圖的輸入方式更加符合數(shù)字電路的授課方法,更容易理解和閱讀;實(shí)驗(yàn)者借助仿真工具,在沒有目標(biāo)芯片、示波器和頻率計(jì)等任何硬件環(huán)境的情況下,僅借助計(jì)算機(jī)和EDA軟件即可完成電路的功能仿真和時(shí)序仿真。
2)EDA技術(shù)在專業(yè)類教學(xué)課程中的應(yīng)用
“智能儀器”是電子信息類專業(yè)的專業(yè)必修課之一,講述采用主機(jī)電路、模擬量輸入輸出通道、人機(jī)接口和通信接口等設(shè)計(jì)具有人機(jī)交互能力的智能化儀器。傳統(tǒng)的主機(jī)電路主要是采用單片機(jī)作為主機(jī)電路,如C51、PIC和AVR等。
而在以CPLD/FPGA為代表的EDA硬件芯片上,可以通過IP核及宏功能調(diào)用方法,快速方便的實(shí)現(xiàn)單片機(jī)的功能,管腳、外部資源可以隨意定義和刪減,極大的方便了外部電路的連接和擴(kuò)展。另外,采用EDA技術(shù)作為智能儀器的輔助設(shè)計(jì),可以實(shí)現(xiàn)更加高速、準(zhǔn)確的控制和處理能力。
3)EDA技術(shù)在系統(tǒng)設(shè)計(jì)課程中的應(yīng)用目前,在高校課程設(shè)置中的嵌入式系統(tǒng)類課程,主要是基于ARM和DSP等架構(gòu),操作系統(tǒng)包括Linux、μCOS和WinCE等。
以上以控制器為載體的嵌入式系統(tǒng)有個(gè)共同的特點(diǎn),軟件系統(tǒng)可通過移植操作系統(tǒng)和相關(guān)程序進(jìn)行設(shè)計(jì),具有可裁剪的特點(diǎn)。但是,硬件系統(tǒng)卻是需要更加具體需要進(jìn)行不同的設(shè)計(jì),具有獨(dú)特性。而以FPGA為載體的片上可編程系統(tǒng)同時(shí)具有軟、硬件可編程的能力,除了潛入的控制器可按要求進(jìn)行裁剪擴(kuò)充外,F(xiàn)PGA的可編程資源依然可以根據(jù)用戶需要進(jìn)行設(shè)計(jì),從而在片上實(shí)現(xiàn)軟硬件同時(shí)可編程的能力,實(shí)現(xiàn)不同的系統(tǒng)功能。它提高了FPGA在不同應(yīng)用場合的適應(yīng)能力,是在數(shù)字電路系統(tǒng)設(shè)計(jì)中理想的嵌入式系統(tǒng)方案。
4)EDA技術(shù)在實(shí)踐課程中的應(yīng)用
在課程設(shè)計(jì)和畢業(yè)設(shè)計(jì)中,學(xué)生可綜合運(yùn)用所學(xué)的數(shù)字電路技術(shù)、單片機(jī)技術(shù)、智能儀器技術(shù)和嵌入式系統(tǒng)原理等知識(shí),采用EDA的PLD器件作為控制器、譯碼器和數(shù)字接口電路等,在更小的面積上,實(shí)現(xiàn)功能更多、速度更快和功耗更低的系統(tǒng)設(shè)計(jì)。
EDA技術(shù)在高校教學(xué)中的正確分層應(yīng)用,可以為數(shù)字電路技術(shù)和數(shù)字信號(hào)處理等課程提高開發(fā)工具和手段,又可以在智能儀表和自動(dòng)控制等課程中作為控制器進(jìn)行使用,既減少了原來在面包板上組構(gòu)電路所造成的時(shí)間消耗,又為學(xué)生的設(shè)計(jì)創(chuàng)新創(chuàng)造了條件。通過分層教育模式在EDA教學(xué)與實(shí)踐中的應(yīng)用,在我校電子信息類專業(yè)學(xué)生創(chuàng)新實(shí)踐能力培養(yǎng)上已初見成效。
[1] 邱軍興,郭東道.EDA技術(shù)在電路設(shè)計(jì)中的地位和作用[J] .西安:西安文理學(xué)院學(xué)報(bào),2005,8(1)
[2] 潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程(第3版)[M] .北京:科學(xué)出版社,2007.08
[3] 朱正偉,周炯如.EDA技術(shù)在硬件課程體系教學(xué)改革中的應(yīng)用[J] .南京:電氣電子教學(xué)學(xué)報(bào),2010,28(5)
[4] 蔡春曉,張國慶.EDA教學(xué)在數(shù)字電路實(shí)驗(yàn)中的實(shí)踐與探索[J] .南寧:高教論壇,2010,(11)