標籤:
數位管硬體開發建立原理圖
- 開啟Quartus II 11.0,建立一個工程,File -> New Project Wizard…,忽略Introduction,之間單擊?Next>?進入下一步。分別設定工程工作目錄、工程名稱。這裡需要注意的是工程工作目錄中請使用英文,不要含有空格等,否則在後面使用Nios II IDE的時候會出現問題。設定好後1所示。然後進行下一步。這裡工程命名為lab6_seg
2、添加已經存在的檔案,這裡沒有需要添加的檔案,直接單擊?Next>?進入下一步。進行器件設定。使用的?是Cyclone IV家族的?EP4CE6E22C8晶片,選擇好後直接進入下一步。進行EDA工具設定,由於工程中不進行模擬等,故不進行設定,如果需要進行ModelSim模擬,則在Simulation行中,選擇Tool Name?為ModelSim-Altera(這雷根據所安裝的ModelSim版本進行選擇),Format(s)選擇為Verilog HDL(這裡也是根據所掌握的硬體描述語言進行選擇)。點擊?Next>?,進入了Summary(摘要)頁面,然後單擊?Finish?完成即可。
3、建立?Block Diagram/Schematic File?(方塊圖/原理圖檔案)。單擊?File -> New..,選擇Design Files中的Block Diagram/Schematic File,單擊OK即可。
?
QSys調用模組
- 啟動Qsys?工具,進行IP模組的調用。單擊?Tools -> Qsys ?,進入Qsys設定介面。系統已經預設添加了時鐘模組,名稱為?clk_0?,這裡選中?clk_0,右擊,選擇Rename,將其名稱更改為clk。以下再添加任何模組,都進行類似的名稱更改,更改名稱的方法類似,就不在重複敘述了。
- 添加軟核處理器的各部分模組。總共需要添加
Nios II Processor、
JTAG UART、
System ID Peripheral
EPCS Serial Flash Controller
Sdram controller
Pio
timer
這7個模組。首先熟悉一下?Qsys?的介面。左面Component Library,是系統提供的元件庫,裡面有一些構成處理器的常用模組。右面是已經添加到系統的模組,也就是說,Nios II?軟核處理器是可以定製的,根據具體需要來。在Component Library中搜尋Nios II Processor,雙擊即可進行配置。首先需要選擇的是Nios II?核心的類型。Nios II?軟核的核心共分成三種,為e型、s型以及f型。e型核佔用的資源最少,功能也最簡單,速度最慢。s型核佔用資源其次,功能和速度較前者都有所提升,f型核的功能最多,速度最快,相應的佔用資源也最多,選擇的時候根據需求和晶片資源來決定,這裡選擇s核。然後單擊?Finish,結束當前配置。
?
?
- 添加SDRAM Controller,這裡使用的SDRAM晶片,大小為64M??????B = 1M x 16Bit x 4Banks,具體的其他內容大家可以查看其datesheet。
重新命名為sdram;
- 添加EPCS/EPCQx1 Serial Flash Controller,這裡不用進行任何設定,直接單擊Finish完成即可。
- 添加Jtag下載調試介面。在元件庫中搜尋?jtag uart。雙擊進行設定。由於系統沒有特殊要求,因此這裡選擇預設配置即可。單擊?Finish?結束當前配置。
- 添加系統ID模組。系統ID是系統與其他系統區別的唯一標識。在元件庫中搜尋?system id peripheral,雙擊進行設定。這裡隨便進行設定,如設定為123。單擊?Finish,結束當前配置。
- 添加PIO,作為數位管的段選訊號。雙擊開啟後,根據實際需要選擇位寬(Width)和方向(Direction),所以Width設定為8,Direction設定為Output。單擊Finish完成設定。
重新命名如下:
- 添加PIO,作為數位管的位選訊號。雙擊開啟後,根據實際需要選擇位寬(Width)和方向(Direction),所以Width設定為4,Direction設定為Output。單擊Finish完成設定。
- 添加定時器模組timer
- 連線,即將右面?Connections欄目中的相關線通過設定節點進行串連。首先所有模組的clk串連起來。
然後片記憶體儲器sdram的s1和處理器nios2的data_master和instruction_master相連。
JTAG調試模組jtag_uart的avalon_jtag_slave和處理器nios2的data_master相連。
系統ID模組sysid_qsys的control_slave和處理器nios2的data_master相連。
?
- Seg_duan模組的S1串連處理器nios2的data_master;
設定Seg_duan的輸出連接埠,並重新命名連接埠名;
- Seg_wei模組的S1串連處理器nios2的data_master;
設定Seg_wei的輸出連接埠,並重新命名連接埠名;
- timer模組的S1串連處理器nios2的data_master;
- 設定複位訊號。
- 處理器nios2的中斷和jtag_uart的中斷、epcs_flash的中斷、定時器中斷相串連。
- epcs_flash後面的小鎖單擊,將其鎖上。
- 進行軟核的相關設定。首先雙擊nios2,進入處理器設定模組。在Core Nios II標籤下,Reset vector memory設定為epcs_flash.epcs_control_port,Exception vector memory設定為sdram.s1,然後單擊Finish完成設定。
- 單擊?System -> Assign Base Addresses,這時候會發現下部Messages視窗中原先的錯誤全部沒有了,變為0 Errors,0 Warnings。如果不是這個結果,返回去按步驟檢查。
- 單擊?File -> Save,進行儲存,這裡儲存檔案名稱為lab6_seg。
- 最後,選擇Generation選項卡,設定Create simulation model為None,然後單擊下面的Generate,進行產生。時間較長,大家耐心等待。
- 完成後單擊close即可,然後關閉Qsys回到Quartus II介面。
原理圖添加IP模組
參照實驗二(led),重新呼叫指令碼對引腳進行配置
nios II--實驗7——數位管IP硬體部分