linux怎么查看本机内存大小
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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~