




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 基于FPGA軟核,定制你的SoCDate: 2016 12.29Author: Aric Wang打造自己的CPU,自己的System On Chip!本文以Step by step的方式Guide You來定制你自己的NIOS-II軟核SoC,并創(chuàng)建C語言的流水燈測試程序,運行在自己做的CPU系統(tǒng)上。軟件:Quartus II 12.0, Nios II 12.0 Software Build Tools For Eclipse. (在安裝Quartus II時,所需軟件 一起安裝。)硬件:FPGA跑起Linux, UCOS-II等RTOS,是可行的,據(jù)相關人士的測試數(shù)據(jù)該軟核在FPGA上
2、性能介入ARM7-ARM9.一, 詳細步驟定制1, 打開Quartus II 并且新建一個空的工程。File -> New Project WizardClick the Next button.Click Next.選擇與開發(fā)板對應的FPGA芯片。Click NextClick Next.最后Finish. 如下圖:2, 使用SOP Builder 工具來生成自己的軟核Tools->SOP BuilderClick OK, if Qsys 提示.從左邊Panel的Tree 里選擇Nios Processor雙擊Processors->Nios ProcessorReset&
3、#160;Vector是復位后啟動時的Memory類型和偏移量 Exception Vector是異常情況時的Memory類型和偏移量。 現(xiàn)在還不能配置,需要RAM設置好以后才能修改這里.一路點擊Next,最后Finish.接下面我們要添加片內RAM 選擇左邊目錄樹下的 Memories and Memory Controllers -> On-Chip -> On-Chip Memory (RAM
4、;or ROM) 本例中我只使用1024bytes.接下來建立一個SystemID System ID就是一種標示符,類似校驗和的這么個東西,在你下載程序之前或者重啟之后,都會對它進行檢驗,以防止錯誤發(fā)生。 在左邊窗口的Peripherals-> Debug and performance -> System ID Per
5、ipheral 雙擊System ID Peripheral接下來創(chuàng)建JTAG UART 首先 JTAG UART是實現(xiàn)PC和Nios II系統(tǒng)間的串行通信接口,它用于字符的輸入輸出,在Nios II的開發(fā)調試過程中扮演了重要的角色,接下來我們開始建立它的模塊。 選擇sopc builder主窗口左邊 Interface Protocols->
6、;Serial-> JTAG UART接下來要添加一個PIO模塊(Parallel I/O)其中Width 表示要建立的PIO寬度是多少,我們的板上有8個LED,選擇寬度為8,Direction復選框中表示要建立的PIO的方向,分別表示 Bidirectional(tristate) ports (雙向三態(tài)口) Input ports only (僅僅作為輸入口)
7、; Both input and output ports (作為輸入和輸出口) Output ports only (僅僅作為輸出口) 在本實驗中,將要實現(xiàn)的是點亮LED,所以這個新建的PIO采用Output ports only(僅輸出口)方式查看配置的結果:重命名系統(tǒng) 內組件。雙擊cpu并設置內存點擊 Finish. 執(zhí)行System菜單上的Auto-As
8、sign Base Addresses 自動分配一下地址。開始編譯,經(jīng)過耐心等待后,程序編好了,查看下最后的輸出如下:最后一行顯示Info: System generation was successful,產(chǎn)生成功。 點擊Exit退出,會回到quartusii主界面。新建一個Block Diagram/Schematic File在丁板上雙擊左鍵:點擊,放在丁板上,放好后,在NIOS軟核kernel上點擊右鍵后點擊Generate Pins for symbol
9、;ports雙擊out_port_from_the_pio_led7.0拉出來的端口符號,重命令分配引腳有多種方法,常用的為tcl腳本分配,建立一個文件,取名為nios2.tcl,文件內容如下:set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED" set_location_assignment PIN_16 -to clk_0 set_location_assignment PIN_17 -to reset_n set_location_assignment PIN_10 -to
10、led0 set_location_assignment PIN_11 -to led1 set_location_assignment PIN_26 -to led2 set_location_assignment PIN_35 -to led3 set_location_assignment PIN_27 -to led4 set_location_assignment PIN_28 -to led5 set_location_assignment PIN_33 -to led6 set_location_assignment PIN_34 -to led7保存到工程目錄下。菜單上Tool
11、s-> Tcl Scripts 運行剛剛的腳本。右擊選DeviceSaveall, 會提示你nios2.bdf保存到哪里?直接點確認,我們此例中就保存在示例目錄下 3, 執(zhí)行菜單Processing -> Start Compilation,開始進行編譯編譯完成,下載固件程序到EPCS1或使用JTAG下載到RAM.二, 生成C語言的程序并調試運行1, 以管理員方式運行Nios II 12.0 Software Build Tools for Eclipse新建 一個測試程序:點擊Finish.替換Demo程序的源碼如下:#include "stdio.h"#include "unistd.h"#include "system.h"#define _LED 1typedef structunsigned long int DATA;unsigned long int DIRECTION;unsigned long int INTERRUPT_MASK;unsigned long int EDGE_CAPTURE;PIO_STR;#ifdef _LED#define LED
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 油茶承包協(xié)議書
- 生產(chǎn)調度培訓教材
- 油墨合同協(xié)議書
- 公職人員廉政協(xié)議書
- 遷移墳墓用工合同協(xié)議
- 車輛批量采購合同協(xié)議
- 車輛私人定制合同協(xié)議
- 抖音用戶服務協(xié)議
- 旅游咨詢顧問服務合同
- 農(nóng)村房屋改造與翻建協(xié)議
- 2023醫(yī)美術后科學修護指南
- 2023年廣西物流職業(yè)技術學院教師招聘考試筆試題庫及答案
- 湖北省天門市2024屆中考聯(lián)考生物試題含解析
- 廣佛環(huán)線佛山西站至廣州北站段項目輸電線路遷改工程環(huán)境影響報告表
- 火龍罐技術課件
- 小學英語四年級下冊Unit 1 Part B Read and write教學設計2
- 風電場專用箱式變電站技術要求編制說明
- 社會沖突理論課件
- (21)-9.1《藝術學概論》第九章第一節(jié) 藝術批評的含義與性質、原
- 部編版語文八年級下冊第五單元游記散文閱讀練習(含解析)
- GB/T 42602-2023大型鍛鋼件的鍛造規(guī)范
評論
0/150
提交評論