從學校拿到一塊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選用的
2.照著拉完以後記得要在上方工具欄中的system=>assign base address
第二步:
1.在qurtus中要呼叫出剛拉好的qsys檔案和.v檔
2.再新增一個叫做NiosII.v的檔案,內容如圖
3.最後再在上方工具欄中的tool=>timequest選項中新增一個.sdc file
4.這樣即可以去做analysis&synthesis
第三步:
1.要做pin assignment,在上方工具欄中的assignment中選擇pinplanner可以用gui的方式去給
(當然也可以直接寫到qsf file中,直接assign)
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 file
2.然後選擇hello world的範例模板,我將我的檔案名字取名叫test1
3.選完後會生成兩個檔案,一個是test1一個是test1_bsp,
4.直接在test1的project點選右鍵選擇build project,然後在rus an Nios II hardware即可以在console print出hello world
5.如果要讓led閃爍的話可以把led燈改成這以下的code就可以讓led累加了
參考資料:https://ftp.intel.com/Public/Pub/fpgaup/pub/Teaching_Materials/current/Tutorials/Introduction_to_the_Qsys_Tool.pdf