APP下载

一种SAE AS5643三节点仿真设备设计与实现

2016-02-23韩一鹏牛少平

计算机技术与发展 2016年3期
关键词:寄存器数据包总线

韩一鹏,田 泽,牛少平

(1.中国航空计算技术研究所,陕西 西安 710068;2.集成电路与微系统设计航空科技重点试验室,陕西 西安 710068)

一种SAE AS5643三节点仿真设备设计与实现

韩一鹏1,2,田 泽1,2,牛少平1,2

(1.中国航空计算技术研究所,陕西 西安 710068;2.集成电路与微系统设计航空科技重点试验室,陕西 西安 710068)

为满足新一代航空系统对数据传输的实时性、稳定性的要求,对标准的IEEE-1394B总线协议加以限定,形成了SAE AS5643。三节点仿真卡是用于地面上模拟1394总线功能的设备,包含3个可配置的节点,可配置成根节点或者远程节点连入系统总线,完成SAE AS5643通信协议的处理并且可以数据监控。文中阐述了基于FPGA的三节点仿真卡设计实现,所有模块用Verilog代码实现,并结合Xilinx ISE开发环境和QustaSim仿真工具对其进行了时序仿真,并通过FPGA验证了正确性。文中所阐述的设计均已实现,FPGA综合报告已经满足,虚拟仿真与FPGA测试已经开展,基本功能已经达到设计目的。该设计实现了三节点仿真卡,具有多通道同步,节点可配置,数据收发、数据监控、故障注入、心跳字初始值步长值设置,VPC与CRC自检测等功能。

AS5643;FPGA;机载总线;仿真卡

0 引 言

IEEE1394最初由苹果公司提出,其目的是简化计算机连接,并为数字数据实时传输提供高速接口。1995年,IEEE给出了IEEE1394的规范定义,后来对其进一步完善,形成了IEEE-1394B。其目的是传输多媒体实时数据时,提高带宽、传输速度并且大幅度增加传输距离。IEEE-1394B不能满足应用中对网络确定性的需求,同期SAE为解决1394总线在航空电子系统中对数据带宽、确定性的要求,形成了新的SAE AS5643。

国外最成功的应用是1394总线已经在F-35战斗机中成功代替了1553B军事标准总线。1394总线减少了战斗机上的线束质量,这不仅增加了战斗机上各节点间数据传输的距离,还在降低了费用的同时增加了可靠性。国内也有部分厂家生产开发1394b总线的接口卡。为了仿真航空系统中1394总线系统的可靠性,需要设计一款地面虚拟仿真设备。

文中主要根据SAE AS5643协议内容,从系统结构、功能描述等方面详细介绍了三节点仿真卡的设计与实现,对将来的1394总线开发有一定参考价值。

1 三节点仿真卡系统结构

该设计是在PC机环境下,配置3条各自独立的系统总线接口,各总线拥有独立软硬件接口资源,每条总线还包含3个独立的端口,支持100 Mbps、200 Mbps、400 Mbps三种传输速率[1-2],端口间采取变压器耦合方式隔离。其系统架构框图如图1所示。

图1 三节点仿真卡逻辑系统架构框图

其中驱动软件层主要是完成主机应用软件对下层操作的调度功能。

链路层和物理层在三节点仿真卡上主要使用TI公司芯片实现,主要完成标准1394链路层[3]和物理层功能[4]。

该设计的主要部分为事务层逻辑功能,主要利用Xilinx的FPGA实现。

2 主要功能描述

三节点仿真卡FPGA逻辑可实现《SAE AS5643-002》[5-6]中规定的数据传输、网络同步、总线状态转换及控制、错误注入和电源管理等功能[7]。

具体描述如下:

(1)需要支持S100B、S200B、S400B传输速率模式的配置能力;

(2)支持上电自动加载总线配置表、自检测(BIT),及LLC和PHY芯片初始化;

(3)支持异步流数据包传输方式;

(4)支持帧周期开始包STOF实现网络同步,帧周期可配置;

(5)支持节点数据带宽预分配功能,发送、接收和预测与健康管理包偏移可配置,单位1 μs;

(6)支持根节点、远程节点的切换;

(7)支持异步流数据包的VPC校验字自动插入和校验;

(8)支持基于消息接收时间、消息长度、VPC和CRC的消息完整性检查;

(9)支持每条消息VPC和CRC错误注入功能;

(10)支持物理层芯片电源管理功能。

3 仿真卡硬件设计与实现

三节点仿真卡FPGA逻辑包含了PCIE主机接口及DMA、配置表、AS5643协议处理等模块[8]。

PC主机可通过PCIE总线桥接口逻辑,填写配置表内容,DMA把将要发送的数据包存入数据DPRAM中,并从数据DPRAM中把保存的接收数据包读出。AS5643逻辑块实现数据包的收发操作功能,并控制LLC芯片和PHY芯片。配置DPRAM用于存储配置表。

3.1 数据缓冲区DPRAM

该模块主要实现发送接收消息的数据的存储。对于发送,PCI将数据通过DMA写入该模块,数据在该模块中缓冲,再由AS5643协议模块取出打包发送;对于接收,接收到的数据存入该模块,再由DMA取出。

该模块分为0区和1区两部分,每个发送或接收缓冲区大小为128 kByte,其中低64 kByte用作缓冲区0,高64 kByte用作缓冲区1。每条发送或接收消息占用固定的2 kByte大小。

发送时,由上层软件决定消息存储在缓冲区0或者缓冲区1;接收时,上层软件按照DMA接收消息缓冲区0区更新标志寄存器,DMA接收消息缓冲区1区更新标志寄存器的内容来确定消息存储在0区还是1区。

3.2 全局控制模块

该模块主要实现了三个节点发送STOF消息、发送接收异步流消息以及中断信号的整体控制。AS5643协议处理模块对其只读,主机对其可进行读写操作。该模块主要由全局寄存器组成,包括中断状态、使能、清零寄存器,STOF消息发送控制寄存器,软复位寄存器。

3.3 主机接口模块

PCIe模块[9]的功能是完成从PCIe串行链路到用户端逻辑之间的PCIe协议转换和数据高速传输。该模块是由PCIe协议处理部分(以下简称PCIe核)和专用DMA部分(以下简称DMA核)组成。

PCIe PHY和PCIe核符合PCI Express v2.0协议[10],并兼容PCI Express v1.1协议,实现了协议规定的事务层、链路层、物理层的功能,支持端点操作。PCIe PHY和PCIe核为用户提供底层PCIe的综合状态信息[11]。

DMA[12]核支持最多2个主机到本地(S2C)及2个本地到主机(C2S)DMA通道,支持用户端直接控制。

PCIe模块对外接口是由管理接口、消息接口、配置寄存器接口、Target接口、寄存器接口、DMA数据接口、DMA直接控制接口和主接口等组成。PCIe核事务层上的VC0_TX、VC0_RX接口分别与DMA核发送接收仲裁上的PCIe_TX、PCIe_RX接口相连,用于两部分之间数据的传输。

3.4 AS5643协议处理模块

该模块主要实现AS5643协议处理功能[13-14],主要功能模块包括:寄存器调度模块、链路层芯片接口控制模块及数据搬运模块。

AS5643接口实现了主机和链路层接口芯片之间的通信,满足基于IEEE-1394B的用法和需求建立的航空领域网络传输数据总线标准SAE AS5643。FPGA逻辑并配合软件实现了AS5643总线网络协议定义的异步流包,固定帧速率,STOF包同步,带宽预分配,纵向奇偶校验VPC,匿名签署消息,通道号的静态分配等功能。逻辑的基本框图如图2所示。

图2 AS5643逻辑框图

寄存器主要实现用户需求所要求的寄存器的功能及主机控制寄存器。

该模块完成数据包发送控制(以DM接口为控制接口),数据包接收控制(以FIFO接口为控制接口),对链路层和物理层芯片的初始化控制,网络拓扑信息的读取(总线复位后的自标识包),主机命令的执行和控制,以及接收VPC的检查等功能。

3.5 数据搬运模块

数据搬运模块主要根据寄存器控制模块发来的启动信号和寄存器完成STOF包和异步流包数据发送的自动搬运,打包及DPRAM和发送数据包VPC的计算,并将打包计算好的数据填入FIFO中,以供DM模块发送;同时将发送数据回环写入DPRAM,以供对发送数据的实时监控,实现BM功能。

4 结束语

文中根据1394协议与AS5643协议要求,首先给出了三节点仿真卡的整体设计,对三节点仿真卡的各模块详细设计进行了阐述。该仿真卡能够实现协议要求,实现数据收发、故障注入、消息完整性检测等功能,从而通过地面设备虚拟仿真机载总线的可靠性。将来可以在协议基础上进一步提升数据传输带宽、确定性、实时性等性能,下一方案可逐步支持S800的速率要求。

[1] IEEE1394B-2002,IEEE standard for a high performance serial bus[S].[s.l.]:IEEE,2002.

[2] IEEE Std1394B,IEEE standard for a high-performance serial bus-amendment 2[S].[s.l.]:IEEE,2002.

[3] Li Shiping,Dai Fan,Wang Xudong.The principle and application technology of IEEE-1394 (Fire wire) system[M].Xi’an:Xidian University Press,2004.

[4] Anderson D.Fire Wire系统体系[M].第2版.北京:中国电力出版社,2001.

[5] Wolfram K D,Bloom H J.New radiation-hard high-speed serial data bus for satellite onboard communication[C]//Proceedings of IEEE international conference on geoscience and remote sensing symposium.[s.l.]:IEEE,2004.

[6] SAE AS5643/1 S400 copper mediainterface characteristics over extended distances[S].[s.l.]:IEEE,2004.

[7] SAE-AS5643,IEEE-1394 Binterface requirements for military and aerospace vehicle applications SAE aerospace standard 5643[S].[s.l.]:IEEE,2006.

[8] 常晓明.VerilogHDL实践与应用系统设计[M].北京:北京航空航天大学出版社,2003:11-21.

[9] 李 攀,田 泽,蔡叶芳,等.基于SOPC的PCI通信接口设计与实现[J].计算机技术与发展,2009,19(9):211-214.

[10] 廖寅龙,田 泽.FC网络通信中PCIe的接口的设计与实现[J].航空计算技术,2010,40(4):127-130.

[11] 马鸣锦,朱剑冰,何红旗,等.PCI,PCI-X和PCI Express的原理及体系结构[M].北京:清华大学出版社,2007.

[12] 单天昌,陆 达.基于FPGA的PCI接口DMA传输的设计与实现[J].计算机技术与发展,2010,20(4):215-219.

[13] 詹 鹏.航空高速总线协议AS5643的FPGA实现[J].电讯技术,2013(8):1052-1057.

[14] 赵 彬,田 泽,杨 峰,等.基于AS5643协议的接口模块设计与实现[J].计算机技术与发展,2013,23(8):100-102.

Design and Implementation of a SAE AS5643 3 Ports Simulation Equipment

HAN Yi-peng1,2,TIAN Ze1,2,NIU Shao-ping1,2

(1.Aeronautics Computing Technique Research Institute,Xi’an 710068,China;2.Aeronautics Science and Technology Key Laboratory of Integrate Circuit and Micro-system Design,Xi’an 710068,China)

With the rapid development of aviation system,accuracy and instantaneity of data transmission are increasingly significant.To address the requirement of new generation aviation system,standard IEEE-1394B bus protocol should be restricted.Thus SAE AS5643 is developed.To simulate the reliability of 1394 bus system in aviation system,a series of ground virtual simulation devices including 3 ports simulation_card are designed.The 3 ports card is a visual simulator to simulate the node function of 1394 buses on the ground.It contains three nodes.In the system 3 ports simulation_card can be linked to system bus through the root node or the remote node,thus achieving AS5643 communication protocol processing and information interaction between peripheral and host system.To test the accuracy of FPGA,the timing simulation of CC simulation card is performed through Xilinx ISE development environment and QustaSim simulator.The design of FPGA is achieved.Designs contains three nodes with the function of data sending or receiving,faults injection,self-setting of heart,self-test of VPC and CRC and so on.

AS5643;FPGA;airborne data bus;simulation_card

2015-06-12

2015-09-18

时间:2016-03-04

中国航空工业集团公司创新基金(2010BD63111)

韩一鹏(1989-),男,助理工程师,研究方向为集成电路设计与验证;田 泽,博士,研究员,中航首席技术专家,研究方向为SoC设计方法学、嵌入式系统设计、航空专用集成电路设计等。

http://www.cnki.net/kcms/detail/61.1450.TP.20160304.1508.004.html

TP39

A

1673-629X(2016)03-0202-03

10.3969/j.issn.1673-629X.2016.03.047

猜你喜欢

寄存器数据包总线
二维隐蔽时间信道构建的研究*
STM32和51单片机寄存器映射原理异同分析
基于Jpcap的网络数据包的监听与分析
Lite寄存器模型的设计与实现
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
SmartSniff
CAN总线并发通信时下位机应用软件设计
多通道ARINC429总线检查仪
高速数模转换器AD9779/AD9788的应用