pa旗舰

【手艺分享】基于FPGA的百变设计计划

日期:2021-10-19 作者:pa旗舰科技创研社 返回列表 pa旗舰厅(中国区)官方网站-PlayAce pa旗舰厅(中国区)官方网站-PlayAce

FPGA计划


随着一款产品在研发阶段的日渐成熟, ,,, ,,实现的功效也日趋重大化和多样化, ,,, ,,对产品功效实现重界说的应用需求也在日益加大。。。。。产品功效重界说就是在不改动装备硬件设计的条件下, ,,, ,,通过更改FPGA的程序文件, ,,, ,,抵达产品功效重界说的要领。。。。。

一样平常的产品在设计时, ,,, ,,研发会凭证产品的界说完乐成能代码的开发, ,,, ,,然后用JTAG接口举行烧录、调试, ,,, ,,可是等产品上线时, ,,, ,,所有的固件就会被固化, ,,, ,,并且由于JTAG接口过于粗笨, ,,, ,,我们一样平常是不保存该接口;; ;;;以是也无法在产品完成固化后举行重新烧录举行重界说的操作。。。。。

现在也有一些应用计划会使用BLE/WIFI SOC+存储芯片的架构, ,,, ,,BLE/WIFI SOC认真存储芯片的读写, ,,, ,,存储芯片作为FPGA的程序代码存储器, ,,, ,,事情时, ,,, ,,BLE/WIFI SOC将存储芯片中的数据读出, ,,, ,,并凭证特准时序(FPGA加载时序)发送到FPGA, ,,, ,,此历程即为FPGA的数据加载流程, ,,, ,,若是需要升级功效, ,,, ,,通过无线举行远程OTA升级。。。。。而本计划是无需其它芯片加入的情形下通过逻辑设计和UART口举行产品功效的重界说。。。。。


逻辑设计


本计划的焦点就是双启动, ,,, ,,其中区域1为固化区域, ,,, ,,此区域非功效区域, ,,, ,,而是认真区域2的治理, ,,, ,,其中区域2为功效区域, ,,, ,,每次的功效重界说就是对区域2的刷新。。。。。区域2的刷新通过PC和串口调试助手模拟上位机, ,,, ,,传输工程的 Bin 文件到 fpga 启动设置的Flash 中, ,,, ,,实现两个存储到 flash 程序的跳转完成固件升级操作。。。。。

3-02.png

设置两个区域, ,,, ,,第一个区域执行程序1, ,,, ,,完成对区域2的治理和升级事情。。。。。第二个区域的程序2是我们用户设计的功效程序或者说产品程序。。。。。在 FPGA 启动中, ,,, ,, 若是我们不升级区域 2 的程序, ,,, ,,那么自动通过 ICap 接口跳转到区域2的程序中。。。。。 区域1起始地点 0x0, ,,, ,,区域2起始地点 0x0100000。。。。。

在本计划中, ,,, ,,设计区域1的程序实现的功效为:上电后自动加载此程序, ,,, ,,此时最先计时若是 20 秒内没有检测到串口发送的擦除指令, ,,, ,,那么我们启动 icap 跳转, ,,, ,,跳转到区域 2 程序中。。。。。

若是希望再次升级的话必需重新给板卡上电使得程序回到区域1中。。。。。


流程图如下:

2-02.png


顶层结构图如下:

图表-02.png


FPGA uart吸收??????椋 ,,, ,,吸收上位机发送的数据, ,,, ,,并实现波特率为115200的uart协议的串行数据到并行数据的转换, ,,, ,,将数据发送至flash_ctrl??????椋 ,,, ,,Flash_ctrl??????槭莊lash的控制??????椋 ,,, ,,该??????樽越缢盗艘桓黾蚱拥男椋 ,,, ,,凭证uart指令来控制flash的擦除、读、写, ,,, ,,协议包括三种数据包来对应响应的指令, ,,, ,,再将数据发送至对应的??????椋; ;;;而由flash擦除、读、写三个??????榇χ贸头5氖莘祷睾缶蓇art_tx??????榉祷厣衔换 ,,, ,,本文中即返回PC机串口??????。。。。。

返回列表
【网站地图】【sitemap】