vivado 实施设计、

实施设计

在非项目中运行实施模式

在非项目中的目标AMD设备上实现合成设计或网表模式下,您必须运行与实现子进程对应的Tcl命令:

•Opt Design(Opt_Design):优化逻辑设计,使其更容易适应目标AMD设备。

•Power Opt设计(Power_Opt_Design)(可选):优化设计元素以减少目标AMD设备的功率需求。

•放置设计(Place_Design):将设计放置到目标AMD设备上并进行复制逻辑以改进时序。

•放置后电源选择设计(Power_Opt_Design)(可选):额外优化放置后降低功率。

•放置后物理选项设计(Phys_Opt_Design)(可选):优化逻辑和放置使用基于放置的估计定时。包括复制高扇出驱动程序。

•路由设计(Route_Design):将设计路由到目标AMD设备上。

•路由后物理选择设计(Phys_Opt_Design)(可选):优化逻辑、布局,以及使用实际路由延迟进行路由。

•写入比特流(Write_Bitstream):为AMD设备配置生成比特流AMD Versal™自适应SoC除外。通常,比特流生成如下实施

•写入设备映像(Write_Device_Image):为生成可编程设备映像对Versal设备进行编程。

有关写入比特流或创建设备映像的更多信息,请参阅第节在Vivado设计套件中生成比特流用户指南:编程和调试(UG908)。这些步骤统称为实施。在任意中输入命令以下方式:

•在AMD Vivado™IDE的Tcl控制台中。

•从Vivado Design Suite Tcl外壳中的Tcl提示符。

•将Tcl脚本与实现命令一起使用,并在Vivado中获取脚本设计套件。

非项目模式示例脚本

以下脚本是在非项目模式下运行实现的示例。假设该脚本名为run.tcl,您可以使用tcl中的source命令调用该脚本壳

注意:read_xdc步骤从xdc文件中读取xdc约束,并将约束应用于设计物体。因此,所有网表文件都必须读取到Vivado中,并且应在之前运行link_designread_xdc,以确保xdc约束可以应用于其预期的设计对象。

source run.tcl
# Step 1: Read in top-level EDIF netlist from synthesis tool
read_edif c:/top.edf
# Read in lower level IP core netlists
read_edif c:/core1.edf
read_edif c:/core2.edf
# Step 2: Specify target device and link the netlists
# Merge lower level cores with top level into single design
link_design -part xc7k325tfbg900-1 -top top
# Step 3: Read XDC constraints to specify timing requirements
read_xdc c:/top_timing.xdc
# Read XDC constraints that specify physical constraints such as pin
locations
read_xdc c:/top_physical.xdc
# Step 4: Optimize the design with default settings
opt_design
# Step 5: Place the design using the default directive and save a
checkpoint
# It is recommended to save progress at certain intermediate steps
# The placed checkpoint can also be routed in multiple runs using different
options
place_design -directive Default
write_checkpoint post_place.dcp
# Step 6: Route the design with the AdvancedSkewModeling directive. For
more information
# on router directives type 'route_design -help' in the Vivado Tcl Console
route_design -directive AdvancedSkewModeling
# Step 7: Run Timing Summary Report to see timing results
report_timing_summary -file post_route_timing.rpt
# Run Utilization Report for device resource utilization
report_utilization -file post_route_utilization.rpt
# Step 8: Write checkpoint to capture the design database;
# The checkpoint can be used for design analysis in Vivado IDE or TCL API
write_checkpoint post_route.dcp

非项目模式中的关键步骤示例脚本

非项目模式示例脚本中的关键步骤如下:

•步骤1:读取设计源文件

•第2步:构建内存设计

•第3步:阅读设计约束

•第4步:执行逻辑优化

•第5步:放置设计

•第6步:设计路线

•步骤7:运行所需报告

•步骤8:保存设计检查点

步骤1:读取设计源文件

通过使用read_EDIF命令将EDIF网表设计源读取到存储器中。非项目模式还支持RTL设计流,它允许您读取源文件和在实现之前运行合成。使用read_checkpoint命令可以将合成的设计检查点文件添加为源。read_*Tcl命令设计用于非项目模式。读数_*Tcl命令允许Vivado工具读取磁盘上的文件并构建内存中的设计而无需复制该文件或创建对该文件的依赖关系。

这种方法使非项目模式在设计方面具有高度的灵活性。

重要!您必须监视对源设计文件的任何更改,并根据需要更新设计。

步骤2:构建内存中的设计

Vivado工具使用link_design构建设计的内存视图。这个link_design命令将读取到工具中的基于网表的源文件与AMD零件信息,在内存中创建设计数据库。有两个重要的链接设计选项:

•-part选项指定目标设备。

•-top选项指定了实现的顶层设计。如果顶级网表是EDIF

并且没有指定-top选项,Vivado工具将使用嵌入EDIF网表。如果顶级网表不是EDIF而是结构Verilog,则-top选项为必修的。-top选项也可以用于指定子模块作为顶部,例如当运行模块分析流以估计性能和利用率时。在非项目模式下执行的所有操作都指向Vivado中的内存数据库工具。

内存中的设计驻留在Vivado IDE中,用于与图形形式工具,无论是在批处理模式下运行,还是在交互式Tcl的Tcl shell模式下运行命令,或在

步骤3:阅读设计约束

Vivado Design Suite使用设计约束来定义物理和设计的时序特性。有关更多信息,请参阅使用设计约束进行指导实施。

read_xdc命令读取xdc约束文件,然后将其应用于内存中的设计。

提示:尽管“项目模式”支持定义约束集,但包含多个约束文件出于不同的目的,非项目模式使用多个readxdc命令来实现相同的效果。

步骤4:执行逻辑优化

运行逻辑优化是为了准备放置和布线。优化简化了在承诺目标部件上的物理资源之前进行逻辑设计。Vivado网表优化器包括许多不同类型的优化,以满足不同的需求设计要求。有关详细信息,请参见逻辑优化。

第5步:放置设计

place_design命令用于放置设计。有关详细信息,请参见放置。之后放置时,使用write_checkpoint将进度保存到设计检查点文件中命令

第6步:设计路线

route_design命令用于路由设计。有关详细信息,请参阅路由。

步骤7:运行必需的报告

report_timing_summary命令运行时序分析并生成时序报告以及时间违规的详细信息。report_utilization命令生成的摘要所使用的设备资源的百分比以及其他利用率统计信息。在非项目模式下,必须使用适当的Tcl命令指定要想要创建。每个报告命令都支持-file选项,以将输出定向到文件。有关的更多信息,请参阅Vivado Design Suite Tcl命令参考指南(UG835)report_timing_summary命令和report_utilization命令。您可以将报告输出到文件中供以后查看,也可以将报告直接发送到VivadoIDE现在进行审查。有关更多信息,请参阅查看实施报告。

步骤8:保存设计检查点

将内存中的设计保存到设计检查点文件中。保存在内存中的设计包括以下内容:

•逻辑网表

•物理和时间相关限制

•AMD零件数据

•位置和路线信息

在非项目模式下,设计检查点文件保存设计并允许重新加载

进一步分析和修改。有关详细信息,请参阅使用检查点保存和恢复设计快照。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

cckkppll

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

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

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

打赏作者

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

抵扣说明:

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

余额充值