歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> 在基於ZedBoard的Linux系統下添加自定義硬件IP(2)——自定義硬件IP設計

在基於ZedBoard的Linux系統下添加自定義硬件IP(2)——自定義硬件IP設計

日期:2017/3/3 13:54:20   编辑:Linux技術
硬件使用C語言在Vivado HLS裡面設計,完成了最簡單的兩個輸入數據的乘法和求和。具體的下載鏈接:http://download.csdn.net/detail/young_fly/9509703 。
(1)硬件IP設計
出下圖中可以看到,輸入為a,b,輸出位accum。選擇的軟硬件接口為AXI4-Lite。

(2)硬件IP打包
編譯通過之後,點擊工具欄的Export RTL,將IP打包成Pcore,在impl / pcores文件夾下會生成打包好的IP文件。如下圖所示。


(3)硬件IP加載到XPS工程
將(2)中生成的硬件IP添加到XPS工程中,復制粘貼到工程下的pcores文件夾中。添加IP到工程,可以在address 選項下看到IP的地址。接下來在Port選項下,選擇該IP的中斷接口,添加中斷。添加完IP後,可以看到IP的中斷號為66。地址和中斷號在我們修改devicetree.dtb文件的時候都是需要的。
在XPS裡面選擇Generate Bitstream,會生成system.bit。最後選擇Export Design,將工程導入SDK。接下來在SDK裡面完成BOOT.BIN的生成。

(4)BOOT.BIN文件生成
在SDK選擇新建應用程序,並命名為FSBL,下一步選擇Zynq FSBL, 編譯該工程,會生成FSBL.elf文件。

接著在Xilinx Tools菜單下選擇Create Zynq Boot Image,並按1.FSBL.elf 2.system.bit 3.u-boot.elf的順序添加文件。選擇Create Image生成BOOT.BIN。

(5)devicetree.dtb修改
設備樹文件的修改是在ubuntu Linux系統下進行的,如下圖所示。特別的外設信息的中斷號比XPS添加外設時顯示的中斷號要小32。
devicetree.dtb 的源文件digilent-zed.dts 是在源Linux系統中的,而且我們也需要在ubuntu Linux的交叉編譯環境下,編譯Zedboard上的Linux內核,從而生成zImage。下一篇博客會介紹ubuntu linux 下建立交叉編譯環境,並編譯Linux內核。
Copyright © Linux教程網 All Rights Reserved