1、multiboot有两种方式
第一种是XDC配置,第二种是ICAPE2方式。
首先第一种方式如下:
golden区xdc配置
updata区xdc配置
这种方式简单好用。在配置完这些之后生成bit文件,然后把两个golden.bit 和updata.bit合并成一个mcs文件。如下图
生成mcs文件的时候要注意起始地址,以W25Q128为例:16M各分8M,所以updata起始地址为0x00800000。
第二种方式:手搓ICAPE2代码
这种方式不推荐,如果想灵活跳转golden区或者updata区的话可以使用这种方式。
注:两种方式最好不要一起用。
2、W25Q128部分
远程更新一般是为了自己不需要用到vivado来烧写程序。所以在使用multiboot之后,flash控制模块中的读、写、擦除都需要注意起始地址。
经过验证
golden区+updata区:更新updata,更新完成并成功启动新应用程序
golden区+updata区:更新updata,写一半,拔,上电,成功启动golden区应用程序
golden区:写updata,写完重新上电成功启动updata区应用程序