工作環境及 Pro Edition 分區規格
為了方便大家理解,以下將準備兩個項目,分別為 [項目A] 和 [項目B]。我們需要在 [項目B] 中實現 [項目A] 中使用的低級別 entity。在這種情況下,器件型號和 Quartus Prime Pro Edition 環境如下表 (表1) 所示:
表1 器件型號和 Quartus Prime Pro Edition 環境
Pro Edition 的分區規格如下表 (表2) 所示兩種,兩者都將網表文件 qdb 導出到分區并在另一個項目中重復使用。接下來將為大家介紹使用 Quartus Prime Pro Edition 菜單并完成每個流程。
表2 Pro Edition 的分區規格
核心分區工作流程
下圖為核心分區復用的過程流程圖:
[項目A] 創建核心分區
① 在 Compilation Dashboard 上運行 Analysis & Synthesis 以執行設計的邏輯綜合。
② 顯示用于創建分區的 Design Partitions Window (Assignments 菜單)。
③ 在 Project Navigator 窗口,右鍵單擊要為其創建分區的 entity,選擇 Design Partition > Default (在 Type 下)。
驗證指定實體是否已注冊。
[項目A] 編譯執行:在 Compilation Dashboard 中運行編譯
[項目A] 導出 qdb
① 選擇 Project 菜單 > 導出 Export Design Partition。
② 在 Export Design Partition 對話框中指定各項。
③ 完成以上設置后,單擊 OK 按鈕,在指定文件夾中生成所需 entity 的 qdb 文件。需要注意,如果在 Design Partitions Window 中將 .qdb 設置為 Post Synthesis Export File 或 Post Final Export File,那么每次執行編譯時都可以自動生成指定的分區。
[項目A] 注冊 black box 文件
接下來為要導出的實體創建 black box 文件,注意保存文件時不要將其注冊到 [項目A]中。例:
module blinking_led (
output [3:0] value,
input clock
);
Endmodule
[項目B] 將 black box 文件注冊到項目中
打開現有 [項目B],并使用 Project 中的 Add/Remove Files in Project (Project 菜單) 將步驟 4 中創建的 black box 文件注冊到項目中。
[項目B] 執行 Hierarchy Elaboration
執行 Hierarchy Elaboration,以便 Quartus Prime 識別 [項目B]的 entity 結構。
創建 [項目B]分區
在 Project Navigator 窗口中,右鍵單擊 black box entity 并選擇 Design Partition > Default (在 Type 下)。
[項目B] 導入 qdb
① 顯示 Design Partitions Window (Assignments 菜單)。
② 雙擊相關分區的分 Partition Database File 字段,使用瀏覽按鈕選擇 [項目A] 中生成的文件,指定 .qdb 文件。
[項目B] 編譯執行
在 Compilation Dashboard 中運行編譯。執行后,檢查編譯報告中的編譯結果,確認所需的分區已成功應用到 [項目B],同時繼承了 [項目A] 的布局布線,這樣就完成了核心分區工作流程。
根分區工作流程
下圖是根分區復用的過程流程圖:
[項目A] 創建核心分區 (類型:Reserved Core)
① 運行 Analysis & Elaboration。
② 顯示用于創建分區的 Design Partitions Window (Assignments 菜單)。
③ 在 Project Navigator 窗口中,右鍵單擊要為其創建分區的 entity,然后選擇 Design Partition > Reserved Core (在 Type 下)。
④ 為 Design Partitions Window 中的頂部 entity 生成 Post Synthesis Export File 或 Post Final Export File 指定 .qdb 文件。
如果要將 SDC 文件綁定到每個分區,這里不要指定 .qdb 文件,編譯完成后,選擇 Export Design Partition (Project菜單) 生成它。
[項目A] 設置 Logic Lock 區域
① 顯示 Assignments 菜單 > Logic Lock Regions 窗口。
② 在 Project Navigator 窗口中,在核心分區上放置 Logic Lock 約束,右鍵單擊 > Logic Lock Region > Create New Logic Lock Region。
③ 對區域進行以下設置:
?Origin:根據用戶規格任意
?Width/Height:根據用戶規格可選
?Reserved:On
?Core-Only:On
?Size/State:Fixed/Locked
?Routing Region:根據用戶規格選擇 Unconstrained 以外的設置
右鍵單擊 Logic Lock Regions Window 中的分區 > Locate Node > Locate in Chip Planner。Chip Planner 將啟動。
[項目A] 編譯執行:在 Compilation Dashboard 中運行編譯
[項目A] 導出 qdb
接下來驗證 .qdb 文件是否已生成到項目文件夾中。如果在步驟 1.④ 中未指定 .qdb 文件,請在 Project 菜單 > Export Design Partition > Export Design Partition 對話框中指定每個項目,生成 .qdb 文件 (請參考核心分區工作流程操作 3)。
[項目B] 將 qdb 注冊為根分區
① 打開現有 [項目B]。
② 顯示 Design Partitions 窗口 (Assignments 菜單) 并雙擊 root_partition 的 Partition Database File 字段。使用瀏覽按鈕指定 [項目A] 中生成的 .qdb 文件。
[項目B] 將 RTL 添加到 Reserved core 分區
Add/Remove Files in Project 中的文件 (Project 菜單) 以在項目中注冊核心分區 RTL 和所有必需的 SDC 文件。
[項目B] 編譯執行
在 Compilation Dashboard 中運行編譯。執行完成后,在編譯報告中查看編譯結果,確保所需的分區仍然繼承其在 [項目A] 中的布局布線,確認它已應用于 [項目B]。
總結
本文介紹如何將 Quartus Prime Pro Edition 中較低級別 entity 的布局約束應用于另一個項目。
-
文件
+關注
關注
1文章
578瀏覽量
25204 -
RTL
+關注
關注
1文章
388瀏覽量
60663 -
quartus
+關注
關注
17文章
172瀏覽量
75228 -
網表
+關注
關注
0文章
15瀏覽量
7770
原文標題:如何將布局受限的從屬 entity 應用到另一個項目 (專業版)
文章出處:【微信號:駿龍電子,微信公眾號:駿龍電子】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
探討如何將機器學習應用到物聯網中
如何將PIC引腳的合成頻率輸出到另一個設備?
如何將信號從一個示意頁面到另一個?
如何將MHC設置從一個項目復制/傳輸到另一個項目?
如何將數據從一個SDI通道路由到另一個SDI通道
如何將Virtex 5 LVPECL_25連接到另一個設備的3.3v lvpecl?
可以將一個TouchGFX項目之間的屏幕、對象和交互復制到另一個項目嗎?
如何將MCU應用到FPGA中:關于FPGA(1)
如何將轉換器設計指標應用到 Fly-Buck 電路設計中

將數據從一個云遷移到另一個云的有效工具
如何將ChatGPT的能力蒸餾到另一個大模型

評論