CN109752999A - 一种基于fpga的arinc429总线通信方法 - Google Patents
一种基于fpga的arinc429总线通信方法 Download PDFInfo
- Publication number
- CN109752999A CN109752999A CN201910000493.1A CN201910000493A CN109752999A CN 109752999 A CN109752999 A CN 109752999A CN 201910000493 A CN201910000493 A CN 201910000493A CN 109752999 A CN109752999 A CN 109752999A
- Authority
- CN
- China
- Prior art keywords
- fpga
- arinc429
- data
- driving chip
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
本发明涉及一种基于FPGA的ARINC429通信方法,包括硬件和软件两部分,所述硬件部分包括接收驱动芯片、FPGA及发送驱动芯片,该FPGA使用XILINX系列FPGA作为主控单元以实现ARINC429的通信协议功能,使用驱动芯片加光耦隔离的方法实现对外通信接口功能。本发明基于可编程数字逻辑器件FPGA的灵活、高速、扩展性强的特点,设计了基于FPGA的ARINC429总线通信方法,实现了ARINC429通信协议,具有波特率切换和数据缓存等功能,并且可以根据需要增加信道的数量,扩展性强,容易移植,大幅减小了设计成本。
Description
技术领域
本发明属于光纤捷联惯性导航系统领域,涉及以FPGA为核心的光纤捷联导航系统的通信,尤其是一种基于FPGA的ARINC429总线通信方法。
背景技术
ARINC429是一种在航空电子系统领域的总线标准,可靠性高,抗干扰能力强,广泛应用于民航和军用飞机中。ARINC429通信电路通常使用专用的集成电路来实现通信协议功能,缺点是成本高、体积大并且通道数量少,有明显的局限性。
通过公开专利文献的检索,仅发现一篇发现与本发明申请相关的公开专利文献:
一种基于以太网的ARINC429总线数字仿真通信方法(CN103731421B),其特征在于,包括如下步骤:步骤一:定义ARINC429协议字;步骤二:定义应用层ARINC429仿真协议;步骤三:利用步骤一和步骤二的定义在以太网仿真模拟ARINC429协议消息传送。本发明在一个以太网通道上可以仿真2个设备间的ARINC429消息的收、发,利用以太网通信的双工特性,可以在2个方向上分别方针ARINC429的发送或接收。
通过技术特征的对比,上述公开专利文献与本发明在通信方式上不相同,因此不会破坏本发明申请的创造性。
发明内容
本发明的目的是克服现有技术的不足之处,提供一种基于FPGA的ARINC429总线通信方法,该通信方法具有波特率切换和数据缓存等功能,并且可以根据需要增加信道的数量,扩展性强,容易移植,大幅减小了设计成本。
本发明的目的是通过如下技术方案实现的:
一种基于FPGA的ARINC429通信方法,包括硬件和软件两部分,所述硬件部分包括接受驱动芯片、FPGA及发送驱动芯片,该FPGA使用XILINX系列FPGA作为主控单元以实现ARINC429的通信协议功能,使用驱动芯片加光耦隔离的方法实现对外通信接口功能。
而且,发送驱动芯片加光耦隔离的方法为:用户需要发送的数据通过16位总线bus进入FPGA,按照ARINC的数据格式被转化成两路发送信号txa和txb;FPGA的GPIO107、105与光耦E1的阴极输入端相连以输出429发送信号txa和txb;经过光耦隔离后的429TA_1_G、429TB_1_G信号进入发送驱动芯片HI8585的输入端,最终输出符合ARINC429电气标准的信号两路双极性信号429TA_1和429TB_1。
而且,接收驱动芯片加光耦隔离的方法为:外部发来的ARINC429信号429RA_1和429RB_1首先进入接收驱动芯片为HI8444的一对接收端口IN1A和IN1B,由双极性信号转为单极性信号429RA_1_G和429RB_1_G,然后进入光耦E2的阴极输入端;隔离后的信号rxa和rxb输入至FPGA的GPIO82、83,解析后的数据由FPGA的16位对外总线bus输出至用户的下一级模块。
而且,所述发送驱动芯片为HI8585,接收驱动芯片为HI8444。
而且,所述实现ARINC429的通信是根据需求自由选择发送或接收一个或多个字段,要求标准ARINC429总线数据格式为32位,包含DATA、LAB、SSM、SDI、PAR共5个字段。
而且,所述软件部分使用Verilog HDL编写发送和接收模块,包括:
⑴建立数据发送模块:发送模块的功能包括提供外部控制接口、数据接口,按照要求将需要发送的数据转换成ARINC429协议标准格式,完成数据发送功能;
⑵建立数据接收模块:接收模块负责接收总线传来的两路数据,判断数据是否有效、控制数据采样、按照协议解码并存入缓冲区功能。
本发明的优点和积极效果是:
1、本发明基于可编程数字逻辑器件FPGA的灵活、高速、扩展性强的特点,设计了基于FPGA的ARINC429总线通信方法,实现了ARINC429通信协议,具有波特率切换和数据缓存等功能,并且可以根据需要增加信道的数量,扩展性强,容易移植,大幅减小了设计成本。
2、本发明在软件设计上通过Verilog HDL在FPGA中实现了ARINC429通信协议,在硬件设计上使用驱动芯片、隔离芯片加FPGA的电路方案实现了ARINC429通信功能,经过实践证明该方法可行,满足设备要求。
附图说明
图1是本发明的基于FPGA的ARINC429通信硬件框图;
图2是本发明的基于FPGA的ARINC429通信部分原理图;
图3是本发明的基于FPGA的ARINC429通信软件框图。
具体实施方式
以下结合附图对本发明的实施例做进一步详述;本实施例是描述性的,不是限定性的,不能由此限定本发明的保护范围。
一种基于FPGA的ARINC429通信方法,主要分为硬件和软件两部分:
1、硬件部分,参见图1。包括接受驱动芯片、FPGA及发送驱动芯片,FPGA使用XILINX系列FPGA(型号为XC3S400)作为主控单元,以实现ARINC429的通信协议功能;使用驱动芯片加光耦隔离的方法实现对外通信接口功能,其中发送驱动芯片为HI8585,接收驱动芯片为HI8444。
本发明通信部分原理图的通信部分原理图参见图2,其电路连接原理如下:
发送部分:用户需要发送的数据通过16位总线bus[15:0]进入FPGA,按照ARINC的数据格式被转化成两路发送信号txa和txb;FPGA的GPIO107、105与光耦E1的阴极输入端相连,输出429发送信号txa和txb;经过光耦隔离后的429TA_1_G、429TB_1_G信号进入发送驱动芯片HI8585的输入端;最终输出符合ARINC429电气标准的信号两路双极性信号429TA_1和429TB_1。
接收部分:外部发来的ARINC429信号429RA_1和429RB_1首先进入接收驱动芯片为HI8444的一对接收端口IN1A和IN1B,由双极性信号转为单极性信号429RA_1_G和429RB_1_G,然后进入光耦E2的阴极输入端;隔离后的信号rxa和rxb输入至FPGA的GPIO82、83;解析后的数据由FPGA的16位对外总线bus[15:0]输出至用户的下一级模块。
2、软件部分,参见图2。
使用Verilog HDL编写发送和接收模块,包括:
⑴建立数据发送模块
发送模块的功能包括提供外部控制接口、数据接口,按照要求将需要发送的数据转换成ARINC429协议标准格式,完成数据发送功能。
模块接口包含:
clock:外部时钟输入;
reset:外部复位;
en:发送使能;
data:待发送数据(32位);
addr:地址(3位)
wr_en:写使能;
baud:波特率选择;
txa:a通道发送数据;
txb:b通道发送数据。
发送模块包含以下子功能模块:
波特率产生模块
对外部输入时钟进行分频,生产ARINC429传输标准波特率时钟。其中外部输入时钟为24MHz,(外部时钟如不满足,可自行添加时钟转换模块),通过设置对外接口“baud”可以切换发送波特率,“0”为100K,“1”为12.5K。
总线控制模块
用户根据需求将待发送的数据写入对应地址的总线空间上,FPGA将接收到的数据组合转化成符合ARINC429协议格式的数据帧。
缓冲存储模块
使用异步FIFO,数据位宽32bit,存储深度1024,即最多可存储1024帧ARINC429标准数据,由外部接口reset控制复位、wr_en控制写入数据。
发送控制模块
负责监控缓冲区的状态(是否有存储数据、存储数量),控制由缓冲区读取数据的并发往下一级模块的过程。
串行异步数据发送模块
接收发送控制模块传来的数据,并严格按照波特率时钟产生串行的数据比特流,按位发送,形成两路429协议串行数据txa和txb。
⑵建立数据接收模块
接收模块负责接收总线传来的两路数据,判断数据是否有效、控制数据采样、按照协议解码并存入缓冲区等功能。
模块接口包含:
clock:外部时钟输入;reset:外部复位;
en:接收使能;
data:解码后的数据(32位);
addr:地址(3位)
wr_en:写使能;
txa:a通道接收数据;
txb:b通道接收数据。
接收模块包含以下子功能模块:
波特率产生模块
根据ARINC429数据协议的特点,txa和txb为双极性归零码格式,对两路信号进行异或运算恰好能得到与数据同频率的时钟信号,将此时钟信号进行本地同步和滤波后作为控制接收数据波特率的时钟,同时生成16倍频的采样时钟。
串行异步数据接收模块
按照波特率时钟和采样时钟接收总线上的数据,将每个数据位对应16个采样点中出现超过10个的相同值作为有效数据位;将串行的数据比特流转换为32位的数据帧。此外串行异步数据接收模块负责判断每一位数据是否有效及整帧数据是否正确:根据ARINC429数据格式特点,若txa和txb同时为高或同时为低,则数据无效,复位接收状态机;接收满32位数据后,判断校验是否正确,正确则发往下一级模块,否则丢弃当前数据帧。
缓冲存储模块
使用异步FIFO,数据位宽32bit,存储深度1024,即最多可存储1024帧ARINC429标准数据。
接收控制模块
负责监控数据接收过程,将每一帧数据按顺序存入缓冲区,并监控缓冲区的状态(是否有存储数据、存储数量、是否溢出),当缓冲区数据非空时通知下一级模块读取数据,当数据溢出时发出报错信号并禁止新的数据存入,保护当前数据不丢失。
总线控制模块
将接收到的数据发送到不同地址的总线空间,用户根据需求读取不同地址即可获得所需字段的信息。
本发明的工作原理:
使用专用驱动芯片实现ARINC429电平与本地单极性电平之间的转换;使用Verilog HDL编写FPGA程序,实现ARINC429通信协议。程序按功能分为发送和接收两部分:设备自身对外发送的数据首先进入发送模块,按照协议进行编码后存入发送缓冲器,在100K或12.5K的波特率时钟控制下将整帧数据转换成串行比特流发至ARINC429总线;外部设备发来的数据由接收模块进行采样、校验,按ARINC429协议解码,在接收控制模块控制下存入接收缓冲器中,发送给下一级端口。
Claims (6)
1.一种基于FPGA的ARINC429通信方法,包括硬件和软件两部分,其特征在于:所述硬件部分包括接受驱动芯片、FPGA及发送驱动芯片,该FPGA使用XILINX系列FPGA作为主控单元以实现ARINC429的通信协议功能,使用驱动芯片加光耦隔离的方法实现对外通信接口功能。
2.根据权利要求1所述的基于FPGA的ARINC429通信方法,其特征在于:发送驱动芯片加光耦隔离的方法为:用户需要发送的数据通过16位总线bus进入FPGA,按照ARINC的数据格式被转化成两路发送信号txa和txb;FPGA的GPIO107、105与光耦E1的阴极输入端相连以输出429发送信号txa和txb;经过光耦隔离后的429TA_1_G、429TB_1_G信号进入发送驱动芯片HI8585的输入端,最终输出符合ARINC429电气标准的信号两路双极性信号429TA_1和429TB_1。
3.根据权利要求1所述的基于FPGA的ARINC429通信方法,其特征在于:接收驱动芯片加光耦隔离的方法为:外部发来的ARINC429信号429RA_1和429RB_1首先进入接收驱动芯片为HI8444的一对接收端口IN1A和IN1B,由双极性信号转为单极性信号429RA_1_G和429RB_1_G,然后进入光耦E2的阴极输入端;隔离后的信号rxa和rxb输入至FPGA的GPIO82、83,解析后的数据由FPGA的16位对外总线bus输出至用户的下一级模块。
4.根据权利要求1述的基于FPGA的ARINC429通信方法,其特征在于:所述发送驱动芯片为HI8585,接收驱动芯片为HI8444。
5.根据权利要求1所述的基于FPGA的ARINC429通信方法,其特征在于:所述实现ARINC429的通信是根据需求自由选择发送或接收一个或多个字段,要求标准ARINC429总线数据格式为32位,包含DATA、LAB、SSM、SDI、PAR共5个字段。
6.根据权利要求1所述的基于FPGA的ARINC429通信方法,其特征在于:所述软件部分使用Verilog HDL编写发送和接收模块,包括:
⑴建立数据发送模块:发送模块的功能包括提供外部控制接口、数据接口,按照要求将需要发送的数据转换成ARINC429协议标准格式,完成数据发送功能;
⑵建立数据接收模块:接收模块负责接收总线传来的两路数据,判断数据是否有效、控制数据采样、按照协议解码并存入缓冲区功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910000493.1A CN109752999A (zh) | 2019-01-02 | 2019-01-02 | 一种基于fpga的arinc429总线通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910000493.1A CN109752999A (zh) | 2019-01-02 | 2019-01-02 | 一种基于fpga的arinc429总线通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109752999A true CN109752999A (zh) | 2019-05-14 |
Family
ID=66405079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910000493.1A Pending CN109752999A (zh) | 2019-01-02 | 2019-01-02 | 一种基于fpga的arinc429总线通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109752999A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111934962A (zh) * | 2020-06-29 | 2020-11-13 | 四川九洲空管科技有限责任公司 | 一种基于fpga的自适应429数据接收速率的接收方法及系统 |
CN114697153A (zh) * | 2020-12-30 | 2022-07-01 | 北京石竹科技股份有限公司 | 一种通过光纤实现a429总线超长距离传输的方法 |
CN114968892A (zh) * | 2022-06-17 | 2022-08-30 | 北京润科通用技术有限公司 | 一种调度硬件电路及调度方法 |
CN115550098A (zh) * | 2022-09-16 | 2022-12-30 | 哈尔滨工业大学 | 基于MiniVPX构架的ARINC429总线通信组件及装置 |
CN115828814A (zh) * | 2023-02-13 | 2023-03-21 | 中兵通信科技股份有限公司 | 基于fpga的arinc429协议软核的电路设计方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201869205U (zh) * | 2010-11-19 | 2011-06-15 | 陕西千山航空电子有限责任公司 | Arinc429总线信号编解码电路 |
CN103944898A (zh) * | 2014-04-17 | 2014-07-23 | 哈尔滨工业大学 | 基于状态机的arinc429编解码逻辑的实现方法 |
CN204044815U (zh) * | 2014-09-04 | 2014-12-24 | 苏州长风航空电子有限公司 | 基于fpga的机载数据总线片上系统 |
CN206075266U (zh) * | 2016-07-27 | 2017-04-05 | 北京神州飞航科技有限责任公司 | 多通道arinc429通讯板卡 |
US10122554B2 (en) * | 2015-04-16 | 2018-11-06 | Airbus Operations Sas | Electronic circuit card and corresponding signal acquisition and generation system, including one or more programmable digital matrix switches |
-
2019
- 2019-01-02 CN CN201910000493.1A patent/CN109752999A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201869205U (zh) * | 2010-11-19 | 2011-06-15 | 陕西千山航空电子有限责任公司 | Arinc429总线信号编解码电路 |
CN103944898A (zh) * | 2014-04-17 | 2014-07-23 | 哈尔滨工业大学 | 基于状态机的arinc429编解码逻辑的实现方法 |
CN204044815U (zh) * | 2014-09-04 | 2014-12-24 | 苏州长风航空电子有限公司 | 基于fpga的机载数据总线片上系统 |
US10122554B2 (en) * | 2015-04-16 | 2018-11-06 | Airbus Operations Sas | Electronic circuit card and corresponding signal acquisition and generation system, including one or more programmable digital matrix switches |
CN206075266U (zh) * | 2016-07-27 | 2017-04-05 | 北京神州飞航科技有限责任公司 | 多通道arinc429通讯板卡 |
Non-Patent Citations (1)
Title |
---|
许文腾,等: "基于复杂协议的硬件实装代理硬件设计", 《系统仿真技术》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111934962A (zh) * | 2020-06-29 | 2020-11-13 | 四川九洲空管科技有限责任公司 | 一种基于fpga的自适应429数据接收速率的接收方法及系统 |
CN111934962B (zh) * | 2020-06-29 | 2021-09-21 | 四川九洲空管科技有限责任公司 | 一种基于fpga的自适应429数据接收速率的接收方法及系统 |
CN114697153A (zh) * | 2020-12-30 | 2022-07-01 | 北京石竹科技股份有限公司 | 一种通过光纤实现a429总线超长距离传输的方法 |
CN114697153B (zh) * | 2020-12-30 | 2023-12-08 | 北京石竹科技股份有限公司 | 一种通过光纤实现a429总线超长距离传输的方法 |
CN114968892A (zh) * | 2022-06-17 | 2022-08-30 | 北京润科通用技术有限公司 | 一种调度硬件电路及调度方法 |
CN114968892B (zh) * | 2022-06-17 | 2023-10-20 | 北京润科通用技术有限公司 | 一种调度硬件电路及调度方法 |
CN115550098A (zh) * | 2022-09-16 | 2022-12-30 | 哈尔滨工业大学 | 基于MiniVPX构架的ARINC429总线通信组件及装置 |
CN115828814A (zh) * | 2023-02-13 | 2023-03-21 | 中兵通信科技股份有限公司 | 基于fpga的arinc429协议软核的电路设计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109752999A (zh) | 一种基于fpga的arinc429总线通信方法 | |
KR101643671B1 (ko) | 네트워크 디바이스 및 정보 송신 방법 | |
US5784370A (en) | Method and apparatus for regenerating a control signal at an asynchronous transfer mode (ATM) layer or a physical (PHY) layer | |
CN101834751B (zh) | 航空全双工交换以太网监测处理系统及方法 | |
US6452927B1 (en) | Method and apparatus for providing a serial interface between an asynchronous transfer mode (ATM) layer and a physical (PHY) layer | |
EP0724794A1 (en) | Error detection and correction apparatus for an asynchronous transfer mode (atm) network device | |
CN109408424B (zh) | 一种基于PCIe接口的SpaceFibre总线数据采集方法 | |
CN105553636B (zh) | 一种余度模式fc发送通道帧同步电路及方法 | |
CN106598889A (zh) | 一种基于fpga夹层板的sata主控器 | |
US11265400B2 (en) | Multimode interconnection interface controller for converged network | |
CN108462620B (zh) | 一种吉比特级SpaceWire总线系统 | |
CN111211863B (zh) | Mac发射端、mac接收端及电路、fpga芯片及数据传输系统 | |
CN109547157B (zh) | 一种支持时间触发以太网的万兆网络控制器及控制方法 | |
CN104133963A (zh) | 基于串行高速总线的fpga硬件抽象层及其实现方法 | |
CN109710550B (zh) | 一种基于双缓存的帧长度不固定rs422数据通信系统 | |
CN112653638B (zh) | 一种多路中频与基带高速交换路由的装置及其通信方法 | |
JP2001168824A (ja) | 光ラインプロテクション方式 | |
US10079769B1 (en) | Methods and apparatus for implementing dynamic rate controllers using linked list of rate programs | |
CN112333024B (zh) | 融合高速网链路层与100g以太网编码层的适配装置 | |
CN105718401B (zh) | 一种多路smii信号到一路mii信号的复用方法及系统 | |
EP4116835A1 (en) | Spread spectrum clock negotiation method, and peripheral component interconnect express device and system | |
CN115396924A (zh) | 用于屏蔽接口差异性的方法和装置 | |
CN112702313A (zh) | 高速udp数据发送系统及方法 | |
CN110519137A (zh) | 转接装置 | |
US7573902B2 (en) | Fibre channel interface unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190514 |