Xilinx-芯片选择及vivado软件的快速开发教程

发布时间:2026/7/24 19:38:02
Xilinx-芯片选择及vivado软件的快速开发教程 1.Xilinx-7系列芯片选择Kintex-7系列常用的三款芯片XC7K160T、XC7K325T 、XC7K410TVirtex-7系列最常用的一款芯片XC7VX690TXilinx 7 系列 FPGA 型号命名规则(1)XCXilinx Commercial代表赛灵思商用器件。(2)7器件代次7 系列 FPGA。表示该芯片是第几代。(3)S/A/K/V家族代号。Spartan-7低成本、Artix-7低功耗、通用、Kintex-7性价比中端、Virtex-7高性能高端。(4)### (数字)逻辑单元数量单位k代表芯片规模。(5)- 数字表示速度等级。-1(最慢)-2(中等)-3(最高速)后缀带L-L1/-L2低功耗版本(6)CP/CS/FG/FT引线键合封装FB/FF/SB/FH倒装 Flip-Chip 裸片封装(7)G / V符合 RoHS 6/6 无铅标准(8)引脚数量封装对应的总引脚数(9)温度等级C商业级 0~85℃E扩展级 0~100℃I工业级 -40~100℃Q宽温扩展 -40~125℃。2.vivado软件的快速开发教程以该原理图为例使用vivado创建一个流水灯工程。2.1创建工程Step1:启动 VIVADO单击 Create ProjectStep2:单击 NEXTStep3:创建名为 Miz_sys 的工程到对应的文件目录文件路径自定义不能有中文或非法字符之后单击 NEXTStep4:选择 RTL Project 并且勾选复选框之后单击 NEXTStep5:选择芯片的型号和封装速度等级MK7325FA 如下图所示设置Step:6 单击 Finish 完成工程创建。2.2添加Verilog代码文件Step2:单击 Add SourcesStep3:选择单击 Add or Create Design Sources 然后单击 NEXTStep4:单击 Create File 来创建文件Step5:创建一个 run_led 的文件并且文件类型选择 VerilogStep6:添加完成后如下图所示之后单击 finish 完成文件的创建Step7:继续弹出的对话空中可以设置一些端口但是我们现在什么都不做。单击 OKStep8:创建完成后可以看到 Design Sources 文件夹中有了 run_led.v 这个文件这个文件就是我们可以编写 verilog 程序的文件。2.3添加管教约束文件管脚约束文件即.xdc 文件一般情况生成后会放在 Miz_sys.srcs\constrs_1 文件夹中这里的“Miz_sys”对应的是创建工程的名称。添加管脚约束有三种方法分别是手动新建 XDC PIN 脚约束文件、直接加入已经写好的约束文件、综合后添加管脚约束用户根据实际情况选择其中一种方法可以提高工作效率。2.3.1方法一 手动新建 XDC PIN 脚约束文件引脚约束模板set_property PACKAGE_PIN 芯片引脚号 [get_ports 顶层端口名]set_property IOSTANDARD LVCMOS33/LVDS33(电平标准) [get_ports 端口名]压缩bit文件set_property BITSTREAM.GENERAL.COMPRESS true [current_design]加速读取FLASH芯片set_property BITSTREAM.CONFIG.CONFIGRATE 50 [current_design]Step1:单击和添加.v 文件一样Step2:选择 Add or create constraints 然后单击 NEXTStep3:点击 Create File创建一个新的.xdc 文件。Step4:打开提供例程复制约束文件中的管脚约束,下图是打开配套的例子的工程截图。下图是你创建的工程新建的 XDC 文件把上图配套例子的 PIN 脚约束粘贴到新建工程中的 xdc 文件。Step5:保存XDC 文件生成完成。2.3.2 方法二 综合后添加管脚约束Step1:综合工程.Step2:打开 Open Synthesized Design。Step3:管脚配置。点击 I/O Ports在 Find Results 中进行管脚配置图 a。Package Pin 对应 FPGA 中的管脚I/O Std 对应电平标准图 b。例如要配置 RSTn_i 信号连接到 N13 管脚电平标准是 LVCMOS15在 Package Pin 中选择管脚 N13I/O Std 选择 LVCMOS15。其他管脚也做相应配置图 c。图 aStep4:保存给 XDC 文件命名生成.XDC 文件并保存到 Miz_sys\Miz_sys.srcs\constrs_1。Constrs_1 文件夹是自己创建的。Step5.XDC 文件生成结束2.3.3 方法三 直接加入已经写好的约束文件Step3:单击 Add FilesStep5:将要添加的.xdc 文件添加进来然后点击 OK。注意提供例程的.xdc 文件放在.srcsconstrs_1 文件夹中。Step6:点击 Finish 完成约束文件的添加优化管脚约束文件2.4编译代码生成bit文件2.5下载bit文件到板卡2.6写tb文件使用vivado进行仿真Setp1 :新建仿真文件然后编写仿真代码Setp2进入仿真界面SIMULATION-单击 Run Simulation -单击 Run Behavioral Simulation。Setp3添加需要仿真的信号Setp4从左到右依次点击restart重启、开始仿真、停止仿真。Setp5从左到右依次是全局视图、上升沿和下降沿、添加标记线。Setp6修改信号的进制Setp7按住ctlr鼠标滚轮可以放大和缩小波形图进行观看仿真波形图与预期的效果是否一致。2.7用于调试的IP核2.7.1使用ILA-IP核抓波形仿真Step7:切换 IP Sources 游标下然后双击 ila_0.veo 打开调用的接口模版Step8:IP 接口调用模版打开后可以看到这是一个 IP 接口显然我们只要把需要被检测的信号根据前面的设置填进去就可以了。 clk 就是采样时钟probe0 就是 2HZ 信号proble1 就是其他需要被观察的信号。修改并且嵌入到顶层文件中,保存文件。Step9: Run Synthesis- Run Implementation-Generate Bitstream 生产 Bit 流文件然后连接板卡进入硬件管理器点击ila。Step5:单击 Program Device也可以从顶部单击 Program device 然后选择 xc7a35t_0 或 xc7a100t_0。2.7.2使用VIO-IP核模拟输入输出本设计是使用vio模拟输出VIOOUT[7:0]led灯有4种状态分别是闪光灯、呼吸灯、常亮、熄灭。step1点击IP Catalogstep2搜索VIO并且双击。step3配置我们的输入输出端口个数step4配置输入端口的位宽step5配置输出端口的位宽然后点击OKstep6使用notpad打开vio_0.veo找到实例化模板step7实例化完之后全编译生成bit文件然后连接板卡进入硬件管理器。step8将bit文件下载到板卡。step9可以看见vio已经显示到硬件管理器了双击vio然后命名为vio即可。step10点击 号会弹出一个小窗口我们双击VIOOUT[7:0].step11点击红色框可以设置VIOOUT[7:0]的值vio会模拟输出这个值进行控制led的状态。运行效果如下2.8固化程序2.8.1生成 MCS 文件教程Step10右击 mt25ql256sxxxxxx0 flash 然后选择 Program Configuration Memory Device2.8.2生成 bin 文件教程点击全编译bit文件和bin文件会一起生成。2.9查看芯片内部资源点击下面操作可以查看我们的项目代码被综合成的一个专用的电路。我们编写的verilog代码经过vivado编译之后会被综合成一个电路。点击可查看该项目的资源使用量也就是消耗量芯片的内部查找表和触发器资源提前预判我们的项目是否超出了芯片的资源。因为在工作时我们是分工合作把子模块功能完成后需要将所有的子模块拼在一起完成这个项目项目的工程代码综合后是不能超过芯片的内部资源的。2.10自定义IP核2.10.1创建IP核Step4单击 Finish完成 Verilog 文件的创建。Step5将以下代码复制入文本编辑区内。module water_led( input CLK_i,//100MHZ input RSTn_i, output reg [3:0]LED_o ); reg [31:0]C0; always (posedge CLK_i) if(!RSTn_i) begin LED_o 4b1; C0 32h0; endelse begin if(C0 32d49_999_999)//1s begin C0 32h0; if(LED_o 4b1000) LED_o 4b0001; else LED_o LED_o 1; end else begin C0 C0 1b1; LED_o LED_o; end end endmodule点击 OK2.10.2调用自定义 IP(建立BD工程)Step9:右击 system.bd 选择 Create HDL Wrapper 这步的作用是产生顶层的 HDL 文件Step11添加约束文件选中 PROJECT MANAGERAdd Sources Add or create Constraints Sources。添加例程提供的 xdc 约束文件。Step12产生 bit 文件。