华盛论文咨询网

4G通信技术的FPGA远程更新系统设计

来源:华盛论文咨询网 发表时间:2021-03-09 08:43 隶属于:科技论文 浏览次数:

摘要 随着半导体技术的迅猛发展,FPGA以其资源丰富、并行逻辑处理能力强、可重复在线编程等特点,常作为嵌入式设备的核心处理器,在军事、工业、民用等领域广泛应用,嵌入式设备在使

  随着半导体技术的迅猛发展,FPGA以其资源丰富、并行逻辑处理能力强、可重复在线编程等特点,常作为嵌入式设备的核心处理器,在军事、工业、民用等领域广泛应用,嵌入式设备在使用过程中经常因功能更新、缺陷修改、性能提升等原因需要进行程序升级更新[1-2]。传统的FPGA更新方法是维护人员到现场应用串行配置边界扫描(JTAG)来访问芯片,并对FPGA的配置Flash进行程序更新。如果设备应用在人类难以到达的区域(如高温、高湿、腐蚀、密闭空间、野外等恶劣偏远环境中),JTAG更新方式失效[3]。为了弥补JTAG更新的局限性,已经有了远程更新相关研究,一种方法是利用ARM或DSP作为外部加载控制器,但该方法具有电路结构复杂、成本高、实现难度较大等缺点[4-5]。另一种方法是采用以太网作为通信接口,利用FPGA内部的MCU软核或内嵌ARM进行更新系统设计[6],该方法解决了在线更新的问题,但是,当设备数量庞大、分布范围广时,需要进行复杂的布线工程,耗费的成本巨大。随着无线通信技术的发展,4G信号覆盖越来越广泛,因此应用4G无线通信技术实现FPGA远程更新成为现实[7-8]。鉴于传统更新方式及现存方法的局限性,本文设计了一种基于4G无线通信技术实现FPGA远程更新的系统,并通过工程实现。

4G通信技术的FPGA远程更新系统设计

  1系统总体设计

  FPGA远程更新系统整体架构如图1所示,主要由远程控制器和更新控制器组成。远程控制器由应用服务器以及客户端组成,经授权的客户端可访问应用服务器,向其发送远程更新命令和配置数据,应用服务器响应客户端请求,经4G无线网络向指定的更新控制器转发远程更新控制命令及配置数据。更新控制器包括4G通信模块及待更新的目标FPGA,4G通信模块将接收到的命令及配置数据通过USB接口发送至待更新的目标FPGA,FPGA启动远程更新操作。

  2主要硬件设计

  2.1FPGA更新电路设计

  更新控制器中的FPGA选用Xilinx公司的KINTEX系列FPGA芯片作为主控芯片,型号为XC7K325T-2FFG676I。片内具有丰富的可编程逻辑资源,能高效执行并行运算、接口扩展等功能,广泛应用于工业、军事等领域。FPGA更新电路包括FPGA主电路、Flash更新电路、时钟电路、复位电路以及电源管理电路,电路框图如图2所示。FPGA更新电路适配的Flash选用数据率更高的BPI配置方式(BytePeripheralInterfaceParallelFlashMode),FPGA通过USB接口接收配置数据和命令,通过Quick-Boot控制模块写入并行Flash中。FPGA掉电重启之后从并行Flash中读取配置数据,从而实现配置更新。

  2.24G无线通信模块电路设计

  4G无线通信模块选用华为公司的ME909S-821,该模块是在4G技术应用方案上首选的一代片上系统,它能构建强大的无线网络,并结合RF收发器的优良性能,具备多种运行模式,具有小尺寸、低功耗等特点。该模块采用LGA封装,提供最高下行150Mbps、上行50Mbps的传输速率,内嵌TCP/IP协议栈,提供USB2.0高速接口,能够很好地实现Internet与4G网络的互联。在设计中,更新控制器搭载一块4G无线通信模块,可通过4G网络与应用服务器建立通信连接,授权后的客户端可将远程更新命令及数据加载到应用服务器中,应用服务器将数据转发至更新控制器内。更新FPGA通过USB接口与4G模块保持数据连接并接收其数据,根据客户端请求完成远程更新流程,4G模块硬件设计框图如图3所示。

  3系统软件设计

  系统软件分为两部分:第一部分是应用软件(客户端应用程序),是在上位机端进行开发的人机界面,该软件控制整个更新流程;第二部分是FPGA逻辑软件,该软件在更新控制器上的FPGA内使用VerilogHDL语言进行开发,该部分软件其中的一部分功能是应用QuickBoot方法完成远程更新。

  3.1应用软件设计

  应用软件控制远程更新过程主要由系统初始化、4G网络连接、开始更新、数据发送及更新完成5部分组成,应用软件工作流程图如图4所示。具体操作流程如下:①系统启动后应用软件控制系统进行初始化配置,等待输入远程更新指令;②初始化4G网络,监测4G网络设备是否在线,与更新控制器建立数据连接;③发送开始更新指令并等待更新控制器返回准备好命令;④将需要更新的配置文件组成特定的数据包格式,包括版本号、总大小、总包数、每包大小、数据包等内容;⑤等待更新控制器返回配置文件接收校验成功标志,如有缺包情况出现,更新控制器返回缺包的包号,应用软件补发缺包数据,更新控制器接收到完整数据后发送校验成功标记;⑥应用软件等待更新控制器更新Flash成功标记,启动系统发出重启命令,完成远程更新任务。

  3.2FPGA逻辑设计

  FPGA逻辑设计实现了QuickBoot控制模块功能,主要包括4G模块初始化、USB数据接收、更新控制、写使能寄存器、读使能寄存器、FIFO以及Flash读写控制模块几部分,功能框图如图5所示。QuickBoot控制模块所挂载的Flash存储了三部分内容:更新头文件、受保护镜像区和更新镜像区。更新头文件中包括关键开关字和热启动跳转序列,受保护镜像区为原始启动文件,这两部分内容为出厂设置,不能更改。更新镜像区为QuickBoot控制模块控制Flash远程更新区域。QuickBoot控制模块工作流程如下所示:①初始化4G无线通信模块,使更新控制器接入4G网络,设置心跳功能定时向远程控制器发送心跳数据,当网络异常断开后设置自动重新组网机制,实现可靠的信号接收;②4G模块通过USB接口向FPGA发送数据,USB数据接收模块将接收到的数据打包;③USB数据接收模块打包的数据发送至更新控制模块中,更新控制模块控制数据更新流程,包括生产写寄存器向量、DMA数据传输、读寄存器向量等功能;④Flash操作控制模块根据更新控制模块发送的数据和命令完成Flash擦除、读写等操作;⑤系统重启后,首先查看更新头文件的关键开关字和热启动跳转序列,判断是否需要进行更新操作,从而更新镜像区加载配置文件,如果远程更新过程中出现突然掉电或CRC校验失败,系统将从受保护镜像区加载配置文件,并上报更新结果,保证系统的可靠性。

  4系统验证与改进

  本设计的验证以XC7K325T-2FFG676I为主控芯片,以10MB更新文件为例,该系统更新单片FPGA配置文件的时间开销为120s。本文提出的更新系统优点主要有以下几方面:①具有自动重新登录能力,避免因网络问题导致设备丢失,支持断点续传功能,节省传输时间。②具有缺包查询能力,保证设备安全可靠地接收完整数据。③具有完整的CRC校验机制,保证接收数据的正确性。④Flash内部具备保护机制,不会因为更新失败导致系统崩溃。⑤传统JTAG本地更新方法时间开销为220s,新方法缩短更新开销时间,可实现远程无人值守,解决布线复杂、维护成本增加等问题。本文设计的更新系统还存在改进之处,远程更新的时间开销集中在无线网络传输上。在系统测试过程中,4G网络传输通道的丢包率可达20%~30%,通过“缺包重发机制”解决了丢包问题,但增加了更新时间,降低了传输可靠性。下一步可通过合并多个不同的无线数据传输通道来提高数据传输带宽和增加系统传输可靠性。

  5结语

  本文提出了应用4G无线通信网络作为通信方式,基于QuickBoot方法实现的FPGA远程更新系统设计方法,有效解决了传统更新方法效率低、距离短等问题,同时降低了布线成本和维护成本,因此本文提出的方法具有一定的工程应用价值。

  参考文献

  [1]赵参,李军,虞亚君.基于PowerPC对FPGA上电自动加载的设计与实现[J].电子与封装,2020,20(2):40-44.

  [2]朱道山.FPGA基于RapidIO的FPGA远程更新系统设计与实现[J].雷达科学与技术,2015,5(15):543-547.

  [3]武文权,杨根庆.基于ARM微控制器配置FPGA的实现[J].计算机应用,2004,24(8):156-157.

  [4]葛飞,何辅云,夏玉宝.FPGA被动并行配置控制器的研究与实现[J].合肥工业大学学报:自然科学版,2008(4):531-533.

  《4G通信技术的FPGA远程更新系统设计》来源:《单片机与嵌入式系统应用》,作者:郝国锋 邵春伟 沈小波

转载请注明来自:http://www.lunwenhr.com/hrlwfw/hrkjlw/16114.html

声明:《4G通信技术的FPGA远程更新系统设计》

科技职称论文范文分类入口

信息化论文软件项目管理论文