將 .mcs 文件寫入 Quad SPI 或 Linear BPI 閃存
大多數(shù) FPGA/SoC 開發(fā)板都有用于非易失性存儲的閃存設(shè)備。通常,它可以是 Quad SPI 閃存(串行接口)或線性 BPI 閃存(并行接口)。盡管它可用于存儲任何內(nèi)容,但它通常用于存儲 FPGA 或 SoC 的配置(例如比特流、FSBL、U-Boot、Linux 內(nèi)核)。如果正確設(shè)置了 FPGA 或 SoC 的啟動模式,上電時它應(yīng)該從閃存中讀取,將比特流加載到 FPGA 中,然后加載并運(yùn)行軟件組件。
在這篇博文中,我們將介紹使用 Vivado 硬件管理器對開發(fā)板閃存進(jìn)行編程的步驟。我將為 KCU105 板執(zhí)行此操作,但我還列出了一些流行的開發(fā)板以及用于每個開發(fā)板的相應(yīng)閃存設(shè)置。
如何對閃存進(jìn)行編程
啟動 Vivado。在歡迎屏幕上,單擊“打開硬件管理器”。
為您的開發(fā)板通電并確保其 JTAG 端口已連接到您的計(jì)算機(jī)。
在硬件管理器中,單擊“打開目標(biāo)”,然后單擊“自動連接”。
右鍵單擊 FPGA/SoC 設(shè)備,然后單擊“添加配置存儲器設(shè)備”。
現(xiàn)在我們必須指定連接到我們特定開發(fā)板上的 FPGA/SoC 設(shè)備的內(nèi)存部分。要為您的開發(fā)板找到內(nèi)存部分,您必須深入研究用戶指南或電路板原理圖。為了幫助您,我在圖片下方列出了一堆 FPGA/SoC 開發(fā)板的閃存名稱(向下滾動)。
7 系列板卡
木板 | 類型 | 尺寸 | 部分 # | 閃存名稱 |
---|---|---|---|---|
AC701 | QSPI | 32MB | N25Q256A13ESF40G | mt25ql256-spi-x1_x2_x4 |
KC705 | QSPI | 16MB | N25Q128A13BSF40F | mt25qu128-spi-x1_x2_x4 |
KC705 | BPI | 128MB | PC28F00AP30TF | 28f00ap30t-bpi-x16 |
VC707 | BPI | 128MB | PC28F00AG18FE | mt28gu01gaax1e-bpi-x16 |
VC709 | BPI | 128MB | PC28F00AG18FE | mt28gu01gaax1e-bpi-x16 |
ZC702 | QSPI | 16MB | N25Q128A11ESF40G | mt25qu128-spi-x1_x2_x4 |
ZC706 | 雙 QSPI | 32MB | S25FL128SAGMFIR01 | s25fl128l-spi-x1_x2_x4_x8 |
Ultrascale/Ultrascale+ 板
木板 | 類型 | 尺寸 | 部分 # | 閃存名稱 |
---|---|---|---|---|
KCU105 | 雙 QSPI | 64MB | N25Q256A11ESF40F | mt25qu256-spi-x1_x2_x4_x8 |
KCU116 | 雙 QSPI | 256MB | MT25QU01GBBB8ESF-0SIT | mt25qu01g-spi-x1_x2_x4_x8 |
VCU108 | BPI | 128MB | MT28GU01GAAA1EGC-0SIT | mt28gu01gaax1e-bpi-x16 |
VCU110 | 雙 QSPI | 128MB | MT25QU512ABA8E12-0SIT | mt25qu512-spi-x1_x2_x4_x8 |
VCU118 | 雙 QSPI | 256MB | MT25QU01GBB8ESF | mt25qu01g-spi-x1_x2_x4_x8 |
VCU118 | BPI | 128MB | MT28GU01GAAA1EGC-0SIT | mt28gu01gaax1e-bpi-x16 |
Zynq Ultrascale+ 開發(fā)板
木板 | 類型 | 尺寸 | 部分 # | 閃存名稱 |
---|---|---|---|---|
ZCU104 | QSPI | 64MB | MT25QU512ABB8ESF | mt25qu512-spi-x1_x2_x4 |
ZCU102 | 雙 QSPI | 128MB | MT25QU512ABB8ESF | mt25qu512-spi-x1_x2_x4_x8 |
ZCU106 | 雙 QSPI | 128MB | MT25QU512ABB8ESF | mt25qu512-spi-x1_x2_x4_x8 |
ZCU111 | 雙 QSPI | 512MB | MT25QU02GCBB8E12-0sit | mt25qu02g-spi-x1_x2_x4_x8 |
其他流行板
木板 | 類型 | 尺寸 | 部分 # | 閃存名稱 |
---|---|---|---|---|
藝術(shù)A7 | QSPI | 16MB | N25Q128A13ESF40 | mt25ql128-spi-x1_x2_x4 |
PYNQ Z1 | QSPI | 16MB | S25FL128SAGMFI00 | s25fl128sxxxxxx0-spi-x1_x2_x4 |
PYNQ Z2 | QSPI | 16MB | S25FL128S | s25fl128sxxxxxx0-spi-x1_x2_x4 |
ZedBoard | QSPI | 32MB | S25FL256S | s25fl256sxxxxxx0-spi-x1_x2_x4 |
MicroZed | QSPI | 16MB | S25FL128SAGBHI200 | s25fl128sxxxxxx0-spi-x1_x2_x4 |
Z-轉(zhuǎn)彎 | QSPI | 16MB | W25Q128BVFIG | mt25ql128-spi-x1_x2_x4 |
關(guān)于 Dual Quad SPI 的注意事項(xiàng)
您可能會注意到上面列出的閃存名稱都以x1_x2_x4或開頭x1_x2_x4_x8。后綴用于雙四路 SPI 接口,其中兩個四路 SPI 設(shè)備連接到一個 8 位寬的接口。但是,僅僅因?yàn)檫B接了 2 個 Quad SPI 閃存,并不意味著您必須同時使用它們。如果您只想使用第一個 Quad SPI 設(shè)備,那么您應(yīng)該使用x1_x2_x4后綴。
選擇閃存設(shè)備后,系統(tǒng)會詢問您是否要立即對配置存儲設(shè)備進(jìn)行編程。單擊“確定”。
現(xiàn)在您需要選擇.mcs和.prm文件來對閃存進(jìn)行編程。請注意,就我而言,我在雙Quad SPI 模式下對 KCU105 的閃存進(jìn)行編程,這意味著我需要兩個.mcs文件和兩個.prm文件。如果您不使用雙 Quad SPI 模式,則您只能選擇每個文件中的一個。
單擊“確定”后,Vivado 硬件管理器應(yīng)該對您的電路板閃存進(jìn)行編程并驗(yàn)證它是否正確編程。
編輯:jq
-
閃存
+關(guān)注
關(guān)注
16文章
1771瀏覽量
114774 -
SPI
+關(guān)注
關(guān)注
17文章
1688瀏覽量
91238 -
管理器
+關(guān)注
關(guān)注
0文章
242瀏覽量
18481
原文標(biāo)題:如何使用 Vivado 硬件管理器對閃存進(jìn)行編程
文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論