无招胜有招-Vivado非工程模式下的详细设计

参考:UG892 UG835

修改设计路径


将启动Vivado  Tcl环境,并修改路径,将路径指向设计文件所在的目录。下面给出修改路径的步骤。

第一步:在Windows操作系统的主界面下,执行菜单命令【开始】—【所有程序】—【Xilinx Design Tools】—【Vivado2018.X】—【Vivado2018.X Tcl Shell】,弹出“Vivado 2018.x Tcl Shell”界面,如图4.1所示,在一系列提示信息后,出现提示符“Vivado%”。

第二步:如图4.2所示,修改路径,指向当前提供设计源文件的目录。在“Vivado%”提示符后面输入命令“cd e:/vivado_example/gate_verilog_no_project”。

设置设计的输出路径

将设置设计的输出路径,设置设计输出路径的步骤如下所示。

第一步:如图4.3所示,在“Vivado%”提示符后输入命令“set outputDir ./gate_Created_Data/top_output”。公众号:OpenFPGA

第二步:在“Vivado%”提示符后输入命令“file mkdir $outputDir”。

读取设计文件

将读取设计的源文件和约束文件,读取设计源文件和约束文件的步骤如下所示。

第一步:如图4.4所示,在“Vivado%”提示符后输入命令“read_verilogtop.v”。

第二步:在“Vivado%”提示符后输入命令“read_xdctop.xdc”。

运行设计综合

将对设计进行综合,并执行分析。非工程模式下运行设计综合并执行分析的步骤如下所示。公众号:OpenFPGA

第一步:在“Vivado%”提示符后输入“synth_design -top top -part xc7a75tfgg484-1”命令,对设计进行综合

synth_design命令完整的语法格式为:

synth_design[-name][-part][-constrset][-top][-include_dirs]
     [-generic][-verilog_define][-flatten_hierarchy]
     [-gated_clock_conversion][-directive][-rtl][-bufg][-no_lc]
     [-fanout_limit][-mode][-fsm_extraction]
     [-keep_equivalent_registers][-resource_sharing]
     [-control_set_opt_threshold][-quiet][-verbose]

更详细的参数说明,请参考Xilinx提供的文档。

第二步:当综合完成后,在“Vivado%”提示符后输入“write_checkpoint -force $outputDir/post_synth”命令,写入检查点。

第三步:在“Vivado%”提示符后面输入“report_timing_summary -file $outputDir/post_synth_timing_summary.rpt”命令,用于生成时序报告。

第四步:在“Vivado%”提示符后面输入“report_power -file $outputDir/post_synth_power.rpt”命令,用于生成功耗报告。

第五步:在“Vivado%”提示符后面输入“start_gui”命令,启动Vivado集成开发环境。

第六步:在图上一步下方的“Tcl Console”窗口中输入“stop_gui”命令,退出Vivado集成幵发环境。

运行设计布局

对设计运行布局、逻辑优化、写设计布局检查点和生成时序总结报告。对设计进行布局和逻辑优化,以及进行分析的步骤如下所示。

第一步:在“Vivado%”提示符后输入“opt_design”命令,对设计进行优化。公众号:OpenFPGA

opt_design命令完整的语法格式为:
opt_design [-retarget] [-propconst] [-sweep] [-bram_power_opt] [-remap] [-resynth_area] [-directive] [-quiet] [-verbose]

更详细的参数说明,详见Xilinx提供的实现手册。

第二步:在“Vivado%”提示符后输入“power_opt_design”命令,对功耗进行优化。

power_opt__design命令完整的语法格式为:
power_optdesign [-quiet] [-verbose]

更详细的参数说明,详见Xilinx提供的实现手册。

第三步:在“Vivado%”提示符后输入“place_design”命令,对设计进行布局。

place_design命令完整的语法格式为:
place_design [-directive] [-no_timing_driven] [-quiet] [-verbose]

更详细的参数说明,详见Xilinx提供的实现手册。

第四步:在“Vivado%”提示符后输入“phys_opt_design”命令,对设计进行逻辑优化。

更详细的参数说明,详见Xilinx提供的实现手册。

phys_opt_design命令完整的语法格式为:
phys_opt_design [-fanout_opt] [-placementopt] [-rewire] [-critical_cell_opt] [-dsp_register_opt][-bram_register_opt][-hold_fix][-
retime] [-force_replication_on_nets] [-directive] [-quiet] [-verbose]

第五步:在“Vivado%”提示符后输入“write_checkpoin t-force $outputDir/post_place”命令,写设计布局检查点。

第六步:在“Vivado%”提示符后输入“report_timing_summary -file $outputDir/post_place_timing_summary.rpt”命令,生成时序总结报告。

第七步:在“Vivado%”提示符后输入“start_gui”命令,启动Vivado集成开发环境。

第八步:在上一步下方的“Tcl Console”窗口中输入“stop_gui”命令,退出Vivado集成开发环境。

运行设计布线

将对设计进行布线、写检查点、生成时序总结报告、生产时序报告、生产时钟利用率报告和生成功耗报告,写verilog文件和xdc文件。运行设计布线及分析结果的步骤如下所示。公众号:OpenFPGA

第一步:在“Vivado%”提示符后输入“route_design”命令,对设计进行布线。

route_design命令完整的语法格式为:
route_design [-unroute] [-re_entrant] [-nets] [-physicalnets][-pin][-directive][-no_timing_driven][-preserve][-delay]
[-free_resource_mode] -max_delay-min_delay[-quiet] [-verbose]

更详细的参数说明,详见Xilinx提供的实现手册。

第二步:在“Vivado%”提示符后输入“write_checkpoint -force $outputDir/post_route”命令,写检查点。

第三步:在“Vivado%”提示符后输入“report_timing_summary -file $outputDir/post_route_timing_summary.rpt”命令,生成时序总结报告。公众号:OpenFPGA

第四步:在“Vivado%”提示符后输入“report_timing -sort_by group -max_paths 100 -path_type summary -file $outputDir/post_route_timing.rpt”命令,生成时序报告。

第五步:在“Vivado%”提示符后输入“report_clock_utilization -file $outputDir/clock_util.rpt”命令,生成时钟利用率报告。

第六步:在“Vivado%”提示符后输入“report_utilization -file $outputDir/post_route_util.rpt”命令,生成利用率报告。

第七步:在“Vivado%”提示符后输入“report_power -file $outputDir/post_route_power.rpt”命令,生成功耗报告。

第八步:在“Vivado%”提示符后输入“report_drc -file $outputDir/post_imp_drc.rpt”命令,生成drc报告。

第九步:在“Vivado%”提示符后输入“write_verilog -force $outputDir/top_impl_netlist.v”命令,写verilog文件。

第十步:在“Vivado%”提示符后输入“write_xdc -no_fixed_only -force $outputDir/top_impl.xdc”命令,写xdc文件。

第十一步:在“Vivado%”提示符后面输入“start_gui”命令,启动Vivado集成开发环境。

第十二步:在上一步下方的“Tcl Console”窗口中输入“stop_gui”命令,退出Vivado集成开发环境。

生成比特流文件线

将生成比特流文件。生成比特流文件的步骤如下所示。

在“Vivado%”提示符后输入“write_bitstream -force $outputDir/top.bit”命令,将会生成比特流文件。

下载比特流文件

将下载比特流文件到FPGA中。下载比特流文件的步骤如下所示。

第一步:在“Vivado%”提示符后面输入“open_hw”命令,该命令用于打开硬件。公众号:OpenFPGA

第二步:在“Vivado%”提示符后面输入“connect_hw_server”命令,该命令用于连接服务器。图4.8给出了输入该命令后返回的连接服务器信息,表示连接服务器成功。

第三步:在“Vivado%”提示符后面输入“current_hw_target”命令,该命令用于显示当前连接的硬件目标。图4.9给出了输入该命令后返回的硬件目标信息。

第四步:在“Vivado%”提示符后面输入“open_hw_target”命令,该命令用于打开硬件目标。

第五步:在“Vivado%”提示符后面输入set_property PROGRAM.FILE {e:/vivado_example/gate_verilog_no_project/gate_Created_Data/top_output/top.bit} [lindex[get_hw_devices]]命令,该命令用于分配编程文件。

第六步:在“Vivado%”提示符后面输入“program_hw_devices [lindex[get_hw_devices]]”命令,该命令用于对FPGA器件进行编程。如果编程成功,则出现“Done pin status:HIGH”的提示信息,如图4.11所示

- END -

NOW现在行动!
推荐阅读
【Vivado那些事】如何查找官网例程及如何使用官网例程【Vivado使用误区与进阶】总结篇【Vivado那些事】Vivado中常用的快捷键(一)F4键【Vivado那些事】Vivado中常用的快捷键(二)其他常用快捷键
SystemVerilog数字系统设计_夏宇闻 PDFVerilog 里面,always,assign和always@(*)区别
FPGA上如何求32个输入的最大值和次大值:分治图书推荐|ARM Cortex-M0 全可编程SoC原理及实现
简谈:如何学习FPGARISC-V再进阶!世界首款5纳米RISC-V SOC成功流片!
几款开源SDR平台Vitis尝鲜(一)
SDR/无线设计中LNA和PA的基本原理
拆解1968年的美国军用电脑,真的怀疑是“穿越”啊!
一文最全科普FPGA技术知识你见过1-bit CPU吗?高级FPGA设计技巧!多时钟域和异步信号处理解决方案
【Vivado那些事】Vivado中电路结构的网表描述
ZYNQ中裸机开发和Linux开发有什么区别?
现代计算机的雏形-微型计算机MCS-4
世界上第一个微处理器真的是Intel 4004吗?其实这是个很复杂的故事…
【每周一问】如何控制加载FPGA程序时,Xilinx FPGA的IO管脚输出高低电平
【Vivado那些事】vivado生成.bit文件时报错-ERROR: [Drc 23-20]
AD9361 和Zynq及其参考设计说明1202年了,还在使用虚拟机吗?Win10安装Ubuntu子系统及图形化界面详细教程谈谈Xilinx FPGA设计的实现过程
Github 上有哪些优秀的 VHDL/Verilog/FPGA 项目
AD936x+ZYNQ搭建收音机(一)
AD936x+ZYNQ搭建收音机(二)含视频演示
AD936x+ZYNQ搭建收音机(三)-终篇
AD936x+ZYNQ搭建OpenWIFI
Verilog 版本:Verilog-95、Verilog-2001与System Verilog区别简谈
FPGA时钟设计方案
【Vivado那些事】Vivado中增量编译与设计锁定
点击上方字体即可跳转阅读
  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OpenFPGA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值