You are on page 1of 5

PROYECTO 2 - FILTRO

1. Especificaciones del diseño preliminares.

a. Redactar en un párrafo el funcionamiento del sistema a diseñar.

El sistema que vamos a diseñar es un filtro no recursivo (la salida es calculada a partir de los
valores previos de entrada) descrito por la siguiente ecuación diferencia:

4
Y [ n ] =∑ h(k )x (n−k )
k=0

Donde los h(k) son los cinco coeficientes que describen el comportamiento del filtro y los x(n)
son los valores de la señal de entrada al filtro.

El sistema requerido debe recibir a traves de un teclado númerico de 4x4 los coeficientes del
filtro y los valores que se requieren pasar por el filtro. Todos los valores recibidos tienen un
rango de 0 a 9. Posteriormente el resultado del filtro debe ser transmitido al computador
mediante comunicación serial asincrona.

b. Describir entradas, salidas y sus características.

BLOQUE TECLADO
Entradas

Salidas

BLOQUE FILTRO

Entradas

Num: Es de 4 bits y es el numero ingresado por el usuario, primero se ingresarán


los coeficientes y luego la entrada, esta entrada va al bloque almacenarF el cual
hace un corrimiento de cuatro bits cada vez que entra un número, hasta que
entren los 10 números, cinco de los coeficientes y cinco de la señal

Start: Es la entrada que le indica al bloque del filtro cuando el bloque de teclado
le envía el bus de 4 bits nuevo, es decir esta entrada es para saber cada vez que el
usuario ingrese un número.

CLK: El sistema diseñado es un sistema síncrono por lo tanto requiere de un


reloj, el reloj de nuestra tarjeta tiene un periodo de 20 ƞS. Vamos a trabajar con
flancos de subida.
Reset: Es la entrada en la que el sistema se reinicia al estado inicial, esta entra
funciona activa en alto, es decir el sistema funciona normalmente hasta que reset
es 0.

Busy2: Es la entrada del siguiente sistema es decir del que envía los datos en
forma serial, esta entrada es para que el sistema envié el resultado del filtro de
forma serial.

Salidas

Busy: Es la salida que le indica al bloque anterior cuando puede


enviar los otros cuatro bits del número ingresado por el usuario,
ya que la entrada de los coeficientes y la señal de entrada es
ingresada número por número.

R_filtro: Es de 9 bits, ya que es el resultado final del filtro, este va


de forma paralela al siguiente bloque.

BLOQUE ENVIO SERIAL


Entradas

R_Filtro: Es la entrada que representa el resultado del filtro; este numero es de


9 bits y es el numero que va a ser enviado de forma serial al computador.

Reset: Es la entrada en la que el sistema se reinicia al estado inicial, esta entra


funciona activa en alto, es decir el sistema funciona normalmente hasta que reset
es 0.

CLK: El sistema diseñado es un sistema síncrono por lo tanto requiere de un


reloj, el reloj de nuestra tarjeta tiene un periodo de 20 ƞS. Vamos a trabajar con
flancos de subida.

Busy: Esta entrada viene del sistema general, es de un bit y le indica al sistema
inicial cuando puede empezar la a enviar los datos de forma serial.

Salidas:

Dato: Esta salida es de un bit y es por donde salen de forma serial los operadores
y la operación al sistema general.

Start: Es una salida que va al sistema general y es la que le indica a este cuando
empieza a enviar los datos de forma serial para que el sistema general los reciba.

2. Diagramas generales.
a. Dibuje en diagrama en bloques del sistema, indique las entradas
y salidas de cada bloque y sus interfaces entre bloques. Indique
además las entradas y salidas generales del sistema.
b. Explique el funcionamiento de cada bloque propuesto y cómo
interactúa con los demás bloques y el exterior (interfaces).

BLOQUE TECLADO

BLOQUE FILTRO
Almacenar F: Este bloque se encarga de recibir los 5 coeficientes del filtro y
los 5 números de entrada del filtro; cada número tiene cuatro bits y como en este
bloque se van a almacenar los 5 números tendremos que la salida de este bloque
es 40 bits, este bloque va a recibir cada número de forma paralela y hace un
corrimiento de 4 bits para ir almacenando cada número.

Contador: Este contador es el encargado de contar de 0 a 4 para hacer la


sumatoria de las multiplicaciones.

Control F: Este bloque es el principal del sistema del filtro y se encarga de


hacer varias tareas que explicaremos a continuación: La primera tarea es recibir los
números ingresados por el usuario y hacer el corrimiento para almacenar los 10
números. Luego de que se ingresen los 10 valores control inicia el contador para
que se empiecen a hacer las multiplicaciones y luego almacenarlas en el bloque
almacenarF2; después de que el contador termine ya ha hecho las 5
multiplicaciones y luego el bloque de control le envían todas las multiplicaciones al
bloque de suma , donde podemos ver que la suma máxima es 405 es decir 9 bits,
luego de que sume las 5 multiplicaciones este le envía el resultado al siguiente
bloque que es el que hace la comunicación serial.
Multiplicación: Este bloque se encarga de hacer las 5 multiplicaciones; tiene
una señal de entrada de 8 bits ya los dos números multiplicados pueden ser del 0
al 9 es decir 4 bits mas 4 bits para hacer la multiplicación de los coeficientes y la
señal de entrada, luego de hacer la multiplicación el número máximo es 81 que se
puede representar con 7 bits y esta señal va a control.

Suma: Se encarga de hacer la suma de los 5 resultados de las multiplicaciones ya


que son 5 resultados de 5 bits, la entrada de este bloque son los 35 bits en los
cuales están los resultados; al hacer la suma de podemos tener un valor máximo
de 405 en la sumatoria por lo tanto el numero de bits necesario es 9 bits que seria
el resultado final del filtro.

Almacenar F2: Este bloque almacena las cinco multiplicaciones y además


tiene tres bits adicionales para hacer el corrimiento de bits, es decir su entrada es
de 7 bits del resultado de la multiplicación más tres bits para hacer el corrimiento
de los bits; su salida es de 35 bits porque debido a que son 5 multiplicaciones y
además cada multiplicación puede ser de 7 bits entonces la salida es de 35 bits.

BLOQUE ENVIO SERIAL

Almacenar: Este bloque tiene una entrada y una salida, la entrada es un bus de
9 bits que representa el resulta del filtro. Este bloque tiene tres funciones, una es
recibir el resultado del filtro de forma paralela cuando el bloque de control le
indique, la segunda enviar de forma serial y tercero ni recibir ni enviar bits.

Contador: Este bloque tiene una entrada y una salida, la entrada es de 2 bits,
un bit para el enable y otro para el reset; la salida es de 1 bit. La función de este
bloque es empezar a contar 9 pulsos de reloj cuando el bloque de control le
indique y cuando termine de contar enviar un uno al bloque de control.

Control: Este bloque tiene cinco entradas y tres salidas, una entrada es el reset,
otra es el clk, otra el enter que indica cuando el usuario ingreso los operadores y la
operación, otra entrada es la que viene del bloque contador que le indica cuando
ya conto los 9 pulsos de reloj y la última entrada es la de busy que le indica al
bloque de control cuando puede iniciar a enviar los bits de forma serial. La función
principal de este bloque es convertir la información ingresada de forma paralela a
serial y enviarla al siguiente sistema, esto lo hace en tiempos determinados por el
usuario y por el sistema general; es decir este bloque almacena cuando el usuario
le indique y envía cuando el sistema general le indique.