刘 宇,李成文,高杨,杨 涛,何小亚(中国航空计算技术研究所,西安,710119)
分布式计算机系统通用接口模块的设计与实现
刘 宇,李成文,高杨,杨 涛,何小亚
(中国航空计算技术研究所,西安,710119)
摘要:文章的研究目的是研究新一代飞机机载计算机中具用通用化、模块化的机载通用接口模块,满足新一代综合化航空电子系统要求.文章介绍了一种应用于分布式计算机系统的通用接口模块的设计与实现,此设计解决了新一代飞机对接口模块综合化、模块化的要求,介绍了通用接口模块具体实现方式,通过验证证明了设计的可行性和可靠性,目前,通用接口模块在机载容错分布式计算机原理样机中通过了系统验证,满足用户要求.
关键词:分布式;通用接口;LRM
随着航空电子系统的快速发展,系统对机载计算机的性能提出了越来越高的要求,尤其是对机载计算机的综合化、模块化要求。机载计算机不仅要计算大量的数据,而且还要对各种数据进行融合,除具有处理器、RAM、ROM外,还要求具有很强的对外设备的输入输出处理能力,如何实现模块综合化、模块化已经成为一个新的研究方向。
本文介绍的通用接口模块就是一种实现数据处理及与对外输入输出处理能力的设计。
整个系统分成两个功能块:CPU和IO、CPU部分负责整个模块内部的数据处理和资源管理,而IO部分用于整个系统与外部设备的输入输出处理,两大功能块通过PCI总线连接。
通用接口模块用于模块内部数据处理、资源滚利几对外部设备的输入输出处理,图1是通用接口模块原理图,其中上半部分为CPU部分,下半部分为IO部分。两部分通过PCI总线连接:
3.1CPU部分功能设计
CPU部分实现上电复位、时钟电路、电压转换器、看门狗电路、MPC107桥等电路。
复位电路由上电复位电路和复位处理电路组成,上电复位电路采用MAXIM公司的MAX791实现,当上电、掉电或手动复位有效时,上电复位电路产生200ms的复位信号。复位处理电路由CPLD逻辑实现,上电复位电路的输出复位信号送到CPLD1(因MAX791产生的是5V信号,不能直接输入到MPC107上),经过CPLD1逻辑驱动后输入到MPC107上,由MPC107产生MPC107_ HRST和MPC107_SRST输入到CPLD1,再由CPLD1产生处理器硬复位和处理器软复位及PCI设备复位信号。
时钟电路输入时钟为33MHz(3.3V时钟),33MHz时钟由SG-8002JF-33MHz晶振产生,然后输入到MPC107上,MPC107产生5 路33MHz同步时钟供PCI设备使用(到通用接口模块的通用部分),MPC107内部实现时钟锁相环电路,经MPC107中的DLL产生4路同步时钟(66MHz~100MHz)时钟供SDRAM使用, 产生3路同步时钟(66MHz~100MHz)时钟供处理器使用。
本模块上处理器(MPC750)内核电压为2.6V,接口电压为3.3V;MPC107内核电压为2.5V,接口电压为3.3V或2.5V,其它芯片均为5V或3.3V电压。5V,3.3V电压可由电源模块提供。处理器内核电压2.6V由线性Linear公司的可调电压转换器LT1083CT提供,最大电流7A。MPC107内核电压2.5V电压由LT1085CM提供,最大电流3A。为了保证同时加电,电压转换器之间加入二级管,当上电时VOUT立刻可达到预设值(小于2.6V),再等到电压转换器转换电压VOUT达到2.6V时,二级管反向截止,从而电压稳定满足器件电气特性。
看门狗电路采用MAX791和CPLD实现,定时周期可根据应用需要用硬件设置,默认为1.6s。当看门狗功能失效后,产生看门狗中断。看门狗设计,当看门狗报警时采用硬件设计自动喂狗,当连续发生三次看门狗中断后产生处理器软复位。
MPC107内部实现EPIC(嵌入可编程中断控制器),可以管理5路PCI中断,中断控制器示意图如图6,处理器1管理5路PCI中断及MPC107中断,看门狗中断和掉电中断接到处理器的MCP上,查询FPGA内部寄存器可以判断是看门狗中断还是掉电中断。
MPC107PCI桥接器/集成存储器控制器提供MPC6XX,MPC7XX,MPC74XX处理器到PCI总线的接口,MPC107提供功能有:一个高性能的存储器控制器,两处理器的支持,两通道DMA控制器,一个中断控制器,一路I2O消息控制器,一路I2C接口,一个时钟锁相环电路,MPC107内部有配置寄存器,配置寄存器基地址为0XFEC00000。
3.2 IO部分功能设计
IO部分实现PCI桥接器、PCI局部总线控制器、接口电路、模拟量处理电路、输入输出离散量处理电路等电路。
3.2.1PCI桥接器设计
PCI桥接器使用PLX Technology公司的PCI9056.PCI9056具有32位、66MHz的PCI总线以及局部总线操作;PCI9056内部还是基于原有的PCI9054技术架构.PCI9056具有以下特点:
1)含有1个PCI仲裁器,支持7个外部主控设备;
2)2个独立的DMA通道,每个通道含有1个双向的深度为64长字(256字节)的FIFO;
3)增强的M模式功能,能提供PowerQUICC超出原有16字节长度限制的突发传送;
4)有2个响应同样深度的FIFO,并有可编程的读信号超过报告及其恢复;
5)符合PICMG 2.1热交换技术规范,包括电压偏移容错、预充电功能与预置不支持响应功能,支持PCI电源管理,含有D3cold电源事件中断;
6)可应用于嵌入式主机的复位和中断引脚设置功能,具有JTAG边界扫描;
7)2.5V的CMOS芯核电压,对3V和5V的I/O信号电平兼容。
图1 通用接口模块原理图
本模块的PCI9056设计成PCI总线的目标设备,采用M模式局部总线。
3.2.2PCI局部总线控制器
PCI局部总线控制器由CPLD2逻辑实现,该控制器包括片选译码电路、时序控制电路、AD转换控制电路、429时钟分频电路、429控制器和中断管理器。
片选译码电路是对PCI9056局部总线进行地址PCI_ A[31:28]、PCI_A[15:0]、传输类型码PCI_SIZE[1:0]进行译码产生各种IO接口片选CS_L和字节使能BE_L[3:0]。PCI_ A[31:28]产生IO设备的基地址0x80000000,PCI_A[15:2]产生IO设备的偏移地址0x0000-0xFFFF。所有IO设备均按32位方式访问,访问地址加4,有效数据为低8位或低16位。
时序控制电路实现IO设备访问的读/写信号,及对PCI主设备访问应答等功能。CYC_L为周期信号,DEN_L为数据使能信号,这两个信号控制IO设备访问时间,读信号RD_L和写信号WR_L均与时钟CLK同步,各IO设备的访问时间按芯片手册提供的典型值来设计。
AD转换控制电路用于启动AD转换、读取AD码、锁存AD码及模拟通道的选择,该电路还包括输入离散量的驱动。
429时钟分频电路产生1MHz时钟供ARINC429协议处理器使用,该电路由一个4位计数器实现,计数器输入时钟为16MHz,输出时钟为1MHz。
429控制器用于控制ARINC429接口电路收发数据,是本模块设计的重点和难点之一。429控制器要完成ARINC429接口电路的读/写、配置、接收数据处理、发送数据处理等操作。
中断管理器用于管理RS422通信中断、ARINC429通信中断和AD转换器中断,中断管理器接收16路中断:1路AD转换中断、9路RS422中断、6路ARINC429中断,所有中断均为电平触发方式。中断管理器设有16位寄存器保存16路中断请求,中断管理器的寄存器地址为0500H。
3.2.3接口电路电路设计
接口电路由RS422接口电路和ARINC429接口电路组成。
RS422接口电路实现9路RS422协议的数据通信,该电路由5片TL16C552芯片和9片MAX488实现。5片TL16C2552芯片实现10路数据转换通道,本模块使用其中的9路。RS422数据转换通道的物理数据宽度为8位,本模块设计成32位访问方式。MAX3490实现3.3V TTL电平与差分RS422串行通信电平的转换。
ARINC429接口电路实现4路ARINC429协议数据接收、2 路ARINC429协议数据发送,该电路由2片HS4-3282芯片和2片HS4-3182芯片实现,4路ARINC429接收通道与RS422接口电路的6、7、8、9接收通道复用,2路ARINC429发送通道与RS422接口电路的8、9发送通道复用,通道的切换通过设置12个跳线实现。
3.2.4模拟量处理电路
模拟量处理电路用于处理3路-10V~+10V输入模拟量,本部分电路由模拟量输入信号前端处理电路和A/D转换电路组成。
模拟量前端处理电路由RC电路和运算放大器(OP200)组成,3路-10V~+10V外部模拟量输入接口,采用差分或单端输入方式,高低端通过一阶滤波,经运放(OP200)进行1:1的比例放大,然后送入A/D转换电路。
A/D转换电路由多路器ADG508和模数转换器AD1674组成,AD1674内部有采样保持器,允许单极性和双极性输入,输入电压可为±5V,±10V, 0V-10V, 0V-20V。本模块的AD1674设计成可以是单极性输入,也可以是双极性输入,由跳线来设置,输入电压可为±10V和0V-20V。
3.2.5输入输出离散量处理电路
输入输出离散量处理电路由输入离散量处理电路和输出离散量处理电路组成。
输入离散量处理电路实现0V-32V的输入离散量处理,0V-3V定义为逻辑‘1’;18V-32V定义为逻辑‘0’,输入离散量处理电路由光电隔离6N140芯片、电压调节电阻和CPLD2逻辑实现,
输出离散量处理电路要实现12路离散量输出,其中4路为TTL电平、4路+15V/地、4路为4路+28V/地。5V离散量输出电路是由CPLD2的逻辑实现,4路5V离散量直接从CPLD2输出到底板总线,15V离散量输出电路是由CPLD2的逻辑、电压变换器MC14504和限流电阻实现,4路15V离散量从CPLD2的锁存器输出,然后电压变换器MC14504把5V TTL电平离散量转换成15V离散量,最后经过10KΩ电阻送到到底板总线。15V输出离散量使用并口1的高4位。15V离散量输出端口地址为0x80000200,28V离散量输出电路是由CPLD2的逻辑、继电器驱动器SG2803、继电器S172和限流电阻实现。4路28V离散量从CPLD2的锁存器输出,送到继电器驱动器SG2803,SG2803驱动S172继电器,使继电器接+28V或接28V地,产生+28V/地的离散量,最后经过50KΩ电阻送到到底板总线。28V输出离散量使用并口2的低4位,28V离散量输出端口地址为0x80000204。
通过JTAG调试接口、串行总线接口以及故障输出接口来检测模块工作的正确性,检测结果正确,达到技战术指标,满足用户需要,同时也可以对模块进行调试,跟踪等。模块的验证主要包括可编程逻辑器件的仿真验证和功能的验证。目前,通用接口模块已在机载实时容错分布式计算机系统原理样机中通过了系统验证,本分所实现的一种通用接口模块已经应用于分布式机载计算机系统,前景广阔。
本文介绍了一种应用于机载实时容错分布式计算机系统的通用接口模块的设计与实现,本课题在应用预研成果的基础上,针对新一代飞机机载计算机系统,突破了多项关键技术,为新一代飞机的综合航电系统的研制提供了有力的支持。
参考文献
[1]郑纬民.计算机系统结构[M].北京:清华大学出版社,2000.
[2]MPC750 RICS Microprocessor Family User' s Manual[Z]. USA: Motorola Inc,2001.
[3]MPC107 PCI Bridge /Memory Controller User's Manual [Z].USA: Motorola Inc,2000.
[4]李贵山.PCI 局部总线开发者指南[M].西安: 西安电子科技大学出版社,2001,3.
[5]Universe IITM User Manual[Z].USA:TUNDRA,1998.
[6]PCI 9056BA Data Book[Z].USA: PLX Technology Inc,2003.
作者简介
刘宇(1987~ ),男,黑龙江绥棱人,学士,助理工程师,主要研究方向为计算机及应用。
Design of A Genneral I/O Module for Distributed Computer System
Liu Yu,Li Chengwen,Gao Yang,Yang Tao,He Xiaoya
(Aeronsutical Conputing Technique Research Institute,Xi’an,710068,China)
Abstract:To research general airborne I/O module for next-generation airplane ,fulfilling integrated avionics system’s requirements, is the main purpose of integration and modularization.Thispaper also presents a method of verification for feasibility and reliability.The general I/O module passed user acceptance tests and functions well in prototype airborne distributed cpmputer systems.
Keywords:distributed;common interface;LRM