Vivado 使用教程

目录

一、创建工程

二、创建文件

三、编写代码

四、仿真验证

五、配置管脚

六、生成Bitstream文件并烧录

一、创建工程

1.左边创建(或打开)工程 ,右侧可以快速打开最近打开过的工程。

2.来到这一步,命名工程并设置工程的存放路径(这里以D触发器为例)

3.选择RTL 点击next。会来到添加文件环节(可以在这里添加.v等文件,不过后面再添加是一样的)直接点击next

4.选择芯片型号 (根据开发板选,这里随便选的) 完成后点next会弹出信息概要,finish完成。

二、创建文件

完成上述步骤会进入当前界面:

1.工程管理器**add sourse添加(创建)设计文件,**创建文件后选择Verilog语言并命名。

2.定义端口(可选) ,若在这定义后,文件会自动生成端口定义的代码,比自己敲省时间更方便。

(端口没有说明类型即默认wire类型,可根据情况定义reg类型:"output reg q")

3.设计文件创建完成

三、编写代码

1.代码以D触发器为例:

复制代码
`timescale 1ns / 1ps  //timescale 时间单位/精度
module dff(           //D触发器
    input wire clk,   //时钟信号
    input wire d,     //输入信号
    output reg q,     //输出信号
    output reg q_n    //输出信号取反
    );
always@(posedge clk) begin
    q   <=  d;
    q_n <= !d;
end  
endmodule

2.**保存后编译(Run Synthesls),**再修改报错直到通过。

图示两处都是编译。点击后来到右图点OK,Number of Jobs 即 CPU 工作线程数,这个与电脑配置有关,配置越高可选数量越多**(下图二片标注有误忽略,应该是工作线程数,我忘记改了)**。编译的报错可在massage里面查看,尤其注意 error。

四、仿真验证

1.编译成功后创建仿真文件并完成代码编写, 参考"步骤二"中设计文件的创建:

( 需选择 "add or create simulate sourse"

test bench代码如下:

复制代码
`timescale 1ns / 1ps           //timescale 时间单位/精度
module dff_tb( );              //仿真一般无端口列表
reg  clk_sim;
reg  d_sim;
wire q_sim;
wire q_n_sim;

always #10 clk_sim = ~clk_sim; //每10个时间单位对clk进行翻转,即周期为20个单位
initial begin
    clk_sim = 0;
    d_sim   = 0;
    #20;                       //延时20个时间单位(20ns)
    d_sim = 1;
    #40;
    d_sim = 0;
    #100;
    $stop;                    //停止仿真
end

dff dff(                      //模块例化:  原模块名----在顶层文件中命名为
   .clk (clk_sim),            //原模块端口名----要连接的端口名
   .d   (d_sim),
   .q   (q_sim),
   .q_n (q_n_sim)
);
endmodule

2.**保存后编译(Run Synthesls),**再修改报错直到通过。

3.波形仿真点击Run Simulation

(注意1:当有多个tb文件时,选中要仿真的tb文件 右键设为"active")

(注意2:vivado仿真上限时间在tool-setting-simulation中设置,仿真波形不全看看是否不够)

波形如图,每当clk上升沿到来时q输出d的值,说明代码实现D触发器的功能无误。

五、配置管脚

1.Run implement (跑成功后会解锁Run simulation里最后两个禁用的仿真选项,一般也用不到)

2.跑完后点击上图Open Implement Design文字 ,再到状态栏点击Window - I/O Ports

分配引脚 (分配过的Fixed栏会自动打勾),设置相关参数(通常I/O standar 为LVCOMS33)。

3.ctrl+s保存 ,并完成命名后OK会生成XDC约束文件,约束文件打开位置见图二

六、生成Bitstream文件并烧录

1.生成bit流文件

2.如图示步骤点击,自动连接硬件,确保开发板已连接且通电否则识别不到。

3.烧录:连接开发板后会在这里出现芯片型号(对应新建工程时选择的型号),右键型号后点击"Program Device"再点Program烧录。

相关推荐
星夜离尘567 小时前
UART 串口通信:从帧格式到收发回显(附完整 Verilog 实操)
fpga开发
仲南音11 小时前
Xilinx FPGA—— DDR4读写
fpga开发
思尔芯S2C16 小时前
思尔芯RCF RTL自动分割工具,助力大规模AI/HPC芯片原型验证
人工智能·fpga开发·内存模型·自动编译·ddr5·prototyping·原型验证
Terasic友晶科技1 天前
答疑解惑|Agilex 3 FPGA QSPI时钟设置注意事项
fpga开发·de23-lite·terasic·qspi flash
国科安芯2 天前
卫星星务计算机数据管理中SEU容错机制的技术实现研究——以AS32S601存储器ECC架构为例
网络·单片机·算法·fpga开发·架构·云计算·risc-v
国科安芯2 天前
卫星电推进系统阀门驱动控制中的宽温域高可靠MCU应用研究——基于AS32S601电气特性与辐照试验数据的工程分析
单片机·嵌入式硬件·fpga开发·云计算·信息与通信·卫星·抗辐射芯片
郝旭帅电子设计团队2 天前
图像处理是什么
图像处理·fpga开发·郝旭帅电子设计团队·郝旭帅
ARM|X86+FPGA工业主板厂家2 天前
基于ARM+FPGA平台在精密测控领域的应用:8路同步IEPE振动采集系统
arm开发·fpga开发
weixin_452600693 天前
D2632大电流低差压可调线性稳压器介绍,D2632可替换MIC29302
fpga开发·机器人·无人机·电动工具·车载摄像头
ARM|X86+FPGA工业主板厂家3 天前
基于ARM+FPGA平台在精密测控领域的应用:ZYNQ千兆以太网高速数据记录仪
arm开发·fpga开发