DFX模式下要求在設(shè)計的頂層文件,每個RP對應(yīng)的RM只以一個空的接口形式存在,這樣對頂層綜合時,RM就是黑盒子。而對每個RM要采用OOC的綜合方式。OOC綜合本質(zhì)上就是工具不會對設(shè)計的輸入/輸出端口插入IBUF/OBUF,同時生成該模塊對應(yīng)的網(wǎng)表文件。不論是第三方工具還是Vivado都是如此。對RM執(zhí)行OOC綜合,這在DFX過程中是必要的。在后續(xù)布局布線時,工具要依次讀入靜態(tài)區(qū)的網(wǎng)表文件(RM為黑盒子)、每個RP對應(yīng)的RM的網(wǎng)表文件,這樣才能形成完整的網(wǎng)表文件。這就要求同一個RP下的所有RM的輸入/輸出端口必須完全相同,包括端口的名字、方式、位寬。那么一旦靜態(tài)區(qū)的網(wǎng)表文件和動態(tài)區(qū)的RM的網(wǎng)表文件準備好之后,如何讀入以便Vivado后續(xù)執(zhí)行布局布線?這里我們給出三種可行方法。
方法1:通過add_files命令添加dcp文件
首先,通過create_project命令創(chuàng)建工程:
create_project -part <具體型號> -in_memory
通過add_files添加頂層和各個RP對應(yīng)的dcp
add_files top.dcp
add_files rp1_rm1.dcp
add_files rp2_rm1.dcp
接下來要通過屬性SCOPED_TO_CELLS確保上一步讀入的dcp文件與頂層dcp中的RM的對應(yīng)關(guān)系是正確的。
set_property SCOPED_TO_CELLS [get_cells rp1_rm1] [get_filesrp1_rm1.dcp]
set_property SCOPED_TO_CELLS [get_cells rp2_rm1] [get_filesrp2_rm1.dcp]
之后通過link_design將這些dcp綁定在一起。
link_design -top top -part
這里的rp1_rm1和rp2_rm1是這兩個RM在頂層中的網(wǎng)表中的名字。
方法2:直接讀入網(wǎng)表文件
該方法適用于網(wǎng)表由第三方綜合工具提供。需要用到命令read_edif。
read_edif top.edn/edf
read_edif rp1_rm1.edn/edf
read_edif rp2_rm1.edn/edf
link_design -top top -part
方法3:打開/讀入checkpoint
open_checkpoint top.dcp
read_checkpoint -cell rp1_rm1 [get_files rp1_rm1.dcp]-strict
-strict用于確保讀入的dcp對應(yīng)模塊的端口與頂層模塊內(nèi)已嵌入的黑盒子端口一致。但是要注意read_checkpoint不支持嵌套的網(wǎng)表。
方法4:打開checkpoint更新設(shè)計
當RM是以EDF或EDN形式存在時,如果已經(jīng)獲取了頂層布局布線后的網(wǎng)表文件,可以使用如下命令:
open_checkpoint top.dcp
lock_design -level routing
update_design -cells rp1_rm1 -from_file rp1_rm1.edf/edn
update_design -cells rp2_rm1 -from_file rp2_rm1.edf/edn
審核編輯:湯梓紅
-
命令
+關(guān)注
關(guān)注
5文章
676瀏覽量
21965 -
網(wǎng)表
+關(guān)注
關(guān)注
0文章
14瀏覽量
7624 -
布局布線
+關(guān)注
關(guān)注
1文章
87瀏覽量
15154 -
Vivado
+關(guān)注
關(guān)注
19文章
804瀏覽量
66224
原文標題:DFX模式下如何讀入模塊的網(wǎng)表文件
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論