Xilinx Vivado的使用详细介绍(2):综合、实现、管脚分配、时钟设置、烧写
前面一篇介绍了从新建工程一直到编写代码进行行为仿真,这篇继续进行介绍。
修改器件型号
新建工程时选择过器件型号,如果新建好工程后需要修改型号,可以选择菜单Tools - Project Settings
。
弹出窗口中,点击Project Device
右侧的按钮,即可选择器件型号。
综合(Synthesis)
综合类似于编程中的编译。
在Flow Navigator
或Flow
菜单中,选择Synthesis - Run Synthesis
;或点击工具栏中的三角形按钮如图,即可开始对设计文件进行综合。
综合以及后面的实现等操作,耗时较长,可以在底部的Design Runs
窗口查看进度。
如果没有找到这个窗口,在菜单中选择
Window - Design Runs
即可打开。
综合完成后,会弹出如下窗口。如果选择第一项并点击OK
,就会启动下一步的实现。为了方便学习,这里我们直接点击Cancel
。
实现(Implementation)
综合完成后,需要进行实现,操作如图。
实现完成后,同样会出现一个窗口如下。选择第一项可以打开下一步的IO口设置界面,选择第一项可以启动后面要说的生成比特流操作。同样,这里还是点击Cancel
关闭。
IO口配置(I/O Planning)/编辑约束文件(Edit Constraints Sets)
做好的模块,在烧写进板子之前,需要设置输入输出信号与板子上IO口的对应关系。
IO口设置有两种方法,第一种是直接创建并编辑约束文件,第二种是在图形界面进行设置。
编辑约束文件
如果对约束文件的格式有了解,IO口的配置,可以直接通过手动编辑约束文件实现。右击文件夹或空白处,选择Edit Constraints Sets
。
在弹出窗口中添加约束文件,点击OK
。
打开文件按格式进行编辑即可。
图形界面配置管脚
在实现完成后,Open Implemented Design
选项从灰色变成可点击状态。
点击Open Implemented Design
,即可打开Implemented Design
窗口。
在I/O Ports
窗口展开管脚,对于每个输入输出信号,在Site
栏选择对应的管脚,注意确保Fixed
栏处于勾选状态,I/O Std
常选择LVCMOS33
。
设置好后,Implemented Design
窗口标题栏会显示一个*
号,表示设置发生了更改。
按Ctrl+S
快捷键保存设置,会弹出窗口如图,提示保存constraints
文件会导致综合与实现过期。也就是说,修改了管脚分配设置后,需要重新进行综合、实现操作。这里点击OK
。
弹出窗口,选择Create a new file
并输入文件名,点击OK。
此时test.xdc
约束文件已经自动被创建并编辑,可以打开查看。
时钟信号
很多电路需要有时钟信号进行驱动,通常在开发板上都有一个外部时钟信号输入。例如在Basys3开发板中,从电路图可以看出,W5管脚外接了一个100MHz的时钟。因此可以设置100MHz时钟输入信号clk对应管脚W5。
如果需要的时钟频率不是100MHz,可以自行编写分频器取得需要的频率,或者配置IP核中的时钟Clocking Wizard
来实现。IP核的具体使用方法将在后面再进行介绍。
重新进行综合与实现
IO口设置进行了修改,需要重新综合与实现。
生成比特流
生成比特流文件,这个文件会被直接烧写进板子。类似于编程中的二进制可执行文件。
错误处理
由于程序编写问题、管脚分配问题,生成比特流文件容易发生错误。
在Message
窗口可以看到发生错误的原因。
右击选择Search for Answer Record
可以在论坛搜索这个问题,寻找解决方法。
烧写程序
选择Program and Debug - Open Hardware Manager
。
Hardware Manager
窗口即被打开。
用USB连接开发板。如果之前连接过开发板,直接点击上方绿色栏的Open recent target
即可打开;如果是第一次连接开发板,则点击Open a new hardware target
。
点击Next
。
还是点击Next
。
显示下面窗口,稍后即可打开硬件设备。
由于手头暂时没有开发板,后面的步骤就不截图先简单说一下。有了板子再截图补上。
打开设备后,就会在Hardware
窗口显示。右击设备并选择Program......
。
弹出比特流文件选择窗口,一般直接按默认值点击确认,即可烧写程序到板子中。
Xilinx Vivado的使用详细介绍(2):综合、实现、管脚分配、时钟设置、烧写的更多相关文章
- xilinx Vivado的使用详细介绍(2):创建工程、添加文件、综合、实现、管脚约束、产生比特流文件、烧写程序、硬件验证
xilinx Vivado的使用详细介绍(2):创建工程.添加文件.综合.实现.管脚约束.产生比特流文件.烧写程序.硬件验证 Author:zhangxianhe 新建工程 打开Vivado软件,直接 ...
- Xilinx Vivado的使用详细介绍(1):创建工程、编写代码、行为仿真
Xilinx Vivado的使用详细介绍(1):创建工程.编写代码.行为仿真 Author:zhangxianhe 新建工程 打开Vivado软件,直接在欢迎界面点击Create New Projec ...
- Xilinx Vivado的使用详细介绍(3):使用IP核
ilinx Vivado的使用详细介绍(3):使用IP核 Author:zhangxianhe IP核(IP Core) Vivado中有很多IP核可以直接使用,例如数学运算(乘法器.除法器.浮点运算 ...
- Xilinx Vivado的使用详细介绍(4):Zedboard+vivado之流水灯(加SDK)
Vivado+zedboard之初学流水灯 Author:zhangxianhe 环境:vivado 2016.3(已验证适用于2015.4) 开发板:Zedboard version xc7z020 ...
- Xilinx Vivado的使用详细介绍(5):调用用户自定义封装的IP核
Zedboard OLED Display Controller IP v1 介绍 Author:zhangxianhe 本文档提供了快速添加,连接和使用ZedboardOLED v1.0 IP内核的 ...
- 72.xilinx vivado zynq vdma仿真及应用详解(一)
很多人用zynq平台做视频图像开发,但是对vdma了解比较少,上手起来稍微有些困难,我针对这一现象,做了一个基于vivado和modelsim的仿真和应用测试工程,并写篇文章做些介绍,希望能对大家有帮 ...
- Python 模块EasyGui详细介绍
转载:无知小德 Python 模块EasyGui详细介绍 EasyGui 官网: http://easygui.sourceforge.net 官方的教学文档:http://easygui-docs- ...
- 一、Python 模块EasyGui详细介绍
Python 模块EasyGui详细介绍 EasyGui 官网: -http://easygui.sourceforge.net 官方的教学文档: -easygui-docs-0.96\tutoria ...
- kvm详细介绍
KVM详解,太详细太深入了,经典 2016-07-18 19:56:38 分类: 虚拟化 原文地址:KVM详解,太详细太深入了,经典 作者:zzjlzx KVM 介绍(1):简介及安装 http:// ...
随机推荐
- POJ--2406Power Strings+KMP求字符串最小周期
题目链接:点击进入 事实上就是KMP算法next数组的简单应用.假设我们设这个字符串的最小周期为x 长度为len,那么由next数组的意义,我们知道len-next[len]的值就会等于x.这就是这个 ...
- java 生成二维码后叠加LOGO并转换成base64
1.代码 见文末推荐 2.测试 测试1:生成base64码 public static void main(String[] args) throws Exception { String dat ...
- http中的get和post的区别
get:相当于查找数据,从server中取数据,不会改变server端的数据: post:相当于更新数据,他会更新server端的数据: 所有的http操作(增删改查)都能通过对应的get和post获 ...
- jqPlot图表插件学习之阴阳烛图
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
- IBM应该请我去做Domino产品设计架构师
作者: 亓锋 2012年11月19日16:56 来源: 速途专栏 ...
- 转:OGRE 源码编译方法
编译及运行环境:Windows 7 . vs2010. 编译前的准备: 1.想编译OGRE,最起码要有OGRE的源码吧.可以去官方网站下载最新的源码包,我这里用的是1.7.2版本的,下载下来的文件叫 ...
- ios中radiobutton
#import <UIKit/UIKit.h> @protocol RadioButtonExtDelegate; @interface RadioButtonExt : UIView - ...
- 用@resource注解方式完成属性装配
注入依赖对象可以采用手工装配或自动装配,在实际应用中建议使用手工装配,因为自动装配会产生未知情况,开发人员无法预见最终的装配结果. 1 需要修改xml文件的以下信息. 加入下列红色部分的4行 & ...
- <转>Boost库之asio io_service以及run、run_one、poll、poll_one区别
本文转自:http://blog.csdn.net/byxdaz/article/details/71088812 一.io_service的作用 io_servie 实现了一个任务队列,这里的任务就 ...
- ctrl+shift+i eclipse快捷键,debug时显示全黑屏
ctrl+shift+i eclipse快捷键,debug时显示全黑屏,这样方便进行查看内容.