本文將使用 Clocking Wizard文檔 PG321中的“通過 AXI4-Lite 進行動態重配置的示例”章節作為參考。
首先在 AMD Vivado Design Suite 中構建工程。本文使用的是 VCK190 評估板。
您可使用 Vivado 中的實用設計示例作為起點。選擇 CIPS DDR PL 調試示例,其中 CIPS 已設置完成。
在塊設計中,將 Clocking Wizard 添加到圖形界面中。鑒于我們使用的是 VCK190,因此設置 CLK_IN1 = LPDDR4 SMA CLK2。
在“Clocking Features”選項卡上,選中“Dynamic Reconfiguration”選項卡,保留“Interface Selection”的設置“AXI4Lite”不變。
在“Output Clocks”選項卡上,選擇兩個輸出時鐘:100 MHz 和 50 MHz。
Clocking Wizard 將生成 _drp_address_map (MIF) 文件,其中包含地址和值列表,與 Wizard 中請求的值相對應。
您也能使用要重新配置的值來創建第二個 Clocking Wizard,以便生成重配置時要寫入的地址和數據。
選擇“Connection Automation”,將設置 Bridge IP 以將 AXI4-Lite 轉化為 NOC/CIPS 上的 AXI 接口。
在此示例中,輸出了 2 個時鐘。這些是 ILA 捕獲的 100 MHz 和 50 MHz 時鐘計數器,可以比較這 2 個計數器來直觀顯示相對頻率。
此處隨附了 BD Tcl 供您參考:
在“Address Editor”中,可看到 Clock Wizard 的“Base Address”。在 Clock Wizard 實例中,“Base Address”為 0x201C0000000。
運行實現,并寫入器件鏡像。然后選擇“Export -> Export Hardware”并選擇“Include device image”。這樣會生成包含 Clock Wizard 的 XSA 文件。
在此階段可以下載 PDI 并進行檢查。您會看到其中一個計數器的速率是另一個計數器的兩倍。
CLK_OUT1 工作頻率為 100 MHz,時鐘設置為 c_counter_binary_1。CLK_OUT2 工作頻率為 50 MHz,時鐘設置為 c_counter_binary_2。因此,c_counter_binary_1 的工作頻率是 c_counter_binary_2 的兩倍。
要啟動 AMD Vitis 統一軟件平臺,請轉至“Tools -> Launch Vitis IDE”,并選擇或創建工作空間。
選擇“Create Application Project”,在“Platform”選項卡上,選中“Create a new platform from hardware (XSA)”。
為應用工程命名。“Domain”保留默認設置。
對于“Templates”,如果 XSA 中有 UART(對于 VCK190,UART 包含在 CIPS 中),那么您可以選擇“Hello World”,否則,您可以選擇“Empty Application”。
我們已知 Clock Wizard 基地址為 0x201C0000000。在 Clocking Wizard 中,使用 PG 讀取 LOCKED 狀態,OFFSET 為 0x4。
利用 Xil_In32 和 Xil_Out32 通過 AXI 直接讀取和寫入地址。
在示例中,把 CLKOUT2 從 50 MHz 重配置為 25 MHz。
以下是第二個 Clocking Wizard 的 drp_address_map (MIF),其中 CLKOUT2 設為 25 MHz(而不是 50 MHz)。
在地址 0x201c0000344 處,寫入數據 0x1e1e。
下一步是寫入并應用該 DRP 值以配置地址:C_BASEADDR + 0x014,搭配 0x00000003 以設置 LOAD 位和 SEN 位。
在終端上會看到:
返回到 ILA 并觀察 c_counter_binary_1 的計數結果是否是 c_counter_binary_2 的 4 倍。
Clocking Wizard 包含軟件驅動程序,其中包含的示例在使用 AXI DRP 時也很有幫助。
-
amd
+關注
關注
25文章
5556瀏覽量
135821 -
DDR
+關注
關注
11文章
731瀏覽量
66342 -
soc
+關注
關注
38文章
4326瀏覽量
221548 -
design
+關注
關注
0文章
161瀏覽量
46365 -
評估板
+關注
關注
1文章
614瀏覽量
29919
原文標題:開發者分享|AMD Versal? Adaptive SoC Clock Wizard AXI DRP 示例
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
AMD Versal SoC刷新邊緣AI性能,單芯片方案驅動嵌入式系統

Versal CPM AXI Bridge模式的地址轉換

AMD Versal SoC全新升級邊緣AI性能,單芯片方案驅動嵌入式系統

AMD發布第二代Versal自適應SoC,AI嵌入式領域再提速
AMD Versal? Adaptive SoC CPM PCIE PIO EP設計CED示例

AMD Versal自適應SoC CPM5 QDMA的Tandem PCIe啟動流程介紹

AMD Vivado Design Suite 2024.2全新推出
如何通過PMC_GPIO喚醒AMD Versal? Adaptive SoC Linux系統

AMD Versal自適應SoC DDRMC如何使用Micron仿真模型進行仿真

AMD Versal自適應SoC器件Advanced Flow概覽(上)

AMD Versal自適應SoC器件Advanced Flow概覽(下)

第二代AMD Versal Premium系列SoC滿足各種CXL應用需求

評論