APP下载

集成BIT的ARINC429总线模块设计

2019-06-09王魁

科技创新与应用 2019年17期

王魁

摘  要:ARINC429总线因其结构简单、性能稳定、抗干扰性强,在机载通信领域被广泛应用。文章针对成品ARINC429芯片占空间大、扩展性差、自检能力弱等问题,设计了一种基于FPGA的集成机内测试(BIT)的ARINC429协议电路,外部电路可通过寄存器对ARINC429的工作和自检模式等进行灵活配置,模块化的设计也方便用户按需要进行ARINC429通道扩展。

关键词:ARINC429;FPGA;机内测试

中图分类号:TJ760         文献标志码:A         文章编号:2095-2945(2019)17-0080-02

Abstract: ARINC429 bus is widely used in the field of airborne communication because of its simple structure, stable performance and strong anti-interference. In order to solve the problems of large space occupation, poor expansibility and weak self-test ability of the finished ARINC429 chip, this paper designs a ARINC429 protocol circuit with built-in test(BIT) based on FPGA. The external circuit can flexibly configure the work of ARINC429 and self-test mode through registers, and the modular design is also convenient for users to expand the ARINC429 channel as needed.

Keywords: ARINC429; FPGA; built-in test(BIT)

1 概述

ARINC429总线是一种串行标准,结构简单、传输可靠、抗干扰能力强,广泛应用于航空电子系统的数据传输[1]。ARINC429总线数据字包括奇偶校验位、符号/状态位、数据位、源/目的标识和标号[2]。

通常ARINC429总线设计时大都采用专用协议和驱动芯片,如HARRIS公司的HS-3282和HS-3182芯片、Device Engineering公司的DEI1016和BD429芯片,但由于专用芯片单片大多只支持一发两收,扩展性差,且芯片本身的BIT能力较差,难以满足目前电子装备高集成、自诊断的发展需求。

2 电路设计

针对成品ARINC429芯片占空间大、扩展性差、自检能力弱等问题,利用VHDL语言[3]设计了基于FPGA的集成机内测试(BIT)的ARINC429协议电路,可通过寄存器对电路的工作模式、自检内容及通道等进行灵活配置。系统由主控模块、发送模块、接收模块、自检模块和数据开关组成,基本构成如图1。

主控模块提供外部与内部模块之间的数据、地址及控制通道,完成相应的逻辑变换;发送模块实现一个发送通道的配置、数据编码、发送波形产生及发送状态输出等;接收模块实现一个接受通道的配置、波形采样、数据解码、数据输出及接收状态输出等;自检模块根据用户配置的自检模式及内容完成相应的自检流程;数据开关在自检模块的控制下,实现数据流的流向控制。

2.1 发送模块的设计

发送模块的原理及组成如图2,外部控制电路根据约定的数据传输协议将配置信息和控制指令写入控制寄存器,在通过读状态寄存器确认发送FIFO未满时将待发送数据写入发送FIFO。发送控制器解析控制指令并按要求啟动相应发送模式,目标信息和数据等先经编码器编码,然后进行并/串转换,奇偶校验产生器通过计数串行数据产生奇偶校验位,串行数据再经波形发生器形成符合ARINC429通信协议的两路脉冲数据串,波形发生器在每帧数据发送结束时按4位数据位时间延时,延时结束后进入下一帧数据发送。

数据发送时,需要通过发送控制寄存器进行发送模式等配置,如发送模式包括启动发送模式、自动单发送模式、自动循环发送模式等。

发送模块采用状态机进行设计,单帧数据发送的状态机如图3所示。其中,S0为空闲状态,S1为数据发送状态,S2是奇偶校验处理状态,S3是字间隔发送状态,S4是错误处理状态。

2.2 接收模块的设计

接收模块原理及组成框图如图4,采样器检测到两路符合ARINC429通信协议的脉冲数据串的起始位后,启动数据接收,将采样到的每一位数据位送入串/并转换器,奇偶校验与数据位接收同时进行,形成的并行数据送入解码器进行数据解码、目的码识别和校验等,判断为正确的数据写入接收FIFO,数据错误或奇偶校验错误的数据自动丢弃,并将错误类型写入接收状态寄存器。接收控制器在确认接收到正确数据时产生数据接收中断,或置接收数据标志以供外部控制电路查询接收。

数据接收前,需要按约定通过接收控制寄存器对发送波特率、奇偶校验、数据接收模式等进行配置。

接收模块单帧数据接收的状态机如图5所示。其中,S0为等待状态,S1为采样状态,S2为数据接收状态,S3为数据校验状态,S4为写数据状态,S5为错误处理状态。

2.3 自检模块的设计

自检模块为外启动工作模式,由自检控制器、激励发生器、模式寄存器、控制寄存器、状态寄存器及16个自检子模块组成。16个自检子模块对应16项自检内容,自检内容有发送/接收片内回路、单发送/接收、波特率、奇偶校验等。自检模块可通过配置进行自荐内容选择组合及通道扩展,16位控制寄存器的每一位对应一项自检内容,缺省值均为0,置1时表示执行该项自检内容,自检结果通过状态寄存器反映,为1表示自检未通过。

自检模块的工作流程如图6所示,外部控制电路启动自检后,自检控制器依据控制寄存器内容执行相应自检,并控制激励发生器产生自检所需的各种激励信号,自检结束后将自检结果置入状态寄存器。用户可读取模式寄存器的自检状态位确定自检是否结束。

3 验证与结论

本文的ARINC429协议电路基于VHDL语言设计,在深圳国微FPGA可编程器件SMQV300上进行了验证,外围ARINC429总线接口差分线驱动器采用HARRIS公司的HS-3182,发送通道输出的仿真波形如图7。

协议电路完成了北京旋极等多家公司ARINC429卡的连接测试及故障注入试验,并成功应用于某型导弹生产测试设备上,经历了对几百发产品的测试和验证,证明了设计的正确性。设计的协议电路极大地方便了印制板的设计及通道的灵活扩展,具备的自检功能也利于故障的及时发现与处理,具有良好的实用价值和经济效益。

参考文献:

[1]Condor Engineering Inc. ARINC429 Protocol Tutorial [S].2000.

[2]王春雷,罗阳,朱智强.某专用429总线接口协议的FPGA实现[J].航空兵器,2012(1):41-43.

[3]侯伯亨,刘凯,顾新.VHDL硬件描述语言与数字逻辑电路设计[M].西安:西安电子科技大学出版社,2006.