Caricare documenti e articoli online 
INFtub.com è un sito progettato per cercare i documenti in vari tipi di file e il caricamento di articoli online.


Meneame
 
Non ricordi la password?  ››  Iscriviti gratis
 

TV SATELLITARE DIGITALE

elettrotecnica



TV SATELLITARE DIGITALE



Un po' di storia



Questo è il primo segnale emesso da un satellite artificiale. Lo Sputnik 1 di proprietà Russa. Venne lanciato il 4 Ottobre 1957 in piena Guerra Fredda per misurare la densità dell'atmosfera e ritrasmetterla a terra sotto codice morse, la sua vita durò poco, terminò il suo funzionamento il 4 Gennaio 1958. Pesava 85 Kg ed aveva le dimensioni di una palla da basket.



In 50 anni c'è stata una grossa evoluzione ora grazie a centinaia di satelliti in orbita possiamo vedere migliaia canali video, parlare, anche in videoconferenza, con persone dall'altra parte dell'oceano, nel caso di una grossa azienda scambiare dati tra le varie filiali sparse nel mondo o conoscere la nostra esatta posizione con i sistemi GPS.


Satellite per telecomunicazioni


I satelliti per le telecomunicazioni sono dei ricetrasmettitori senza filo che orbitano ad una quota di circa 36.000 Km. Sono di tipo geostazionario, cioè rivolgono alla superficie terrestre sempre la stessa faccia come se rispetto alla terra fossero immobili. Vengono usati perché a differenza delle normali antenne è possibile avere un canale con una banda molto larga e perché è possibile trasmettere su una zona molta ampia del suolo terrestre.


Un satellite generalmente è formato dai seguenti sottosistemi:


pannelli solari e accumulatori per l'alimentazione degli apparati

un sistema di antenne per ricevere e trasmttere il segnale

un sistema di stabilizzazione per garantire il puntamento delle antenne nella giusta direzione

un sistema di telemetria per la trasmissione dei dati riguardanti la posizione del satellite

un sistema di comando per correggerne da terra l'orbita o la posizione


N.B.: Questi sistemi spesso sono in sovranumero per ovviare a malfunzionamenti o anomalie.


Un satellite quindi è un ripetitore, riceve un segnale da un punto sulla terra e lo ritrasmette in un altro. Il collegamento da terra verso il satellite è detto up-link, mentre quello dal satellite verso terra down-link.

Introduzione tv-digitale


Negli ultimi anni si è assistito ad un vero boom della trasmissione satellitare grazie alla diffusione di canali televisivi trasmessi, appunto, via satellite. Questi possono essere sia di tipo analogico che di tipo digitale. I secondi, oltre ad avere una maggiore qualità, sono più flessibili e offrono più servizi, in più grazie alla compressione ed alla multiplazione occupano una banda minore.

In Europa per la trasmissione digitale viene seguite le raccomandazioni DVB (Digital Video Broadcast) emanate dall'ETSI (European Transmission Standards Institute). Lo standard DVB definisce le specifiche per la trasmissione televesiva digitale in generale (non solo via satellite), infatti ci sono diversi documenti per i diversi canali trasmissivi. Il DVB-S descrive il protocollo della trasmissione via satellite, il DBV-T tratta la trasmissione di canali digitali terrestri, mentre il BVD-C si occupa del via cavo.


Funzionamento trasmissione di un canale televisivo digitale


In Italia attualmente ci sono due provider di televisione digitale: D+ e Stream. Entrambi trasmettono i loro canali in digitale ai satelliti della costellazione Eutelsat che stazionano sull'orbita a 13° EST i quali li ritrasmettono a terra su tutta l'Europa centrale e, tramite un decoder satellitare digitale (IRD), vengono riconvertiti i 252d37c n analogico per poter essere visti su un comune televisore. I satelliti Eutelsat (gli Hotbird) hanno 10 transponder (trasmettitori) ognuno di circa 36 MHz. Ogni satellite ha a disposizione una banda di circa 500 Mhz. Nelle trasmissioni analogiche ogni transponder viene utilizzato per trasmettere un canale; nella trasmissione digitale ogni transponder viene utilizzato per inviare i pacchetti di dati relativi ai vari programmi.


I canali digitali sono di 3 tipi:


1) Free to air: canali fruibili gratuitamente

2) Pay tv: canali visibili solo dopo aver sottoscritto un abbonamento con l'emittente.

3) Pay per view: canali che trasmettono eventi (partite, film ecc) acquistabili singolarmente.


Un canale televisivo digitale è composto da:


Un flusso video

Un flusso audio

Un flusso dati (teletext, sottotitoli, informazioni sulla compressione, sulla decriptazione, dati per le funzioni interattive, guida elettronica ai programmi ecc)

Un flusso di sincronismo.


DAL VIDEO ANALOGICO AL SATELLITE



ADC: Convertono i segnali analogici in sequenze binarie.


CODIFICATORE MPEG2: comprime il flusso digitale in pacchetti MPEG2.


CRIPTATORE: Codifica i pacchetti in modo da poter essere interpretati solo da chi ha pagato il servizio.


CROSS-INTERLEAVER: Aggiunge bit di ridondanza per la correzione degli errori. Essendo una trasmissione broadcast, non è possibile dopo il riscontro di un errore da parte del decoder richiedere il pacchetto corrotto. Perciò si aggiungono informazioni ridondanti per assicurare l'integrità dei dati spediti.


MULTIPLEXER: Invia all'unica uscita, a turno, ognuno dei flussi presenti nelle molte entrate (TDM: multiplazione a divisione di tempo). La multiplazione può essere di tipo deterministico (una banda prestabilita per ogni canale) o di tipo statistico (banda allocata dinamicamente per ogni canale in funzione della complessità delle immagini). All'interno del multiplexer può formarsi una coda di tipo FIFO .


MODULATORE QPSK: Modulatore di fase (e ampiezza) a 4 stadi di una portante armonica e una modulante digitale.


I flussi analogici (video e audio) vengono digitalizzati, cioè vengono convertiti in una sequenza di 0 e 1 tramite un convertitore A/D e compressi con l'algoritmo MPEG2. Se necessario vengono criptati. Questi flussi (più alcune informazioni per la decodifica e per il sincronismo) vengono multiplexati insieme in uno stream DVB/MPEG2 a formare il PES (Packetized elementary stream). Ogni PES viene distribuito in pacchetti di trasporto TPS lunghi 188 byte, contenenti un byte di sincronismo, 3 byte di prefisso (PID), dei quali attualmente solo i 2 byte meno significativi vengono utilizzati, e 184 byte utili detti payload.


1 SYNC

3 PID

184 PAYLOAD



Ogni pacchetto quindi, secondo lo standard DVB/MPEG-2 è identificabile per mezzo del suo PID. Il valore del PID di ogni pacchetto del PES viene deciso dall'emittente. Tuttavia ci sono alcuni pacchetti con PID consosciuto che hanno dei significati particolari. Tutto questo è stabilito nel documento DVB-SI (Service information).


XXH

00 00H

PAT (Program Association Table)

Ci fornisce la relazione tra i CH ID (Identificativo del canale) di tutti i canali e il Pid PMT associato a ciascun canale .


XXH

00 10H

SDT (Service Description Table)

Descrive il servizio da noi sintonizzato, tra le altre cose con il nome del servizio (es: RAIUNO). 


XXH

YY YYH

PMT (Program Association Table)

Tabella contenente tutti i valori dei PID (audio, video, dati, clock, ecm/emm, ecc) necessari per la visione di un canale.


I provider inviano in uplink al satellite questi pacchetti modulati in QPSK. Spesso vengono multiplexati insieme più canali al fine di utlizzare tutta la banda.

Il satellite trasla verso le frequenze di downlink il segnale armonico modulato in fase, cambia, se necessario, la sua polarizzazione e lo ritrasmette verso terra.

A terra un sistema ricevente satellitare si occuperà di far visualizzare su un comune televisore un dato canale.



FUNZIONAMENTO DI UN IRD


LNB: Low Noise Block. E' situato sul fuoco dell'antenna parabolica. Il suo compito è quello di amplificare il segnale e traslare la banda delle frequenze ricevute dal satellite, attualmente comprese tra 10.700 e 12.750Mhz, in una banda di frequenze più basse denominata 1° IF (prima frequenza intermedia) compresa tra 950 e 2150 Mhz. L'LNB è collegato al decoder tramite un cavo coassiale con trasmissione fullduplex asimmetrica: il decoder invia (sul canale DisEqC del cavo coassiale) i dati della banda (banda bassa o banda alta) e della polarizzazione all'LNB del canale da visualizzare, L'LNB invia sul cavo coassiale lo stream selezionato.


Sintonizzatore: ha il compito di sintonizzare la frequenza del canale che si vuole visualizzare.


Demodulatore QPSK: ritrasforma il segnale armonico modulato in fase, nella corrispondente sequenza binaria.


FEC: legge e utilizza i bit di ridondanza per correggere gli eventuali errori nei pacchetti DVB/MPEG2.


Demultiplexer: In base al valore dell'header di ogni pacchetto decide se ignorare il pacchetto, inviarlo alla CAM, inviarlo direttamente al decoder MPEG o, se si tratta di pacchetti di dati, lasciarli gestire alla CPU.


CAM: Modulo di accesso condizionato. E' la parte del decoder in grado di eseguire il descrambling, cioè è in grado di rimettere in chiaro il segnale criptato. Si tratta di una scheda PCMCIA (aka PC-CARD), che può essere sostituita con una CAM con un altro algoritmo di descrambling (SECA, NDS, ecc). Per eseguire il descrambling si avvale dell'utilizzo di una smart card.

N.B.: Nel caso di eventi pay per view la cam avverte tramite modem il gestore che l'utente sta guardando il programma. Il provider si occuperà di addebitare il costo dell'evento.


DECODER MPEG2: riporta in forma non compressa il flusso audio/video.


DAC: Converte il flusso audio/video in analogico, pronto per essere connesso ad una TV, via scart ad esempio.


EEPROM: Memoria rom riprogrammabile elettronicamente, nella quale sono contenuti i valori necessari per la sintonizzazione di ogni canale.



FORWARD ERROR CORRECTION



La trasmissione satellitare è soggetta ad un alto livello di disturbo, quindi è necessario implementare una forma di correzione degli errori. Essendo un canale unidirezionale e data la natura realtime e broadcast del messaggio non è possibile chiedere al satellite il rinvio dei pacchetti errati, quindi insieme ai byte di informazione vengono inviati dei byte ridondanti per la correzione. Questa tecnica è chiamata FEC (Forward Error Correction)

Nel nostro caso vengono usati 2 strati di FEC.

Il primo chiamato Viterbi è espresso in numero frazionario. La frazione esprime il rapporto tra il numero n di bit di dati in entrata e il numero n più i bit usati per la correzione (es 2/3: ogni 3 bit ricevuti 2 sono di dati e 1 è usato per la correzione).

Il secondo strato di FEC è chiamato Reed-Solomon code (R/S). L'R/S è solitamente 188/204, cioè ogni 204 bytes, 188 sono di dati e i restanti sono usati per la correzione d'errore. Questa stessa catena di FEC viene utilizzata nella correzione di errori per i CD-Audio e i DVD.



Ogni emittente decide i diversi valori di FEC che incideranno sulla banda (quindi possiblità di inviare più o meno canali per ogni transponder) e sulla qualità.


In più per correggere efficacemente burst di errori (cioè più bit errati cosecutivi) il flusso viene inviato in un ordine diverso come mostrato in figura, e riodinato dopo la trasmissione, dall'IRD (interleaving/deinterleaving).

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

Trasmissione

per colonne

 
24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42



43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64


1

9

17

25

33

41

49

57

2

10

18

26

34

42

50

58

3

11

19

27

35

43

51

59

4

12

20

28

36

44

52

60

5

13

21

29

37

45

53

61

6

14

22

30

38

46

54

62

7

15

23

31

39

47

55

63

8

16

24

32

40

48

56

64



Inserimento

per righe

 




25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43


26 34 42 = burst di errori



IRDETO: IL SISTEMA DI SCRAMBLING DIGITALE PIU' DIFFUSO



Per limitare la visione solo a chi ha effettivamente pagato per farlo, i vari provider usano tecniche di scrambling. La più diffusa in Europa è l'IRDETO, usata qui in Italia da Tele+ e Stream.

I pacchetti scramblered che compongono il canale digitale vengono inviati dal satellite verso i ricevitori, il modulo di accesso condizionato IRDETO presente nei ricevitori in accoppiata con una una smart card IRDETO abilitata alla visione del programma, provvederà alla messa in chiaro dei pacchetti e quindi alla corretta visione del canale. L'algoritmo non è pubblicamente conosciuto ma si basa su una combinazione di ROR e SHIFT.



N.B: per la criptazione dei segnali audio/video rimane lo stesso nome che veniva usato nei sistemi analogici dove veniva aggiunto un disturbo (scramble).

Tele+ e Stream usando il simulcrypt, criptano il signale sia in IRDETO (comune a tutti per i prossimi anni, come da sentenza della Cassazione) sia in un sistema  proprietario, il SECA per il primo e l'NDS per il secondo.



SMART CARD


Successivamente alla sottoscrizione di un abbonamento PAY-TV viene consegnata una smartcard. Le Smart Card sono state progettate per gli usi più svariati, che vanno dalla semplice memorizzazione di informazioni (per es. dati anagrafici), fino ad arrivare ad effettuare vere e proprie elaborazioni sui dati in essa contenuti o che ad essa vengono inviati (Telefonia GSM - Pay-TV).


Le Smart Card possono essere divise in tre grandi categorie:


  • Solo Memoria
  • Memoria con logica di sicurezza
  • Memoria con CPU (ad essa appartengono quelle usate nel sistema IRDETO)


I fattori che ne determinano le differenze sono sostanzialmente i seguenti:


  • Tipo di Microcontroller (es. 6805, 8501)
  • Dimensione della Mask Rom ( contiene il Sistema Operativo che normamlmente è destinato alla gestione dei dati con l'ausilio di sistemi di crittografia)
  • Dimensione della RAM
  • Tipo e dimensione della memoria non volatile (Eprom, Eeprom)
  • Valore del Clock (esterno, e talvolta interno)
  • Meccanismi di Reset
  • Parametri di comunicazione (asincrona, sincrona)
  • Eventuale Co-Processore dedicato alla crittografia
  • Possibilità di basso consumo in sleep mode

Il comitato ISO che ne ha definito le varie caratteristiche è il 7816. Il documento è diviso in 3 parti:


ISO7816-1 con cui vengono definite le caratteristiche fisiche.

ISO7816-2 con cui vengono definite le dimensioni e la posizione dei contatti

ISO7816-3 con cui vengono definiti i segnali elettrici ed i protocolli di trasmisisone.





C1


C5





POSIZIONE CONTATTI

ISO7816





C2


C6






C3


C7






C4


C8



C1

VCC 5 Volt


C5

Gnd

C2

Reset

C6

Vpp

C3

Clock

C7

I/O

C4

RFU

C7

RFU


RFU= Riservato per Futuri Usi


Questa parte dello standard definisce le caratteristiche elettriche dei segnali nonché i protocolli con i quali deve avvenire il dialogo con la Smart Card.

La trasmissione di tipo asincrona è molto simile a quella che avviene a mezzo dell'interfaccia UART RS-232 del PC. I caratteri sono caratterizzati da:


Start bit (usato per la sincronizzazione)

Data bit (i veri e propri dati)

Parity bit (per il controllo di errori di trasmissione)- Parità pari



Guardtime (tempo di separazione tra i caratteri)- uguale a due bit



MAPPA CONTENUTO EEPROM DI UNA SMART CARD IRDETO




SERIAL ASCII e

SERIAL HEX:


Identificano univocamente ogni Smart card

Contry Code

Identifica la nazionalità della Smart Card

Provider Id 00

I primi 2 byte identificano il provider group 00, il terzo byte la carta specifica. E' un numero che viene deciso dal gestore durante l'abilitazione della carta.

Provider Id 10

I primi 2 byte identificano il provider group 10, il terzo byte la carta specifica.

N.B.: Una smart card IRDETO può quindi gestire due provider contemporaneamente, ma in Italia non viene sfruttata questa possibilità.

Masterkey

Chiave che permette la decodifica delle Key KN da parte della SC quando queste vengono inviate dal gestore tramite un EMM (che le invia in forma criptata). .

8 Key KN

Chiavi usate per la decodifica delle key contenute negli ECM (vedi più avanti). Sono uguali per ogni provider group (cioè uguali a gruppi di 256 carte)

DATE STAMP

Data attuale. Viene aggiornata giornalmente.

CH ID

Numero identificativo dei canali abilitati alla visione più data di sottoscrizione e data di scadenza.

Card File 1 e 2

Sequenze di byte utilizzate dall'algoritmo di decodifica delle chiavi.


INTERAZIONE CON LA SMARTCARD: ECM / EMM


Il gestore può interagire con ogni singola smartcard mediante l'invio di due tipi di pacchetti: gli ECM (Entitlement Control Message) e gli EMM (Entitlement Management Message). Questi ultimi sono dei messaggi di gestione che i provider inviano alle card per impostarne e aggiornarne alcuni valori, come ad esempio la data, per aggiungere o rimuovere ch id, aggiornare key, masterkey, impostare la nazionalità della carta ecc. Gli EMM possono essere indirizzati ad una singola smartcard o ad un gruppo di esse. Un ECM invece porta con se le informazioni per decodificare un canale criptato (Pay TV o Pay-Per-View) ed è indirizzato a tutte le smart card IRDETO e viene generato ogni circa 2 secondi.

I valori dei PID dei pacchetti ECM/EMM sono specificati nella PMT (Program Association Table).



Struttura comandi inviati alla smartcard


Comando


DATA BLOCK

Check Byte

Class

Length

DIPENDE DAL COMANDO


Xor di tutti i byte + Xor 3F

01

CLA

INS

P1

P2

P3


CLASS ( CLA)

00: reset

01: emm

02: get

03: prg mode

04: set

05: ecm

06: prg mode


INSTRUCTION ( INS )

Dipende dalla Classe del Comando


P1 Codice d'istruzione

P2  Valore addizionale

Dipendono dalla Classe del Comando


P3 Lunghezza

Numero complessivo di byte nel DATA BLOCK.


Check Byte

Chiude la stringa che viene inviata o ricevuta dalla smartcard
OR eclusivo (XOR) di tutti i byte , alla fine XOR con 3F


Signature

Viene usata per convalidare il DATA BLOCK attraverso una vera e propria firma digitale, è composta da 5 byte di cui non è conosciuto l'agoritmo di calcolo.


Scambio informazioni tra CAM e SMARTCARD



Quando una smart card viene inserita nel decoder, questo invia un reset alla card, la quale risponde l'ATR (Answer To Reset) con la versione del sistema operativo irdeto e con informazioni sul protocollo seriale usato (velocità, bit di start e di stop ecc).


00   RESET


3B 9F 21 0E 49 52 44 45 54 4F 20 41 43 53 20 56 31 2E 32 A0   ATR



3B

9F

21

0E

49

52

44

45

54

4F

20

41

43

53

20

56

31

2E

32

A0





I

R

D

E

T

O


A

C

S


V

1


2




La CAM poi richiede alla scheda di identificarsi con il serial number (ascii e esadecimale) :



Richiesta : Cards ASCII Serial Number

01 02 00 03 00 00 3F 

Risposta : Cards ASCII Serial Number

01 02 00 00 00 03 00 14

3X 3X 3X 3X 3X 3X 3X 3X 3X 3X 43 36 34 32 30 33

41 20 20 20 30

Richiesta: Cards HEX Serial Number

01 02 01 03 00 00 3E

Risposta : Cards HEX Serial Number

01 02 00 00 01 03 00 10

00 17 00 00 01 00 17 00 00 01 02 00 SN SN SN 18

CS


e con altre informazioni riguardanti l'emittente e il paese.


Richiesta : Provider ID 00 SMART CARD

01 02 03 03 00 00 3C 

Risposta: Cards Provider ID 00

01 02 00 00 03 03 00 18

00 p0 p0 p0 00 00 00 00 00 00 03 12 00 00 00 00

00 00 00 00 00 00 00 00 36


Richiesta: Cards Provider ID 10

01 02 03 03 01 00 3D 

Risposta: Cards Provider ID 10

01 02 00 00 03 03 01 18

11 p1 p1 p1 00 00 00 00 00 00 03 18 00 00 00 00

00 00 00 00 00 00 00 00 CS


Richiesta: Card File 1

01 02 0E 02 00 00 30 

Risposta: Card File 1

01 02 00 00 0E 02 00 40

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CS


Richiesta: Card File 2

01 02 0E 03 00 00 31 

Risposta: Card File 2

01 02 00 00 0E 03 00 40

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF

CS


Richiesta: Country Code

01 02 02 03 00 00 3D

Risposta: Country Code

01 02 00 00 02 03 00 10

02 01 99 17 01 17 02 17 03 17 04 07 41 44 45 55 (DEU)

A1


Poi la CAM invia la propria key (CAMKEY)



INVIO: IRD/Cam Key

01 02 09 03 00 40

c1 c1 c1 c1 c1 c1 c1 c1 c2 c2 c2 c2 c2 c2 c2 c2

c3 c3 c3 c3 c3 c3 c3 c3 c4 c4 c4 c4 c4 c4 c4 c4

c5 c5 c5 c5 c5 c5 c5 c5 c6 c6 c6 c6 c6 c6 c6 c6

c7 c7 c7 c7 c7 c7 c7 c7 c8 c8 c8 c8 c8 c8 c8 c8

cs


Risposta: Card Accepting IRD/Cam Key

01 02 55 00 09 03 00 00 63



Con il comando 01 02 09 03 00, la CAM invia tutte le CAMKEY in suo possesso (8), ma con il quinto byte (00) specifica a quale key la card deve fare riferimento (in questo caso la key c1).


Dopodichè la CAM invia un ECM contenente due chiavi di decodifica del canale criptate (descramblekey criptata), un identificativo del canale da decriptare (ch id) e il numero di chiave che la Smart card dovrà utilizzare.


Invio: Entitlement Control Message

01 05 00 00 02 23 ch ID PP kn 00 1D 40 02 DD DD

78 12 kn kp D1 D1 D1 D1 D1 D1 D1 D1 D2 D2 D2 D2

D2 D2 D2 D2 SS SS SS SS SS cs


01 05 00 00 02

Comando ECM (entitlement control message)

23

Byte rimanenti

ch id

Identificativo del canale da mettere in chiaro

PP

Se 00 o 12 comando indirizzato al Provider 00, se 10 o 13 al Provider 10

Kn

Numero della chiave nella smartcard che la smartcard userà per decriptare la descrmblekey criptata.

00

Divisore

1d

Byte rimanenti

40 02

Nano comando. Invio Data, lunghezza del comando 02H byte



DD DD

Data

78 12

Nano comando. Invio key, lunghezza comando 12H byte

Kn

Numero della chiave nella smartcard che la smartcard userà per decriptare la key D1 o D2

Kp

Valore che comanda l'uso della descramblekey d1, della descramble key d2 o di entrambe che vengono successivamente inviate.

D1. D1

Descramble key 1 criptata

D2. D2

Descramble key 2 criptata

SS. SS

Signature (firma digitale), usata per controllare la veridicità del comando.

CS

Checksum


La smartcard a questo punto controllerà se è abilitata alla visione del CH ID e se possiede la key di decodifica (KN) appropriata. In questo caso decodificherà la key D1 o D2 e la rinvierà alla CAM ricriptandola con la CAMKEY.


N.B: Secondo lo standard IRDETO, lo scambio di dati tra CAM e SMARTCARD non avviene mai in chiaro, questo perché si potrebbe monitorizzare facilmente lo scambio e risalire all'algoritmo di decodifica, per questo la descramble Plainkey riviene criptata con la CAM Key prima di essere spedita.


L'algoritmo di decodifica non è conosciuto publicamente.

SCHEMA RIASSUNTIVO DESCRAMBLING



Dopo l'invio di un ECM ,se la card è abilitata correttamente alla visione del canale risponderà alla CAM con:


01 05 9D 00 38 tt 00 0E

ch ID 10 kp FF FF k1 k1 k1 k1 k1 k1 k1 k1 cs


01 05 9D 00 38

Risposta al comando di classe 5. Decodifica con successo.

Tt


00

Divisore

0E

Byte rimanenti

CH ID

Identificativo canale

10


Kp

Numero della CAM KEY

FF FF


k1.k1

Key che verrà usata per il descrambling, criptata con la CAM KEY

Cs

Checksum


La CAM, ricevuta la key K1 dalla Smart Card, la decripterà usando la CAMKEY in suo possesso e quindi sarà in grado di mettere in chiaro il canale.


Se la smart non è abilitata alla visione del canale genererà come risposta uno dei seguenti codici di errore:



01 05 90 00 00 : Channel ID non trovato

01 05 93 00 00 : Channel ID non corretto

01 05 9C 00 00 : Errore nella Masterkey

01 05 9E 00 00 : Errato il decriptaggio della Key (controllo sulla signature)

01 05 9F 00 00 : Errore nella Key ( Key non trovata)

01 05 A0 00 00 : Errato Bouquet






COMPRESSIONE MPEG-2 VIDEO



Una sequenza televisiva PAL (lo standard video usato in Europa), alla massima risoluzione, è composta da 625 righe * 833 colonne, con una frequenza di 25 frame al secondo, cioè circa 13 Milioni di pixel al secondo.Questo flusso digitalizzato a 16 bit nel formato YUV 4:2:2 (8bit per luminanza e 4+4 bit per la crominanza) richiede circa 208 Megabit al secondo.

Un numero molto elevato: è quindi necessaria una tecnica di compressione. Quella usata nello standard DVB è l'MPEG-2, detto anche Motion JPEG2, creato dalle mani di Leonardo Chiariglione e Hiroshi Yasuda.


Innanzitutto dal quadro i due canali di crominanza vengono decimati con rapporto 2:1 lungo la direzione orizzontale pertanto avremo:

  • 833 x 625 pixel di luminanza
  • 416 x 625 pixel di crominanza U e V

senza che questo porti ad significativo degradamento per immagini reali (non sintetiche).


N.B.: Le immagini sintetiche o di rumore bianco mettono in crisi l'algoritmo MPEG-2. L'MPEG-4, tra le altre cose, supera il problema mediante l'utilizzo di frattali.


Ogni quadro viene suddiviso in blocchi di 8x8 pixel (alcune righe o colonne vengono scartate o raddoppiate per ottenere blocchi tutti da 8x8 pixel ) ad ognuno dei quali viene applicata la Trasformata Discreta del Coseno (DCT).

A differenza della trasformata o della Serie di Fourier (con le quali è strettamente legata), la DCT non è applicata ad una funzione continua, poiché un computer o un dsp opera solo con dati discreti (non con gli infiniti valori di una funzione continua). La DCT infatti opera su dei campioni: in questo caso 8*8 campioni. La F(s) risultante sarà anch'essa una matrice 8x8 con i valori, anch'essi discreti, della trasformata.

Il vantaggio dell'utilizzo della DCT consiste nel fatto che, per un blocco di un'immagine tipica, l'energia è concentrata alle frequenze più basse; dopo la DCT viene effettuata una quantizzazione e, essendo l'occhio umano meno sensibile alle alte frequenze, i coefficenti di quest'ultime possono essere quantizzate con un passo più largo (o troncati), permettendoci così di realizzare una notevole compressione dei dati a scapito di un'introduzione d'errore minima riscontrabile a occhio. Il passo di quantizzazione è deciso in base alla banda disponibile e alla qualità richiesta.

Nella decodifica si utilizzerà la trasformata inversa IDCT, per passare dai valori quantizzati delle frequenze spaziali ai valori spaziali dei pixels.


La DCT monodimensionale è definita come:



Essendo applicata ad una matrice 8x8, la DCT bidimensionale risultante sarà:



dove F(u,v) sarà il coefficente della DCT del blocco 8x8 nella posizione (u,v) della matrice 8x8 che memorizza i coefficenti trasformati, f(x,y) il valore presente nel blocco 8x8 dei campioni dei pixel in posizione (x,y) e con:


per j = 0 e per j > 0


Visto che i coefficienti sono inversamente proporzionati alla frequenza, vengono inserirti nella tabella nell'ordine mostrato in figura in modo da ottenere una tabella ordinata in modo decrescente.

L'anti DCT applicata alla suddetta matrice sarà del tipo:



A questa tecnica fa seguito quella di motion compensation.

In genere sono poche le variazioni che si riscontrano confrontando due fotogrammi successivi di una sequenza. In genere c'è solo una traslazione di una parte di esso (ad esempio una macchina che si sposta dalla parte sinistra a quella destra dello schermo, mentre il resto rimane invariato). Quindi la tecnica di motion compensation si occupa di confrontare due fotogrammi e di descrivere solo le differenze tra loro.

Nello standard MPEG esistono tre tipi di fotogrammi:


  • I- Frame o Intraframes fotogrammi che vengono codificati singolarmente senza nesssun riferimento ad altri (codifica JPEG normale).
  • P - Frame o Forward Predicted frames: fotogrammi che vengono predetti sulla base di un frame di tipo I
  • B - Frame o Biredictional frames: fotogrammi che vengono ottenuti interpolando un frame I ed un frame P


Tra un frame I e il successivo possono esserci al massimo 12 frames, questo per mantenere una certa fedeltà e poter aver un accesso casuale al flusso di immagini ogni:



L' I-frame viene codificato considerandolo come una singola immagine fissa.

Nel P-frame viene controllato ogni blocco e confrontato con i blocchi dell'intraframe, se viene trovato un blocco simile viene generato un motion vector che ne stabilisce la posizione nell'I-frame, altrimenti viene codificato come se facesse parte di un intraframe.

Nella compressione del frame di tipo B vengono controllati i blocchi sia avanti nel tempo (P-frame) che indietro nel tempo (I-frame) per generare il motion vector; oppure si cerca di fare una media fra il blocco più simile nel frame I e quello più simile nel frame P e sottraendo a questo il blocco da codificare.

Si può codificare un blocco anche come se facesse parte di un frame I (senza riferimenti), se le tecniche sopraindicate non sono convenienti.


N.B. Visto che per poter decodificare i frames B occorre conoscere già il frame P successivo, il flusso dei pacchetti MPEG non seguono l'ordine temporale logico (tutti i blocchi del primo frame, tutti i blocchi del secondo frame ecc), ma prima il frame I, il frame P e quelli intermedi B.


Per ultima viene effettuata una codifica di tipo Huffman (che è di tipo loseless, senza perdita di informazione) che si basa sul principio di trasmettere con codice più corto (pochi bit) i dati frequenti e con codice più lungo i dati meno frequenti: in questo modo, a parità di quantita' di informazione, viene occupata meno banda.


Questo flusso di dati viene diviso in blocchi da 188 byte comprendeti 4 byte di intestazione, a formare i pacchetti MPEG.

SCHEMA RIASSUNTIVO DELLA COMPRESSIONE MPEG-2 VIDEO


COMPRESSIONE MPEG AUDIO


L'orecchio umano è sensibile ai suoni compresi tra 20 e 22.000Hz, per la teoria del campionamento di Shannon, la frequenza di campionamento scelta è di 44.1 o 48Khz (maggiore di 2 * 22Khz). Per archiviare un minuto di audio stereo in forma digitale con una risoluzione di 16 bit e una frequenza di 44.1Hz sono necessari circa 10 Megabyte.

Lo standard MPEG introduce 3 livelli di compressione per l'audio chiamati Layer, il modello base è lo stesso, ma la compressione aumenta per ogni livello. Lo spettro delle frequenze viene diviso in 32 sottobande di frequenza e il flusso è diviso in frame di 384 campioni, 12 sample per ogni sottobanda. L'Mpeg audio fa uso di modelli psicoacustici per la riduzione di informazione, cioè tronca quelle informazioni che l'orecchio umano non percepisce (temporal masking e frequency masking), in più viene sempre utilizzata la DCT e il codice Huffman come per la compressione video.



IL DUAL CARD


I Decoder DVB/MPEG-2 IRDETO in vendita oggi, hanno un solo lettore per smartcard abilitato. Gli abbonati ai due provider di televisione digitale (Tele+ e Stream) hanno due alternative:


  • acquistare due ricevitori (molto costoso)
  • scambiare le card nel ricevitore ogni volta che si vuole vedere un canale dell'altro provider (molto scomodo e a lungo andare deleterio per le card).

Oppure si potrebbe costruire un doppio lettore con sopra un microcontrollore istruito per gestire lo scambio delle 2 card in automatico; monitorizzando lo scambio dei dati che avviene tra CAM e una Smart Card il microcontrollore capira' se il canale viene decriptato correttamente oppure no. Se non viene decriptato correttamente il microcontrollore comincerà il dialogo  con la seconda smartcard.

Nello specifico il uC dovrà leggere la risposta della smartcard 01 05 XX 00 00 .

Se XX è diverso da 9D allora bisognerà provare a far fare la decodifica della descramble key criptate alla seconda smartcard. Il PIC prenderà nota del 6 byte del messaggio da CAM a SC per conoscere quanti bit devono essere ancora inviati e viceversa.



Il PIC 16f84


Il Pic 16f84 è un microcontrollore a 8 bit prodotto dalla Microchip. Un microcontrollore integra al suo interno un microprocessore, della memoria ram/rom della memoria eeprom o simile, delle porte di I/O, un timer e a volte dei convertitori A/D o D/A. Il PIC 16f84 lavora a 4 MHz, è di tipo RISC, ha solo 35 istruzioni e ogni istruzione richiede un singolo ciclo per essere eseguita, tranne le istruzioni di salto che ne richiedono 2. Gestisce le interruzioni, ha una modalità a basso consumo.




LA FOTOINCISIONE: Realizzazione di circuiti stampati a livello hobbistico


La fotoincisione è una tecnica per la realizzazione di circuiti stampati. E' un metodo che utilizza un sistema fotografico per disegnare sul rame le piste del circuito stampato. Il circuito viene realizzato su una basetta di vetronite (o simile) ricoperta di uno strato di rame (monofaccia o doppiafaccia), ricoperto a sua volta da uno strato fotosensibile (photoresist). Innanzitutto viene creato un master, cioè un disegno in B/N in scala 1:1 delle piste su un supporto trasparente ai raggi UV, come ad esempio un foglio di ludici per proiettori. Generalmente viene realizzato al computer e stampato su una stampante inkjet o laser o realizzato in tipografia.

Dopodichè viene applicato il master sulla basetta ed esposti alla luce UV per un tempo che varia in funzione del tipo di basetta, dal tipo di luce (UVA, UVB, UVC), dall'intensità, dalla distanza; in genere l'esposizione richiede qualche minuto. Il master è quindi composto da parti nere (non passa luce) e parti trasparenti (passa luce). Lo strato fotosensibile a contatto con la luce (ESPOSIZIONE) cambia composizione chimica e diventa solubile in un bagno di soda caustica (SVILUPPO). Le parti che sono state esposte alla luce UV si sciolgono a contatto con la soda, scoprendo così lo strato di rame. Lo sviluppo dipende dalla concentrazione di soda caustica nella soluzione e dal suo grado di saturazione, in genere richiede 20 secondi.

Successivamente la basetta viene immersa in un bagno di cloruro ferrico (INCISIONE) che ha la capacità di corrodere i metalli, in questo caso viene corroso il rame non protetto dal photoresist. Il tempo di incisione varia dal grado di saturazione del liquido corrosivo e dalla sua temperatura. In genere richiede intorno ai 20 min.

Eliminando il photoresist ancora presente, la basetta sarà composta solo dalle piste in rame di cui avevamo bisogno.

Le difficoltà maggiori sono da imputare nella ricerca dei tempi di sviluppo, esposizione e incisione che come abbiamo visto variano a seconda delle situazioni.

In questa spiegazione ci siamo occupati di materiale fotosensibile in positivo, quello in negativo è solubile nella soda se non viene esposto ai raggi UV.


Bibliografia:


Manuale di telecomunicazioni: Daniele Fuselli

What is Digital Satellite Television: Chris Muriel

MPEG and Multimedia communications: Leonardo Chiariglione

The New European Digital Video Broadcast Standard: Markus Kuhn

North American MPEG-2 Information: Rod Hewitt

MPEG-2 FAQ: Chad Fogg

MPEG-FAQ 4.1: Chad Fogg

MPEG Uno standard per la compressione di immagini in movimento: Luigi Filippini

Capire Log & Crd: Giorgio

La Fotoincisione: Michele Guerra

Mpeg Tutorial: Hewlett Packard

Mpeg video: Telematic Lab

JPEG: Metodo per la compressione di immagini: Deborah Olivo







Privacy




Articolo informazione


Hits: 1678
Apprezzato: scheda appunto

Commentare questo articolo:

Non sei registrato
Devi essere registrato per commentare

ISCRIVITI



Copiare il codice

nella pagina web del tuo sito.


Copyright InfTub.com 2024