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

时间:2025-06-14  作者: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所示

审核编辑:黄飞

 

猜您喜欢

隔离DI/DO主要优势有哪些?隔离DI/DO(数字输入/输出)技术在工业自动化和控制系统中是重要配件,其主要优势体现在以下几个方面。隔离DI/DO能够有效提高系...
2020-12-30 00:00:00

在现代电子测量、通讯系统以及生物医学等领域,经常涉及对宽带模拟信号进行数据采集和存储,以便计算机进一步进行数据处理。为了对高速模拟信号进行不失真采集,根据奈奎斯...
2020-03-12 10:22:00



护目镜是用于保护眼睛免受外界伤害的专用装备,应用于工业、实验室、医疗、运动等多个领域。基本功能是防止灰尘、化学物质、飞溅液体及强光等对眼睛造成伤害。护目镜通常由...
2022-01-17 00:00:00

在日常生活和工作中,普通胶带/胶纸是我们常用的工具,但你知道有哪些参数吗?胶带的宽度和长度是最基本的参数,常见的宽度有1.5厘米、2.5厘米等,长度则从几米到几...
2018-01-20 00:00:00

漏电断路器是重要的电气保护装置,应用于家庭和工业电气系统中。选择合适的漏电断路器时,规格尺寸是一个关键因素。漏电断路器的规格主要包括额定电流、漏电动作电流和安装...
2017-04-07 00:00:00

电阻器作为基础且关键的元件,是调节电流、分压以及信号处理的重要配件。ROHM(罗姆)作为全球知名的半导体及电子元器件制造商,其生产的金属膜电阻以优异的品质和稳定...
2015-04-20 20:06:30

HVSSOP-10_3X3MM-EP是一种高性能的半导体封装形式,广泛应用于各种电子设备中。随着科技的不断进步,电子元件的封装技术也在不断演变,HVSSOP-1...
2025-02-24 12:38:21

所谓边沿检测(又叫沿提取),就是检测输入信号的上升沿和下降沿。在设计数字系统时,边沿检测是一种很重要的思想,实际编程时用的最多的时序电路应该就是边沿检测电路和分...
2020-06-26 06:28:00