DESIGN AND IMPLEMENTATION OF AN AVIONICS FULL DUPLEX ETHERNET (A664) DATA ACQUISITION SYSTEM

Similar documents
Developing and Testing Networked Avionics Systems and Devices By Troy Troshynski, Avionics Interface Technologies

SWITCHED ETHERNET TESTING FOR AVIONICS APPLICATIONS. Ken Bisson Troy Troshynski

Design of a Gigabit Distributed Data Multiplexer and Recorder System

ARINC 664 / AFDX EDE support. MX-Foundation 4 API MAXIM AIR GUI TECHNOLOGIES. Version 2.1

Implementation of the hardwired AFDX NIC

Data Acquisition in High Speed Ethernet & Fibre Channel Avionics Systems

A Common Solution to Custom Network Applications

Artisan Technology Group is your source for quality new and certified-used/pre-owned equipment

Developing AFDX Solutions

Developing deterministic networking technology for railway applications using TTEthernet software-based end systems

OPTIMISING NETWORKED DATA ACQUISITION FOR SMALLER CONFIGURATIONS

AFDX/ARINC 664 Protocol

6.9. Communicating to the Outside World: Cluster Networking

CCNA Exploration1 Chapter 7: OSI Data Link Layer

Cisco Series Internet Router Architecture: Packet Switching

Impact of End System Scheduling Policies on AFDX Performance in Avionic On-Board Data Network

AFDX Training Emulator

Part 5: Link Layer Technologies. CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross

Summary of MAC protocols

Advanced Network Tap application for Flight Test Instrumentation Systems

Interconnection Structures. Patrick Happ Raul Queiroz Feitosa

Programmable Logic Design Grzegorz Budzyń Lecture. 15: Advanced hardware in FPGA structures

Chapter 4 Network Layer: The Data Plane

Lecture 16: Network Layer Overview, Internet Protocol

CMSC 332 Computer Networks Network Layer

Introduction to the Catalyst 3920

Network Architecture

Chapter 15 Local Area Network Overview

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

Chapter 4: network layer. Network service model. Two key network-layer functions. Network layer. Input port functions. Router architecture overview

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

DTU IMM. MSc Thesis. Analysis and Optimization of TTEthernet-based Safety Critical Embedded Systems. Radoslav Hristov Todorov s080990

ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters

Computer Networks LECTURE 10 ICMP, SNMP, Inside a Router, Link Layer Protocols. Assignments INTERNET CONTROL MESSAGE PROTOCOL

LightSpeed1000 (w/ GigE and USB 2.0) OC-3/STM-1, OC-12/STM-4 Analysis and Emulation Card

Topic 4a Router Operation and Scheduling. Ch4: Network Layer: The Data Plane. Computer Networking: A Top Down Approach

Lecture 3. The Network Layer (cont d) Network Layer 1-1

CSE 3214: Computer Network Protocols and Applications Network Layer

ET4254 Communications and Networking 1

440GX Application Note

ES623 Networked Embedded Systems

Chapter 4. Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, sl April 2009.

Drive Control via EtherNet/IP using CIP Motion and CIP Sync Profile Extensions

Designing of Avionics Full Duplex Switch on Netfpga

A PROPOSED REVISION TO IRIG 218 BASED ON REAL WORLD EXPERIENCE Gary A. Thom GDP Space Systems 300 Welsh Road, Horsham, PA

MIL-STD-1553 INTERFACES TO TELEMETRY SYSTEMS

Functional Specification

eip-24/100 Embedded TCP/IP 10/100-BaseT Network Module Features Description Applications

Local Area Network Overview

NetList / SourceCode / Deployment. Basic / Extended / GPLink. FireLink

PE310G4TSF4I71 Quad Port SFP+ 10 Gigabit Ethernet PCI Express Time Stamp Server Adapter Intel Based

CSCI-GA Operating Systems. Networking. Hubertus Franke

Lecture 6 The Data Link Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

1-1. Switching Networks (Fall 2010) EE 586 Communication and. October 25, Lecture 24

COMPUTER NETWORKS UNIT I. 1. What are the three criteria necessary for an effective and efficient networks?

NetFPGA Hardware Architecture

The Link Layer and LANs: Ethernet and Swiches

Medium Access Protocols

Cisco Cisco Certified Network Associate (CCNA)

ECE4110 Internetwork Programming. Introduction and Overview

Digital Asset Management 5. Streaming multimedia

AN ETHERNET BASED AIRBORNE DATA ACQUISITION SYSTEM

Data Link Layer. Our goals: understand principles behind data link layer services: instantiation and implementation of various link layer technologies

Gigabit Ethernet Passive Optical Network (GEPON) Tutorial. June 2004

Research and Analysis of Flow Control Mechanism for Transport Protocols of the SpaceWire Onboard Networks

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

Network Architecture. TOC Architecture

Universal Serial Bus Host Interface on an FPGA

or between microcontrollers)

CSC 4900 Computer Networks: Network Layer

Ethernet Hub. Campus Network Design. Hubs. Sending and receiving Ethernet frames via a hub

AMC data sheet. PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems

1. Introduction 2. Methods for I/O Operations 3. Buses 4. Liquid Crystal Displays 5. Other Types of Displays 6. Graphics Adapters 7.

More on LANS. LAN Wiring, Interface

CS 43: Computer Networks Switches and LANs. Kevin Webb Swarthmore College December 5, 2017

INT 1011 TCP Offload Engine (Full Offload)

AMC data sheet. PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems

CSE398: Network Systems Design

THE ARCHITECTURE OF AIRCRAFT INSTRUMENTATION NETWORKS

GUARANTEED END-TO-END LATENCY THROUGH ETHERNET

Product Overview. Programmable Network Cards Network Appliances FPGA IP Cores

Da t e: August 2 0 th a t 9: :00 SOLUTIONS

PacketExpert -1G / 10G Wirespeed Ethernet Packet Capture and Playback

Elchin Mammadov. Overview of Communication Systems

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING

Internet users are continuing to demand

PacketExpert PDF Report Details

Quality of Service (QoS)

Design and Performance Evaluation of a New Spatial Reuse FireWire Protocol. Master s thesis defense by Vijay Chandramohan

Network Layer: Router Architecture, IP Addressing

A ONE CHIP HARDENED SOLUTION FOR HIGH SPEED SPACEWIRE SYSTEM IMPLEMENTATIONS

CN-100 Network Analyzer Product Overview

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Chapter 4 Network Layer

Technology for Adaptive Hard. Rui Santos, UA

Networking for Data Acquisition Systems. Fabrice Le Goff - 14/02/ ISOTDAQ

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11

Chapter 6: DNP Introduction. 6.2 Features of the DNP The OSI/ISO model. 6.3 Basic topology

PLEASE READ CAREFULLY BEFORE YOU START

Transcription:

DESIGN AND IMPLEMENTATION OF AN AVIONICS FULL DUPLEX ETHERNET (A664) DATA ACQUISITION SYSTEM Alberto Perez, Technical Manager, Test & Integration John Hildin, Director of Network s John Roach, Vice President of Network Products Division Teletronics Technology Corporation Newtown, PA USA ABSTRACT ARINC 664 presents the designers of data acquisition systems challenges not previously seen on other aircraft avionic buses. Among the biggest challenges are providing the test instrumentation system with the capacity to process two redundant Ethernet segments that may be carrying packet traffic at near wire-line speed. To achieve this level of performance, the hardware and software must not only perform mundane operations, like time stamping and simple virtual link MAC filtering, but also need to implement core ARINC 664 functions like redundancy management and integrity checking. Furthermore, other TCP/IP operations, such as IP header checksum, must also be offloaded to the hardware in order to maintain real-time operation. This paper describes the implementation path followed by TTC during its development of an ARINC 664 network monitor used in a large commercial aircraft flight test program. KEY WORDS AFDX, ARINC 664, Ethernet, flight test, IP, redundancy INTRODUCTION ARINC 664 Part 7 (A664) is a standard that defines the electrical and protocol specifications for a communications network suitable for use in an avionics environment. This standard is based on earlier work done by Airbus called AFDX (Avionics Full Duplex Switched Ethernet) and used for the A380. The main objective of ARINC 664 is the creation of a deterministic data network that can be used for flight critical applications. This is accomplished by providing dedicated bandwidth to each communication path in the network and allowing for the specification of the quality of service (QOS) available to each node in the system. 1

An ARINC 664 network consists of aircraft host computers and switches. In the ARINC 664 network, the aircraft computers are the consumers of communication services in the network. The End (ES) layer, within the host computer, provides this service. The End enables the software applications running on the host computer to send and receive data in a reliable and secure way. Thus, the End not only corresponds to the concept defined in the OSI protocol suite [1], but also has an additional layer that gives the ARINC 664 network its deterministic characteristics. End s are interconnected using packet switching computers called AFDX switches. The switches main task is to exchange frames between the End s connected to its ports. In addition, the switches enforce traffic policies on the preconfigured virtual links that the users statically define. A Virtual Link (VL) is a pipe employed by an End to transmit data across the network. A Virtual Link is a unidirectional point to multipoint communication path that provides service analogous to those found in Asynchronous Transfer Mode (ATM) Constant Bit Rate (CBR). VL Bandwidth Allocation Gap (BAG) in msecs 1 2 420 2 4 64 3 8 1460 Maximum Frame Size (Lmax) in bytes Vehicle MCS BC GPS MnDAU Identifier Main Computer Brake Controller Global Position Miniature Data Acquisition Unit Switch Net A MCS End BC End GPS End MnDAU End Switch Net B Figure 1: Simple AFDX network Figure 1 demonstrates two important concepts of an ARINC 664 network. 1. Redundancy This property of the ARINC 664 network is accomplished by having two independent paths between each End. For each Virtual Link, a transmitting End sends a copy of the data to both networks. The receiving End accepts the first instance of the data to 2

arrive and silently discards the other copy. In Figure 1, the MCS End is sourcing all three virtual links on the network. The system designer pre-configures the VLs for redundancy, forcing the End to transmit the same frame on both Network A and Network B. 2. Traffic Shaping Each Virtual Link regulates its maximum transmit rate by using two configurable parameters: a. Bandwidth Allocation Gap (BAG) that regulates how often the Virtual Link is allowed to transmit on the network and b. The Maximum Frame Size (Lmax). Computing the bandwidth allocated to a Virtual Link is a function of the BAG in Hz and Lmax in bytes. For example, in our simple A664 network, the maximum bandwidth allocated to virtual link 1 is computed by multiplying Lmax by the rate in seconds (420 * 1000/2) = 210Kbytes/sec. These two properties make the ARINC 664 network very predictable in terms of the rate of traffic that an End is expected to initiate or terminate. The A664 network system designer knows ahead of time the resources that the network is going to need and programs the AFDX switches accordingly. The engineer that designs an aircraft End selects a processor capable of handling the traffic load that the End is expected to process and does not need to worry about any other traffic patterns on the network since the switch and the built-in MAC filters will discard all the traffic that does not belong to the End. The engineer that designs the Fight Test Instrumentation (FTI) system that captures the network traffic has no previous knowledge of what is expected of the FTI End. All the FTI engineer knows is that the system must be able to handle two full-duplex 100Mbps lines. Consider the following instrumentation requirements: a. Terminate up to 65535 Virtual Links b. Must be able to process up to 148,800 frames per link c. Selectively perform Redundancy Management and Integrity Checking d. Keep statistics for each Virtual Link e. Timestamp all received frames within 100 nanoseconds The approach chosen by Teletronics Technology Corp (TTC) was not only to offload traditional functions such as timestamping to the hardware, but also the Virtual Link protocol defined in ARINC 664 Part 7[2]. IMPLEMENTATION The Mn664-2000L is a miniature networked encoding unit that processes and delivers packetized A664 data to designated nodes in the network. It is designed to capture packets received from ARINC-664 switches and feed processed frames into the network. It consists of a unique 3

ARINC-664 interface module using a custom A664 FPGA, an IEEE 1588 time and Ethernet interface module, a processor module running real-time Linux, and a 15-watt power supply. See Figure 2 for an instance of the Mn664-2000L components. Figure 2: Mn664-2000L The hardware platform chosen in the design of the A664 MnDAU combines the flexibility of two processors running real time Linux with the performance of two dedicated FPGAs. One processor is dedicated to servicing the A664 protocol while the second performs data encapsulation and transmission to the data acquisition network. The actual breakdown of functionality in the unit is as follows: Table 1: Mn664-2000L Functional Partitions Module ARINC-664 bus interface Description I/O board: one A664 channel pair (Tx/Rx * 2), an A664 FPGA, and bidirectional optical transceivers Slave processor board: 32MB RAM, 64MB Flash memory Memory bandwidth 533 MBps peak Integrity checking and redundancy management compliant with ARINC-664 Part 7 Timestamps and DMAs the captured ARINC-664 packets Serial RS-232 engineering port 4

Module Main processor Description Onboard 32MB RAM and 64MB Flash memory Serial RS-232 engineering port 1PPS signal output Software-based real-time Linux ARINC-664 and network driver IEEE 1588 time and Ethernet interface Power supply IEEE 1588 time synchronization 10/100 Base-T Ethernet port 28 VDC +/-4V with input filter 15 Watts output Figure 3 below shows two processors that are connected via a PCI Bus in a master-slave configuration. The processor directly connected to the FPGA is the slave processor. This CPU interfaces to the A664 FPGA through the processor s local bus. The function of the master processor is to program and control the acquisition of frames within the slave processor. Processor Local bus Management Network AFDX Net A AFDX Net B FPGA Slave Processor Master Processor DPRAM PCI Bus Figure 3: A664 MnDAU Platform 5

A664 FPGA DEVELOPMENT During the development of the ARINC 664 MnDAU, the main focus was on the design of the FPGA that was handling the redundant frames. To support fast and efficient processing of frames, the FPGA has a local dual-port RAM. It is used as a direct lookup of Virtual Link information and to buffer incoming frames until the FPGA is ready to handle the received data. This FPGA is placed on the MII bus between the PHYs and the slave PowerPC processor. This means that the FPGA has to compute the frame check sequence (FCS-32) on all incoming frames as well as generating the FCS-32 once the A664 sequence number is extracted and the timestamp is appended to the frame. To leverage the hardware, all the Virtual Link functions defined in the ARINC 664 specification part 7, filtering and statistic collection were implemented in the FPGA. These functions include the following: ARINC 664 functions Filters Ethernet o Integrity checking per Virtual Link ID and network o Redundancy management per Virtual Link ID, SkewMax and sequence number range o Defaults to discard all incoming A664 frames o Filters based on Virtual Link ID o Filter on source and destination IP address o Filter on source and destination UDP port o Integrity based on virtual link ID o Redundancy based on virtual link ID o Computes the receive frame check sequence o Discards A664 frames with errors o Provides the status of: Bad CRC Frame errors including run, overflow, byte and non-udp Integrity resets o Replaces the source MAC address and type with the eight bytes of timestamp o Recomputes the CRC-32 o Retransmits to the MAC devices 6

RX FROM PHY A DUAL PORT SRAM TS VL & SN EXTRACT A664 INTEGRITY & REDUNDACY CONTROL TIME STAMP INSERTION & FRAME RETRANSMISSION up I/F TO CPU up I/F RX FROM PHY B TS VL & SN EXTRACT TO CPU TIME GEN AFDX FPGA Figure 4: FPGA Architecture SLAVE PROCESSOR The Slave processor core function is to program the Virtual Link table stored in the FPGA s DPRAM and to receive the frames that passed the Integrity Checking and Redundancy Management procedures. This processor provides 32 Mbytes of DRAM that is used for program, frame storage and IP reassembly queues. Most of the work of the Slave processor is in setting up data transfers across the PCI bus. For this task, embedded DMA engines within the processor are used to perform the actual data transfer. The use of DMA makes the end-to-end delivery of data without the need of processor driven I/O. Another critical task performed by the Slave processor is the reassembling of fragmented IP packets. The IP fragmentation and reassembly procedure is described in IETF RFC 791[3]. MASTER PROCESSOR The master processor for the Mn664-2000L stores the program code and configuration data used by the system. The master processor executes the operating system, drivers, and application software. All user interactions with the system occur through the master processor. In addition, the module containing the master processor provides the connectors that attach to other modules in the Mn664-2000L. Each connector has a combination of buses, clocks, and voltage rails. The following buses are supported between the master processor module and other modules: 7

The master processor local bus is connected to the module which implements the data acquisition Ethernet interface The master processor MII Bus is connected to the IEEE 1588 module that implements the PTP protocol The master processor PCI Bus is connected to the slave processor module A backplane connector is used to distribute power to all the modules in the stack CONCLUSION Specialized avionics communications buses require specialized instrumentation systems to interface and record data from them. The Mn664-2000L is an example of a highly specialized device that can accept data from two fully redundant Ethernet interfaces running at near line rate speeds and still meets the requirements commonly expected of instrumentation test equipment. This paper has provided an outline of the approach taken by one company to draw a practical line between software and hardware implementation constraints that provided a cost effective and efficient solution to a difficult testing problem. REFERENCES [1] End s to Intermediate Routing Exchange Protocol, ANSI X3S3.3, published as RFC-995, April 1986. [2] ARINC Specification 664 Part 7, AEEC, September 2004. [3] Postel, J., Internet Protocol [IP], RFC-791, September 1981. 8