Servizi di diffusione televisiva: lo standard MPEG

Transcript

Servizi di diffusione televisiva: lo standard MPEG
Capitolo 6
Servizi di diffusione televisiva: lo standard
MPEG-2 e il Digital Video Broadcasting
Contenuto
6.1
Lo standard MPEG-2 per servizi multimediali diffusivi
Lo standard MPEG-2, sviluppato dal Moving Pictures Experts Group (MPEG) dell’ISO 6.1 in cui sono rappresentati
vari segmenti di industrie che si occupano del trattamento dell’informazione, definisce la codifica di sorgente audio,
video, e il formato di multiplazione e trasporto per servizi multimediali diffusivi a qualità televisiva o superiore. Lo
standard specifica esclusivamente la sintassi del bitstream e la decodifica, e definisce sottoinsiemi di funzionalitá e
di elementi sintattici (profili) adatti a particolari campi di applicazione.
Lo standard MPEG-2 è uno standard utilizzabile in diverse applicazioni. L’applicazione primaria di MPEG-2 è
la trasmissione a qualità televisiva (Racc. CCIR 601) o superiore di sequenze in formato interallacciato o progressivo
e di diversi aspect ratio,quali 4:3, 16:9, e il formato quadrato. I formati di riferimento per Standard Definition
TeleVision (SDTV) prevedono sequenze video 4:2:0 di dimensione 720x576 pixel @ 25 quadri al secondo (PAL), o
720x480 @ 30 quadri al secondo (NTSC) con un bitrate tra 2 e 10 Mbit/sec. Lo standard risulta efficiente anche
per applicazioni HDTV (sequenze di dimensione 1280x720 o 1920x1080 pixel), con un bitrate compreso tra 2 e 40
Mbit/s.
La parte System dello standard descrive un formato di multiplazione potente e flessibile, che ha influito in modo
determinante sull’affermazione dello standard stesso. In particolare, lo standard consente la multiplazione di più
canali audio (trasmissione multilingue), più canali video (trasmissione multiview), di dati (sottotitoli, file grafici).
6.1 La
commissione MPEG appartiene al gruppo ISO/IEC JTC1 SC29 WG11, con International Standardization Organization, International
Electrotechnical Committee, Joint Technical Commitee 1, Sub-committee 29, Working Group 11.
54
6.2. LO STANDARD MPEG-2 VIDEO
6.2
55
Lo standard MPEG-2 Video
Lo standard MPEG-2 Video, recepito anche nella Raccomandazione ITU-T H.262, utilizza tecniche di compressione
basate sulla riduzione della ridondanza spaziale e temporale della sequenza video. La riduzione della ridondanza
spaziale é realizzata mediante tecniche a trasformate, quella temporale mediante motocompensazione; tale metodologia
prende il nome di codifica ibrida a trasformata.
Lo standard definisce tre tipi di quadri, che differiscono per la metodologia di codifica adottata:
• immagini codificate senza riferimento ad altre immagini (I); forniscono punti di accesso alla sequenza codificata in corrispondenza dei quali può iniziare la decodifica; sono caratterizzate da un modesto rapporto di
compressione;
• immagini codificate mediante motocompensazione da immagini precedenti (P); possono essere utilizzate come
riferimento per altre predizioni;
• immagini codificate mediante motocompensazone bidirezionale (B); offrono il maggior livello di compressione;
non sono utilizzate come riferimento per ulteriori predizioni.
L’organizzazione dei tre tipi di immagine in una sequenza video è molto flessibile. La scelta è lasciata al codificatore
e dipende dai requisiti dell’applicazione.
La codifica opera suddividendo ciascun quadro in quadrati di 16x16 pixel, detti macroblocchi. Tutti i macroblocchi
di un quadro I sono codificati senza predizione (macroblocchi di tipo I). Ciascun macroblocco di un quadro P può
essere predetto rispetto al quadro P o I precedente (macroblocco di tipo P), ovvero codificato senza predizione
(macroblocco di tipo I). Ciascun macroblocco di un quadro B puó essere predetto bidirezionalmente rispetto al
quadro P o I precedente e al quadro P o I successivo (macroblocco di tipo B), ovvero essere predetto rispetto al
quadro P o I precedente (macroblocco di tipo P), ovvero codificato senza predizione (macroblocco di tipo I).
Per macroblocchi I, si codifica il macroblocco mediante applicazione di DCT e quantizzazione ai blocchi 8x8
componenti. Per macroblocchi P, si effettua la motocompensazione del macroblocco 16x16; la differenza fra il
macroblocco attuale e la predizione, detta residuo di motocompensazione, é codificata mediante DCT e quantizzazione
su blocchi 8x8 pixel. Per macroblocchi B, si effettua la motocompensazione del macroblocco 16x16 rispetto al quadro
di riferimento precedente e rispetto al quadro di riferimento successivo; la predizione é operata mediando i due blocchi
16x16 cos´ ottenuti; la differenza fra il macroblocco attuale e la predizione, detta residuo di motocompensazione,
é codificata mediante DCT e quantizzazione su blocchi 8x8 pixel. Il modo di codifica di ciascun macroblocco dei
quadri P e B è scelto in modo da minimizzare il numero di bit richiesti per descriverlo. Poiché i vettori di moto di
macroblocchi adiacenti sono correlati, sono codificati in modo differenziale rispetto al vettore moto del precedente
macroblocco adiacente.
La quantizzazione determina una perdita irreversibile di informazione ed è adattata alle caratteristiche del sistema
visivo umano, mediante la scelta di opportune matrici di quantizzazione. Le matrici di quantizzazione possono variare
da una immagine all’altra e sono trasmesse all’inizio di ciascuna immagine; inoltre la matrice di quantizzazione puó
essere scalata da macroblocco a macroblocco mediante un fattore di scala (quantizer scale), al fine di adattare la
precisione della codifica dell’immagine al suo contenuto. Il quantizer scale, che puó essere maggiore di 1 o minore
di 1, é codificato con un valore a 5 bit su scala lineare e non. I coefficienti AC sono scanditi a zig-zag e codificati
con codifica a corse di zeri e tavole di codice di Huffmann. La scelta delle matrici di quantizzazione é lasciata al
56CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
codificatore. Tuttavia, a titolo di riferimento, lo standard suggerisce l’uso delle matrici QINTRA [k1 , k2] ,QINTER [k1 , k2 ]
riportate in Tabs.6.1,6.2. Nel caso di quadri I é codificata la differenza fra coefficienti DC di blocchi adiacenti.
I quadri della sequenza sono raggruppati in Group Of Pictures (GOP), il cui primo quadro é di tipo I. Tale
organizzazione dei dati codificati consente la sincronizzazione del decoder con un ritardo al piú pari alla durata del
GOP. Inoltre la presenza di quadri I abilita lo scorrimento all’indietro o in avanti di una registrazione e l’indirizzamento
di punti predeterminati in una sequenza. Per applicazioni di distribuzione televisiva i quadri I hanno una frequenza di
1 o 2 quadri I al secondo, con GOP del tipo IPBBPBBPBBP. L’ordinamento dei quadri nel GOP differisce dall’ordine
con cui i relativi dati codificati compaiono nel bitstream, in quanto i quadri di tipo B sono inseriti nel bitstream dopo
i quadri di tipo I o P in riferimento ai quali sono predetti. Dualmente, in fase di decodifica, l’ordine con il quale
sono decodificati i quadri non coincide con l’ordine di presentazione, in quanto i quadri B sono decodificati dopo i
quadri cui fanno riferimento per la predizione.
Figura 6.1: Schema di principio del codificatore MPEG.
6.2.1
Il controllo di flusso nella codifica MPEG-2
Nelle applicazioni di distribuzione televisiva, la distorsione introdotta dalla codifica sulla sequenza ricostruita deve
essere relativamente costante per non dar luogo ad artefatti visuali non compatibili con le specifiche di qualitá del
servizio. Poiché le caratteristiche locali della seuenza da codificare variano (contenuto dell’immagine, tipo di moto
nella scena etc,), il numero di bit richiesto per codificare ciascun frame é variabile, e il codificatore video si presenta
come una sorgente a bit-rate variabile. Poiché il canale di trasmissione ha tipicamente capacitá costante, l’uscita del
codificatore video alimenta un buffer di trasmissione, che è riempito a burst quando le immagini vengono codificate,
e svuotato a velocità costante durante la trasmissione. Poiché il codificatore ha visibilitá dello stato di riempimento
6.2. LO STANDARD MPEG-2 VIDEO
57
Figura 6.2: Esempio di Group of Pictures.
Luminanza (Y )
8
16
19
22
26
27
29
34
16
16
22
24
27
29
34
37
19
22
26
27
29
34
34
38
22
22
26
27
29
34
37
40
22
26
27
29
32
35
40
48
26
27
29
32
35
40
48
58
46
27
29
34
38
46
56
69
27
29
35
38
46
56
69
83
Tabella 6.1: Passi di quantizzazione Q INTRA [k1 , k2 ] per la luminanza dei quadri INTRA: esempio.
del buffer, tale informazione è utilizzata per controllare il processo di codifica (quantizzazione, inserimento di quadri
predetti), al fine di evitare fenomeni di buffer overflow e underflow.
Dualmente, all’interfaccia fra il canale e il decodificatore MPEG é presente un buffer, caricato a velocità costante
quando i dati vengono ricevuti e svuotato a burst durante il processo di decodifica. Lo standard MPEG definisce un
modello ideale di decodificatore (System Target Decoder, STD) che é utilizzato dal codificatore come riferimento per
limitare il bitrate istantaneo in modo da non incorrere nell’overflow o underflow del buffer del decoder. Il modello del
decodificatore ideale puó essere semplicemente descritto da parametri caratteristici della sessione6.2 ovvero descritta
6.2 Tale
utilizzata.
rappresentazione semplificata prende il nome di Leak Method ed adotta parametri numerici dipendenti dalla coppia profilo-livello
58CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Residui di luminanza (∆Y )
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
Tabella 6.2: Passi di quantizzazione Q INTER [k1 , k2 ] per i residui di luminanza dei quadri INTER (P o B): esempio.
Figura 6.3: Modello del buffer in uscita al codificatore e del buffer in ingresso al decodificatore.
mediante un modello detto Video Buffering Verifier(VBV). Il VBV é identificato dai parametri bit-rate, misurato in
unità di 400bit/s, vbv-buffer-size, misurato in unità di 2048 byte, vbv-delay, che definisce il tempo tra la ricezione
del primo bit di dati della prima immagine nel buffer e la decodifica dei dati stessi, misurato in numero di periodi
di un clock di riferimento a 90 KHz. I parametri del VBV sono multiplati insieme ai dati video secondo il formato
specificato dallo standard MPEG-2 System.
6.2.2
Profili e livelli di un decodificatore MPEG-2 video
Lo standard MPEG-2 video offre diverse varianti dell’algoritmo di compressione sovraesposto, alcune delle quali
godono della proprietá di scalabilit á. Per scalabilitá si intende la disponibilit á all’interno del bitstream tanto di dati
base (Base Layer) quanto ai dati di arricchimento (Enhancement Layers). I dati possono riferirsi a diversi livelli
di qualit á, ovvero di risoluzione spaziale o temporale. Per semplificare la segnalazione della modalitá operativa del
6.3. LO STANDARD MPEG-2 SYSTEM
59
codec, si identificano differenti profili di codec, ciascuno dei quali identifica il particolare algoritmo utilizzato e
alcune particolari opzioni di codifica, che limitano i gradi di libert á della sintassi del bit-stream. La Tabella 6.3
riporta i differenti profili MPEG-2.
Profilo
Principali caratteristiche (Predizione, scalabilitá, formato)
Simple Profile (SP)
I,P, non scalabile, campionamento 4:2:0.
Main Profile (MP)
I,P,B, non scalabile, campionamento 4:2:0
SNR Scalable Profile
Spatially Scalable Profile
I,P,B, scalabile in SNR, campionamento 4:2:0
I,P,B, scalabile spazialmente e/o in SNR, campionamento 4:2:0
4:2:2 Profile
I,P,B, non scalabile, campionamento 4:2:2
High Profile
I,P,B, scalabile spazialmente e/o in SNR, campionamento 4:2:2
Multiview Profile
I,P,B, non scalabile, campionamento 4:2:0 di informazioni destra e sinistra (TV 3D)
Tabella 6.3: Profili del codec MPEG-2.
Per ciascun profilo, si identificano decodificatori di differente livello di complessitá, per ciascuno dei quali sono
specificati i limiti massimi supportati per ci ó che concerne la risoluzione spaziale, il bitrate, la dimensione del buffer,
etc. I servizi di diffusione televisiva utilizzano tipicamente la coppia profilo/livello denominata Main Profile / Main
Level (MP@ML).
6.3
Lo standard MPEG-2 system
Lo standard MPEG-2 system definisce la modalitá di multiplazione di una o più sequenze elementari video, audio e
dati in formato ottimizzato per applicazioni di trasmissione o di memorizzazione. In particolare, lo standard definisce
il formato per la memorizzazione (Flusso di programma, Program Stream, PS ) e per la trasmissione (Flusso di
trasporto, Transport Stream, TS). Entrambe i flussi sono di tipo a pacchetto.
6.3.1
Il Program Stream MPEG-2
I dati prodotti dai codificatori audio e video sono organizzati in un flusso di unitá di lunghezza variabile denominato
Elementary Stream, ES). A partire da ciascun ES, l’MPEG-2 System definisce la generazione del Packetized Elementary Stream, ottenuto mappando ciascun pacchetto ES nel payload di un pacchetto PES, e associando un PES Header
contenente un prefisso, un numero identificativo dello stream (video, audio1, audio2, etc.), e dei dati opzionali di
copyright, CRC, etc. La lunghezza di ogni pacchetto PES é variabile e può essere anche superiore a 64 kBytes.
La sintassi del PES trasporta anche l’informazione necessaria per la sincronizzazione della decodifica e della
presentazione delle informazioni audio e video mediante
• indicatori temporali a 33 bit relativi alla presentazione di audio, video e dati codificati(Presentation Time Stamp
(PTS))
• indicatori temporali a 33 bit relativi alla decodifica (Decoding Time Stamp (DTS)) del video codificato.
Tali indicatori temporali, alla stregua del vbv delay, sono misurati rispetto ad un clock di riferimento a 90 KHz.
60CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Uno o più PES, aventi una base dei tempi comune sono combinati in un singolo flusso multiplato detto Program
stream, che rappresenta un programma, almeno in senso lato. Un Program Stream, quindi, contiene sequenze
elementari audio e video aventi la stessa base dei tempi6.3. Questo formato puó essere utilizzato direttamente in
canali privi di errori, quali ad esempio quelli che modellano applicazioni di memorizzazione. Per il trasferimento
su canali di comunicazione reali, l’MPEG-2 System definisce un formato apposito detto Transport Stream, che
é estremamente flessibile, ed é supportato dalle direttive DVB/ETSI sui formati di trasmissione della televisione
digitale.
6.3.2
Il Transport Stream MPEG-2
Lo standard MPEG-2 System definisce un formato per la multiplazione di uno o piú Program Stream in un unico
flusso, detto Transport Stream (TS). Mentre il Program Stream contiene pacchetti di lunghezza variabile, il TS é
costituito da pacchetti di lunghezza fissa, pari a 188 byte. Ciascun pacchetto del TS contiene un campo header di
lunghezza variabile, ma con valore minimo di 4 byte, ed un campo dati. Il TS Packet Header contiene sempre un
primo byte di sincronizzazione (pari a 47HEX , ovvero 01000111), un flag di errore dallo strato di trasporto, ed un
campo di 13 bit detto Packet Identifier, o PID. Opzionalmente, il TS Packet Header puó contenere un Adaptation
Field. In tale campo puó comparire l’informazione detta Program Clock Reference, di 33+9=42 bit, utilizzata per
sincronizzare il clock di sistema (System Time Clock, STC) a 27 MHz del decodificatore6.4 . Il PCR é trasmsso
periodicamente ogni 0.1s, e la sincronizzazione é operata misurando la differenza fra PCR successivi decodificati e
confrontandola con il numero di cicli successivi eseguiti dal clock di sistema nello stesso intervallo di tempo.
Il TS consente la multiplazione di uno (Single Program TS, SPTS) o più programmi (Multi Program TS, MPTS)
in un singolo stream6.5 . Ogni programma, a sua volta, contiene piú stream elementari (video, audio, dati). Ciascuno
stream é a sua volta suddiviso in un certo numero di pacchetti del TS. Pertanto, tutti i pacchetti di uno stream di
uno stesso programma saranno marcati dallo stesso PID. A partire dal PID di un pacchetto, é possibile ricostruire il
corretto flusso di appartenenza, mediante un meccanismo di mappatura denominato Program Specific Information,
PSI.
Il PSI é composto delle seguenti tabelle,:
• Program Association Table (PAT);
• Program Map Table (PMT);
• Conditional Access Table (CAT);
Le tabelle del PSI sono rappresentate mediante strutture sintattiche dette Sections6.6 , a loro volta suddivise in
differenti pacchetti del TS.
La PAT, che é sempre trasmessa in pacchetti con PID uguale 0, é una tabella che associa ad ogni programma
la sua PMT. La PAT é suddivisa, ai fini della trasmissione, in pi ú pacchetti non consecutivi del TS, in modo da
minimizzare i dati persi in caso di errori su alcune porzioni del TS.
6.3 Fra
i dati convogliati dal Program Stream é registrato periodicamente il valore assunto da un contatore dei cicli del System Time Clock a 27
MHz del codificatore, mediante un campo a 42 bit detto System Clock Reference.
6.4 Si osserva che tale informazione puó essere presente anche nel PS Header, sotto il nome di system Clock Reference, SCR
6.5 Nel caso di MPTS, ad ogni programma puó essere associato un distinto PCR, ovvero alcuni programmi possono condividere lo stesso PCR.
6.6 Le section utlizzate per le tabelle PSI specificate in MPEG hanno dimensione massima 1K byte mentre le private sections hanno dimensione
massima 4K bytes.
6.3. LO STANDARD MPEG-2 SYSTEM
61
La Program Map Table (PMT) identifica un programma, ed associa ad ogni stream (audio, video, dati) del
programma il valore del relativo PID; lo stream sará pertanto ricostruito estraendo dal TS tutti i pacchetti caratterizzati
da tale PID. La PMT segnala anche il PID dei pacchetti contenenti la descrizione del STD, e il PID dei pacchetti
contenenti il PCR relativo al programma.
La CAT, che é sempre trasmessa in pacchetti con PID uguale a 1, contiene informazioni relative al sistema di
scrambling e cifratura6.7 .
Accanto al PSI, in ambito DVB-ETSI é stato definito il sistema detto Service Information, che contiene altre tavole
descrittive dei servizi offerti mediante il trasferimento di informazione, anche testuali e grafiche, per la navigazione
fra i differenti programmi. Fra le altre citiamo
• la Network Information Table (NIT), che convoglia informazione su piú di un TS,
• la Event Information Table (EIT) che convoglia informazione sui singoli eventi programati.
• la IP/MAC Notification Table (INT) che convoglia sui flussi dati IPMAC nel TS.
6.3.3
Il trasferimento di dati nel Transport Stream MPEG-2
Lo standard MPEG-2 prevede cinque profili per il trasferimento dati, corrispondenti a diversi servizi: il profilo Data
piping, utilizzato in assenza di relazione temporale con i dati dei PES, il profilo Data streaming, utilizzato in presenza
di relazione temporale con i dati dei PES, i profili Data carousel, Object carousel, per la trasmissione periodica di
dati di servizio, e il profilo Multi-protocol encapsulation (MPE), che supporta dati di differente protocollo.
Il profilo MPE consente la diffusione di dati su TS MPEG-2 in analogia alla distribuzione di dati su una
rete Ethernet. In particolare, il profilo MPE incapsula i dati all’interno di strutture sintattiche dette DVB Section,
caratterizzate da lunghezza variabile fino ad un massimo di 4096 byte. Ogni DVB Section é poi convogliata da
pacchetti del TS MPEG-2, caratterizzati da un assegnato PID. La Fig. 6.4 descrive le componenti sintattiche che
concorrono alla MPE.
I primi byte costituiscono il Section Header contenente table id, section syntax indicator, private indicator, section
length, che identificano rispettivamente il tipo di section, la sintassi, flag proprietari e la lunghezza della section. Il
campo MAC address, di 6x8 bit, contenente l’indirizzo MAC del destinatario, é seguito da ulteriori campi di servizio
(payload e address scrambling control, LLC SNAP flag 6.8, current next indicator); i campi section number, last
section number, rispettivamente, numerano la sezione attuale e l'ultima che trasporta il pacchetto IP. Successivamente
la Section contiene il Pacchetto IP, seguito da byte di riempimento opzionali (stuffing byte) tali che ogni pacchetto
IP sia rappresentato da un numero intero di pacchetti del TS MPEG-2, e 32 bit di parit á.
6.7 I
sistemi di Conditional Access effettivamente utilizzati sono proprietari; tipicamente prevedono che la CAT associ a ciascun programma
cifrato il PID dei pacchetti contenenti un’informazione di controllo detta Entitlement Management Message, circa lo stato di sottoscrizione dei
singoli utenti. Per ciascun programma cifrato, la relativa PMT convoglia il PID dei pacchetti contenenti una informazione detta Entitlement
Control Message, complementare all’EMM. Il Conditional Access Subsystem del decodificatore (Smart Card) gestisce entrambe le informazioni
abilitando o meno l’accesso ai programmi cifrati in base allo stato di sottoscrizione dell’utente.
6.8 Segnala la presenza di IEEE 802.3 Logical Link Control/ Sub Network Access Protocol Encapsulation per Ethernet; vale 0 per pacchetti IP.
62CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Figura 6.4: Multi Protocol Encapsulation.
6.4
Distribuzione del Transport Stream MPEG-2 mediante piattaforma
DVB
Il DVB é un consorzio di origine europea che coinvolge diversi operatori del mercato del broadcasting (broadcaster,
manifatturiere, operatori delle telecom, sviluppatori di software, enti regolatori) nella definizione di specifiche tecniche
per i sistemi di distribuzione di video audio e dati, con prevalente riferimento a servizi di tipo televisivo. Le specifiche
tecniche DVB, recepite in ambito ETSI, definiscono i formati per la distribuzione di servizi televisivi via satellite, via
cavo e via digitale terrestre (DVB-S, DVB-C, DVB-T). Inoltre, il DVB ha definito lo standard per la trasmissione,
basata su pila protocollare IP, di video audio e dati su terminali mobili (DVB-H).
6.4.1
I sistemi DVB-S, DVB-C, DVB-T
I documenti ETSI [3, 4, 5], che recepiscono l’attivitá di specifica tecnica svolta in ambito DVB, definiscono le
specifiche tecniche per la tramissione del TS MPEG2 su diversi mezzi trasmissivi, con particolare riguardo alla
codifica di canale e alla modulazione. I mezzi trasmissivi interessati sono il canale radio satellitare, alle frequenze
di 11-12 GHz, il canale radio terrestre, nelle bande UHF (300 MHz, 3 GHz), VHF (30 MHz, 300 MHz), il cavo
coassiale a radio-frequenza, a frequenze portanti da 50-100 MHz fino a 500 MHz. Le specifiche definiscono la
trasformazione fra i dati di ingresso, assunti nel formato TS MPEG-2, nel segnale di uscita, espresso nella forma
di inviluppo complesso del segnale di banda base. La qualitá del segnale di uscita desiderata é dell’ordine di un
evento di errore ogni ora di trasmissione (Quasi Error Free, QEF), corrispondente ad un BER = 10−10 , 10−11
Descriveremo concisamente nel seguito le tecniche di codifica di canale e modulazione adottate nei differenti mezzi
trasmissivi.
La codifica di canale
La codifica di canale prevede tre stadi comuni a tutti i mezzi trasmissivi, dati da un primo stadio di randomizzazione,
un secondo stadio costituito da un codificatore a blocchi, e un terzo stadio di interleaving. Gli stadi operano sui
blocchi di 188 byte del TS.
Il randomizzatore realizza un’operazione di XOR bit a bit della sequenza dei byte di ingresso con una sequenza
6.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB
63
psudocasuale, preservando il primo byte che é costituito da una parola di sincronizzazione, pari a 47HEX . L’unica
modifica della parola di sincronizzazione é rappresentata da un’inversione bit a bit (47HEX = B8HEX ), operata
ogni 8 pacchetti TS, al fine di introdurre un sincronismo di trama. La randomizzazione é operata anche quando il
pacchetto TS non convoglia informazione, al fine di evitare l’emissione di una portante nonmodulata.
Il codificatore a blocchi é un codice sistematico (204, 188) che opera sull’intero pacchetto TS aggiungendovi
16 byte di parit á, ed ha capacitá di correzione di errore T=8; in particolare, il codice é un codice di Reed-Solomon
derivato da un codice (255,239) 6.9 .
Il codificatore a blocchi é seguito da un interleaver di tipo convoluzionale. Per preservare la sincronizzazione del
TS, anche l’interleaver non altera la posizione del byte di sincronizzazione nella stringa.
Per la trasmissione via cavo, la codifica di canale é limitata agli stadi descritti.
Per la codifica satellitare e terrestre, é presente un codificatore convoluzionale, derivato mediante punturazione
da un codice di rapporto di codice Rc = 1/2, lunghezza di vincolo K = 76.10, e distanza libera dfree = 10. Il
codificatore puó quindi introdurre ridondanza in misura variabile, ottenendo una maggiore o minore protezione dei
dati di ingresso. La Tabella 6.4 presenta le diverse alternative in termini di rapporto di codice e di corrispondente
distanza libera.
Codificatore convoluzionale
Rapporto di codice Rc
Distanza libera dfree
1/2
10
2/3
6
3/4
5
5/6
4
7/8
3
Tabella 6.4: Rapporto di codice R c e distanza libera d f ree del codificatore convoluzionale adottato nella distribuzione via
satellite e via rete terrestre.
Per la trasmissione via satellite, la codifica di canale é limitata agli stadi descritti. Per la trasmissione digitale terrestre,
la codifica prevede un ulteriore interleaving, finalizzato a distribuire l’informazione codificata non solo su intervalli
di tempo differenti, ma anche su celle tempo-frequenza differenti. La modalitá con cui é operato tale interleaving
dipende strettamente dal tipo di modulazione, e sará pertanto descritta dopo l’esposizione di quest’ultima.
La modulazione
In questo paragrafo, indichiamo il segnale modulato intorno alla portante f0 , con
s(t) = sc (t) cos(2πf0 t) − ss (t) sin(2πf0 t)
l’inviluppo complesso del segnale con
s(t) = sc (t) + jss (t), s(t) = {s(t) exp j2πf0 t}
6.9 I
codici di Reed-Solomon sono codici non binari N, K operanti su simboli di k bit, caratterizzati da N = 2k − 1, K = 0, · · · , N − 1,
Dmin = N − K + 1, e capacitá di correzione d’errore pari a floor(Dmin − 1)/2.
6.10 Il codice, a 64 stati, si basa sugli ultimi 6 bit piú il bit attuale.
64CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Nella modulazione numerica per i mezzi trasmissivi coassiale e satellitare, il formato di modulazione adottato é
di tipo QAM. Pertanto l’inviluppo complesso assume la forma
+∞
s(t) =
ck gT (t − kT )
k=−∞
dove i simboli ck sono estratti da una costellazione QPSK nel caso di canale satellitare, e da una 16-QAM, 32-QAM
o 64-QAM nel caso di cavo coassiale. Nel caso del cavo coassiale i due bit piú significativi di ciascun simbolo sono
codificati differenzialmente ed associati ad un salto di quadrante 6.11 , cosicché il ricevitore, ai fini della codifica, non
deve conoscere la rotazione di fase assoluta introdotta dal canale, ma solo la fase a meno di un’ambiguitá di π/2,
ció che semplifica l’operazione di sincronizzazione. In entrambi i casi il filtro di trasmissione gT (t) presenta una
caratteristica a radice di coseno rialzato, ovvero


T 1/2


1/2

1 1
1
GT (f) =
(|f| − fN )
T 1/2
− sin 2π

2 2
4γfn



0
|f| ≤ fN (1 − γ)
fN (1 − γ) ≤ |f| ≤ fN (1 + γ)
|f| ≥ fN (1 + γ)
Tale scelta consente di eliminare l’Interferenza Intersimbolica al ricevitore riducendo al minimo l’impatto del rumore
termico, quando il canale sia ideale ed il filtro di ricezione sia adattato al filtro di trasmissione. Nel caso di canale
satellitare il valore di γ é fissato a 0.35. Nel caso di cavo coassiale, γ = 0.15, al fine di minimizzare la banda
occupata dal segnale e ridurre l’effetto della distorsione lineare introdotta dal canale.
Nella modulazione numerica per la rete di distribuzione digitale terrestre, il formato di modulazione adottato é di
tipo OFDM. L’inviluppo complesso assume la forma
s(t) =
+∞
sk (t − kT )
k=−∞
(0)
(1)
(N−1)
sk (t) = (ck + ck expj2π∆ft + · · · + ck
expj2π(N−1)∆ft )gT (t)
(i)
dove i simboli ck , i = 0, · · · N − 1 sono estratti da una costellazione QPSK, 16-QAM, o 64-QAM, uniforme o non
uniforme. Ció equivale alla modulazione contemporanea, in un intervallo di tempo di durata T , di N portanti alle
frequenze f0 + i∆f, i = 0, · · · N − 1. Gli spettri modulati intorno alle frequenze f 0 + i∆f, i = 0, · · · N − 1, dette
sottoportanti OFDM, sono sovrapposti, e i singoli flussi sono demodulabili sotto opportune condizioni sul filtro di
trasmissione gT (t) e sulla frequenza ∆f. In particolare, si assuma

 1, −∆ ≤ t ≤ Tu
gT (t) =
 0, altrove
con ∆ + Tu = T . La famiglia di funzioni utilizzata in trasmissione é dunque
ϕn (t) = gT (t) expj2πn∆ft , n = 0, · · · , N − 1.
Sia inoltre
gR (t) =
6.11 In

 1, 0 ≤ t ≤ Tu
 0, altrove
particolare, alla coppia 00 si associa la permanenza nello stesso quadrante del simbolo precedente, alla coppia 01 un salto di +π/2, alla
coppia 10 un salto di −π/2, alla coppia 11 un salto di +π.
6.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB
65
Scegliendo ∆f = 1/Tu é possibile definire la famiglia di funzioni in ricezione
ψm (t) = gR (t) exp−j2πm∆ft , m = 0, · · · , N − 1
ortogonali alla famiglia ϕn (t), n = 9, · · · , N − 1 sull’intervallo di simbolo T . Sotto tali condizioni, é assicurata
l’invertibilit á dell’operazione di modulazione, gli N flussi possono essere demodulati, e gli N simboli trasmessi
nell’intervallo T ricostruiti.
Tanto la fase di modulazione che di demodulazione si avvalgono di tecniche numeriche computazionalmente
molto efficienti. Consideriamo infatti i campioni dell’inviluppo complesso s(t), estratti con passo di campionamento
Tu
Tc =
, facendo riferimento, per semplicitá notazionale, all’intervallo k = 0:
N
def
sm = s(mTc ) = c(0) + c(1) expj2π∆fmTc + · · · + c(N−1) expj2π(N−1)∆fmTc =
N−1
2π
j
im
c(i) exp N
i=0
Nell’intervallo [0, Tu ), ovvero per m = 0, · · · N − 1, i valori assunti dai campioni dell’inviluppo complesso coincidono con una trasformata numerica (Inverse Discrete Fourier Transform) della sequenza complessa c(0), · · · c(N−1) .
Nell’intervallo [−∆, 0), i valori dei campioni coincidono con quelli giá calcolati nell’intervallo [Tu − ∆, Tu ), perché il segnale é periodico di Tu . In ricezione é sufficiente campionare l’inviluppo complesso in [0, Tu) e operare
una trasformazione numerica (DFT) per recuperare la sequenza trasmessa. I campioni ridondanti trasmessi durante
l’intervallo di guardia evitano che eventuali code dovute a risposta non ideale del canale alterino i campioni dell’intervallo utile. Inoltre, tale ridondanza puó essere sfruttata per stima ed equalizzazione di canale nel caso di distorsione
lineare. Infatti, un canale linearmente distorcente si presenta in forma di differente guadagno H(f0 + i∆f) sulle
diverse sottoportanti. Se tutte le sottoportanti fossero utilizzate per la modulazione, il segnale occuperebbe una banda
superiore a N ∆f; pertanto al fine di limitare la banda occupata dal segnale, un certo numero di sottoportanti agli
estremi della banda sono lasciate non modulate. Nella rete digitale terrestre, la banda occupata dal segnale a radio
frequenza puó essere di 8 MHz, 7 MHz, o 6 MHz, in funzione del clock di campionamento Tc prescelto6.12.
Il segnale puó nominalmente convogliare N = 2K o N = 8K sottoportanti, distanti circa 4KHz o 1KHz e con
intervallo di simbolo differente Tu2K ≈ 250µs e Tu8K ≈ 1000µs. Al fine di limitare la banda effettivamente occupata
a N/Tu solo le 1705 o 6817 sottoportanti centrali sono utilizzate in trasmissione. Il tempo di guardia ∆ puó essere
1/4, 1/8, 1/16, 1/32 dell’intervallo utile T u . Infine, solo N = 1512 o N = 6048 sottoportanti sono utilizzate per
trasmettere dati utili.
Le rimanenti sottoportanti si suddividono in
• portanti per la segnalazione dei parametri di trasmissione (Transmission Parameter Signaling, TPS)
• portanti pilota per le procedure di stima e di sincronizzazione.
Le portanti TPS sottoportanti sono in numero di 17 (2K) o 68 (8K), sono modulate in modalitá DPSK, e trasmettono
contemporanemente lo stesso bit di informazione, in diversitá di frequenza. In 68 simboli OFDM6.13 sono pertanto
trasmessi i 68 bit di TPS, che includono informazioni quali la costellazione utilizzata 6.14 , l’intervallo di guardia, il
rate del codice convoluzionale, il modo di trasmissione 2K o 8K, e alcuni bit di paritá.
6.12 Infatti,
al variare di Tc varia Tu = 1/∆f e di conseguenza la banda occupata a radiofrequenza, approssivamente uguale a N ∆f .
di 68 simboli OFDM prende il nome di trama OFDM.
6.14 Nel caso di costellazioni non uniformi é segnalato anche il fattore di non uniformitá.
6.13 L’insieme
66CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Le portanti pilota sono allocate in modalitá continua (su frequenze costanti da un simbolo OFDM all’altro) o
dispersa -scattered - (su frequenze variabili da un simbolo OFDM all’altro) e trasmesse a livello di potenza doppia
rispetto alla media nominale-boosted power level- e trasmettono la stessa sequenza pseudocasuale di training con fase
iniziale differente da pilota a pilota; tale training é utilizzato ai fini della stima di canale e della sincronizzazione di
tempo e frequenza.
L’interleaving operato nel sistema di trasmissione digitale terrestre si basa sulla conversione seriale/parallela del
bitstream da trasmettere in 2, 4 o 6 flussi paralleli, nel caso di QPSK, 16-QAM, 64-QAM rispettivamente. Su
ciascuno dei flussi é operata una permutazione su blocchi di 126 bit consecutivi. I 2, 4 o 6 flussi di 126 bit sono
quindi raggruppati in 126 simboli QPSK, 16-QAM, o 64 QAM. Gruppi di 126 simboli sono raggruppati fino ottenere
tanti simboli quanti sono i simboli utili trasportati da un singolo simbolo OFDM, ovvero 12 gruppi da 126 simboli
nel caso 2k (1512=12x126) o 48 gruppi da 126 simboli nel caso 4k (6048=48x126). Su tali gruppi é infine operato
un interleaving sulla profondit á del simbolo OFDM. Pertanto, l’interleaving effettuato su tutti i simboli convogliati
dal simbolo OFDM consente la dispersione dell’informazione originariamente convogliata dal bitstream sull’intera
cella tempo-frequenza relativa a tale simbolo.
6.4.2
Il sistemi DVB-H
La Raccomandazione ETSI [6] definisce le specifiche tecniche per la distribuzione di audio, video e dati a pacchetto
su terminali mobili (handheld).
Il formato di codifica di canale é lo stesso specificato per il DVB-T, con poche significative differenze, legate alla
circostanza che il terminale ricevente mobile soffre di limitazioni di alimentazione ed é affetto in maggiore misura
da disturbi trasmissivi (cammini multipli, effetto Doppler) rispetto a quanto avviene nel daso DVB-T. Pertanto, il
DVB-H prevede
• un meccanismo di ricezione su brevi intervalli di tempo, alternati da periodi di disattivazione, detto time slicing,
finalizzato a ridurre il consumo di alimentazione6.15 (mandatorio)
• un’ulteriore codifica di canale, detta MPE-FEC (opzionale)
• l’opzione di modulazione OFDM a 4K portanti, che consente di progettare la copertura radio in modo piú
flessibile per fronteggiare echi, cammini multipli e effetto Doppler (opzionale)
• l’opzione di intearleaving su 48 gruppi di 126 simboli anche per le modulazioni 2k e 4k, corrispondente
all’interleaving su 4 o 2 simboli OFDM (opzionale)
Il meccanismo di Time Slicing consente ad una sorgente a velocitá di cifra fb di inviare dati a burst di dimensione
B ≤ 2M b utilizzando il Transport Stream ad un rate R ≥ f b . Pertanto i dati vengono inviati in ridotti intervalli di
durata δON = B/R; dopo l’invio il ricevitore si disattiva per un intervallo δOF F tale che fb = B/(δON + δOF F ),
riattivandosi unicamente circa 200 ms prima del successivo burst. La durata δOF F del periodo di spegnimento é
un’informazione trasmessa congiuntamente al burst. Nel caso tipico che R fb la percentuale di tempo in cui il
ricevitore é attivo é significativamente ridotta.
La codifica di canale MPE-FEC prevede l’invio all’interno dello stesso burst tanto di dati incapsulati MPE quanto
di dati FEC ottenuti mediante codifica di Reed Solomon (255,191). La generazione dei dati FEC é realizzata scrivendo
6.15 Il
time slicing puó anche consentire il seamless handover fra TS erogati su celle radio adiacenti.
6.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB
67
Figura 6.5: Inner Interleaving dei sistemi DVB-T e DVB-H.
i pacchetti IP da codificare in una tabella di 191 colonne e numero di righe Nr che assume valori compresi fra 256 e
10246.16. A ciascuna riga di 191 byte sono associati i 64 byte del codice Reed-Solomon. I byte del codice, in numero
di Nr × 64, sono infine letti per colonne e trasmessi nello stesso burst dei relativi pacchetti MPE. Tale meccanismo
di protezione, congiunto con il CRC previsto dal profilo MPE, consente la trasmissione affidabile in una gamma di
condizioni di canale (C/N, velocitá del mobile, shadowing, etc.) ben piú ampia di quella utilizzabile dal DVB-T.
Il rate di codice effettivamente utilizzato puó essere aumentato o diminuito mediante operazioni di padding sui dati
MPE ovvero di puncturing sui dati FEC.
6.16 Tale
parametro é statico ed assegnato, ed é notificato fra le informazioni del DVB/SI.
68CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Figura 6.6: Codifica MPE-FEC utilizzata nel DVB-H.
Bibliografia
[1] G. Scarano, “Dispense di elaborazione delle immagini”, infocom.uniroma1.it/˜ gaetano.
[2] B. G. Haskell, P. G. Howard, Y. A. LeCun, A. Puri, J. Ostermann, M.R. Civanlar, L. R. Rabiner, L. Bottou, and P. Haffner, “Image
and Video Coding-Emerging Standards and Beyond”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 8, No. 7, pp.
814-837, November 1998
[3] ETS 300 421, “Digital broadcasting systems for television, sound and data service; Framing structure channel coding and modulation for
11/12 GHz satellite services”, Dicembre 1994.
[4] ETS 300 429, “Digital broadcasting systems for television, sound and data service; Framing structure channel coding and modulation for
cable systems, Dicembre 1994.
[5] ETS 300 744, “Digital Video Broadcasting ; Framing structure channel coding and modulation for digital terrestrial television, Luglio 1999.
[6] ETS 302 304, “Digital Video Broadcasting ; Transmission Sysetm for handheld terminal (DVB-H), Luglio 1999.
[7] G. Faria, J. A. Henriksson, E. Stare, P. Talmola, “ DVB-H: Digital Broadcast Services to Handheld Devices”, IEEE Proceedings, Vol.
94, No. 1, pp. 194-209, January 2006
[8] IETF RFC 4259: A framework for Transmission of IP Datagrams over MPEG-2 Networks, Montpetit M. J. et al., November 2005.
[9] M.G. Di Benedetto, P. Mandarini, “Comunicazioni Elettriche”, Edizioni Ingegneria 2000.
69