Vous êtes sur la page 1sur 6

Etalement de spectre

I) Prsentation
Principe: On mlange le message avec un code qui a des proprits intressantes ( + modulo 2 = ou exclusif ).
Intrts:

* CDMA= multiplexage sur mme frquence en mme temps


* Transmission en milieu bruit ( Cbit/s = WHz log2 [ 1+S/N ] signifie que W
* Cacher un signal dans le bruit

pour S/N

Ralisation:
1) Etalement en mission = OU EXCLUSIF chips du code rapide et bits de donnes plus lents

=> On passe d'un signal troit puissant un signal tal peu puissant
Le rapport entre les niveaux avant et aprs est le gain d'talement SF ( Spread factor )
= rapport des largeurs de bande = combien de chips pour un bit = rapport de dbit.
Exemple: Signal 50 bit/s, code 1,023 Mbit/s

=> SF = 20 460 ( 43,1 dB = 10log[20460] )

2) Dstalement en rception = OU EXCLUSIF chips du code rapide et message reu


L'talement fait un ou exclusif puis le dstalement fait un ou exclusif
Rappel: d c c = d ( si c=0, 2 mmorisations de d,
si c=1, 2 inversions de d )
=> si c'est le mme code C1: on reoit (D C1) C1 = D => dstalement, on retrouve D de l'metteur.
=> si on a 2 codes diffrents ( autre communication ): C1 ct Tx et C2 ct Rx: (D C1) C2 = code alatoire tal.
=> si on reoit du bruit: Le rcepteur fait B C1 = talement du bruit.

Etal C1

=>

Signal d'info d'origine / gain SF

Etal C2

=>

Signal tal / gain 1

Bruit bande troite

=>

Signal tal / gain 1

Bruit large bande

=>

Signal tal / gain 1

Remarque: Histoire de l'talement de spectre: Actrice de cinma Hedi Lamarr fuyant la 2nde guerre mondiale http://www.hedylamarr.org/

CDMA

II) Etalement et dstalement ( cas de systme synchroniss )


!
"

CDMA

II) Utilisation de SBPA pour Synchronisation par code connu: Autocorrlation


Ralisation du code d'talement = SBPA
En thorie on reboucle le ou exclusif de certains bits d'un registre dcalage sur l'entre du registre. Pour avoir la longueur
maximale de squence, les bits du ou exclusif sont
pour registre 4 bits D0D1D2D3: x3 + x2
pour registre 5 bits D0D1D2 D3 D4: x4 + x2
...
pour registre 10 bits D0D1 D2 D3 D4 D5 D6 D7 D8 D9: x9 + x6

...

...

...

=1

...

Remarque: En pratique il faut viter l'tat puit 00...0 d'o les lments ajouts sur le schma suivant

( Si on a un 1, A=0, on a la thorie E=S. Si on n'a que des 0, tat bloquant la thorie, A=1 qui fait que E=1, ce qui introduit un 1 )

Horloge SBPA
Entre

D0

D1

D2

D3

1
1

=1

# $

%
+

&'& & &" (


,

''')

&'& & &"


*

Proprits de la squence
-.
-

'
% *
( / 0
2

6 $

'

"*

3 3

*
'''

2
)

01
)' '

( *
(

2 5
%

( "
8 29

Rc( k ) =

1
N

' ( ,

N 1
n=0

9 ( ') ) )

cn cn + k

9(

9 +

o cn est le chip n de la squence,


N le nombre de chips de la squence.

Rc(k)= 1 ( nb chips identiques nb chips diffrents )


N
0

: ,

CDMA

Exemple du gsm: Training sequence


Du fait de la mobilit, les bursts entre mobile et antenne changent de dlai de transmission. Or pour dcoder le message des 0
et 1, il faut connatre le dbut = Synchro.
En GSM, pour raccourcir les transmissions, on n'utilise pas le fanion => On commence par une synchronisation approximative
sur les fronts des bursts:

Mais il faut tre trs prcis, donc on a incorpor dans les bursts un code CAZAC (Constant Amplitude Zero Autocorrelation )
= squence d'apprentissage ( training, norme GSM 5.02 ) = 26 bits = bit 61 86 du burst normal.
burst normal reu 3T

57 bits data

1S

26 bits training

1S

57 bits data

3T

26 bits training

rfrence de dbut de burst


du rcepteur
Training Sequence
Code ( TSC )
0
1
2
3
4
5
6
7

Training sequence bits


( BN61, BN62 ... BN86 )
(0,0,1,0,0,1,0,1,1,1,0,0,0,0,1,0,0,0,1,0,0,1,0,1,1,1)
(0,0,1,0,1,1,0,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,0,1,1,1)
(0,1,0,0,0,0,1,1,1,0,1,1,1,0,1,0,0,1,0,0,0,0,1,1,1,0)
(0,1,0,0,0,1,1,1,1,0,1,1,0,1,0,0,0,1,0,0,0,1,1,1,1,0)
(0,0,0,1,1,0,1,0,1,1,1,0,0,1,0,0,0,0,0,1,1,0,1,0,1,1)
(0,1,0,0,1,1,1,0,1,0,1,1,0,0,0,0,0,1,0,0,1,1,1,0,1,0)
(1,0,1,0,0,1,1,1,1,1,0,1,1,0,0,0,1,0,1,0,0,1,1,1,1,1)
(1,1,1,0,1,1,1,1,0,0,0,1,0,0,1,0,1,1,1,0,1,1,1,1,0,0)

Le calcul d'autocorrlation est fait sur les 16 bits du milieu ( oublier 5 avant, 5 aprs )
;

'

' 8

0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1
0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1
0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1
0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1

III) Intercorrlation ( crosscorrelation ): Utilisation de code pour Slection d'une communication dans multiplex CDMA:
recherche de code utilis ( code recovery )
Intercorrlation sur les codes GSM prcdents
On reprend le mme calcul mais sur 2 codes diffrents

=> Forte valeur = on a le mme code


=> Faible valeur = on a 2 codes diffrents

Les codes du GSM ne sont pas orthogonaux ( synchronis ou pas ) => pas possible de toujours distinguer les codes.
=> En GSM, avant communication, le rseau indique LE code utiliser, le rcepteur ne peut le trouver.
Idem en wifi, on a une entte en 1 Mbit/s avec code Barker sur 11 bits, puis cette entte indique le contenu de la trame, donc le
codage ( squence de chips : +1 -1 1 1 -1 1 1 1 -1 -1 -1 pour code de Barker )
=> En CDMA, on utilise en mme temps plusieurs codes

=> talement ( SBPA )


=> orthogonalit ( codes orthogonaux ).

UMTS = Tlphone 3G
* Pour diffrencier par intercorrlation les canaux, on utilise des codes par canal. Ils font aussi l'talement ( bits -> chips ).
=> Spreading Code ou Channelization Code ( Walsh ou Hadamard ).
CDMA

Ce sont des codes de longueur variable: Code OVSF (Orthogonal Variable Spreading Factor SF = 4 256 )
Construction des codes orthogonaux: Arborescence

on part de C1,0 = 1
SF=1

donc C2,0 = 11
donc C2,1 = 10
SF=2

de i = 0 SF-1
* Comme ces codes n'ont pas les proprits des SBPA, on ajoute une seconde tape = brouillage par SBPA ( ou exclusif )
=> Code de brouillage ( Scrambling code = Gold ou Kasami, 38400 chips ): 1 Chip -> 1 Chip

<
>

( <
: ,

<)

'
"

<)

< )"

<)

#)

<)

< )"

: ,
: ,
: ,

?
51
5+

: ,

Lien avec le dbit: En ligne, le systme impose un dbit de chips fixe: 3,84 Mchip/s.

4
6

*
")< # @ , A )

46)

*
CDMA

GPS
Le GPS utilise une constellation de 24 satellites utiliss 20200 km d'altitude ( non gostationnaires, orbites circulaires
visualisables http://science.nasa.gov/Realtime/jtrack/3d/Jtrack3d.html ou chercher Jtrack3D sur ce site ).
Chacun met un signal sur une porteuse L1 = 1575,42 MHz. Il utilise l'talement de spectre avec un certain code C/A.
C/A (Course/Acquisition ) ou code standard: SBPA Gold longueur 1023 chips 1.023 MHz => 1023 chips en 1 ms:
Synchro priodicit 300 km, 1ms, accessible tous.
Gnration du code C/A d'un satellite ( SV Space Vehicule ): Chaque satellite a son code C/A:
G1 est le mme pour les 32 satellites possibles.
On change la partie en pointills Phase Taps
de G2 pour chaque satellite:
SV1: Taps 2 et 6
SV2: Taps 3 et 7
SV3: Taps 4 et 8
SV4: Taps 5 et 9
SV5: Taps 1 et 9
SV6: Taps 2 et 10
...

Les donnes NAV sont tales par le C/A de leur


satellite puis module en BPSK sur la porteuse L1:

Les militaires US utilisent le code plus prcis: P ( Precise ): SBPA


Ils utilisent une seconde porteuse L2 1227,6 MHz:

: Synchro prcise

Pour un satellite:

Pour un rcepteur:
Il choisit un code en interne et analyse par corrlation si c'est celui qu'il reoit ( en fait il en essaie plusieurs en // ).
Une fois reconnu le code, il lit l'heure donne par le satellite dans le message NAV.
L'ambigut lie la priodicit de 1 ms <-> 300 km pour un civil est rsolue en analysant le message NAV = Message de
navigation 1500 bits une frquence de 50 Hz => 50 bit/s.

* Soit le rcepteur est l'heure parfaite ( celle des horloges atomiques des satellites )
=> Avec 3 satellites, il fait une triangulation ( mesures des distances pseudo-ranges )
* Soit le rcepteur doit trouver l'heure ou a une horloge avec des drives ( cas rel )
=> Il lui faut 4 satellites.
Imprcisions: ( 1m de prcision = horloge prcise 3,3 ns, erreur de de ms = imprcision de 75 km )
=> itration de calcul.
CDMA