在基于ZedBoard的Linux系统下添加自定义硬件IP(2)——自定义硬件IP设计
来源:互联网 发布:linux怎么删除文件夹 编辑:程序博客网 时间:2024/04/29 22:17
硬件使用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内核。
- 在基于ZedBoard的Linux系统下添加自定义硬件IP(2)——自定义硬件IP设计
- 在基于ZedBoard的Linux系统下添加自定义硬件IP(1)——启动Linux系统
- 在基于ZedBoard的Linux系统下添加自定义硬件IP(3)——建立交叉编译环境
- 在基于ZedBoard的Linux系统下添加自定义硬件IP(4) ——驱动程序和应用程序编写
- zedboard--用户自定义IP核(pwm发生器)设计(二十)
- zedboard--用户自定义IP核(pwm发生器)设计(二十)
- Zedboard自定义AXI总线IP详解(多图)
- ZedBoard Vivado 自定义IP流水灯
- 最小物联网系统设计——添加硬件
- 基于全硬件TCP/IP的产品应用实例
- ZedBoard学习手记(二) 开发自定义AXI总线外设IP核——以LED和开关为例
- 【基于EDK的嵌入式系统】 关于Xilinx EDK添加自定义IP核到PLB总线后linux无法boot的问题
- zedboard--基于demo系统的用户ip核的添加和驱动编写(书13.2完整实现过程)(二十一)
- 如何在LINUX下实现硬件的自动检测(下)
- linux 下查看硬件信息(mac,IP地址,硬盘型号,序列号等)
- 如何在LINUX下实现硬件的自动检测(上)
- 在linux系统添加ip别名
- 在linux系统添加ip别名
- ZOJ 3860: - Find the Spy
- 对数据库数据操作之查找
- POJ-1201-Intervals(差分约束)
- 未加载mfc120ud.i386.pdb:VS2013调试MFC程序解决方法
- css3高级滤镜-光照滤镜
- 在基于ZedBoard的Linux系统下添加自定义硬件IP(2)——自定义硬件IP设计
- springmvc中复杂数据绑定以及表单回显实现
- iOS多线程
- Container With Most Water
- Oracle之分组查询
- ZOJ 3861 - Valid Pattern Lock
- jQuery 参考手册 - Ajax
- poi导出excel
- Android中Bitmap,byte[],Drawable,InputStream相互转化工具类