moerjielovecookie

Sawen_Blog

一个普通工科牲的博客网站
x
github
follow
email

Vivado中关于综合的设置

一、综合选项#

  1. 优化级别(-O--optimize

    • 0:默认优化,缩短编译时间。
    • 1:减少功耗(运行Power_DefaultOpt策略)。
    • 2:提升内核速度(添加PHYS_OPT_DESIGN步骤)。
    • 3:最高性能(启用重定时和物理优化)。
    • s:减少逻辑资源(运行Area_Explore策略)。
    • quick:缩短实现时间(启用Flow_RuntimeOptimized)。
  2. 综合策略(vivado.synth_strategy

    • 包括默认策略(Synthesis_Defaults)、快速运行优化(Flow_RuntimeOptimized)及自定义策略。
  3. RTL 语言选择(vivado.rtl

    • 指定为verilogvhdl
  4. 层次管理(-flatten_hierarchy

    • 选项:none(保持层次)、full(完全展开)、rebuilt(后重建层次)。
  5. 资源控制

    • 门控时钟转换(-gated_clock_conversion
    • BUFG 数量限制(-bufg
    • 资源共享(-resource_sharing)。
  6. 报告级别(vivado.report_level

    • 0:综合后利用率 + 实现后时序。
    • 1:综合 / 实现后详细分析。
    • 2(默认):包含快速失败检查。

二、实现选项#

  1. 实现策略(--vivado.impl.strategies

    • 预定义策略如性能优先(Performance_Explore)、资源优化(Area_Explore),或自定义策略。
  2. 并行作业数(--vivado.impl.jobs

    • 指定 Vivado 实现的并行进程数(例如:--vivado.impl.jobs 4)。
  3. 物理优化(vivado.phys_opt

    • 阶段选择:noneplace(布局优化)、route(布线优化)或all
  4. 时序控制

    • 最大时序路径数(vivado.max_timing_paths):指定未满足时序时报告的路径数量。
  5. Pblock 范围(vivado.pblock

    • 指定实现期间关注的逻辑区域(例如:{SLICE_X8Y105:SLICE_X23Y149})。
  6. 资源优化

    • --optimize参数可影响资源使用(如s选项减少资源占用)。

三、其他关键选项#

  • 禁用 IP 缓存(--no_ip_cache:强制工具重新生成 IP 综合结果。
  • 自定义综合命令(vivado.synth_design_args:传递额外参数至synth_design
  • 物理布局控制:通过 LSF 集群分发实现任务(--vivado.impl.lsf)。

:部分选项需通过 Vitis 工具链(v++ 命令)配置,部分可通过 Vivado GUI 的 “Project Settings” 调整(如综合策略、实现策略及并行作业数)。详细策略请参阅《Vivado Design Suite 用户指南》。

没时间写了,先拿 ima 生成的凑数

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。