码迷,mamicode.com
首页 > 其他好文 > 详细

Vivado的helloword程序(一):硬件工程部分

时间:2015-03-16 23:12:11      阅读:435      评论:0      收藏:0      [点我收藏+]

标签:vivado   fpga   

硬件平台:ZedBoard

软件平台:vivado2013.3

本示例通过综合、实现,生成比特流,发送到SDK实现。

启动vivado并且创建一个项目

根据提示操作一步步创建新项目的时候记得选择RTL Project

技术分享


板子选择ZedBoard,其他默认。

技术分享


创建一个IP综合设计

在IP Integrator中选择Create Block Design

技术分享


在Create Block Design弹出页,为IP子系统设计定义个名字

技术分享


在IP子系统中,在中间的Diagram中选择Add IP

技术分享技术分享


在搜索页,输入zynq找到ZYNQ7 Processing System IP

技术分享技术分享


在Diagram页,点击Run Block Automation,然后Run Block Automation对话框打开,选择/processing_system7_1,这时,会出现一个对话框,这个IP核会自动为FIXED_IO和DDR接口创建外部连接,点击OK。

技术分享技术分享


用同样的方法,我们增加外设,在Diagram右击,选择Add IP,在搜索页,输入gpio找到AXI GPIO IP,点击enter确认添加,重复上述步骤,输入axi bram添加AXI BRAM Controller;输入block加入Block Memory Generator。完成之后的窗口如下所示:

技术分享


根据要求定制IP核

双击Block Memory Generator进入Re---customize IP界面,在Basic页,将Mode设置为BRAM Controller,Memory Type设置为True Dual Port RAM。其中AXI BRAM Controller为Block Memory Generator提供AXI内存映射接口。

技术分享技术分享


通过点击连接点并拖动连线将Block Memory Generator与AXI BRAM Controller连接起来

技术分享

技术分享

使用Designer Assistance

Block Designer Assistance可以帮助我们将AXI GPIO和AXI BRAM Controller连接到Zynq-7000 PS。

1.点击Run Connection Automation然后选择/axi_gpio_1/s_axi将GPIO IP和BRAM Controller连接到Zynq PS上

技术分享

技术分享


2.再次选择Run Connection Automation,连接/axi_gpio_1/gpio,然后会弹出一个对话框,选择板子接口为leds_8bits。这一步可是配置IP核,创建一些必要的文件约束(XDC)

技术分享技术分享


3.再次再次选择Run Connection Automation,选择剩下的/axi_bram_ctrl_1/S_AXI选项,这样就完成了Zynq7 PS与AXI BRAM Controller的连接。布局完成的连线如下所示:

技术分享

技术分享


打开Address Editor标签页,这里是我们所使用的IP的内存映射,在这里有两个IP:GPIO和BRAM Controller,一般来说Vivado会自动分配这些内存映射,我们也可以修改它,这里把AXI BRAM Controller改成64K。

技术分享技术分享


保存配置(CTRL+S);

在工具栏那里,通过Validate Design按钮运行DRC(Design-Rules-Check)

技术分享

技术分享

如果成功会弹出成功的对话框。


生成HDL设计文件

在Sources窗口,右击顶层子系统设计选择Generate Output Products,这会生成用于结构图IP核的源文件和相关的约束文件。

技术分享技术分享


还是在顶层子系统设计选择Create HDL Wrapper创建一个顶层HDL文件

技术分享

技术分享

完成设计并生成比特流

在Flow Navigator中,点击Generate Bitstream完成设计并生成比特流(这一步时间会很长)

技术分享

技术分享

在生成比特流后,选择Open Implemented Design

技术分享

技术分享

将硬件信息导入到SDK

在这一步,我们将硬件信息导入到SDK,这一步需要将板子电源接上,并且把PROG和UART都已经连接电脑。具体如下所示:

技术分享


1.在Flow Navigator,选择Open Block激活IP综合设计。

技术分享

技术分享

从Vivado菜单中选择Export Hardware for SDK,

技术分享技术分享


在弹出的对话框中,确保Export Hardware,Include bitstream,Launch SDK都已经选择了。

技术分享

技术分享

至此,硬件部分结束,开始在SDK进行软件部分的操作。

Vivado的helloword程序(一):硬件工程部分

标签:vivado   fpga   

原文地址:http://blog.csdn.net/yake827/article/details/44307869

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!