ARINC429总线收发器芯片DEI1016的原理及应用.docx

上传人:b****4 文档编号:3678969 上传时间:2022-11-24 格式:DOCX 页数:3 大小:17.60KB
下载 相关 举报
ARINC429总线收发器芯片DEI1016的原理及应用.docx_第1页
第1页 / 共3页
ARINC429总线收发器芯片DEI1016的原理及应用.docx_第2页
第2页 / 共3页
ARINC429总线收发器芯片DEI1016的原理及应用.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

ARINC429总线收发器芯片DEI1016的原理及应用.docx

《ARINC429总线收发器芯片DEI1016的原理及应用.docx》由会员分享,可在线阅读,更多相关《ARINC429总线收发器芯片DEI1016的原理及应用.docx(3页珍藏版)》请在冰豆网上搜索。

ARINC429总线收发器芯片DEI1016的原理及应用.docx

ARINC429总线收发器芯片DEI1016的原理及应用

ARINC429总线收发器芯片DEI1016的原理及应用

  摘要:

简要介绍了DeviceEngineering公司的DEI1016芯片的功能,详细说明了利用DEI1016芯片实现ARINC429协议数据通讯系统的设计方法,给出了比较具体的电路设计及软件解决方法。

关键词:

ARINC429;差分输出;FIFO;可编程器件

1 概述

目前,ARINC429收发器主要以DeviceEngineering公司的DEI1016及BD429来配套使用。

其中DEI1016提供有标准航空串行数据和16bit宽数据总线接口。

该接口电路包括一个单通道发送器、两个独立的接收通道和可选择操作方式的可编程控制器。

发送器电路包括一个发送缓存器和一个控制逻辑,发送缓存器是一个8×32bit的FIFO,而控制逻辑则允许主机给发送器写数据块,并通过主机使能发送器来使该数据块自动发送出去。

数据在TTL电平格式下经过BD429电平转换器后发送出去。

而每一个接收通道都可以直接连接到ARINC429数据总线,而不需要电平转换。

2引脚功能

DEI1016芯片的引脚图如图1所示。

下面是DEI1016的主要特点

●两路接收和一路发送;

●环绕自测试模式;

●数据字长为25bits或32bits格式;

●接收数据时进行校验,发送数据时产生校验;

●具有8×32bit的发送缓存;

●采用低电源工作;

●支持多路复用ARINC数据总线。

3 电路原理

DEI1016的复位是低电平有效,外部工作时钟为1MHz。

具有二路接收和一路发送。

要使电路正常工作,发送时需要和BD429配合。

BD429是满足ARINC429规范的、双极数据输入线驱动器。

DEI1016为前级输出,BD429为差分输出。

设计时,BD429地周围要接两个68pF的电容才能正常工作,而且这两个电容至关重要。

DEI1016由三个基本单元组成,第一部分为接收通道,第二部分为发送通道,第三部分为主机接口。

其电路结构框图见图2所示。

3.1接收通道

接收通道包括线接收器、数据接收、数据时钟、源/目标码译码器、校验控制位、数据通道和数据错误条件等电路。

线接收器的前端是一个电平转换器,最常用的就是BD429。

它可以把±10V的数据信号转换为5V内部逻辑电平。

接收数据时,接收到的每一位数据的开始位首先被检测,外部提供的工作时钟为1MHz,内部接收和发送速率可以设置为十分之一或八十分之一。

读接收器的任一个字时,一般都需要检测收到的信息数据的校验位。

初始化时,可以设置字长为32Bit或25Bit。

其32Bit字长格式如图3所示。

为了访问接收器的数据,首先应设置接收器数据选择输入端为逻辑“0”,并通过脉冲使输出使能端OEn也置为“0”,以使得数据字1被送入到数据总线上;同样,数据字2也被放到数据总线上。

当字1、字2被读走以后,数据准备好信号DRn被复位,复位后,该信号处于三态;如果新数据到了,而以前的数据又没有被读取,此时如果数据准备好信号没有复位,则新数据不能覆盖FIFO中的数据;如果一个完整的数据没有读完就出现错误,接收器将复位,同时忽略该数据或者该帧数据。

如果希望测试该芯片是否正常工作,也可以通过设置为自测试模式,即将DEI1016的发送直接在内部接到第一路接收,并将反相接到第二路,然后发送数据,并比较发送和接收,以判断DEI1016的工作状况。

3.2发送通道

发送通道包括8×32bitFIFO、校验产生器、发送器定时器和一个TTL输出电路。

其中8×32bitFIFO可由用户进行操作;通过装载发送器数据字或者脉冲沿可以把第一个16位字或第二个16位字放到数据线上;LD1总是先于LD2。

如果缓存已满且新数据已被LD1和LD2脉冲沿打入,缓存里的最后一个32位字将被覆盖;而当ENTX为逻辑“1”时,FIFO时钟被激活,同时,数据被串行移到发送器驱动器上;然后在发送时钟1MHz下通过DOA和DOB差分输出,DEI1016和BD429连接见图4所示。

3.3主机接口

CPU外围I/O设备的接口芯片一般都有片选、读、写信号和选择片内寄存器的若干地址线。

但DEI1016有点特殊,它的每一个寄存器操作信号都需要对CPU信号进行译码产生。

因此,选择CPU时,最好直接选择外部数据总线为16Bit以上的CPU,如TI公司的TMS320F240等。

4 DEI1016的应用

4.1DEI1016与BD429HW的连接

DEI1016的应用主要是数据通讯。

它一般和CPU、可编程器件一起形成智能通讯模块,图5是由DEI1016构成的数据通讯系统原理图。

该数据通讯模块的控制逻辑以CPU提供的I/O操作信号IS和读写信号RD、WR以及地址A2、A1为输入来为DEI1016产生操作信号,如读第一路接收数据寄存器信号RD429A、第二路RD429B、发送低字选通信号WR429L

  W、高字WR429HW、发送使能控制TX429EN等。

控制逻辑和CPU同时监视DEI1016的3个状态信号,包括第一路接收准备好信号Rx1RDY、第二路Rx2RDY和发送准备好Tx429RDY。

这些状态信号一方面可供软件查询,另一方面可由控制逻辑产生INT中断请求。

DEI1016和CPU接口比较简单,发送时经常和BD429配合使用。

一般情况下,作为I/O外设的DEI1016的读写速度要比CPU慢,因此,应该用一个状态机进行速度匹配以便为CPU产生READY信号。

在发送使能信号TX429EN的控制下可以简单地把发送准备好信号TX429RDY反相后输出。

亦即只要DEI1016发送器有空闲,就允许发送。

DEI1016的发送器包括一个FIFO,它可以存储8个32-Bit的429数据字。

当CPU填充DEI1016的发送FIFO字数达到自定数目如8个时,系统将使能发送以发出FIFO中的数据。

其实现逻辑用Abel语言简写如下

IS,RD,WRpin;

//CPU方的I/O操作、读写信号,皆为低有效.

IOAddr=[A2,A1,X];

//CPU方I/O地址

ENTX429A=!

TX429ARDY;

//ARINC429发送使能.

//读第一路ARCIN429接收寄存器高低字.

RD429A=!

IS&!

RD& #);

//读第二路ARCIN429接收寄存器高低字.

RD429B=!

IS&!

RD& #IOAddr==RX429BHW);

//写第一路ARCIN429发送寄存器高低字.

WR429AL=!

IS&!

WR&;

WR429AH=!

IS&!

WR&;

//写DEI1016控制寄存器.

WR429ACW=!

IS&!

WR&;

INT=!

RX1RDY#!

RX2RDY;

//2路接收准备好共享中断请求.

……

4.2两路接收中断共享算法

该模块有一路发送和两路接收。

发送数据不需要用中断来解决。

而当2路接收共享一个中断时,可能会出现覆盖而丢掉某一路数据的情况,也可能使边沿触发的中断失效而不再接收任何数据。

其波形示意图如图6所示。

图中,在A点,当第一路准备好Rx1RDY为低时,XINT有效以引起中断,CPU响应中断处理,同时在AB之间判定为第一路有效并开始处理。

当处理到B点时,第二路接收准备好引起中断。

但此时XINT已经有效,故不会引起电平变化,中断响应程序继续进行,并在C点退出,此时并没有处理第二路接收。

如果中断请求是电平Level敏感,中断处理退出后还可以再次进入,但这会有相当的系统开销。

若中断请求是边沿edge触发,那么在C点退出之后,由于未处理第二路接收,所以中断请求INT一直保持电平有效,但不能产生边沿跳变翻转,中断触发条件永远不能满足,系统处于死锁状态,从而使两路数据全部丢失。

对于这一问题,其实质性的解决办法需要“软硬兼施”。

可以将图4中DEI1016的Rx1RDY、Rx2RDY等状态信号同时送达CPU以组成只读“状态寄存器”,供CPU中断响应时查询。

由以上分析可知,对于ARINC429数据通讯系统,在具体的电路设计及软件算法中均应考虑收发数据的丢失问题。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1