详解Vivado非工程模式的精细设计过程

时间:2025-10-31  作者:Diven  阅读:0

修改设计路径

详解Vivado非工程模式的精细设计过程

将启动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”。

第二步:在“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”命令,对设计进行优化。

 

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所示

审核编辑:黄飞

 

猜您喜欢

可调电容是电子元器件中常用的。在电路中起到调节电容值的作用。很多人对可调电容型号不太了解,尤其是方向问题。本文将为大家详细介绍可调电容型号怎么看方向。理解可调电...
2025-03-26 07:01:38

电子线缆是现代电子设备中不可少的重要组成部分,其参数直接影响到设备的性能和安全性。线缆的导体材料通常采用铜或铝,铜导体具有更好的导电性能,而铝则更轻便且成本较低...
2011-03-31 00:00:00

糖是一类具有重要生物学功能的大分子,具有高度复杂的化学结构。目前,糖的结构解析依赖于传统的色谱法、质谱法和核磁法等结构表征手段。虽然这些方法相对成熟,但存在检测...
2023-09-05 10:51:00

PDIP8_9.27X6.35MM是广泛应用于电子元件中的封装形式。它以其独特的尺寸和结构,在电子设计中发挥着重要作用。本文将深入探讨PDIP8_9.27X6....
2025-02-21 13:34:41

保险丝作为保护电路安全的重要元件,有着着不可替代的作用。SEISO作为一个知名的保险丝系列品牌,因其高品质和可靠性,广受业内认可。本文将围绕“SEISO保险丝系...
2022-05-08 14:59:30

贴片电阻上的100标识代表其阻值为100欧姆。 通常情况下,三位数的标识遵循一定的规则:前两位数字代表有效数字,第三位数字代表10的幂次方。 因此,100可以理...
2024-11-29 10:25:48

熔断器作为重要的保护元件,有着着不可替代的作用。AEM熔断器作为市场上受到关注的品牌,很好的性能和可靠的质量赢得了用户的信赖。本文将详细介绍AEM熔断器的作用及...
2024-09-30 05:34:30

V/F和F/V转换芯片在现代电子设备中是非常重要的配件,主要优势体现在多个方面。V/F转换芯片能够将模拟电压信号转换为数字频率信号,便于后续数字处理。这种转换方...
2014-08-01 00:00:00

现代工业和电子设备中,连接器的选择非常重要。TERMINAL_73.02X12.20MM作为高性能连接器,因其独特的设计和很好的性能,受到关注。本文将深入探讨T...
2025-04-24 09:30:03

现代电子电路中,二极管作为重要的半导体器件,应用于整流、信号处理和保护电路等多个领域。二极管的种类繁多,其中肖基特二极管和PN二极管是最常见的两种类型。虽然在功...
2025-03-30 00:30:02