Coding Schemes for Crisscross Error Patterns
Simon Plass, Gerd Richter, and A.J. Han Vinck
Gothenburg, 11-12 April, 2007
German
Aerospace Center
What are Crisscross Errors?
Crisscross errors can occur in several applications of information
transmission, e.g., magnetic tape recording, memory chip arrays or in
environments with impulsive- or narrowband noise, where the
information is stored or transmitted in (N x n) arrays.
German
Aerospace Center
2
Motivation
Are there coding scheme which are suited to these crisscross errors?
Rank-Codes
Permutation Codes
German
Aerospace Center
3
Introduction of Rank-Codes
Let us consider a vector with elements of the extension field GF(qN):
x ( x1 , x2 , , xn )
Now, we can present the vector x as a matrix with entries of the finite field GF(q):
a1,1 a1,2
a2,1 a2,2
A( x)
aN ,1 aN ,1
a1, n
a2, n
aN ,n
Let us define the rank distance between two matrices A and B as:
dr ( A, B) rank ( A B)
German
Aerospace Center
4
Introduction of Rank-Codes (cont’d)
Example for the rank distance:
1
1
d r ( A, B) rank (
0
0
1 1 1 0
1 0 0 1
0 0 0 0
1 1 0 0
0 0 0
1
0
0 0 0
) rank (
0
1 0 0
0 1 0
0
1 1 1
1 0 0
)2
1 0 0
1 0 0
Furthermore, Rank-Codes have an error correction capability t of
d 1
rank ( E ) t r
2
where E is the error matrix.
German
Aerospace Center
5
Example of Rank Error
1 = error
Rank array is 2.
rank error = 2
German
Aerospace Center
Rank of array is still 2.
6
Construction of Rank-Codes
A parity-check matrix H and its corresponding generator matrix G which define the
Rank-Code are given by:
h1
hq
1
2
H h1q
q d 2
h1
h2
h3
h2q
h3q
h2q
2
q d 2
2
h
h3q
2
q d 2
3
h
The elements h1 , h2 ,
hn
hnq
2
hnq
q d 2
hn
, hn GF (q N )
g1
gq
1
2
G g1q
qk 1
g1
and g1 , g 2 ,
g2
g3
g 2q
g3q
g 2q
g 2q
2
k 1
g3q
g3q
2
k 1
gn
g nq
2
g nq
k 1
g nq
, g n GF (q N )
must be linearly independent over GF (q N ).
German
Aerospace Center
7
Algebraic Decoding
Syndrome calculation s=(c+e)HT=eHT
Key equation
Use of efficient algorithm,
e.g., Berlekamp-Massey algorithm,
for solving the system of linear equations
Error polynomial
Error value and error location computation
by recursive calculation
Error vector e
cdecode = r - e
German
Aerospace Center
8
Key Equation of Rank-Codes
S0q
S1q
q
S2
S q
1
S
q1
S 1 S 1
q1
S 1 2 S 2
1 S 2 1
q1
S2 2
q1
1
S
S j i S ,
i 1
qi
j i
Syndrome Sj can
be represented by an
appropriate designed
shift-register if
i
is known
j , , 2 1
Main problem: Solve the key equation for the unknown variables i .
German
Aerospace Center
9
Berlekamp-Massey Algorithm for Rank-Codes
Initialize the algorithm
New theorem and proof
Does current design of
shift-register produce next
syndrome?
No
Yes
Modify shift-register
Has shift-register correct length?
Yes
No
Modify length
No
German
Aerospace Center
All syndromes calculated?
Yes and finished
10
Conclusions for Rank-Codes
Rank-Codes exploit the rank metric by decoding over the rank of the
error matrix, and therefore, Rank-Codes can handle efficiently crisscross
errors
The Berlekamp-Massey algorithm was introduced as an efficient
decoding algorithm
German
Aerospace Center
11
Introduction of Permutation Codes
A Permutation Code C consists of |C| codewords of length N, where every
codeword contains the N different integers 1,2,…,N as symbols.
The cardinality |C| is upper bounded by
The codewords are presented in a binary matrix where every row and
column contains exactly one single symbol 1.
German
Aerospace Center
12
Example of a simple Permutation Code
N=3, dmin=2, |C|=6 and the resulting codewords:
123
231
312
213
321
132
001
100
010
010
001
100
010
100
001
001
010
100
100
001
010
As binary matrix:
100
010
001
German
Aerospace Center
13
Influence of Crisscross and Random Errors
A row or column error reduces the distance between two codewords by a
maximum value of two.
A random error reduces the distance by a maximum value of one.
We can correct these errors, if
German
Aerospace Center
14
Application to M-FSK Modulation
In M-FSK, symbols are modulated as one of M orthogonal sinusoidal
waves
The setting of Permutation Codes can be mapped onto M-FSK
modulation
Example: M=N=4, |C|=4, C={1234}, {2143}, {3412}, {4321};
time
frequency
{2143} {f2 f1 f4 f3}
German
Aerospace Center
f1
f2
f3
f4
0100
1000
0001
0010
time
15
Influence of Different Noise
1000
0100
0010
0001
No noise
German
Aerospace Center
1010
0100
0010
0001
1000
0000
0010
0001
Background noise
1111
0100
0010
0001
1001
0101
0011
0001
1000
0000
0010
0001
narrowband
impulsive
fading
16
Conclusions
Introduction of codes, namely Rank-Codes and Permutation Codes,
which can handle crisscross errors
Rank-Codes:
• Rank-Codes exploit the rank metric by decoding over the rank of
the error matrix, and therefore, Rank-Codes can handle efficiently
crisscross errors
• The Berlekamp-Massey algorithm was introduced as an efficient
decoding algorithm
Permutation Codes:
• Binary code for the crisscross error problem
• Example of M-FSK modulation application is introduced
German
Aerospace Center
17
Thank you!
German
Aerospace Center
18
Error Pattern Example
error
single error
RS codeword
German
Aerospace Center
19
© Copyright 2026 Paperzz