GR712RC-UM, Jun 2017, Version 2.9 210 www.cobham.com/gaisler
GR712RC
The encoder supports E=16 (255, 223) and E=8 (255, 239) codes. The choice between the E=16 and
E=8 coding can be performed during operation by means of a configuration register.
The maximum number of supported interleave depths I
max
is 8. The choice of any interleave depth
ranging from 1 to the chosen I
max
is supported during operation. The interleave depth is chosen during
operation by means of a configuration register.
27.5.3 Pseudo-Randomiser
The Pseudo-Randomiser (PSR) generates a bit sequence according to [CCSDS-131.0-B-1] and
[ECSS-E-ST-50-03C] which is xor-ed with the data output of preceding encoders. This function
allows the required bit transition density to be obtained on a channel in order to permit the receiver on
ground to maintain bit synchronization.
The polynomial for the Pseudo-Randomiser is h (x) = x
8
+x
7
+x
5
+x
3
+1 and is implemented as a Fibo-
nacci version (many-to-one implementation) of a Linear Feedback Shift Register (LFSR). The regis-
ters of the LFSR are initialized to all ones between Transfer Frames. The Attached Synchronization
Marker (ASM) is not effected by the encoding.
27.5.4 Convolutional Encoder
The Convolutional Encoder (CE) implements two convolutional encoding schemes. The ESA PSS
standard [PSS-04-103] specifies a basic convolutional code without puncturing. This basic convolu-
tional code is also specified in the CCSDS recommendation [CCSDS-131.0-B-1] and ECSS standard
[ECSS-E-ST-50-03C], which in addition specifies a punctured convolutional code.
The basic convolutional code has a code rate of 1/2, a constraint length of 7, and the connection vec-
tors G1 = 1111001
b
(171 octal) and G2 = 1011011
b
(133 octal) with symbol inversion on output path,
where G1 is associated with the first symbol output.
The punctured convolutional code has a code rate of 1/2 which is punctured to 2/3, 3/4, 5/6 or 7/8, a
constraint length of 7, and the connection vectors G1 = 1111001
b
(171 octal) and G2 = 1011011
b
(133
octal) without any symbol inversion. The puncturing and output sequences are defined in [CCSDS-
131.0-B-1]. The encoder also supports rate 1/2 unpunctured coding with aforementioned connection
vectors and no symbol inversion.
x
8
x
7
x
6
x
5
x
4
x
3
x
2
x
1
data in data out
initialise to all zero
Figure 84. Pseudo-randomiser
x
6
x
5
x
4
x
3
x
2
x
1
data in data out
1
2
G1
G2
data out G1
data out G2
Figure 85. Unpuctured convolutional encoder