VivadoAndTcl: opt_design

该命令能够优化当前的网表文件,可以指定的参数如下:

  1. retarget: 其主要功能是将当前设计从一个器件家族重定向到另一个器件家族。举例,将MUXCY实例或者XORCY实例重定向为CARRY4块。
  2. Constant Propagation: 针对电路里的常量输入进行优化,去掉冗余的组合逻辑,从而生成一个更简单的网表。
  3. sweep: 清除无用电路,除去无负载的cells和nets。
  4. bram_power_opt: bram的功耗优化。
  5. remap: 将多个LUTs重新映射到一个LUT来降低逻辑的深度。
  6. aggressive_remap: 执行和remap类似的操作但是更加激进,需要用更多的优化时间来降低更多的LUT级数。
  7. resynth_area: 在area mode进行重新综合来降低LUTs的数量。
  8. resynth_seq_area: 进行重新综合来降低组合逻辑和时序逻辑。
  9. resynth_remap: 通过重新映射来降低逻辑的深度,从而提升关键路径的时序。这种基于时序驱动的方式可以通过复制LUTs的方式降低 LUTs的扇出,并且可以将多个小的LUTs合并为一个大的功能,但是需要的编译时间也更多了。
opt_design -sweep -retarget

需要注意的是,在命令行选择了指定的优化方法后,其他的优化手段均会失效。

opt_design命令可以添加directive参数,可以使用的策略如下:

  1. explore: 运行额外的优化手段来提升结果。
  2. exploreArea: 运行resynth_area来降低LUTs的使用量。
  3. exploreWithRemap: 运行aggressive_remap来压缩逻辑级数。
  4. ExploreSequentialArea: 运行resynth_seq_area优化来降低寄存器和相关联的组合逻辑用量。
  5. runtimeOptimized: 运行除去bram_power_opt的default策略,应用最少的优化来达到更快的编译速度。
  6. RQS: 该方法用于帮助选择opt_design用那种策略。
  7. default: 默认策略,包括以下策略:
    1. retarget
    2. constant propagation
    3. sweep
    4. global buffer(BUFG) optimizations
    5. dsp register optimizations
    6. shift-register logic optimizations
    7. block ram power optimizations
    8. implement mig cores
    9. implement debug cores

 使用directive参数例子如下:

opt_design -directive Explore
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值