(UG332) 即為《Spartan-3 系列配置用戶指南》
在此用戶指南中,并未涵蓋有關從 SPI 閃存啟動時,如何使用內部配置訪問端口 (ICAP) 來支持在 Spartan-3AN FPGA 內運行多重啟動應用的用例。
我們將在本篇博文中講解此用例。
為何需要 ICAP?
對于非 ICAP 設計,使用“主 SPI 模式 (Master SPI Mode)”時,多重啟動功能是無效的。
要啟用多重啟動 (Multiboot) 功能,需要在設計中插入 ICAP。
本文隨附了 ICAP 代碼以供參考(掃碼即可下載)。
您還可參閱 XAPP468 和 XAPP483 以獲取 ICAP 功能示例,然后根據您的設計對 ICAP 進行相應的修改。
添加 ICAP 前:
在設計中插入 ICAP 之前,請先執行下列步驟:
1) 計算 Next(即下一個配置鏡像)配置地址。
例如,您的閃存中可能需要存儲 2 個鏡像。
首先生成包含單一 BIT 文件的 MCS 文件。這樣即可得到 PRM 文件,其中包含 BIT 文件的 END 地址。據此,您即可確定 Next 配置地址。
2) 在 MOD_REG Bitstream Settings 中,確保“NEW MODE”設置為“0”。否則將不會發生回退 (Fallback)。
3) 在黃金 (Golden) 鏡像的 BIT 文件中啟用以下比特流設置 (Bitstream settings)。
ICAP_Enable:Yes
4) 在黃金鏡像和多重啟動 BIT 文件中啟用以下比特流設置:
Reset_on_err:Yes
如何添加 ICAP:
遵循以下步驟,將 ICAP 添加到您的設計中:
1) 在黃金設計中,將 Spartan3AN 器件的 ICAP 原語例化,并編寫狀態機以控制跳轉至更新/多重啟動 (Update/Multiboot) 鏡像時的 ICAP 操作。或者,也可以參閱本文隨附的 ICAP FSM 代碼,對其進行定制以滿足您的黃金設計的需求。
2) 插入 ICAP 后,請在“ICAP 原語 (ICAP Primitive)”中輸入 Next 配置地址
3) 完成此操作后,請生成包含黃金鏡像和多重啟動鏡像的 MCS 文件,并執行多重啟動。
責任編輯:haq
-
代碼
+關注
關注
30文章
4828瀏覽量
69058
原文標題:開發者分享 | 使用 ICAP 在 SPI 模式下執行 Spartan-3AN 多重啟動
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
ESP8266運行一段時間后會隨機重啟怎么解決?
FX3的多重DMA可處理的最大帶寬是多少?
esp32c3運行esp_hosted例程,觸發看門狗不斷重啟要怎么處理?
STM8S105驅動有感無刷電機,卡住電機停轉后如何重啟動?
AMD推出全新Spartan UltraScale+ FPGA系列
![AMD推出全新<b class='flag-5'>Spartan</b> UltraScale+ <b class='flag-5'>FPGA</b>系列](https://file1.elecfans.com/web2/M00/C4/B9/wKgZomX3qe2ARWOqAAA1_slJx3U488.png)
AMD 擴展市場領先的 FPGA 產品組合,推出專為成本敏感型邊緣應用打造的AMD Spartan UltraScale+ 系列
AMD 擴展市場領先的 FPGA 產品組合
![AMD 擴展市場領先的 <b class='flag-5'>FPGA</b> 產品組合](https://file1.elecfans.com//web2/M00/C3/FA/wKgaomXpX7OABFiuAA2PZ1QEixQ529.jpg)
AMD推出Spartan UltraScale+ FPGA系列產品
為嵌入式應用選擇AMD Spartan UltraScale+FPGA
![為嵌入式應用選擇AMD <b class='flag-5'>Spartan</b> UltraScale+<b class='flag-5'>FPGA</b>](https://file1.elecfans.com/web2/M00/C2/D0/wKgZomXn5AiAJYjOAAAeROuY_F4666.png)
評論