布局
全局布局
在全局布局中,尤其是在 PSIP 中,不同的優(yōu)化中會(huì)發(fā)生一些復(fù)制,包括:
關(guān)鍵單元優(yōu)化:適用于含負(fù)載數(shù) <=30 的關(guān)鍵信號(hào)線的復(fù)制
扇出優(yōu)化:適用于含負(fù)載數(shù)大于 30 且小于等于 100 的關(guān)鍵信號(hào)線的復(fù)制
超高扇出優(yōu)化:對(duì)驅(qū)動(dòng)高扇出信號(hào)線(扇出 > 1000,裕量 < 2.0 ns)的寄存器進(jìn)行復(fù)制。
按 SLR 進(jìn)行復(fù)制優(yōu)化:對(duì)驅(qū)動(dòng)其他 SLR 內(nèi)的關(guān)鍵負(fù)載的 FF 進(jìn)行復(fù)制
動(dòng)態(tài)/靜態(tài)區(qū)域接口信號(hào)線復(fù)制:對(duì) DFX 設(shè)計(jì)的每個(gè)靜態(tài)區(qū)域/動(dòng)態(tài)區(qū)域的驅(qū)動(dòng)程序進(jìn)行復(fù)制
注釋:在 Versal 默認(rèn)流程和 Explore 流程中已停用
除上述優(yōu)化外,還可以通過下列屬性(按優(yōu)先順序列示)來影響高扇出信號(hào)線的初始布局:
MAX_FANOUT:該屬性會(huì)將每個(gè)驅(qū)動(dòng)程序的扇出限制告知工具,并通過指示布局器了解扇出限制來指引該工具對(duì)高扇出的負(fù)載進(jìn)行分配。此屬性可同時(shí)應(yīng)用于 FF 與 LUT 驅(qū)動(dòng)程序。當(dāng) MAX_FANOUT 值小于約束的信號(hào)線的實(shí)際扇出時(shí),將對(duì)該信號(hào)線進(jìn)行寄存器復(fù)制評(píng)估。值得注意的是,僅當(dāng)時(shí)序會(huì)得到改善的情況下,才會(huì)發(fā)生優(yōu)化。
MAX_FANOUT_MODE:該屬性會(huì)指定強(qiáng)制執(zhí)行扇出限制的方式。您可基于物理器件屬性(CLOCK REGION、SLR、MACRO)來強(qiáng)制執(zhí)行復(fù)制。如果設(shè)置該屬性,那么會(huì)將高扇出信號(hào)線的負(fù)載集中到同一個(gè) SLR 中或采用您為該屬性設(shè)置的任意值。支持該屬性的宏 (MACRO) 包括:塊 RAM、UltraRAM 和 DSP。
FORCE_MAX_FANOUT:該屬性會(huì)被應(yīng)用于特定信號(hào)線,以限制復(fù)制優(yōu)化后信號(hào)線的最大物理扇出。借助該屬性,即可在 PSIP 期間強(qiáng)制進(jìn)行復(fù)制優(yōu)化,并且該工具不考慮時(shí)序因素。

圖 9:在此示例中,將 MAX_FANOUT_MODE 屬性設(shè)置為 MACRO 并將 FORCE_MAX_FANOUT 設(shè)置為 1
針對(duì)每項(xiàng) MACRO 負(fù)載,驅(qū)動(dòng)程序均已執(zhí)行復(fù)制。請(qǐng)注意,MAX_FANOUT_MODE 優(yōu)先于 FORCE_MAX_FANOUT 屬性。
布局后優(yōu)化
以下操作在布局后流程中完成:
BUFG 插入階段——在布局后操作期間還包含 BUFG 插入階段,在此期間,工具會(huì)將高扇出信號(hào)線推廣到全局布線。在此階段,布局器會(huì)自動(dòng)將高扇出信號(hào)線布線到任何可用的全局布線走線上。滿足以下條件的信號(hào)線都會(huì)被納入插入的考量范圍:Versal 中扇出 > 10,000 的信號(hào)線,以及 UltraScale/UltraScale+ 中扇出 > 1,000 并且所驅(qū)動(dòng)的控制信號(hào)裕量大于 1 ns 的信號(hào)線。這是時(shí)序驅(qū)動(dòng)的插入,僅當(dāng)插入有助于改善時(shí)序時(shí)才會(huì)發(fā)生。
在 place_design 命令中使用 -no_bufg_opt 即可關(guān)閉此優(yōu)化。
物理優(yōu)化
在物理優(yōu)化 (phys_opt_design) 期間,有若干優(yōu)化可用于應(yīng)對(duì)高扇出信號(hào)線,其中部分優(yōu)化默認(rèn)已啟用:
高扇出優(yōu)化
在該流程中默認(rèn)啟用此項(xiàng)優(yōu)化。針對(duì)此優(yōu)化,若高扇出信號(hào)線所含負(fù)時(shí)序裕量在 WNS 的某一百分比范圍內(nèi),則會(huì)被納入復(fù)制的考量范疇。僅當(dāng)復(fù)制有助于改善時(shí)序時(shí),才會(huì)發(fā)生復(fù)制。
-force_replication_on_nets
“force replication on nets”(在信號(hào)線上強(qiáng)制復(fù)制)選項(xiàng)可用于強(qiáng)制對(duì)任意指定信號(hào)線進(jìn)行驅(qū)動(dòng)程序復(fù)制,與該信號(hào)線的時(shí)序裕量無關(guān)。如果您在布線后注意到高扇出信號(hào)線變得非常關(guān)鍵,那么此優(yōu)化可能很有用。您可以在該特定信號(hào)線上再次運(yùn)行物理優(yōu)化并強(qiáng)制復(fù)制,以查看是否有所幫助。
-directive AggressiveFanoutOpt
物理優(yōu)化中另有一個(gè)選項(xiàng)是 AggressiveFanoutOpt 指令。在某些情況下,物理優(yōu)化無法解決所有關(guān)鍵的高扇出信號(hào)線。因此,建議您搭配該指令重新運(yùn)行物理優(yōu)化,以便進(jìn)行更為激進(jìn)的優(yōu)化。
-lut_opt
該選項(xiàng)旨在通過移動(dòng)或復(fù)制 LUT 來減少路徑延遲。
如果您熟悉先前被稱為“High fanout optimization”(高扇出優(yōu)化)和“Very high Fanout optimization”(超高扇出優(yōu)化)的舊優(yōu)化,在最新架構(gòu)中不再支持這些舊優(yōu)化。而是改為采用 -interconnect_retime (Vivado 2022.1+) 選項(xiàng)和 -lut_opt (Vivado 2023.1+) 選項(xiàng)來代替這些優(yōu)化。
-iphys_opt_design
此命令描述了由 phys_opt 執(zhí)行的特定優(yōu)化,如果您在 write_iphys_opt_tcl 中包含 -place,那么此命令也可以寫出由布局完成的優(yōu)化。它可在不同階段用于應(yīng)用優(yōu)化。例如,該命令允許在布局前設(shè)計(jì)上執(zhí)行通常在 phys_opt 之后執(zhí)行的各項(xiàng)優(yōu)化。換言之,該命令可幫助您通過 Tcl 復(fù)用/重復(fù)優(yōu)化。

圖 10:此流程圖顯示了 iphys_opt 命令的正常使用順序
示例:
基線運(yùn)行輪次:

復(fù)用 iphys_opt_tcl 的輪次:

請(qǐng)參閱 UG835 以了解有關(guān) iphys_opt_design、write_iphys_opt_tcl 和 read_iphys_opt_tcl 的更多信息:
https://docs.amd.com/r/en-US/ug835-vivado-tcl-commands/write_iphys_opt_tcl
物理優(yōu)化期間執(zhí)行的優(yōu)化取決于運(yùn)行物理優(yōu)化的實(shí)現(xiàn)階段。根據(jù)物理優(yōu)化是在布局后還是布線后運(yùn)行的,部分其他可用優(yōu)化(默認(rèn)優(yōu)化除外)可能會(huì)發(fā)生更改。默認(rèn)如果在布局后運(yùn)行物理優(yōu)化,則會(huì)執(zhí)行“Fanout optimization”(扇出優(yōu)化)和“Very High Fanout Optimization”(超高扇出優(yōu)化),但布線后運(yùn)行物理優(yōu)化時(shí),這兩個(gè)選項(xiàng)則不可用。
如需了解更多相關(guān)信息,請(qǐng)參閱下表:

圖 11:布局后和布線后物理優(yōu)化可用的選項(xiàng)
-
寄存器
+關(guān)注
關(guān)注
31文章
5527瀏覽量
128581 -
信號(hào)線
+關(guān)注
關(guān)注
2文章
185瀏覽量
22144 -
時(shí)序
+關(guān)注
關(guān)注
5文章
401瀏覽量
38582
原文標(biāo)題:開發(fā)者分享|高扇出信號(hào)線優(yōu)化技巧(下)
文章出處:【微信號(hào):gh_2d1c7e2d540e,微信公眾號(hào):XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Altium Designer信號(hào)線束的使用
信號(hào)線和電源線的區(qū)別
信號(hào)線是怎么傳輸?shù)?/a>
信號(hào)線有哪些
digilent信號(hào)線組件介紹
音頻信號(hào)線最佳長(zhǎng)度多少合適
電源線的直徑可以和信號(hào)線的直徑相同嗎?
信號(hào)線和屏蔽線的區(qū)別 屏蔽線可以當(dāng)信號(hào)線用嗎?
差分信號(hào)線與單端信號(hào)線的區(qū)別
信號(hào)線是什么線
使用總線別名(Bus Alias)實(shí)現(xiàn)信號(hào)線束的功能
差分信號(hào)線的選擇與處理
信號(hào)線和光纖線的區(qū)別是什么
信號(hào)線和屏蔽線有什么區(qū)別

高扇出信號(hào)線優(yōu)化技巧(下)
評(píng)論