Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D La Corte in Rete
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Sergio Cavaliere » 8.Sistemi per l'elaborazione numerica dei segnali: implementazione ed architetture


Realizzazione di equazioni alle differenze

Le equazioni alle differenze come abbiamo visto permettono di modellare un’ampia gamma di sistemi discreti, in pratica tutti i sistemi di interesse nel DSP ma anche sistemi discreti più in generale.

Più in generale quando si simula attraverso un computer un sistema qualsiasi derivato dal mondo fisico è necessario discretizzare il tempo e passare quindi dal problema fisico definito nel continuo ad una sua implementazione mediante transizioni discrete.

Tutte le operazioni inoltre che possiamo portare a termine con un computer si limitano alle operazioni aritmetiche indicate in figura, sooma prodotto e ritardo. Il ritardo è l’immagazzinamento di un valore al tempo tn per restituirlo al tempo tn+1: si può realizzare con un registro o una locazione di memoria in cui si immagazzina un campione per prelevarlo in un istante di tempo successivo.

L’equazione alle differenze non ricorsiva del primo ordine

y[n]=b0x[n]+b1x[n-1]

si può allora realizzare concatenando le operazioni come nel diagramma a blocchi in figura a fianco.

Operazioni elementari in un sistema discreto.

Operazioni elementari in un sistema discreto.

Sistema del primo ordine non ricorsivo.

Sistema del primo ordine non ricorsivo.


Equazioni del primo ordine

L’equazione alle differenze del primo ordine ricorsiva

y[n]=bx[n]+ay[n-1]

si può realizzare come in figura.

Nel calcolare l’uscita la struttura utilizza sia il campione d’ingresso corrente che il campione precedente dell’uscita.

La cascata delle due sezioni darà la sezione completa del primo ordine, fatta della parte ricorsiva e di quella non ricorsiva; l’ordine in cui queste sezioni si presentano è irrilevante, sulla base della proprietà commutativa della convoluzione.

L’equazione implementata sarà:

y[n]=b0x[n]+b1x[n-1]+ay[n-1]

Sezione ricorsiva del primo ordine.

Sezione ricorsiva del primo ordine.

Sezione completa del primo ordine.

Sezione completa del primo ordine.


Cascata di sezioni ricorsive

Colleghiamo ora in cascata due sezioni ricorsive del primo ordine, come in figura.
Semplici manipolazioni algebriche danno:

y[n]+by[n-1]=w[n]

w[n]+aw[n-1]=x[n]

y[n-1]+by[n-2]=w[n-1]

y[n]+by[n-1]+ay[n-1]+aby[n-2]=x[n]

y[n]+(a+b)y[n-1]+aby[n-2]=x[n]

Questo ci porta a concludere che la cascata di due sezioni ricorsive del primo ordine è equivalente ad una sezione ricorsiva del secondo ordine, la cui struttura è illustrata a fianco.
Si osserva inoltre che i coefficienti a e b delle due sezioni possono essere anche complessi; la sezione risultante avrà coefficienti reali se e solo se risultano reali i due coefficienti della sezione del secondo ordine a+b ed ab; ma questo implica che a e b siano complessi coniugati: b=conj(a)
Sarà in tal caso a+b =real(a) ab=|a|.
Questo conferma una consideraziona già fatta in precedenza.

Sezioni ricorsive del primo ordine in cascata.

Sezioni ricorsive del primo ordine in cascata.

Sezione del secondo ordine ricorsivo.

Sezione del secondo ordine ricorsivo.


Cascata di sezioni non ricorsive

Analogo ragionamento ci porta a concludere che: la cascata di due sezioni non ricorsive del primo ordine è equivalente ad una sezione non ricorsiva del secondo ordine.
La struttura è illustrata a fianco.

Sia per le strutture ricorsive che non ricorsive il ragionamento si può iterare ottenendo quindi sezioni di ordine arbitrario, corrispondenti ad equazioni alle differenze di ordine N qualsiasi cioè con un numero arbitrario di ritardi.

Vedrmo più avanti, con l’introduzione della trasformata Z che è più semplice manipolare questi sistemi nel dominio della trasformata Z in cui ogni sistema del tipo visto è rappresentato da un polinomio, di grado pari all’ordine del sistema e la concatenazione di sistemi in cascata risulta in una semplice operazione algebrica di moltiplicazione tra i polinomi che descrivono le singole sezioni.

Cascata di due sezioni non ricorsive del primo ordine.

Cascata di due sezioni non ricorsive del primo ordine.


Sezione del secondo ordine completa

Se ora mettiamo in cascata la sezione non ricorsiva e quella ricorsiva del secondo ordine abbiamo la figura a fianco.

Si osservi che la proprietà commutativa della convoluzione ci garantisce che le due sezioni quella ricorsiva e quella non ricorsiva possono commutare; invertendo questo ordine abbiamo appunto la struttura in figura, in cui la sezione puramente ricorsiva è a monte, mentre quella non ricorsiva è in cascata

Si osserva che i due registri che conservano l’informazione relativa al segnale wn ed ai suoi campioni precedenti sono sdoppiati.

Eliminando questi componenti ridondanti otteniamo la sezione del secondo ordine nella forma finale.

Cascata di due sezioni  ricorsiva e non ricorsiva del secondo ordine.

Cascata di due sezioni ricorsiva e non ricorsiva del secondo ordine.

Sezione del secondo ordine completa.

Sezione del secondo ordine completa.


Realizzazione di sistemi di ordine arbitrario

L’equazione alle differenze di un sistema di ordine qualsiasi:

\sum _{k=0} ^{N} a_ky[n-k]= \sum_{k=0} ^M b_kx[n-k]

si può realizzare con il seguente schema a blocchi, che va sotto il nome di forma diretta I.
Cascata quindi di due sistemi, uno non ricorsivo (FIR) ed uno puramente ricorsivo (IIR):

w[n]=\sum_{k=0} ^M b_k x[n-k] ………………………\sum _{k=0} ^N a_ky[n-k]=w[n].

y[n]=\frac 1 {a_0} w[n] -\frac 1 {a_0} \sum _{k=1} ^N a_k y[n-k]=w[n]

Questi due sistemi in cascata, per la proprietà di commutativa della convoluzione possono essere invertiti senza alterare la risposta del sistema complessivo
Eliminando i ritardi non necessari si ottiene la configurazione in forma diretta II (Direct form II), caratterizzata da un numero minimo di ritardi.

Esistono poi svariate altre forme per la realizzazione di questi sistemi.


Realizzazione di filtri digitali

Le strutture studiate possono essere realizzate in varii modi.

In hardware utilizzando registri, sommatori e moltiplicatori. Queste realizzazioni, le più veloci possibili possono essere implementate in circuiti VLSI (Very Large Scale Integration) o FPGA (Field programmable Gate Array), oltre che in componenti discreti. (quest’ultima però è una tecnologia desueta)

In software su CPU general purpose come quelle di sistemi PC, oppure su CPU del tipo ARM 7 ARM 10 ARM 11, CPU di nuova generazione usate in sistemi embedded, telefonini, telecamere, macchine fotografiche e PDA. Le operazioni DSP in questi casi, sono operazioni di elaborazione di dati ed immagini di tipo multimediale, incluso i complessi algoritmi di codifica e decodifica, anche in connessione con operazioni di rete; queste operazioni sono mescolate a più generali compiti di sistema come nel caso dei Personal Computer.

In software su chip DSP che sono delle CPU ottimizzate per l’esecuzione di calcoli ripetitivi di DSP basati su algoritmi MAC (Multiplier Accumulator), come TMS320 ed altre. Queste CPU a differenza della stragrande maggioranza delle CPU usate nei moderni computer di scopo generale (general purpose), sono organizzate su architetture non Von Neumann (architetture di Harvard) caratterizzate da separazione della memoria dati dalla memoria programmi. Questa separazione consente di accedere in parallelo ai dati ed alle istruzioni (dato appunto che stanno in memorie fisicamente distinte) e di accelerare così l’esecuzione. Se poi si dispone anche di una struttura pipeline si realizza una sovrapposizione permanente della fase di execute di una istruzione e di fetch della prossima, aumentando in tal modo la velocità operativa. La densità di integrazione inoltre consente di disporre di più CPU DSP su un singolo chip, promuovendo quindi ulteriore parallelismo.

  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion

Fatal error: Call to undefined function federicaDebug() in /usr/local/apache/htdocs/html/footer.php on line 93