Was ist der Codierungsunterschied zwischen den Formaten ARINC 429 BNR und BCD?

Ich glaube, ich verstehe die Unterschiede zwischen den Arten von ARINC-Wortformaten, würde aber gerne etwas Input bekommen, um zu sehen, ob mein Verständnis richtig ist. In der ARINC 429-Spezifikation wird diskutiert, dass es einige Unterschiede in der Behandlung von Nachrichten zwischen den beiden Formaten gibt.

Datenfeld

Dies scheint nur ein grundlegendes arithmetisches Konzept zu sein und betrifft mich nicht so sehr. Soweit ich weiß, funktioniert das BCD -Datenfeld folgendermaßen:

Data-Field = 0x12340 bedeutet, dass die Daten tatsächlich 12.340 (zwölftausend, dreihundertvierzig) zur Basis 10 sind.

Dann würde das BNR -Datenfeld wie folgt funktionieren:

Data-Field = 0x7FD1C bedeutet, dass die Daten tatsächlich -740 sind (basierend auf Zweierkomplement-Arithmetik).

Sign-Status-Matrixfeld

Die Betriebscodes bedeuten einfach verschiedene Dinge. Oder mit anderen Worten, die Codenummern sind gleich, aber die Codes selbst haben für BCD-Nachrichten eine andere Bedeutung als für BNR-Nachrichten. Nun, wenn es keine anderen Unterschiede gibt, würde ich auch gerne wissen, warum die Op-Code-Schemata etwas anders sind.

Meine Frage

Ich schätze, in einem einzigen Satz würde meine Frage lauten: Sind dies die einzigen Unterschiede zwischen den Arten von ARINC-Nachrichten?

Antworten (2)

Ihre grundlegende Dekodierungsstrategie sieht richtig aus - ich habe die Werte nicht doppelt überprüft, aber die Logik ist solide. Beachten Sie jedoch, dass der Unterschied zwischen BCD und Zweierkomplement nicht der einzige Unterschied zwischen BNR und BCD (und diskreten Bezeichnungen, die ebenfalls üblich sind) ist. Binärcodierte Dezimal-(BCD)- und Binär-(BNR)-Labels decodieren im Allgemeinen wie Sie gezeigt haben, aber die Sign-Status-Matrix (SSM) spielt eine große Rolle bei der Interpretation dieser Daten und ihre Verwendung ist nicht optional.

Bei BCD-Etiketten informiert der SSM, ob die Daten positiv oder negativ sind (oder welche Richtung Punkte sind), also „Plus, Norden, Osten, Rechts, Nach, Oben“ vs. „Minus, Süden, Westen, Von, Unten“. Es informiert auch, wenn die Daten ungültig sind ("No Computed Data"). BNR-Etiketten enthalten Vorzeicheninformationen bereits in der Zweierkomplementcodierung, so dass das Duplizieren dieser Informationen in den SSM wertvolle Bandbreite verschwenden würde. Der SSM informiert Sie weiterhin über ungültige Daten, kann aber auch über (Nicht-)Betrieb im Umkehrmodus („Failure Warning“) oder korrektes Verhalten („Normal Operation“) informieren.

Was dies für eine gegebene LRU (Line-Replaceable Unit) 1 bedeutet, kann sich von jeder anderen LRU völlig unterscheiden. Um Vertrauen in Ihre Interpretation eines Etiketts zu haben, müssen Sie sich einen Hardware-Integrationsleitfaden für die betreffende LRU besorgen, um festzustellen, in welchem ​​Format Daten bereitgestellt werden oder bereitgestellt werden müssen und was die SSM-Werte bedeuten. Dieses Integrationshandbuch ist ein separates Dokument von jedem Benutzer- oder Wartungshandbuch, das Sie möglicherweise mit einer LRU zum Einbau in ein Flugzeug erhalten haben. Es wird normalerweise nur Originalgeräteherstellern anderer LRUs zur Verfügung gestellt.

Beispielsweise kann ein BNR-Label immer noch einen lesbaren Wert enthalten, wenn der SSM auf „Fehlerwarnung“ eingestellt ist, aber ob Sie diese Daten noch verwenden können oder nicht, hängt davon ab, was der Fehler für die jeweilige LRU bedeutet. Ich bin einmal auf eine LRU gestoßen, die eine Bezeichnung für die barometrische Höhe lieferte, die auf die GPS-Höhe über dem Ellipsoid zurückgesetzt wurde, als der Fehlermodus eingestellt wurde. Diese Änderung des dargestellten Wertes wurde damals nicht geschätzt, lehrte mich aber, immer zuerst den SSM zu inspizieren, bevor ich an einen bestimmten Wert glaube. Darüber hinaus werden viele BNR-Etiketten auch um einen willkürlichen Faktor skaliert, um einen breiteren Bereich darstellbarer Werte bereitzustellen. Der Skalierungsfaktor wird im Integrationshandbuch bereitgestellt und ist normalerweise ein fester Wert, aber ich bin auf einige Labels gestoßen, deren Werte durch Werte anderer Labels skaliert wurden.

Das Format für diskrete Etiketten ist immer spezifisch für die LRU. Um zu erfahren, was diese Kodierung ist, müssen Sie über den Integrationsleitfaden verfügen.

Letztendlich hängt der Unterschied zwischen den einzelnen ARINC429-Etiketten von der spezifischen Ausrüstung ab, an die Sie eine Schnittstelle anschließen. Die Standarddatentypen (BNR/BCD/Discrete) bieten eine ungefähre Vorstellung davon, wie die Daten verpackt werden, aber der Integrationsleitfaden ist die maßgebliche Quelle für die Datencodierung.

1 : Ich verwende LRU als Abkürzung für jeden ARINC429-Knoten. In der Praxis sind viele ARINC429-kompatible Geräte nicht unbedingt leitungsersetzbar.

Würde es jemals einen Fall geben, in dem der SSM als Platz für das Datenfeld verwendet wird (wenn in BCD), ähnlich wie dies für die BNR-formatierten Zahlen geschieht?
Ich bin noch nie auf ein BCD-Label gestoßen, das den SSM für die Verwendung als zusätzlichen Datenraum außer Kraft gesetzt hätte. Ich würde stark vermuten, dass jedes Gerät, das mehr Datenspeicher in einer neuen Revision benötigt, ein BCD-Label in ein BNR-Label ändert, anstatt das BCD zu erweitern. Diese Änderung würde einen viel größeren Schub für den verfügbaren Codierungsraum bereitstellen. Trotzdem kann es immer noch einen Gerätehersteller geben, der sich dafür entschieden hat, stattdessen ein nicht standardmäßiges BCD-Etikett zu verwenden. Solche Ausnahmen sollten im Integrationsleitfaden gut dokumentiert werden.
Ich hatte ziemlich genau diese Neigung und weiß genau, dass BNR manchmal den SSM außer Kraft setzt.

Wie Sie vielleicht aus diesem Spezifikations-Tutorial oder diesem Errata-Bericht bemerken , zeigen die beiden Bits, die als "Vorzeichen-Status"-Feld für BCD-Daten dienen, nur den Status, nicht das Vorzeichen, für BNR-Daten. Die Statuscodes für BNR-Daten umfassen einen "Fehlerwarnungs"-Code; Eine Fehlerwarnung in der Vorzeichen-Status-Matrix von BCD-Daten ist nicht erforderlich, da die einzelnen Stellen auf 1111 (vier aufeinanderfolgende 1en) gesetzt werden können, um anzuzeigen, dass die Werte unzuverlässig sind.

Auch wenn Breiten- und Längengrade im BCD-Format auf 0,1 Minuten codiert sind, muss ein anderes BCD-Format als üblich verwendet werden. Siehe den Kommentar in Abschnitt 2.1.2 des Errata-Berichts . Die Positionen der Codierung jeder Ziffer werden um 2 Bits verschoben, sodass die erste Ziffer den Maximalwert 1 anstelle von 7 hat und die Bits 9 und 10 für Daten verwendet werden.