ArPhy: Difference between revisions

From ciapini
Jump to navigation Jump to search
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
''physical layer (OSI/1) per canali di comunicazione disperati''
[[Category:Telecom]]
''physical layer (OSI/1+2) per canali di comunicazione disperati''
 
http://nebbia.esiliati.org/repos/cesco/armando/armando.X/phy/arphy/


arPhy si occupa di:
arPhy si occupa di:
* line coding
* line coding
* symbol sync
* symbol sync
* [[#Framing]]
* [[#Framing|framing]]
* modulation
* modulation
* [[#FEC]]
* [[#FEC|FEC]]
* [[#Interleaver]]
* [[#Interleaver]]


Line 15: Line 18:


== Framing ==
== Framing ==
http://nebbia.esiliati.org/repos/cesco/armando/armando.X/modem/preamble.c


Il preambolo di un frame arphy e' un [[Wikipedia:Barker code]] con N=13, ossia {1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1}.
Il preambolo di un frame arphy e' un [[Wikipedia:Barker code]] con N=13, ossia {1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1}.


== FEC ==
== FEC ==
 
le opzioni sono:
algoritmo di FEC: [[Hadamard code]]
* nessun FEC
 
* [http://pub.svn.esiliati.org/repos/ciapini/armando/armando.X/phy/arphy/arphy_fec.c Hadamard code]: la dimensione del blocco di uscita del FEC e' di 2^input-1, e' non-ottimale per ''k'' maggiore di 7 [http://www.math.unl.edu/~djaffe2/papers/sevens.html].
la dimensione del blocco di uscita del FEC e' di 2^input-1
 
il grado di ridondanza del FEC puo essere scelto a seconda della dimensione del blocco di input:
* k = 4bit -> 8 bit
* k = 8bit -> 128 bit
 
applicato a una PDU di 32bit:
 
* k = 4, 8*4 -> 8*8 -> 64bit
* k = 8, 4*8 -> 128*8 -> 1024bit
 
''forse ha senso considerare dei block codes diversi da quello di Hadamrd, che e' non-ottimale per ''k'' maggiore di 7 [http://www.math.unl.edu/~djaffe2/papers/sevens.html].''


letture:
letture:
Line 42: Line 35:


== Interleaver ==
== Interleaver ==
http://pub.svn.esiliati.org/repos/ciapini/armando/armando.X/phy/arphy/arphy_interleaver.c


i possibili problemi 'descrivibili' del path di trasmissione sono:
i possibili problemi 'descrivibili' del path di trasmissione sono:
Line 56: Line 51:


che comportano la perdita di piu simboli contigui o la perdita sistematica di un determinato simbolo.
che comportano la perdita di piu simboli contigui o la perdita sistematica di un determinato simbolo.
per mitigare questi problemi puo essere conveniente una qualche forma di interleaving sia nel dominio del tempo che in quello del codice.
<source lang="C">
uint16_t arphy_index_interleave(uint16_t in, uint8_t x, uint8_t y) {
    uint16_t out;
    out = in * (x + 1);
    out = out % (x * y);
    return out;
}
uint16_t arphy_index_deinterleave(uint16_t in, uint8_t x, uint8_t y) {
    uint16_t out;
    out = in + (in * x);
    out = out % (x * y);
    return out;
}
</source>


i parametri rilevanti  da passare all'interleaver sono:
i parametri rilevanti  da passare all'interleaver sono:

Latest revision as of 18:28, 10 April 2017

physical layer (OSI/1+2) per canali di comunicazione disperati

http://nebbia.esiliati.org/repos/cesco/armando/armando.X/phy/arphy/

arPhy si occupa di:

caratteristiche:

  • input PDU: 32 bit
  • modulation alphabet sizes: 2,4,16
  • baud rate: 0.5,1,5,10,50,100,500,1000 bps

Framing

http://nebbia.esiliati.org/repos/cesco/armando/armando.X/modem/preamble.c

Il preambolo di un frame arphy e' un Wikipedia:Barker code con N=13, ossia {1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1}.

FEC

le opzioni sono:

  • nessun FEC
  • Hadamard code: la dimensione del blocco di uscita del FEC e' di 2^input-1, e' non-ottimale per k maggiore di 7 [1].

letture:

Interleaver

http://pub.svn.esiliati.org/repos/ciapini/armando/armando.X/phy/arphy/arphy_interleaver.c

i possibili problemi 'descrivibili' del path di trasmissione sono:

problemi di spettro:

  • interferenze coerenti (toni sovrapposti a uno dei nostri bin)
  • errori della risposta in frequenza (equalizzazione..)

entrambi comportano il danneggamiento sistematico di una o piu determinate lettere dell'alfabeto in ogni simbolo

problemi nella sequenza di simboli:

  • disturbo impulsivo prolungato su tutto lo spettro
  • disturbo impulsivo ciclico su tutto lo spettro

che comportano la perdita di piu simboli contigui o la perdita sistematica di un determinato simbolo.

i parametri rilevanti da passare all'interleaver sono:

  • dimensione della costellazione
  • numero di simboli per interleaver block

Letture:

Soft-Decision

nella catena di demodulazione si possono ottenere diversi indici di affidabilita

  • rapporto tra il tono di picco e la media degli altri toni
  • valore del picco carattere nella trasformata di hadamard

Controllo di Flusso

Start Block

indica l'inizio di una trasmissione. precede sempre un #Header Block.

questo riferimento deve avere autocorrelazione tendente a zero, essere abbastanza lungo (raro) da evitare false partenze, abbastanza corto da non creare overhead. viene usato per la sincronizzazione di simbolo e per l'equalizzazione.

letture: