文章目录
- 1. FPGA可以运行几个固件
- 2. Xilinx ICAP原语简介
- 3. ICAP原语模板的使用
- 4. ICAP在Spartan-6上的使用
- 5. ICAP在Kintex-7上的使用
- 工程下载
1. FPGA可以运行几个固件
众所周知,常见的FPGA通常为SRAM结构,固件程序一般存放在外置的串行Flash中,比如SPI Flash,M25P16或N25Q128等。
FPGA启动时,一般先从SPI起始地址开始加载数据到内部的SRAM,加载完成、校验通过则会直接运行。
那么有没有可能在SPI Flash中存放两个或多个FPGA固件呢?
FPGA同时只能运行一个固件,那么是否可以在运行过程中,通过某种方式切换到另一个固件呢?
答案是可以的,对于Xilinx的FPGA产品来说,可以通过ICAP原语来实现!可以做到存放多个固件程序,应用场景也比较广泛,比如固件升级方案中,Bootloader存放在SPI Flash的前半部分,Application程序存放在SPI Flash的后半部分,上电后先运行Bootloader程序,在5秒