本文介紹了在 AMD VivadoDesign Tool中用工程模式使用 DFX 流程以及需要注意的地方。在使用 DFX 工程模式的過(guò)程中要把具體步驟映射到相應(yīng)的 DFX 非工程模式的步驟,這樣才能更好地理解整個(gè)流程的運(yùn)行邏輯。
1. 創(chuàng)建初始普通工程
DFX 工程模式會(huì)將 DFX 的要求自動(dòng)嵌入到 Vivdao 流程中,后續(xù)用戶可以在 Vivado IDE 中訪問(wèn)該工程。
所有靜態(tài)邏輯和各個(gè) RM(Reconfigurable Module)的源文件,各個(gè) Configuration 的輸出文件都會(huì)都被自動(dòng)管理,而在 DFX 非工程模式中這個(gè)文件都需要用戶自行管理。
DFX 模式中創(chuàng)建工程的流程和普通設(shè)計(jì)沒(méi)有區(qū)別,用戶需要把靜態(tài)部分的源文件和約束文件加入到新建的工程中。
Intitial Configuration 的 RM 所包含的源文件和約束文件可以在此時(shí)加入工程,也可以在后續(xù)步驟中加入到當(dāng)前的工程中。如果此時(shí)不加入 Intitial Configuration 的 RM 的相關(guān)文件,可以暫時(shí)將此 RM 作為黑盒處理。在這里我們一般選擇同時(shí)把 Intitial Configuration 的 RM 所包含的源文件和約束文件到加入工程中。
2. 將初始普通工程設(shè)置成 DFX 工程
建成初始普通工程后,建議把工程通過(guò)以下任一的方法做好備份。
1. File -> Project -> Archive
2. 在 TCL CONSOLE 執(zhí)行 "write_project_tcl XX.tcl" 獲得重建工程所需的 TCL 腳本。通過(guò)主菜單 Tools -> Enable Dynamic Function eXchange 將初始普通工程設(shè)置成 DFX 工程。
注意:這個(gè)操作一旦執(zhí)行不可逆轉(zhuǎn), 不可撤銷。
3. 創(chuàng)建分區(qū)定義(Create Partition Definition)
這步操作對(duì)應(yīng)非工程模式中創(chuàng)建 RP(Reconfigurable Partitions)的步驟, 對(duì)應(yīng)的模塊的 HD.REGUFIGURABLE 屬性被自動(dòng)被設(shè)置成 True。
當(dāng)把普通工程轉(zhuǎn)成 DFX 工程之后,可以從 RTL Source/Hierarchy 窗口中選擇一個(gè)文件(對(duì)應(yīng)的 Instance)作為 RP。
注意:動(dòng)態(tài)頂層文件不能是 IP,DCP 或者 EDIF。如果暫時(shí)沒(méi)有動(dòng)態(tài)部分的邏輯,這里允許選擇黑盒文件。(在后續(xù)的 opt_design 步驟之前,需要用網(wǎng)表或者灰盒填充這個(gè)黑盒)。
在這里的例子中,同一個(gè) Module 被例化了兩次,不管是哪一個(gè) Instance 被定義成 Partition, 這兩個(gè) Instance 都會(huì)變成 RP。如果實(shí)際只需要一個(gè) Module 作 RP,那么需要手動(dòng)修改其中一個(gè) Module 的名字,使他們相互不同。
在彈窗"Create Partition Name"中分別給 Partition Definition 和 Reconfiguratble Module 命名后,Source 窗口會(huì)相應(yīng)改變: 黃色菱形代表的模塊即是 Partition Definition。
在非工程模式中靜態(tài)部分和動(dòng)態(tài)部分是分開(kāi)綜合再 Link 到一起。在非工程模式中,工具會(huì)自動(dòng)對(duì) RP 模塊進(jìn)行 OOC 綜合后合并到頂層,和在非工程模式的原理一致。在這里要注意動(dòng)態(tài)區(qū)邏輯和靜態(tài)區(qū)邏輯的綜合依然是保持相互獨(dú)立。
4. 按照 DFX Wizard 的引導(dǎo)完成 DFX 工程的設(shè)置
1. 在工具菜單或者 Flow Navigator 中啟動(dòng) DFX Wizard。
2. 點(diǎn)擊 Next 進(jìn)入 Edit Reconfigurable Modules 頁(yè)面。
這里可以看到之前加的 RM shift_right 已經(jīng)存在了。藍(lán)色的+、-和鉛筆按鈕分別對(duì)應(yīng)增加、刪除和修改 RM 源文件的操作。
3. 點(diǎn)擊+號(hào)可以創(chuàng)建一個(gè)新的 RM,點(diǎn)擊“Add Files"或者"Add Directories”。
4. 點(diǎn)擊 Next,進(jìn)入"Edit Configurations"頁(yè)面。
點(diǎn)擊+號(hào)添加Configuration,也可以直接點(diǎn)擊"automatically create configurations"讓工具自動(dòng)生成 Configuration。這里我們直接讓工具自動(dòng)產(chǎn)生 Configuration,然后我們可以按照我們自己的需求在這基礎(chǔ)上進(jìn)行修改。
5. 點(diǎn)擊 Next,進(jìn)入"Edit Configuration Runs" 頁(yè)面,把這些 Configuration 和直接的 Run 掛鉤。
和上一個(gè)頁(yè)面相似,點(diǎn)擊+號(hào)可以添加 Runs,這里我們直接點(diǎn)擊"Standard DFX", 工具會(huì)自動(dòng)產(chǎn)生 Configuration Runs。
然后我們可以在這基礎(chǔ)上進(jìn)行修改, 按需增減 Configuration Runs;同時(shí)通過(guò)下拉菜單設(shè)置每個(gè) Run 的 Run strategy 和 Report Strategy。
在此頁(yè)面上點(diǎn)擊黃色鉆石符號(hào),可以顯示每個(gè) Configuration Run 中的 RP 所包含 RM 的名字。
6. 點(diǎn)擊 Next 進(jìn)入 Summary 頁(yè)面。
可以看到當(dāng)次創(chuàng)建的RM,Configuration 以及 Configuration Runs 的數(shù)目。
點(diǎn)擊“Finish”退出 DFX Wizard。
? ? ?
5. 查看各個(gè) RM 所包含的源文件
在 Source 窗口,Partition Definitions 中依次展開(kāi) RP, RM 可以看到每個(gè) RM 中包含的源文件。
6. 在 Deisgn Runs 或者 Flow Naviagator 中啟動(dòng) Runs 的運(yùn)行,直至生成比特流文件
Child Impl run 會(huì)使用和其 Parent Impl run 相同的靜態(tài)邏輯。
完成 Implementation 后,工具會(huì)自動(dòng)執(zhí)行 Pr_verify 命令驗(yàn)證這些 Run 之間邊界邏輯的一致性。
7. 在各個(gè) Run 的目錄下,可以找到各自的 Full bit 和 Partial bit
審核編輯:劉清
-
TCL
+關(guān)注
關(guān)注
11文章
1783瀏覽量
89968 -
RTL
+關(guān)注
關(guān)注
1文章
389瀏覽量
61128 -
Vivado
+關(guān)注
關(guān)注
19文章
835瀏覽量
68784
原文標(biāo)題:開(kāi)發(fā)者分享|如何在 AMD Vivado? Design Tool 中用工程模式使用 DFX 流程
文章出處:【微信號(hào):gh_2d1c7e2d540e,微信公眾號(hào):XILINX開(kāi)發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
如何使用One Spin檢查AMD Vivado Design Suite Synth的結(jié)果

用 TCL 定制 Vivado 設(shè)計(jì)實(shí)現(xiàn)流程
液晶電視工程模式
如何在Vivado中執(zhí)行工程變更命令 (ECO)

如何在Vivado Design Suite 中進(jìn)行IP加密
用Tcl定制Vivado設(shè)計(jì)流程詳解

淺析Vivado在非工程模式下的FPGA設(shè)計(jì)流程

Vivado Design Suite 用戶指南介紹

深入探索Vivado非工程模式FPGA設(shè)計(jì)流程

AMD Vivado Design Suite 2024.1全新推出
U50的AMD Vivado Design Tool flow設(shè)置

AMD Vivado Design Suite 2024.2全新推出
AMD Vivado Design Suite IDE中的設(shè)計(jì)分析簡(jiǎn)介

評(píng)論