一、綜合選項#
-
優化級別(
-O
或--optimize
)0
:默認優化,縮短編譯時間。1
:減少功耗(運行Power_DefaultOpt
策略)。2
:提升內核速度(添加PHYS_OPT_DESIGN
步驟)。3
:最高性能(啟用重定時和物理優化)。s
:減少邏輯資源(運行Area_Explore
策略)。quick
:縮短實現時間(啟用Flow_RuntimeOptimized
)。
-
綜合策略(
vivado.synth_strategy
)- 包括默認策略(
Synthesis_Defaults
)、快速運行優化(Flow_RuntimeOptimized
)及自定義策略。
- 包括默認策略(
-
RTL 語言選擇(
vivado.rtl
)- 指定為
verilog
或vhdl
。
- 指定為
-
層次管理(
-flatten_hierarchy
)- 選項:
none
(保持層次)、full
(完全展開)、rebuilt
(後重建層次)。
- 選項:
-
資源控制
- 門控時鐘轉換(
-gated_clock_conversion
) - BUFG 數量限制(
-bufg
) - 資源共享(
-resource_sharing
)。
- 門控時鐘轉換(
-
報告級別(
vivado.report_level
)0
:綜合後利用率 + 實現後時序。1
:綜合 / 實現後詳細分析。2
(默認):包含快速失敗檢查。
二、實現選項#
-
實現策略(
--vivado.impl.strategies
)- 預定義策略如性能優先(
Performance_Explore
)、資源優化(Area_Explore
),或自定義策略。
- 預定義策略如性能優先(
-
並行作業數(
--vivado.impl.jobs
)- 指定 Vivado 實現的並行進程數(例如:
--vivado.impl.jobs 4
)。
- 指定 Vivado 實現的並行進程數(例如:
-
物理優化(
vivado.phys_opt
)- 階段選擇:
none
、place
(佈局優化)、route
(布線優化)或all
。
- 階段選擇:
-
時序控制
- 最大時序路徑數(
vivado.max_timing_paths
):指定未滿足時序時報告的路徑數量。
- 最大時序路徑數(
-
Pblock 範圍(
vivado.pblock
)- 指定實現期間關注的邏輯區域(例如:
{SLICE_X8Y105:SLICE_X23Y149}
)。
- 指定實現期間關注的邏輯區域(例如:
-
資源優化
--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 生成的湊數