IF input carrier frequency: f = 1.84 MHz
Single internal 6 bit A/D converter
QPSK demodulation
Input symbol frequency: Fs = 1.84 Msymbols/s
Digital Nyquist root filter:
- roll-off value of 0.4
Digital carrier loop:
- on-chip quadrature demodulator and tracking
loop
- lock detector
- C/N indicator
Digital timing recovery:
- internal timing error evaluation, filter and
correction
- Reed-Solomon decoder for 32 parity bytes;
correction of up to 16 byte errors
- Block lengths: 255
- Energy dispersal descrambler
BACK_END INTERFACE:
Broadcast Channel selection
Audio Service Component selection to MPEG
decoder
Service Component selection
CONTROL:
I2C serial Bus control interface
STA002
STARMAN CHANNEL DECO DE R
TQFP44
DECRYPTION:
WES scheme supported
DESCRIPTION
Designed for World Space satellites digital audio
receivers, the STA002 Digital Receiver Front-end
integrates all the blocks needed to demodulate
incoming digital satellite audio signals from the
tuner: analog to digital converter, QPSK demodulator, signal power estimator, automat ic gain control, Viterbi decoder, deinterleaver, Reed-Solomon decoder and energy dispersal descrabler. Its
advanced error correction functions guarantees a
low error rate even with small low gain receiver
antennas.
Additional functions include the selection of
broadcast channel, service components and
audio components for source decoding:
- The MPEG Audio bitstream is provided at the
serial audio output port.
- The Broadcast Channel is provided to the serial
data output port.
- The Service Component is provided at the SC
output interface.
World Space encryption scheme is supported for
pay programs and paging.
January 2002
1/43
Page 2
STA002
Fig. 1: Channel Decoder Block Diagram
LOCK
AGC
RXI
RNXI
M_CLK
A/D
PLL/CLOCK
DISTRIBUTION
MICROPROCESSOR
INTRRESETMINTR
Fig. 2: Pin Connection
QPSK
FRAME
SYNC.
INTERFACE
SCL
TDM_CLK
SDA
TDM
TDM FRAME
CONTROLLER
PRC
MANAGEMENT
BC_CLK
TSCC
MANAGEMENT
VITERBI
BC
MANGEMENT
DE-INTERLEAVER
BC
DATA
INTERFACE
SC
DATA
INTERFACE
SC
SOURCE
DECODER
INTERFACE
REED
SOLOMON
D96AU541C
BCCK
BCDO
BCSYNC
BCDIN
SCEN
SCDO
SCCK
SCK
SDO
SEN
BC/TSCC
2/43
TEST 1
AGC
VDD
A_VDD
RXI
NRXI
A_GND
GND
M_CLK
CLK_TEST
TEST 2
SCEN
VDD
BCDO
BCCK
TEST 8
TEST 9
SCDO
GND
SCCK
VDD
GND
44 43 42 41394038 37 36 35 34
1
2
3
4
5
6
7
8
9
10
12 13 14 15 16
VDD
LOCK
TEST 3
171118 19 20 21 22
SCL
SDA
GND
INTR
GND
VDD
RESET
TEST 4
33
32
31
30
29
28
27
26
25
24
23
TEST 7
BCDIN
BCSYNC
GND
SDO
SCK
SEN
VDD
TEST 6
MINTR
TEST 5
D97AU671A
Page 3
PIN DESCRIPTION
TypePin NameTypeFunctionPAD Description
1, 11, 12TEST (1:3)ITest Pin CMOS Input Pad Buffer with Pull-Down
2223 , 25 , 3 3, 3 4 , 44 TEST
2AGCOAGC OutputCMOS 2mA Output Driver
3, 14, 21,
VDDPositive Supply Voltage
26, 38, 40
4A_VDDAnalog Positive Supply Voltage
5RXIIIF Signal InputAnalog Pad Buffer
6NRXIIIF Signal InputAnalog Pad Buffer
7A_GNDAnalog Ground
9M_CLKIMaster ClockAnalog Pad Buffer with Comparator
10CLK_TESTNot ConnectedCMOS Input Pad Buffer
13LOCKOCarrrier Lock IndicatorCMOS 2mA Output Driver
15SDAI/OData + ACKCMOS Schmitt Trigger Bdir Pad Bufer
16SCLISerial ClockCMOS Input Pad Schmitt Triggered
Note: pin 1, 11, 12 and 22 must be connected to ground in functional mode.
ITest Pin
(4:9)
STA002
THERMAL DATA
SymbolParameterValueUnit
R
th j-amb
Thermal resistance Junction to Ambient85°C/W
ABSOLUTE MAXIMUM RATINGS
SymbolParameterValueUnit
V
DD
V
i
V
O
T
stg
T
oper
Power Supply-0.3 to 4V
Voltage on Input pins-0.3 to VDD +0.3V
Voltage on output pins-0.3 to VDD +0.3V
Storage Temperature-40 to +150°C
Operative ambient temp-20 to +85°C
3/43
Page 4
STA002
ELECTRICAL CHARACTERISTICS:
DD
= 3.3V ±0.3V; T
V
amb
= 0 to 70°C; Rg = 50Ω unless otherwise
specified
DC OPERATING CONDITIONS
SymbolParameterValue
V
T
GENERAL INTERFACE ELECTRICAL CHARACTER IST ICS
Power Supply Voltage2.7 to 3.6V
DD
Operating Junction Temperature-20 to 125°C
j
SymbolParameterTest ConditionMin.Typ.Max.UnitNote
I
IL
Low Level Input Current
Vi = 0V-1010
A1
µ
Without pull-up device
I
IH
High Level Input Current
Vi = V
DD
-1010
A1
µ
Without pull-up device
V
esd
The leakage currents are generally very small, < 1nA. The value given here is a maximum that can occur after an electrostatic stress
FUNCTIONAL DESCRIPTION
The STA002 integrates all the functions needed
to demodulate the signal coming from the RF FE;
with reference to the block diagram (Fig 1),
STA002 includes the following functions:
Microprocessor interface
Data transmission from microcontroller to the de-
vice takes place through the 2 wires (SDA and
SCL) I2C bus interface. STA002 acts always as a
slave in all its communications.
Interface to the Front-end
This block receives from the RF front-end the
QPSK modulated signal, centered at 1.84 MHz
(2nd IF frequency). This signal is over sampled
using the Master Clock and converted to digital
on 6 bits in 2’s complement format. The same frequency is also used to provide the clock signal for
the QPSK demodulator block.
QPSK
This block is composed by:
- AGC1
- quadrature demodulator
- carrier recovery
- timing recovery
- frequency sweep generator
- AGC2
- lock indicator
- carrier to noise estimator
To assure flexibility and to cover different working
conditions most of the parameters of each function can be programmed through the I2C interface.
TDM Demultiplexer
The TDM frame is divided into 3 fields.
The first is the Master Frame Preamble (MFP)
which contains the synchronisation word. The
second, the Time Slot Control Channel (TSCC),
contains information about the or ganiz ation of the
Prime Rate Channel data which follows. The
third, is the data field; it contains 96 Prime Rate
Channels of 16 Kbit/s each; up to 8 Prime Rate
Channels are grouped into one Broadcast Channel.
The TDM demultiplexer executes the extraction
and decoding of one Broadcast Channel from the
TDM stream, according to the instructions coming from the microcontroller. The decoding flow is
the following:
- TDM synchronization
The master frame synchronization block receives
the demodulated symbol stream from the QPSK
demodulator and performs the alignment detecting the Master Frame Preamble.
The known syncronization word is also used to
correct the phase ambiguity intrinsic in QPSK demodulation.
- TSCC extraction
The information of the Prime Rate Channels to
Broadcast Channels allocation are contained in
the TSCC field which is synchronised with the
MFP.
In this stage all the information related to the
TSCC are extracted and made available for the
microcontroller via the I2C interface.
- PRC extraction and BC recovery
This block, after the Broadcast Channel (BC) se-
lection, performs the extrac tion and synchronisation of the Prime Rate Channels (PRC) belonging
to the selected BC.
The extracted PRCs are aligned and grouped into
one BC data stream.
- FEC decoder
The extracted BC is decoded using a concate-
nated Forward Error Correction approach.
The FEC circuitry utilizes three error correction
stages: a rate 1/2 Viterbi decoder, a 255x4 bytes
convolutional deinterleaver and a 255/223 Reed
Solomon decoder.
The RS input blocks are 255 bytes long with 32
parity bytes.
Up to 16 errored bytes can be fixed in each RS
block.
BC demultiplexer
Every BC contains up to 8 Service Components;
the Service Control Header (SCH) field contains
all the information related to the organization of
the Service Components. This stage provides the
extraction of the SCH from the BC.
The SCH is available through I2C bus to the microcontroller for the selection of the desired Audio
Service Component, which is then supplied directly to the MPEG Source decoder via the audio
Service Component Interface.
DEVICE OPERATION
2
1. I
C BUS SPECIFICATION
The STA002 supports the I2C protocol. This protocol defines any device that sends data on to the
bus as a transmitter and any device that reads
the data as a receiver. The device that controls
the data transfer is known as the master and the
others as the slave. The master will always initiate the transfer and will provide the serial clock
6/43
Page 7
STA002
for synchronisation. The STA002 is always a
slave device in all its communications.
COMMUNICATION PROTOCOL
1. 1
1.1.0 Data transition or change
Data changes on the SDA line must only occur
when the SCL clock is low. SDA transitions while
the clock is high are used to identify START or
STOP condition.
1.1.1 Start condition
START is identified by a high to low t ransition of
the data bus SDA signal while the clock signal
SCL is stable in the high state. A START condition must precede any command for data transfer.
1.1.2 Stop condition
STOP is identified by low to high transition of the
data bus SDA signal while the clock signal SCL is
stable in the high state. A STOP condition terminates communications between STA002 and the
bus master.
1.1.3 Acknowledge bit
An acknowledge bit is used to indicate a success-
ful data transfer. The bus transmitter, either master or slave, will r elease the SDA bus aft er sending 8 bits of data.
During the 9th clock pulse the receiver pulls the
SDA bus low to acknowledge the receipt of 8 bits
of data.
Some registers do not give acknowledge when
the data is not available.
(RW; set to 1 in read mode and to 0 in write
mode). After a START condition the STA002
identifies on the bus the device address and if
matching it will acknowledges the identification on
SDA bus during the 9th bit time.
The following 2 bytes after t he device identification byte are the internal space address.
1.3 WRITE OPERATION (see fig. 5)
Following a START condition the master sends a
device select code with the RW bit set to 0.
The STA002 gives the acknowledge and waits for
the 2 bytes of internal address. The least significant 10 bits of t he 2 bytes address provides access to any of the internal registers. The most
significant bit means incremental mode (1 =
autoincremental, 0 = no) and the other bits are
set to zero.
After the receiption of each of the internal bytes
address the STA002 again responds with an acknowledge.
1.3.1 Byte write
In the byte write mode the master sends one data
byte and this is acknowledged by STA002. The
master then terminates the transfer by generating
a STOP condition.
1.3.2 Multibyte write
The multibyte write mode can start from any inter-
nal address. The master sends the data and each
one is acknowledged by t he STA002. The transfer is terminated by the master generating a
STOP condition.
1.1.4 Data input
During the data input the STA002 samples the
SDA signal on the rising edge of the clock SCL.
For correct device operation the SDA signal has
to be stable during the rising edge of the clock
and the data can change only when the SCL line
is low.
1.2 DEVICE ADDRESSING
To start communication between the master and
the STA002, the master must initiate with a start
condition. Following this the master sends onto
the SDA line 8 bits (MSB first) corresponding to
the device select address and read or write
mode.
The 7 most significant bits are the device address
identifier, corresponding to the I2C bus definition.
For the STA002 these are fixed as 1101010.
The 8th bit (LSB) is the read or write operation bit
1.4 READ OPERATION (see Fig. 6)
1.4.1 Current byte address read
The STA002 has an internal byte address
counter. Each time a byte is written or read, this
counter, according to the autoincremental bit setting, is incremented or not.
For the current byte address read mode, following a START condition the master sends the device address with the RW bit set to 1. The
STA002 acknowledges this and outputs the byte
addressed by the internal byte address counter.
The counter is then incremented or not depending on the autoincremental bit. The master does
not acknowledge the received byte, but terminates the transfer with a STOP condition.
1.4.2 Random byte address read
A dummy write is performed to load the byte ad-
dress into the internal address register.
7/43
Page 8
STA002
Fig. 5: Write Mode Sequence
BYTE
WRITE
MULTIBYT
WRITE
START
START
DEV
DEV
ACK
RW
ACK
RW
BYTE
BYTE
ACK
ACK
Fig. 6: Read Mode Sequence
CURRENT
ADDRESS
READ
RANDOM
ADDRESS
READ
SEQUENTIAL
CURRENT
READ
SEQUENTIAL
RANDOM
READ
START
START
START
START
ACK
DEV
RW
ACK
DEV
RW
RW=
ACK
HIGH
DEV
ACK
DEV
RW
DATA
BYTE
DATA
BYTE
NO ACK
ACK
ACK
ACK
STOP
ACK
BYTE
DATA
ACK
BYTE
This is followed by another START condition from
the master and the device address repeated with
the RW bit set to 1. The STA002 acknowledges
this and outputs the byte addressed by the internal byte address counter.
The master does not acknowledge the received
byte, but terminates the transfer with a STOP
condition.
BYTE
BYTE
STARTRW
STARTRW
ACK
ACK
DEV
DEV
DATA IN
DATA IN
ACK
ACK
ACK
DATA
DATA
DATA
ACK
ACK
NO ACK
NO ACK
ACK
STOP
STOP
STOP
DATA IN
D97AU669
ACKNO ACK
DATA
D97AU670
1.4.3 Sequential address read
This mode can be initiated with either a current
address read or a random address read. However in this case the master does acknowledge
the data byte output and the STA002 continues to
output the next byte in sequence.
To terminate the stream of bytes the master does
not acknowledge the last received byte, but terminates the transfer with a STOP condition.
The output data stream is from consecutive byte
addresses, with the internal byte address counter
automatically incremented after each byte output.
3BFH959TSCW 96 (15:8)R
3C0H960TSCW ID (7:0)R
3C1H961TSCW ID (15:8)R
2. IF INTERFACE
The Master Clock (M_CLK) is the source of all
the STA002 internal timings.
the VCO.
The PLL output frequency F
2
C interface according to the PLL_INT_REG.
I
M_CLK is internally divided to drive the A/D converter and to provide the clock signal for the
QPSK block.
The IF input signal, center ed at 1. 84MHz, is over-
ck
sampled at a frequency F
of M_CLK/4 or
M_CLK/2 according to STA002 presettings.
2.1 PLL
This fully integrated PLL includes the phase/fre-
quency detector, the charge pump, the f ilter and
14/43
Reg. name: PLL_INT_REG
Internal address: 21E H
Reset Value : 00H
Type: R/W
MSBLSB
XXb5b4b3b2b1b0
Description: PLL and INTR pin control register
ck
can be selected via
Page 15
b1b0PLL output clock (ADC input)
0
0
1
1
b5b4INTR pin control
0
0
1
1
0
M_CLK (pin 9)
1
2XM_CLK (pin9)
0
Test purpose
1
Test purpose
Normal function (from ERROR_REG)
0
BC_LOCK signal on INTR pin
1
MFP_LOCK signal on INTR pin
0
PRCP_ALL_LOCK on INTR pin
1
b3, b2: Test purpose
2.2 A/D CONVERTER
This block performs the analog to digital conver-
sion of the incoming IF input signal.
The ADC has a resolution of 6 bit and is based
on the so called Half Flash architecture to reduce
both area and power consumption.
The sampling rate depends on the M_CLK (Master Clock) frequency and on the PLL presetting.
3. QPSK DEMODULATOR
3.1 QUADRATURE DEMODULATOR
The final base-band demodulation is performed in
this block.
The samples of the IF input signal are multiplied
by the sine and cosine functions to get the two inphase (I) and quadrature (Q) components of the
QPSK signal. The phase ambiguity inherent in
QPSK is solved in the frame synchronisation part.
A programmable bit allows to multiply by -1 the
quadrature component in order to accomodate
QPSK modulation with another convention of rotation sense (this is equivalent to a permutation of
I and Q components).
The sine and cosine functions are generated by
an NCO using a phase accumulator and a lookup table.
3.2. INTERPOLATOR NYQUIST FILTER
The I and Q components are filtered by a digital
Nyquist root filter with the following features:
Separate I and Q stream, Fck/Fsym samples per
symbols;
Raised root cosine shape with roll-off factor of
40%;
Separate I and Q output stream, 1 sample per
symbol.
This filter performs both the Nyquist filter function
(matched with the one in the transmission side)
and the interpolation function to compute the optimum output sample.
STA002
3.3. TIMING RECOVERY
The timing loop is completely implemented digi-
tally and comprises the timing det ector working at
symbol rate, a loop filt er, the t iming NCO and the
Nyquist/interpolator filters.
The loop is controlled by two parameters, alpha_tmg and beta_tmg contained in the
TIMFLTPAR register.
3.3.1 Timing loop registers
Timing loop filter parameter register
(TIMFLTPAR)
Internal address: 8D H
Reset Value: 48H
MSBLSB
b7b6b5b4b3b2b1b0
alpha_tmgbeta_tmg
Timing frequency registers (TIMINTG)
Internal address: 8E H
Reset Value: 0AH
MSBLSB
b7b6b5b4b3b2b1b0
signed number
The value of this register, when the system is
locked, is an image of the frequency offset.
Timing NCO frequency setting (SYMFREQ)
Internal address: 8C H 8B H 8A H
Reset Value : 0CH 11H D3H
MSBLSB
b23b22b21b20b19b18b17b16
SYMFR EQ3
MSBLSB
b15b14b13b12b11b10b9b8
SYMFR EQ2
MSBLSB
b7b6b5b4b3b2b1b0
SYMFR EQ1
This register is divided into three bytes. The LSB
byte is named SYMFREQ1, the MSB is named
SYMFREQ3.
15/43
Page 16
STA002
The 22 bits value to be written into this register is
given by:
Phase Detector Gain
SYMFREQ = INT
sym
F
22
2
ck
F
for example if
M_CLK = 39,02687179MHz, Fck = M_CLK/4
SYMFREQ = 790995 = (C11D3)HEX
which is the Reset Value.
3.3.2 Loop equations
This timing loop is a second order one. The natural frequency and the damping factor may be calculated by the following formulas:
Ko KD
√
=
f
n
m
β ⋅
2
π
where β is programmed by the timing register
beta_tmg:
b = 2
beta_tmg-14
⋅ Fsym (Fsym = 1.84MHz)
where m is the reference value of the AGC2 loop
D
(see AGC2_REF register), K
is the timing detec-
tor gain and Ko is the constant of the timing NCO:
2
π
K
F
=
o
ck
22
2
The damping factor is:
ξ =
α
√
2
K
o KD
β
m
⋅
where α is programmed by the timing register alpha_tmg:
alpha_tmg
α = 2
beta_tmg can only take value from 0 to 15; if
beta_tmg is 0 the loop reduces to a first order
one.
Alpha_tmg can take any value from 0 to 7. If both
alpha_tmg and beta_tmg are 0 then the timing
loop is open.
The timing phase detector gain K
depends on
D
the signal to noise ratio and is given in the following figure:
(see par. 3.8 for the C/N definition)
= 0.356 for a noise free input signal.
K
D
The natural frequency and the damping factor
can be rewritten as:
K
D
D
⋅ 2
⋅
D97AU724
beta_tmg
alpha_tmg
2
(Kd)
0.3
0.2
0.1
0
0510C/N(dB)
√
F
CK
F
CK
√
m
⋅
m ⋅ K
√
beta_tmg
2
ξ =
f
= 2.064
n
0.0577
√
Table 1 gives the natural frequency and the
damping factor for the nominal amplitude m = 22,
D
= 0.356 and M_CLK = 39.02687179MHz.
K
D
In high noise co nditi ons the valu e of K
may be
reduced up to 25% of its nominal (noise free)
value ; it is recomme nded t o sta rt with a d amping
factor, calculated without noise, greater than the
usual value of 0.7.
3.4. CARRIER RECOVERY
Also the carrier recovery is completely imple-
mented digitally and comprises a phase and frequency detector, a loop filter, a NCO and a
sine/cosine look-up table.
The carrier NCO is the local oscillator for the input quadrature demodulator.
(CARFLTPAR)
Internal address: 8F H
Reset Value: 57H
MSBLSB
b7b6b5b4b3b2b1b0
alpha_carbeta_car
16/43
Page 17
STA002
TABLE 1. Timing loop parameters (m= 22; K
beta_tmg012345678910
fn(Hz)N A25365172102144204288408577
alpha_tmg
NA
0
NA
1
NA
2
NA
3
NA
4
NA
5
NA
6
NA
7
NA
0.71
1.42
2.85
5.70
11.4
22.8
45.6
= 0.356; M_CLK = 39.02687179MHz)
D
NA
0.50
1.01
2.01
4.03
8.06
16.1
32.2
0.36
0.71
1.42
2.85
5.70
11.4
22.8
Carrier frequency registers (CARINTG)
Internal address: 94 H
Reset Value: 00H
MSBLSB
b7b6b5b4b3b2b1b0
signed number
This register is formed by the 8 integrator MSBs
of the carrier loop filter.
The value of this register, when the system is
locked, is an image of the frequency offset.
It may be read or written at any time by the micro.
When written the integrator LSBs are reset.
Damping factor
NA
NA
0.25
0.50
1.01
2.01
4.03
8.06
16.1
NA
0.18
0.36
0.71
1.42
2.85
5.70
11.4
NA
0.13
0.25
0.50
1.01
2.01
4.03
8.06
NA
0.09
0.18
0.36
0.71
1.42
2.85
5.70
NA
0.06
0.13
0.25
0.50
1.01
2.01
4.02
The 26 bits value to be written into this register is
given by:
IFFREQ = INT
IF
26
2
F
ck
For example if M_CLK = 39.02687179MHz,
Fck = M_CLK/4
IFFREQ = 12655927 = (C11D37)
which is the Reset Value.
Actual Carrier Frequency Register (CARFREQ)
Internal address: 96 H, 97 H, 98 H
NA
0.04
0.09
0.18
0.36
0.71
1.42
2.85
NA
0.03
0.06
0.13
0.25
0.50
1.01
2.01
HEX
Carrier NCO frequency setting register (IFFREQ)
Internal address: 93 H 92 H 91 H 90 H
Reset Value : 00H C1H 1DH 37H
MSBLSB
b31b30b29b28b27b26b25b24
IFFREQ4
MSBLSB
b23b22b21b20b19b18b17b16
IFFREQ3
MSBLSB
b15b14b13b12b11b10b9b8
IFFREQ2
MSBLSB
b7b6b5b4b3b2b1b0
IFFREQ1
This register is divided into four bytes.
The LSB byte is named IFFREQ1, the MSB is
named IFFRE Q4 .
MSBLSB
b23b22b21b20b19b18b17b16
CAR FREQ 3
MSBLSB
b15b14b13b12b11b10b9b8
CAR FREQ 2
MSBLSB
b7b6b5b4b3b2b1b0
CAR FREQ 1
This register contains the actual carrier frequency
value when the system is locked.
It is divided into 3 registers: CARFREQ3, down to
1 (CARFREQ3 is the MSB).
This register may be read at any time and it is
useful to store the value of t he recovered carrier.
If the system unlocks (due, to a lack of signal
etc.) the carrier NCO could be initialized with this
value to speed-up the tracking process.
3.4.2 Loop parameters
Like the timing loop the carrier loop is a second
17/43
Page 18
STA002
TABLE 2. Carrier loop parameters (m = 22; K
beta_car012345678910
fn(KHz)
alpha_carDamping factor
NA0.380.540.771.091.542.173.074.356.158.69
NA
0
NA
1
NA
2
NA
3
NA
4
NA
5
NA
0.67
1.34
2.69
5.37
10.7
= 1.26; M_CLK = 39.02687179MHz)
D
NA
0.47
0.95
1.90
3.80
7.60
0.34
0.67
1.34
2.69
5.37
order system controlled by two parameters, alpha-car and beta-car, contained in the
CARFLTPAR register.
The natural frequency and the damping factor are
given in the following formulas:
K
m K
β
o
=
f
√
n
D
2
π
where β is programmed by the carrier register
beta_car:
β
= 2
beta_car-4
Fsym (Fsym = 1.84MHz)
⋅
m is the reference value of the AGC2 loop (see
AGC2_REF register), K
D
is the phase detector
gain and Ko is the constant of the carrier NCO:
NA
NA
0.24
0.47
0.95
1.90
3.80
Phase Detector Gain
(Kd)
1.2
1
0.8
0.6
0
NA
0.17
0.34
0.67
1.34
2.69
NA
0.12
0.24
0.47
0.95
1.90
0510C/N(dB)
NA
0.08
0.17
0.34
0.67
1.34
NA
0.06
0.12
0.24
0.47
0.95
NA
0.04
0.08
0.17
0.34
0.67
D97AU725
NA
0.03
0.06
0.12
0.24
0.47
2
π
K
=
F
o
CK
26
2
The damping factor is
α
mK
√
o KD
β
ξ =
2
where α is programmed by the carrier register alpha_car:
alpha_car+6
α = 2
beta_car can only take value from 0 to 15; if
beta_car is 0 the loop becames a first order one.
alpha_car can take any value from 0 to 9. If both
alpha_car and beta_car are 0 then the loop is
open.
D
depends on the signal to noise ratio and is
K
given in the figure in next column.
(see par. 3.8 for C/N definition)
D
= 1.26 for a noise free input signal.
K
The natural frequency and the damping factor
can be rewritten as:
f
n
16.515
=
√
√
m
F
CK
K
⋅
D
2
⋅
beta_car
m
⋅ K
ξ =
0.0289
√
F
CK
alpha_car
2
√
beta_car
2
D
Table 2 gives the natural frequency and the
damping factor for the nominal amplitude m = 22,
D
= 1.26 and M_CLK = 39.02687179MHz.
K
In presence of noise the value of K
D
may be reduced of up to 60%; it is recommended to start
with a damping fac tor, without noise, greater than
the usual value of 0.7.
3.4.3 Phase and frequency detector parameter
The carrier phase error is calculated by the following formula : ε = I sgn(Q) - Q sgn(I).
This value is computed (at symbol rate) if the actual I and Q components are greater than a programmed threshold otherwise the previous value
is mantained. In this way the det ector outputs a
DC value proportional to the frequency off set between the incoming signal and the local oscillator.
The threshold value may be programmed by the
PFDTHR parameter inside the QPSK_CONTROL2 register:
18/43
Page 19
STA002
QPSK_CONTROL2 Register
Internal address: 81 H
Reset Value: 90H
MSBLSB
b7b6b5b4b3b2b1b0
PFDTHRCNTHRSN
The threshold value dep ends on the signal level
at the Nyquist filter out put. A good value for this
parameter is given by: PFDTHR = 0.4 AGC2REF
where AGC2REF is the reference value for the
AGC2 loop.
3.4.4 Internal ramp parameter
In presence of a frequency offset greater than the
pull-in range of the carrier loop or in presence of
low signal to noise ratio t he tracking perform ance
of the loop itself may became rather slow. To
help the loop in tracking this frequency offset an
internal ramp can be activated by I
2
C bus.
This ramp can be switched on or off by setting
the SWON parameter 1 or 0 respectively. When
SWON=0 the output value of the ramp is null.
The sweep rate can be calculated by the f ollowing formula:
dF
dt
=
stepper
swstep
2
2
F
ck
26
1
+
2
where swstep can only take 0 and 1 values and
stepper can be programm ed in a range from 0 to 15.
MSBLSB
XXb5b4b3b2b1b0
b5 : SWON; 1 = 2 ramp on; 0 = 2 ramp off
b4 : SWS T EP
b3 - b0 : STEPPER
Ramp control register (RAMPCTRL)
Internal address: 95 H
Reset Value: 01H
AGC1
3.5.
3.5.1 AGC1 control
To avoid a degradation of the signal to noise r atio
a constant IF level is necessary at the channel
decoder input.
The AGC1 outputs a signal to control the Variable
Gain Amplifier in the RF Front-End in order to
mantain a fixed level at the ADC input.
The input signal power (computed after the A/D
conversion) is compared to a programmable
threshold; the difference is scaled by the
AGC1BETA coefficient then integrated.
The result is converted into a pulse width modulation signal to drive the AGC output pin; it may be
filtered by a simple RC filter to control the gain
command of a variable gain amplifier before the
A to D conversion.
The 8 integrator MSB’s (AGC1_ INTG register)
may be read or written at any time by the micro;
when written, the LSB’s are reset.
The integrator value is the level of the AGC output, after low pass filt ering; it gives an image of
the input signal power. The sign of the loop can
be controlled by the AGC1CHS control bit in the
QPSK_CONTROL1 register in order to adapt the
loop to a positive or negative slope of the variable
gain amplifier.
3.5.2 Registers
AGC1 reference level register (AGC1_REF)
Internal address: 83 H 82H
Reset Value : 01H 06H
MSBLSB
XXXXXXb9b8
AGC1_REF2
MSBLSB
b7b6b5b4b3b2b1b0
AGC1_REF1
This register is divided into two bytes. The LSB
byte is named AGC1_REF1, the MSB is named
AGC1_REF2.
The reset value of this register (262) maintains
the peak signal input level equal to the half range
of the ADC.
AGC1 integrator gain register (AGC1_BETA)
Internal address: 84 H
Reset Value: 00H
MSBLSB
XXXXXb2b1b0
AGC1_BETA
The AGC1 loop gain
AGC1
b
β
AGC1
AGC1_BETA
= 2
is given by:
The parameter AGC1_BETA can only take values
from 0 to 5. When AGC1_BETA is set to "111"
the loop gain is null. This condition is useful to
open the AGC1 loop.
19/43
Page 20
STA002
AGC1 integrator value register (AGC1_INTG)
Internal address: 85 H
Reset Value: 00H
MSBLSB
b7b6b5b4b3b2b1b0
signed number
To open the AGC1 loop this register must be reset and the AGC1_BETA parameter must be
"111".
3.6. AGC2
3.6.1 AGC2 control
The AGC2 loop is used at the output of the
Nyquist / interpolator filter for power optimization
in the signal bandwith.
The modulus of the complex signal a t the output
of the Nyquist filter is compared to a programmable threshold and then scaled by the
AGC2_BETA coefficient and integrated.
The integrated error drives two multiplier at the
output of both t he Nyquist filters in order to mantain constant the level signal at the demodulator
output.
3.6.2 Register
AGC2 reference level register (AGC2_REF)
Internal address: 86 H
Reset Value : 16 H
MSBLSB
XXb5b4b3b2b1b0
AGC2_REF
The value written in this register corresponds to
the modulud of the output complex signal (I,Q).
AGC2 integrator gain register (AGC2_BETA)
Internal address: 87 H
Reset Value: 00H
MSBLSB
XXXXXb2b1b0
AGC2_BETA
The AGC2 loop gain
can be controlled by
β
AGC2
this register:
AGC2
β
AGC2_BETA
= 2
The parameter AGC2_BETA can take values
from 0 to 6. When AGC2_BETA is set to "111"
the loop gain is null and the AGC2 ampli fier gain
keeps the last value.
AGC2 integrator value register (AGC2_INTG)
Internal address: 88 H
Reset Value: 00H
MSBLSB
b7b6b5b4b3b2b1b0
signed number
To open the AGC2 loop this register must be reset and the AGC2_BETA parameter must be
"111".
The AGC2 reference level value impacts the
value of the following functions:
- Carrier to Noise indicator;
- The carrier loop;
- The timing loop
3.7. LOCK INDICATOR
This 1 bit carrier lock flag may be read at any
time.
This flag is available at the c hip output and can
be also read by the micro in the FLAG register
A low logic level at t he Lock Indicator m eans that
a QPSK signal is found.The lock indicator flag
controls , internally, the ramp block. The sweep
function is disable whenever a lock condition is
detected.
3.8. CARRIER TO NOISE INDICATOR
A register is used to estimate the carrier t o noise
level C/N in a range from 4 to 17dB.
Remark: in the WorldStar system the correspon-
dence between C/N, Eb/No (Energy per net-bit to
noise ratio) and Eb/No|
(Energy per channel-
QPSK
bit to noise ratio) are the following:
C/N = Eb/No|
+ 3dB = Eb/No - 0.6dB
QPSK
The C/N indicator may be used to optimize the
antenna pointing or to give an idea of t he RF sigal quality. This is based on the measure of the
scattering of the QPSK constellation: a 10 bit
counter is incremented when the scattering is exceeding a certain value. After a programmable
time interval the 8MSB of t he counter are loaded
in the corresponding I
2
C-bus register.
The register value strongly depends on the
AGC2_REF parameter.
3.8.1 C/N Register (CNCNT)
This register contains a value proportional to the
signal to noise ratio at the Nyquist filter output
QPSK
(Eb/No|
).
20/43
Page 21
TABLE 3. Correspondence between C/N and the CNCNT register contents.
C/N(dB) Eb/No|QPSKCNTHR = 8CNTHR = 12CNTHR = 16
m = AGC2_ REF162226162226162226
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
The value are the average of 1000 readings of the CNCNT register.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
161
155
148
140
132
122
113
105
92
84
71
65
58
49
42
34
32
30
121
112
102
91
79
68
55
46
33
26
20
14
9
5
3.4
2.4
1.5
0.9
101
93
84
73
61
50
38
28
20
13
8
6
3.2
1.6
0.9
0.5
0.25
0.07
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
177
173
168
161
155
148
141
134
125
118
112
103
93
84
77
70
66
61
151
145
138
130
120
110
100
89
79
67
57
51
40
32
27
23
19
13
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
The relation between C/N and the r equired value
(CNCNT) is given in the table 3 for three AGC2
reference levels. A value of 255 means overflow.
3.8.2 Control Register
There are two parameters to control the C/N esti-
mator circuit CNTHR and SN located in the
QPSK _CONTROL 2 register.
The CNTHR parameter (2 bits) sets the threshold
value under which the circuit is activated.
The SN parameter (2bits) sets the m easure time
internal.
Both there two parameters are given in the following tables:
CNTHRTHRESHOLD
00
01
10
11
SNTIME INTERVAL IN SYMBOLS
00
01
10
11
8
12
16
NA
1024
4096
16384
65536
A suitable value of the threshold and time interval must be chosen to have a good level of confidence of the C/N estimate.
To increase the measure accuracy is advisable to
average several values.
Before starting the measure the CNCNT register
must be reset and can be read after the selected
time internal.
A flag bit (CNFLAG) is set to 1 to indicate that a
value is available in the CNCNT register.
3.9 CONTROL REGISTERS
QPSK_CONTROL1 register
Internal address: 80 H
Reset Value: 10H
MSBLSB
X b6b5b4b3X X X
b6 : AGC1CHS
b5 : CAR CHS
b4 :TIMCHS
b3 : QCHP
AGC1CHS changes the polarity of the AGC sig-
nal at output pin.
CARCHS and TIMCHS change the sign of the
carrier tracking loop and symbol tracking loop respectively.
QCHS inverts the sign of the Q component.
QPSK_CONTROL2 register
Internal address: 81 H
Reset Value: 90H
MSBLSB
b7b6b5b4b3b2b1b0
PFDTHRCNTHRSN
21/43
Page 22
STA002
This register controls the Phase and frequency
detector threshold (see par. 3.4.3) and the C/N
indicator (see 3.8.2)
FLAG REGISTER
internal address: 99 H
LOCK CNFLAG
reserved
This is a read only register when the LOCK bit is
0 then the car rier is locked. When the CNFLAG
bit is 1 then the C/N estimation is available.
Description: Control register
b0 : Software reset on
b1 : Software reset enable
b2 : Set TDM out of frame
b3 : ERROR_REG reset on read enable
b4 : Set PRC out of frame
b5 : Set BC out of frame
b6, b7: Test purpose
Description: Interrupt register
b0 : SCCF interrupt on
b1 : Max Delay Alarm on
24/43
Page 25
STA002
b2 : Illegal Address on
b3 : TDM out of frame on
b4 : RS block error on
b5 : SCH interrupt on
b6 : Test purpose
Reg name: STATUS REG
Internal address: 20EH
Type: R
Reset Value: 00H
MSBLSB
XXb5b4b3b2b1b0
Description: Status register:
b0 : TSCC available
b1 : BC lock
b2 : SCH available
b3 : PRC lock
b4 : MFP lock
b5 : SCCF available
tency.
The number of wrong bits is accumulated into a
register according to a given time base expressed in number of bits and, assuming that the
BER at the output of the Viterbi decoder is negligible with respect to the input BER, this count can
be read by the system micro controller to evaluate the signal quality after QPSK demodulation.
The error rate measurement is programmable
throught the VITERBI_ERROR_CONTROL register and the error rate is available in the registers:
ERROR
ERROR 2
1
- VIT_
- VIT_
Reg name: VITERBI_ERROR_CONTROL
Internal address: 204 H
Type: R/W
Reset Value: 00H
MSBLSB
X X X X b3b2b1b0
Description: Viterbi input errors measurement
windows length and error mode presetting.
5. VITERBI DE CODER AND SY NCHR ONIZ ATION
A Viterbi decoder has been implemented in the
STA002 in order to extract the most probable
transmitted sequence using a trace back procedure.
This Viterbi decoder has been realized using 64bit trace back depth and the soft decision approach on the six-bit I and Q components coming
from the QPSK demodulator.
The convolutive codes are generated by the polynomials Gx = 171
and Gy = 133
oct
oct
.
The Viterbi decoder computes for each symbol
the metrics of the four possible paths, proportional to the square of t he Euclidian distance between the recived I and Q and the theoretical
symbol value.
Four logical RAM banks (implemented with eight
RAM blocks of 32x64 bits) have been used for
the path memory.
The decoding latency is 256 bits.
A bit error (BER) estimator has been integrated in
the Viterbi block.
Corrected data bits at Viterbi out put are encoded
according to the t ransmission convolutional code
so that a "good" stream is obtained. These data
are compared with the data stream coming fr om
the QPSK demodulator after having stored it into
a memory buffer to compensate the Viterbi la-
6. REED SOLOMON DECODER
The STA 002 performs a real time block decoding
operation both on the Time Slot Control Channel
(TSCC) field and on the Broadcast Channel (BC)
stream by means of a programmable Reed-Solomon (RS) decoder.
This decoder works on blocks of 255 words of 8
bit symbols where the first 223 words represent
the information and the last 32 the code redundancy.
The synchrobyte is the first byte of the block.
All the correction capability of the code is used so
it is possible the correction of blocks containing
up to 16 errors while blocks with greater number
of errors are flagged as corrupted.
The RS decoder is programmable to support two
different Galois field generat or polynomials as required by WorldSpace specifications and includes
an integrated BER estimator.
Monitoring the number of wrong words in each
block and correlating this number with the block
length, it is possible, provided that no corrupted
blocks are present, to get an estimation of the
signal quality at the Viterbi decoder output.
6.1 TSCC REED SOLOMON DECODER
The code generator polynomial is:
MSBLSB
X X X X b3b2b1b0
Description: Reed Solomon input errors measurement windows length and error mode presettings
Reg name: BRI_REG & NSC_REG
Internal address: 000H
Type: R
MSBLSB
b7b6b5b4b3b2b1b0
Description:
b7 to b4 indicate the bit rate of the BC
(BRI field in the SCH)
0000: no valid data
0001: 16Kbps
..............................
1000 : 128Kbps
1001 - 1111: RFU
b3 = 0
b2 to b0 indicate the number of service compo-
nents (NSC field in the SCH)
000: one Service Component
001: two Service Component
...............................................
111: eight Service Component
Reg name: EC_REG
Internal address: 001H
Type: R
MSBLSB
b7b6b5b4b3b2b1b0
Reg name: AFCI1_REG
Internal address: 002H
Type: R
MSBLSB
b7b6b5b4b3b2b1b0
Description :
b7 to b5 = 000
b4 to b0 indicate the Auxiliary field content indica-
tor 1 (ACI1l field in the SCH)
00000: not used
00001: 16 bit encryption key selector
00010: RDS PI code
00011: Associated Broadcast Channel reference
(PS flag and ASP)
else: RFU
Reg name: AFCI2_REG
Internal address: 003H
Type: R
MSBLSB
b7b6b5b4b3b2b1b0
Description:
b7 : 0
b6 to b0 indicate the Auxiliary field content indica-
tor 2 (ACI2 field in the SCH)
00000: not used
00001:64 bit encryption key selector
00010: Service Label
else: RFU
Description:
b7 to b4 = 0000
b3 to b0 indicate the encryption strategy (Encryp-
tion Control field in the SCH)
0000: no encryption
0001: static Key
0010: ESI, common key, subscription period A
0100: ESI, broadcast channel specific key for
subscription period A
0101: ESI, broadcast channel specific key for
subscription period B
else: RFU
Reg name: SOF_SF_REG
Internal address: 0041H
Type: R
MSBLSB
b7b6b5b4b3b2b1b0
Description:
b7 to b5 = 000
b4 indicate the ADF2 multiframe start flag (SF
field in the SCH)
1: first segment of multiframe or no multiframe
0: intermediate segment of multiframe
b3 to b0 indicate the segment offset and lenght
field (SFT field in the SCH) if SF = 1 SOLF contains the total number of multiframe segments minus 1.
27/43
Page 28
STA002
0000: one segment multiframe
0001: two segment multiframe
.................................................
1111: 16 segment multiframe
if SF = 0 SOLF contains the segment offset.
Reg name: ADF1_REG
Internal address: 006H, 005H
Type: R
ADF1 (15:8) ( addr 006H)
MSBLSB
b15b14b13b12b11b10b9b8
ADF1 (7:0) ( addr 005H)
MSBLSB
b7b6b5b4b3b2b1b0
Description:
b15 to A0 contain the Auxiliary data field1 (ADF1
field in the SCH) with content defined by
AFCI1_REG)
03B, 03A, 039, 038,
Type: W
PIW_RAM (63:56) (addr 03F)
MSBLSB
b63b62b61b60b59b58b57b56
PIW_RAM (55:48) (addr 03E)
MSBLSB
b55b54b53b52b51b50b49b48
PIW_RAM (47:40) (addr 03D)
MSBLSB
b47b46b45b44b43b42b41b40
PIW_RAM (39:32) (addr 03C)
MSBLSB
b39b38b37b36b35b34b33b32
Reg name: EM_REG
Internal address: 018H
Type: R/W
MSBLSB
b7b6b5b4b3b2b1b0
Description :
Encryption mode register
b7 to b1 = not used RFU
b0 indicate the encryption mode (1)
1: normal encryption mode
0: enable blocking
(1) for more information refer to document
number WST-WSG-DDS-003-500000
Chipset Encryption Impleme ntation S pecifica tion
for World space receiver
SCH_MEM REGISTERS
Service Component Control Field (SCCF)
Reg name: SERVICE COMPONENT 1
Internal address: 100H, 101H, 102H, 103H
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC1_LENGHT & SC1_TYPE (addr 100H)
MSBLSB
b31b30b29b28b27b26b25b24
SC1_EC & SC1_PT (addr 101H)
MSBLSB
b23b22b21b20b19b18b17b16
SC1_PT (addr 102H)
MSBLSB
b15b14b13b12b11b10b9b8
b7 to b0 = SC language
Reg name: SERVICE COMPONENT 2
Internal address: 104H, 105H, 106H, 107H
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC2 _LENGHT & SC2_TYPE(addr 104H)
MSBLSB
b31b30b29b28b27b26b25b24
SC2 _EC & SC2_PT (addr 105H)
MSBLSB
b23b22b21b20b19b18b17b16
SC2_PT (addr 106H)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE 1 (addr 103H)
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100:JPEG
0101: MPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
LANGUAGE 2 (addr 107H)
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100:JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
b7 to b0 = SC language
31/43
Page 32
STA002
Reg name: SERVICE COMPONENT 3
Internal address: 108H, 109H, 10AH, 10BH
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC3_LENGHT & SC3_TYPE (addr 108H)
MSBLSB
b31b30b29b28b27b26b25b24
SC3 _EC & SC3_PT(addr 109H)
MSBLSB
b23b22b21b20b19b18b17b16
SC3_PT (addr 10AH)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE 3 (addr 10BH)
Reg name: SERVICE COMPONENT 4
Internal address: 10CH, 10DH, 10EH, 10FH
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC4_LENGHT & SC3_TYPE (addr 10CH)
MSBLSB
b31b30b29b28b27b26b25b24
SC4_EC & SC3_PT (addr 10DH)
MSBLSB
b23b22b21b20b19b18b17b16
SC4 _PT(addr 10EH)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE 4 (addr 10FH)
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100:JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
b7 to b0 = SC language
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100: JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
b7 to b0 = SC language
32/43
Page 33
STA002
Reg name: SERVICE COMPONENT 5
Internal address: 110H, 111H, 112H, 113H
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC5 _LENGHT & SC5_TYPE(addr 110H)
MSBLSB
b31b30b29b28b27b26b25b24
SC5_EC & SC5_PT(addr 111H)
MSBLSB
b23b22b21b20b19b18b17b16
SC5_PT (addr 112H)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE 5(addr 113H)
Reg name: SERVICE COMPONENT 6
Internal address: 114H, 115H, 116H, 117H
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC6 _LENGHT & SC6_TYPE(addr 114H)
MSBLSB
b31b30b29b28b27b26b25b24
SC6 _EC & SC6_PT(addr 115H)
MSBLSB
b23b22b21b20b19b18b17b16
SC6_PT (addr 116H)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE6 (addr 117H)
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
000: 8 kbps
001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100: JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
b7 to b0 = SC language
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100: JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
7 to b0 = SC language
33/43
Page 34
STA002
Reg name: SERVICE COMPONENT 7
Internal address: 118H, 119H, 11AH, 11BH
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC7_LENGHT & SC7_TYPE (addr 118H)
MSBLSB
b31b30b29b28b27b26b25b24
SC7 _EC & SC7_PT(addr 119H)
MSBLSB
b23b22b21b20b19b18b17b16
SC7_PT (addr 11AH)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE7 (addr 11BH)
Reg name: SERVICE COMPONENT 8
Internal address: 11CH, 11DH, 11EH, 11FH
Type: R
Description :
Contains information about the service compo-
nent of the broadcast channel
SC8 _LENGHT & SC38_TYPE(addr 11CH)
MSBLSB
b31b30b29b28b27b26b25b24
SC8 _EC & SC8_PT(addr 11DH)
MSBLSB
b23b22b21b20b19b18b17b16
SC8 _PT (addr 11EH)
MSBLSB
b15b14b13b12b11b10b9b8
LANGUAGE8 (addr 11FH)
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100: JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
b7 to b0 = SC language
MSBLSB
b7b6b5b4b3b2b1b0
b31 to b28 = SC length Bit rate of the service
component divided by 8 kbps:
0000: 8 kbps
0001: 16 kbps
...............
1111: 128 kbps
b27 to b24 = SC type
Type of service component:
0000: MPEG
0001: general data
0100: JPEG
0101: Low bit rate video
1111: invalid data
else: RFU
b23 = Encryption flag
0: not encrypted SC
1: encrypted SC
b22 to b8 = Program type
b7 to b0 = SC language
34/43
Page 35
STA002
8. GENERAL INFORMATION
8.1 DECRIPTION
The STA002 supports a crypto-scheme named
WES (World Space Encrypton Scheme)
It is composed of two functional blocks:
- CSG (Crypto Sequence Generator)
implemented in the STA002 decoder
- IWG (Initialization Word Generator) processed
by external hardware such as a microcontroller
or a smart card.
The CSG module produces the pseudo-casual
sequence by an algorithm based on the galois arrithmetic.
This algorithm is derived in 2 phases:
1) Key expansion
2) Pseudo casual sequence generation
In the expansion phase activated every frame the
IWG 8 bytes key is used t o initialize a 16 bytes
array.
The scrambling procedure, invoked every byte,
implements a pseudo random algorithm.
The XOR operation between the output of the
module the encrypted bytes completes the decryption procedure.
The 8 bytes keyword is loaded bef ore the s tart of
the new frame to the I
2
C bus interface.
8.2. BROADCAST CHANNEL INTERFACE
The Broadcast Channel interface consists of 4
wires: output clock (BCCK), output BC data
(BCDO), output BC frame sync. (BCSYNC) and
input BC data (BCDIN).
The data trasmitted and recived via the broadcast
channel interface are 8 bit bursts.
The most significant bit is transmitted first.
Fig.7 shows the broadcast channel serial data out
(BCDO) burst of 8 bit (MSB first). The data bits
are valid at the negative slope of the clock line
(BCCK).
The BCSYNC signal indicates the first byte of the
broadcast channel Service preamble (04H) allowing an easy syncronization to external modules
using the BC data.
The input BC line (BCDI) must have the same
format of the BC output (BCDO). The data bit
must be valid on the negative edge of the output
clock line (BCCK).
The maximum delay allowed from the output data
and the input data is 4 bytes (4 bursts of 8 bits).
The input delay is programmable via I2C bus with
the BCIN_DELAY_REG register (01BH).
8.3 SERVICE COMPONENT INTERFACES
The STA002 provides two service component interfaces which support the same protocol:
- SC DATA INT E R F ACE (SCEN, SCDO , SC CK)
- SOURCE DECODER INTERFACE (SEN, SDO, SCK)
The service component interfaces consists of 3
wires each. Output clock (SCCK/SCK), SC data
(SCDO/SDO) and SC byte sync (SCEN/SEN).
The data transmitted via the service component
interface are 8 bit bursts.
The most significant bit is transmitted first.
As shown in fig.8 the service component serial
data out (SCDO/SDO) combines burst of 8 bit
length (MSB first). The data bit are valid at the
negative edge of the clock line (SCCK/ SCK).
The slope change of the SCEN/SEN indicates the
most significative bit of the 8 bit service component burst.
The SCEN/SEN signal is used if required for the
data bits alignement only.
Fig. 7: Format Of The Broadcast Channel Interface (BC)
BCCK
BCDO
BCSYNC
BCDI
t
clk
76543210765432107654321076543210
ABCD
76543210765432107654321076543210
XYAB
PROGRAMMABLE DELAY FROM BC-OUT DATA
TO BC-IN DATA MAX 4 BYTE
t
clk-off
t
clk-off < 1.2ms
t
clk ~ 6.5µs
D97AU744A
35/43
Page 36
STA002
Fig. 8: Format Of The Service Component Interface
SCCK/SCK
SCDO/SDO
SCEN/SEN
t
clk
76543210765432107654321076543210
ABCD
t
clk-off < 15ms
t
clk ~ 6.5µs
t
clk-off
CHANNEL DECODER INTERFACES BLOCK DIAGRAM
IIC
D97AU745
µP
36/43
RF
FRONT
END
RXI
RNXI
M_CLK
AGC
LOCK
INTERFACE
INTERFACE
SCCK
CHANNEL
DECODER
RF
SCDO
SCEN
SCLSDAINTRRESET
MICRO
INTERFACE
SOURCE
SCK
SDI
DECODER
INTERFACE
BC DATA
SEN
MINTRSC DATA
INTERFACE
BCCK
BCDO BCSYNC
BCDIN
MPEG
DECODER
D96AU547C
Page 37
y
8.4 FRAME SYNCRONIZATION TIMES
FRAME SYNCRONIZATION
STA002
96 SY
MFP
MFP
Tx
MFP DETE CTION
MFP DETECTION
START INTERNAL TIMING
SYNC FOR MFP VERIFICATION
TSCC AVAILABLE
MFP LOCK
MFP LOCK
ALL PRC EXTRACTED LOCK
I2C INTERFACE
BC FRAME SYNC
CASE 1
NORMAL
SP LOCK
SYNC
CASE 2
HW
SP LOCK
SYNC
TSCC
TSCC
READ
Ta
DATA MULTIPLEX
PRE SY N C
DATA READ
TSCC
VITERBI & RS
DECODED
TSCC
AVAILABLE
TDM FRAME 138 ms
DATA MULTIPLEXMFPDATA MULTIPLE X
TSCC
TSCC
MFP
DATA READ
FIELD
VER
DATA FIELD
PRCP DETECTION
BC
SELECTION
DATA FIELDSP
VITERBI & RS & DEINTELEAVER
DATA FIELD DATA FIELD
SP DETECTION
SP DETECTION
MFP
MFP
VER
T
PRC
EXTRACTION
from 1 to8 PRC
CHANNELS
CHANNELS
MULTIPEXING
TSCC
2112 SY MBOLS
TSCC
TSCC
FIELD
PRC
TDM SYNCHRONISATION STATE MACHINE
DATA READ
PRCP
PRC SYNCHRONISATION STATE MACHINE
TDM SYNCHRONISATION STATE MACHINE
DATA MULTIPLEX
251712 SYMBOLS
TSCC
DATA MULTIPLEX
MFPDATA MULTIPLE X
TDM STATE MACHINE
TSCC
MFP
DATA READ
FIELD
VER
PRC FRAME 432 ms
Tdec
MFP
MFP
VER
DATA FIELD
PRE SY NC
PROTECTED BC FRAME 432 ms
DATA FIELD
SCH
SP
TSCCMFPTSCC
SYNC
TSCC
FIELD
MFP
MFP
DATA READ
VER
DECODE D BC FRAM E 432 ms
PRE SY N C
TSCC
FIELD
DATA MULTIPLEX
DATA READ
PRCP
SYNC
SP
MFP
VER
DATA FIELD
SYNC
TSCC
TSCC
FIELD
DATA FIELD
DATA READ
SP
SYNC
Tx = MFP detection time: 0 to 138ms
Ta = TSCC decodification time:= < 2ms
Ty = PRCP detection time: 0 to 432ms
Tdec = VITERBI decoding +
REED SOLOMON error correction +
deinterleaving: ~55ms x PRC number
PRC SYNCRONIZATION TIME
PRC lock = QPSK lock +TDM lock + Ty + 432 ms
BC SYNCRONIZATION TIME
CASE 1 ( SW sy n c):
the BC synchronization FSM asserts the lock sig-
nal when the SP is detected two consecutive
times.
BC lock = QPSK lock + TDM lock + Ty + Tdec +
432 ms
CASE 2 ( HW sync):
the BC synchronization FSM asserts the lock sig-
nal when the BC FRAME SYNC signal is asserted by the PRC alignment FSM and the SP is
valid.
BC lock = QPSK lock + TDM lock + Ty + Tdec
Note :
About the BC synchronisation, the selection between SW sync and HW syn is achievable
through the register BC_ALARM add 01CH bit
b5.
Bit b5 = 1 indicates the SW sync Bit b5 = 0 indicates HW sync.
37/43
Page 38
p
p
STA002
SCH & SCCF INTERRUPT
20 bit
Tx
SP
DETECTION
SP
DETECTION
SCCF interrupt
SCH interrupt
SCCF avai lable
SCH available
DATA MU LTI PL EX
SCH
SP
PRE SYNC
DATA FIELD
Service Component multiplex
BC FRAME 432 ms
DATA MU LTI PL EX
SP
Service Control Data
SP BRI EC ACI1 ACI2 Nsc ADF1
Tm
DATA MU LTI PL EX
SCH
TDM SYNCHRONISATION STATE MACHINE ( CASE 1)
TDM SYNCHRONISATION STATE MACHINE (CASE 2)
SF SOLF
Tm = SCCF/ SCH not available setup ~ 32 ms
Tsch = SCH interrupt time ~ 1 3.5 ms
Tsccf = SCCF interrupt time ~
432
7136
⋅ 128 + Nsc ⋅ 32ms
⋅ BRI
SCH
DATA MU LTI PL EXSP
SCHSCH
SP
ADF2
SCCF-1SCCF-8
Tsccf
Tsch
BRI = Bit Rate Index ( from 1 to 8)
Nsc = number of Service Component ( from1 to
8)
Service Com
Control Field
DATA MU LTI PL EX
SCH
SP
SYNC
SYNC
onent
SP
Dynamic Labels
SCH DATA MULTIPLEX
SP
Service Com
reset by SW
SCH
DATA FIELD
onent multiplex
8.5 LOSS OF SYNC TABLE
MPFPRCBCTSCC availableSCH availableSCCF available
TDM Out of Frame
PRC Out of Frame
Information furnished is believed to be accurate and rel i abl e. However, STMicroel ectronics assumes no responsibility for the consequences
of use of such informati on nor for any infringement of patents or other ri ghts of third parties which may result from its use. No license is
granted by im plica tion or otherw ise under any patent or pa tent right s of STMicr oelectronic s. Speci fication mentioned in this publication are
subject to c hange without notice. Thi s publication super sedes and replaces al l i nformation previously suppl ied. STMicroelectronics products
are not authorized for use as critical components in life support devices or systems without express written approval of STMicroelectronics.
The ST logo is a registered trademark of STMicroelectronics
Purchase of I
system, provided that the system conforms to the I
Australia - Brazil - Canada - China - Finland - France - Germany - Hong Kong - India - Israel - Italy - Japan - Malaysia - Malt a - Morocco -
2
C Components of STMicrolec tronics, conveys a license under the Philips I2C Patent Rights to use these components in an I2C