在PLD開發(fā)中提高VHDL的綜合質(zhì)量
發(fā)布時(shí)間:2008/5/27 0:00:00 訪問次數(shù):496
來源:單片機(jī)及嵌入式系統(tǒng)應(yīng)用 作者:石俊斌 林 輝摘要:介紹可編程邏輯器件的開發(fā)流程,敘述eda工具quartus ii和leonardospectrum在altera公司cpld器件開發(fā)中的應(yīng)用,給出提高vhdl綜合質(zhì)量的幾點(diǎn)經(jīng)驗(yàn)。
關(guān)鍵詞:電子設(shè)計(jì)自動(dòng)化 可編程邏輯器件 硬件描述語言 邏輯綜合
引 言
隨著計(jì)算機(jī)與微電子技術(shù)的發(fā)展,電子設(shè)計(jì)自動(dòng)化eda(electronic design automation)和可編程邏輯器件pld(programmable logic device)的發(fā)展都非常迅速,熟練地利用eda軟件進(jìn)行pld器件開發(fā)已成為電子工程師必須掌握的基本技能。先進(jìn)的eda工具已經(jīng)從傳統(tǒng)的自下而上的設(shè)計(jì)方法改變?yōu)樽皂斚蛳碌脑O(shè)計(jì)方法,以硬件描述語言hdl(hardware description language)來描述系統(tǒng)級(jí)設(shè)計(jì),并支持系統(tǒng)仿真和高層綜合。asic(application specific integrated circuit)的設(shè)計(jì)與制造,電子工程師在實(shí)驗(yàn)室就可以完成,這都得益于pld器件的出現(xiàn)及功能強(qiáng)大的eda軟件的支持,F(xiàn)在應(yīng)用最廣泛的高密度pld器件主要是現(xiàn)場(chǎng)可編程門陣列fpga(field programmable gate array)和復(fù)雜可編程邏輯器件cpld(complex programmable logic device)。
eda軟件方面,大體可以分為兩類:
① pld器件廠商提供的eda工具。較著名的如:altera公司的 max+plus ii和quartus ii、xilinx公司的foundation series、latice-vantis公司的ispexert system。
② 第三方專業(yè)軟件公司提供的eda工具。常用的綜合工具軟件有:synopsys公司的fpga compiler ii、exemplar logic公司的leonardospectrum、synplicity公司的synplify。第三方工具軟件是對(duì)cpld/fpga生產(chǎn)廠家開發(fā)軟件的補(bǔ)充和優(yōu)化,如通常認(rèn)為max+plus ii和quartus ii對(duì)vhdl/verilog hdl邏輯綜合能力不強(qiáng),如果采用專用的hdl工具進(jìn)行邏輯綜合,會(huì)有效地提高綜合質(zhì)量。
1 pld器件的開發(fā)
cpld/fpga設(shè)計(jì)越來越復(fù)雜,使用硬件描述語言設(shè)計(jì)可編程邏輯電路已經(jīng)成為大勢(shì)所趨,目前最主要的硬件描述語言是:vhdl(very high speed integrated circuit hdl)和verilog hdl。兩種語言都已被確定為ieee標(biāo)準(zhǔn)。
用vhdl/verilog hdl語言開發(fā)可編程邏輯電路的完整流程為:
① 文本編輯。用任何文本編輯器都可以,但通常在專用的hdl編輯環(huán)境中進(jìn)行。因?yàn)閷I(yè)的集成開發(fā)環(huán)境通常提供各種結(jié)構(gòu)模板,并且可以自定義各種要素(例如關(guān)鍵字、字符串、注釋等)的色彩顯示,提高可讀性,提高輸入效率。
② 功能仿真。將文件調(diào)入hdl仿真軟件進(jìn)行功能仿真,檢查邏輯功能是否正確。
③ 邏輯優(yōu)化與綜合。將源文件調(diào)入邏輯綜合軟件進(jìn)行邏輯分析處理,即將高層次描述(行為或數(shù)據(jù)流級(jí)描述)轉(zhuǎn)化為低層次的網(wǎng)表輸出(寄存器與門級(jí)描述),邏輯綜合軟件會(huì)生成edif(electronic design interchange format)格式的eda工業(yè)標(biāo)準(zhǔn)文件。這步在pld開發(fā)過程中最為關(guān)鍵,影響綜合質(zhì)量的因素有兩個(gè),即代碼質(zhì)量和綜合軟件性能。
④ 適配與分割。如果整個(gè)設(shè)計(jì)超出器件的宏單元或i/o單元資源,可以將設(shè)計(jì)劃分到多片同系列的器件中。
⑤ 裝配或布局布線。將edif文件調(diào)入pld廠家提供的軟件中進(jìn)行裝配(對(duì)于cpld)或布局布線(對(duì)于fpga),即將設(shè)計(jì)好的邏輯寫入cpld/fpga器件中。
⑥ 時(shí)序仿真。即延時(shí)仿真,由于不同器件、不同布局布線,給延時(shí)造成的影響不同,因此對(duì)系統(tǒng)進(jìn)行時(shí)序仿真,檢驗(yàn)設(shè)計(jì)性能,消除競(jìng)爭冒險(xiǎn)是必不可少的步驟。
利用vhdl語言進(jìn)行pld設(shè)計(jì)開發(fā)的基本流程如圖1所示。如果選用altera公司cpld器件作為目標(biāo)器件,上述過程可以在altera公司提供的 max+plus ii或quartus ii集成開發(fā)環(huán)境中完成,但如果選用專用的eda綜合工具作為補(bǔ)充,完成邏輯優(yōu)化與綜合,設(shè)計(jì)質(zhì)量會(huì)更好。第三方綜合軟件的主要功能就是對(duì)hdl語言的源文件進(jìn)行邏輯綜合,生成.edf的eda工業(yè)標(biāo)準(zhǔn)文件,然后在pld廠家提供的開發(fā)軟件中調(diào)入.edf文件,進(jìn)行編譯、仿真、器件編程等過程,最終完成整個(gè)設(shè)計(jì)。針對(duì)altera公司cpld器件,我們選用quartus ii + leonardospectrum的eda組合開發(fā)方式,更重要的是,廣大學(xué)習(xí)愛好者可以在www.altera.com網(wǎng)站免費(fèi)獲得。下面對(duì)兩款軟件作簡要介紹。
2 quartus ii軟件的應(yīng)用
quartus ii是altera公司的第四代可編程邏輯器件集成開發(fā)環(huán)境,提供從設(shè)計(jì)輸入到器件編程的全部功能。 quartus ii可以產(chǎn)生并識(shí)別edif網(wǎng)表文件、vhdl網(wǎng)表文件和verilog hdl網(wǎng)表文件,為其它eda工具提供了方便的接口;可以在quartus ii集成環(huán)境中自動(dòng)運(yùn)行其它eda工具。
利用quartus ii軟件的開發(fā)流程可概括為以下幾步:設(shè)計(jì)輸入、設(shè)計(jì)編譯、設(shè)計(jì)定時(shí)分析、設(shè)計(jì)
來源:單片機(jī)及嵌入式系統(tǒng)應(yīng)用 作者:石俊斌 林 輝摘要:介紹可編程邏輯器件的開發(fā)流程,敘述eda工具quartus ii和leonardospectrum在altera公司cpld器件開發(fā)中的應(yīng)用,給出提高vhdl綜合質(zhì)量的幾點(diǎn)經(jīng)驗(yàn)。
關(guān)鍵詞:電子設(shè)計(jì)自動(dòng)化 可編程邏輯器件 硬件描述語言 邏輯綜合
引 言
隨著計(jì)算機(jī)與微電子技術(shù)的發(fā)展,電子設(shè)計(jì)自動(dòng)化eda(electronic design automation)和可編程邏輯器件pld(programmable logic device)的發(fā)展都非常迅速,熟練地利用eda軟件進(jìn)行pld器件開發(fā)已成為電子工程師必須掌握的基本技能。先進(jìn)的eda工具已經(jīng)從傳統(tǒng)的自下而上的設(shè)計(jì)方法改變?yōu)樽皂斚蛳碌脑O(shè)計(jì)方法,以硬件描述語言hdl(hardware description language)來描述系統(tǒng)級(jí)設(shè)計(jì),并支持系統(tǒng)仿真和高層綜合。asic(application specific integrated circuit)的設(shè)計(jì)與制造,電子工程師在實(shí)驗(yàn)室就可以完成,這都得益于pld器件的出現(xiàn)及功能強(qiáng)大的eda軟件的支持,F(xiàn)在應(yīng)用最廣泛的高密度pld器件主要是現(xiàn)場(chǎng)可編程門陣列fpga(field programmable gate array)和復(fù)雜可編程邏輯器件cpld(complex programmable logic device)。
eda軟件方面,大體可以分為兩類:
① pld器件廠商提供的eda工具。較著名的如:altera公司的 max+plus ii和quartus ii、xilinx公司的foundation series、latice-vantis公司的ispexert system。
② 第三方專業(yè)軟件公司提供的eda工具。常用的綜合工具軟件有:synopsys公司的fpga compiler ii、exemplar logic公司的leonardospectrum、synplicity公司的synplify。第三方工具軟件是對(duì)cpld/fpga生產(chǎn)廠家開發(fā)軟件的補(bǔ)充和優(yōu)化,如通常認(rèn)為max+plus ii和quartus ii對(duì)vhdl/verilog hdl邏輯綜合能力不強(qiáng),如果采用專用的hdl工具進(jìn)行邏輯綜合,會(huì)有效地提高綜合質(zhì)量。
1 pld器件的開發(fā)
cpld/fpga設(shè)計(jì)越來越復(fù)雜,使用硬件描述語言設(shè)計(jì)可編程邏輯電路已經(jīng)成為大勢(shì)所趨,目前最主要的硬件描述語言是:vhdl(very high speed integrated circuit hdl)和verilog hdl。兩種語言都已被確定為ieee標(biāo)準(zhǔn)。
用vhdl/verilog hdl語言開發(fā)可編程邏輯電路的完整流程為:
① 文本編輯。用任何文本編輯器都可以,但通常在專用的hdl編輯環(huán)境中進(jìn)行。因?yàn)閷I(yè)的集成開發(fā)環(huán)境通常提供各種結(jié)構(gòu)模板,并且可以自定義各種要素(例如關(guān)鍵字、字符串、注釋等)的色彩顯示,提高可讀性,提高輸入效率。
② 功能仿真。將文件調(diào)入hdl仿真軟件進(jìn)行功能仿真,檢查邏輯功能是否正確。
③ 邏輯優(yōu)化與綜合。將源文件調(diào)入邏輯綜合軟件進(jìn)行邏輯分析處理,即將高層次描述(行為或數(shù)據(jù)流級(jí)描述)轉(zhuǎn)化為低層次的網(wǎng)表輸出(寄存器與門級(jí)描述),邏輯綜合軟件會(huì)生成edif(electronic design interchange format)格式的eda工業(yè)標(biāo)準(zhǔn)文件。這步在pld開發(fā)過程中最為關(guān)鍵,影響綜合質(zhì)量的因素有兩個(gè),即代碼質(zhì)量和綜合軟件性能。
④ 適配與分割。如果整個(gè)設(shè)計(jì)超出器件的宏單元或i/o單元資源,可以將設(shè)計(jì)劃分到多片同系列的器件中。
⑤ 裝配或布局布線。將edif文件調(diào)入pld廠家提供的軟件中進(jìn)行裝配(對(duì)于cpld)或布局布線(對(duì)于fpga),即將設(shè)計(jì)好的邏輯寫入cpld/fpga器件中。
⑥ 時(shí)序仿真。即延時(shí)仿真,由于不同器件、不同布局布線,給延時(shí)造成的影響不同,因此對(duì)系統(tǒng)進(jìn)行時(shí)序仿真,檢驗(yàn)設(shè)計(jì)性能,消除競(jìng)爭冒險(xiǎn)是必不可少的步驟。
利用vhdl語言進(jìn)行pld設(shè)計(jì)開發(fā)的基本流程如圖1所示。如果選用altera公司cpld器件作為目標(biāo)器件,上述過程可以在altera公司提供的 max+plus ii或quartus ii集成開發(fā)環(huán)境中完成,但如果選用專用的eda綜合工具作為補(bǔ)充,完成邏輯優(yōu)化與綜合,設(shè)計(jì)質(zhì)量會(huì)更好。第三方綜合軟件的主要功能就是對(duì)hdl語言的源文件進(jìn)行邏輯綜合,生成.edf的eda工業(yè)標(biāo)準(zhǔn)文件,然后在pld廠家提供的開發(fā)軟件中調(diào)入.edf文件,進(jìn)行編譯、仿真、器件編程等過程,最終完成整個(gè)設(shè)計(jì)。針對(duì)altera公司cpld器件,我們選用quartus ii + leonardospectrum的eda組合開發(fā)方式,更重要的是,廣大學(xué)習(xí)愛好者可以在www.altera.com網(wǎng)站免費(fèi)獲得。下面對(duì)兩款軟件作簡要介紹。
2 quartus ii軟件的應(yīng)用
quartus ii是altera公司的第四代可編程邏輯器件集成開發(fā)環(huán)境,提供從設(shè)計(jì)輸入到器件編程的全部功能。 quartus ii可以產(chǎn)生并識(shí)別edif網(wǎng)表文件、vhdl網(wǎng)表文件和verilog hdl網(wǎng)表文件,為其它eda工具提供了方便的接口;可以在quartus ii集成環(huán)境中自動(dòng)運(yùn)行其它eda工具。
利用quartus ii軟件的開發(fā)流程可概括為以下幾步:設(shè)計(jì)輸入、設(shè)計(jì)編譯、設(shè)計(jì)定時(shí)分析、設(shè)計(jì)
熱門點(diǎn)擊
- OrCAD/PSpice9直流掃描分析的應(yīng)用
- protel99se和DXP的使用感想
- CCS噪聲模型:用于串?dāng)_噪聲分析的高精確度建
- Xtreme PCB軟件允許多位工程師同時(shí)布
- ORCAD/PSPICE
- ALLEGRO布線缺點(diǎn)之我見
- PCB LAYOUT技術(shù)大全---初學(xué)者必看
- 利用Liberty CCS建模技術(shù)實(shí)現(xiàn)更高精
- RGB信號(hào)走表層還是地層?
- VHDL中Loop動(dòng)態(tài)條件的可綜合轉(zhuǎn)化
推薦技術(shù)資料
- 泰克新發(fā)布的DSA830
- 泰克新發(fā)布的DSA8300在一臺(tái)儀器中同時(shí)實(shí)現(xiàn)時(shí)域和頻域分析,DS... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究