FPGA開(kāi)發(fā)流程概述
開(kāi)始學(xué)習(xí)FPGA,想盡快上手FPGA開(kāi)發(fā),那么先來(lái)了解一下FPGA的開(kāi)發(fā)流程。

1、需求分析到模塊劃分
需求說(shuō)明文檔;器件選擇(邏輯資源、功耗、IO數(shù)量、封裝等等);配置電路考慮;開(kāi)發(fā)工具選擇;電路板的可拓展性考慮;在線(xiàn)調(diào)試和板級(jí)調(diào)試考慮;分模塊設(shè)計(jì)。
2、設(shè)計(jì)輸入到綜合優(yōu)化
設(shè)計(jì)輸入:原理圖、Verilog、VHDL
綜合:指的是將較高層次的電路描述轉(zhuǎn)化成較為低層的電路描述。就是將設(shè)計(jì)代碼轉(zhuǎn)成底層的與門(mén)、非門(mén)、RAM、觸發(fā)器等基本邏輯單元相互連接而成的網(wǎng)表,綜合工具使用Synplicity的Synplify,也可使用器件廠(chǎng)商提供的開(kāi)發(fā)工具進(jìn)行實(shí)現(xiàn)(實(shí)現(xiàn)指的是:翻譯、映射、布局布線(xiàn))。
代碼設(shè)計(jì)完成后,最好先使用開(kāi)發(fā)工具進(jìn)行語(yǔ)法檢測(cè),之后進(jìn)行功能仿真,此處仿真不涉及時(shí)序上的延時(shí)。仿真工具首推ModelTech公司的ModelSim,也可以用ISE的Quartus 2進(jìn)行簡(jiǎn)單仿真。
3、實(shí)現(xiàn)到時(shí)序收斂
實(shí)現(xiàn):
翻譯---將綜合后的結(jié)果轉(zhuǎn)化成所選器件的底層模塊和硬件原語(yǔ);
映射---將翻譯的結(jié)果映射到具體器件上;
布局布線(xiàn)---根據(jù)用戶(hù)的設(shè)計(jì)約束,進(jìn)行布局布線(xiàn),完成FPGA內(nèi)部邏輯的連接;
時(shí)序收斂:(設(shè)計(jì)關(guān)鍵,必須滿(mǎn)足時(shí)序收斂)
工具的最紅布局布線(xiàn)滿(mǎn)足設(shè)計(jì)者輸入的時(shí)序約束要求。
4、仿真到板級(jí)調(diào)試

仿真和板級(jí)調(diào)試用于主要的驗(yàn)證。FPGA的板級(jí)調(diào)試一個(gè)很大的問(wèn)題在于同步觀(guān)察接口信號(hào)數(shù)量受限,很難觀(guān)測(cè)內(nèi)部信號(hào)節(jié)點(diǎn)的狀態(tài),假若純板級(jí)調(diào)試,就消耗太大的人力物力了。
FPGA仿真很重要,但是和其他軟件開(kāi)發(fā)中的仿真概念不大一樣。時(shí)序電路,邏輯的每一步變化都是由時(shí)終沿來(lái)觸發(fā)的,調(diào)試時(shí)控制時(shí)鐘頻率顯然不能達(dá)到單步的效果。
開(kāi)發(fā)團(tuán)隊(duì)一般不會(huì)嚴(yán)格地執(zhí)行所有的三次仿真,一般做行為仿真和時(shí)序仿真,當(dāng)我們熟練的可以編寫(xiě)可綜合的代碼,我們只需要進(jìn)行功能仿真,時(shí)序仿真也一般不做,我們會(huì)花時(shí)間去做深入細(xì)致的時(shí)序約束,通過(guò)時(shí)序報(bào)告分析解決時(shí)序問(wèn)題。
關(guān)于FPGA的調(diào)試有很多種方法,借助示波器和邏輯分析儀的調(diào)試方法最常用。如ISE的Chipscope、Quartus 2、SignalTap 2。練習(xí)的時(shí)候可以使用Quartus 2 。
關(guān)于Quaryus 2的開(kāi)發(fā)流程,在該軟件的help---PDF_Tutorials---Verilog HDL users:

Quartus 2的工程建立、使用、編譯,在此就不一一贅述,但是要明白Task窗口的編譯步驟:
Compile Design ---- 使用說(shuō)明
Analysis & Synthesis ---- 分析綜合
Fitter(Place & Route) ---- 適配(布局布線(xiàn))
Assembler(Generate programming files)---- 產(chǎn)生相應(yīng)的編程下載配置的文件,一般是 bit數(shù)據(jù)流,sof/pof格式
TimeQuest Timing Analysis ---- 時(shí)序分析
EDA Netlist Writer ---- 給 Quartus 2 支持的第三方提供網(wǎng)表
Program Derice (Open Programmer) ---- 配置
-
FPGA
+關(guān)注
關(guān)注
1656文章
22305瀏覽量
630818 -
FPGA開(kāi)發(fā)
+關(guān)注
關(guān)注
1文章
47瀏覽量
15758
發(fā)布評(píng)論請(qǐng)先 登錄
【開(kāi)源FPGA硬件】硬件黑客集結(jié):開(kāi)源FPGA開(kāi)發(fā)板測(cè)評(píng)活動(dòng)全網(wǎng)火熱招募中......
FPGA板下載運(yùn)行調(diào)試流程
FPGA板下載調(diào)試流程
京微齊力新版福晞軟件工具全面優(yōu)化FPGA設(shè)計(jì)環(huán)境
單片機(jī)開(kāi)發(fā)流程包括什么?
Vector全流程開(kāi)發(fā)工具鏈概述
擁抱開(kāi)源!一起來(lái)做FPGA開(kāi)發(fā)板啦!
Thread標(biāo)準(zhǔn)認(rèn)證概述
適用于Versal的AMD Vivado 加快FPGA開(kāi)發(fā)完成Versal自適應(yīng)SoC設(shè)計(jì)
基于RV1126開(kāi)發(fā)板的AI算法開(kāi)發(fā)流程
基于RV1126開(kāi)發(fā)板的AI算法開(kāi)發(fā)流程
FPGA設(shè)計(jì)調(diào)試流程

FPGA開(kāi)發(fā)流程概述
評(píng)論