ARINC429总线收发器芯片DEI1016的原理及应用.docx
- 文档编号:3678969
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:3
- 大小:17.60KB
ARINC429总线收发器芯片DEI1016的原理及应用.docx
《ARINC429总线收发器芯片DEI1016的原理及应用.docx》由会员分享,可在线阅读,更多相关《ARINC429总线收发器芯片DEI1016的原理及应用.docx(3页珍藏版)》请在冰豆网上搜索。
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数据通讯系统,在具体的电路设计及软件算法中均应考虑收发数据的丢失问题。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ARINC429 总线 收发 芯片 DEI1016 原理 应用
![提示](https://static.bdocx.com/images/bang_tan.gif)