본문 바로가기
임베디드 개발/펌웨어

ARINC-429 Word Format

by eteo 2023. 5. 31.

 

ARINC-429 글 :

2023.05.31 - [DSP, MCU/펌웨어공부] - ARINC-429

 

 

 

Word Formats

 

 

 

 

ARINC 429 의 data words 는 일반적으로 아래의 5개의 필드로 구성된 32 bit words이다.

 

  • Parity - 1 bit
  • Sign/Status Matrix (SSM) - 2 bits
  • Data - 19 bits
  • Source/Destination Identifier (SDI) - 2 bits
  • Label - 8 bits

 

단, 이중에서 Parity bit와 Label 만 필수이고 나머지 비트들은 비표준에서 high resolution data 등을 전송하기 위해 다양한 포맷으로 사용될 수 있다.

 

연결된 Transmitter는 항상 data words 또는 NULL state를 송신하며, 연속적으로 송신되는 words 사이에는 최소 4 bit times의 null(zero voltage)이 존재해야 한다. 이 null 간격과 BPRZ를 통해 따로 clock signal 없이도 동기화할 수 있다.

 

 

 

 

 

 

 

 

 

Parity

 

ARINC 429에서 정의하는 data word의 Most Significant Bit (MSB)은 Parity bit이다.

ARINC 429는 정확한 데이터 수신을 보장하기 위해 odd parity(홀수 패리티)를 error check용으로 사용한다.

각 word에 전송된 Logic 1의 개수는 항상 odd number여야하기 때문에, 1~31번째 bit까지의 1의 개수에 따라 32번째 bit를 set하거나 clear하여 odd number를 맞춘다.

 

  • Logic 1의 개수가 odd이면 해당 word를 accept한다.
  • Logic 1의 개수가 even이면 해당 word를 reject한다.

 

ARINC 429는 error correction 수단은 제공하지 않고 error detection만 가능하다.

 

 

 

 

 

 

 

 

Sign/Status Matrix

 

 

BIT 31-30에 위치한 Sign/Status Matrix (SSM) 필드는 어떤 데이터 타입이 전송되는지를 나타내는 label에 따라 다른 정보를 제공할 수 있다. 주로 data의 부호, 방향 또는 위치 정보를 포함하거나 source 장비의 작동 상태를 보고하기 위해 쓰인다.

 

 

SSM for BCD

 

 

 

 

 

SSM for BNR

 

 

 

 

SSM for Discrete

 

 

 

 

 

 

 

 

 

Data

 

 

ARINC429 에서 word의 데이터 정보는 bits 11-29에 위치한다.

 

그리고 특이한 것은 ARINC bus에서 data words를 전송할 때, 항상 Label이 먼저 전송되는데 Lable은 MSB first로 전송된다. 이어서 나머지 bits들이 LSB first 순으로 전송된다.

 

 

따라서 Bit transmission order는 아래와 같다.

 

 

8-7-6-5-4-3-2-1-9-10-11-...-30-31-32

 

 

실제 파형을 통해서도 볼 수 있다. Label이 binary로 10 110 000 이며 octal로 260으로 읽는다.

 

이렇게 Label이 다른 bits들과 달리 역순으로 전송되는 것은 레거시 시스템과 호환을 위해서이다.

 

 

 

 

 

 

ARINC 429에 명시된 Data Type은 아래와 같다.

 

1. Binary Number Representation (BNR): Transmitted in fractional two’s complement notation 

2. Binary Coded Decimal (BCD): Numerical subset of ISO Alphabet No.

3. Discrete Data: Combination of BNR, BCD or individual bit representation

4. Maintenance Data and Acknowledgement: Requires two-way communication

5. Williamsburg/Buckhorn Protocol – A bit-oriented protocol for file transfers

 

 

 

 

 

 

Data Type - BNR Data

 

 

- BNR word format은 정보를 2진수로 저장한다.

- Bit 29가 sign bit로 사용된다. 0이면 양수, 1이면 음수이다.

- Bit 28이 data의 MSB이며, 정의된 parameter scale factor의 1/2이다. 

- Bit 27은 Bit 28의 1/2이며 scale factor의 1/4이다. Bit 26은 Bit 27의 1/2이며 scale factor의 1/8이다. 이렇게 계속된다.

 

 

 

 

 

BNR Word format 예시. Air speed를 나타내는 Label 103(octal), Scale factor가 512

 

 

 

 

 

 

 

 

 

 

 

Data Type - BCD Data

 

 

 

- Data field에서 4개의 bits를 사용해 BCD format으로 각 decimal digit을 나타낸다.

- 필드에 최대 5 digits을 표현할 수 있으나 범위가 0-9인 다른 Digit과 다르게 Bit 29-27는 3 bits로 범위가 0-7이다.

- 만약 Bit 29-27을 사용하지 않는다면 0으로 패딩한다.

 

 

 

 

 

 

 

 

BCD word format 예시

 

 

 

 

 

 

 

 

 

 

 

 

Discrete data format 예시

 

 

 

 

 

 

 

 

 

 

 

SDI

 

- SDI(Source/Destination Identifier)는 Bit 9-10을 사용하며 optional이다.

- SDI를 사용하여 데이터를 전송하는 Source를 식별하거나 어떤 Sink에 사용되는 데이터인지 식별할 수 있다.

 

 

 

 

 

 

 

 

 

 

 

 

Label

 

 

- Label은 Bit 1-8에 위치하며 3자리의 8진수로 표현된다.

- Label은 word의 data가 가진 정보와 type(BNR, BCD, Discrete, etc)을 식별하는 데 사용할 수 있다.

- Bit 11-13을 확장해 Equipment ID로 사용할 수 있다. Equipment ID는 Label과 다르게 16진수로 표시된다.

- Label은 항상 ARINC 전송에서 가장 먼저 보내지는데 Label만 MSB가 먼저 전송되고 word의 나머지 부분은 LSB first로 전송된다.

 

 

예를들면 BNR Label 102는 Selected Altitude 인데 이 데이터는 Flight Management Computer (Equipment ID 002Hex)로 부터 받을 수도 있고 또는 DFS System(Equipment ID 020Hex)이나 FCC Controller (Equipment ID 0A1Hex)로 부터 받을 수도 있다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

참고자료 :

ARINC429_Tutorial.pdf
3.15MB

https://en.wikipedia.org/wiki/ARINC_429

http://www.intercomelec.co.kr/bbs/board.php?bo_table=notice&wr_id=3 

'임베디드 개발 > 펌웨어' 카테고리의 다른 글

UDS (차량용 진단 통신)  (0) 2023.06.09
CAN ISO-TP  (2) 2023.05.31
ARINC-429 Protocol  (0) 2023.05.31
Vector CANdb++ editor  (0) 2023.05.14
CRC-16-CCITT  (0) 2023.05.07