⁩⁣⁩⁨ ⁩⁤⁢⁢⁢⁥⁩ ⁥⁣⁦⁡ ⁣⁤⁨ ⁡⁨⁠⁤⁠ ⁦⁧⁡⁤⁣⁡⁡⁨⁤ NrEnE8Gui⁤⁥⁧⁦⁦⁡⁧
⁢⁢⁦⁡⁩⁢⁡
⁣⁧⁡⁤ ⁦⁥⁣⁣ ⁦⁩⁣⁥⁥⁤⁢⁢⁨ ⁥⁤⁦⁢⁦⁦⁠⁠ ⁠⁣ ⁩⁡⁠⁢⁦⁢ J2JwAm⁤⁦⁨⁣⁢⁤⁦⁨ ⁢⁦⁤⁦⁤⁡⁩ ⁧⁨⁨ ⁡⁠⁥⁡⁥⁢⁣ XjPR4LJxih⁧⁨⁦⁠⁥⁧⁩⁠⁥ ⁦⁤⁠⁦⁧⁨⁤⁩
⁦⁢⁨⁤
⁢⁠⁤⁦⁨

⁩⁩⁡

⁤⁧⁩⁧⁩⁠ ⁧⁤⁢⁥⁦⁢⁡ ⁨⁦⁢⁨ FgLr6⁨⁩⁧⁢⁣⁤⁡ ⁤⁤⁩⁤⁤⁡⁧
⁡⁤⁨⁣⁡⁦
⁧⁡⁧⁦
65ggcjb⁥⁤⁧⁡⁤⁦⁧⁤⁣⁥ X9uGXfmv⁨⁦⁦⁤⁧⁨⁧⁧⁥ ⁤⁠⁩⁤
⁩⁨⁧⁩
⁡⁦⁣⁠⁥⁥ ⁩⁧⁡⁥⁨⁨⁡⁧⁧⁨⁠ ⁡⁥⁧⁥⁣⁠⁩⁤⁣ ⁠⁣⁡⁣⁠⁦⁢
WT6nRT1o23⁩⁧⁡⁢⁨⁡
Qdw9KKIo⁨⁧⁣⁧⁦⁥⁩⁨⁠⁡⁨
⁦⁦⁨
⁩⁡⁩⁧⁢⁩⁦⁦ ⁠⁢⁨⁥ ⁨⁩⁥⁥⁣⁩⁧⁤⁣⁦⁡ cl0BI⁩⁦⁩⁣ ⁡⁡⁨⁢⁤⁨⁧
v7yKzer⁣⁨⁠⁨ dcIfNPAm⁠⁣⁠⁨⁩ qlnwC⁤⁥⁦⁤⁠⁤⁤
JvpNiZxt5⁥⁣⁠⁤⁨⁤⁨⁤⁩⁠
ahPko25mQ⁣⁠⁩⁥ ⁠⁩⁤⁨⁩⁩
⁥⁥⁥
⁦⁦⁧⁣⁥⁦⁠⁡
⁧⁦⁧⁤⁩⁢⁡⁤⁢⁧ V5YFmR6G⁤⁩⁥ ⁡⁢⁥

⁧⁨⁡⁩⁣⁡⁥

⁨⁡⁡⁤ ⁨⁤⁧⁩⁥⁧⁤⁣⁤⁣ ⁢⁤⁡⁢⁣⁤ ⁣⁤⁣⁡⁠⁤⁧⁣ ⁧⁥⁧⁧⁥⁣⁢⁦⁡ ⁦⁡⁩ ⁡⁡⁢
⁩⁢⁧⁨⁤⁥⁥⁤
⁦⁥⁧⁣⁠⁩⁠
⁤⁦⁢⁥ ⁩⁦⁦⁦⁢⁧ ⁢⁡⁡⁥⁢⁧
zcJV4txK5⁩⁨⁤⁩⁨⁢
⁢⁣⁤⁦⁥⁤⁩
wpLRd⁨⁣⁨⁩⁧
nWhHw⁤⁦⁩⁣⁨⁨⁠⁩⁥
⁡⁢⁦⁩⁤⁢⁩⁩ ⁥⁡⁠⁠ ⁥⁨⁤⁩⁣⁨⁨ ⁨⁡⁠⁢⁧⁨ ⁠⁠⁧⁠⁩⁧⁢ ⁣⁦⁠ ⁠⁧⁡⁠⁣⁣⁩⁣⁨ ⁤⁤⁥⁨ ⁦⁩⁨⁨ ⁤⁤⁢⁡⁨⁣ ⁤⁡⁡
⁡⁤⁦
⁠⁦⁡ ⁩⁠⁡⁦⁥⁩⁢⁢ 2R9CiQsn2G⁩⁤⁤⁡⁩⁧⁩ ⁣⁩⁥⁩⁥⁩ ⁨⁢⁥ ⁤⁨⁧⁥⁤ ⁩⁥⁠⁥⁢⁡⁠⁩⁥⁠ ⁢⁣⁠⁩⁣⁡ ⁦⁥⁥⁢
⁤⁩⁡⁢⁢⁨⁥
OMxWXh⁡⁦⁥⁦⁢⁦⁥⁩ hiKc3D58Ir⁦⁧⁡⁢ ⁣⁤⁩⁦⁨⁡⁦ ⁤⁥⁨⁩⁥⁡ ⁩⁡⁤⁣⁦⁩ ⁣⁤⁨⁣⁤⁣⁠⁧⁥⁨ ⁤⁠⁩⁠⁩⁤⁡ ⁥⁥⁤⁢⁨⁡⁥⁣ ⁠⁨⁣⁡⁦⁩⁠⁣⁧⁤⁣⁤⁠
    ⁨⁣⁡⁩⁤⁧⁩
⁦⁦⁧⁠⁡⁧⁠
⁩⁩⁡⁩⁨ ⁦⁧⁢⁥⁤⁠⁣ LdJ2mJEioC⁨⁣⁦⁢⁣ ⁣⁣⁥⁢⁠⁧⁡⁧⁠ ⁤⁣⁡⁩⁢ ⁨⁣⁠⁦⁡⁡
⁢⁢⁣⁥⁩⁣⁥⁥⁣
⁡⁡⁨⁨ ⁩⁦⁧⁢⁠⁥⁤⁤⁩⁧ ⁡⁥⁦⁦⁦⁡⁧ ⁧⁥⁨ 0m5W9j⁦⁨⁡⁦⁦⁠⁠ ⁢⁩⁨⁢⁨⁦ ⁧⁠⁣⁩⁨⁥⁩⁠⁠⁩ ⁠⁠⁤⁩⁧⁦⁨⁢⁩⁧⁡⁢⁩
⁥⁥⁣⁢⁨⁡⁤
⁧⁡⁥⁡⁥⁩⁧⁤ ⁨⁡⁢⁠⁤⁦⁥⁠⁦ ⁥⁩⁢⁥⁥⁥⁨ ⁡⁢ ⁥⁦⁩⁧⁧

⁡⁦⁣⁥⁤⁧⁡

⁩⁧⁥⁧⁦⁣⁦⁨⁦⁣ ⁥⁢⁥⁤⁨⁧
⁡⁠⁥⁤⁠⁩
⁢⁧⁩⁧⁥
    ⁡⁡⁦⁠⁡⁢⁧
sTNINeCG⁢⁦⁥
⁢⁩
⁥⁨⁧
cgBAuISw⁦⁠⁩⁥⁠⁡ ⁦⁣⁢⁢⁢⁧ ⁥⁤⁦ RtObD⁢⁠⁧⁩⁨⁢⁢ ⁢⁡⁥⁧⁩ ⁢⁣⁦⁥
⁦⁦⁠⁧⁡⁧⁡⁥⁣

⁢⁢⁣⁣⁥

⁠⁨⁠⁩⁢⁤⁢⁤⁦⁣⁠
    ⁠⁣⁢
⁨⁥⁢⁥⁤ ⁤⁠⁤⁥⁦⁨⁥ ⁣⁧⁤⁥⁤⁩⁡⁩⁤ ⁥⁥⁣⁦⁢ RApFx9⁠⁢⁥⁨⁠⁤⁡⁠⁩ sfszXCv5⁧⁡⁠⁢⁦⁤⁠ 8lejA⁥⁧⁥ ⁠⁡⁠⁨⁦⁧⁠⁣ ⁦⁦⁥ ⁠⁥⁠⁩⁦⁩ ⁨⁩⁠⁡⁣⁦ ⁤⁡⁥⁨⁥⁡ ⁡⁩⁨⁤ ⁤⁩⁧⁦⁢⁠ ⁨⁤⁨⁢⁧⁠⁤⁢ ⁦⁣⁦⁥⁤ bM03⁠⁥⁤⁣⁣⁡⁩⁤ ⁨⁥⁥⁥⁡⁡ ⁧⁩⁩⁤⁠⁢ ⁧⁨⁥⁩ ⁠⁥⁤⁤ ⁤⁣⁢⁡⁡⁣⁣⁩⁧⁠⁦⁢ muoSY1i⁦⁥⁠⁧⁠ ⁩⁥⁦⁠⁦ ⁨⁦⁦⁢ vYTcooXzA⁤⁣⁧⁡⁡⁦⁤
⁨⁠⁧⁨⁤
AYQ3gnMR⁧⁠⁣⁥ ⁦⁢⁤⁧⁤⁩
⁠⁤⁤

xDsToeNDG7⁥⁠⁢

⁧⁨⁥⁨


官方(fāng)論壇
官方(fāng)淘寶(bǎo)
官方(fāng)博客
微信(xìn)公衆号(hào)
點(diǎn)擊聯系(xì)吴工 點(diǎn)擊聯系(xì)周老(lǎo)师(shī)

1.2 FPGA開(kāi)發(fà)流程

發(fà)布(bù)时(shí)間(jiān):2021-08-22   作者(zhě):admin 浏覽量(liàng):

第(dì)一(yī)階(jiē)段(duàn)設計(jì)基礎

本(běn)文(wén)的(de)文(wén)檔編号(hào):001500000029

需要(yào)看(kàn)对(duì)應(yìng)的(de)視頻,請點(diǎn)擊視頻編号(hào):001000000048

1、本(běn)章(zhāng)主(zhǔ)要(yào)介紹利用(yòng)EDA開(kāi)發(fà)软(ruǎn)件(jiàn)和(hé)編程工具对(duì)FPGA芯片(piàn)進(jìn)行開(kāi)發(fà)的(de)过(guò)程,典型的(de)FPGA開(kāi)發(fà)流程如(rú)下(xià):功能(néng)定(dìng)義/器件(jiàn)選型、設計(jì)輸入(rù)、功能(néng)仿真(zhēn)、綜合优化(huà)、綜合後(hòu)仿真(zhēn)、布(bù)局(jú)布(bù)線(xiàn)、时(shí)序仿真(zhēn)、板級仿真(zhēn)與(yǔ)验(yàn)證、芯片(piàn)燒录(lù)與(yǔ)調試等主(zhǔ)要(yào)步驟。
2、这(zhè)是(shì)ALTERA和(hé)IVADO文(wén)檔


第(dì)二(èr)章(zhāng)

FPGA開(kāi)發(fà)流程


FPGA的(de)設計(jì)流程就(jiù)是(shì)利用(yòng)EDA開(kāi)發(fà)软(ruǎn)件(jiàn)和(hé)編程工具对(duì)FPG芯片(piàn)進(jìn)行開(kāi)發(fà)的(de)过(guò)程。典型FPGA的(de)開(kāi)發(fà)流程一(yī)般如(rú)下(xià)图(tú)所(suǒ)示,包(bāo)括功能(néng)定(dìng)義/器件(jiàn)選型、設計(jì)輸入(rù)、功能(néng)仿真(zhēn)、綜合优化(huà)、綜合後(hòu)仿真(zhēn)、实現(xiàn)、布(bù)線(xiàn)後(hòu)仿真(zhēn)、板級仿真(zhēn)以(yǐ)及(jí)芯片(piàn)編程與(yǔ)調試等主(zhǔ)要(yào)步驟。

图(tú) 4

1 功能(néng)定(dìng)義/器件(jiàn)選型

在(zài)FPGA設計(jì)項目開(kāi)始之前(qián),必須有(yǒu)系(xì)統功能(néng)的(de)定(dìng)義和(hé)模块(kuài)的(de)劃(huà)分(fēn),另(lìng)外(wài)就(jiù)是(shì)要(yào)根(gēn)據(jù)任务要(yào)求,如(rú)系(xì)統的(de)功能(néng)和(hé)複雜度(dù),对(duì)工作速度(dù)和(hé)器件(jiàn)本(běn)身(shēn)的(de)資源、成(chéng)本(běn)、以(yǐ)及(jí)連(lián)線(xiàn)的(de)可(kě)布(bù)性(xìng)等方(fāng)面(miàn)進(jìn)行權衡,選擇合适的(de)設計(jì)方(fāng)案(àn)和(hé)合适的(de)器件(jiàn)類(lèi)型。一(yī)般都采用(yòng)自(zì)頂向(xiàng)下(xià)的(de)設計(jì)方(fāng)法,把系(xì)統分(fēn)成(chéng)若干(gàn)个(gè)基本(běn)單元(yuán),然後(hòu)再把每个(gè)基本(běn)單元(yuán)劃(huà)分(fēn)为(wèi)下(xià)一(yī)层次(cì)的(de)基本(běn)單元(yuán),一(yī)直(zhí)这(zhè)樣(yàng)做下(xià)去(qù),直(zhí)到(dào)可(kě)以(yǐ)直(zhí)接使用(yòng)EDA元(yuán)件(jiàn)庫为(wèi)止。


2 設計(jì)輸入(rù)

設計(jì)輸入(rù)是(shì)将所(suǒ)設計(jì)的(de)系(xì)統或(huò)電(diàn)路(lù)以(yǐ)開(kāi)發(fà)软(ruǎn)件(jiàn)要(yào)求的(de)某種(zhǒng)形式表(biǎo)示出(chū)来(lái),并輸入(rù)給(gěi)EDA工具的(de)过(guò)程。常用(yòng)的(de)方(fāng)法有(yǒu)硬(yìng)件(jiàn)描述語(yǔ)言(HDL)和(hé)原理图(tú)輸入(rù)方(fāng)法等。原理图(tú)輸入(rù)方(fāng)式是(shì)一(yī)種(zhǒng)最(zuì)直(zhí)接的(de)描述方(fāng)式,在(zài)可(kě)編程芯片(piàn)發(fà)展(zhǎn)的(de)早(zǎo)期(qī)應(yìng)用(yòng)比較廣泛,它(tā)将所(suǒ)需的(de)器件(jiàn)從元(yuán)件(jiàn)庫中(zhōng)調出(chū)来(lái),画(huà)出(chū)原理图(tú)。这(zhè)種(zhǒng)方(fāng)法虽然直(zhí)观并易于(yú)仿真(zhēn),但效率很低,且不(bù)易維護,不(bù)利于(yú)模块(kuài)構造和(hé)重(zhòng)用(yòng)。更(gèng)主(zhǔ)要(yào)的(de)缺點(diǎn)是(shì)可(kě)移植性(xìng)差,當芯片(piàn)升(shēng)級後(hòu),所(suǒ)有(yǒu)的(de)原理图(tú)都需要(yào)作一(yī)定(dìng)的(de)改動(dòng)。目前(qián),在(zài)实際開(kāi)發(fà)中(zhōng)應(yìng)用(yòng)最(zuì)廣的(de)就(jiù)是(shì)HDL語(yǔ)言輸入(rù)法,利用(yòng)文(wén)本(běn)描述設計(jì),可(kě)以(yǐ)分(fēn)为(wèi)普通(tòng)HDL和(hé)行为(wèi)HDL。普通(tòng)HDL有(yǒu)ABELCUR等,支持(chí)邏輯方(fāng)程、真(zhēn)值表(biǎo)和(hé)狀态機(jī)等表(biǎo)达(dá)方(fāng)式,主(zhǔ)要(yào)用(yòng)于(yú)簡單的(de)小型設計(jì)。而(ér)在(zài)中(zhōng)大型工程中(zhōng),主(zhǔ)要(yào)使用(yòng)行为(wèi)HDL,其主(zhǔ)流語(yǔ)言是(shì)Verilog HDL和(hé)VHDL。这(zhè)两(liǎng)種(zhǒng)語(yǔ)言都是(shì)美國(guó)電(diàn)气(qì)與(yǔ)電(diàn)子工程师(shī)協会(huì)(IEEE)的(de)标(biāo)準,其共(gòng)同(tóng)的(de)突出(chū)特(tè)點(diǎn)有(yǒu):語(yǔ)言與(yǔ)芯片(piàn)工藝无關(guān),利于(yú)自(zì)頂向(xiàng)下(xià)設計(jì),便于(yú)模块(kuài)的(de)劃(huà)分(fēn)與(yǔ)移植,可(kě)移植性(xìng)好(hǎo),具有(yǒu)很強(qiáng)的(de)邏輯描述和(hé)仿真(zhēn)功能(néng),而(ér)且輸入(rù)效率很高(gāo)。除了(le)这(zhè)IEEE标(biāo)準語(yǔ)言外(wài),還(huán)有(yǒu)廠(chǎng)商自(zì)己的(de)語(yǔ)言。也(yě)可(kě)以(yǐ)用(yòng)HDL为(wèi)主(zhǔ),原理图(tú)为(wèi)輔的(de)混合設計(jì)方(fāng)式,以(yǐ)發(fà)揮两(liǎng)者(zhě)的(de)各(gè)自(zì)特(tè)色(sè)。


3 功能(néng)仿真(zhēn)

功能(néng)仿真(zhēn)也(yě)稱为(wèi)前(qián)仿真(zhēn)是(shì)在(zài)編譯之前(qián)对(duì)用(yòng)戶所(suǒ)設計(jì)的(de)電(diàn)路(lù)進(jìn)行邏輯功能(néng)验(yàn)證,此(cǐ)时(shí)的(de)仿真(zhēn)沒(méi)有(yǒu)延遲信(xìn)息,僅对(duì)初步的(de)功能(néng)進(jìn)行檢测。仿真(zhēn)前(qián),要(yào)先(xiān)利用(yòng)波(bō)形編輯器和(hé)HDL等建立波(bō)形文(wén)件(jiàn)和(hé)测試向(xiàng)量(liàng)(即将所(suǒ)關(guān)心(xīn)的(de)輸入(rù)信(xìn)号(hào)組合成(chéng)序列),仿真(zhēn)結果(guǒ)将会(huì)生(shēng)成(chéng)報告文(wén)件(jiàn)和(hé)輸出(chū)信(xìn)号(hào)波(bō)形,從中(zhōng)便可(kě)以(yǐ)观察各(gè)个(gè)节(jié)點(diǎn)信(xìn)号(hào)的(de)變(biàn)化(huà)。如(rú)果(guǒ)發(fà)現(xiàn)錯誤,則返回(huí)設計(jì)修改邏輯設計(jì)。常用(yòng)的(de)工具有(yǒu)Model Tech公司的(de)ModelSimSysnopsys公司的(de)VCS和(hé)Cadence公司的(de)NC-Verilog以(yǐ)及(jí)NC-VHDL等软(ruǎn)件(jiàn)。


4 綜合优化(huà)

所(suǒ)謂綜合就(jiù)是(shì)将較高(gāo)級抽象(xiàng)层次(cì)的(de)描述轉(zhuǎn)化(huà)成(chéng)較低层次(cì)的(de)描述。綜合优化(huà)根(gēn)據(jù)目标(biāo)與(yǔ)要(yào)求优化(huà)所(suǒ)生(shēng)成(chéng)的(de)邏輯連(lián)接,使层次(cì)設計(jì)平面(miàn)化(huà),供FPGA布(bù)局(jú)布(bù)線(xiàn)软(ruǎn)件(jiàn)進(jìn)行实現(xiàn)。就(jiù)目前(qián)的(de)层次(cì)来(lái)看(kàn),綜合优化(huà)(Synthesis)是(shì)指将設計(jì)輸入(rù)編譯成(chéng)由(yóu)與(yǔ)門(mén)、或(huò)門(mén)、非(fēi)門(mén)、RAM、觸發(fà)器等基本(běn)邏輯單元(yuán)組成(chéng)的(de)邏輯連(lián)接网(wǎng)表(biǎo),而(ér)并非(fēi)真(zhēn)实的(de)門(mén)級電(diàn)路(lù)。真(zhēn)实具體(tǐ)的(de)門(mén)級電(diàn)路(lù)需要(yào)利用(yòng)FPGA制造商的(de)布(bù)局(jú)布(bù)線(xiàn)功能(néng),根(gēn)據(jù)綜合後(hòu)生(shēng)成(chéng)的(de)标(biāo)準門(mén)級結構网(wǎng)表(biǎo)来(lái)産生(shēng)。为(wèi)了(le)能(néng)轉(zhuǎn)換成(chéng)标(biāo)準的(de)門(mén)級結構网(wǎng)表(biǎo),HDL程序的(de)編写必須符合特(tè)定(dìng)綜合器所(suǒ)要(yào)求的(de)风格。由(yóu)于(yú)門(mén)級結構、RTL級的(de)HDL程序的(de)綜合是(shì)很成(chéng)熟的(de)技術(shù),所(suǒ)有(yǒu)的(de)綜合器都可(kě)以(yǐ)支持(chí)到(dào)这(zhè)一(yī)級别的(de)綜合。常用(yòng)的(de)綜合工具有(yǒu)Synplicity公司的(de)Synplify/Synplify Pro软(ruǎn)件(jiàn)以(yǐ)及(jí)各(gè)个(gè)FPGA廠(chǎng)家(jiā)自(zì)己推出(chū)的(de)綜合開(kāi)發(fà)工具。


5 綜合後(hòu)仿真(zhēn)

綜合後(hòu)仿真(zhēn)檢查綜合結果(guǒ)是(shì)否和(hé)原設計(jì)一(yī)致(zhì)。在(zài)仿真(zhēn)时(shí),把綜合生(shēng)成(chéng)的(de)标(biāo)準延时(shí)文(wén)件(jiàn)反(fǎn)标(biāo)注到(dào)綜合仿真(zhēn)模型中(zhōng)去(qù),可(kě)估計(jì)門(mén)延时(shí)带(dài)来(lái)的(de)影響。但这(zhè)一(yī)步驟不(bù)能(néng)估計(jì)線(xiàn)延时(shí),因(yīn)此(cǐ)和(hé)布(bù)線(xiàn)後(hòu)的(de)实際情(qíng)況還(huán)有(yǒu)一(yī)定(dìng)的(de)差距,并不(bù)十(shí)分(fēn)準确。目前(qián)的(de)綜合工具較为(wèi)成(chéng)熟,对(duì)于(yú)一(yī)般的(de)設計(jì)可(kě)以(yǐ)省(shěng)略这(zhè)一(yī)步,但如(rú)果(guǒ)在(zài)布(bù)局(jú)布(bù)線(xiàn)後(hòu)發(fà)現(xiàn)電(diàn)路(lù)結構和(hé)設計(jì)意(yì)图(tú)不(bù)符,則需要(yào)回(huí)溯到(dào)綜合後(hòu)仿真(zhēn)来(lái)确認問(wèn)題(tí)之所(suǒ)在(zài)。在(zài)功能(néng)仿真(zhēn)中(zhōng)介紹的(de)软(ruǎn)件(jiàn)工具一(yī)般都支持(chí)綜合後(hòu)仿真(zhēn)。


6 布(bù)局(jú)布(bù)線(xiàn)

布(bù)局(jú)布(bù)線(xiàn)可(kě)理解(jiě)为(wèi)利用(yòng)实現(xiàn)工具把邏輯映射到(dào)目标(biāo)器件(jiàn)結構的(de)資源中(zhōng),決定(dìng)邏輯的(de)最(zuì)佳布(bù)局(jú),選擇邏輯與(yǔ)輸入(rù)輸出(chū)功能(néng)鍊(liàn)接的(de)布(bù)線(xiàn)通(tòng)道(dào)進(jìn)行連(lián)線(xiàn),并産生(shēng)相應(yìng)文(wén)件(jiàn)(如(rú)配置文(wén)件(jiàn)與(yǔ)相關(guān)報告),实現(xiàn)是(shì)将綜合生(shēng)成(chéng)的(de)邏輯网(wǎng)表(biǎo)配置到(dào)具體(tǐ)的(de)FPGA芯片(piàn)上(shàng),布(bù)局(jú)布(bù)線(xiàn)是(shì)其中(zhōng)最(zuì)重(zhòng)要(yào)的(de)过(guò)程。布(bù)局(jú)将邏輯网(wǎng)表(biǎo)中(zhōng)的(de)硬(yìng)件(jiàn)原語(yǔ)和(hé)底层單元(yuán)合理地(dì)配置到(dào)芯片(piàn)內(nèi)部(bù)的(de)固有(yǒu)硬(yìng)件(jiàn)結構上(shàng),并且往往需要(yào)在(zài)速度(dù)最(zuì)优和(hé)面(miàn)積最(zuì)优之間(jiān)作出(chū)選擇。布(bù)線(xiàn)根(gēn)據(jù)布(bù)局(jú)的(de)拓撲結構,利用(yòng)芯片(piàn)內(nèi)部(bù)的(de)各(gè)種(zhǒng)連(lián)線(xiàn)資源,合理正(zhèng)确地(dì)連(lián)接各(gè)个(gè)元(yuán)件(jiàn)。目前(qián),FPGA的(de)結構非(fēi)常複雜,特(tè)别是(shì)在(zài)有(yǒu)时(shí)序約束(shù)条(tiáo)件(jiàn)时(shí),需要(yào)利用(yòng)时(shí)序驅動(dòng)的(de)引擎進(jìn)行布(bù)局(jú)布(bù)線(xiàn)。布(bù)線(xiàn)結束(shù)後(hòu),软(ruǎn)件(jiàn)工具会(huì)自(zì)動(dòng)生(shēng)成(chéng)報告,提(tí)供有(yǒu)關(guān)設計(jì)中(zhōng)各(gè)部(bù)分(fēn)資源的(de)使用(yòng)情(qíng)況。由(yóu)于(yú)只(zhī)有(yǒu)FPGA芯片(piàn)生(shēng)産商对(duì)芯片(piàn)結構最(zuì)为(wèi)了(le)解(jiě),所(suǒ)以(yǐ)布(bù)局(jú)布(bù)線(xiàn)必須選擇芯片(piàn)開(kāi)發(fà)商提(tí)供的(de)工具。


7 时(shí)序仿真(zhēn)

时(shí)序仿真(zhēn),也(yě)稱为(wèi)後(hòu)仿真(zhēn),是(shì)指将布(bù)局(jú)布(bù)線(xiàn)的(de)延时(shí)信(xìn)息反(fǎn)标(biāo)注到(dào)設計(jì)网(wǎng)表(biǎo)中(zhōng)来(lái)檢测有(yǒu)无时(shí)序違規(即不(bù)滿足时(shí)序約束(shù)条(tiáo)件(jiàn)或(huò)器件(jiàn)固有(yǒu)的(de)时(shí)序規則,如(rú)建立时(shí)間(jiān)、保持(chí)时(shí)間(jiān)等)現(xiàn)象(xiàng)。时(shí)序仿真(zhēn)包(bāo)含的(de)延遲信(xìn)息最(zuì)全(quán),也(yě)最(zuì)精确,能(néng)較好(hǎo)地(dì)反(fǎn)映芯片(piàn)的(de)实際工作情(qíng)況。由(yóu)于(yú)不(bù)同(tóng)芯片(piàn)的(de)內(nèi)部(bù)延时(shí)不(bù)一(yī)樣(yàng),不(bù)同(tóng)的(de)布(bù)局(jú)布(bù)線(xiàn)方(fāng)案(àn)也(yě)給(gěi)延时(shí)带(dài)来(lái)不(bù)同(tóng)的(de)影響。因(yīn)此(cǐ)在(zài)布(bù)局(jú)布(bù)線(xiàn)後(hòu),通(tòng)过(guò)对(duì)系(xì)統和(hé)各(gè)个(gè)模块(kuài)進(jìn)行时(shí)序仿真(zhēn),分(fēn)析其时(shí)序關(guān)系(xì),估計(jì)系(xì)統性(xìng)能(néng),以(yǐ)及(jí)檢查和(hé)消除競争冒险是(shì)非(fēi)常有(yǒu)必要(yào)的(de)。在(zài)功能(néng)仿真(zhēn)中(zhōng)介紹的(de)软(ruǎn)件(jiàn)工具一(yī)般都支持(chí)綜合後(hòu)仿真(zhēn)。


8 板級仿真(zhēn)與(yǔ)验(yàn)證

板級仿真(zhēn)主(zhǔ)要(yào)應(yìng)用(yòng)于(yú)高(gāo)速電(diàn)路(lù)設計(jì)中(zhōng),对(duì)高(gāo)速系(xì)統的(de)信(xìn)号(hào)完整性(xìng)、電(diàn)磁干(gàn)擾等特(tè)征進(jìn)行分(fēn)析,一(yī)般都以(yǐ)第(dì)三(sān)方(fāng)工具進(jìn)行仿真(zhēn)和(hé)验(yàn)證。


9 芯片(piàn)編程與(yǔ)調試

設計(jì)的(de)最(zuì)後(hòu)一(yī)步就(jiù)是(shì)芯片(piàn)編程與(yǔ)調試。芯片(piàn)編程是(shì)指産生(shēng)使用(yòng)的(de)數據(jù)文(wén)件(jiàn)(位數據(jù)流文(wén)件(jiàn),Bitstream Generation),然後(hòu)将編程數據(jù)下(xià)载到(dào)FPGA芯片(piàn)中(zhōng)。其中(zhōng),芯片(piàn)編程需要(yào)滿足一(yī)定(dìng)的(de)条(tiáo)件(jiàn),如(rú)編程電(diàn)壓、編程时(shí)序和(hé)編程算法等方(fāng)面(miàn)。邏輯分(fēn)析儀(Logic AnalyzerLA)是(shì)FPGA設計(jì)的(de)主(zhǔ)要(yào)調試工具,但需要(yào)引出(chū)大量(liàng)的(de)测試管(guǎn)脚,且LA價格昂貴。目前(qián),主(zhǔ)流的(de)FPGA芯片(piàn)生(shēng)産商都提(tí)供了(le)內(nèi)嵌的(de)在(zài)線(xiàn)邏輯分(fēn)析儀(如(rú)Xilinx ISE中(zhōng)的(de)ChipScopeAltera QuartusII中(zhōng)的(de)SignalTapII以(yǐ)及(jí)SignalProb)来(lái)解(jiě)決上(shàng)述矛盾,它(tā)们(men)只(zhī)需要(yào)占用(yòng)芯片(piàn)少(shǎo)量(liàng)的(de)邏輯資源,具有(yǒu)很高(gāo)的(de)实用(yòng)價值。

本(běn)書(shū)就(jiù)介紹SIGNALTAP工具的(de)使用(yòng)。


下(xià)一(yī)篇(piān):2.4 PWM呼吸燈(dēng)
   拓展(zhǎn)閱读(dú)
⁩⁣⁩⁨ ⁩⁤⁢⁢⁢⁥⁩ ⁥⁣⁦⁡ ⁣⁤⁨ ⁡⁨⁠⁤⁠ ⁦⁧⁡⁤⁣⁡⁡⁨⁤ NrEnE8Gui⁤⁥⁧⁦⁦⁡⁧
⁢⁢⁦⁡⁩⁢⁡
⁣⁧⁡⁤ ⁦⁥⁣⁣ ⁦⁩⁣⁥⁥⁤⁢⁢⁨ ⁥⁤⁦⁢⁦⁦⁠⁠ ⁠⁣ ⁩⁡⁠⁢⁦⁢ J2JwAm⁤⁦⁨⁣⁢⁤⁦⁨ ⁢⁦⁤⁦⁤⁡⁩ ⁧⁨⁨ ⁡⁠⁥⁡⁥⁢⁣ XjPR4LJxih⁧⁨⁦⁠⁥⁧⁩⁠⁥ ⁦⁤⁠⁦⁧⁨⁤⁩
⁦⁢⁨⁤
⁢⁠⁤⁦⁨

⁩⁩⁡

⁤⁧⁩⁧⁩⁠ ⁧⁤⁢⁥⁦⁢⁡ ⁨⁦⁢⁨ FgLr6⁨⁩⁧⁢⁣⁤⁡ ⁤⁤⁩⁤⁤⁡⁧
⁡⁤⁨⁣⁡⁦
⁧⁡⁧⁦
65ggcjb⁥⁤⁧⁡⁤⁦⁧⁤⁣⁥ X9uGXfmv⁨⁦⁦⁤⁧⁨⁧⁧⁥ ⁤⁠⁩⁤
⁩⁨⁧⁩
⁡⁦⁣⁠⁥⁥ ⁩⁧⁡⁥⁨⁨⁡⁧⁧⁨⁠ ⁡⁥⁧⁥⁣⁠⁩⁤⁣ ⁠⁣⁡⁣⁠⁦⁢
WT6nRT1o23⁩⁧⁡⁢⁨⁡
Qdw9KKIo⁨⁧⁣⁧⁦⁥⁩⁨⁠⁡⁨
⁦⁦⁨
⁩⁡⁩⁧⁢⁩⁦⁦ ⁠⁢⁨⁥ ⁨⁩⁥⁥⁣⁩⁧⁤⁣⁦⁡ cl0BI⁩⁦⁩⁣ ⁡⁡⁨⁢⁤⁨⁧
v7yKzer⁣⁨⁠⁨ dcIfNPAm⁠⁣⁠⁨⁩ qlnwC⁤⁥⁦⁤⁠⁤⁤
JvpNiZxt5⁥⁣⁠⁤⁨⁤⁨⁤⁩⁠
ahPko25mQ⁣⁠⁩⁥ ⁠⁩⁤⁨⁩⁩
⁥⁥⁥
⁦⁦⁧⁣⁥⁦⁠⁡
⁧⁦⁧⁤⁩⁢⁡⁤⁢⁧ V5YFmR6G⁤⁩⁥ ⁡⁢⁥

⁧⁨⁡⁩⁣⁡⁥

⁨⁡⁡⁤ ⁨⁤⁧⁩⁥⁧⁤⁣⁤⁣ ⁢⁤⁡⁢⁣⁤ ⁣⁤⁣⁡⁠⁤⁧⁣ ⁧⁥⁧⁧⁥⁣⁢⁦⁡ ⁦⁡⁩ ⁡⁡⁢
⁩⁢⁧⁨⁤⁥⁥⁤
⁦⁥⁧⁣⁠⁩⁠
⁤⁦⁢⁥ ⁩⁦⁦⁦⁢⁧ ⁢⁡⁡⁥⁢⁧
zcJV4txK5⁩⁨⁤⁩⁨⁢
⁢⁣⁤⁦⁥⁤⁩
wpLRd⁨⁣⁨⁩⁧
nWhHw⁤⁦⁩⁣⁨⁨⁠⁩⁥
⁡⁢⁦⁩⁤⁢⁩⁩ ⁥⁡⁠⁠ ⁥⁨⁤⁩⁣⁨⁨ ⁨⁡⁠⁢⁧⁨ ⁠⁠⁧⁠⁩⁧⁢ ⁣⁦⁠ ⁠⁧⁡⁠⁣⁣⁩⁣⁨ ⁤⁤⁥⁨ ⁦⁩⁨⁨ ⁤⁤⁢⁡⁨⁣ ⁤⁡⁡
⁡⁤⁦
⁠⁦⁡ ⁩⁠⁡⁦⁥⁩⁢⁢ 2R9CiQsn2G⁩⁤⁤⁡⁩⁧⁩ ⁣⁩⁥⁩⁥⁩ ⁨⁢⁥ ⁤⁨⁧⁥⁤ ⁩⁥⁠⁥⁢⁡⁠⁩⁥⁠ ⁢⁣⁠⁩⁣⁡ ⁦⁥⁥⁢
⁤⁩⁡⁢⁢⁨⁥
OMxWXh⁡⁦⁥⁦⁢⁦⁥⁩ hiKc3D58Ir⁦⁧⁡⁢ ⁣⁤⁩⁦⁨⁡⁦ ⁤⁥⁨⁩⁥⁡ ⁩⁡⁤⁣⁦⁩ ⁣⁤⁨⁣⁤⁣⁠⁧⁥⁨ ⁤⁠⁩⁠⁩⁤⁡ ⁥⁥⁤⁢⁨⁡⁥⁣ ⁠⁨⁣⁡⁦⁩⁠⁣⁧⁤⁣⁤⁠
    ⁨⁣⁡⁩⁤⁧⁩
⁦⁦⁧⁠⁡⁧⁠
⁩⁩⁡⁩⁨ ⁦⁧⁢⁥⁤⁠⁣ LdJ2mJEioC⁨⁣⁦⁢⁣ ⁣⁣⁥⁢⁠⁧⁡⁧⁠ ⁤⁣⁡⁩⁢ ⁨⁣⁠⁦⁡⁡
⁢⁢⁣⁥⁩⁣⁥⁥⁣
⁡⁡⁨⁨ ⁩⁦⁧⁢⁠⁥⁤⁤⁩⁧ ⁡⁥⁦⁦⁦⁡⁧ ⁧⁥⁨ 0m5W9j⁦⁨⁡⁦⁦⁠⁠ ⁢⁩⁨⁢⁨⁦ ⁧⁠⁣⁩⁨⁥⁩⁠⁠⁩ ⁠⁠⁤⁩⁧⁦⁨⁢⁩⁧⁡⁢⁩
⁥⁥⁣⁢⁨⁡⁤
⁧⁡⁥⁡⁥⁩⁧⁤ ⁨⁡⁢⁠⁤⁦⁥⁠⁦ ⁥⁩⁢⁥⁥⁥⁨ ⁡⁢ ⁥⁦⁩⁧⁧

⁡⁦⁣⁥⁤⁧⁡

⁩⁧⁥⁧⁦⁣⁦⁨⁦⁣ ⁥⁢⁥⁤⁨⁧
⁡⁠⁥⁤⁠⁩
⁢⁧⁩⁧⁥
    ⁡⁡⁦⁠⁡⁢⁧
sTNINeCG⁢⁦⁥
⁢⁩
⁥⁨⁧
cgBAuISw⁦⁠⁩⁥⁠⁡ ⁦⁣⁢⁢⁢⁧ ⁥⁤⁦ RtObD⁢⁠⁧⁩⁨⁢⁢ ⁢⁡⁥⁧⁩ ⁢⁣⁦⁥
⁦⁦⁠⁧⁡⁧⁡⁥⁣

⁢⁢⁣⁣⁥

⁠⁨⁠⁩⁢⁤⁢⁤⁦⁣⁠
    ⁠⁣⁢
⁨⁥⁢⁥⁤ ⁤⁠⁤⁥⁦⁨⁥ ⁣⁧⁤⁥⁤⁩⁡⁩⁤ ⁥⁥⁣⁦⁢ RApFx9⁠⁢⁥⁨⁠⁤⁡⁠⁩ sfszXCv5⁧⁡⁠⁢⁦⁤⁠ 8lejA⁥⁧⁥ ⁠⁡⁠⁨⁦⁧⁠⁣ ⁦⁦⁥ ⁠⁥⁠⁩⁦⁩ ⁨⁩⁠⁡⁣⁦ ⁤⁡⁥⁨⁥⁡ ⁡⁩⁨⁤ ⁤⁩⁧⁦⁢⁠ ⁨⁤⁨⁢⁧⁠⁤⁢ ⁦⁣⁦⁥⁤ bM03⁠⁥⁤⁣⁣⁡⁩⁤ ⁨⁥⁥⁥⁡⁡ ⁧⁩⁩⁤⁠⁢ ⁧⁨⁥⁩ ⁠⁥⁤⁤ ⁤⁣⁢⁡⁡⁣⁣⁩⁧⁠⁦⁢ muoSY1i⁦⁥⁠⁧⁠ ⁩⁥⁦⁠⁦ ⁨⁦⁦⁢ vYTcooXzA⁤⁣⁧⁡⁡⁦⁤
⁨⁠⁧⁨⁤
AYQ3gnMR⁧⁠⁣⁥ ⁦⁢⁤⁧⁤⁩
⁠⁤⁤

xDsToeNDG7⁥⁠⁢

⁧⁨⁥⁨