Vivado的helloword计划(一个):硬件project部分
硬件平台:ZedBoard
软件平台:vivado2013.3
本演示样例通过综合、实现,生成比特流,发送到SDK实现。
启动vivado而且创建一个项目
依据提示操作一步步创建新项目的时候记得选择RTL Project
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
板子选择ZedBoard。其它默认。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
创建一个IP综合设计
在IP Integrator中选择Create Block Design
在Create Block Design弹出页。为IP子系统设计定义个名字
在IP子系统中。在中间的Diagram中选择Add IP
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
在搜索页。输入zynq找到ZYNQ7 Processing System IP
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
在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连接起来
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
使用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的连接。布局完毕的连线例如以下所看到的:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
打开Address Editor标签页,这里是我们所使用的IP的内存映射,在这里有两个IP:GPIO和BRAM Controller,一般来说Vivado会自己主动分配这些内存映射。我们也能够改动它,这里把AXI BRAM Controller改成64K。
保存配置(CTRL+S)。
在工具栏那里,通过Validate Designbutton执行DRC(Design-Rules-Check)
假设成功会弹出成功的对话框。
生成HDL设计文件
在Sources窗体,右击顶层子系统设计选择Generate Output Products,这会生成用于结构图IP核的源文件和相关的约束文件。
还是在顶层子系统设计选择Create HDL Wrapper创建一个顶层HDL文件
完毕设计并生成比特流
在Flow Navigator中,点击Generate Bitstream完毕设计并生成比特流(这一步时间会非常长)
在生成比特流后,选择Open Implemented Design
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFrZTgyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
将硬件信息导入到SDK
在这一步,我们将硬件信息导入到SDK,这一步须要将板子电源接上,而且把PROG和UART都已经连接电脑。详细例如以下所看到的:
1.在Flow Navigator,选择Open Block激活IP综合设计。
从Vivado菜单中选择Export Hardware for SDK,
在弹出的对话框中,确保Export Hardware,Include bitstream,Launch SDK都已经选择了。
至今。高端硬件。开始SDK操作软件的一部分。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
Vivado的helloword计划(一个):硬件project部分的更多相关文章
- Vivado的helloword程序:硬件工程部分
硬件平台:ZedBoard软件平台:vivado2013.3 本示例通过综合.实现,生成比特流,发送到SDK实现.启动vivado并且创建一个项目根据提示操作一步步创建新项目的时候记得选择RTL Pr ...
- Vivado的helloword程序:软件工程部分
建立工程 Export结束后,会自动启动SDK.界面如下.可以看到工程浏览器Project Explorer中已经有一个硬件平台hw_platform_0,里面有一系列配置和初始化文件.不要修改这些文 ...
- myeclipse 第一个web project
创建一个java project. 不行...js文件是javascript代码的文件.应该放在web目录下...java文件是后台管理的程序代码.放在src目录下...不同的... 那是不是把所 ...
- 一个Web Project引用多个Java Project在Eclipse下的配置--转载
项目结构: 项目由一个Web Project和多个Java Project构成,Web Project需要引用其它Java Project的类和Jar包.开发时用Eclipse3.5和Tomcat调试 ...
- WinHEC(Windows硬件project产业创新峰会)将2015回归
WinHEC这是Windows Hardware Engineering Cumminity,中国呼吁Windows硬件project产业创新峰会.将2015在早期的回报,2015年3月18日至19日 ...
- Spring Framework5.0 学习(1)—— 用Gradle构建一个Java Project
1.0 安装Gradle,参考之前文章<Gradle入门实战(Windows版)> 2.0 使用gradle 快速生成一个Java project gradle init --type ...
- 使用eclipse插件创建一个web project
使用eclipse插件创建一个web project 首先创建一个Maven的Project如下图 我们勾选上Create a simple project (不使用骨架) 这里的Packing 选择 ...
- 18 12 30 新建一个 django project
1. 新建一个 django project 1 2 django-admin.py startproject project_name 特别是在 windows 上,如果报错,尝试用 django- ...
- 有个性的手动计划模式(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 任务工作表里默认的标题"工期"."开始时间"."结束时间"这些 ...
随机推荐
- core graphics path
当UIKit无法满足画图需求的时候.就须要用到Core Graphics API.当中最普遍的就是path. 一些重要的概念 graphics context 能够理解成canvas.在ios里相应C ...
- linux下一个C语言flock功能使用 .
表头文件 #include<sys/file.h> 定义函数 int flock(int fd,int operation); 函数说明 flock()会依參数operation所指 ...
- JQuery Easy Ui (Tree树)详解(转)
第一讲:JQuery Easy Ui到底是什么呢? 首先咱们知道JQuery是对Java Script的封装,是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等.. JQuery ui是在j ...
- Android 4.0新组件:GridLayout详细说明
于Android 4.0(API 14)它提供了一个新的组件GridLayout,它继承自Linearlayout,用于执行网络格样式布局. 在某些方面,GridLayout与TableLayout和 ...
- Android:自己定义PopupMenu的样式(显示图标/设置RadioButton图标)
PopupMenu是Android中一个十分轻量级的组件.与PopupWindow相比,PopupMenu的可自己定义的能力较小,但使用更加方便. 先上效果图: 本例要实现的功能例如以下: 1.强制显 ...
- DB2 “The transaction log for the database is full” 存在的问题及解决方案
DB2在执行一个大的insert/update操作的时候报"The transaction log for the database is full.. "错误,查了一下文档是DB ...
- WPF/Silverlight中图形的平移,缩放,旋转,倾斜变换演示
原文:WPF/Silverlight中图形的平移,缩放,旋转,倾斜变换演示 为方便描述, 这里仅以正方形来做演示, 其他图形从略. 运行时效果图:XAML代码:// Transform.XAML< ...
- 谷歌技术面试要点(Google面试)(14年5月20日交大专场)
技术面试的主题 1.简要自我介绍: 姓名.学校.专业 做过的项目与实习 个人主要成就 2.技术评估: 构建与开发算法 编程 计算机基础知识 数据结构 现实世界问题解决能力 设计问题(主要针对博士生) ...
- iOS:编译错误 linker command failed with exit code 1 (use -v to see invocation)
将project不加入.m要求加入 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzI0MzQ2OQ==/font/5a6L5L2T/fontsi ...
- define a class for a linked list and write a method to delete the nth node.
1.问题 define a class for a linked list and write a method to delete the nth node. 2.算法 template <t ...