高可靠平台计算机设计
引言 随着航天技术的不断发展,对控制的要求也越来越高,需要具备更高的反应速度和更强的数据处理能力。在航天领域,一旦控制发生错误,将会造成难以估计的损失。因此,如何提高控制的可靠性是长期以来的一个重要问题。本文介绍了SOC应用方式的一种实际开发方案,重点讨论了平台计算机的高可靠性的设计和实现方法。 高可靠平台计算机主要任务 本高可靠平台计算机主要完成以下主要任务:实时录取惯性测量仪表输出的转动角增量和视速度增量;接收机载导航系统给出的初始位置、速度以及姿态数据;实时接收定位卫星测量数据;实时完成制导、姿控方程的运算,按照控制律及制导律要求,对采集的信息进行变换、综合,形成控制/制导指令,控制舵机;集成1553B总线通信功能,进行总线通信与控制;4路D/A输出姿态控制指令;具有8级可屏蔽中断;通过1553B接口与地面计算机通信,进行信息交换;提供三个带光电隔离的RS422接口。 平台计算机采用FPGA+S698IP核的方案(简称SOC),以S698IP核做为主CPU,另外再把1553B总线控制器、VME总线控制器、3个带FIFO的UART整合在一起。体现了欧比特公司S698IP核灵活、优越性能。并且支持多操作系统。采用SOC设计节省昂贵的流片费用、增加系统设计的灵活性、方便修改、大大缩短设计开发的周期。 高可靠平台计算机 高可靠平台计算机功能框图示于图1。 图1高可靠平台计算机功能框图 高可靠平台计算机采用FPGA+S698IP核的SOC形式实现,FPGA采用EP1C20。 高性能的S698IP核作为内核,集成了大量的外围设备,并将这些所有的模块全部集成到一个FPGA器件当中,降低了整个板级系统的成本,缩小了板级系统的体积,器件等级选用工业级以上器件,大大提高了系统的可靠性。 S698IP核的功能框图示于图2。 图2S698IP核功能框图 S698IP核特点如下:内部使用了5级流水线,SPARCV8指令集;硬件乘法器和除法器;支持2条DSP指令(MAC&UMAC);浮点运算:双精度(64位);具有分开的指令和数据cache结构(哈佛结构),可以根据需求灵活的配置cache的容量,大小范围是1-64kbyte;片上总线规范使用了AMBA2.0规范,支持APB,和AHB标准;外设可裁减,包括UART,定时器,中断控制器,存储器管理单元,I/O端口,看门狗等;采用AMBAAHB/APB总线结构的用户设计新模块,可以很容易加入到S698IP核中,完成用户的定制应用;集成调试支持单元(DSU),支持硬件调试功能。 高可靠平台计算机系统板具有如下硬件资源:FPGA(集成S698、1553B、VMEIP核);1553B部分;VME部分;4MBFLASH;4MBSRAM;4路+10V~-10V,12位DA输出;3路光电隔离RS422,其中2路具有16字节FIFO,1路1K字节FIFO;频标频率可配置;定时器;8级中断;FPGA提供JTAG、AS接口;1路UART;DSU(硬件调试单元)。 S698IP核高可靠设计 为了适用于航空航天的高可靠性应用,S698IP核采用多层次的容错策略;奇偶校验、TMR(三模冗余)寄存器、片上EDAC(检错和纠错)、流水线重启、强迫Cache不命中等。尽管现在几乎所有CPU都有一些常规的容错措施,如奇偶校验、流水线重启等,像IBMS/390G5还采用了写阶段以前的全部流水线复制技术。IntelItanium采用的混合ECC和校验编码等技术;但远没有S698IP核那样,采用如此全面的容错措施。 S698IP核将时序(存储)单元的状态翻转作为数字容错的主要内容,根据时序逻辑的不同特点和性质,采用了不同的容错技术和手段。 1)Cache的容错。大的Cache对高性能CPU来说是至关重要的,而且位于处理器的关键(时间)通路上。为了减少复杂性和时间开销,错误检测的方法采用2位的奇偶校验位,l位用作奇校验,l位偶校验,因此可以检查所有的错误情况,在读Cache的同时进行校验。当校验出错误,强制Cache丢失,并从外部存储去获取数据。 2)处理器寄存器文件的错误保护。寄存器文件是处理器内部的寄存器堆,内部的寄存器对于指令的运行速度和用户程序设计的灵活程度都是很重要的。内部寄存器的使用频率很大,其状态的正确性是也很关键。S698IP核采用1、2奇偶校验位和(32.7)BCH校验和进行容错。 3)触发器的错误保护。处理器的2500个触发器均采用三模冗余的方式进行容错,通过表决器来决出正确的输出。
硬件高可靠设计 3个RS422接口和1553B接口是系统对外接口,RS422采用光电隔离,工作时以光作为媒介来传递信息,无触点,寿命长,响应速度快,输入和输出在电气上是完全隔离的,采用了高等级隔离电源,给光耦单独供电,抗干扰能力强。 1553B是一种具有可确定性的、传输可靠的数据总线,为双冗余设计,广泛地应用于不同的军事平台(航空系统、地面车辆系统、舰艇系统)系统,已经发展成国际公认的数据总线标准。 底板数据总线为VME(VersaModuleEurocard),VME总线是一种通用的计算机总线它定义了一个在紧密耦合(closelycoupled)硬件构架中可进行互连数据处理、数据存储和连接外围控制器件的系统。经过多年的改造升级,VME系统已经发展的非常完善,围绕其开发的产品遍及了工业控制、军用系统、航空航天、交通运输和医疗等领域。 整体的可靠性设计 SPARC微处理器最突出的特点就是它的可扩展性,这是业界出现的第一款有可扩展性功能的微处理器,它的无穷扩展能力能够应付各种变化的数据处理要求。具有高结构化设计,容错及程序保护等设计。由于其独到的性能,在航天领域得到了青睐。由于采用SOC方式,内部集成度高,外部扩展工作少,此本身具有较强的抗干扰能力;同时通过外部硬件电路以及软件的抗干扰设计,平台计算机可以实现非常高的可靠性。 RS422 3个UART控制器在SOC中实现,通过RS422收发芯片将LVTTL电平转换为RS422电平,其中1路RS422带接收/发送中断。 UART1具有16byte的FIFO,可产生中断,取数后,清中断,并同时清空FIFO。UART2具有1Kbyte的FIFO,数据发送时由独立管理器管理,不占用CPU时间。UART3具有16byte的FIFO,可产生中断。 采用RS422总线接口,最大传输距离:1000m。为了提高抗干扰能力和较高的EMI防护性能,采用了光电隔离方式,提高了节点的稳定性和安全性。 频标和5ms中断 频标和5ms中断功能在SOC中实现。频标默认频率1ms,兼容TTL电平,50%占空比。在SOC中可通过配置不同的值输出不同频率的频标,其启动和关闭均可由软件操作相应寄存器来控制。 5ms定时器模块用于产生周期性的中断请求,默认周期为5ms,其启动和关闭均可由软件操作相应寄存器来控制。 1553B部分 1553B总线与S698IP核集成在一起,在SOC中实现。传输速度为每秒1M比特,字的长度为20个比特,数据有效长度为16个比特,信息量最大长度为32个字,传输方式为半双工方式,传输协议为命令/响应方式,故障容错有典型的双冗余方式,第二条总线处于热备份状态;可通过软件配置实现3个不同的终端,有总线控制器(BC)、远置终端(RT)和总线监听器(BM);信息格式有BC到RT、RT到BC、RT到RT、广播方式和系统控制方式;能挂31个远置终端,传输媒介为屏蔽双绞线,总线耦合方式采用直接耦合方式。平台计算机实现了完整的1553B总线的通讯,其包括BC、RT、BM,其功能、通信以及操作方式同BU-6158X芯片基本一致。一片能实现1553B功能的专用芯片DDC61580价格不菲,而且全面依赖进口。全面依赖进口的产品用在特殊领域也不适合,而我们在一款性价比很高的FPGA里就实现了实现DDC61580同样的功能。 1553B总线控制器的主机接口有两种:APB和AHB。主机(即SPARCV8处理器)通过APB接口(包括输入总线APBI和输出总线APBO)访问寄存器,通过AHB接口(包括输入总线AHBI和输出总线AHBO)访问存储器。ManchesterCODEC的输出/输入为互补曼彻斯特码,码速率为1Mbps。信号RXA、RXAN、TXA、TXAN、TXAEN、RXB、RXBN、TXB、TXBN和TXBEN为1553B总线控制器同外置收发器芯片的接口信号。 本计算机平台可以通过对1553B控制器寄存器进行配置,可以分别实现BC、RT、BM的功能。可以灵活应用在不同的场合。 VME部分 VME总线是一种应用较为普遍的计算机接口总线,技术成熟。目前国内外很大一部分的星载计算机并行总线都采用VME总线结构。VME总线是一种高速、异步并行数据传输总线,可在非多路、32位数据和地址通路上支持八位、十六位和三十二位的传输,通讯协议是异步和全挂钩方式的。它包括的功能模块有:主模块、从模块、中断模块和中断管理模块,另外还有两个模块:总线定时模块和IACK菊花链驱动模块辅助上述各个功能模块。 本平台计算机VME总线控制器在SOC中实现标准VME总线,VME总线信号从SOC出来后,经总线驱动电路,输出到背板连接器。总线芯片采用74ALVC164245,实现3.3V~5V电平转换。VME接口与底板连接器有96个引脚,排列成三排,每排32引脚。VME控制器挂接在处理器外部存储控制器总线上,映射的区域为I/O区,为其分配的地址区域为:0x24000000~0x24FFFFFF,共16M空间。 D/A转换模块 D/A转换模块由以下三部分组成:D/A转换芯片、基准、运放。12位D/A转换精度,可输出4路+10V~-10V电压 软件编程 S698IP核可以支持ucLinux,RTEMS,Vxworks等多种操作系统;也可不使用操作系统,支持标准C编程。而且开发了Linux和Windows下图形化集成开发环境,支持流行的调试方法;开发环境支持离线仿真调试和目标板在线调试。 结语 这种高可靠平台计算机,不再采用体积大、笨重而又功耗巨大的处理器芯片(如DSP),而是直接将S698IP核放进FPGA。同时在硬件、软件以及制板布线等方面采用多种提高系统可靠性的设计措施。系统将大部分的处理功能硬件化,利用FPAG的丰富资源,将整个系统放入一片FPGA芯片内。其中的S698IP核进行控制管理和一些必须的计算处理。这样的一款国产的高性能的处理器,具有自主的知识产权,应用在一些特殊的领域,对于国家安全来说尤为重要。S698IP核在性能上也绝不逊色于其他同类处理器,丰富的外设,为用户搭建了一个芯片级的高可靠计算机平台,使用起来极为方便。
|