ZYNQ IAP BOOT实现

2015-02-01 23:17 阅读 859 次 评论 2 条

IAP(In Application programming)指在应用编程,zynq自己程序可以往程序存储器中烧写程序或数据。也就是说在zynq下载过一次程序之后就可以通过外设(串口、USB、网口等)下载更新程序。

简单的说zynq的bin文件与qspiflash中的数据是一一对应的,可自行查看fsbl源码分析。简单的IAP就是通过串口(或其它接口)将bin文件接收后,写入qspi flash中即可搞定。

注意几点:

1、 数据块的大小,最好与qpsi flash的最小可擦除块的大小相同。这样可以在一个块烧写出现错误时,重新擦写该块,然后再写入一次。在块的大小由宏定义;

2、 zynq的fsbl工程与上位机软件的iap工程采用相同的头文件定义;

3、 数据块采用尽量采用较复杂的crc校验。在crc校验通过后,开始写入数据。如果错误则请求重发该数据帧。写入数据后,按字节比对是否写入正确。

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:ZYNQ IAP BOOT实现 | 起点博客
分类:应用笔记 标签:, ,

发表评论


表情

  1. 苏朕
    苏朕 【队长】

    请问这个功能您实现了么?有没有一些更具体的说明

  2. will
    will【站长】

    我只实现了串口的,其驱动层最简单,其他的接口没有实现。