Torna in homepage www.vincenzomanzoni.com
Homepage personale e blog di Vincenzo Manzoni
 
 FAQFAQ   CercaCerca   Cerca con GoogleCerca con Google   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati   Feed AtomFeed
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

[Reti e S.O.] Tecnica Code Division Multiplex

 
Questo forum � chiuso: Non puoi inserire, rispondere o modificare gli argomenti.   Quest'argomento � chiuso: Non puoi inserire, rispondere o modificare i messaggi.    Indice del forum -> Men at work
Precedente :: Successivo  
Autore Messaggio
Andrea
Moderatore
Moderatore


Registrato: 23/12/03 13:10
Messaggi: 5200

MessaggioInviato: Lun Mar 15, 2004 7:50 pm    Oggetto: [Reti e S.O.] Tecnica Code Division Multiplex Rispondi citando

Visto che mi ha incuriosito molto la spiegazione di oggi, ho cercato di capire l'algoritmo del CDM e ho preparato questo: critiche e consigli sono bene accetti!

Questo tipo di multiplazione permette di trasmettere N segnali (s1,s2,s3,...,sN) con banda c in un canale con banda pari a C=c*N.

Il tutto parte dal fatto che il prodotto scalare di due o pi� vettori ortogonali � uguale a 0.

Proviamo a trasmettere sullo stesso canale 4 dati (s1, s2, s3, s4) da 4 bit l'uno , multiplexandoli con tecnica CDM.

s1=[1 1 0 1]
s2=[0 1 0 1]
s3=[0 0 0 1]
s4=[0 0 0 1]


1) Dobbiamo definire 4 parole di chip (una per canale), ortogonali tra di loro. Usiamo allora la regola di Hadamart, da cui otteniamo le quattro righe:

c1=[1 1 1 1]
c2=[1 -1 1 -1]
c3=[1 1 -1 -1]
c4=[1 1 -1 1]


2) L'algoritmo di CDM � un algoritmo sincrono al bit: iniziamo con il primo bit di ogni dato

s1(1)=1 s1(1).*c1=[1 1 1 1]
s2(1)=0 s2(1).*c2=[0 0 0 0]
s3(1)=0 s3(1).*c3=[0 0 0 0]
s4(1)=0 s4(1).*c4=[0 0 0 0]

Sommo tutti vettori ottenuti e ottengo

R(1)=\sum(s_i(1).*c_i)=[1 1 1 1]

Questi saranno i 4 valori trasmessi sulla linea in modo seriale (la linea � 4 volte pi� veloce dei miei messaggi s) al primo ciclo.
continuiamo con il secondo bit di ogni dato

s1(2)=1 s1(2).*c1=[1 1 1 1]
s2(2)=1 s2(2).*c2=[1 -1 1 -1]
s3(2)=0 s3(2).*c3=[0 0 0 0]
s4(2)=0 s4(2).*c4=[0 0 0 0]

Sommo tutti vettori ottenuti e ottengo

R(2)=\sum(s_i(2).*c_i)=[2 0 2 0]

poi il terzo bit

s1(3)=0 s1(3).*c1=[0 0 0 0]
s2(3)=0 s2(3).*c2=[0 0 0 0]
s3(3)=0 s3(3).*c3=[0 0 0 0]
s4(3)=0 s4(3).*c4=[0 0 0 0]

Sommo tutti vettori ottenuti e ottengo

R(3)=\sum(s_i(3).*c_i)=[0 0 0 0]

ed il quarto

s1(4)=1 s1(4).*c1=[1 1 1 1]
s2(4)=1 s2(4).*c2=[1 -1 1 -1]
s3(4)=1 s3(4).*c3=[1 1 -1 -1]
s4(4)=1 s4(4).*c4=[1 -1 -1 1]

Sommo tutti vettori ottenuti e ottengo

R(4)=\sum(s_i(4).*c_i)=[4 0 0 0]


3) Ricezione e decodifica dei chips

Ecco le parole di chip inviate e ricevute dal ricevitore nei 4 cicli

R(1)=\sum(s_i(1).*c_i)=[1 1 1 1]
R(2)=\sum(s_i(2).*c_i)=[2 0 2 0]
R(3)=\sum(s_i(3).*c_i)=[0 0 0 0]
R(4)=\sum(s_i(4).*c_i)=[4 0 0 0]

Per andare a decodificare le parole, baster� moltiplicarle scalarmente per la proiezione ortogonale dei vettori.

Decodifichiamo R(1). Ci aspettiamo:

s1(1)=1 ? R(1).*((c1)/|c1|)=[1 1 1 1].*[1 1 1 1]/4= 1 OK!
s2(1)=0 ? R(1).*((c2)/|c2|)=[1 1 1 1].*[1 -1 1 -1]/4= 0 OK!
s3(1)=0 ? R(1).*((c3)/|c3|)=[1 1 1 1].*[1 1 -1 -1]/4= 0 OK!
s4(1)=0 ? R(1).*((c4)/|c4|)=[1 1 1 1].*[1 -1 -1 1]/4= 0 OK!

Decodifichiamo R(2). Ci aspettiamo:

s1(2)=1 ? R(2).*((c1)/|c1|)=[2 0 2 0].*[1 1 1 1]/4= 1 OK!
s2(2)=1 ? R(2).*((c2)/|c2|)=[2 0 2 0].*[1 -1 1 -1]/4= 1 OK!
s3(2)=0 ? R(2).*((c3)/|c3|)=[2 0 2 0].*[1 1 -1 -1]/4= 0 OK!
s4(2)=0 ? R(2).*((c4)/|c4|)=[2 0 2 0].*[1 -1 -1 1]/4= 0 OK!

Decodifichiamo R(3). Ci aspettiamo:

s1(3)=0 ? R(3).*((c1)/|c1|)=[0 0 0 0].*[1 1 1 1]/4= 0 OK!
s2(3)=0 ? R(3).*((c2)/|c2|)=[0 0 0 0].*[1 -1 1 -1]/4= 0 OK!
s3(3)=0 ? R(3).*((c3)/|c3|)=[0 0 0 0].*[1 1 -1 -1]/4= 0 OK!
s4(3)=0 ? R(3).*((c4)/|c4|)=[0 0 0 0].*[1 -1 -1 1]/4= 0 OK!

Decodifichiamo R(4). Ci aspettiamo:

s1(4)=1 ? R(4).*((c1)/|c1|)=[4 0 0 0].*[1 1 1 1]/4= 1 OK!
s2(4)=1 ? R(4).*((c2)/|c2|)=[4 0 0 0].*[1 -1 1 -1]/4= 1 OK!
s3(4)=1 ? R(4).*((c3)/|c3|)=[4 0 0 0].*[1 1 -1 -1]/4= 1 OK!
s4(4)=1 ? R(4).*((c4)/|c4|)=[4 0 0 0].*[1 -1 -1 1]/4= 1 OK!

Chiaramente la cosa imporantante � osservare che il canale non solo deve essere in grado di trasmettere ad una velocit� N volte superiore a quella di ciascuno dei N canali codificati, ma deve anche essere in grado di saper trasmettere e ricevere valori da 0 a N (in questo caso magari 4 livelli di tensione diversi).


L'ultima modifica di Andrea il Lun Mar 15, 2004 9:50 pm, modificato 1 volta
Top
Profilo Invia messaggio privato MSN 
vinz
Amministratore
Amministratore


Registrato: 12/12/03 12:56
Messaggi: 6648
Residenza: San Pellegrino Terme (Bergamo)

MessaggioInviato: Lun Mar 15, 2004 8:07 pm    Oggetto: Rispondi citando

Bravo Andrea! Cool

Me lo stampo e me lo guardo per bene...
Intanto pubblico il pdf che mi hai mandato: sempre per quanto riguarda il CDM, andate senza passare dal via, a pag. 25.

http://www.vincenzomanzoni.com/pdf/Fisico_DataLink.pdf (~1 MByte)
_________________
Let the future tell the truth and evaluate each one according to his work and accomplishments. The present is theirs; the future, for which I really worked, is mine.
Nikola Tesla
Top
Profilo Invia messaggio privato HomePage  
Andrea
Moderatore
Moderatore


Registrato: 23/12/03 13:10
Messaggi: 5200

MessaggioInviato: Lun Mar 15, 2004 8:16 pm    Oggetto: Dimenticavo Rispondi citando

Problemi di Spread Spectrum? Ecco la soluzione...



Ed ecco il perch�: ecco a voi la Diva Hedy Lamarr (ad averla all'universit� una cos�! Wink vabb�, a me basta gi� la Divina!)
Top
Profilo Invia messaggio privato MSN 
Endless
Utente adulto
Utente adulto


Registrato: 23/12/03 18:06
Messaggi: 2905
Residenza: Bergamo (provincia)

MessaggioInviato: Lun Mar 15, 2004 9:53 pm    Oggetto: Rispondi citando

bella trattazione Andrea, non ho capito molto la parte iniziale dove hai usato al regola di Hadamart Rolling Eyes (forse perch� era la prima volta oggi che la vedevo in vita mia!), magari la stampo anche io e domani mi dai qualche delucidazione..! Wink
Bellissimo il .pdf e interessante collegamento con la Lamarr, peraltro donna di grande fascino! L'unica macchiolina del tuo intervento � la credibilit� dell'autore dell'articolo,mi sa tanto di Mago ?don?Asimiento? (mi scuso per aver scritto come si legge ma dopo tutto faccio solo il secondo anno di ingegneria..! Very Happy )

DATE UN'OCCHIATA ALLE DATE:
Federico Peiretti ha scritto:
Lamarr � scomparsa il 18 gennaio del 2000, poche settimane dopo aver festeggiato il suo ottantaseiesimo compleanno, il 9 novembre 1999.

Federico Peiretti
LA STAMPA, 25/03/98
Shocked Shocked Shocked Confused Rolling Eyes Wink
_________________

Training autogeno: in caso di stress, eseguite il movimento in figura e ripetete:
"Amo il mio lavoro! Amo il mio lavoro! Amo il mio lavoro!"
Top
Profilo Invia messaggio privato Invia e-mail HomePage MSN 
ICQ
Endless
Utente adulto
Utente adulto


Registrato: 23/12/03 18:06
Messaggi: 2905
Residenza: Bergamo (provincia)

MessaggioInviato: Lun Mar 15, 2004 10:07 pm    Oggetto: Rispondi citando

Endless ha scritto:
bella trattazione Andrea, non ho capito molto la parte iniziale dove hai usato al regola di Hadamart
Come non "scritto"! L'ho riletto (il tuo appunto intendo, Andrea) e l'ho capito! Adesso dormir� sonni pi� quieti.. Cool
_________________

Training autogeno: in caso di stress, eseguite il movimento in figura e ripetete:
"Amo il mio lavoro! Amo il mio lavoro! Amo il mio lavoro!"
Top
Profilo Invia messaggio privato Invia e-mail HomePage MSN 
ICQ
Andrea
Moderatore
Moderatore


Registrato: 23/12/03 13:10
Messaggi: 5200

MessaggioInviato: Lun Mar 15, 2004 10:14 pm    Oggetto: Rispondi citando

Endless ha scritto:
EVENTO! L'ho riletto (il tuo appunto intendo, Andrea)


E' una regola ricorsiva per creare N vettori ortogonali tra loro. Io ho usato N=4, ma in realt� se usano molti di pi�, in modo tale da creare un rumore pi� simile al rumore di fondo.

Sarebbe molto bello fare la trasformata di Fourier su un segnale puro e poi vedere come diventa in spread spectrum...
Top
Profilo Invia messaggio privato MSN 
Omino Na
Utente maturo
Utente maturo


Registrato: 27/12/03 12:27
Messaggi: 1321
Residenza: Seriate (BG)

MessaggioInviato: Lun Mar 15, 2004 11:28 pm    Oggetto: Rispondi citando

Andrea ha scritto:
E' una regola ricorsiva per creare N vettori ortogonali tra loro. Io ho usato N=4


Premetto che non ho letto tutto il post precedenteme (troooooppo ingegneristico!! Very Happy Very Happy ), ma visto che mi avevi chiesto degli ortogonali: stai parlando dell'ortogonalizzazione di Gram-Schmidt, vero?
_________________
"Se un matematico e un fisico riescono a mettersi d'accordo su una cosa � molto ma molto probabile che questa sia vera." (Wiso, da it.scienza.matematica)
Top
Profilo Invia messaggio privato HomePage  
vinz
Amministratore
Amministratore


Registrato: 12/12/03 12:56
Messaggi: 6648
Residenza: San Pellegrino Terme (Bergamo)

MessaggioInviato: Lun Mar 15, 2004 11:30 pm    Oggetto: Rispondi citando

Endless ha scritto:
DATE UN'OCCHIATA ALLE DATE

Mi ero accorto anche io... Shocked
Probabilmente il pezzo riguardo alla morte � stato scritto dopo il 1998... o almeno spero! Rolling Eyes
_________________
Let the future tell the truth and evaluate each one according to his work and accomplishments. The present is theirs; the future, for which I really worked, is mine.
Nikola Tesla
Top
Profilo Invia messaggio privato HomePage  
Andrea
Moderatore
Moderatore


Registrato: 23/12/03 13:10
Messaggi: 5200

MessaggioInviato: Lun Mar 15, 2004 11:58 pm    Oggetto: Aggiungendo... Rispondi citando

Volevo aggiungere che nella realt� non si fanno tutti questi conti... semplicemente (direct spread spectrum signal) si mette una trama di chip in XOR con i dati da trasmettere.

Niente ortogonalizzazioni (non so chi sono i tipi che hai detto... Rolling Eyes )!
Top
Profilo Invia messaggio privato MSN 
Omino Na
Utente maturo
Utente maturo


Registrato: 27/12/03 12:27
Messaggi: 1321
Residenza: Seriate (BG)

MessaggioInviato: Mar Mar 16, 2004 12:26 am    Oggetto: Re: Aggiungendo... Rispondi citando

Andrea ha scritto:
Niente ortogonalizzazioni (non so chi sono i tipi che hai detto... Rolling Eyes )!

Ah, ok... scusa! Wink
_________________
"Se un matematico e un fisico riescono a mettersi d'accordo su una cosa � molto ma molto probabile che questa sia vera." (Wiso, da it.scienza.matematica)
Top
Profilo Invia messaggio privato HomePage  
Mostra prima i messaggi di:   
Questo forum � chiuso: Non puoi inserire, rispondere o modificare gli argomenti.   Quest'argomento � chiuso: Non puoi inserire, rispondere o modificare i messaggi.    Indice del forum -> Men at work Tutti i fusi orari sono GMT 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi


Powered by phpBB © 2001, 2005 phpBB Group
phpbb.it