FPGA的ARINC429总线接口卡原理设计

网友投稿 488 2022-11-20

FPGA的ARINC429总线接口卡原理设计

总线广泛应用于商务运输航空领域,如空中客车A310/A320、A330/A340飞机,波音公司727、737、747、757和767飞机,麦道公司MD-11飞机等。它采用异步双极性归零码进行数据的编码,并通过双绞线传输,具有很强的抗干扰性能。目前市场上的ARINC429总线

设计一般都采用专用

,如Device Engineering公司的DEI-1016,

公司的HS-3282等,这些专用芯片价格昂贵,且路数有限,使用非常不灵活。本设计将

公司的

芯片应用于ARINC429标准数据传输,并完成了与

接口的通信,有效缩小了系统体积并降低了成本,同时也增加了系统配置的灵活度。

ARINC429总线数据

FPGA内部逻辑设计

根据ARINC429总线协议,要完成数据的收发以及对USB总线接口的逻辑控制, FPGA 芯片应完成的逻辑功能框图如图1所示,其中虚线框中是FPGA实现的部分。

发送器

b)TRANS:进行数据的并串转换,同时进行奇偶校验,即每产生一位串行数据就进行一次异或运算,并由位数计数器控制计到31时就进入PARITY状态。

c)PARITY:输出奇偶校验位并回到IDLE状态。

always @(busy,clk_tx,serial_data)

begin

if (busy)

begin

TTL1<=serial_data&clk_tx;

TTL0<=~serial_data&clk_tx;

end

else begin

TTL1<=0;

TTL0<=0;

end

end

endmodule

发送控制逻辑用于协调缓存和信号发生器之间的数据传递。在缓存非空、busy无效(信号发生器状态机处于TRANS状态下busy有效)的条件下,一旦允许转换信号entx有效,便开启缓存的读使能rden,并产生转换数据的装载信号load,以完成缓存数据的自动转换和发送。

接收器

USB总线接口通信模块

USB接口控制逻辑完成以下任务:通过对USB协议处理芯片本地端的地址译码完成429总线接口的各种操作,如配置控制寄存器、写数据发送缓存以及读接收数据等。当主机要发送数据时,接口通信模块将收到的8位数据按照429数字字的编码格式组装成32位数据,并产生控制信号。将组装好的32位数据写入发送器的缓存中,之后根据总线译码,产生自动发送控制信号,通知发送器进行自动转换和发送。同样地,当接收完一个32位数据时,将这个32位数拆分成4个8位寄存器供主机读取,它们中的一个对应标志位(LABEL),另外有两个对应数据区(DATA),最后一个包含了数据字中剩余部分的信息。

仿真与验证

在后期板级调试中,将自制板卡与现在市场上出售的429总线接口卡进行对接通信的方法来验证,证明了本设计的FPGA协议处理和驱动电路工作无误,可以正确进行429数据的收发,完成429总线的数据通讯。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:DAMA-CDMP真题详解_第一套试卷_051~055题
下一篇:Java基于NIO实现群聊系统
相关文章

 发表评论

暂时没有评论,来抢沙发吧~