群里老哥讲,我做做笔记,刚好最近学了一点FLASH。
怎么更新分散在全国各地的产品?网络升级!
连接方式:1.网口。2.串口。
即通过网口和串口把更新传输到FLASH里。
网络升级工程的组成:
1.电脑和FPGA之间的通信:网口或串口的方式。(USB口也行)
2.通信开始以后把文件传输至FPGA,FPGA则需要接收文件。
3.保存文件以后,在FPGA内部设置跳转地址:使FPGA能够跳转到保存文件的地址(手工设置)
4.升级失败以后怎么处理?(防止变砖)答:跳转到出厂程序fatory。
涉及的知识点:
1.UDP通信,千兆网传输,串口通信。
2.FLASH操作(SE,WR等)。
3.FPGA自带IP核进行跳转以及各个厂商带有IP核的不同。
需要了解跳转条件,不同厂商通常都不一样。
4.跳转失败的的设置(也需要依赖不同厂商IP核的特质)。
从Flash开始:
对于一个flash项目,首先要制定一个flash协议。制定协议的目的是通过串口,网口或其他数据对FPGA发送指令的时候,FPGA知道如何去解析这些指令。
对于flash来说,我们需要制定的指令包就是其芯片支持的一系列操作:
最基本的便是读,写,擦除。
在协议中,数据包需要包含:包头-地址-数据,这几样内容;例如,一个擦除数据包就需要包头+24位的地址,而写指令的数据包就需要包含希望写入的数据,或者是数据的长度;而读命令包就需要考虑其的返回值。
更具体的需要考虑到具体命令的作用形式:
Read byte一旦开始读取,就会不断读取+1地址的数据,直到片选信号拉高才停止,为此我们需要制定其的读取长度。
待续。