EDA是電子設(shè)計(jì)自動(dòng)化(Electronic Design Automation)縮寫,是90年代初從CAD(計(jì)算機(jī)輔助設(shè)計(jì))、CAM(計(jì)算機(jī)輔助制造)、CAT(計(jì)算機(jī)輔助測(cè)試)和CAE(計(jì)算機(jī)輔助工程)的概念發(fā)展而來的。EDA技術(shù)是以計(jì)算機(jī)為工具,根據(jù)硬件描述語言HDL( Hardware Description language)完成的設(shè)計(jì)文件,自動(dòng)地完成邏輯編譯、化簡(jiǎn)、分割、綜合及優(yōu)化、布局布線、仿真以及對(duì)于特定目標(biāo)芯片的適配編譯和編程下載等工作。典型的EDA工具中必須包含兩個(gè)特殊的軟件包,即綜合器和適配器。綜合器的功能就是將設(shè)計(jì)者在EDA平臺(tái)上完成的針對(duì)某個(gè)系統(tǒng)項(xiàng)目的HDL、原理圖或狀態(tài)圖形描述,針對(duì)給定的硬件系統(tǒng)組件,進(jìn)行編譯、優(yōu)化、轉(zhuǎn)換和綜合,最終獲得我們欲實(shí)現(xiàn)功能的描述文件。綜合器在工作前,必須給定所要實(shí)現(xiàn)的硬件結(jié)構(gòu)參數(shù),它的功能就是將軟件描述與給定的硬件結(jié)構(gòu)用一定的方式聯(lián)系起來。也就是說,綜合器是軟件描述與硬件實(shí)現(xiàn)的一座橋梁。綜合過程就是
將電路的高級(jí)語言描述轉(zhuǎn)換低級(jí)的、可與目標(biāo)器件FPGA/CPLD相映射的網(wǎng)表文件。
適配器的功能是將由綜合器產(chǎn)生的王表文件配置與指定的目標(biāo)器件中,產(chǎn)生最終的下載文件,如JED文件。適配所選定的目標(biāo)器件(FPGA/CPLD芯片)必須屬于在綜合器中已指定的目標(biāo)器件系列。
硬件描述語言HDL是相對(duì)于一般的計(jì)算機(jī)軟件語言,如:C、PASCAL而言的。HDL語言使用與設(shè)計(jì)硬件電子系統(tǒng)的計(jì)算機(jī)語言,它能描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接方式。設(shè)計(jì)者可利用HDL程序來描述所希望的電路系統(tǒng),規(guī)定器件結(jié)構(gòu)特征和電路的行為方式;然后利用綜合器和適配器將此程序編程能控制FPGA和CPLD內(nèi)部結(jié)構(gòu),并實(shí)現(xiàn)相應(yīng)邏輯功能的的門級(jí)或更底層的結(jié)構(gòu)網(wǎng)表文件或下載文件。目前,就FPGA/CPLD開發(fā)來說,比較常用和流行的 HDL主要有ABEL-HDL、AHDL和VHDL。
二、基于EDA工具的FPGA/CPLD開發(fā)流程:開發(fā)步驟:
1、 文本/原理圖編輯與修改。首先利用EDA工具的文本或圖形編輯器將設(shè)計(jì)者的設(shè)計(jì)意圖用文本(ABEL-HDL程序)或圖形方式(原理圖或狀態(tài)圖)表達(dá)出來。
2、 編譯。完成設(shè)計(jì)描述后即可通過編譯器進(jìn)行排錯(cuò)編譯,變成特定的文本格式,為下一步的綜合做準(zhǔn)備。
3、 綜合。這是將軟件設(shè)計(jì)與硬件的可實(shí)現(xiàn)性掛鉤,是將軟件轉(zhuǎn)化為硬件電路的關(guān)鍵步驟。綜合后HDL綜合器可生成ENIF、XNF或VHDL等格式的網(wǎng)表文件,他們從門級(jí)開始描述了最基本的門電路結(jié)構(gòu)。
4、 行為仿真和功能仿真。利用產(chǎn)生的網(wǎng)表文件進(jìn)行功能仿真,以便了解設(shè)計(jì)描述與設(shè)計(jì)意圖的一致性。(該步驟可以略去)
5、適配。利用FPGA/CPLD布局布線適配器將綜合后的網(wǎng)表文件針對(duì)某一具體的目標(biāo)器件進(jìn)行邏輯映射操作,其中包括底層器件配置、邏輯分割、邏輯優(yōu)化、布局布線。該操作完成后,EDA軟件將產(chǎn)生針對(duì)此項(xiàng)設(shè)計(jì)的適配報(bào)告和JED下載文件等多項(xiàng)結(jié)果。適配報(bào)告指明了芯片內(nèi)資源的分配與利用、引腳鎖定、設(shè)計(jì)的布爾方程描述情況。
6、 功能仿真和時(shí)序仿真。該不妨真實(shí)接近真實(shí)器件運(yùn)行的方針,仿真過程已將器件的硬件特性考慮進(jìn)去了,因此仿真精度要高的多。(該步驟也可略去)
7、 下載。如果以上的所有過程都沒有發(fā)現(xiàn)問題,就可以將適配器產(chǎn)生的下載文件通過FPGA/CPLD下載電纜載入目標(biāo)芯片F(xiàn)PGA或CPLD中。
8、 硬件仿真