Servizi di diffusione televisiva: lo standard MPEG

Transcript

Servizi di diffusione televisiva: lo standard MPEG
Capitolo 7
Servizi di diffusione televisiva: lo standard
MPEG-2 e il Digital Video Broadcasting
7.1
Lo standard MPEG-2 per servizi multimediali diffusivi
Lo standard MPEG-2, sviluppato dal Moving Pictures Experts Group (MPEG) dell’ISO
7.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 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).
7.2
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 7.2 . La riduzione della ridondanza
spaziale é realizzata mediante tecniche a trasformate, quella temporale mediante motocompensazione; tale metodologia
prende il nome di codifica ibrida a trasformata.
7.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.
7.2 Lo standard di codifica 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.
64
7.2. LO STANDARD MPEG-2 VIDEO
65
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 cosi’ 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
codificatore. Tuttavia, a titolo di riferimento, lo standard suggerisce l’uso delle matrici QINTRA [k1 , k2] ,QINTER [k1 , k2 ]
riportate in Tabs.7.1,7.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
66CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
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 7.1: Schema di principio del codificatore MPEG.
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 7.1: Passi di quantizzazione QINTRA [k1 , k2 ] per la luminanza dei quadri INTRA: esempio.
7.2. LO STANDARD MPEG-2 VIDEO
67
Figura 7.2: Esempio di Group of Pictures.
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 7.2: Passi di quantizzazione QINTER [k1 , k2 ] per i residui di luminanza dei quadri INTER (P o B): esempio.
7.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
del buffer, tale informazione è utilizzata per controllare il processo di codifica (quantizzazione, inserimento di quadri
68CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Figura 7.3: Modello del buffer in uscita al codificatore e del buffer in ingresso al decodificatore.
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 descritto mediante un modello detto Video Buffering Verifier(VBV)7.3 . 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.
7.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
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 8.4
riporta i differenti profili MPEG-2.
Per ciascun profilo, si identificano decodificatori di differente livello di complessitá, per ciascuno dei quali sono
7.3 In
alternativa, il modello del decodificatore ideale puó essere semplicemente descritto da parametri caratteristici della sessione; tale
rappresentazione semplificata prende il nome di Leak Method ed adotta parametri numerici dipendenti dalla coppia profilo-livello utilizzata.
7.3. LO STANDARD MPEG-2 SYSTEM
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
69
I,P,B, non scalabile, campionamento 4:2:0 di informazioni destra e sinistra (TV 3D)
Tabella 7.3: Profili del codec MPEG-2.
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).
7.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.
7.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.
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 tempi7.4. Questo formato puó essere utilizzato direttamente in
7.4 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 33+9=42 bit detto System Clock Reference.
70CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
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.
7.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 decodificatore7.5 . 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 stream7.6 . 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 Sections7.7 , 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.
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.
7.5 Si
osserva che tale informazione corrisponde all’informazione presente nel PS sotto il nome di System Clock Reference, SCR
caso di MPTS, ad ogni programma puó essere associato un distinto PCR, ovvero alcuni programmi possono condividere lo stesso PCR.
7.7 Le section utilizzate per le tabelle PSI specificate in MPEG hanno dimensione massima 1K byte; altre tavole definite in MPEG-2, dette private
7.6 Nel
sections, o anche DVB Section, hanno dimensione massima 4K bytes.
7.3. LO STANDARD MPEG-2 SYSTEM
71
La CAT, che é sempre trasmessa in pacchetti con PID uguale a 1, contiene informazioni relative al sistema di
scrambling e cifratura7.8 .
Accanto al PSI, in ambito DVB-ETSI é stato definito il sistema detto Service Information, che contiene altre
tavole
7.9
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.
7.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 opportune strutture sintattiche ( DVB Section)
caratterizzate da lunghezza variabile fino ad un massimo di 4096 byte. Una DVB Setcion che convoglia un pacchetto
MPE é detta anche MPE Section; ogni MPE Section é poi convogliata da pacchetti del TS MPEG-2, caratterizzati
da un assegnato PID. La Fig. 7.4 descrive le componenti sintattiche che concorrono alla MPE.
Figura 7.4: Multi Protocol Encapsulation.
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
7.8 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.
7.9 Tali tavole sono convogliate all’interno delle private sections, o DVB Sections.
72CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
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 flag7.10, current next indicator); i campi section number, last
section number, rispettivamente, numerano la sezione attuale e l'ultima che trasporta il pacchetto. Successivamente
la Section contiene il Pacchetto dati, 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á.
7.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).
7.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
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
7.10 Segnala
la presenza di IEEE 802.3 Logical Link Control/ Sub Network Access Protocol Encapsulation per Ethernet; vale 0 per pacchetti IP.
7.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB
73
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) 7.11 .
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 = 77.12, 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 7.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 7.4: Rapporto di codice Rc e distanza libera df 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}
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=−∞
7.11 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.
7.12 Il codice, a 64 stati, si basa sugli ultimi 6 bit piú il bit attuale.
74CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
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 7.13 , 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
GT (f) =
⎧
⎪
T 1/2
⎪
⎪
⎨
⎪
⎪
⎪
⎩
T 1/2
|f| ≤ fN (1 − γ)
1/2
1 1
1
(|f| − fN )
− sin 2π
2 2
4γfn
fN (1 − γ) ≤ |f| ≤ fN (1 + γ)
0
|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 f0 + 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) =
⎧
⎨ 1, 0 ≤ t ≤ Tu
⎩ 0, altrove
Scegliendo Δf = 1/Tu é possibile definire la famiglia di funzioni in ricezione
ψm (t) = gR (t) expj2πmΔft , m = 0, · · · , N − 1
7.13 In
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 +π.
7.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB
75
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 prescelto7.14.
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 Tu . 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 OFDM7.15 sono pertanto
trasmessi i 68 bit di TPS, che includono informazioni quali la costellazione utilizzata7.16 , l’intervallo di guardia, il
rate del codice convoluzionale, il modo di trasmissione 2K o 8K, e alcuni bit di paritá.
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
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.
7.16 Nel caso di costellazioni non uniformi é segnalato anche il fattore di non uniformitá.
7.14 Infatti,
7.15 L’insieme
76CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
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.
Figura 7.5: Inner Interleaving dei sistemi DVB-T e DVB-H.
7.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB
7.4.2
77
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 alimentazione7.17 (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)
• la possibilitá di occupare un canale a 5MHz
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 ≥ fb . 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 in MPE
sections quanto dei relativi dati FEC ottenuti mediante codifica di Reed Solomon (255,191) e incapsulati in DVB
sections dette MPE-FEC Sections. La generazione dei dati FEC é realizzata scrivendo i pacchetti IP da codificare
in una tabella di 191 colonne e numero di righe Nr che assume valori compresi fra 256 e 10247.18. 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
7.17 Il
7.19
.
time slicing puó anche consentire il seamless handover fra TS erogati su celle radio adiacenti.
parametro é statico ed assegnato, ed é notificato fra le informazioni del DVB/SI.
7.19 L’efficacia di tale codice é potenziata dalla integrazione con i bit di CRC delle MPE Sections mediante tecniche di erasure decoding.
7.18 Tale
78CAPITOLO 7. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING
Figura 7.6: Codifica MPE-FEC utilizzata nel DVB-H.

Documenti analoghi

Capitolo 6 Lo standard MPEG-2 e il Digital Video Broadcasting

Capitolo 6 Lo standard MPEG-2 e il Digital Video Broadcasting 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á dell...

Dettagli

Programma

Programma Quantizzatore di LLoyd-Max. Codifica del segnale (1D): codifica PCM, predizione lineare e codifica DPCM. Codifica basata su modelli autoregressivi Serie aleatorie autoregressive, equazioni di Yule-...

Dettagli