主要流程
在Vivado中创建RTL设计
进行HDL编写
设置激励仿真
综合、实现、进行管脚约束
生成bit文件下载到FPGA
新建工程
1.打开Vivodo2019.1
2.点击Create Project
点击Next
为新建工程命名,注意路径和名字不要有中文
点击Next
选择RTL project,源文件之后再配置,勾选Do not specify sources at this time
选好了之后点击Next
选择FPGA版型号,Nexys4 DDR对应型号为xc7a100tcsg324-1,点击Next
点击Finish完成创建
创建完成后的界面如下
选择左上角的Add Sources
选择Add or create design sources,点击next
点击Create File以创建Source File
点击Finish完成创建
点击OK完成创建
源文件
双击test.v文件可以进行程序的编写,左上角点击保存别忘了
写一个简单的两个开关分别控制两个LED,代码如下
module test(
input [1:0]SW,
output [1:0]LED
);
assign LED[1]=SW[1];
assign LED[0]=SW[0];
endmodule
仿真
然后写仿真程序
首先添加仿真文件,点击Add sources,选择Add or create simulation sources
双击tb_test.v文件编写程序,代码如下
`timescale 1ns / 1ps
module tb_test(
);
reg [1:0]SW;
wire [1:0]LED;
test uut(
.SW(SW),
.LED(LED));
initial
SW=0;
always
begin
#50
SW=2'b00;
#50;
SW=2'b01;
#50;
SW=2'b10;
#50;
SW=2'b11;
end
endmodule
点击Run Simulation,选择Run Behavioral Simulation
仿真结果如下,可以看到仿真波形没有错误
综合
点击Run Synthesis进行综合
选择Open Synthesized Design打开综合结果
(1)Constraints Wizard(约束向导)。
(2)Edit Timing Constrains(编辑时序约束):该选项用于启动时序约束标签。
(3)Set Up Debug(设置调试):该选项用于启动设计调试向导,然后根据设计要求添加或删除需要观测的网络结点。
(4)Report Timing Summary(时序总结报告):该选项用于生成一个默认的时钟网络报告
(5)Report Clock Networks (时钟网络报告):该选项是用来创造一个时钟网络报告。
(6)Report Clock Interaction(时钟还能相互作用报告):该选项用于在时钟域之间,验证路径上的约束收敛。
(7)Report RDC(RDC报告):该选项用于对整个执行设计规则检查。
(8)Report Noise(噪声报告):该选项针对当前的分装和引脚分配,生成同步开关噪声分析报告。
(9)Report Utilization(利用率报告):该选项用于创建一个资源利用率报告。
(10)Report Power(报告功耗):该选项用于生成一个详细的功耗分析报告。
(11)Schematic(原理图):该选项用于打开原理图界面。选择Schematic打开综合后的原理图。
约束
方法一:利用I/O Planning
在对应的信号后,输入对应的FPGA管教标号(或将信号拖拽到右上方Package图中对应的管脚上),并指定I/O Std,具体的FPGA约束管脚和I/O电平标准,可参考对应板卡的用户手册和原理图
点击左上角“保存”按钮,保存.xdc文件
方法二:手动输入约束命令
点击Add Sources,选择Add or create constraints
创建完成后双击test.xdc文件手动输入约束命令
set_property PACKAGE_PIN K15 [get_ports {LED[1]}]
set_property PACKAGE_PIN H17 [get_ports {LED[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {LED[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {LED[0]}]
set_property PACKAGE_PIN L16 [get_ports {SW[1]}]
set_property PACKAGE_PIN J15 [get_ports {SW[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {SW[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {SW[1]}]
设计实现
点击Run Implementation
点击Generate Bitstream,工程会自动完成综合实现Bit文件生成过程
选择Open Implemented Design来查看工程实现结果
选择Open Hardware Manager
点击Program device
在弹出的对话框中Bitstream file一栏中已经自动加载本工程生成的比特流文件,点击Program对FPGA芯片进行编程
下载成功后拨动最右两个开关可观察LED的点亮情况
小结
Vivado设计分为Project Mode 和 Non-project Mode 两种模式,一般简单设计中,常用的是Project Mode。本实验通过点亮LED灯来展示使用Xilinx Vivado进行基本的FPGA设计,按步骤完成Vivado的整个设计流程。在本次实验中,将会学习如何使用Xilinx Vivado 2017.1 创建、综合、实现等功能。