FPGA配置flash

ISE 配置flash    


http://www.xilinx.com/support/documentation/sw_manuals/xilinx14_7/pim_r_supported_spi_bpi_proms.htm


iMPACT

SPI, BPI, and NAND PROM Support
iMPACT supports select SPI and BPI Flash memories.The Flash devices supported by iMPACT are listed in the tablesbelow.
iMPACT SPI Flash Programming Support
7 Series FPGA Family Support
FlashVendorFlash FamilySupported Flash Density SPI Indirect Programming Support
Micron (Numonyx)N25Q 3.3V (1)32Mb – 256MbKintex™-7, Artix™-7
N25Q 1.8V (1)32Mb – 256MbKintex-7,Virtex-7, Artix-7
WinbondW25Q (Rev BV)32Mb – 128MbKintex-7
W25Q (Rev BW)8MbArtix-7
W25Q (Rev FV)64Mb – 128MbKintex-7
W25Q (Rev DW)32Mb – 64MbKintex-7, Virtex®-7. Artix-7
SpansionS25FLxxP (2)32Mb – 256MbKintex-7
S25FLxxS (3)128Mb, 512MbKintex-7
S25FLxxS (3)256Mb, 512MbVirtex-7
S25FLxxS (3)128Mb, 256MbArtix-7
  1. For Numonyx N25Q: Top, Bottom, and Uniform block sectors aresupported.
  2. S25FL129P and S25FL256S are supported. 64Kb sector size only.S25FL128P is not supported.
  3. 64kB sector size only.
Virtex and Spartan FPGA Family Support
FlashVendorFlash FamilySupported Flash Density SPI Indirect Programming Support
Micron(Numonyx)M25P 512kB – 128MbSpartan®-3E, Spartan-3A, Spartan-3A DSP, Spartan-6, Virtex-5, Virtex-6
M25PE 1Mb – 16MbSpartan-3E, Spartan-3A, Spartan-3A DSP, Spartan-6, Virtex-5
M45PE 1Mb – 16MbSpartan-3E, Spartan-3A, Spartan-3A DSP, Spartan-6
N25Q 3.3V (1)32Mb – 128MbSpartan-3E, Spartan-6,
N25Q 1.8V (1) 32Mb – 128Mb Virtex-6
AtmelAT45DB (RevB, C, and D) 1Mb – 64MbSpartan-3E, Spartan-3A, Spartan-3A DSP, Spartan-6, Virtex-5, Virtex-6
WinbondW25Q (Rev V/CV)4Mb – 64MbSpartan-6
W25Q (Rev BV)4Mb – 128MbSpartan-6
W25Q 1.8V (RevBW)4MbVirtex-6
W25Q 1.8V (RevBW)8MbSpartan-6
W25Q 1.8V (RevDW)64MbVirtex-6
SpansionS25FLxxP (2)32Mb – 128MbSpartan-3A, Spartan-3A DSP, Spartan-6, Virtex-5, Virtex-6
  1. For Numonyx N25Q: Top, Bottom, and Uniform block sectors aresupported.
  2. S25FL032P, S25FL064P, and S25FL129P are supported. 64kB sectorsize only. S25FL128P is not supported.
iMPACT BPI Flash Programming Support
7 Series FPGA Family Support
FlashVendorFlash FamilySupported Flash Density Data Bus WidthBPI Indirect Programming Support (1)
Micron (Numonyx)P33 (Axcell™)64Mb – 1GbD[15:0] (x16)Kintex-7
P30 (Strataflash™, Axcell™) 64Mb – 1GbD[15:0] (x16)Kintex-7, Virtex-7,
Artix-7
M29EW64Mb – 1GbD[15:0] (x16)Kintex-7, Virtex-7 , Artix-7
D[7:0] (x8)
G18F (2)128Mb – 1GbD[15:0] (x16)Kintex-7, Virtex-7, Artix-7
Spansion S29GLxxP 128Mb – 1GbD[15:0] (x16) Kintex-7, Virtex-7
D[7:0] (x8)
S29GLxxS 128Mb – 1GbD[15:0] (x16) Kintex-7, Virtex-7, Artix-7
 
  1. Indirect BPI programming supports using the 7 series (Virtex-7 and Kintex-7)RS[1:0] pins when they are tied to the upper two BPI Flash addresspins..
  2. For Micron G18: Non-Mux interface family members are supported.
Virtex and Spartan FPGA Family Support
FlashVendorFlash FamilySupported Flash Density Data Bus WidthBPI Indirect Programming Support (1) (2)
Xilinx®XCF128X 128Mb D[15:0] (x16) Virtex-5, Virtex-6
Micron(Numonyx) (3)P30 (Strataflash™,Axcell™)64Mb – 1Gb D[15:0] (x16) Spartan-6, Virtex-5, Virtex-6
P33 Axcell64Mb – 1Gb D[15:0] (x16) Spartan-6
J3 (Rev D, F) 32Mb – 256Mb D[15:0] (x16) Spartan-6, Virtex-5
D[7:0] (x8) Spartan-3A, Spartan-3A DSP, Spartan-6, Virtex-5
SpansionS29GLxxS128Mb – 1GbD[15:0] (x16)Spartan-6, Virtex-6
S29GLxxP 128Mb – 1Gb D[15:0] (x16) Spartan-6, Virtex-5, Virtex-6
D[7:0] (x8)
  1. Maximum indirect BPI Flash programming TCK frequency is 3 MHz.
  2. Indirect BPI programming supports using the Virtex-6 and Virtex-5 FPGARS[1:0] pins when they are tied to the upper two BPI Flash addresspins.
  3. For Micron (Numonyx) monolithic P30: Top and Bottom parameterboot type are supported, and symmetrical boot type are not supported. P30 48F4400P0 Flash are also supported.
Zynq-7000 Flash Programming Support
Zynq™-7000 Quad SPI Flash Programming Support
FlashVendorFlash FamilySupported Flash Density Mode
MicronN25Q128A128Mbsingle, dual_parallel
SpansionS25FL128S128Mbsingle, dual_parallel
Zynq-7000 NOR Flash Programming Support
FlashVendorFlash FamilySupported Flash Density Bus Data Width
MicronM29EW32Mb - 256MbD[7:0] (x8)
Zynq-7000 NAND Flash Programming Support
FlashVendorFlash FamilySupported Flash Density Bus Data Width
Micron29F1Gb - 8Gbx8 / x16

© Copyright 1995–2013, Xilinx®Inc. All rights reserved.



### FPGA 配置 FLASH 存储数据的方法 #### 1. SPI Flash 的基本概念 SPI Flash 是一种常用的非易失性存储器,通过 SPI(串行外设接口)协议与 FPGA 进行通信。这种类型的 Flash 主要用于保存配置位流文件 (bitstream),使得 FPGA 可以上电即自动加载配置[^1]。 #### 2. Vivado 中生成 MCS 文件的过程 为了使 FPGA 能够从 SPI Flash 加载配置数据,在使用 Xilinx Vivado 工具时,需按照如下方式操作: - **创建 Bit 流**: 完成设计综合、实现之后,导出最终的比特流文件 (.bit)。 - **转换为MCS格式**: 使用 `promgen` 或者直接在 Vivado 中选择 "File -> Export -> Export Hardware..." 来将 .bit 文件转化为适合烧录到 SPI Flash 的 .mfs 或 .mcs 文件。此过程会根据所选的目标设备自动生成相应的初始化参数。 ```bash # promgen命令示例 promgen -w -p mcs -u 0x0 my_design.bit -o my_design.mcs ``` #### 3. 设置 FPGA 上电加载模式 确保正确设置了 FPGA 的启动选项来支持从外部 SPI Flash 启动。这通常涉及修改 UCF/PCF 约束文件中的相关属性,指定正确的 BPI/SPI 接口类型及其连接引脚位置。 #### 4. 片外 DDR 和其他外围设备的数据加载策略 对于更复杂的应用场景,比如需要同时加载神经网络模型权重等情况,则可能还需要考虑如何有效地管理这些额外资源。常见做法有几种:可以通过 PCIe、UART 或 SD 卡等方式动态加载;也可以预先打包好并将它们一起存放在同一颗 Flash 内部,待系统重启后再由固件负责搬运至目标地址空间如片外 DDR 或 SRAM 中[^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值