<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > NIOS II系統入門(mén)實(shí)驗

NIOS II系統入門(mén)實(shí)驗

作者: 時(shí)間:2025-01-22 來(lái)源:EEPW編譯 收藏

1. 實(shí)驗內容

通過(guò)本實(shí)驗熟悉SOPC Builder和NIOS IDE的開(kāi)發(fā)環(huán)境及開(kāi)發(fā)流程,了解NIOS II的基本結構,能夠利用SOPC Builder和NIOS IDE實(shí)現簡(jiǎn)單的NIOS II系統和應用程序。

本文引用地址:http://dyxdggzs.com/article/202501/466540.htm

本實(shí)驗要求利用SOPC Builder創(chuàng )建一個(gè)簡(jiǎn)單的NIOS II系統,這個(gè)簡(jiǎn)單的NIOSII 系統括NIOS核、片內SRAM及PIO口;利用NIOS II IDE創(chuàng )建一個(gè)簡(jiǎn)單應用程序,能夠點(diǎn)亮核心板上的LED等。



2. 實(shí)驗步驟

2.1 NiosⅡ硬件設置

1. 工程建立:首先在Quartus II中新建一個(gè)名為nios的工程,點(diǎn)擊圖標。出現SOPC Builder對話(huà)框。在System Name對話(huà)框里設置Nios系統名nios_cpu。HDL語(yǔ)言選擇,如圖21-1所示。圖21-1 SOPC Builder對話(huà)框

圖21-1 SOPC Builder對話(huà)框

  1. SOPC組建添加:將Avalon Components中的選項中組建添加到自己的工程中,具體方法是將相關(guān)的組建拖進(jìn)右邊的對話(huà)框中,如圖21 2所示。主要有 Processor, Memory中的onchip_memory和Other里面的PIO。這里還需要會(huì )組建進(jìn)行設置:

a) 雙擊 Processor,選擇Nios Ⅱ/e型,點(diǎn)擊Finish。
b) 雙擊On-Chip Memory(RAM or ROM),Memory Type中選擇RAM,Size中Memory Width選擇32bits,Total Memory Size中選擇48Kbytes,其余選項默認,點(diǎn)擊Finish。
c) 雙擊PIO(Parall I/O),選項默認,點(diǎn)擊Finish。
右鍵單擊pio0選擇Rename,改名為L(cháng)EDPIO。
d) 點(diǎn)擊System下拉菜單的Auto-Assign Base Addresses,已完成Nios Ⅱ中各個(gè)模塊的基地址分配,以上步驟完成。

圖21-2 nios系統配置

圖21-2 nios系統配置

e) 點(diǎn)擊System Generation,點(diǎn)擊Generation,啟動(dòng)SOPC Builder生成你所選擇的模塊的HDL代碼。

  1. 返回QUARTUS Ⅱ,新建nios.bdf文件,添加剛建的nios_cpu,并添加相應輸入輸出引腳,并為輸入輸出引腳分配相應的FPGA管腳,完成如圖21 3,保存。編譯通過(guò)BLASTER下載到FPGA內。圖21-3 生成nios模塊

    圖21-3 生成nios模塊

啟動(dòng)nios II IDE后,會(huì )讓你輸入workspace,選擇剛才新建的NIOS工程所在的目錄,假設存在E:nios中,點(diǎn)擊OK進(jìn)入。如果在這里沒(méi)有選,也可以在進(jìn)入IDE后選擇File→Switch workspace中選擇。無(wú)論何種方式,最好在進(jìn)入之后選擇File→Switch workspace看目錄選擇是否正確(圖21-4)。

圖21-4 切換工作目錄

圖21-4 切換工作目錄

  1. 進(jìn)入 IDE,新建NiosⅡ C/C++ Application。點(diǎn)擊下一步,在Name中輸入項目的名字hello_led,在Select Project Template中選擇Hello LED,在SOPC Builder System中選擇NIOS所在的目錄下的.ptf文件,其余默認,點(diǎn)擊Finish,如圖21-5所示。圖21-5 建立Hello Led程序

    圖21-5 建立Hello Led程序

  2. 在QUARTUS Ⅱ將Nios下載硬核到FPGA,然后進(jìn)入Nios II IDE,在NiosⅡ C/C++ Projects里找到新建的hello_led,點(diǎn)擊右鍵選擇【Run As】→【NiosⅡ Hardware】(圖21-6),此時(shí)可以看到LED燈在閃爍。圖21-6  編譯運行程序

    圖21-6 編譯運行程序

注意:在這里我們使用的是Nios II中的軟件模板,程序中對PIO口的定義是LED_PIO,如圖 21-7所示。

圖21-7 Hello led源代碼

圖21-7 Hello led源代碼

所以在SOPC組建中PIO的名字一定要與之對應。 如圖21-8所示。

圖21-8 CPU配置圖

圖21-8 CPU配置圖


3. 實(shí)驗結果

實(shí)驗板上LEDG7-0燈按照一定的順序,交替閃爍。



關(guān)鍵詞: Nios II uClinux 操作系統 Verilog

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>