摘要:针对当前车载计算机主板的故障测试问题,设计了一个基于DSP控制的车载计算机主板检测系统。该系统通过采集BIOS上电自检的结果获取故障代码,以此判断主板核心部件的好坏;通过设计外围模块的仿真测试板及测试程序来检测主板外围模块的功能;最后的检测结果通过维修检测经验数据库给出辅助维修建议,也可通过无线数据传输获取远程的专家维修指导。应用结果表明:该检测系统能检测主板的常见故障,显示主板的故障位置,并根据维修建议便于实际维修,较好地解决了该类主板的检测维修问题。
关键词:车载计算机板;外围接口模块;上电自检;仿真测试板
0 引言
随着电子技术、嵌入式计算技术、控制技术等的迅速发展,装甲车辆内部的信息设备越来越多,大大提升了武器装备的作战效能。许多控制器设备、信息终端设备等都配备有微型化的车载计算机主板,通过信号采集、处理与控制输出,完成车内各类信息的融合、综合处理与信息显示。由于该类主板的复杂性和诸如现有检测工具等方面的限制,目前还没有一种通用的检测诊断系统,已经成了制约武器装备总体保障能力提高的一个重要因素。从应用情况看,该类主板集成度高、具有较高的可靠性,但一旦发生故障,往往无法维修,采用换板的方式解决,其实大部分主板故障并不严重,只要稍加维修就可以正常使用。为了便于装甲车载计算机主板的故障诊断及维修,本文针对某型战车的CPU主板的检测提出了一种实现方案,能检测出主板的故障位置,根据专家经验数据提供辅助维修决策,便于装备维修人员直观、准确地定位并排除故障。
1 测试分析
1.1 被测主板信号分析
某型战车被测计算机主板的信号具有如下特征:
(1)车载计算机主板集成了Intel CPU、内存、南桥、北桥等,外围设计有A/D、D/A、CF卡、存储器、串口、USB口、I/O口、PCI总线接口以及显示接口等电路。这些电路的信号特征与通用PC机主板的基本构成相似,因而可充分利用现有的测试方法,简化测试系统的设计。
(2)作战程序存储在FLASH存储器内,运行时加载到内存中。因此测试用户不能加载外部测试程序到系统中。
(3)车载计算机主板的核心模块为专用型、集成度高,测试用户不能进行各种手动和自动测试。但通过分析,在系统加电时,进行上电自检,可以通过读取自检结果来判断功能是否正常。
1.2 测试步骤设计
通过对被测主板的分析,把被测主板的测试分成两部分,即对主板核心模块的测试和对外围模块的测试,构造如下的测试步骤。
(1)测试主板核心模块
根据上面的分析,设计一接口电路读取主板自检的结果,以此来判断主板功能的好坏。
(2)测试外围模块
外围模块主要是I/O接口、显示及总线等。对这部分的测试需要增加辅助电路,可针对某一类接口设计专用的测试板,这些测试板模拟接口信号与主板交互,通过一组测试用例完成外围模块的测试。
(3)收集测试数据
设计一控制器收集测试结果,通过串口把数据传送给PC机,或者通过无线传送到远端的服务器。
(4)维修策略指导与显示
通过测试结果的处理,根据专家的经验,在PC中显示对被测主板的维修指导。
2 系统硬件模块设计
由以上的分析步骤,设计系统框图如图1所示。整个测试系统的硬件模块由4部分组成:DSP控制模块;主板核心部件测试模块;外围接口部件测试模块;无线传输模块及PC机结果显示。
由图1所示测试系统框图,需从软件和硬件协同设计,主要设计过程如下几步。
2.1 DSP控制模块设计
控制模块完成整个测试系统的控制,包括:主板核心模块测试启动与数据采集;各外围模块仿真测试板的测试控制与数据采集。检测结果通过RS 232总线传送到PC机或检测结果通过无线模块发送到远程终端。
控制模块以TMS320F2812控制器为核心,由于车载计算机运算速度快,捕获它的控制信号需要高速的DSP控制器。
DSP集成有多个I/O端口、中断、串口、A/D等模块供用户操作,能够轻易实现系统中的数据的采集以及与PC机之间的有线(RS 232)或无线通信。
2.2 主板核心模块测试设计
该部分用于测试车载计算机主板的核心部件,由BIOS自检结果读取模块完成。车载计算机主板接通电源后,通过BIOS引导,进行上电自检,完成主板硬件设备的检测,并把检测结果以代码(16进制表示)写入地址为80H的端口。
如图2所示的模块结构完成主板核心模块的测试,被测主板通过PCI或ISA总线与测试系统相连,在DSP(TMS320F2812)的控制下,通过地址译码电路选择80H端口,获取测试数据,分析处理后,给出诊断结果,并在PC机上显示详细信息。
该模块硬件部分主要包括:被测主板电源及状态信号采集模块、数据采集模块、系统控制模块。
(1)电源及状态信号采集模块
主板上包含有3.3 V,5 V,-5 V,12 V,-12 V直流电源以及控制、状态信号(如RST,OSC,CLK等),需要采集这些信号,判断电源是否接通,电压是否正确,状态信号是否正常,并将结果传送到PC上位机显示。
(2)测试数据采集模块
根据BIOS自检结果的存放位置(80H端口),通过设计地址译码电路选通80H,在IOW(低电平有效)操作下,触发DSP的外部中断,在中断服务程序中实现对代码数据的锁存,由DSP读取所对应的检测代码,并传送到PC上位机处理。
(3)控制模块
由DSP控制模块完成。
2.3 外围接口模块测试设计
车载计算机主板除核心模块外,还有许多外围模块与其他接口设备相连,主板核心模块的测试通过读取主板的自检结果来完成测试,对于主板上的外围接口模块的检测,需设计专门的辅助电路及测试程序来完成。
设计的思路是,把外围接口模块分类,每一模块根据特性参数设计专门的测试电路板,测试电路板中通过嵌入软件模块产生测试用例,与系统中DSP控制模块协同工作,设计框图如图3所示。
从1.1节中的分析结果发现作战程序固化在FLASH中,测试用户不能加载测试应用程序,但是,可把测试程序存放在装有系统的U盘中,改变原有系统的引导方式,由U盘引导系统,运行U盘中测试程序,并与DSP中的控制程序配合分别测试主板上的各外围模块。
2.4 无线传输模块设计
通过无线模块可实现远程数据获取和数据传输,一方面可以把检测结果发送到远程终端,供指挥员决策用;另一方面可以从远程终端获取维修经验数据供本地维修人员参考。
无线传输模块采用构件形式,传输距离在1 000 m左右,更远的距离可选专网形式完成。
3 系统软件设计
软件部分用于控制硬件并与硬件协同工作,包括DSP控制程序、PC机显示程序和U盘自启动程序。
3.1 DSP控制程序
DSP控制程序完成如图1的功能模块中主板核心模块的测试(即BIOS自检结果读取模块的程序控制)和外围模块测试的程序控制,其流程图如图4所示。
3.2 U盘自启动程序
如图5所示,U盘自启动程序模块用于车载计算机主板的外围接口模块功能检测的程序控制,必须与DSP控制模块中测试程序配合使用。
对于每一外围模块,按照外围接口的分类,根据特性参数设计测试用例,每一类外围模块输入一组测试用例,DSP控制程序回采数据,彼此配合完成其测试。
3.3 PC机程序
PC机程序完成测试过程中实现检测代码的读取、分析,并依据数据库中相关的专家经验提供合适的维修建议,以帮助修理人员修复主板,如图6所示。
程序使用Access数据库管理、维护,人机接口界面采用MFC实现。
4 应用
该检测系统已应用于某设备的维修训练系统中,主板的故障代码数32个,涵盖了该类主板的常见故障类型,主板的外围模块故障6类(见图3)。通过使用证明设计可行,较好地解决了该类主板的检测维修问题。
5 结语
车载计算机主板的检测是一个复杂的过程,本文所述的检测系统主要应用于装甲车载计算机主板的常见故障进行检测。本测试系统可完成:
(1)主板电源、常用状态信号检测。这些信号对主板的功能起重要作用。
(2)主板核心模块功能检测;
(3)主板相关硬件接口设备功能检测;
(4)根据维修经验可进行故障定位。利用此测试系统,通过有线(RS 232)把检测结果通过上位机显示或无线形式把检测数据发送远程终端,简易而快速地进行主板故障检测与维修定位,解决了主板运行过程中不可见和不易检测的硬件故障检测,给相关硬件设计和维修人员提供了很大的便利。