Sei sulla pagina 1di 2

Filtri Digitali

Introduzione al progetto di Filtri


Digitali A/D Elaborazione
Digitale D/A

Fabio Campi
Corso di Elettronica dei Sistemi Digitali LS
AA 2003-
2003- 2004

Filtri Digitali Filtri Digitali

Un generico Filtro passabanda e’ descritto dalla propria funzione di


trasferimento:

H(f) = Y(f) / X(f)

Grazie al passaggio A/D,


Un filtro digitale, permette un alto livello di generalita’ e riprogrammabilita’
che e’ esclusa in ca s o di filtri analogici , e un controllo molto piu’ raffinato
sulla precisione del calcolo in quanto indipendente da parametri fisici
Applicazione tipica di Algoritmi DSP e’ il filtraggio di un determinato range
di frequenze a partire da un determinato segnale digitale

FIR Finite Impulse Response Filter FIR Finite Impulse Response Filter
Schemi delle Lezioni di Comunicazioni Elettriche ,
Schemi delle Lezioni di Comunicazioni Elettriche , Prof. L.Calandrino, pag. 3.20
Prof. L.Calandrino, pag. 3.20

y(t) = S n h k x(t-k T)
Si consideri il circuito in figura: la funzione di trasferimento puo’ essere
descritta come:
Y(? ) = X(? ) * S n hk e -jK? T
y(t ) = Sn hk x(t -kT)
H(? ) =S n h k e -jK? T

1
FIR Finite Impulse Response Filter FIR Finite Impulse Response Filter

Dato quindi un numero sufficientemente elevato di TAPS Coefficienti)


ed una Precisione di calcolo (data width) sufficientemente accurata e’ Le Caratteristiche fondamentali del filtro :
possibile descrivere attraverso un sistema digitale (fornito di catena • Ripple
A/D <- > D/A) qualsiasi operazioe di filtering di un segnale elettrico • Transition Bandwidth

Dipendono dal numero di coefficienti e dalla precisione


della rappresentazione

Implementazione:: Codice C
Implementazione Implementazione:: Risc µP
Implementazione
n int fir ( int* v,
v,int*
int* a) $L17:
lw $2,0($6)
{ int i,j,acc=0; lw $3,0($7)
mul $2,$2,$3
for(i=DIM
for (i=DIM--1;i>=0;i
1;i>=0;i-- --)) addu $10,$10,$2
addu $7,$7,- 4
for(j=TAPS
for (j=TAPS--1;j>=0;j
1;j>=0;j-- --)) addu $6,$6,4
addu $8,$8,- 1
{ if
if(j<
(j<=i
=i)) acc += v[i-v[i-j]
j]*a
*a[j];
[j]; }
bgez $8,$L17
return acc acc;; }
Performance (issue delay) -> 8 clocks * clock period

Implementazione: DSP
Implementazione: DSP Implementazione: VLIW o Superscalar
Implementazione:
Processor DSP
DS P Processor
$L17: $L17:
lw $2,0($6) lw $2,0($6)
lw $3,0($7) addu $6,$6,4
mad $10,$2,$3
addu $7,$7,- 4 lw $3,0($7)
addu $6,$6,4 addu $7,$7,- 4

bgezdec $8,$L17 mad $10,$2,$3


bgezdec $8,$L17

Performance (issue delay) -> 6 clocks * clock period Performance (issue delay) -> 3 clocks * clock period