姜麗飛
(唐山師范學(xué)院 物理系,河北 唐山 063000)
EDA技術(shù)在數(shù)字系統(tǒng)設(shè)計(jì)中的應(yīng)用
姜麗飛
(唐山師范學(xué)院 物理系,河北 唐山 063000)
在分析傳統(tǒng)數(shù)字系統(tǒng)設(shè)計(jì)特點(diǎn)的基礎(chǔ)上,將 EDA技術(shù)引入數(shù)字電子系統(tǒng)的設(shè)計(jì)中。以基于可編程的FPGA、VHDL和MAX+PlusII軟件平臺(tái)的彩燈設(shè)計(jì)為例,討論了EDA技術(shù)在數(shù)字系統(tǒng)設(shè)計(jì)中的應(yīng)用,體現(xiàn)了EDA技術(shù)作為現(xiàn)代電子系統(tǒng)設(shè)計(jì)的主導(dǎo)技術(shù),自動(dòng)化程度高,開發(fā)周期短等突出優(yōu)點(diǎn)。
EDA技術(shù);數(shù)字系統(tǒng)設(shè)計(jì);FPGA;MAX+pluaII;VHDL
傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計(jì)中,一般先按電子系統(tǒng)的具體功能要求進(jìn)行功能劃分,然后對(duì)每個(gè)子模塊列出真值表,進(jìn)行化簡(jiǎn)之后寫出布爾表達(dá)式,畫出相應(yīng)的邏輯線路圖,再據(jù)此選擇元器件,設(shè)計(jì)電路板,最后進(jìn)行實(shí)測(cè)和調(diào)試[1]。其中,手工設(shè)計(jì)占了很大比例,這要求設(shè)計(jì)者要具備較高的設(shè)計(jì)經(jīng)驗(yàn),如果某一過(guò)程出現(xiàn)錯(cuò)誤,查找和修改十分不便,對(duì)于集成電路設(shè)計(jì)而言,設(shè)計(jì)實(shí)現(xiàn)過(guò)程與具體生產(chǎn)工藝直接相關(guān),可移植性差,對(duì)于復(fù)雜電路的測(cè)試十分困難。而基于 EDA的現(xiàn)代數(shù)字系統(tǒng)的設(shè)計(jì)方法由傳統(tǒng)的“自底向上”的設(shè)計(jì)方法轉(zhuǎn)變?yōu)橐环N新的“自頂向下”的設(shè)計(jì)方法,使系統(tǒng)設(shè)計(jì)自動(dòng)化,具有較好的可移植性,縮短開發(fā)周期,增強(qiáng)產(chǎn)品的競(jìng)爭(zhēng)力[2]。
EDA技術(shù)是以計(jì)算機(jī)為工作平臺(tái),以硬件描述語(yǔ)言(VHDL)為設(shè)計(jì)語(yǔ)言,以可編程器件(CPLD/FPGA)為實(shí)驗(yàn)載體,以ASIC/SOC芯片為目標(biāo)器件,進(jìn)行必要的元件建模和系統(tǒng)仿真的電子產(chǎn)品自動(dòng)化設(shè)計(jì)過(guò)程。作為現(xiàn)代電子系統(tǒng)設(shè)計(jì)的主導(dǎo)技術(shù),EDA具有以下特征:
(1)用軟件設(shè)計(jì)的方法進(jìn)行硬件設(shè)計(jì):硬件系統(tǒng)的轉(zhuǎn)換由相應(yīng)的開發(fā)軟件自動(dòng)完成,設(shè)計(jì)輸入可以是原理圖或VHDL語(yǔ)言。設(shè)計(jì)的整個(gè)過(guò)程幾乎不涉及任何硬件,可操作性、產(chǎn)品互換性強(qiáng)。
(2)基于芯片的設(shè)計(jì)方法:EDA設(shè)計(jì)方法又稱為基于芯片的設(shè)計(jì)方法,集成化程度更高,可實(shí)現(xiàn)片上系統(tǒng)集成,進(jìn)行更加復(fù)雜基于EDA技術(shù)的數(shù)字電路設(shè)計(jì)的電路芯片化設(shè)計(jì)和專用集成電路設(shè)計(jì),使產(chǎn)品體積小、功耗低、可靠性高。
(3)自動(dòng)化程度高:EDA技術(shù)根據(jù)設(shè)計(jì)輸入文件,在計(jì)算機(jī)上自動(dòng)完成電子產(chǎn)品從電路功能仿真、性能分析、優(yōu)化設(shè)計(jì)到結(jié)果測(cè)試的全過(guò)程,自動(dòng)生成目標(biāo)系統(tǒng)。這使設(shè)計(jì)人員不必學(xué)習(xí)許多深入的專業(yè)知識(shí),也可免除許多推導(dǎo)運(yùn)算即可獲得優(yōu)化的設(shè)計(jì)成果,設(shè)計(jì)自動(dòng)化程度高,減輕了設(shè)計(jì)人員的工作量,開發(fā)效率高。
(4)自動(dòng)進(jìn)行產(chǎn)品直面設(shè)計(jì):EDA技術(shù)根據(jù)設(shè)計(jì)輸入文件(HDL或電路原理圖),自動(dòng)地進(jìn)行邏輯編譯、化簡(jiǎn)、綜合、仿真、優(yōu)化、布局、布線、適配以及下載編程以生成目標(biāo)系統(tǒng),即計(jì)算機(jī)上自動(dòng)處理完成電子產(chǎn)品從電路功能仿真、性能分析、優(yōu)化設(shè)計(jì)到結(jié)果測(cè)試的全過(guò)程。
在設(shè)計(jì)方法上,EDA給電子電路設(shè)計(jì)領(lǐng)域帶來(lái)了根本性的變革,將傳統(tǒng)的“電路設(shè)計(jì)硬件-搭試-調(diào)試-焊接”模式轉(zhuǎn)變?yōu)樵谟?jì)算機(jī)上自動(dòng)完成,利用EDA工具,電子設(shè)計(jì)師從概念、算法和協(xié)議開始設(shè)計(jì)電子系統(tǒng),從電路設(shè)計(jì)、性能分析直到IC版圖或PCB版圖生成的全過(guò)程均可在計(jì)算機(jī)上自動(dòng)完成。EDA技術(shù)代表了當(dāng)今電子設(shè)計(jì)技術(shù)的最新發(fā)展方向,其基本特征是設(shè)計(jì)人員以計(jì)算機(jī)為工具,按照自頂向下的設(shè)計(jì)方法,對(duì)整個(gè)系統(tǒng)進(jìn)行方案設(shè)計(jì)和功能劃分,由硬件描述語(yǔ)言完成系統(tǒng)行為級(jí)設(shè)計(jì),利用先進(jìn)的開發(fā)工具自動(dòng)完成邏輯編譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局布線、仿真及特定目標(biāo)芯片的適配編譯和編程下載,這被稱為數(shù)字邏輯電路的高層次設(shè)計(jì)方法如圖1所示。
圖1 EDA設(shè)計(jì)流程
現(xiàn)以基于VHDL的十二路彩燈控制系統(tǒng)的設(shè)計(jì)為例,說(shuō)明基于EDA的現(xiàn)代電子設(shè)計(jì)技術(shù)的特點(diǎn)。
此十二路彩燈控制系統(tǒng)設(shè)定有四種花樣變化,這四種花樣可以進(jìn)行自動(dòng)切換,并且每種花樣可以選擇不同的頻率,輸入時(shí)鐘頻率為50MHZ,燈亮的時(shí)間在1—4秒之間,可以自由控制。電路中以“1”代表燈亮,以“0”代表燈滅。四種花樣分別為:
(1)彩燈從右到左,然后從左到右逐次閃爍。
(2)彩燈從右到左點(diǎn)亮,然后從左到右逐次依次熄滅,全亮全滅。
(3)彩燈兩邊同時(shí)亮2個(gè),逐次向中間移動(dòng)再散開。
(4)彩燈兩邊同時(shí)亮4個(gè),8亮4滅。
以一個(gè)十二路彩燈花樣控制器、一個(gè)四頻率輸出分頻器,一個(gè)四選一控制器和一個(gè)時(shí)間選擇器總共四部分來(lái)完成設(shè)計(jì)。四選一控制器從分頻器選擇不同頻率的時(shí)鐘信號(hào)輸送到彩燈花樣控制器,從而達(dá)到控制彩燈閃爍速度的快慢,時(shí)間選擇器控制每種速度維持的時(shí)間長(zhǎng)短。系統(tǒng)框圖如圖2所示。
圖2 系統(tǒng)框圖
硬件描述語(yǔ)言(HDL)是一種用于進(jìn)行電子系統(tǒng)硬件設(shè)計(jì)的計(jì)算機(jī)高級(jí)語(yǔ)言,它采用軟件的設(shè)計(jì)方法來(lái)描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式。VHDL語(yǔ)言是一種全方位硬件描述語(yǔ)言,包括系統(tǒng)行為級(jí),寄存器傳輸級(jí)和邏輯門級(jí)多個(gè)設(shè)計(jì)層次?;?VHDL的十六路彩燈設(shè)計(jì)的單元電路如下:
(1)顯示狀態(tài)控制部分
顯示狀態(tài)由一個(gè)脈沖鍵控制。每接受到一個(gè)脈沖,則由當(dāng)前狀態(tài)跳轉(zhuǎn)到下一狀態(tài),否則保持原來(lái)的狀態(tài)不變。且四種狀態(tài)循環(huán)變換。生成模塊如圖3所示。
圖3 顯示狀態(tài)控制模塊
(2)分頻部分
該模塊有兩個(gè)輸入:CP用來(lái)提供時(shí)鐘脈沖;KEY1改變脈沖的按鍵,系統(tǒng)共設(shè)置了四個(gè)頻率,每按一次該按鍵,頻率就變化一次。一個(gè)輸出:FRE用來(lái)給彩燈控制器提供四個(gè)合適的頻率。生成的模塊如圖4所示。
圖4 分頻器模塊
(3)彩燈控制器
彩燈控制電路是整個(gè)設(shè)計(jì)的核心,它負(fù)責(zé)整個(gè)設(shè)計(jì)的輸出效果即各種彩燈圖案的樣式變化。該程序充分地說(shuō)明了用VHDL設(shè)計(jì)電路的“彈”性,即可通過(guò)改變程序中輸出變量Q的位數(shù)來(lái)改彩燈的數(shù)目,改變Q的組合即可變幻彩燈圖案;改變輸入變量INPUT的位數(shù)可改變彩燈狀態(tài)數(shù)目。該模塊有三個(gè)輸入:CLK用來(lái)提供彩燈閃爍頻率;INPUT用為彩燈控制器提供四種狀態(tài)的選擇條件。CLR是清零按鍵。輸出Q[11..0]接12個(gè)彩燈。生成的模塊如圖5所示。
圖5 彩燈控制器模塊
MAX+PLUS2是一個(gè)完全集成化、易學(xué)易用的可編程邏輯設(shè)計(jì)環(huán)境,它可以在多種平臺(tái)上運(yùn)行,其圖形界面豐富,加上完整的、可即時(shí)訪問的在線文檔,使設(shè)計(jì)人員可以輕松地掌握軟件的使用。
當(dāng)各個(gè)模塊均完成上述操作之后,即可利用MAXPLUS2的原理圖輸入,調(diào)用各個(gè)元器件(底層文件),以原理圖的形式形成最后的十二路彩燈顯示系統(tǒng)(頂層文件),其方框圖如圖6所示,同時(shí)對(duì)主要功能模塊(狀態(tài)顯示模塊、分頻器模塊、彩燈控制器模塊)進(jìn)行仿真,仿真與調(diào)試波形分別如圖7、圖8、圖9所示。
圖6 系統(tǒng)軟件框圖
圖7 狀態(tài)顯示模塊波形仿真
圖8 分頻器波形仿真
圖9 彩燈控制器波形仿真
仿真正確后,采用浙江天煌科技實(shí)業(yè)有限公司研制的KHF-5型CPLD/FPGA實(shí)驗(yàn)開發(fā)系統(tǒng),采EP1K100QC208-3芯片,根據(jù)本設(shè)計(jì)實(shí)現(xiàn)的功能,管腳分配如下:CLK-183(50MHZ電源);PINLV-103;CLR-104;ZHUANGTAI-111;Q[0-11]接D4-D16發(fā)光二極管。管腳分配結(jié)束后,再次進(jìn)行編譯,之后用專用下載電纜將程序代碼下載到器件中,打開實(shí)驗(yàn)電源,十二路彩燈即可運(yùn)行正常。
隨著CPLD、FPGA等現(xiàn)場(chǎng)可編程邏輯器件的逐漸興起,VHDL、Verilog等通用性好、移植性強(qiáng)的硬件描述語(yǔ)言的普及,A-SIC技術(shù)的不斷完善,使EDA技術(shù)在現(xiàn)代數(shù)字系統(tǒng)和微電子技術(shù)應(yīng)用中起著越來(lái)越重要的作用。通過(guò)EDA工具自動(dòng)完成系統(tǒng)設(shè)計(jì),大大減輕了設(shè)計(jì)人員的工作強(qiáng)度,提高了設(shè)計(jì)質(zhì)量,減少了出錯(cuò)機(jī)會(huì)。貫徹整個(gè)系統(tǒng)設(shè)計(jì)的自動(dòng)化,使設(shè)計(jì)者從繁重的設(shè)計(jì)工作中徹底解脫出來(lái),把精力集中在創(chuàng)造性的方案與概念構(gòu)思上,從而提高設(shè)計(jì)效率,縮短產(chǎn)品的研制周期。
[1] 閻石.數(shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社, 1998.
[2] 邱紅.在數(shù)字電路實(shí)驗(yàn)與設(shè)計(jì)中引入EDA的必要性[J].實(shí)驗(yàn)室科學(xué),2006,2(1):73-74.
[3] 潘松,黃繼業(yè).EDA技術(shù)與VHDL[M].北京:清華大學(xué)出版社,2007.
[4] 雷雪松.VHDL設(shè)計(jì)實(shí)例與仿真[M].北京:機(jī)械工業(yè)出版社,2007.
[5] 張俊紅.利用EDA技術(shù)改進(jìn)數(shù)字電路的實(shí)踐環(huán)節(jié)[J].實(shí)驗(yàn)室研究與探索,2005(24):167-169.
[6] 楊真理.基于 FPGA的數(shù)字系統(tǒng)設(shè)計(jì)[J].中國(guó)科技信息, 2009,(17).
(責(zé)任編輯、校對(duì):田敬軍)
EDA Technology in Digital System Design
JIANG Li-fei
(Department of Physics, Tangshan Teachers College, Tangshan 063000, China)
Basing on the analysis of the characteristics of the traditional digital system design, the EDA technology is applied to the digital system design. As an example of the lantern design using the programmable FPGA, VHDL and MAX+PlusII software platform, this paper introduces the application of the EDA technique in the digital system design, and embodies the EDA technology as a leading technology in the modern electronic system design which has the the outstanding advantages of the high degree of automation and the shorter development cycles.
EDA technology; digital system design; FPGA; MAX+pluaII; VHDL
TP302.1
A
1009-9115(2010)05-0075-03
2010-6-24
姜麗飛(1977-),女,河北唐山人,碩士,唐山師范學(xué)院物理系講師,研究方向?yàn)闇y(cè)量與控制學(xué)。