新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 現(xiàn)場(chǎng)可編程門陣列(FPGA)設(shè)計(jì)

現(xiàn)場(chǎng)可編程門陣列(FPGA)設(shè)計(jì)

作者: 時(shí)間:2011-05-27 來(lái)源:網(wǎng)絡(luò) 收藏

設(shè)計(jì)處理

確定設(shè)計(jì)描述的功能無(wú)誤后,就可以使用EDA軟件對(duì)設(shè)計(jì)描述和相應(yīng)的性能約束進(jìn)行處理,設(shè)計(jì)處理是設(shè)計(jì)開(kāi)發(fā)中的重要環(huán)節(jié)。在設(shè)計(jì)處理的過(guò)程中,EDA軟件對(duì)設(shè)計(jì)輸入文件進(jìn)行語(yǔ)法和設(shè)計(jì)規(guī)則檢查、邏輯簡(jiǎn)化、優(yōu)化、綜合、適配、布局布線、時(shí)間參數(shù)提取,最后產(chǎn)生器件編程用的數(shù)據(jù)文件。

首先,EDA軟件對(duì)設(shè)計(jì)輸入進(jìn)行語(yǔ)法和設(shè)計(jì)規(guī)則檢查,然后簡(jiǎn)化和優(yōu)化邏輯方程,通過(guò)綜合和適配將優(yōu)化后的設(shè)計(jì)映射到器件相應(yīng)的邏輯單元中,生成網(wǎng)表文件。布局布線將映射產(chǎn)生的物理單元在目標(biāo)器件上進(jìn)行放置和連接,并提取相應(yīng)的時(shí)間參數(shù)。時(shí)間參數(shù)提取將生成當(dāng)前設(shè)計(jì)的含有時(shí)間參數(shù)的網(wǎng)表,用于時(shí)序仿真。另外,時(shí)間參數(shù)提取輸出的時(shí)序報(bào)告可以反映當(dāng)前設(shè)計(jì)是否滿足時(shí)序約束。

設(shè)計(jì)處理的效果主要取決于設(shè)計(jì)者的風(fēng)格和綜合工具的能力。使用EDA軟件進(jìn)行設(shè)計(jì)處理時(shí)需要注意:首先,最優(yōu)化的目標(biāo)可以是速度、資源、功耗等,這些指標(biāo)時(shí)相互制約的。其次,目前綜合器所支持的硬件描述語(yǔ)言的語(yǔ)法是有限的,過(guò)于抽象的語(yǔ)法還無(wú)法綜合。因此,設(shè)計(jì)者應(yīng)該具有良好的硬件描述語(yǔ)言編碼風(fēng)格。

時(shí)序仿真

時(shí)序仿真又稱為后仿真或延時(shí)仿真,是高速設(shè)計(jì)過(guò)程中必不可少的仿真驗(yàn)證階段。由于不同器件內(nèi)部的延時(shí)不一樣,不同的布局布線方案也將影響電路各部分的延時(shí),這些延時(shí)可能會(huì)導(dǎo)致系統(tǒng)和電路功能的變化。因此在設(shè)計(jì)處理以后,需要對(duì)系統(tǒng)和各模塊進(jìn)行時(shí)序仿真,分析時(shí)序關(guān)系,檢查和消除競(jìng)爭(zhēng)冒險(xiǎn)、并對(duì)器件的實(shí)際工作性能進(jìn)行估計(jì)。

由于時(shí)序仿真中需要參考的參數(shù)非常多,因此將比功能仿真花費(fèi)的時(shí)間長(zhǎng)。時(shí)序仿真中使用了電路延時(shí)的最壞情況,因此,通過(guò)時(shí)序仿真驗(yàn)證之后的設(shè)計(jì)一般都能夠在實(shí)際器件上正確運(yùn)行。

器件編程與測(cè)試

器件編程也可以稱為配置。時(shí)序仿真完成之后,就可以使用EDA軟件生成FPGA器件編程時(shí)所需的數(shù)據(jù)文件。器件的編程就是將編程數(shù)據(jù)下載到相應(yīng)的FPGA器件中去。

器件編程需要滿足一定的條件,如編程電壓、編程時(shí)序、編程算法等。一次性編程的FPGA需要專用的編程器完成器件的編程工作,基于SRAM的FPGA可以由EPROM或其他存儲(chǔ)器件進(jìn)行配置。在線可編程的FPGA器件不需要專門的編程器,僅需要一根編程下載電纜和相應(yīng)的編程軟件。

器件在編程結(jié)束后,還可以對(duì)器件進(jìn)行校驗(yàn)、加密等操作工作。對(duì)于支持JTAG技術(shù),具有邊界掃描測(cè)試BST(Boundary-Scan Testing)能力和在線編程能力的器件來(lái)說(shuō),編程和測(cè)試過(guò)程都比較方便。

FPGA設(shè)計(jì)的要求

作為一個(gè)優(yōu)秀的FPGA設(shè)計(jì),必須具有以下幾方面特征:

滿足系統(tǒng)的設(shè)計(jì)規(guī)范和性能要求

滿足用戶對(duì)系統(tǒng)性能指標(biāo)和設(shè)計(jì)規(guī)范的需求,是一個(gè)FPGA設(shè)計(jì)成功的最基本要求。

源代碼可讀性高

可讀性好的FPGA設(shè)計(jì)(原理圖或硬件描述語(yǔ)言描述的源文件)應(yīng)該包含有足夠的說(shuō)明和注釋信息,比如,各個(gè)模塊的說(shuō)明、每張?jiān)韴D之間的關(guān)系、硬件描述的模塊之間的互連關(guān)系等等。另外,狀態(tài)機(jī)設(shè)計(jì)的文檔應(yīng)該包括狀態(tài)圖或功能描述,布爾方程的實(shí)現(xiàn)過(guò)程也應(yīng)該寫在源代碼中。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉