Sei sulla pagina 1di 18

Universit degli Studi di Bologna

Elaborazione Elettronica dei Segnali Digitali


Prof. Giorgio Baccarani

Esercitazione
Ing. Stefano Vitali Tel: 051 2093772 svitali@deis.unibo.it

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

Il corso di Eleborazione Elettronica dei Segnali Digitali si propone di illustrare le metodologie di trattamento dei segnali digitali nei moderni sistemi elettronici operanti in tempo reale, con particolare riferimento ai sistemi di telecomunicazioni, di automazione industriale e, pi in generale, ai sistemi di elaborazione digitale dellinformazione. Le esercitazioni contenute in queste slides si propongono di integrare il corso con esperienze pratiche di implementazione degli algoritmi di signal processing su un DSP (Digital Signal Processor) di Texas Instruments a disposizione nel laboratorio. Le esercitazioni avranno una parte teorica in cui si apprenderanno le nozioni sullarchitettura e gli strumenti di creazione del software del DSP e una parte pratica che prevede lutilizzo del DSP per realizzare progetti di signal processing riguardanti algoritmi applicati alle telecomunicazioni. Sulla pagina web delle esercitazioni del corso (si accede dalla pagina personale del prof. Baccarani) si possono trovare tutte le slides e il link ai manuali del DSP.

Obiettivi

Utilizzare una scheda hardware ed alcuni tools software per progettare ed eseguire programmi software per il DSP TMS320C6711 di Texas Instruments Gli strumenti a disposizione sono: 1. DSP Starter Kit (DSK) 2. Code Composer Studio (CCS) 3. Strumenti di laboratorio (generatore di funzioni, oscilloscopio) 4. MATLAB
Ci saranno esempi teorici numerati (es: ASM1, ASM2 per lassembler) ed esempi pratici chiamati LAB#
Elaborazione Elettronica dei Segnali Digitali - Esercitazione 2

Lo starter kit una scheda prodotta da Texas Instruments su cui montato il DSP e che interfaccia lo stesso DSP con diverse periferiche e memorie. La scheda consente un rapido collegamento al PC per la programmazione del DSP. Il software da caricare ed eseguire sul DSP viene prodotto utilizzando un programma sempre di Texas Instruments chiamato Code Composer Studio. Sulla scheda, il DSP interfacciato ad un codec audio tramite le porte seriali del processore ed il codec interfacciato con il mondo esterno attraverso due jack audio (uno di ingresso ed uno di uscita) presenti sulla scheda. Il codec sar molto utilizzato nel corso delle esercitazioni collegando ai jack un generatore di funzioni ed un oscilloscopio. Sar utilizzato anche Matlab per produrre i coefficienti dei filtri digitali che si implementeranno e per altri calcoli.

Indice prima parte

Architettura del DSP e struttura del DSK Ambiente di sviluppo Assembler Strumenti Matlab Esempio di FIR

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

Entro le prime quattro settimane si dovr essere in grado di far eseguire al DSP programmi completi in Linear Assembler. Per far questo si comincer con una panoramica sulla struttura interna del chip del DSP e sullarchitettura della scheda, poi si dar uno sguardo abbastanza approfondito al software di sviluppo del codice per il DSP ed in seguito allassembler del DSP stesso; infine si vedranno alcuni strumenti in Matlab utili per creare velocemente alcuni esempi di codice come i filtri FIR. La prova intermedia consiste nellimplementazione di alcuni algoritmi su DSP di non elevata difficolt.

Indice seconda parte

Programmazione ed uso del codec Modulazione/Demodulazione AM e FM Generazione di sequenze binarie Segnali PAM Modulazione/Demodulazione QAM Esempi di filtri con lanalizzatore di spettro PROGETTO FINALE

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

La seconda parte delle esercitazioni consiste in tutta una serie di argomenti teorici legati ad algoritmi per telecomunicazioni utili per lo svolgimento del progetto finale.

Perch i DSP

INTRODUZIONE
Lelaborazione analogica si serve ad esempio di: resistenze, induttanze e capacit ma le tolleranze, la temperatura, le variazioni di tensione e le vibrazioni meccaniche possono fortemente influenzare le prestazioni effettive dei circuiti analogici. Lelaborazione digitale fornisce prestazioni esattamente predicibili ed ormai cos potente che a volte molto difficile, se non impossibile, per i circuiti analogici raggiungere le stesse prestazioni.
Elaborazione Elettronica dei Segnali Digitali - Esercitazione 5

La predicibilit si raggiunge non solo per il fatto che il DSP esegue un algoritmo specifico e noto ma anche studiando gli errori numerici legati alla rappresentazione binaria interna dei segnali.

I DSP: processori di segnale

ADC

DSP

DAC

Campionamento di un segnale analogico:


A

Molti algoritmi per DSP si basano sulla somma di prodotti:


N

Y =
t

i = 1

ai * xi

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

- I DSP si utilizzano quando occorre elaborare digitalmente i segnali sfruttando un certo algoritmo. Per fare questo occorre innanzitutto rappresentare il segnale in ingresso in forma digitale attraverso un ADC e riconvertire il segnale elaborato dal DSP in forma analogica attraverso un DAC. - Poich il segnale analogico in ingresso viene quantizzato e campionato, lintervallo di tempo tra due campioni successivi rappresenta il tempo massimo in cui lalgoritmo deve essere eseguito dal DSP; altrimenti il segnale in uscita non corretto perch alcuni campioni in uscita sono prelevati prima che il DSP abbia terminato di calcolarli (mancato rispetto della condizione di elaborazione in realtime). - La maggior parte degli algoritmi contiene un elemento fondamentale: la somma di prodotti. In queste esercitazioni vedremo come implementare algoritmi legati al mondo delle telecomunicazioni attraverso il DSP di Texas Instruments scelto.

DSP e GPP

I DSP (Digital Signal Processors) sono CPU progettate appositamente per svolgere calcoli (somme e prodotti). I DSP si utilizzano quando importante: Ridurre il costo Ridurre le dimensioni Ridurre il consumo di potenza Elaborare in real-time i segnali I GPP (General-Purpose Processors) si utilizzano quando occorrono: Quantit grandi di memoria Sistemi operativi complessi
Elaborazione Elettronica dei Segnali Digitali - Esercitazione 7

I GPP soprattutto non sono progettati per eseguire algoritmi nel rispetto della condizione di elaborazione in real-time.

Alcuni vantaggi e svantaggi dei DSP

I segnali in alta frequenza non possono essere elaborati in digitale per due ragioni: 1. I convertitori A/D non possono campionare troppo in fretta 2. Lapplicazione pu essere facilmente troppo complessa per poter essere elaborata in real-time Con i DSP diventa molto semplice cambiare, correggere e aggiornare le applicazioni I DSP inoltre consentono di ridurre la sensibilit al rumore, il numero di chip, il tempo di sviluppo, il costo e il consumo di potenza
Elaborazione Elettronica dei Segnali Digitali - Esercitazione 8

Allo stato attuale, campionare ed elaborare segnali a frequenze troppo elevate (molti Ms/s o addirittura Gs/s) comporta consumi di potenza spropositati. Avere la possibilit di gestire direttamente in digitale segnali a frequenze molto alte a costi accettabili implicherebbe un passo avanti fondamentale nelle prestazioni e capacit dei sistemi di telecomunicazione.

Considerazioni a livello di sistema

Interfacciamento

Performance Potenza

Dimensioni

Programmazione Interfacciamento Debugging

Facilit duso

Costi

Integrazione
Memoria Periferiche

Costo di dispositivo Costo di sistema Costo di sviluppo Time to market

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

Il DSP e le sue periferiche costituiscono un sistema molto complesso che per deve funzionare nellambito di stringenti specifiche in termini di tempo di elaborazione e trattamento dei segnali. A livello di sistema dunque vi sono molti aspetti da considerare: Performance: lelaborazione real-time dei segnali la specifica pi importante per questi sistemi e deve essere sempre rispettata qualunque sia la complessit dellalgoritmo eseguito; Interfacciamento: in base al tipo di applicazione, il DSP deve poter scambiare segnali con una variet di oggetti esterni (computer, sensori/attuatori, codecs) e deve essere perci opportunamente provvisto di periferiche in grado di interfacciarsi con tutti questi oggetti; Dimensioni: il sistema finale, specialmente per le moderne applicazioni portatili, pu imporre limitazioni sulle dimensioni del sistema ed i DSP ben si prestano a soddisfare questa esigenza; Facilit duso: gli strumenti messi a disposizione per lo sviluppo di applicazioni basate su DSP oggi sono sistemi integrati di editing/debugging che consentono un rapidissimo sviluppo e collaudo del programma che implementa un certo algoritmo; questi strumenti poi portano con s pezzi di codice gi pronti per svolgere tutte quelle attivit legate alla programmazione dellhardware. Le periferiche del DSP sono facili da configurare (registri mappati in memoria) e possiedono moltissime modalit di funzionamento per permettere di interfacciare al processore qualsiasi tipo di sistema esterno; Costi: nella scelta del DSP pi adatto alla propria applicazione, sicuramente il costo rappresenta un parametro fondamentale. Vi sono diversi tipi di DSP in commercio appositamente progettati per applicazioni diverse e perci con pi o meno dotazioni hardware che comportano maggiori o minori costi di sviluppo e di sistema; Integrazione: anche lintegrazione di pi o meno periferiche o larchitettura della memoria nello stesso chip della CPU fortemente legato allapplicazione specifica (o alla classe di applicazioni) e vi sono numerose possibilit in commercio.

Attuali applicazioni dei DSP

Wireless / Cellular
Voice-band audio RF codecs Voltage regulation

HDD
PRML read channel MR pre-amp Servo control SCSI tranceivers

Consumer Audio
Stereo A/D, D/A PLL Mixers

DSP: Technology Enabler DTAD

Automotive
Digital radio A/D/A Active suspension Voltage regulation

Multimedia
Stereo audio Imaging Graphics palette Voltage regulation

Speech synthesizer Mixed-signal processor

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

10

Dallaudio digitale alle applicazioni multimediali, alla sintesi vocale, alle applicazioni nel campo automotive, ai controllori per hard disks, alle telecomunicazioni wireless, i DSP hanno contribuito in maniera fondamentale allo sviluppo di sistemi portatili piccoli ma potenti in grado di svolgere complesse funzioni con un ridotto consumo di potenza.

La famiglia TMS320 di Texas Instruments

Nella famiglia di DSP TMS320 ci sono diverse classi di processori che servono per differenti tipi di applicazioni
C2000 C5000 C6000

Basso costo
Sistemi di controllo Controllo motori Memorie di massa Sistemi di controllo digitali

Efficienza
Migliore MIPS per Watt / Dollar / Size Telefoni wireless Internet audio players Telecamere digitali Modems Telefonia VoIP

Performance e facilit duso


Applicazioni multicanale e multifunzione Comm Infrastructure Wireless Base-stations DSL Imaging Multi-media Servers Video
11

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

In base alle considerazioni svolte nelle due precedenti slides, riassumiamo qui le soluzioni che Texas Instruments offre oggi per le applicazioni fin qui presentate. In particolare la famiglia di DSP TMS320 raccoglie una grande variet di DSP in virgola fissa e in virgola mobile adatti per applicazioni molto diverse tra loro. Il DSP che utilizzeremo appartiene alla classe C6000.

La classe C6000 della famiglia TMS320


Software Compatible Performance
Floating Point Floating Point Multi-core MultiMulti-core C64x DSP C64x DSP 1.1 GHz 1.1 GHz

2nd Generation (Fixed Point)


C64x DSP C64x DSP
General Purpose

C6414 C6414

C6415 C6415

C6416 C6416

1st Generation
C6202

C62x C6713 C6205 C6201 C67x C6211 C6701 C6712 C6711

C6203 C6204

ce t es a n ig h f o r m H r Pe

C6411 C6411

3G Wireless Media Gateway Infrastructure

Fixed-point FixedFloating-point Floating-

[Fonte: Texas Instruments]

Time
12

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

Stabilita la famiglia e la classe di DSP (C6000) che sar utilizzata in questa esercitazione, in questa slide c un riassunto delle caratteristiche dei DSP di questa classe. Il grafico rappresenta i vari DSP della classe prodotti nel tempo la cui altezza proporzionale alle prestazioni di ciascun membro della classe. Tutti i DSP prodotti consentono una compatibilit allindietro con il codice delle versioni precedenti.

Fixed-Point e Floating-Point

richiesto un processore floating-point quando serve: Elevata precisione Ampio range dinamico Elevato rapporto segnale/rumore facilit di utilizzo Le limitazioni nelluso di DSP floating-point sono: Elevato consumo di potenza Minore velocit Costo e area maggiori
Elaborazione Elettronica dei Segnali Digitali - Esercitazione 13

Lutilizzo della virgola mobile comporta vantaggi e svantaggi. Per realizzare filtri digitali ad esempio non di norma conveniente utilizzare calcoli in virgola mobile perch i coefficienti possono efficacemente essere rappresentati con numeri interi. - La possibilit di rappresentare i numeri reali attraverso una mantissa ed un esponente rende la precisione della rappresentazione molto elevata (pari al pi piccolo numero rappresentabile) e rende il range dinamico molto ampio (pari al pi grande numero rappresentabile). - La precisione ed il range dinamico offrono poi un elevato rapporto segnale/rumore. I circuiti che occorrono per svolgere calcoli in virgola mobile sono molto pi complessi perch devono gestire operazioni come la normalizzazione dellesponente ed il calcolo separato della mantissa e dello stesso esponente; questo comporta un maggiore consumo di potenza, un maggiore tempo di elaborazione ed un maggiore consumo di area sul chip.

DSP general purpose e ASIC

I circuiti integrati per applicazioni specifiche (ASIC) sono progettati per eseguire certe particolari funzioni al massimo delle prestazioni possibili.
Vantaggi ASIC Svantaggi ASIC

Elevato throughput Elevato costo di sviluppo Area minima Minore flessibilit Basso consumo di potenza Elevati tempi di progetto Maggiore affidabilit Riduzione del rumore di sistema Costo produttivo minore

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

14

In questa slide, per completezza riportato un confronto tra DSP e dispositivi ASIC.

Le operazioni fondamentali: Somme di Prodotti

La somma di prodotti (SOP: Sum Of Products) lelemento chiave in molti algoritmi per DSP
Algorithm Finite Impulse Response Filter Equation

y ( n) =

a
k =0 M k =0 N

x(n k )

Infinite Impulse Response Filter

y ( n) =

a
k =0

x ( n k )+

b
k =1

y (n k )

Convolution

y ( n) =

x ( k ) h( n k ) x(n) exp[ j(2 / N )nk ]


n=0 N 1 x =0 N 1

Discrete Fourier Transform

X (k ) =

Discrete Cosine Transform

F (u ) =

c(u). f ( x). cos 2 N u(2 x + 1)


15

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

Come gi anticipato, la somma di prodotti tra le operazioni maggiormente utilizzate dagli algoritmi. Nella slide ci sono alcuni esempi. Tutti i DSP possiedono soluzioni hardware/firmware specifiche per svolgere il nucleo fondamentale di questa operazione detto MAC (Multiply and ACcumulate) che consiste in una moltiplicazione e la successiva accumulazione del risultato.

Esempio di prodotto

I DSP sono ottimizzati per fare somme e moltiplicazioni Le somme e le moltiplicazioni sono di norma svolte in hardware e in un solo ciclo
Hardware 1011 x 1110 10011010 Microcode 1011 x 1110 0000 1011. 1011.. 1011... 10011010

Cycle Cycle Cycle Cycle Cycle

1 2 3 4 5
16

[Fonte: Texas Instruments]

Elaborazione Elettronica dei Segnali Digitali - Esercitazione

Proprio perch la somma di prodotti molto sfruttata nei calcoli eseguiti dal DSP, le architetture delle CPU devono prevedere moltiplicatori realizzati in hardware in maniera da ottimizzare le prestazioni del sistema. La slide mostra schematicamente il confronto tra una moltiplicazione svolta in hardware ed una svolta via software.

Il DSK

Il DSP Starter Kit una scheda che interfaccia il DSP con alcune periferiche. Sulla scheda si trova:
DSP a 150MHz Porta parallela per linterfacciamento con il PC Codec a 16 bit 16Mb di memoria SDRAM esterna e 128kb di memoria flash 3 Switch e 3 LED a disposizione Connettori di espansione della scheda (memoria e periferiche) Generatore del clock, PLL e timers
Elaborazione Elettronica dei Segnali Digitali - Esercitazione
[Fonte: Texas Instruments]

17

Il DSP ha integrate nel chip diverse periferiche come porte seriali, bus esterni, DMA che vengono poi sfruttate a livello di scheda per interfacciarsi con altri dispositivi esterni. Il particolare starter kit a disposizione consente allutente di interfacciarsi alla scheda attraverso un connettore di espansione ed un codec audio.

Il software di controllo

CCS (Code Composer Studio) lambiente software integrato di Texas Instruments per il progetto e il debugging delle applicazioni per il DSP. Con questo potente pacchetto possibile:
Scrivere codice C e assembler attraverso il text editor Compilare, linkare e caricare il codice con laiuto di sofisticati strumenti di ottimizzazione Programmare via codice lhardware attraverso un esteso insieme di librerie fornite da Texas Instruments Utilizzare un sistema operativo programmabile graficamente per la gestione ad eventi dellattivit del DSP Seguire lesecuzione del codice con il debugger real-time e misurarne le prestazioni
Elaborazione Elettronica dei Segnali Digitali - Esercitazione 18

CCS un pacchetto software molto sofisticato e per questo, nel seguito, impareremo ad utilizzare solo alcune delle innumerevoli caratteristiche offerte.

Potrebbero piacerti anche