本文介紹一個FPGA 開源項目:Micro Blaze最小系統(tǒng)。MicroBlaze是Xilinx提供的一個軟核IP,該軟核是由FPGA片內(nèi)邏輯資源組成,其功能相當(dāng)于一個CPU。利用Micro Blaze,設(shè)計師可以輕松實現(xiàn)一些FPGA難以實現(xiàn)的復(fù)雜算法。
下面圍繞各IP核參數(shù)配置、Block Design的創(chuàng)建、以及Xilinx SDK應(yīng)用工程的創(chuàng)建進(jìn)行簡要介紹。
01軟硬件平臺
02Block Design
搭建MicroBlaze最小系統(tǒng)主要用到以下幾個IP核:Clocking Wizard、 MIG 7 Series、 MicroBlaze、AXI Uartlite。
2.1 時鐘和MIG
首先,在BD工程中添加Clocking Wizard以及MIG IP核,對于IP核參數(shù)的具體配置在前面的文章中有詳細(xì)介紹。然后將時鐘模塊的輸出時鐘信號以及復(fù)位信號與MIG IP進(jìn)行連接,如下圖所示:
2.2 MicroBlaze
在Block Design中添加MicroBlaze IP核,并進(jìn)行如下參數(shù)配置:
- Predefined Configurations :選擇 Current Settings ;
- 優(yōu)化方式 :選擇默認(rèn)的 PERFORMANCE 即可;
- 啟用調(diào)試接口 :Enabla MicroBlaze Debug Module Interface;
- 啟用指令和數(shù)據(jù)緩存;
- General 參數(shù)配置:如上圖所示,保持默認(rèn)配置即可;
- 對于 指令和數(shù)據(jù)緩存 的配置 : 同樣保持默認(rèn)的參數(shù)配置;
- Debug :調(diào)試接口參數(shù)配置,選擇 BASIC ,其余參數(shù)采用默認(rèn)配置;
- Buses :啟用AXI數(shù)據(jù)流接口,通過該接口,MicroBlaze訪問AXI-Lite總線數(shù)據(jù);
然后,點擊 Run Block Automation ,MicroBlaze的輸入時鐘選擇MIG IP核提供的100MHz用戶時鐘。
點擊 Run Connection Automation ,參數(shù)按照上圖所示進(jìn)行配置。自動連線完成后,得到下圖所示的BD工程:
2.3 AXI Uartlite
在該最小系統(tǒng)中,額外添加一個串口外設(shè):AXI Uartlite,通過串口輸出驗證MicroBlaze最小系統(tǒng)是否正常工作,如果有需要還可以添加其它外設(shè),如GPIO、INTIC等。
需要對串口波特率進(jìn)行配置,這里選擇115200,其余參數(shù)默認(rèn)即可:
然后點擊 Run Connection Automation ,將串口模塊AXI時鐘選擇為MIG輸出的100M時鐘:
2.4 Block Design
自動連線完成后,最終得到的BD工程如下圖所示:
然后依次執(zhí)行 Reset Output Products , Generate Output Products, Create HDL Wrapper 。對輸入時鐘以及串口的管腳進(jìn)行配置后,最后點擊生成bit流文件。
03創(chuàng)建Xilinx SDK工程
生成bit流文件后,點擊File->Export->Export Hardware,并勾選 Include bitstream ,然后單擊 Launch SDK,打開SDK軟件。
在SDK軟件中,點擊File->New->Application Project,創(chuàng)建應(yīng)用程序。輸入工程名字,然后點擊 Next 。在提供的例程里,選擇 Hello World ,驗證串口輸出功能。
工程創(chuàng)建好后,選擇 Debug As -> Run Configurations,勾選 Reset entire system,以及Program FPGA。然后點擊 Debug。
在SDK Terminal中添加好串口并配置波特率115200,運(yùn)行代碼后,串口打印輸出“Hello World“。
04實現(xiàn)功能
該Vivado工程主要是搭建了一個MicroBlaze最小系統(tǒng)并添加了AXI串口模塊,在Xilinx SDK軟件中利用C語言實現(xiàn)了串口打印功能。后續(xù)在此工程基礎(chǔ)上,可以利用MicroBlaze軟核實現(xiàn)更加復(fù)雜的功能。
-
FPGA
+關(guān)注
關(guān)注
1643文章
21950瀏覽量
613746 -
Xilinx
+關(guān)注
關(guān)注
73文章
2181瀏覽量
124276 -
MicroBlaze
+關(guān)注
關(guān)注
3文章
68瀏覽量
21853 -
IP核
+關(guān)注
關(guān)注
4文章
338瀏覽量
50427 -
最小系統(tǒng)
+關(guān)注
關(guān)注
9文章
253瀏覽量
29438
發(fā)布評論請先 登錄
FPGA最小系統(tǒng)板設(shè)計資料下載
FPGA最小系統(tǒng)配置電路的設(shè)計
FPGA硬件最小系統(tǒng)設(shè)計的視頻教程資料免費(fèi)下載

FPGA的最小系統(tǒng)電路原理圖免費(fèi)下載

Multisim 12.0 搭建并仿真51單片機(jī)最小系統(tǒng)

STM32最小系統(tǒng)搭建(原理圖)

Nios ii最小系統(tǒng)搭建教程

評論