Está en la página 1de 2

INGENIERÍA ELECTRO NICA DEL TecNM/I T DE TIJUANA Diseño digital con VHDL

19

Filtro digital

Dr. MIGUEL AURELIO DUARTE-VILLASEÑOR † , Profesor


Erick Daniel Dagio Diaz†, Estudiante

v = zeros(L, 1); % INICIALIZAR VECTOR DE CALCULOS


1. Descripcion
TEMPORALES
N = length(x);
El funcionamiento del filtro sigue la forma canónica cuya
for n = 1:N
estructura para orden dos se muestra en la Fig. 2. Esta
estructura permite calcular la salida utilizando 3L ac = x(n);
posiciones de memoria (siendo L la longitud del filtro) for k = 2:L
frente a las 4L posiciones que requiere la forma directa ac = ac-a(k)*v(k);
derivada de la ecuación de recurrencia de un filtro genérico end % CALCULO DE LA PARTE RECURSIVA
[5, 6]: y[n] = X M k=0 b[k]x[n − k] − X M k=1 a[k]y[n – k v(1) = ac;
ac = b(1)*v(1);
for k = L:-1:2
2. Entidad ac = ac+b(k)*v(k);
v(k) = v(k-1);
end % CALCULO DE LA PARTE NO RECURSIVA
y(n) = ac;
end

4. Resultados de la Práctica

3. Código VHDL

El código realizado es el siguiente:

function y = iir1(b, a, x)
b = b./a(1);
a = a./a(1); % NORMALIZAR COEFICIENTES
L = max([length(a), length(b)]);
M = L-1;
while length(a) < L
a = [a, 0];
end
while length(b) < L
b = [b, 0];
end % IGUALAR LONGITUDES DE VECTORES DE Fig. 2 simulación
COEFICIENTES
† Ingenierı́a Electrónica en el TecNM/IT de Tijuana.

También podría gustarte