FPGA入门 Xilinx暑期学校学习Day2
早上的課程流程
1、SEA開發(fā)板簡介
這部分沒怎么聽,自己用的EGO1,聽起來SEA好用一些,而且本次課程的實驗指導(dǎo)書用的也是那個板子,EGO1要多花點時間了。
2、FPGA開發(fā)流程
利用Vivado進行FPGA開發(fā)設(shè)計的操作流程,比較固定,硬件描述語言設(shè)計,寫激勵仿真,進行引腳綁定,生成BIT流下到板子里調(diào)試,網(wǎng)上資料很多。
然后講了一些案例,Arduino+FPGA案例、ESP32+FPGA案例。這部分沒怎么聽懂,先把邸志雄老師的PPT放兩張在這里,以便日后學(xué)習(xí)。
3、組合邏輯與時序邏輯
(1)組合:c = a & b
(2)時序:c <= a & b
(時序邏輯多了觸發(fā)器)
(1)always @(*)
c = a & b
(2)always@(posedge clk)
c <= a & b
(賦值方式,時序邏輯用“<=”,組合邏輯用"=")
(I2C、SPI等接口協(xié)議類電路對時序要求嚴格)
4、可綜合Verilog HDL入門
HDL?硬件描述語言,特點是互連、并發(fā)、時間。
可綜合的四大法寶:if-else\always\case\assign
只能用于Testbench:for\function\fork-join\while
慎用Latch(鎖存器):綜合器不能過濾毛刺
解決方法:
(1)使用完備的if-else
(2)case設(shè)置default
(3)檢查綜合器報告,Latch會以warning形式報告
最后就是學(xué)習(xí)FPGA要有硬件思維,即代碼不是一行行的代碼,而是一塊一塊的硬件模塊。
實驗與課后習(xí)題
開始的4個實驗我沒有做完,完成實驗應(yīng)該不難,代碼和操作流程都在指導(dǎo)書上,自己要仿寫一下Testbench文件,開發(fā)板不同要換引腳,個人推薦利用IO planning進行引腳綁定,比新建XDC文件手動輸方便多了。
課后習(xí)題總結(jié)幾個犯過的錯誤吧
1、真的太低級太低級了,這次仿真頻率比較低,只有10、20Hz,我跑的時間太短了,半個周期都沒有跑完,所以分頻一直低電平、全0,檢查了好久才發(fā)現(xiàn)問題。
2、“complie error”與“elaborate error”
可以試著解決一下
3、等有空了,知識完備了再來整理一下reg、wire的使用。
總結(jié)
以上是生活随笔為你收集整理的FPGA入门 Xilinx暑期学校学习Day2的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux查看磁盘使用情况
- 下一篇: 从程序员的观点看 汉字国标与Unicod