Digital Signal Processor: la tecnologia digitale applicata all’analisi dei segnali

L’elaborazione numerica dei segnali, di qualunque natura essi siano, rappresenta senza ombra di dubbio una delle tecnologie che hanno riscosso il maggiore successo ed attenzione negli ultimi anni, con molteplici applicazioni in diversi settori dell’elettronica e delle scienze applicate in generale. Scopriamo insieme in questo articolo cosa si nasconde dietro l’acronimo DSP, quali sono le caratteristiche a livello hardware di questi dispositivi, dove vengono utilizzati, che tipo di funzionalità svolgono e perché sono diventati così importanti.

Introduzione

Con il termine DSP (acronimo di Digital Signal Processing) si indica la tecnologia che provvede ad elaborare e processare, nel dominio digitale (o se preferite, numerico), un segnale analogico. Questa tecnologia, le cui radici risalgono storicamente ai primordi dell’elettronica a semiconduttore, ha conosciuto un’enorme crescita e diffusione grazie ai progressi compiuti nel settore delle tecnologie elettroniche ed alla crescente domanda di applicazioni “DSP- dependant” in numerosi settori dell’elettronica di consumo e dell’ingegneria. La tecnologia DSP ha contribuito a rivoluzionare interi settori, quali: telecomunicazioni, settore medicale (diagnostica per immagini), sistemi di rilevamento di ostacoli e bersagli (radar e sonar), riproduzione musicale hi-fi, televisione ad alta definizione, esplorazione del sottosuolo e monitoraggio della crosta terrestre, protesi neuro-sensoriali di vario tipo ed altro ancora. Ciascuna di queste aree ha sviluppato in modo approfondito una propria forma di tecnologia DSP, caratterizzata da specifici algoritmi, formule matematiche e tecniche implementative. A livello hardware, sono stati progettati e realizzati dei dispositivi in grado di supportare egregiamente questa tecnologia. Tali dispositivi sono indicati con lo stesso termine, DSP (in questo caso inteso come acronimo di Digital Signal Processor). Quasi sicuramente, anche il vostro smartphone avrà al suo interno almeno un DSP, solitamente integrato nel System on Chip (SoC) che ne governa le principali funzionalità.

Schema a blocchi DSP

Il concetto di DSP è illustrato dallo schema a blocchi di Figura 1, che include un filtro analogico, un convertitore analogico-digitale (ADC), un digital signal (DS) processor, un convertitore digitale-analogico (DAC) ed un filtro per la ricostruzione del segnale analogico. All’inizio della catena troviamo anzitutto il segnale analogico, che presenta la caratteristica di essere continuo nel tempo e nell’ampiezza. Esempi di segnali analogici si possono trovare nella vita di tutti i giorni: correnti, tensioni, temperature, pressioni, intensità luminosa, intensità sonora, posizione, velocità e così via. Il segnale analogico viene normalmente acquisito da un opportuno sensore (trasduttore) che provvede a convertirlo in un segnale elettrico analogico (ad esempio una tensione). Quest’ultimo viene inviato in ingresso al filtro analogico, il cui scopo è quello di limitare il range di frequenza del segnale, prima di applicarlo in ingresso all’ADC. Si tratta essenzialmente di un filtro anti-alias, che elimina le componenti di frequenza non desiderate, attribuibili alla presenza di rumore. Il segnale in uscita dal filtro, limitato alla banda di interesse, viene campionato e convertito in forma digitale dall’ADC, ottenendo in uscita un segnale digitale che ora è discreto sia nel tempo che nell’ampiezza. Il DSP riceve in ingresso questo segnale e processa le informazioni in base agli algoritmi software in esso programmati (ad esempio, filtraggi di tipo FIR oppure IIR, FFT, correlazione, convoluzione e così via). Il segnale in uscita dal DSP raggiunge il blocco DAC che lo converte in un segnale analogico. Tale segnale presenta la caratteristica di essere continuo nel tempo, ma discreto nell’ampiezza (si parla anche di segnale “sample-and-hold”, dovuto alla natura stessa con cui è generato dal DAC). L’ultimo blocco ha la funzione di livellare e rendere uniforme la tensione in uscita dal DAC, utilizzando un filtro di ricostruzione. L'uscita del DAC è, infatti, un segnale "quantizzato", ed il filtro di ricostruzione ha proprio la funzione di renderlo continuo, limando i "gradini" in esso presenti. Si tratta in genere di un filtro passa-basso con un'opportuna frequenza di taglio, la cui implementazione dipende dall'applicazione specifica (audio, immagine, segnale RF, etc.). Si noti, inoltre, come nella realtà esistano molte applicazioni dei DSP che non richiedono la presenza di un blocco DAC, come ad esempio il riconoscimento vocale. Analogamente, esistono delle applicazioni che non richiedono la presenza di un blocco ADC, come ad esempio i lettori CD, oppure i sistemi per la generazione dei toni digitali.

Figura 1: schema a blocchi di un'applicazione DSP

Si consideri ora la situazione rappresentata in Figura 2, in cui un segnale digitalizzato viene ottenuto a partire da tensioni analogiche contenenti un segnale a bassa frequenza e rumore che occupa tutto il range di frequenze. Dopo l'ADC, il segnale digitalizzato x(n), dove n rappresenta il numero di campioni, può essere migliorato utilizzando un filtraggio di tipo digitale, ad esempio un filtro digitale passa-basso che lasci passare solo il segnale utile, bloccando le componenti di frequenza superiore, attribuibili al rumore. Il DSP di Figura 2 verrà pertanto programmato per funzionare come un semplice filtro digitale passa-basso, in grado di produrre in uscita il segnale digitale y(n) depurato del rumore. Il segnale y(n) potrà poi essere applicato all'ingresso di un altro DSP, oppure convertito in segnale analogico tramite un DAC ed un opportuno filtro di ricostruzione.

Figura 2: filtro digitale con DSP

Il segnale digitalizzato, con presenza del rumore ed il segnale digitale "ripulito" sono rappresentati in Figura 3, rispettivamente nella parte superiore ed in quella inferiore del grafico. Abbiamo così visto una prima, semplice ma utilissima, applicazione dei DSP. Le tipiche applicazioni del filtraggio di segnali perturbati dal rumore includono, tra le altre: acquisizione del segnale audio, trattamento dei segnali per applicazioni biomedicali e registrazione vocale.

Figura 3: i segnali prima e dopo il filtro digitale

DSP o microprocessore?

Qualcuno potrebbe chiedersi, a questo punto, quale sia la differenza tra un DSP ed un comune microprocessore, come ad esempio quello utilizzato in un qualsiasi personal computer. La differenza è molto semplice, ed è insita nella lettera "S" del suo acronimo: "signal". Ciò che infatti differenzia un DSP da un  microprocessore, è che il DSP è nato per processare un segnale, mentre un microprocessore è nato per processare dei dati. Se vogliamo, è più una questione filosofica che tecnica. In realtà, come vedremo più avanti affrontando il discorso delle architetture hardware, i DSP sono progettati con lo scopo di ottimizzarne l’efficienza in applicazioni di puro ed intenso calcolo numerico. I DSP sono nati per eseguire ripetitivamente ed instancabilmente algoritmi di elevata complessità computazionale: la loro architettura hardware (set di istruzioni, ALU, memoria, cache) è stata concepita espressamente per queste applicazioni, dove essi si dimostrano più performanti di un normale microprocessore. Non solo, i DSP sono solitamente utilizzati in applicazioni dove un comportamento real-time è mandatario, sistemi in cui un segnale deve essere processato producendo degli output consistenti in tempi ragionevoli. Per contro, un microprocessore è più adatto ad applicazioni general purpose, con diverse periferiche di vario tipo da gestire, molta più memoria a disposizione (sia centrale che di massa) e, in generale, senza particolari vincoli real-time.

Applicazioni

Diverse sono le aree, nel campo scientifico ed ingegneristico, in cui i DSP hanno introdotto dei cambiamenti rivoluzionari, come indicato in Tabella 1.

Settore di utilizzo dei DSP Applicazioni
Spazio ed astronomia Correzione delle immagini
Compressione dei dati
Analisi dei dati provenienti dalle sonde spaziali
Interferometria speckle
Medicina Diagnostica per immagini (TAC, RMI, ecografia)
ECG
Monitoraggio cardiaco
Telecomunicazioni

Compressione dati e voce
Soppressione dell'eco
Multiplexing del segnale
Filtraggio
Televisione ad alta definizione
Telefonia mobile
Comunicazioni via satellite
Reti LAN wireless

Elettronica di consumo Compressione delle immagini e del suono per applicazioni multimediali
Effetti speciali per cinematografia
Sistemi di videoconferenza
Riconoscimento vocale
Sintesi vocale
Fotocamere digitali
Militare Radar
Sonar
Sistemi di guida per le armi
Protezione delle comunicazioni
Industriale Esplorazione del sottosuolo
Sistemi di monitoraggio e controllo di processo
Test non distruttivo
CAD e strumenti per la progettazione
Scientifico

Registrazione ed analisi dei terremoti
Acquisizione dati
Analisi spettrale
Simulazione e modellistica

Automotive Sistemi ANC per la soppressione dei rumori nell'abitacolo
Sistemi audio e video digitali
Sopensioni attive
Sistemi di navigazione
GPS
Audio Codifica audio digitale (CD)
Filtri crossover digitali
Sintesi e riconoscimento vocale
Compressione e codifica dei dati
Stereo digitale e surround

Tabella 1: principali applicazioni dei DSP, suddivise per aree di competenza

ASP vs DSP

Prima dei DSP, l'elaborazione del segnale era svolta da appositi circuiti analogici, progettati in base alle specifiche esigenze dell'applicazione, denominati ASP (Analog Signal Processor). I principali vantaggi degli ASP sono i seguenti:

  • le reti passive di cui erano composti presentavano la caratteristica di avere un'ottima linearità su un ampio range dinamico e su un'ampia larghezza di banda;
  • richiedevano un'alimentazione di bassa potenza;
  • assorbimento di corrente molto ridotto.

Il passaggio dalla tecnologia ASP a quella DSP è avvenuto per i seguenti motivi:

  • gli ASP, essendo realizzati in tecnologia analogica, erano sensibili alle condizioni ambientali (tipicamente, la temperatura, ma anche l'"invecchiamento" dei componenti stessi). I DSP mantengono invece le proprie performance anche al variare delle condizioni ambientali;
  • il comportamento degli ASP dipendeva dalle tolleranze dei componenti utilizzati nei circuiti analogici. I DSP sono invece in grado di ripetere in modo deterministico il proprio funzionamento;
  • gli ASP non erano programmabili: il processing veniva eseguito esclusivamente dai componenti analogici utilizzati. Apportare una modifica all'algoritmo implementato richiedeva necessariamente una modifica del circuito. I DSP, invece, implementano l'algoritmo esclusivamente a livello software, e presentano perciò una flessibilità elevatissima, con costi di manutenzione inferiori agli ASP;
  • gli ASP, a differenza dei DSP, presentavano una scarsa immunità alle interferenze ed al rumore, ed in tali condizioni il segnale poteva subire una distorsione apprezzabile;
  • negli ASP l'accuratezza dipendeva dal tipo e dalla qualità dei componenti utilizzati; nei DSP, invece, dal numero di bit utilizzati e dal tipo di aritmetica utilizzata (fixed point o virgola mobile);
  • gli ASP potevano avere dimensioni considerevoli, mentre i DSP sono estremamente compatti.

Tuttavia, l'introduzione dei DSP ha comportato qualche inevitabile svantaggio che occorre tenere presente in sede di progettazione: [...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 3096 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Scarica subito una copia gratis

3 Commenti

  1. Avatar photo SuperG72 22 Aprile 2020
  2. Avatar photo Mariangela.Mone 22 Aprile 2020
  3. Avatar photo davide.balducci 24 Aprile 2020

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend