在調試Nios程式階段,通常需要先将配置檔案(*.sof)通過 JTAG 下載下傳刡到FPGA 中,接着在Nios II IDE視窗中,右擊工程名,選擇Debug as -> Nios II hardware 來實作核心軟體的調試,調試中的代碼在開發闆再次上電後會丢失,如何固化Nios程式呢,詳細步驟如下:
1. 下載下傳配置檔案(*.sof)
首先,需要将 usb blaster 與開發闆連接配接,我們先将其與開發闆的 JTAG 模式接口相連。然後我們打開 NIOS IDE 軟體(假設我們已經将工程編譯好了),打開後,點選下圖所示紅圈處
點選後,如下圖所示,然後點選下圖紅圈處(Add File)
點選後,如下圖所示,選擇 led.sof
選擇後,如下圖所示,然後點選 Start
點選後,成功了如下圖所示
2. 下載下傳核心軟體程式(*.elf)
接下來開始下載下傳程式到 EPCSx 中,我們必須将配置資訊和 NIOS 程式同時下載下傳到配置晶片中,點選下圖所示紅圈處
點選後,如下圖所示,其中需要将紅圈 1、 2、 4 選中,紅圈 3 不用選。
選中紅圈1 是将 NIOS 軟體程式寫到 FLASH 中,而到底是寫到哪裡,是由前面我們講過的 CPU中 Reset Vector 的 memory 決定。也就是說,我們之前選擇了 epcs,那麼我們就是将代碼下載下傳到EPCSX 中了。
選中紅圈 2 是将 FPGA 的配置檔案下載下傳到FLASH 中,而這裡到底下載下傳到哪是由紅圈 5 處決定的,我們在這裡還是選擇 epcs,就是将配置檔案下載下傳到 EPCSX 中。其實 EPCSX 實質就是一種串行的 FLASH。
紅圈 3 是将檔案下載下傳到 flash 中,比如說字庫檔案啊,波形檔案啊等等,将這些檔案直接存儲到FLASH 中,隻需要讀取就可以了。不過這個選項跟我們下載下傳配置檔案和 NIOS程式時沒有關系的,是以返裡不選擇它。
圈4勾選的是Validata Nios II system ID before software download,即在下載下傳軟體程式之前要确認系統的ID号,這樣每次在QuartusII中修改“硬體”(即.sof檔案)或在Nios II IDE中修改“軟體”(即.elf檔案)後能報警提示,確定硬體與軟體最新版本同步。
上面選擇好以後,點選 Apply,然後點選 Program Flash,就可以開始燒寫 FLASH了,至此,如何将 FPGA 配置檔案和 NIOS 的程式下載下傳到 EPCSx(x 為 1,4,16…)裡面的過程就說完了。
3. 參考:
(1)NIOSII那些事兒 REV7.0_完整版-CSDN下載下傳
https://download.csdn.net/download/snaking616/10719292
(2)Altera FPGA帶NiosII核心程式的JTAG下載下傳方法總結_百度文庫
https://wenku.baidu.com/view/5fd49863f18583d048645950.html