Kontrola nadmiarowości wzdłużnej - Longitudinal redundancy check

W telekomunikacji wzdłużna kontrola nadmiarowa (LRC) lub pozioma kontrola nadmiarowa jest formą kontroli nadmiarowej, która jest stosowana niezależnie do każdego z równoległych grup strumieni bitów. Dane muszą zostać podzielone na bloki transmisyjne , do których dodawane są dodatkowe dane kontrolne.

Termin ten zwykle odnosi się do jednego bitu parzystości na strumień bitów, obliczanego niezależnie od wszystkich innych strumieni bitów ( BIP-8 ), chociaż może być również używany w odniesieniu do większego kodu Hamminga .

To „dodatkowe” słowo LRC na końcu bloku danych jest bardzo podobne do sumy kontrolnej i cyklicznej kontroli nadmiarowej (CRC).

Optymalny kod prostokątny

Chociaż prosta parzystość wzdłużna może wykrywać tylko błędy, można ją połączyć z dodatkowym kodowaniem kontroli błędów, takim jak kontrola nadmiarowości poprzecznej (TRC), w celu skorygowania błędów. Kontrola redundancji poprzecznej jest przechowywana na dedykowanej „ścieżce parzystości”.

Ilekroć wystąpi jakikolwiek błąd jednobitowy w bloku transmisji danych, takie dwuwymiarowe sprawdzanie parzystości lub „dwurzędowe sprawdzanie parzystości”, umożliwia odbiornikowi użycie TRC do wykrycia, w którym bajcie wystąpił błąd, a LRC do wykryj dokładnie, na której ścieżce wystąpił błąd, aby odkryć dokładnie, który bit jest błędny, a następnie popraw ten bit, odwracając go.

Pseudo kod

Międzynarodowa norma ISO 1155 stwierdza, że ​​wzdłużna kontrola nadmiarowa dla sekwencji bajtów może być obliczona w oprogramowaniu za pomocą następującego algorytmu:

lrc := 0
for each byte b in the buffer do
    lrc := (lrc + b) and 0xFF
lrc := (((lrc XOR 0xFF) + 1) and 0xFF)

co można wyrazić jako „8-bitową wartość uzupełnienia do dwóch sumy wszystkich bajtów modulo 2 8 ” ( x AND 0xFFjest równoważne ). x MOD 28

Inne formy

Wiele protokołów wykorzystuje oparty na XOR bajt sprawdzania nadmiarowości wzdłużnej (często nazywany znakiem kontroli bloku lub BCC), w tym protokół interfejsu linii szeregowej (SLIP, nie mylić z późniejszym i dobrze znanym protokołem Serial Line Internet Protocol ), IEC 62056 -21 standard odczytu liczników elektrycznych, karty inteligentne zgodnie z normą ISO/IEC 7816 oraz protokół ACCESS.bus .

8-bitowy LRC, taki jak ten, jest równoważny cyklicznej kontroli nadmiarowości przy użyciu wielomianu x 8  + 1, ale niezależność strumieni bitów jest mniej oczywista, gdy patrzy się na nią w ten sposób.

Bibliografia