DE2_115(DAY1)以niosii去控制板子上的led燈


從學校拿到一塊DE2_115,之前修DCLAB的時候只有接觸Verilog的部分,現在想要學習板子上niosii的使用,所以來go_through 板子上教學檔案中的範例,我用的版本是quartus17.1,本來用20.1但是20的eclipse要自己手動啟用很不方便,我就改用17.1

第一個想做的事情就是以板子上的niosii(ps)去print 出hello world還有控制上面的led閃爍

實驗構想:

step1:用qsys拉好niosii和板子上pl的連結
step2:在軟體中print 出hello_world和控制led閃爍

實作:
第一步:
1.在quartus中打開platform designer的頁面,然後主要用到的ip有五個
(1)nios processor(2)jtag uart(3)onchip_memory(4)system id peripheral(用於自動校驗的一個只讀模塊,用於確保軟件程序與Nios的硬件配置相匹配)
(5)pio---這個是為了之後要去控制led選用的
https://ithelp.ithome.com.tw/upload/images/20220201/20145199zSD1H5uLFP.png
2.照著拉完以後記得要在上方工具欄中的system=>assign base address
第二步:
1.在qurtus中要呼叫出剛拉好的qsys檔案和.v檔https://ithelp.ithome.com.tw/upload/images/20220201/20145199nWIrCGkhut.png
2.再新增一個叫做NiosII.v的檔案,內容如圖
https://ithelp.ithome.com.tw/upload/images/20220201/20145199udDBICD5MJ.png
3.最後再在上方工具欄中的tool=>timequest選項中新增一個.sdc file
https://ithelp.ithome.com.tw/upload/images/20220201/20145199uG8FvSysLg.png
4.這樣即可以去做analysis&synthesis
第三步:
1.要做pin assignment,在上方工具欄中的assignment中選擇pinplanner可以用gui的方式去給
(當然也可以直接寫到qsf file中,直接assign)
https://ithelp.ithome.com.tw/upload/images/20220201/20145199wSv2o9fh2j.png
2.做完了以後就可以compile design,如果過了的話就可以在上方工具欄中開啟tools=>
nios software buils tools for eclipse了
第四步:
1.開啟之後會是空的,在右上角選擇file=>new=>niosii application and bsp from template選擇在quartus中生成的sopc(system-on-a-programmable-chip)info filehttps://ithelp.ithome.com.tw/upload/images/20220201/20145199yuTLVY94mz.png
2.然後選擇hello world的範例模板,我將我的檔案名字取名叫test1
3.選完後會生成兩個檔案,一個是test1一個是test1_bsp,
https://ithelp.ithome.com.tw/upload/images/20220201/2014519975Wz0FvyJw.png
4.直接在test1的project點選右鍵選擇build project,然後在rus an Nios II hardware即可以在console print出hello world
5.如果要讓led閃爍的話可以把led燈改成這以下的code就可以讓led累加了
https://ithelp.ithome.com.tw/upload/images/20220201/201451997eA0sNeD5v.png

參考資料:https://ftp.intel.com/Public/Pub/fpgaup/pub/Teaching_Materials/current/Tutorials/Introduction_to_the_Qsys_Tool.pdf

#de2_115 #verilog #niosII #fpga







你可能感興趣的文章

14. Chain of Responsibility

14. Chain of Responsibility

Laravel Cors middleware

Laravel Cors middleware

[前端工具] CSS 預處理器:SCSS

[前端工具] CSS 預處理器:SCSS






留言討論