對于UltraScale/UltraScale+芯片,幾乎FPGA內部所有組件都是可以部分可重配置的,這包括CLB中的查找表(LUT)、觸發器(FF)、移位寄存器(采用LUT實現)、分布式RAM/ROM等,Block如BRAM、URAM、DSP、GT(高速收發器)、PCIe、CMAC、Interlaken MAC等,SYSMON(XADC和System Monitor),時鐘單元如BUFG、MMCM和PLL等,I/O相關單元如ISERDES、OSERDES和IDELAYCTRL等。只有與配置相關組件必須在靜態區,包括BSAN、CFG_IO_ACCESS、EFUSE_USR、ICAP、FRAME_ECC、MASTER_JTAG、STARTUP、和USR_ACCESS。
Pblock的大小
DFX設計中,動態區都有專屬的Pblock。Pblock的最小范圍是由PU(ProgrammableUnit)決定的,而一個PU的大小是跟資源類型緊密相關的。例如,對于SLICE,其PU為所屬的CLB以及與之相鄰的一個CLB,同時還包括這兩個CLB共享的Interconnect,這可通過如下Tcl命令獲取,注意最外層的Tcl命令get_tiles需要添加選項-pu。如果Vivado版本是2023.1或更高版本,可以使用命令get_dfx_footprint外加選項-pu實現同樣功能。
對于BRAM(36Kb),其PU包含自身之后還包含與之相鄰的5個CLB以及共享的Interconnect,如下圖所示。
對于PCIE,其PU包含自身之后還包含兩側各60個共120個CLB以及共享的Interconnect,如下圖所示。
對于高速收發器,其PU包含自身之外還包含與之相鄰的60個CLB以及共享的Interconnect,如下圖所示。
對于PackagePin,其PU包含其所在IO Bank的所有資源,如下圖所示,這也表明了同一個IO Bank內的管腳要么均在靜態區,要么均在動態區。
在UltraScale/UltraScale+ FPGA中,Pblock不再需要設置屬性RESET_AFTER_RECONFIG,但需要將屬性SNAPPING_MODE設置為on。這樣工具給了用戶足夠的靈活性去畫Pblock,但為了保證Pblock不違反PU的要求,工具又會在已畫Pblock的基礎上自動調整,這正是SNAPPING_MODE的作用。
對于DFX工程,在執行完布局布線之后,會生成一個名為hd_visual的文件目錄,在此文件夾下有兩個Tcl文件,如下圖所示,文件名為pblock__Placement/Routing_AllTiles.tcl。
打開布線后的網表文件,執行source命令即可看到整個Pblock的實際布局范圍和布線范圍。圖中白色高亮標記為原始Pblock范圍,紅色標記為實際Pblock的布局范圍,黃色標記為實際Pblock的布線范圍,包括了擴展的布線區域。對于Vivado2023.1及之后版本,可直接使用命令get_dfx_footprint實現同樣功能。
sourcepblock_my_math_placement_AllTiles.tcl
對于UltraScale/UltraScale+ FPGA,動態區Pblock的高度可以不是以Clock Region對齊,這在上述案例中已有體現。換言之,上圖中Pblock所在Clock Region的其他區域仍然可以供靜態區使用,但不能供其他動態區使用。這意味著同一個ClockRegion只能擁有一個RP,所以可以看到“可重構”仍然是按照ClockRegion作為基礎幀執行的。
擴展的布線區域
對于動態區的Pblock,其屬性CONTAIN_ROUTING的值為TRUE,意味著動態區的布線也在劃定的Pblock內。但實際上,最終的布線區域是可擴展的,不僅是已畫好的Pblock,還包括Pblock之外的布線資源。從而,與RM輸入/輸出端口相連的網線就可能出現擴展的布線區域內(Pblock之外),但只要Partition Pin落在擴展區域內,就可以不用限定PartitionPin的位置。這里并不是說Pblock的形狀不規范才導致布線區域擴展,即使是正規的矩形Pblock也可能會有擴展的布線區域。
但一個事實是擴展的布線區域一定是以Clock Region為邊界的。由于動態區布線區域的擴展,動態區對應的bit文件大小就會增大,但是如果動態區對應的bit文件大小比設計性能更為關鍵,可通過如下命令禁止動態區性能擴展。另外,7系列FPGA是不支持動態區布線區域擴展這一功能的。從Vivado2020.2開始,算法的改進促使動態區布線擴展區域更小同時這種更小的布線區域對布線性能影響也更小。
?
審核編輯:劉清
-
移位寄存器
+關注
關注
3文章
287瀏覽量
22656 -
觸發器
+關注
關注
14文章
2032瀏覽量
61895 -
ECC
+關注
關注
0文章
97瀏覽量
20967 -
DFx
+關注
關注
0文章
35瀏覽量
10801
原文標題:針對UltraScale/UltraScale+芯片DFX應考慮的因素有哪些(1)
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
針對UltraScale/UltraScale+芯片DFX應考慮的因素有哪些(2)

賽靈思推出全球最大容量的FPGA – Virtex UltraScale+ VU19P
如何調試Zynq UltraScale+ MPSoC VCU DDR控制器
閑話Zynq UltraScale+ MPSoC(連載1)

Xilinx 宣布Vivado設計套件開始支持16nm UltraScale+產品早期試用
Zynq UltraScale+ MPSoC的發售消息
UltraScale/UltraScale+ GTH/GTY 收發器線速率設置的方法

UltraScale/UltraScale+的時鐘資源
ZYNQ Ultrascale+ MPSoC系列FPGA芯片設計
使用加密和身份驗證來保護UltraScale/UltraScale+ FPGA比特流

UltraScale和UltraScale+ FPGA封裝和管腳用戶指南

AMD推出全新Spartan UltraScale+ FPGA系列

評論