0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于CMOS型429接口TS68C429A实现ARINC429通信的应用设计

电子设计 来源:电子技术:上海 作者:姜运生 2021-05-27 10:12 次阅读

1 改装系统简介

飞机航空电子系统的改装,就是把功能相对独立的子系统逐步走向综合,例如将雷达、惯导、GPS和机载计算机联合,组成新型航空图导航系统。通俗点讲,就是将那些“傻、大、粗、笨”的仪器仪表,集成为“少而精”的智能仪表,减轻飞行员的操作难度。

系列多机型改装时的多功能显示器,它将原来分散显示的信息和数据集中在一台多功能显示器上。替换掉原来“老死不相往来”的各种导航仪表,不再需要领航员大量记忆枯燥的数据,减少了仪表种类,节省了宝贵的空间,极大减轻了领航员工作强度。图1中除了地图视频采用LVDS外,其它仪表通信都采用ARINC429总线。显然,解决多通道的ARINC429通信成为本次改装的瓶颈。

传统的ARINC429通信设计中,大多采用HARRIS公司的HS3282或Device Engineering公司的DEI1016。但在此则极不经济,完成多通道429通信,需要多个芯片和更多的布板空间,功耗也线性增加。

特别地,传统的多通道的429需要更加多的CPU中断请求线,需要外部复杂的逻辑设计。TS68C429A则是目前解决多通道429通信最为有效的途径。和传统的“两收一发”的芯片相比较,它是“八收三发”,“一片顶四片”。

2 TS68C429A的主要特征

ATMEL公司的TS68C429A是高性能、多通道、低功耗的CMOS型429接口,亦能满足类似的时分多路串行数据通信。

整个芯片只需单5V工作电源。它具有8路接收、3路发送。所有的接收通道和发送通道都是彼此互独立,可同时并行工作。8个接收通道之间也是独立的并行接收,可以直接连接到ARINC429总线,而不需电平转换。数据字长是标准的32-bit,25-bit的并不支持。

主要特征有如下几点:

8个独立的接收通道;3个独立的发送通道;和所有的TS68K系列的微处理器接口兼容;16-bit数据总线;符合ARINC2429接口,归零制编码(Return Zero Code);支持所有的ARINC429数据传输率,最高可达2.5Mbit/s,传统的ARINC429芯片的速率只有2种可选;多标号能力,传统的芯片要么不检查标号,要么就接收一个指定的标号;校验控制(奇校验、偶校验、无校验,中断能力);RX、TX的数据率可独立编程;每个发送通道有8个信息单元的FIFO;向量式中断;可组成菊花链中断;所有的寄存器都是可直接寻址的;具有自测试能力;工作频率为20MHz;低功耗:400mW。

3 硬件设计

TS68C429A接收和发送通道都成倍增加,但毕竟不是通道的简单叠加,不是传统接口的线性扩展,在相关器件选型和设计中需要仔细推敲。

3.1 基本硬件接口

基本硬件接口就是和嵌入式CPU的接口电路。根据ARINC429数据特点,至少要选16-bk数据总线以上的CPU。TS68C429A和所有的TS68K系列的CPU接口兼容,像TS68000、TS68020都可以只需要增加非常简单的接口逻辑。特别是TS68302完伞可以“无缝连接”。无缝连接就是两个复杂芯片不需要“粘合逻辑”,对应信号直接相连。

在设计基本电路时需要注意以下几点:

3.1.1 嵌入式CPU选型。

CPU的数据总线至少应该是16bit的,否则在硬件上要增加字节转发电路,设计复杂度上升。如果在中断响应时想迅速判断中断源,CPU存中断响应时应该能够发出中断响应(IACK)信号,由TS68C429输出中断向量,由CPU回读后硬件判断,直接进入对应中断服务例程,节省软件响应时间。除TS68K系列外,符合这个要求的还有最广泛使用在PC机上的X86系列,如Inte180486等。显然,TS68C429的中断响应机制,完全类似X86系列中的8259 中断控制器时序,可以直接无缝连接。值得指出的是,X86系列的中断请求是高有效,中断请求信号需要反相。

3.1.2 时钟

传统的ARINC429芯片只有一个时钟,人多数是1MHz,用以控制收发速率。速率有2种选择,即速率是时钟的十分之一或八十分之一,亦即100K或12.5K。在这里,TS68C429需要2种时钟,系统时钟和ARINC429收发时钟。系统时钟CLKSYS用来控制CPU接口时序,应该和CPU时钟相同,在这里直接使用TS68302的输出时钟CLK0。在使用其它型号的CPU时,CLKSYS可以直接和CPU时钟连接在一起。CLK429使用了定时器输出TOUT1,用来决定429串行数据传输速率。存使用其它型号的CPU时,也可以设计一个独立的时钟做CLK429。

3.1.3 高、低字节访问

处理器对TS68C429每次访问都应该是16Bit的,除了这里和TS68302的无缝连接,还可以把高字节选通信号(/UDS)和低字节选通信号(/LDS)一起直接接地。CPU一般足字节编址的,所以应该足A9…A1对应TS68C429的A8…A0。

3.1.4 存储器周期

无论是读周期还是写周期,TS68C429都要用/DTACK应答CPU。TS68K系列中的/DTACK,即数据传输周期应答(Data Transfer Acknowledge),本质上就是许多CPU的READY信号。如果使用别的型号CPU,READY属于高有效,需要对/DTACK进行反相。

3.2 中断菊花链电路

对于大多数应用来讲,一片TS68C429基本可以满足多通道429通信要求。当要求更多通道时,TS68C429A可以采用菊花链的彤式设计。

菊花链(Daisy Chain)是一种阻塞式级联结构,排在前面的优先级高于其后的所有单元。在任一时刻,高优先级若果发出中断,就禁止了比它自身优先级低的中断。共有U1、U2…Un个单元,其中U1具有最高优先级,Un优先级最低。当某一单元需要发出中断时,首先要判断前面是否有高优先级的中断,即判断传递下来的中断使能信号/IEIxx,当其为低电平时,可以发出,当其为高电平时禁止发出。禁止中断发出时,要一直等待到前面中断响应完成后再发出。最极端的情况就是,某些低优先级的中断单元永远没有机会发出中断,设计菊花链电路时,要综合平衡各通道的数据流量。

4 软件设计

上电复位后,软件应在正式工作前初始化TS68C429。传统的芯片只需要要写一次控制寄存器,但多通道的初始化要复杂一些。

4.1 寄存器映像

在传统的ARINC429只有一个控制寄存器,由于通道少,每个通道分配专用的选通信号,硬件简单译码即可。在多通道的芯片中,不可能继续采用这种办法。整个芯片只有一个总的片选(/CS),然后由地址A8..A0来寻址片内寄存器。系统的初始化,本质就是正确配置这些寄存器。

8个接收通道,每个都有自己的4类专用寄存器区。

4.1.1 接收控制寄存器(receive control register)

这是一个可读可写的寄存器,它控制本通道的中断优先级、校验、标号、测试模式以及通道使能等配置。如果有2个通道的中断优先级相同,就有一个永远发不出中断。如果设置本通道处于测试模式,则第三发送通道的数据在内部回环到本通道。这个特征是用来做通道自检的。

4.1.2 间隙寄存器(gap register)

间隙寄存器是一个只写寄存器。写入值是以CLK429时钟周期为单位的计数值,实际是定义了相邻两个429数据的最小间隙。在传统的芯片中,最小间隙是固定的。在这里,必须显式地设置这个寄存器,决不能隐含使用复位缺省值。

4.1.3 数据缓冲区(message buffer)

数据缓冲区是2个16bit的只读寄存器,存放接收到的ARINCA29数据。采用中断接收时,主要就是读这2个寄存器。高16bit(most significant word,MSW)存放在低地址,低16bit(least significant word,LSW)存放在高地址。读数据时先读MSW,再读LSW。

4.1.4 标号控制矩阵(label Control matrix)

这是一个256×1bit的存储器区。许多人不理解这个区的含义,不会配置,以致系统不能正确运行。众所周知,ARINC429规范的低8bit属于标号区(label),标号代表了数据类型,例如72H代表高度数据,73H代表角速度等。这样总计有256个标号。标号控制矩阵的某地址设置为“1”,就允许该通道接收对应标号的数据,清除为“0”,就禁止该标号的数据。硬件复位之后全部清“0”,也就是禁止接收一切数据,这就是系统不运行的原因。

3个发送通道,每个都有自己的3个专用寄存器。

4.1.5 频率寄存器(Frequency Register)

这是一个只写的寄存器,写入值是发送速率的除数因子。

发送速率=CLK429/FR除数因子

根据这个公式,用户可设定选择的速率。传统的ARINC429没有这个功能,只有2种固定的速率。

4.1.6 发送控制寄存器(Transmitter Control Register)

和接收控制寄存器类似,这是一个可读可写的寄存器,它控制本通道的中断优先级、校验、是否作为测试模式的发送、以及通道使能等配置。其中的发送间隙是控制连续发送的两个32bit的AKINC429信息之间最小间隙,防止接收方覆盖溢出。

4.1.7 发送FIFO

FIFO,即“先进先出”(First In First Out),基本元素可以认为是2个16bit的寄存器。软件必须先写入MSW,再写入LSW,这和接收通道顺序是一致的。FIFO深度为8个ARINC429信息。存写入之前,必须验证FIFO未满,否则写入数据被丢弃。在FIFO只要满队列的FIFO发送了一个元素,此时FIFO虽然未空,但也未满,就可以写入后一个数据。

除了接收通道和发送通道的专用寄存器,还有儿个通用的寄存器,如通道状态寄存器、中断屏蔽寄存器,中断向量基址寄存器等,不再赘述。

4.2 复位初始化

上电复位之后,所有寄存器清“0”,各通道处于禁止状态,需要软件显式初始化。下面给出接收通道和发送通道的初始化流程。

4.3 ARINC429数据的接收与发送

系统工作后,初始化的通道就可以接收发送了。一般的,因为不可预测接收数据何时到达,正式工作后接收采用中断驱动,发送采用查询,这样既可以不丢失数据,又可以掌控发送节奏。查询接收的办法,一股使崩在系统初期硬件调试阶段。在上篇文章中,介绍了中断采用环形接收队列,这个方法非常有效。在此不再赘述环形队列访问算法。下而给出查询/中断收发流程。

TS68C429集成度高,是改装原来分散的ARINC429设备的一种合理有效的选择。我们已将上述设计应用在多个不同种类的航空电子系统中,证明是十分有效的。随着航空电子系统的更新换代,TS68C429的应用将更加广泛。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CMOS
    +关注

    关注

    58

    文章

    5146

    浏览量

    233312
  • 显示器
    +关注

    关注

    21

    文章

    4735

    浏览量

    137811
  • 接口
    +关注

    关注

    33

    文章

    7629

    浏览量

    148438
收藏 人收藏

    评论

    相关推荐

    基于USB的ARINC429总线接口模块设计

    FPGA的RAM中。由于在测试ARINC429电子设备中,时常要求多路ARINC429总线同时传输数据。为了实现接口模块多路ARINC429
    发表于 10-14 20:50

    arinc429

    大家谁研究过arinc429,有大神能出来赐教下吗,希望我们可以互相学习
    发表于 11-12 22:38

    基于PC/104设计与实现ARINC429接口模块

    引言ARINC429总线是当代运输机、军用飞机、商用飞机和民航客机中常用的总线之一,是航空电子设备之间传输数字信息的航空工业标准。该总线上各子系统必须通过ARINC429接口才能相互通信
    发表于 04-16 07:00

    怎么设计便携式ARINC429总线通信设备?

    在航空电子综合化系统中,快速、有效的数据传输对整个航空电子系统的性能有很大影响,因此数据总线被称为现代航空电子系统的“骨架”。ARINC429是航空电子系统之间最常用的通信总线之一。要在计算机上实现与机载设备的
    发表于 08-19 07:24

    怎样去设计ARINC429总线接口板?有哪些步骤?

    怎样去设计ARINC429总线接口板的硬件?有哪些步骤?怎样去设计ARINC429总线接口板的软件?有哪些步骤?
    发表于 05-27 06:37

    基于DSP的ARINC429通信板设计

    ARINC429 是航空电子设备之间数据传输的航空工业标准,文中介绍了ISA 总线接口的基于DSP 的ARINC429 标准通信扩展板的硬件组成原理及软件设计。该扩展板以双端口RAM
    发表于 07-08 14:33 23次下载

    航空用ARINC429总线收发系统设计与实现

    针对机载设备地面检测中ARINC429总线数据通信这一关键技术, 设计了一种基于十六位单片机80C196的ARINC429总线收发系统;设计中严格依据ARINC429数字信息传输规范,
    发表于 07-16 09:48 80次下载

    基于HI-8582的ARINC429总线设计

    基于HI-8582的ARINC429总线设计 要:简要介绍了ARINC429总线和HI-8582芯片的特点,给出了基于HI-8582的ARINC429总线设计思路和方法。最后结合工程实际给出了单片机AT89C52的数据
    发表于 11-05 11:05 1915次阅读

    USB的便携式ARINC429总线通信设备技术

    USB的便携式ARINC429总线通信设备技术 ARINC429是航空电子系统之间最常用的通信总线之一。要在计算机上实现与机载设备的
    发表于 05-06 10:56 2341次阅读
    USB的便携式<b class='flag-5'>ARINC429</b>总线<b class='flag-5'>通信</b>设备技术

    USB接口ARINC429测试卡手册

    本内容提供了USB接口ARINC429测试卡手册 本手册主要提供了四个章节,分别概述、硬件使用说明、驱动接口说明和应用程序说明
    发表于 04-15 18:11 44次下载
    USB<b class='flag-5'>接口</b><b class='flag-5'>ARINC429</b>测试卡手册

    PCI总线ARINC429通信实现方法

    ARINC429 总线是一种重要的航空数据总线标准,是飞机航电系统数字信息传递的主要途径之一。本文给出一种PCI 总线ARINC429 通信卡的实现方法,利用FPGA
    发表于 05-18 18:08 37次下载
    PCI总线<b class='flag-5'>ARINC429</b><b class='flag-5'>通信</b>卡<b class='flag-5'>实现</b>方法

    一种PCI总线ARINC429通信实现方法

    ARINC429 总线是一种重要的航空数据总线标准,是飞机航电系统数字信息传递的主要途径之一。本文给出一种PCI 总线ARINC429 通信卡的实现方法,利用FPGA
    发表于 09-30 16:28 43次下载
    一种PCI总线<b class='flag-5'>ARINC429</b><b class='flag-5'>通信</b>卡<b class='flag-5'>实现</b>方法

    基于PCMCIA 的ARINC429 通信卡设计

    基于PCMCIA 的ARINC429 通信卡设计,这是一个硬件模块的设计方案。
    发表于 03-15 11:35 33次下载

    PCI总线的ARINC429接口卡设计

    PCI总线的ARINC429接口卡设计
    发表于 10-31 10:13 25次下载
    PCI总线的<b class='flag-5'>ARINC429</b><b class='flag-5'>接口</b>卡设计

    如何使用FPGA实现ARINC429接口和总线数据接收

    针对目前ARINC429航空总线的应用研究现状,分析常用ARINC429协议芯片的特点,根据ARINC429总线的电气特性,采用光电藕合器HCPI一0631实现
    发表于 02-03 15:53 38次下载
    如何使用FPGA<b class='flag-5'>实现</b><b class='flag-5'>ARINC429</b><b class='flag-5'>接口</b>和总线数据接收