Approfondimento su DS/SS (Direct Sequence Spread Spectrum) Daniel Cesarini 21 febbraio 2009 Questo documento è rilasciato sotto licenza Creative Commons - documento e licenza reperibili al sito http://www.danielcesarini.eu Questo documento è stato scritto con LYX - http://www.lyx.org/ - un editor WYSIWYM (What You See Is What You Mean) per TEX 1 INDICE 2 Questo documento è rilasciato sotto licenza Creative Commons - documento e licenza reperibili al sito http://www.danielcesarini.eu Indice 1 DS/SS Direct Sequence Spread Spectrum Lo spettro del segnale 1.2 Spreading 1.3 Code-Sync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4 Caratteristiche del segnale spread . . . . . . . . . . . . . . . . . . 4 1.5 2 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Interferenze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5.1 Interferenze a banda stretta (NB Narrow-Band) . . . . . . 4 1.5.2 Disturbo di un SS con un SS 4 . . . . . . . . . . . . . . . . 5 Code Division Multiplexing 2.1.1 4 . . . . . . . . . . . . . . . . . . . . . . . . Multiplexing 2.1 3 3 1.1 Codici ortogonali . . . . . . . . . . . . . . . . . . . . . 5 . . . . . . . . . . . . . . . . . . . . . . 6 Flexible Bit-Rate con il CDMA 6 3.1 7 Orthogonal Variable Spreading Code . . . . . . . . . . . . . . . . Spread Spectrum a banda limitata 4.1 Filtro a radice di coseno rialzato 4.2 Frequency Reuse Pattern 8 . . . . . . . . . . . . . . . . . . 8 . . . . . . . . . . . . . . . . . . . . . . 8 5 Scrambling 9 6 Confronto tra TDMA e CDMA 9 1 DS/SS DIRECT SEQUENCE SPREAD SPECTRUM 1 3 DS/SS Direct Sequence Spread Spectrum I segnali spread-sprectrum possono essere generati col codice di spreading, che è binario, digitale, con un certo clock. Il clock è risultante sarà M M volte quello dei dati, la banda volte la banda del clock (dei dati). Il codice di spreading è un sengale pseudo-casuale, cioè ha le caratteristiche di un segnale casuale, ma è riproducibile; l'importante è che sembri casuale a un osservatore esterno. Lo 1 Spread Spectrum nasce come tecnologia militare, per comunicazioni sicure . I satelliti del sistema GPS 2 inviano due segnali spread-spectrum, uno sicuro e uno insicuro; quello sicuro si ripete ogni settimana ed è accessibile solo agli utenti autorizzati, che per farlo sono muniti del codice necessario alla decodica del segnale. 1.1 Lo spettro del segnale Lo spettro del segnale a banda stretta convenzionale è alto e stretto, al contrario, quello SS è ampio e basso. Per ricevere il segnale SS è necessario avere un decodicatore che usi il codice. Per decodicare il segnale si moltiplica per il codice di spreading (la moltiplicazione corrisponde a fare lo XOR). 1.2 Spreading Spreading : y(t) = Despreading 3 : s(t) ∗ c(t) | con c(t) codice di spreading z(t) = [s(t) ∗ c(t) + w(t)] ∗ c(t) = s(t) ∗ c(t) ∗ c(t) + w(t) ∗ c(t) = s(t) ∗ c2 (t) + w0 (t) = s(t) + w0 (t) Quello che segue è ciò che si fa normalmente: ltro adattato + latch. 1.3 Code-Sync Il codice di spreading in arrivo ha un certo riferimento temporale che non è noto al ricevitore. Se c(t) con cui si moltiplica sul ricevitore non è allineato temporalmente, la decodica (despreading) non avviene correttamente. Allora il ricevitore ha anche il compito di sincronizzare i due segnali; ciò viene fatto in un modulo, il code-sync. 1 La chiave veniva spedita tramite 2 Global Positioning System 3 c(t) = ±1sempre ⇒ c2 (t) = 1 corriere (spia?), memorizzata su un nastro magnetico. 1 DS/SS DIRECT SEQUENCE SPREAD SPECTRUM 1.4 4 Caratteristiche del segnale spread Le prestazioni di un segnale SS e di un segnale a banda stretta convenzionale sono uguali. Le operazioni di spreading e despreading sono trasparenti e non alterano la qualità del mezzo. L'introduzione dello SS aveva ni militari, per le sue caratteristiche di sicurezza, perchè oltre a essere dicile da decifrare risulta dicile da disturbare. Tutte le organizzazioni militari scandiscono le frequenza per vedere se ci sono jamming : si mette un trasmettiroe sulle stesse frequenze della comunicazione da comunicazioni non autorizzate. Per disturbare queste trasmissioni si usa il disturbare e si manda una grande potenza. 1.5 Interferenze 1.5.1 Interferenze a banda stretta (NB Narrow-Band) Un interferente a banda stretta può cercare di disturbare il segnale SS; il disturbo z(t) = [s(t) ∗ c(t) + w(t)] ∗ c(t) = s(t) + w0 (t) jammer; moltiplicando per c(t) subisce lo spreading, entra assieme al segnale utile: w(t) è il disturbo del e diventa a banda larga. Quindi di tutta la potenza interferente il ricevitore sente solo una piccola parte: Pi = 1 1/TC ∗ 1 T =p∗ TC T = p M Più il segnale è a banda larga (dopo il despreading), meno è sensibile l'interferenza (Narrow-Band interference rejection ). Per poter mandare un'interferenza prima di tutto bisogna riuscire ad accorgersi che sia in atto una trasmissione; se il fattore di spreading è ampio si abbassa la potenza dello spreading e la banda molto; lo scanner non è più in grado di rilevare la trasmissione perchè la confonde con il rumore di fondo (e con il rumore dello scanner stesso). Tutto questo, però, non spiega da solo perchè lo SS sia alla base della trasmissione UMTS. Questo ha a che fare con la tecnologia di multiplazione dei segnali. 1.5.2 Disturbo di un SS con un SS Se si fa il despreading di un segnale SS con un codice sbagliato si ottiene comunque un segnale a banda larga. L'unico modo per disturbarlo è inviare uno SS che usi lo stesso codice. 2 MULTIPLEXING 2 5 Multiplexing Storicamente le stazioni radio hanno trasmesso in TDMA o in FDMA, anche i 4 programmi televisivi erano trasmessi con queste techiche . Time Division Multiplexing: suddivido gli utenti nel tempo e accelero i dati in ogni slot temporale (si può fare bene con segnali digitali, male con segnali analogici). Tutti i canali si trovano sovrapposti in frequenza. Frequency Division Multiplexing: i canali sono sovrapposti nel tempo e divisi in frequenza. Multiple Access: i segnali vengono generati da terminali diversi in po- sizioni diverse, per cui hanno clock che non sono sincroni. Se i segnali non sono provenienti tutti dalla stessa sorgente, come nel GSM, che implementa gli appositi intervalli di guardia. Multiplexing: tutti i segnali vengono generati nello stesso punto; quindi non ci possono essere collisioni perchè i segnali sono gestiti tutti da una singola unità. Vedremo successivamente come si fa multiplexing e multiple access, nel caso di segnali SS. 2.1 Code Division Multiplexing Si hanno n ussi; i ussi si trasmettono sulla stessa portante e nello stesso n segnali SS con n tempo. Prima di metterli insieme si construiscono diversi. I segnali possono essere separati solo utilizzando una chiave, cioè il codici codice SS corrispondente; questi codici sono detti anche rme o signature. Nel TDMA e FDMA slot temporali e portanti non devono essere sovrapposti. Nel CDM c'è una condizione simile. Supponiamo che il segnale multiplato sia la sovrapposizione di due SS: s(t) = s1 (t) ∗ c1 (t) + s2 (t) ∗ c2 (t) Supponiamo di voler estrarre s1 (t); bisogna trattare s2 (t) ∗ c2 (t) come se fosse un interferente. (1) (2) s(t) = a0 ∗ c(t) + a0 ∗ c2 (t) (1) (2) [a ∗ c1 (t) + a0 ∗ c2 (t)] ∗ c1 (t)dt = ´ T (2) ´0T 0(1) 2 [a0 ∗ c1 (t)]dt + 0 [a0 ∗ c1 (t) ∗ c2 (t)]dt = 0 ´ T (1) (2) T ∗a0 +a0 ∗ 0 [c1 (t)∗c2 (t)]dt il secondo termine è un termine di interferen- Al clock 0 ´T za. Per eliminarla l'integrale deve essere nullo; è una condizione di ortogonalità 4 Attenzione: TDMA e FDMA sono diversi da TDM e FDM 3 FLEXIBLE BIT-RATE CON IL CDMA 6 tra i due codici di spreading (codici ortogonali). Ciò è quello che viene fatto nell'UMTS in downlink. UMTS è stato ispirato a CDMA usato in alcune nazioni per le comunicazioni cellulari di seconda generazione. 2.1.1 Codici ortogonali I codici ortogonali vengono generati in maniera ricorsiva dalla matrice: 1 H2 = 1 1 1 1 −1 H4 = 1 1 1 −1 1 −1 1 1 −1 −1 2 codici di 2 chip ciascuno 1 −1 −1 1 4 codici di 4 chip ciascuno Per ottenere ulteriori matrici si moltiplica la matrice ottenuta per il valore nella posizione corrispondente: 1 1 1 −1 Matrice originaria per 1 Matrice originaria per 1 Matrice originaria per 1 Matrice originaria per -1 I segnali occupano la stessa banda in frequenza e lo stesso intervallo temporale, ma sono multiplexati in base al codice. Anche in questo caso esiste la dierenza tra CDM e CDMA. il meccanismo appena illutrato è CDM; le funzioni sono ortogonali se sono tutte perfettamente allineate nel tempo. Ciò è possibile quando un'unica unità si occupa di più connessioni. Nella direzione di uplink è molto dicile ottenere un livello di sincronia suf- ciente per utilizzare questa tecnica. Allora quando si parla di CDMA le cose cambiano: i segnali non possono essere più sincronizzati; allora nell'uplink i segnali non possono più essere ortogonali e si ha inevitabilmente l'interferenza da accesso multiplo (MAI) di un telefonino su un altro. È dicile quanticare l'interferenza, ma per il teorema del limite centrale l'interferenza è di tipo gaussiano: I0 = (N − 1) ∗ 3 P 5 (1/TC ) potenza spalmata sulla banda del segnale SS . Flexible Bit-Rate con il CDMA Il segnale SS è molto utile quando si eettua Accesso Multiplo. È facile servire utenti con requisiti di bit-rate diversi. Il chip-rate nelle reti CDMA è uguale per tutti; poi i singoli cellulari possono avere bisogno di un bit-rate variabile. Nella terza generazione la rete è integrata e multimediale: servizio voce, connessioni dati, ecc. Per ciò nella stessa cella possoo coesistere bit-rate diversi. Nella rete di seconda generazione esisteva un bit-rate base (14400) che era il massimo. Per trasmettere un segnale a rate dimezzato si utilizza lo stesso codice 5 I segnali non utili vengono considerati come interferenti a banda larga con la stessa potenza P 3 FLEXIBLE BIT-RATE CON IL CDMA 7 di spreading, ma si trasmette ogni simbolo due volte (simbol repetition ). Questo viene usato nei telefonini CDMA americani di II generazione. L'energia per bit: Eb0 = P ∗ 2T = 2Eb . La nuova energia per bit è doppia (rispetto a quello della trasmissione a rate doppio), quindi il rapporto segnale rumore per ogni bit è maggiore (non il doppio) e forse non è necessario (è potenza sprecata). Allora si riduce l'ampiezza del segnale in modo da mantenere costante l'energia per bit. È ora che si apprezza uno dei vantaggi del CDMA: nel CDMA asincrono c'era una certa interferenza da accesso multiplo (MAI) proporzionale al numero di utenti. P 1/TC ∗ (N − 1) | I0 ≤ IM AX . Quindi, poichè I0 ha un livello di interferenza massimo tollerabile ciò implica che anche N avrà un massimo (limite I0 = sull'uplink). IM AX è ssato in base alla QoS che voglio ottenere e dipende dal servizio che si vuole servire. Voce ⇒ BER Voce ⇒ Video ⇒ IM AX,V oce ⇒ IM AX,V ideo −2 Video (10 > 10−5 ). Ber Video BER Voce> BER Allora IM AX,V ideo < IM AX,V oce . L'interferenza accettabile per la voce è maggiore rispetto all'interferenza accettabile per il video. Bisogna trovare un compromesso tra QoS e numero di utenti serviti per vella. Se la classe di servizio fosse unica potremmo avere utenti a bit-rate pieno (potenza piena) o 2N N utenti a bit-rate dimezzato (potenza dimezzata). In realtà la potenza si può abbassare quando si cambia classe di servizio (da migliore a peggiore), non solo quando si abbassa il bit-rate. In downlink, invece, la lunghezza di un simbolo deve essere uguale alla lunghezza di un codice. La simbol repetition è una interpretazione, in realtà i bit si allungano; questo corrisponde a modicare il fattore di spreading (SF). Si avrebbe la coesistenza di codici da 8 e 16 (ad es.), ma non si sa, a priori, se restano ortogonali; bisogna prepararsi ad avere codici di lunghezza diversa. 3.1 Orthogonal Variable Spreading Code Si prendono i codici di Walsh-Hadamard . La ricorsività si organizza ad albero invece che a matrice: C0 (0) = + C1 (0) = C0 (0) + C0 (0) = ++ C1 (1) = C0 (0) + ¬C0 (0) = +− C2 (0) = + + ++ C2 (1) = + + −− C2 (2) = + − +− C2 (3) = + − −+ Ogni livello dell'albero cresce con le potenza di due e contiene un numero di codici pari alla lunghezza dei codici stessi. Questi codici sono ortogonali sia all'interno di uno stesso livello che tra livelli (layer) diversi, col vincolo che per ogni codice bisogna sceglierne uno che non provenga dallo stesso ramo dell'albero (es. C1 (0) va bene con C2 (2) e non con C2 (1)). Due codici di lunghezza diversa sono ortogonali nella seguente maniera: es. C1 (1) = +− e C3 (3) = + + − − − − ++ 4 SPREAD SPECTRUM A BANDA LIMITATA C1 (1) = C3 (3) = C1 (1) ∗ C3 (3) = 8 + − | + −| + −| + − + + | − −| − −| + + + − | − +| − +| + − I chip sono sempre ortogonali e sono ortogonali (la somma dei segni è zero) sia sul periodo del codice corto, sia sul periodo del codice lungo. 4 Spread Spectrum a banda limitata In una rete commerciale la banda assegnata è sempre limitata. viene realizzata con il Questa cosa pulse-shaping: il segnale viene ltrato, ma non si lavora sul bit, bencì sul chip. Il risultato della moltiplicazione (XOR) tra bit e chip è un segnale digitale, a due livelli, che sporca la banda, perciò va ltrato. 4.1 Filtro a radice di coseno rialzato Nel WCDMA i valori sono α = 0.22, RC = 3.840M c/s, B = 4.6848M Hz , CarrierSpacing = 5M Hz 4.2 Frequency Reuse Pattern In GSM non si possono riutilizzare le stesse portanti in celle adiacenti. All'interno della bnada assegnata al GSM si creano delle sottobande, ogni cella usa un certo numero di sottobande 6 in 6 , si costruiscono cluster di celle, che usano base all'allocazione, stabilita in fase progettuale 5 SCRAMBLING 9 tutte le frequenze disponibili; così le celle adiacenti non usano le stesse frequenze e non si possono dare fastidio. Inoltre le celle che usano le stesse frequenze vengono allontanate, così diminuendo l'interferenza co-canale. Il problema è che con i cluster si riduce la capacità della rete. Nel caso in gura i cluster sono di 1 7 Ctot . Col CDMA non c'è bisogno di creare il pattern del riuso di frequenza; è come 7 celle, per cui la capacità risulta pari a avere un fattore di riuso pari a uno. Questo è possibile perchè l'interferenza è minore, dato che i codici sono tutti quasi ortogonali. I codici sono 64 per ogni cella. 5 Scrambling Problema: se sul conne tra due celle si trovano due telefonini con codici uguali e abbastanza sincronizzati sorge un problema di interferenza (???co-codice???), per risolverlo si procede come prima: oltre ai 64 codici assegno un codice unico per ogni cella, detto codice di 7 Scrambling, con cui viene eseguito lo XOR dopo lo spreading . 6 Confronto tra TDMA e CDMA Considerando il riuso di frequenza con un fattore è pari a S= 1 Q . Nel GSM Q = 9 ⇒ S = 0.11 Q, il throughput del TDMA (indipendentemente da uplink e downlink). Nel CDMA la capacità nel downlink è determinata dalle interferenze provenienti dalle celle adiacenti. Se la cella fosse sola il throughput sarebbe unitario, nel casi reale bisogna tener conto dell'interferenza intracella). C'è un meccanismo di interferenza simile a quello dell'uplink; nel caso peggiore (se si trova tra 3 celle) un telefono riceve interferenza da N + N + (N − 1) canali: 7 lo Scrambling non aumenta la banda del segnale trasmesso, perchè ha lo stesso chip-rate dello Spreading 6 CONFRONTO TRA TDMA E CDMA 10 βN +βN +0 ∗ Eb M i terminali della stessa cella non interferiscono = 10−3 | S = 0.26, cioè più del doppio rispetto I0 = Con H = 63, β = 0.4, BER al TDMA. Questo è il motivo dell'utilizzo del CDMA. Questo documento è rilasciato sotto licenza Creative Commons - documento e licenza reperibili al sito http://www.danielcesarini.eu Indice analitico bit-rate variabile, 6 CDM, 6 CDMA, 6 chip, 6 chip-rate, 6 code-sync, 3 codici ortogonali, 6 fattore di riuso, 9 fattore di spreading, 7 interferente, 4 jamming, 4 MAI, 6 Narrow-Band interference, 4 pulse-shaping, 8 Scrambling, 9 simbol repetition, 7 Spread Spectrum, 3 UMTS, 4 uplink, 6 Walsh-Hadamard, 7 11