1、航电计算机是为航空飞行器提供数据处理能力的重要系统设备。为在满足计算机中硬件电子产品快速批量化生产要求的同时保证其质量,以航电计算机数据处理单元中FT2000/4处理器为背景,提出一种针对 FT2000/4 处理器及其周边资源的健康管理设计方法。通过该设计方法可以在调试和排故时快速实现故障定位和故障隔离,从而降低产品在技术管理方面的复杂度,快速实现产品技术状态阶段转变,为实现批量化生产提供支持。同时还可以降低后期维护成本,节省大量的人力物力。关键词:FT2000/4;MCU;健康管理;处理器;硬件设计随着技术的发展和航空飞行器功能需求的日益增加,作为飞行器数据处理中枢的航电计算机其复杂度越来越
2、高,计算机内部硬件设计的功能集成度和布板密集度大幅度提高,导致高故障率问题也随之而来1。一方面,高密度的元器件排布使得硬件产品在恶劣的使用环境下更容易出现各种故障问题。这些故障往往在常温中难以复现,需要花费大量人力物力模拟恶劣环境进行测试和故障定位。另一方面,航电计算机产量需求的大幅度增加对于硬件产品的批量化生产提出了更高的时间。但批量生产时难免产生个例差错或者批量问题。因此,如何缩短排故周期,如何在保证快速批量生产的前提下提高产品的稳定性以及面对故障如何快速定位故障信息成为硬件设计时不得不考虑的因素2。通常在硬件设计中多采用预留测试点的方式以支持后续的排故工作。在故障出现时,采用示波器和万用
3、表对测试点数值进行测量,并与标准设计参考值进行比对,或利用示波器进行时序捕捉分析,对比设计手册进行设计合理性分析,进行硬件故障信息定位和汇总,排查出产生异常的元器件或者硬件控制逻辑。但这样的测试手段存在以下问题:(1)此方法对于测试操作人员的要求较高,容易出现由于测试操作人员造成定位不准确的现象;(2)随着硬件产品设计复杂度的提高,预留的测试点对于故障定位的准确性会大幅度降低;(3)此方法排故周期漫长,无法满足快速批量化生产的要求。因此,本文针对现阶段航电计算机中硬件产品的复杂特性,以采用 FT2000/4 处理器的航电计算机数据处理单元为例,提出了一种针对FT2000/4处理器及其周边资源的
4、健康管理设计方法。该设计方法主要依靠独立于数据处理单元的单片机(MCU)对产品进行状态检测,充分利用 MCU 的DC 采集接口、GPIO(GeneralPurposeI/OPorts)接口、串口以及 SPI(SchedulePerformanceIndex)接口对数据处理单元的基础输入资源进行检测和分析,从而可以改善产品的故障定位手段和提供提前预警故障手段。故本文首先对该数据处理单元中各硬件资源接口的具体设计进行了阐述,之后对每个接口的监测手段进行介绍。本文提出的方法很好地应用于航电计算机硬件产品的设计中,大幅缩短了硬件产品的排故周期,为其高质量高效率批量化生产提供保证。图 1整体框架1.硬件
5、系统整体设计 1.1 整体框架设计本文所述的航电计算机数据处理单元整体框架如图 1所示。基于F2000/4处理器的最小数据处理单元主要硬件资源和接口组成部分包括了内存,FLASH,PCIE,以太网,控制逻辑,供电和时钟。该数据处理单元的性能主要包括了:提供了主频不低于1GHZ,数据处理不低于16Gips的算力;存储空同包括:4GB 的内存、1024MB 的 FLASH、512KB的NVRAM的存储空间;对外接口包括:一路千兆以太网,一路最大波特率为 115200bps 的调试串口,两路 5.0Gbps的 PCIEx4 接口。最小的数据处理单元的正常工作需要 11种基础输入,其中共需要七种电源,
6、四种时钟基础输入,电源其中包括了为内存供电的输出缓冲供电电压(VDDQ)和参考电源(VTT),为处理器供电的接口电和核电,为控制逻8|电子制作2023 年 7 月电子技术辑(FPGA)供电的核电以及共用的3.3V和1.8V电源,时钟其中包括了为以太网PHY芯片和FPGA提供的25M时钟,以及为处理器提供的工作48M时钟和100MPCIE差分时钟。1.2 DDR3 内存设计FT2000/4 处理器集成 2 个 DDR3 控制器,DDR3控制理器具有 72 位数据宽度(64 位数据宽度,8 位的 ECC 校验宽度):支持 8 个 Bank,最高 DDR3-1600MT/s。设计中 FT2000/4
7、 处理器使用两个 DDR 通道,每个通道挂接 5片 DDR3 芯片。1.3 FLASH 设计每 个 FT2000/4 处 理 处 理 器 配 置 FLASH 存 储 器 的总容量为 1024MB,支持整片擦写和扇区擦写等操作。FT2000/4 提供一个 QSPI 接口和两个 SPI 接口,且接口电平 1.8V。FLASH 芯片选用 SPI 接口 FLASH,工作电压为1.8V10%。FT2000/4 的 QSPI 接口作为其启动的唯一接口,首先必须通过 QSPI 接口连接 4 片 FLASH,之后通过SPI 接口连接 4 片 FLASH。1.4 PCIe 接口设计FT2000/4 处理器支持
8、6 个 PCIe 控制器,其中包括两个 x16 和两个 x1,x16 支持可以分为两个 x8 或者两个x4。PCIe 速率可以支持 PCIe3.0。最小数据处理单元设计中通常使用两路 x4,分别连接 FC(光纤通道协议)网络通信设备和 NvME 电子盘设备。1.5 FPGA 设计FPGA(FieldProgrammableGateArray)实现局部总线的地址译码、看门狗、内部寄存器和中断控制、电平转化等功能电路。局部总线的地址译码实现 SPI 片选的译码,从设备主要包括 NvRAM、离散量、看门狗、测试接口、内部寄存器。中断控制主要包括外部电源 PFAIL 中断、看门口狗中断。电平转换主要包
9、括 NvRAM 的 3.3V 接口和处理器的 1.8V 接口电平转换,处理器串口和串口驱动器 3.3V 电平转换等。其他功能包括了上电,复位等时序控制。1.6 以太网设计FT2000/4 处理器集成以太网 RGMII 接口,采用 PHY芯片将 RGMII 信号转换为 UTP 信号之后通过变压器再接入RJ-45,对外输出一路以太网信号。1.7 NvRAM 设计FT2000/4 处理器采用 SPI 接口的 NvRAM,由于其第二路SPI 接口中的可用片选只有两个和当前市面上 NvRAM 的 IO 电平为 3.3V,故采用 FPGA 进行电平转换和片选译码,从而连接4 片 NvRAM,每一片容量为
10、128KB,总存储容量为 512KB。NvRAM 在系统掉电时,通过使用存储在较小电容中的电能(该电容与器件的VCAP引脚相连),SRAM中的数据被自动传输到非易失性单元内。在下次通电期间,非易失性单元中的数据被自动回读到SRAM阵列内,以便提供给用户,通常在航电系统中利用其进行故障信息的存储。1.8 MCU 设计MCU 电 路 设 计 是 独 立 于 数 据 处 理 单 元 的 部 分 电路,其功能电路作为数据处理单元的健康监测数据处理和信息传输部分。采用了成都华微电子有限公司的HWD32F103MLQFP64,该单片机集成了定时器,CAN 总线接口,16 个 DC(模数转换器),SPI 接
11、口,I2C 接口,USB,串口等多种对外接口,方便设计人员进行使用3。2 健康管理设计健康管理的硬件设计框架如图 2 所示,主要包含三个部分分别为:处理器,MCU 和可编程控制逻辑。处理器与MCU 之间通过串口进行连接,处理器与控制逻辑通过 SPI接口进行连接,MCU 与控制逻辑通过 SPI 接口进行连接。(1)MCU 的 GPIO 管脚和 DC 采集管脚进行电平和时钟信号获取;(2)处理器将故障信息通过 SPI 接口上报控制逻辑;(3)MCU 通过 SPI 接口从控制逻辑获取故障信息;(4)MCU 通过 CAN 总线与外部进行上报数据处理单元故障信息。健康管理的硬件设计主体手段主要是从监测环
12、节进行设计,通过预留硬件检测接口,后续采用检测软件读取寄存器、检测接口电平状态以及 DC 采集等方式获取实时硬件状态与预期设计目标值进行比对,从而获得当前产品的硬件状态。其次是对故障信息的上报,MCU 功能电路上报方式有两种,一种方式为将其读出的寄存器信息通过串口上报给数据处理单元,另一种方式为将故障信息通过CAN总线上传给系统。最后是 FT2000/4 处理器对其周边接口资源的初始化,这直接将反映在串口打印上提供给设计人员进行故障分析。图 2健康管理设计架构wwwele169com|9电子技术 2.1 电源检测电源的不正常输出经常会导致的故障十分繁杂,比如高低温复位重启、电源过压烧毁后续设备
13、,电源电压不足无法启动,电源输出电流不足无法驱动等,故监测电源的正确输出是整个数据处理单元的基础。基于 FT2000/4 的最小数据处理单元,从图一中可以看出其中包含了七种不同电源,将电源连接至 MCU 的 DC 采集管脚,通过在软件中提前设置的目标值进行比对,从而进行判断电源是否在正常工作。由于 MCU 支持的最大 IO 电压为 3.3V,故在采集较大的电压时,如下图所示利用电阻分压的方式进行分压采集4。2.2 时钟检测参考时钟的稳定运行是数据处理单元的前提。当参考时钟发生故障,例如误差变大甚至停止时,会影响到硬件系统的正确运行,导致预定的运行时间发生变化,甚至硬件停止运行等。由图一中可以看
14、出数据单元中共包含了四种时钟输入,其中三种为低速时钟信号,一种为高速差分时钟信号。由于时钟信号的特殊性,通常在产品 EDA(Electronicdesignautomation)综合布线时进行点对点走线,并不能直接引出分叉信号进行信号采集,因为这样容易造成信号反射,影响信号完整性,造成更重大的问题。对于低速时钟信号,在 EDA 设计走线时,可以通过在时钟信号分叉后的每路都设置匹配电阻,匹配电阻靠近时钟芯片,这样的方式可以避免或者减轻信号反射。对于高速时钟信号,该数据处理单元需要进行同源时钟设计,最多共需要 9 路 100M 差分时钟,分别提供给FT2000/4三路参考时钟,以及 PCIe 从设
15、备六路(FT2000/4支持六个 PCIe 控制器),百兆差分晶振经过西安翔腾微电子时钟驱动器 HKA6110,提供十路百兆 PCIe 差分时钟,剩余的一路接入信号采集接口。2.3 接口资源监测在 MCU 对数据处理单元中的电源和时钟的信息判断为合格时,通过数据处理单元的启动过程包括如下步骤,FT2000/4 处理器第一步,进行 SPI 接口的初始化,将启动FLASH 中的 BOOT(启动软件)读取到处理器本身的缓存中进行后续的初始化准备;第二步,之后将初始化 QSPI 接口,根据 BOOT 中对 QSPI 接口的参数(读写时钟频率),将 FLASH 的读写速率提高;第三步,进行 DDR3 接
16、口的初始化,根据 BOOT 中 DDR3 接口的参数(时钟频率,通道数以及是否具有 ECC);第四步,进行 PCIe 接口的初始化,根据 BOOT 中 PCIe 接口的参数(主从节点,通道数);第五步,在板级支持软件中初始化以太网接口,主要包含了对PHY 芯片的初始化,配置 PHY 的工作模式以及传输速度。上述描述可以通过两种方式进行故障信息查看和展示,一方面启动界面中可以显示启动 BOOT 程序的过程中就是FT2000/4 处理器对于接口资源初始化的过程,当任何一个接口资源存在问题时,其串口打印就将会停在初始化的地方不再打印,故可以通过打印信息判断。另一方面,首先 FT2000/4 与控制逻
17、辑通过 SPI 总线进行通信,针对每一步启动步骤对应 FPGA 中启动寄存器,初始化完成每一步,则将其对应的寄存器位置为高5;其次,MCU 根据预先设置的启动时间间隔对启动寄存器进行访问,超出预期的启动时间之后,若还是低电平信号,则为启动停止位置;最后,MCU通过CAN总线向整体进行上报启动状态。3 总结本文提出了基于 FT2000/4 处理器的健康管理硬件设计方法,通过充分利用 MCU 自身接口特性对数据处理单元的周边基本支持资源接口进行了监控,从启动准备,启动时,以及工作时三种产品状态进行分析和管理,得到大量的产品状态信息。这些状态信息一方面可以提供给调试人员在故障发生时进行故障定位,另一
18、方面可以将故障信息在提前预警给整机,为其备选方案提供了准备时间。伴随着嵌入式硬件的设计复杂度的一步步提高,对于未来后续其他的新研产品的设计,应该在设计之初充分地考虑到该产品在健康检测方面的设计,为后续的检测预留充分的检测手段和接口,而该设计方法的可拓展性和实时性为产品的未来发展提供了更高的发展空间,也同时提高了产品的鲁棒性和安全性。进一步为未来的大批量生产和调试提前做好了充足的设计铺垫,是产品未来自动化或半自动化的发展必走之路。参考文献 1 彭亮.基于注意力的故障预测与雷达健康管理系统的研究与实现 D.电子科技大学,2020.2 宋磊.军用电子设备预测与健康管理体系结构及关键技术研究 D.电子科技大学,2018.3 郭元新.救援机车电池健康管理系统研究 D.湖南工业大学,2018.4 王玉林.基于 FPGA 的导弹系统电子设备的故障预测研究 D.哈尔滨工业大学,2020.5 隽鹏辉,封安,王宇.基于 SPI 总线的飞腾 FT2000/4 与 FPGA通信设计与实现 J.电脑编程技巧与维护,2021(10):150-151.