FPGA实现串口升级及MultiBoot(十)串口升级SPI FLASH实现
本文目录索引
- 工程架构
- example9工程设计
-
- Vivado设计
- Vitis设计
- example9工程验证
-
- 1、读取FLASH ID
- 2、擦除整个FLASH
- 3、Blank-Check
- 4、烧写Golden区位流
- 5、读取FLASH内容
- 6、烧写MultiBoot区位流(升级位流)
- 7、MultiBoot区位流(升级位流)启动
- example10工程设计
-
- Vivado设计
- Vitis设计
- example10工程验证
- 总结
- 工程链接
缩略词索引:
- K7:Kintex 7
- V7:Vertex 7
- A7:Artix 7
- MB:MicroBlaze
之前的文章基本将MultiBoot的基础都讲得差不多了,今天我们开始另一个主题-串口升级。我尽量在一篇文章搞定SPI FLASH
在开始之前我们先聊一聊应该在哪个区域(Golden区 or MultiBoot区)做串口升级:
上图就是几种情况:
-
情形1:在Golden区做升级,MultiBoot区不做任何操作。这种使用情形应该是很多开发者使用的方式,在Golden区启动后等待升级指令,如果没有收到指令则通过ICAPE原语启动MultiBoot区程序,这种方式使用比较简单,比较符合常规人的思维,在升级后可以直接使用原语启动MultiBoot区位流,无需重新上电。但是这种方式对于启动时间有要求的项目就不适用,一是等待升级指令需要时间ÿ