SEGNALE
Elaborazione del segnale. - La nozione di s. è di grande rilevanza non soltanto nei vari settori della tecnologia dell'informazione, e in particolare nelle telecomunicazioni, nell'elettronica, nell'informatica, bensì anche in altri rami della scienza e della tecnica. In generale, per s. s'intende una grandezza fisica che varia in funzione di una o più grandezze indipendenti le quali, nella maggioranza dei casi, sono il tempo oppure delle coordinate spaziali. Casi particolari che rivestono grande interesse sono il s. audio, che rappresenta l'andamento nel tempo di una grandezza acustica, il s. video, che rappresenta la distribuzione dei valori di luminanza sul piano di un'immagine, il s. sismico, che rappresenta l'andamento delle onde di pressione nel sottosuolo, ecc. A seconda dei casi un s. viene detto a una o a più dimensioni a seconda che possa essere rappresentato da una funzione di una o più variabili.
Per acquisire, trasmettere, riprodurre s. è necessario fare uso di apparati specifici quali trasduttori, circuiti elettrici, canali di trasmissione, i quali, oltre a espletare la loro funzione, possono introdurre disturbi e distorsioni, nocivi alla corretta rilevazione del contenuto informativo. Per contro è possibile realizzare circuiti e apparati che hanno il compito di correggere e limitare gli effetti di tali disturbi e distorsioni o di effettuare altre operazioni d'interesse, in modo da rendere possibile o agevolare i successivi processi d'interpretazione del segnale. Facendo riferimento soprattutto ai casi in cui le alterazioni sul s. sono eseguite al fine di ottenere effetti utili, si dice che è stata effettuata una ''elaborazione'' del s. stesso.
Si possono distinguere due tipi fondamentali di elaborazione, quella analogica e quella numerica (o digitale), in relazione al tipo di s. considerato. I metodi di elaborazione analogici sono stati sviluppati prima di quelli numerici e consistono essenzialmente nell'uso di filtri, equalizzatori, modulatori, demodulatori e di altri circuiti propri della tecnica delle comunicazioni elettriche. Gran parte dei s. sono di tipo analogico e rappresentabili con funzioni continue, come i s. audio, video o quelli relativi alle tecniche di telerilevamento, come i s. sonar e radar. I s. numerici sono facilmente ottenibili trasformando i s. analogici con opportuni convertitori analogico-numerici e sono rappresentabili con sequenze di dati. Tali s. sono quindi discreti sia in ampiezza che nel tempo, poiché i singoli campioni sono intervallati da un tempo T, detto intervallo di campionamento. I metodi di elaborazione numerici possono essere realizzati con dispositivi e circuiti elettronici di tipo numerico o logico, spesso in forma totalmente integrata. Il loro sviluppo è strettamente legato ai progressi dell'elettronica dello stato solido. Un'osservazione fondamentale, emersa nel corso degli anni Cinquanta e Sessanta, consiste nel fatto che gli elaboratori elettronici numerici possono essere utilizzati non solo per effettuare calcoli di tipo generico o per gestire archivi di dati, ma anche per elaborare sequenze numeriche ai fini dell'elaborazione del segnale. Infatti tale elaborazione consiste essenzialmente in opportuni algoritmi aritmetici da effettuarsi sui campioni (numeri reali o complessi) che rappresentano il segnale. Gli elaboratori utilizzati a tale scopo possono essere di tipo generale (general purpose) o meglio costruiti appositamente (special purpose), vista la specificità dell'applicazione.
In generale si può dire che tutte le tecniche di elaborazione analogica possono essere implementate per via numerica, mentre non è possibile affermare il viceversa. I principali vantaggi delle tecniche numeriche sono legati alla maggior precisione e accuratezza dei metodi di elaborazione, oltre alla possibilità di utilizzare un insieme di dispositivi molto più vasto e flessibile, in forma spesso totalmente integrata. Per contro, le tecniche analogiche devono ancora essere usate quando la frequenza dei s. è troppo elevata, come per es. nel campo delle microonde o delle onde millimetriche.
Le tecniche di elaborazione numerica sono innumerevoli e in continua evoluzione; esse possono essere classificate sia in base alle applicazioni (audio, video, sismica, sonar, radar, ecc.), sia in base alle metodologie usate. Tali tecniche si basano su concetti relativi all'analisi dei s., alla teoria dei circuiti e dei sistemi, ai metodi statistici, all'analisi numerica, alla scienza degli elaboratori e alla moderna tecnologia dei circuiti integrati. Nel seguito la trattazione verrà limitata allo sviluppo di alcune tecniche significative dell'elaborazione numerica, nel caso più semplice di s. monodimensionali.
Filtri numerici. - Una classe molto importante di dispositivi per l'elaborazione del s. è costituita dai filtri numerici, mediante i quali si possono effettuare operazioni simili a quelle che nel caso analogico sono realizzate con i filtri elettrici. Questi ultimi hanno lo scopo di modificare il contenuto spettrale dei s., attenuando in modo selettivo alcune bande di frequenza rispetto ad altre. Il paragone con il caso analogico non si limita tuttavia al caso dei filtri propriamente detti, in quanto con la stessa metodologia molti circuiti elettrici analogici possono essere trasformati in corrispondenti circuiti numerici.
Per precisare i fondamenti dei filtri numerici e di altri più complessi dispositivi per l'elaborazione del s., si consideri il seguente elementare schema iterativo di calcolo.
sk=csk−1+ek; uk=Re[sk] per k=1, 2, 3,.... [1]
in cui ek e uk sono rispettivamente le sequenze numeriche dei s. d'ingresso e di uscita, sk è la sequenza degli stati interni al dispositivo, c è un coefficiente moltiplicativo e Re[.] è l'operatore parte reale. È opportuno osservare che mentre sk e c sono delle grandezze complesse, i s. ek e uk sono rappresentati da sequenze di numeri reali. Per sviluppare il procedimento iterativo, è necessario considerare inizialmente il valore k=1, assegnando un valore allo stato iniziale s0 (tipicamente s0=0), e poi ripetere il calcolo dell'espressione ricorsiva [1] per successivi valori di k, ottenendo un campione del s. di uscita uk in corrispondenza a ogni campione del s. d'ingresso ek. L'espressione [1] rappresenta un algoritmo elementare relativo a un circuito numerico, che può essere rappresentato secondo lo schema di fig. 1, in cui T rappresenta l'intervallo di campionamento.
Poiché uno stesso filtro numerico può essere rappresentato sia mediante un algoritmo di calcolo sia mediante uno schema circuitale equivalente, esso può essere realizzato sia in software, mediante un semplice programma su elaboratore, ovvero in hardware, mediante un circuito elettronico dedicato. Tale circuito sarà costituito dai seguenti tipi di elementi: a) sommatori di s.; b) moltiplicatori di s. per costanti (reali o complesse); c) elementi di ritardo pari a T.
L'operatore parte reale non rappresenta un componente in quanto consiste solo nella scelta di una parte di un s. complesso (e cioè rappresentato da una sequenza di numeri complessi).
Al fine di descrivere il comportamento del filtro, si consideri il caso particolare in cui il s. d'ingresso ek sia rappresentato dalla sequenza impulsiva unitaria, pari alla successione [1, 0, 0, 0,....]. In tal caso, facendo evolvere il filtro si ottiene in uscita una sequenza pari alla sua risposta impulsiva, che risulterà pari alla parte reale delle successive potenze dell'elemento moltiplicativo c, e cioè si avrà
uk=Re[ck-1] per k=1, 2, 3,.... [2]
Analizzando tale sequenza, per diversi valori di c, si possono così ottenere vari andamenti tipici. In particolare si ottiene: a) per c reale e minore dell'unità: sequenza uk esponenziale decrescente; b) per c complesso e di modulo unitario: sequenza uk sinusoidale; c) per c complesso e di modulo minore dell'unità: sequenza uk oscillatoria smorzata.
Gli andamenti ottenuti sono tipici dei modi naturali di risonanza che si ottengono in forma continua nei circuiti elettrici. Inoltre, nel caso di un s. d'ingresso di tipo generico, l'uscita del filtro è pari alla convoluzione discreta fra tale ingresso e la sequenza indicata nell'espressione [2].
La risposta in frequenza del filtro si ottiene analizzando in forma simbolica lo schema di fig. 1, nel quale sia stato sostituito l'elemento di ritardo T con un operatore simbolico indicato con z−1. Così si ottiene l'espressione:
U=Re[1/(1−cz−1)]E [3]
ove U ed E sono rispettivamente le trasformate z dei segnali di uscita e d'ingresso del filtro. In accordo con la teoria della trasformata di Laplace, l'operatore z è legato alla frequenza f dalla relazione z=exp(j2πTf), ove j è l'unità immaginaria. Conseguentemente la risposta in frequenza risulta periodica e la massima frequenza utile a cui può essere usato il filtro è pari a fN=1/(2T), detta frequenza di Nyquist. La presenza della frequenza di Nyquist rappresenta la maggior differenza fra il comportamento dei circuiti numerici e quello dei circuiti analogici, nei quali la risposta in frequenza è di norma di tipo non periodico.
Un generico filtro numerico si ottiene connettendo fra loro varie celle elementari del tipo indicato in fig. 1, con differenti valori dell'elemento moltiplicativo c. In ogni caso gli elementi presenti sono sempre sommatori, moltiplicatori ed elementi di ritardo. Agli effetti del funzionamento reale, occorre tener presenti le seguenti due osservazioni: a) non sono realizzabili schemi nei quali siano presenti cicli chiusi privi di elementi di ritardo; b) comunque venga realizzato il filtro, sarà possibile considerare il tempo τ necessario per effettuare le operazioni previste nello schema in un ciclo del procedimento iterativo. Se risulterà che τ〈T, allora la sequenza dei s. sarà abbastanza lenta da permettere lo svolgimento delle operazioni e il filtro potrà funzionare in tempo reale. Viceversa, se τ>T, allora il filtro potrà funzionare solo in tempo differito o in simulazione, su copie opportunamente memorizzate del s. d'ingresso. L'una o l'altra delle eventualità dipende dalla scelta dello hardware che realizza il filtro o dalla velocità di elaborazione del dispositivo software usato, in relazione al tipo di s. considerato e alla sua larghezza di banda. La risposta impulsiva del filtro indicato in fig. 1 risulta di durata infinita, in quanto la sequenza di uscita uk, per ingresso di tipo impulsivo, è costituita da un numero illimitato di campioni diversi da zero. Il filtro è detto allora IIR (Infinite Impulse Response) o ricorsivo. Esso è caratterizzato dal fatto che ciascun campione di uscita è pari a una combinazione lineare di una sequenza infinita di campioni d'ingresso precedenti. Filtri costituiti da una combinazione di celle di fig. 1 sono sempre di tipo IIR. In contrapposizione esistono filtri a risposta impulsiva finita, detti FIR (Finite Impulse Response), noti anche con il nome di filtri trasversali. In essi ogni campione di uscita è una combinazione lineare di un numero finito di campioni d'ingresso precedenti. Lo schema relativo a tali filtri è riportato in fig. 2.
La realizzazione di filtri numerici di tipo FIR presenta molti vantaggi rispetto ai filtri di tipo IIR, specialmente per quanto riguarda la realizzazione con circuiti elettronici dedicati. A parità di tecnologia, infatti, un filtro FIR può essere realizzato per frequenze più alte di un filtro IIR e inoltre permette di ottenere caratteristiche di fase di tipo lineare. Tuttavia, a parità di selettività del filtro, i filtri ricorsivi richiedono l'uso di un numero molto minore di elementi moltiplicativi.
Nella realizzazione o nella simulazione di un filtro numerico occorre tenere conto che i calcoli previsti nello schema del filtro (addizioni e moltiplicazioni) non sono mai realizzati in modo ideale (e cioè nel campo dei numeri reali), ma utilizzando s. interni ed esterni al filtro rappresentati con un numero finito di bit. Tale numero di bit viene detto lunghezza di parola e dev'essere ridotto al minimo possibile in relazione alla complessità dei dispositivi usati e alla velocità di elaborazione richiesta. Ciò comporta la presenza di errori aritmetici di arrotondamento (o troncamento) che hanno l'effetto di degradare le caratteristiche del filtro stesso. Non tutti gli schemi usati si comportano nello stesso modo nei riguardi di tale problema, e vi sono particolari configurazioni di filtri (in special modo IIR) che sono particolarmente idonei a rendere minimi tali tipi di inconvenienti, a parità di lunghezza di parola (per es. i filtri numerici a onda, WDF, Wave Digital Filters).
Come esempio di utilizzazione di un filtro numerico, si consideri la realizzazione di un codificatore PCM (CODEC) per s. telefonici. Tale dispositivo può essere realizzato come indicato in fig. 3. Esso consiste di due blocchi, il primo dei quali è un filtro analogico passa-basso necessario per ridurre le distorsioni e il rumore relativi al processo di conversione A/D, il secondo è il convertitore vero e proprio con frequenza di campionamento di 8 K campioni/secondo. Il filtro analogico nello schema di fig. 3 non può essere facilmente realizzato in forma totalmente integrata a causa della frequenza di taglio eccessivamente bassa e dell'elevata selettività richiesta. Uno schema più conveniente per la totale integrazione del sistema è quello indicato in fig. 4, in cui è presente un filtro numerico. In questo caso sia il filtro analogico sia il convertitore funzionano a frequenza più elevata in modo da rendere più semplice la realizzazione con circuiti integrati. Inoltre sono utilizzati un filtro numerico passa-basso per ridurre le distorsioni e un circuito decimatore per ridurre la frequenza di campionamento. Lo schema di figura 4, a differenza di quello di fig. 3, è facilmente realizzabile in forma totalmente integrata.
Filtri adattativi e predittori lineari. - In quasi tutte le applicazioni relative alle comunicazioni elettriche e ai sistemi di telerilevamento, i s. numerici utilizzati non sono noti in modo deterministico ma sono costituiti da sequenze casuali che possono essere caratterizzate solo con metodi stocastici. Tale caratterizzazione deve inoltre essere usata non solo con riferimento ai s., ma anche per la maggior parte dei canali di trasmissione che non sono generalmente noti in forma deterministica, ma possono assumere differenti caratteristiche ingresso-uscita in funzione del tempo e di differenti condizioni operative. Pertanto in molti casi anche i dispositivi filtranti devono risultare variabili in modo da funzionare in modo ottimale nei vari casi. Particolarmente adatto a essere ottimizzato in funzione delle varie applicazioni è il filtro numerico di tipo trasversale, i cui coefficienti possono essere resi variabili e calcolati mediante opportuni algoritmi. Ciò può avvenire in corrispondenza a differenti applicazioni o relativamente alla stessa applicazione se le mutate condizioni operative richiedono l'aggiornamento degli elementi moltiplicativi, aggiornamento che avviene in passi successivi e in intervalli di tempo di norma molto maggiori dell'intervallo di campionamento T, mediante algoritmi esterni al filtro.
Una delle prime applicazioni in tal senso è costituita dagli equalizzatori variabili per trasmissione veloce di dati. Tali equalizzatori sono usati in ricezione per correggere la caratteristica distorcente dei canali di trasmissione in modo da rendere possibile il riconoscimento dei dati trasmessi, riducendo al minimo la probabilità di errore.
Un'altra applicazione in cui è utilizzato un filtro trasversale ottimizzato è costituita dai cancellatori d'eco impiegati per trasmissioni telefoniche su lunghissime tratte (per es. via satellite), nelle quali le riflessioni non desiderate provocano s. d'eco fortemente nocivi alla fedeltà di trasmissione. Accade infatti che al s. utile proveniente dal parlatore remoto sia sovrapposto un s. d'eco corrispondente a una copia riflessa del s. trasmesso in precedenza. In tale caso un opportuno filtro trasversale provvede a calcolare e sottrarre dal s. ricevuto la sola componente d'eco, lasciando inalterato il s. utile.
Filtri trasversali o altri circuiti numerici i cui coefficienti sono calcolati mediante opportuni algoritmi sono anche utilizzati nei predittori lineari adattativi (ALP, Adaptive Linear Predictor). In questo caso si suppone di conoscere sia il s. trasmesso sia il canale solo in modo statistico. Lo scopo di un predittore adattativo è quello di determinare, a partire dal s. ricevuto, il s. trasmesso e le caratteristiche del canale a partire dalle ipotesi statistiche che è possibile formulare. Nei predittori lineari si fa l'ipotesi che il campione k-esimo possa essere predetto a partire da una combinazione lineare di N campioni precedenti, così come è possibile ottenere con un filtro trasversale. Sottraendo il campione predetto dal campione effettivamente ricevuto, si ottiene il cosiddetto errore di predizione, sul quale si possono applicare le opportune ipotesi effettuate sul processo stocastico. Di norma si fa in modo che i campioni di errore siano resi minimi, per es. nel senso dell'errore quadratico medio, ottenendo in tal modo una determinazione dei coefficienti del filtro trasversale. Tale determinazione richiede la risoluzione di un sistema di equazioni lineari, la cui matrice dei coefficienti ha una forma particolare, detta di Toeplitz. Sono stati studiati appositi algoritmi veloci per rendere più rapido il processo d'inversione di tale matrice, fra cui è importante citare l'algoritmo di Levinson-Durbin. Il processo completo è schematizzato in fig. 5.
Gli algoritmi di predizione lineare sono utilizzati in un gran numero di applicazioni, che vanno dal s. radar, al sonar, ai codificatori per s. vocale, ai sistemi di trasmissione Spread-Spectrum. Un caso di grande rilevanza si ha nei sistemi di deconvoluzione predittiva per elaborazione di s. geofisici. In questo campo applicativo sono utilizzate varie tecniche di elaborazione del s. allo scopo di facilitare l'interpretazione dei dati ottenuti con i vari metodi di indagine del sottosuolo, in relazione soprattutto al problema del rilevamento di giacimenti di idrocarburi. Dal punto di vista dei sistemi di deconvoluzione predittiva, il problema consiste nel rilevare la struttura delle formazioni rocciose profonde a partire da s. d'eco eccitati da opportuni generatori di vibrazioni in banda acustica o subacustica posti sulla superficie. In moltissimi casi le formazioni rocciose d'interesse si trovano al di sotto di fondali marini, per cui le ricerche debbono essere effettuate provocando le vibrazioni nel battente d'acqua al di sopra della zona considerata. In tali condizioni gran parte dell'energia di vibrazione rimane intrappolata nel battente d'acqua provocando riverberazioni che mascherano completamente i s. relativi alla struttura geofisica sottostante il fondale stesso. Pertanto il s. relativo alle riflessioni primarie viene alterato e non è utilizzabile per un'interpretazione diretta, ma deve essere sottoposto a un processo di elaborazione simile a quello indicato in fig. 5. La grandissima mole di dati da elaborare rende il processo di deconvoluzione predittiva molto costoso, e pertanto sono di grande interesse in tale campo tutti quei metodi che tendono a ridurre la complessità degli algoritmi usati.
Gli algoritmi di predizione lineare sono molto utili in alcuni processi di codifica, detti LPC (Linear Predictive Coding), in cui l'informazione relativa a sequenze relativamente lunghe viene compressa in un numero di campioni molto inferiore. In questo caso si utilizza uno schema del tipo indicato in fig. 5, in cui spesso il filtro trasversale è sostituito con altro circuito numerico di tipo FIR più adatto allo scopo. Ciò che caratterizza il metodo LPC è che in questo caso il processo di predizione lineare viene applicato non per rilevare la sequenza relativa alla stima del s. trasmesso, ma solo per determinare l'insieme dei coefficienti del filtro. Tali coefficienti rappresentano un valido metodo di codifica del s. in esame. A partire dai coefficienti ottenuti con il metodo LPC, il s. di partenza può essere facilmente ricostruito. Metodi LPC sono usati con successo in vari campi, per es. nei sistemi di compressione o di riconoscimento del s. vocale.
Algoritmi nel dominio della frequenza. - Gli algoritmi visti finora si basano su elaborazioni effettuate direttamente sulle sequenze di dati. Poiché tali sequenze si sviluppano in funzione del tempo, tali metodi sono anche noti come metodi di elaborazione nel dominio del tempo. Ma poiché un filtro ha lo scopo di modificare il contenuto spettrale dei s., un risultato analogo può essere ottenuto con i seguenti passi: a) calcolo dello spettro in frequenza a partire dalla sequenza nel tempo; b) modifica dello spettro in frequenza in funzione dell'applicazione d'interesse; c) calcolo della nuova sequenza nel tempo a partire dallo spettro in frequenza modificato.
Nel campo dei s. numerici gli spettri in frequenza, come gli andamenti nel tempo, sono costituiti da sequenze numeriche. Le operazioni di trasformazione dal tempo alla frequenza e viceversa si ottengono utilizzando le trasformate di Fourier diretta e inversa, che nel campo dei s. numerici corrispondono agli algoritmi di trasformata discreta (DFT, Discrete Fourier Transform). Uno schema di principio dei metodi di elaborazione nel dominio della frequenza è indicato in fig. 6.
Qualora il s. da elaborare sia di tipo stocastico, la trasformata diretta di Fourier viene utilizzata per determinare lo spettro di densità di potenza. In tal caso è necessario effettuare il calcolo della DFT su tratti limitati del s. d'ingresso e ripetere molte volte tale calcolo sia in ingresso che in uscita. È pertanto essenziale disporre di algoritmi che permettano di ridurre il numero di calcoli necessari per effettuare tali operazioni di trasformazione e antitrasformazione. Si può dimostrare che un algoritmo di DFT diretta o inversa effettuato su N campioni richiede il calcolo di un numero di moltiplicazioni crescente come il quadrato del numero N; in molti casi tale numero di operazioni risulta eccessivamente elevato per un'applicazione proficua dell'algoritmo. Nel 1965 fu introdotto un nuovo algoritmo che permette di effettuare le operazioni di DFT diretta o inversa organizzando i calcoli in modo da richiedere solo N log2 N operazioni di moltiplicazione (algoritmo di Cooley e Tukey). Tale algoritmo, detto FFT (Fast Fourier Transform), rappresenta una pietra miliare nel campo dell'elaborazione del s. e ha permesso, grazie all'essenziale risparmio di calcoli, di applicare algoritmi nel dominio della frequenza in campi nei quali altrimenti non sarebbe stato possibile. A partire dall'algoritmo della FFT sono stati messi a punto innumerevoli metodi di elaborazione del s. nel dominio della frequenza applicabili in un gran numero di campi applicativi.
Processori dedicati all'elaborazione del segnale. - I vari dispositivi per l'elaborazione numerica si basano sull'esecuzione di opportuni algoritmi applicati sulle sequenze numeriche che rappresentano i segnali. Tali algoritmi possono essere eseguiti su elaboratori di tipo generale o su processori di tipo dedicato. Quest'ultimo tipo di realizzazione è necessario quando la velocità di elaborazione non consente l'uso di dispositivi general purpose. I dispositivi elettronici dedicati all'elaborazione del s. sono noti con il nome di DSP (Digital Signal Processors). Essi sono simili a dei microprocessori, sui quali è possibile eseguire opportune sequenze di istruzioni elementari costituenti l'algoritmo da realizzare. Tuttavia, poiché alcune operazioni realizzate in software richiederebbero un tempo di esecuzione troppo elevato, nei DSP sono generalmente contenuti dispositivi specifici in hardware aventi lo scopo di accelerare alcuni calcoli aritmetici, tipicamente le moltiplicazioni o le divisioni. Un moltiplicatore dedicato è un dispositivo elettronico che esegue un prodotto fra s. numerici senza eseguire un algoritmo in software, ma realizzando i necessari passi direttamente in hardware. Esistono varie architetture relative a tali moltiplicatori, fra le quali le più veloci sono quelle relative ai moltiplicatori di tipo parallelo, che possono eseguire un prodotto anche in pochi nanosecondi. Su un dispositivo DSP possono essere programmati vari tipi di algoritmi per l'elaborazione del segnale. Le massime frequenze alle quali è possibile utilizzare questi dispositivi dipendono dalla complessità dell'algoritmo e dallo sviluppo della tecnica. Nuovi dispositivi DSP capaci di funzionare con intervalli di campionamento sempre minori vengono prodotti oggi a ritmi molto elevati. Attualmente non è difficile utilizzare tali dispositivi a frequenze di molte decine di MHz.
Per ottenere prestazioni ancora più elevate è necessario utilizzare circuiti integrati specifici (ASIC, Application Specific Integrated Circuit), costruiti appositamente per l'applicazione d'interesse, utilizzando anche la metodologia propria del calcolo parallelo: essa consiste nel suddividere l'algoritmo in più parti che possono essere eseguite in parallelo da processori indipendenti e tali che i risultati parziali, disponibili simultaneamente sulle varie uscite, possano concorrere alla definizione del risultato complessivo. Tale suddivisione in parallelo degli algoritmi per l'elaborazione del s. non è banale, poiché la maggior parte di essi è stata studiata e messa a punto in vista di implementazioni di tipo seriale, quale è quella prevista su elaboratori tradizionali. Anche semplici operazioni di somma e di moltiplicazione fra s. di lunghezza di parola elevata sono difficilmente realizzabili in modo parallelo, poiché la presenza dei riporti rende ciascun passo elementare dell'algoritmo sequenzialmente successivo al passo precedente. Algoritmi classici come quello di Levinson-Durbin non sono adatti a una realizzazione con tecniche in parallelo. In questi casi è necessario utilizzare nuovi tipi di algoritmi adatti allo scopo suddetto.
Dal punto di vista dell'architettura circuitale esistono varie forme di parallelismo fra processori elementari al fine di ottenere maggiore velocità di elaborazione. Le principali forme utilizzate a tale scopo sono: le tecniche pipeline, le architetture sistoliche e le architetture a fronte d'onda.
La tecnica pipeline può essere applicata tutte le volte che in un certo dispositivo per l'elaborazione del s. si può individuare un taglio come quello indicato in fig. 7a. La presenza del taglio comporta il fatto che il s. intermedio individuato dal taglio rappresenta un risultato parziale del sottosistema A e simultaneamente l'ingresso del sottosistema B. La tecnica pipeline consiste nell'introdurre un elemento di ritardo nel punto d'interconnessione, in modo che il sottosistema B risulti ritardato di un intervallo di campionamento rispetto al sottosistema A (fig. 7b). Ciò non altera sostanzialmente la caratteristica ingresso-uscita globale del sistema, pur permettendo ora ai due sottosistemi di operare in parallelo su dati distanziati di un intervallo di campionamento. Pertanto, quando il sottosistema A opera su un certo insieme di dati, il sottosistema B può operare sui dati elaborati in precedenza, senza attendere la conclusione dei calcoli di A. Ovviamente la tecnica è tanto più valida quanto più i tempi di esecuzione delle operazioni nei due sottosistemi sono vicini fra loro. L'esempio fatto si riferisce a una tecnica pipeline ottenuta suddividendo un sistema in due parti. Non vi è tuttavia nessuna difficoltà a estendere tale tecnica a una suddivisione di un numero qualsiasi di parti poste in cascata, quando ciò sia consentito dall'algoritmo da realizzare. È facile vedere che la tecnica pipeline non può essere applicata in generale e infatti, mentre può essere applicata ai filtri di tipo trasversale, non essendovi retroazioni nello schema, essa non può essere applicata alla cella del filtro ricorsivo indicata in fig. 1. Se in un dispositivo sono stati introdotti N successivi elementi di ritardo utilizzando la tecnica pipeline, ciascun campione del s. d'ingresso non potrà avere nessun effetto sull'uscita prima di un tempo pari a NT. La risposta del dispositivo appare quindi rallentata essendo stato introdotto tale intervallo di attesa, detto latenza. Tuttavia il dispositivo è ancora in grado di accettare un campione d'ingresso per ogni intervallo T e quindi il numero di campioni in ingresso nell'unità di tempo è rimasto immutato (throughput del sistema).
Le tecniche sistoliche rappresentano una generalizzazione delle tecniche pipeline. Le architetture utilizzate fanno uso ancora di N processori in parallelo, permettendo però di ottenere una latenza inferiore a NT. La disposizione dei processori può essere ad array a una o più dimensioni. Un esempio di architettura sistolica a due dimensioni è dato in fig. 8, dove i 9 processori possono operare in parallelo. Essi però non operano tutti su insiemi di campioni relativi a istanti differenti, poiché, mentre il processore n. 1 elabora il campione relativo al tempo t, i processori 2 e 4 elaborano i campioni relativi al tempo t−T, i processori 3, 5 e 7 quelli relativi al tempo t−2T, i processori 6 e 8 quelli relativi al tempo t−3T; infine il processore 9 elabora i campioni relativi al tempo t−4T. Il calcolo procede quindi per linee diagonali e la latenza risulta pari a 4T.
Le architetture pipeline e sistoliche sono architetture sincrone che presuppongono che vi sia una temporizzazione unica nel processore legata all'intervallo di campionamento T. Inoltre per fare in modo che tutti i processori parziali siano in funzione per tutto il tempo utile, è necessario che i relativi tempi di esecuzione siano tutti uguali fra loro e pari al tempo T. È evidente che queste ipotesi sono solo teoriche e che in realtà non potranno essere esattamente verificate nei casi concreti. Ciò comporta il fatto che nelle architetture sistoliche alcuni processori sono utilizzati meglio di altri, a meno che essi non siano tutti strutturalmente identici.
Le architetture a fronte d'onda rappresentano una modifica rispetto a quelle sistoliche, in quanto in esse non viene più utilizzato il sincronismo dei processori, ma il loro funzionamento avviene in modo asincrono. Precisamente ciascun processore inizia a funzionare quando i processori a monte di esso e direttamente connessi rendono disponibili tutti i vari campioni d'ingresso. L'istante d'inizio del processo di calcolo di ciascun processore è quindi legato ai tempi di esecuzione dei vari processori a monte di esso. Per es., nel caso dell'architettura indicata in fig. 8, eliminati tutti gli elementi di ritardo fra i processori, il processore 5 inizia il calcolo quando i processori 2 e 4 forniscono i relativi campioni d'ingresso. D'altro canto il processore 7 può iniziare il calcolo quando è disponibile il campione di uscita del processore 4 e pertanto, in un'architettura asincrona, i processori 5 e 7 non iniziano più a funzionare nello stesso istante, poiché il processore 2 potrebbe essere leggermente più lento del 4. In generale si osserva che, nel caso bidimensionale, i calcoli non procedono più per linee trasversali, ma secondo curve più o meno complesse, dipendenti dai tempi di esecuzione dei vari processori. I metodi di elaborazione a fronte d'onda sono altamente efficienti e trovano applicazione in varie tecniche avanzate dell'elaborazione del segnale.
Bibl.: A.V. Oppenheim, R.V. Schafer, Digital signal processing, Englewood Cliffs 1975; L.R. Rabiner, B. Gold, Theory and application of digital signal processing, ivi 1975; J. Makhoul, Linear prediction: A tutorial review, Proceeding of the IEEE (Institute of Electrical and Electronic Engineers), aprile 1975; J.F. Claerbout, Fundamentals of geophysical data processing with applications to petroleum prospecting, New York 1976; E.A. Robinson, S. Treitel, Geophysical signal analysis, Englewood Cliffs 1980; H.T. Kung, The structure of parallel algorithms, in Advances in computers, San Diego 1980; J.S. Lim, Speech enhancement, Englewood Cliffs 1983; S.Y. Kung, From transversal filter to VLSI Wavefront Array, in Proceeding International Conference on VLSI, 1983; J.S. Walber, Fast Fourier transforms, Boca Raton (Florida) 1991; P.P. Vaidyanathan, Multirate systems and filter banks, Englewood Cliffs 1993; D.H. Jo, D.E. Dudgeon, Array signal processing, ivi 1993; H.V. Poor, An introduction to signal detection and estimation, New York 1994.