【從零開(kāi)始走進(jìn)FPGA】美好開(kāi)始——我流啊流啊流
3. 代碼編譯
本文引用地址:http://m.butianyuan.cn/article/268641.htm(1)通過(guò)Processing-Start Compilation,或者工具欄的圖標(biāo)如下:
(2)編譯結(jié)果如下,可見(jiàn)相關(guān)信息:
(3)警告的分析及解決:
a) Warming(4)如上圖所示,具體解釋如下:
i. 沒(méi)有電容配置
ii. 沒(méi)有把unused的pin設(shè)置為三態(tài)。在Assignment-Device-Device and Pin Opitions-Unused Pins,設(shè)置如下圖所示:
iii. 沒(méi)有電容配置
iv. 可以忽略
b) Critical Warming(5)如上圖所示,具體解釋如下:
i. 引腳沒(méi)有分配IO
ii. 沒(méi)有sdc時(shí)序約束文件
iii. 沒(méi)有sdc約束文件
iv. 時(shí)序沒(méi)有達(dá)到要求
v. 時(shí)序沒(méi)有達(dá)到要求
出現(xiàn)這些警告的原因是因?yàn)?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/Quartus II">Quartus II 10.1以后的版本軟件,不再自帶TimeQuest Timing Analyzer,只有Classic Timing Analyzer,雖然不加sdc時(shí)序約束對(duì)于一般情況也不一定會(huì)有錯(cuò),但軟件設(shè)計(jì)的必然會(huì)出現(xiàn)這樣的警告。關(guān)于TimingQuest sdc,會(huì)在后續(xù)章節(jié)中闡述,此處不做具體說(shuō)明。
關(guān)于Quartus II 警告信息分析以及零警告的處理,可以右擊警告查看help,altera會(huì)告訴您相應(yīng)的解決方案;此外,Bingo已上傳Chinaaet“Quartus II 警告分析.pdf”,下載地址為:http://www.chinaaet.com/lib/detail.aspx?id=86271
初學(xué)折有不到之處可以查閱該pdf,記住,永遠(yuǎn)不要輕易忽略警告。
三、Modelsim-Altera仿真
1. 為什么要仿真
首先討論兩個(gè)問(wèn)題:
(1)仿真?是真的嗎?
仿真,只是為了模擬真實(shí)現(xiàn)象,測(cè)試代碼的行為以及時(shí)序的正確性;當(dāng)然,仿真永遠(yuǎn)是模仿的,不可能是絕對(duì)準(zhǔn)確的,只能在一定程度上模擬真實(shí)時(shí)序,讓我們的設(shè)計(jì)變得更可靠。仿真對(duì)于電路設(shè)計(jì)者,只是一個(gè)軟件測(cè)試的平臺(tái),而不是實(shí)際硬件設(shè)施的測(cè)試結(jié)果。
(2)一定要仿真嗎?
未必!如果你有足夠的把握時(shí)序的準(zhǔn)確性,腦子里能夠完成整個(gè)電路的時(shí)序邏輯工作流程,仿真就不是那個(gè)必須的了;對(duì)于已經(jīng)成型的模塊,保證時(shí)序準(zhǔn)確的情況下,何必在徒勞的仿真呢?按常理,是現(xiàn)有Quartus II軟件,再有仿真軟件的吧,Testbench只是測(cè)試程序,鏈接兩者之間的橋梁。
回想,在n年前的老工程師,用block中用與非門與74系列芯片設(shè)計(jì)的原理圖,要仿真似乎變得很難?那些老前輩們是通過(guò)實(shí)物的測(cè)試,不斷的修正、改善,最后才得到可靠的電路。
因此,仿真 不是必須的。Bingo就經(jīng)常不仿真!不是說(shuō)懶,是因?yàn)槟X子中的電路時(shí)序邏輯,本能性的能夠保證電路的準(zhǔn)確性,或者說(shuō)出了問(wèn)題能夠自行改正,不會(huì)失去了方向。所謂代碼在電腦上,電路在腦子中,每一句行為級(jí)語(yǔ)言,都加增添一個(gè)電路。
當(dāng)然,并非每一個(gè)人都可以這樣子的。對(duì)于初學(xué)者而言,仿真是非常重要的一個(gè)過(guò)程。原因是因?yàn)樵诔鯇W(xué)者腦子中,還未呈現(xiàn)固定邏輯實(shí)現(xiàn)的時(shí)序工作流程,換句話說(shuō),經(jīng)驗(yàn)不夠豐富吧。
當(dāng)然在時(shí)序很復(fù)雜而且龐大時(shí),時(shí)序仿真是必須的,因?yàn)樵谶@種情況下,大腦的模擬也許無(wú)法跟計(jì)算機(jī)的計(jì)算速度比擬了。
前文安裝Quartus II 軟件章節(jié)有提到過(guò),Quartus II 9.1以前版本,軟件自帶仿真器,而9.1以后的版本,需要第三方軟件的支持。第三放仿真軟件有很多,而用的最多的,固然是Modelsim-Altera。本章節(jié)中Quartuus II 11.0與Modelsim-Altera協(xié)同工作,仿真測(cè)試本例程的代碼的時(shí)序。希望通過(guò)節(jié)的分析,對(duì)時(shí)序邏輯上有一個(gè)更深刻的認(rèn)識(shí)。
fpga相關(guān)文章:fpga是什么
c++相關(guān)文章:c++教程
評(píng)論