APP下载

一种电子系统的OTA升级设计

2022-01-20刘飞

电子制作 2021年24期
关键词:功能模块时序升级

刘飞

(中国电子科技集团第29所,四川成都,611731)

0 背景

大多数电子系统到研制末期,都要经历漫长的外场试验、性能评估等环节。典型的是航空、军工领域。在整个过程中经常涉及到设备的升级,尤其是软件升级尤其多。

在航空设备中,如果升级方式在系统设计之初没有经过特殊的考虑,就可能面临需要在复杂的机载设备中去拆卸需要升级的设备,机体空间狭小,操作及其困难。加上航空设备对安全要求很高,拆卸设备管理手续复杂,导致软件升级更新工作量巨大,耗时漫长。影响客户对研制方评价,这些因素综合起来就触发OTA(Over-the-AirTechnology)升级方式的提出。其核心诉求就是需要一种方便高效的升级方式。

1 传统的升级办法

在目前的电子系统设计中,大多数的处理都以FPGA为核心,经常是单个模块设计自己的加载(更新)软件端口,这种加载口设计在各个模块上,升级软件时需要连接仿真器(下载软件工具)到各个模块,然后用电脑逐片把软件烧写入FPGA的加载prom( flash)中。传统的加载接口如图1所示样式。

图1 传统的软件加载(升级)口设计

这种加载设计的弊端在如下几个方面:

⑴加载时间长,以Xinlinx公司Virtex6这种中大规模的FPGA芯片为例,加载每一片Prom文件烧写时间大约需要30分钟,如果一个功能模块有3-4片。总共升级时间需要接近2个小时。如果需要升级多个功能模块的话,经常升级时间实际按天计算。无疑这种时间在争分夺秒的外场试验阶段,工作是非常被动的。

⑵操作不方便,这种加载口留在各个功能模块面板上或印制板上,在设备装机之后,有些面板难以触及。需要复杂的拆卸才能触及到加载接口,无法快速升级软件。

⑶导致接口不统一,各个模块采用各个模块的加载口设计风格,有单排线、双排线、自定义加载线顺序的。升级维护就需要带多种转接线、加载头。升级维护执行起来非常困难。

如上诸多弊端共同影响下,外场升级工作时间长、操作性差、设备升级麻烦。为了提高设备的维护性,结合FPGA芯片设计的加载方式,我们提出新一种新的升级设计方式。

2 快速升级的系统加载设计

为了满足整个电子系统的快速升级,我们将系统的全部软件集中放置到“软件数据载板”上,留一个统一的升级接口(网口),再将网口连接到容易触及的地方。以方便升级连接使用。设计的软件加载结构示意如图2所示。

图2 系统加载示意

从图2中可以看到我们的设计思路如下:

⑴为了便于升级维护设计了一个专门的软件数据载板,存放全系统所有的软件数据。

⑵设计了统一的维护接口,在单片机和FPGA的配合下。网口可以完成对软件数据载板上所有的Prom的访问更新。

在系统正常工作时,“软件数据载板”上的FPGA使用主动加载技术,从FPGA旁边的PROM中加载需要的软件,如图所示的XC2VP40芯片。在这个FPGA加载正常工作后,当FPGA检测到系统不是处于复位并且功能模块正常加电的情况下,同时读取旁边PROM芯片1~N中的数据,通过母板给每一个需要加载的功能模块加载软件。这里需要用到FPGA的从加载(Slave)技术。

在系统维护时,用外部电脑连接网口,在单片机和FPGA(图中的XC2VP40)的配合下,给软件数据载板上的PROM1~N更新软件。这里需要单片机和维护电脑之间有软件协议进行通信。包括通信文件格式,数据地址的约定等。

在这个设计中,最核心的部分是,由于各个PROM中的数据要更新,需要一片FPGA做时序控制,那么各个PROM对应的功能模块如果采用主动加载模式,势必造成加载时序不受控制,更新端网口不好设计。怎么保证“软件数据载板”上的FPGA把放在PROM1~N中的数据加载到各个功能模块1~N中去,并且要正常运行,还要兼顾升级一端对PROM的软件更新操作。这里必须所有的时序要在“软件数据载板”上的FPGA的控制协调下进行。各个功能模块不能各自控制自己的加载时序。

这里必须要使用FPGA的“从加载模式”(Slave Mode)来实现,“从加载模式”又分为串行模式和并行模式。这两种模式互有优劣,可以取长补短使用。

■2.1 FPGA的Slave串行加载设计

FPGA加载模式较多,根据FPGA是否能够主动加载配置数据,可以分为主(Master mode)加载模式、从加载(Slave mode)模式、JTAG模式。其中主模式是指由被配置的FPGA自己产生加载时钟和时序信号,从外部PROM(或 flash)中读取配置流数据,如:软件数据载板上的XC2VP40就采用主动加载模式。从模式为加电后由外部的智能处理器(如另外的FPGA、处理器或DSP等智能器件)产生加载时钟和时序把配置数据加载给FPGA,FPGA在加载过程中是被动的,这个时候软件数据存储非常灵活,可以是在硬盘上、PROM中、甚至是在其他软件的软件代码中。从加载模式应用非常灵活。JTAG模式主要用于调试过程中,可以将计算机中的BIT文件通过JTAG仿真器下载到FPGA中,断电及丢失,可以提高调试效率。

FPGA的加载模式可以通过配置管脚M2、M1、M0的上下拉来选择,FPGA种类和型号较多,配置时序间略有差异,这里以XC2VP40和XC4VFX60为例进行图例介绍。

从串行模式加载示意如图3所示,等待配置的为器件XC4VFX60,生成配置时序的FPGA型号为XC2VP40。

图3 FPGA从串行模式配置示意图

要对XC4VFX60进行从串行配置,要将从(Slave)模式的模式选择M2、M1、M0设置为“111”(不同型号的FPGA有差异),硬件上XC4VFX60对应的CCLK、Din、PROG_B,INIT_B,DONE管脚连接到控制加载芯片(图中为XC2VP40)的可编程的IO管脚上。将对应信号CCLK,PROG_B,INIT_B,DONE进行上下拉处理(如图3)。其中CCLK有些需要上拉100Ω,也需要下拉100Ω,其余信号均需要4.7k上拉,以帮助在时序作用时,建立稳定确定的时序。

从串行模式配置时序可参看文献3中相应的章节.大致可描述为XC2VP40给XC4VFX60器件PROG_B一个脉宽大于300ns的负脉冲信号启动配置,在启动配置后,INIT_B信号随之变低,当PROG_B的信号拉高后,开始检测INIT_B是否变高,当检测到INIT_B变高说明XC4VFX60已经做好加载准备,开始接收DIN管脚上的数据信号,这个数据信号和CCLK同步。DIN数据就是配置的串行数据,当数据全部正确接收完成后,DONE信号变高,这个时候CCLK多保持几个时钟周期,保证配置时序正确停止。整个配置过程需要比配置文件BIT长度更多的时钟周期。

这种串行模式只需要1根数据线(DIN)+ 4根控制线(CCLK,PROG_B,INIT_B,DONE),共5根硬件连接线,硬件连接非常简洁,但是加载速度不快,比较适合容量不大的FPGA或者是连接线数量很紧张的情况。例如射频模块、射频放大器中的控制类FPGA。

■2.2 FPGA的Slave并行加载设计

对于目标FPGA容量较大的,采用串行模式加载有时候不能满足快速启动要求,需要采用并行加载模式,主要区别在于,并行加载模式加载线为8位,理论上速度是串行加载速度的8倍。

FPGA的从并行在线配置连接示意图如图4所示。

图4 FPGA从并行模式配置示意图

从加载芯片XC4VFX60必须正确连接M2、M1、M0三个配置模式管脚为“110”,硬件上正确连接CCLK、PROG_B、DIN[7:0]、CS_B、RDWR_B、INIT_B、DONE、BUSY等信号,在控制芯片XC2VP40一侧的FPGA上,这些信号要连接到可编程的IO端口,控制侧FPGA(XC2VP40)需要编程产生XC4VFX60从模式需要的加载时序,其中INIT_B、CCLK、PROG_B、DONE等信号要进行相应的上下拉处理(如图4)。其中CCLK有些需要上拉100Ω,也需要下拉100Ω,其余信号均需要4.7k上拉,以帮助在时序作用时,建立稳定的时序。

从并行模式配置时序可参考文献3中相应的章节。大致可以描述如下XC2VP40通过PROG_B给CX4VFX60一个脉宽大于300ns的负脉冲启动配置,在PROG_B信号变低后,INIT_B信号随之变低,当检测到INIT_B信号变高后,表明XC4VFX60已经做好准备,CS_B相应的置低可以使能并行数据总线,这时开始接收D[7:0]传送的和CCLK同步的并行配置数据。若数据全部正确接收后,DONE信号变高,软件正常运行。若INIT_B变低说明配置出错,需要重新配置。

其中需要注意的是,和串行模式不同。在并行模式中,需要对加载BIT文件进行位翻转。这就意味着,XC2VP40需要在将加载数据进行位翻转后在传给XC4VFX60。这里并行配置数据是配置文件按照字节进行位翻转后的。整个过程可以始终保持CCLK时钟。

从并行加载方式,需要8根数据线(D[7:0])+7根控制线(CCLK、PROG_B、CS_B、RDWR_B、INIT_B、DONE、BUSY)来实现,其中图4中未画出BUSY连接,共需要15根硬件连线。虽然要较多的连接线,但是实际的数据加载线为8根,理论上加载速度为串行加载速度的8倍。适合大容量的FPGA或者对加载速度有较高要求的场景。例如常用的信号处理类功能模块。

■2.3 对比总结

针对从加载串行模式和并行模式,两者互有优缺点,在实际工程中需要灵活处理,既能合理利用资源又能满足工程实际需要。

串行模式优点是需要的硬件连接线较少,加载时不需要做格式转换,所以在加载控制电路上较容易实现。其劣势是加载速度相对较慢,不适合对加载速度有高要求的地方。

并行加载模式优点是加载速度较快,适合对加载速度有要求,或者是FPGA容量较大的场合。劣势是需要使用较多的硬件线连接,时序相比串行要复杂;加载时需要对文件进行格式转换,实现电路(软件)比较复杂。

需要在实际工程上两者结合互补长短才能发挥各自优势。

3 结束语

设计电子系统的外场试验越来越多,售后服务压力越来越大、升级更新的频率越来越高。传统的升级设计在目前的情形下再也难以满足需求变化。在实际升级需求的倒逼之下,本人觉得改变传统的升级方式也日益迫切。在这里提出这种以FPGA从加载模式为基础的OTA升级设计思路。供业内的人士共同探讨。机载、军工设备的OTA升级设计,由于设备安全等原因,肯定不能像汽车、手机等智能设备一样可以通过远程的互联网络来实现。但是在强烈的外场需求倒逼之下,可以借鉴一些先进的设计思路,采取一些折中的办法,既保证设备的安全,也兼顾升级维护的便利性,让外场设备的更新升级变得更容易一些。设备的维护性、保障性变得更好一些。

猜你喜欢

功能模块时序升级
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
清明
基于GEE平台与Sentinel-NDVI时序数据江汉平原种植模式提取
你不能把整个春天都搬到冬天来
幸福,在“家门口”升级
商业模式是新媒体的核心
基于ASP.NET标准的采购管理系统研究
高校二手交易网络平台功能及技术框架分析与设计
第九章 升级!我的宠物
第九章升级!我的宠物