当前位置:首页 > 作文大全 >

基于FPGA技术实现ARINC429通信

发布时间: 2022-03-16 08:20:12 浏览:

摘 要:提出了一种利用FPGA技术解决ARINC429通信的实现方案,该方案不仅使国内的ARINC429通信设备摆脱了对国外ASIC电路的依赖,还降低了设备成本,并且克服了国外ASIC电路的不足,实现了任意长度数据帧的群收和群发功能,具有较好的应用前景。利用该方案研制的ARINC429数据通信卡,已成功应用于空空导弹测控设备中。

关键词:FPGA;ARINC429;VHDL语言;ASIC电路

中图分类号:TN919文献标识码:B文章编号:1004373X(2008)1901003

Realization of ARINC429 Communications Based on FPGA Technology

LUO Yanqiang,CHEN Lei

(China Airborne Missile Academy,Luoyang,471009,China)

Abstract:A scheme for solving ARINC429 communications based on FPGA technology is proposed in this paper.This scheme not only gets rid of depending on overseas ASIC circuit,but also overcomes shortages of overseas ASIC circuit and achievesthe function of group-transmiting and group-receiving for any length data frame with cheap cost.Based on this scheme,ARINC429 communications card is developed which has been applied to the airborne missile test and control equipment successfully.

Keywords:FPGA;ARINC429;VHDL language;ASIC circuit

ARINC429规范是由美国航空电子工程学会(Airlines Electronic Engineering Committee)提出,主要用于航空电子系统之间数字信息交换的一种工业标准。目前ARINC429通信设备普遍采用美国Harris公司的ARINC429协议电路,该ASIC电路价格昂贵,同时数据接收只能单字缓存,数据发送最多支持连续8个字群发,因而在数据帧群收和群发的应用中增加了控制软件实时性的要求。随着微电子技术的快速发展,FPGA的规模正在成倍增长,而价格却在大幅度下降,利用大规模、价廉的FPGA替代ASIC正在成为一种设计趋势。在国防领域,这种替代设计在提高了产品性价比的同时,还避免了西方国家在敏感领域对国内的器材禁运。本文所讨论的内容就是基于FPGA技术实现ARINC429数据通信,该方案克服了专用协议电路的不足,实现了任意长度数据帧的群收和群发功能。

1 实现方案

ARINC429通信包括数据接收和发送两个完全独立的过程,分别由各自模块完成相应的功能。

1.1 接收功能实现方案

ARINC429总线数据是一种双极性归零码型,分A、B两路信号差分输入。利用光耦将差分信号分离为两路TTL信号DataA和DataB,如图1所示。进一步分析DataA和DataB两路信号不难发现:它们不仅包含“0”、“1”码元信息,还包含位时钟信息及数据字和数据帧结束信息。接收模块就是从这两路信号中提取必要的信息,从而分离出每一个数据字和数据帧,并转化为易于计算机读取的并行数据。本设计利用FPGA内部的RAM作为接收缓冲区,完成数据的单字接收或多字群收,缓冲区的深度决定最大群收数据帧大小。

接收电路组成如图2所示。外部时钟是数倍于输入数据速率的高倍时钟,用于捕捉DataA和DataB信号最稳定有效的中间时刻,作为触发器置数、清零的同步时钟输入。触发器的输出即为所接收的429数据串形电平码,经串并转换后形成并行数据。字检测电路判别接收到的429数据是否完整,若完整,则依次写入接收缓冲区内,同时输出字接收结束标志信息,否则,丢弃该不完整数据。帧检测电路监测输入数据空闲位是否超出指定值,若超出,即判断为群收数据帧接收结束,并输出该信息。外部设备可以利用这两个标志实时从缓冲区读取数据。

字/帧检测电路的设计借鉴了计算机看门狗原理:利用分离出的输入数据位时钟作为计数器的清零脉冲,当有数据输入时,该计数器被位时钟信号定时清零;没有输入数据时也没有位时钟,计数值不被清零,并累加到设定的门限值,由此检测出字/帧结束状态。下面列出字/帧检测模块的VHDL语言实现程序:

constant N1,N2:integer;--定义字间隔和帧间隔的门限值

begin

process(clk,clr,rbclk)

variable count:integer range 0 to N2;

begin

if (clr=′1′) then count:=0;WordEnd<=′0′;BlockEnd<=′0′;

--初始化字结束标志信号WordEnd和帧结束标志信号BlockEnd

elsif(clk=′1′ and clk′event) then

-- 有接收数据位时钟rbclk时,计数值清零,否则计数值累加

if rbclk=′0′ then

count:=count+1;

else count:=0;

end if;

if count=N1 then WordEnd <=′1′;-- 计数值到达字间隔门限值时输出字结束标志

elsif count=N2 then count:=N2;BlockEnd <=′1′;

-- 计数值到达帧间隔门限值时输出数据帧结束标志

else WordEnd <=′0′;BlockEnd <=′0′;

end if;

end if;

end process;

从以上程序可以看出,在接收缓冲区容量范围内,电路对数据帧的大小完全自适应,由于引入外部高倍时钟,允许输入数据速率存在一定范围的偏差。

1.2 发送功能实现方案

利用FPGA内部的另一段RAM作为发送缓冲区,429数据可以单字发送或数据帧群发,群发数据帧的大小取决于发送缓冲区的深度。外部设备将待发送的数据写入发送缓冲区,然后向FPGA写控制字启动或停止发送。在发送过程中,电路同时输出字输出结束和帧输出结束标志信息,外部设备利用此信息可以实时更新发送内容。奇偶校验电路自动判别输出位的奇偶状态,并将最后形成的奇偶校验位填入每个字的最后一位。字/帧间隔形成电路在输出数据字与字之间形成4位低电平间隔,数据帧之间保持零电平状态。差分信号分离电路将发送数据按照设定速率形成两路TTL电平差分信号,最后经外部电平变换电路形成符合ARINC429规范的数据格式输出。发送电路组成框图如图3所示。

以上各模块功能清晰,这里不再逐一详述。下面讨论差分信号分离电路的设计方案:图4电路将并串转换后的串行信号data和位时钟bclk及字/帧间隔信号clk[CD#*2]null作为输入,产生两路差分信号。由于输入信号在各自路径存在不同延时,输出端信号429A和429B会产生竞争冒险现象,因此不能直接作为输出信号。本设计利用电路中的高倍时钟消除竞争冒险的影响,如图5所示,clk20为20倍位时钟频率的高倍时钟,该电路可以消除宽度在两个高倍时钟周期以内的尖脉冲信号。图6为增加消除竞争冒险逻辑后输出信号的时序仿真波形。

2 ARINC429数据通信卡设计

本方案FPGA选用Altera公司的FLEX10K20器件。利用FLEX10K20内部嵌有6×2 048 b容量的RAM,平均分配作为ARINC429数据的接收和发送缓冲区,这样群收和群发的数据帧长度最大可达192字(32 b/字)。笔者以本方案设计的FPGA电路为核心,研制成功基于PC总线的ARINC429通信卡。该卡的接收和发送位速率、字长、数据帧大小、奇/偶校验和发送周期等参数可由软件设定。由于FPGA承担了数据通信中的实时控制任务,因而对控制软件的实时性没有要求,也不需要增加任何板上微处理器控制。电路中所有接口逻辑和控制逻辑全部集成在一片FPGA内,FPGA外围只需要光耦、电平变换电路等少量器件,实现了SoC(System on a Chip)片上系统。目前该电路正在应用于空空导弹测控设备中。

3 结 语

本文提出的基于FPGA技术实现ARINC429通信的一种解决方案,克服了国外ASIC电路的不足,实现了任意长度数据帧的群收和群发功能,提高了产品性价比。该方案在航空或民用ARINC429通信设备中具有较好的应用前景。

参考文献

[1]ARINC Specification 429-9.MARK33 Digital Information Transfer System[S].2000.

[2]M4K429RTx User′s Manual[R].Excalibur System Inc.2006

[3]Altera Corporation.FLEX10K Embedded Programmable Logic Device Family Data Sheet[R].2001.

[4]胡振华.VHDL与FPGA设计[M].北京:中国铁道出版社,2003.

[5]于英民,于佳.计算机接口技术[M].北京:电子工业出版社,2004.

[6]王育坚.Visual C++面向对象编程教程[M].北京:清华大学出版社,2003.

[7]顾世哲,武君胜.ARINC429测试系统设计与总线数据描述方法研究[J].航空计算技术,2006,36(3):22-24.

作者简介 罗艳强 男,1970年出生,河南信阳人,高级工程师。研究方向为航空通信系统设计。

陈 雷 男,1963年出生,安徽濉溪人,研究员。研究方向为计算机系统设计与应用。

相关热词搜索: 通信 技术 FPGA ARINC429

版权所有:无忧范文网 2010-2024 未经授权禁止复制或建立镜像[无忧范文网]所有资源完全免费共享

Powered by 无忧范文网 © All Rights Reserved.。冀ICP备19022856号