孫海林
(泰州機(jī)電高等職業(yè)技術(shù)學(xué)院,江蘇 泰州 225300)
EDA技術(shù)在現(xiàn)代電子設(shè)計(jì)中的應(yīng)用研究
孫海林
(泰州機(jī)電高等職業(yè)技術(shù)學(xué)院,江蘇 泰州 225300)
本文從電子設(shè)計(jì)技術(shù)概況入手,分別介紹了FPGA/CPLD的結(jié)構(gòu)和工作原理、開(kāi)發(fā)流程和優(yōu)點(diǎn),常用EDA開(kāi)發(fā)工具,Verilog HDL語(yǔ)言的開(kāi)發(fā)步驟,EDA技術(shù)在電子設(shè)計(jì)過(guò)程中的注意事項(xiàng)等內(nèi)容。然后以交通燈控制器、機(jī)械手控制系統(tǒng)為例分析了FPGA在簡(jiǎn)單邏輯、控制和數(shù)字信號(hào)處理上的應(yīng)用。
EDA;電子設(shè)計(jì);FPGA
EDA技術(shù)發(fā)源于20世紀(jì)90年代末期,時(shí)至今日,已然成為現(xiàn)代電子設(shè)計(jì)發(fā)展潮流所在。可編程邏輯器件可以輕松地通過(guò)軟件編程實(shí)現(xiàn)對(duì)硬件結(jié)構(gòu)的重構(gòu),對(duì)工作方式的優(yōu)化,使硬件系統(tǒng)的設(shè)計(jì)變得更為簡(jiǎn)捷。同時(shí)也使傳統(tǒng)數(shù)字系統(tǒng)的設(shè)計(jì)方法、過(guò)程、觀念都得到了更新。隨著可編程邏輯器件集成規(guī)模的增大,EDA技術(shù)應(yīng)運(yùn)而生。
EDA是電子設(shè)計(jì)自動(dòng)化(Electronic Design Automa?tion)的英文縮寫,由CAD、CAM、CAT和CAE的概念綜合演化而來(lái),即以計(jì)算機(jī)工具為硬件,以EDA軟件為開(kāi)發(fā)環(huán)境,以描述語(yǔ)言HDL為開(kāi)發(fā)語(yǔ)言,以FPGA/CPLD為開(kāi)發(fā)載體,自動(dòng)實(shí)現(xiàn)包括邏輯編譯、分割、綜合、優(yōu)化、布局、仿真等功能在內(nèi)的電子設(shè)計(jì)全過(guò)程。從發(fā)展歷程來(lái)看,EDA技術(shù)大致經(jīng)歷了四個(gè)階段:計(jì)算機(jī)輔助設(shè)計(jì)階段,該時(shí)期EDA技術(shù)主要體現(xiàn)在通過(guò)計(jì)算機(jī)輔助實(shí)施IC版圖編輯、印刷線路板布局和布線等工作;計(jì)算機(jī)輔助工程階段,在該階段,EDA技術(shù)新增了部分新型應(yīng)用功能,在圖形繪制、電路功能設(shè)計(jì)、電路結(jié)構(gòu)設(shè)計(jì)、原理圖輸入、邏輯仿真、自動(dòng)布局布線等方面有了長(zhǎng)足的進(jìn)步;電子系統(tǒng)設(shè)計(jì)自動(dòng)化階段,在該時(shí)期,電子設(shè)計(jì)實(shí)現(xiàn)了自動(dòng)化,高級(jí)描述語(yǔ)言進(jìn)入電子設(shè)計(jì),系統(tǒng)識(shí)別仿真和電子設(shè)計(jì)結(jié)合更為精密;第四階段是進(jìn)入本世紀(jì)以來(lái),現(xiàn)代EAD技術(shù)愈發(fā)成熟,計(jì)算機(jī)和EDA軟件平臺(tái)功能越發(fā)強(qiáng)大,使得用軟件方式描述的電子系統(tǒng),以及實(shí)現(xiàn)硬件系統(tǒng)的邏輯仿真、布局布線等功能成為現(xiàn)實(shí)。
可編程ASIC作為ASIC的一種,是由復(fù)雜可編程邏輯器件和現(xiàn)場(chǎng)可編程門陣列組成的。分別被稱之為CPLD和FPGA。從內(nèi)部結(jié)構(gòu)上,CPLD主要包括輸出邏輯宏單元、可編程的與或陣列、可編程互連矩陣單元及輸入輸出單元。FPGA則包含可編程的邏輯功能塊、輸入輸出模塊和互連網(wǎng)絡(luò)[1]。與CPLD相比,F(xiàn)PGA布線更為靈活,可用邏輯門數(shù)量也較多。本文主要以Altera公司的MAX7000系列和Flex10K系列為例進(jìn)行簡(jiǎn)要說(shuō)明。從如圖1所示的Flex10K器件結(jié)構(gòu)不難看出,其主要結(jié)構(gòu)由LE(邏輯單元)、LAB(邏輯陣列)、FastTrack(快速通道)、I/O(輸入輸出)單元、EAB(嵌入式陣列塊)組成,而每個(gè)LAB則包含有8個(gè)LE[2]。
常見(jiàn)的EDA軟件都是由IC公司提供的,其中Altera公司的MAX+plusⅡ和Quartus最為成熟。MAX+plusⅡ功能全面,使用方便,大眾化程度高,非常適合在科研和教學(xué)場(chǎng)合使用,良好的人機(jī)交互界面,集成化的功能,模塊化的組合工具,支持Verilog HDL、AHDL等多種語(yǔ)言格式,良好的開(kāi)放性和數(shù)據(jù)交換性是其最為主要的優(yōu)點(diǎn)。目前,在硬件描述語(yǔ)言中,Verilog HDL是硬件描述語(yǔ)言中使用最為廣泛的一種,Verilog HDL可以提供條件循環(huán)程序結(jié)構(gòu),能用延遲表達(dá)式確切地控制過(guò)程的啟動(dòng)時(shí)間,也能描述順序執(zhí)行或并行執(zhí)行的程序結(jié)構(gòu)。此外,由于Verilog HDL語(yǔ)言類似于C語(yǔ)言的風(fēng)格,有C語(yǔ)言編程基礎(chǔ)的人可以輕松上手。
圖1 Flex10K器件結(jié)構(gòu)圖
2.1 注意事項(xiàng)
將EDA技術(shù)應(yīng)用于電子設(shè)計(jì)需要特別注意以下幾點(diǎn)。①要考慮電子電路延時(shí)的時(shí)長(zhǎng)有著不確定性。自動(dòng)編譯電路中部分環(huán)節(jié)有一定的可能性成為贅余,故而反相器的數(shù)量和連接方式上不適合采用偶數(shù)個(gè)并聯(lián)連接。②為保證引腳有良好的接地,也為了保證有源信號(hào)驅(qū)動(dòng),輸入引腳不可處于懸空狀態(tài)。③各組成器件電源始終有良好的接地,必要時(shí),各器件間要進(jìn)行濾波及去耦處理。④為方便拓展和修改需要,邏輯單元和引腳要留有余量備用。⑤要有適當(dāng)?shù)睦鋮s處理防止器件過(guò)熱[3]。
2.2 EDA技術(shù)應(yīng)用舉例
時(shí)至今日,EDA應(yīng)用已經(jīng)十分廣泛,在交通、儀器儀表和工業(yè)自動(dòng)化領(lǐng)域都有起著重要作用。在簡(jiǎn)單邏輯應(yīng)用上,交通燈控制器是最為常見(jiàn)的應(yīng)用。如設(shè)計(jì)如圖2所示的十字路口交通燈控制器,已知X方向?yàn)橹鞲傻?,此方向設(shè)置通行時(shí)間長(zhǎng)于Y方向。兩方向均設(shè)置有紅、黃、綠和左拐等一個(gè),分別用字母R、Y、G和L表示(R、Y、G、L分別為英文單詞red、yellow、green和left首字母大寫),在狀態(tài)轉(zhuǎn)換上數(shù)字1表示燈亮,數(shù)字0表示燈滅。為保證兩個(gè)方向在同行問(wèn)題上不互相干擾,每個(gè)方向四種燈應(yīng)按照規(guī)定次序依次亮起,且不斷循環(huán)往復(fù)。該順序?yàn)椋壕G-黃燈-左拐-黃燈-紅燈,且任一方向紅燈亮的時(shí)長(zhǎng)應(yīng)與另一方向其余綠、黃、左拐、黃的時(shí)間等長(zhǎng)。其硬件設(shè)計(jì)結(jié)構(gòu)如圖3所示。在具體功能上,本設(shè)計(jì)采用兩個(gè)并行執(zhí)行的模塊對(duì)兩向四盞燈進(jìn)行控制,且共用一個(gè)時(shí)鐘信號(hào)。亮燈時(shí)間采用可同步預(yù)置的減法計(jì)數(shù)器實(shí)現(xiàn)計(jì)數(shù)。在信號(hào)定義上,程序設(shè)置了同步時(shí)鐘信號(hào)、使能信號(hào),同時(shí)還為X向和Y向的左拐燈、綠燈、黃燈和紅燈信號(hào)亮滅設(shè)置了4組控制信號(hào),此外還有用以時(shí)間顯示的信號(hào)。根據(jù)設(shè)計(jì)要求,分別在X方向和Y方向左拐燈、綠燈、黃燈和紅燈設(shè)置了具體的亮燈長(zhǎng)度時(shí)間,如X向紅燈時(shí)間45s,綠燈時(shí)間40s,Y向紅燈時(shí)間55s,綠燈時(shí)間30s。其余黃燈和左拐燈亮燈時(shí)間,X向和Y向相同,分為3s和20s。在引腳的鎖定上,時(shí)鐘信號(hào)CLK占用IN1引腳,使能信號(hào)占用I/O0引腳,其余雙向控制燈亮信號(hào)和計(jì)時(shí)信號(hào)分別使用8個(gè)和16個(gè)引腳,其具體I/O端口名稱此處不再詳述。在使用MAX+plusⅡ軟件編譯交通燈控制器后,進(jìn)行時(shí)序仿真,仿真無(wú)誤,將其下載到實(shí)驗(yàn)板中進(jìn)行驗(yàn)證。
圖2 十字路口交通燈示意圖
圖3 硬件結(jié)構(gòu)簡(jiǎn)圖
從上文不難看出,EDA技術(shù)在當(dāng)代牢牢占據(jù)著核心地位,隨著EDA技術(shù)的不斷成熟,其必將在電子產(chǎn)業(yè)及電子設(shè)計(jì)領(lǐng)域中發(fā)揮更大的作用。
[1]徐志軍,徐光輝.CPLD/FPGA的開(kāi)發(fā)與應(yīng)用[M].北京:電子工業(yè)出版社,2002.
[2]戴立江.基于EDA技術(shù)的FPGA應(yīng)用研究[D]天津:天津工業(yè)大學(xué),2004.
[3]紀(jì)永成.FPGA開(kāi)發(fā)板設(shè)計(jì)與研究[D].長(zhǎng)春:吉林大學(xué),2011.
Research on the Application of EDA Technology in Modern Electronic Design
Sun Hailin
(Taizhou Advanced Electromechanical Occupation Technical School,Taizhou Jiangsu 225300)
From the survey of electronic design technology,introduced the structure and working principle of FPGA/CPLD,the development process and the advantages of common EDA development tools,the devel?opment process of Verilog HDL language,EDA technology in the electronic design process of the matters needing attention.Then,taking the traffic light controller and manipulator control system as an example,the application of FPGA in simple logic,control and digital signal processing was analyzed.
EDA;electronic design;FPGA
TN702
A
1003-5168(2017)12-0046-02
2017-11-01
孫海林(1978-),女,本科,教師,研究方向:應(yīng)用電子技術(shù)。