29 nov 2010

CONTADOR BINARIO DE 4 bits con CLOCK ENABLE y CLEAR ASÍNCRONO

FINALIDAD:
El fin de este ejercicio es realizar el estudio de la creación de un símbolo a partir de un esquema.


ENUNCIADO:
Implementar un Contador Binario de 4 bit’s con permiso de reloj y borrado asíncrono. Su salida será decodificada (binario a decimal) sobre una barra de 10 LED’s, los cuales nos mostrarán la cuenta a razón de su peso, tal como indica la tabla de verdad del decodificador.


ANÁLISIS:

La tabla de verdad del decodificador ‘binario-decimal’ tendrá por entrada la salida del contador:


Las salidas responden a:
Led9 = Q3 /Q2 /Q1 Q0
Led8 = Q3 /Q2 /Q1 /Q0
Led7 = /Q3 Q2 Q1 Q0
Led6 = /Q3 Q2 Q1 /Q0
Led5 = /Q3 Q2 /Q1 Q0
Led4 = /Q3 Q2 /Q1 /Q0
Led3 = /Q3 /Q2 Q1 Q0
Led2 = /Q3 /Q2 Q1 /Q0
Led1 = /Q3 /Q2 /Q1 Q0
Led0 = /Q3 /Q2 /Q1 /Q0





         1.  ESQUEMA:




2.  ABRIR PROJECT NAVIGATOR:

En el escritorio encontramos el icono del ‘Project Navigator’, hacemos doble clic y se abre el entorno con el último proyecto con el que hemos trabajado.



3.  CREAR NUEVO PROYECTO:

Desde ‘File->New Project’ configuramos los primeros parámetros del proyecto tal como el nombre ‘CONTABIN’ y el tipo ‘Schematic’. Hacemos clic en ‘Siguiente’.



Configuramos Familia, Dispositivo, Encapsulado, Velocidad, Sintetizador, Simulador y Lenguaje de simulación.






4.  AÑADIR NUEVA FUENTE:

Vamos a añadir una fuente a nuestro proyecto, con el nombre de ‘contabin’, utilizando un lenguaje formal de presentación gráfico. Llegaremos hasta una ventana.





5. DISEÑAR EL ESQUEMA DEL CONTADOR:

     5.1.      AÑADIENDO COMPONENTES:

El diseño del contador binario de 4bits con permiso de reloj y borrado asíncrono, queda resuelto al seleccionar la primitiva desarrollada por Xilinx ‘CB4CE’.





        5.2.      CREANDO UN SÍMBOLO:

El decodificador (deco) no lo vas a encontrar porque no existe, lo tienes que hacer siguiendo los siguientes pasos.
o        Creamos una ‘Schematic’ como ya he explicado anteriormente.
o        Se te abrirá la ventana para introducir símbolos y debes hacer el siguiente esquema.


o   Debes etiquetar las salidas.
o   Se guarda el proyecto y desde Project Navigator’, generamos el símbolo del decodificador para utilizarlo en el esquema general.






5.3.  AÑADIEDO SIMBOLO DEL DECODIFICADOR:

El símbolo del decodificador ha sido añadido a la categoría de símbolos, desde donde puede ser llamado.





    1.   CREAR EL FICHERO TEST BENCH WAVEFORM:

El test bench es un fichero VHDL en el que se instancia la entidad que se desea probar ‘uut’ (unit under test).
A esta unidad se le aplican un conjunto de vectores de prueba (estímulos), en modo texto o gráfico, de los cuales se conoce la salida esperada. Posteriormente, desde el ‘ModelSim’, se compara la salida que ofrece la ‘uut’ con la salida esperada, y si no son iguales es que ha habido algún error.
Pulsando el botón derecho sobre el fichero ‘contabin.sch’ seleccionamos la opción de ‘New Source’. En la siguiente pantalla elegimos la opción de ‘Test Bench Waveform’, y le llamamos ‘tb_contabin’.



A continuación, asociamos el fichero de test bench al fichero de ‘contabin’.





Hecho esto, se nos lanza una ventana desde la que podemos configurar los parámetros temporales de la simulación.
Esta ventana de configuración la dejamos por defecto, observando que el tiempo del reloj en estado alto es de 100ns, lo mismo que en el estado bajo. Por otra parte el ‘setup time’ y el ‘hold time’ es de 15 ns. Aquí, también se define la entrada de reloj (elegimos el pin ‘CLOCK’).

Nota.- El tiempo de test es 2500ns para que podamos observar toda la cuenta.

Ahora ‘HDL Bencher’ se nos abre dentro del entorno ‘ISE’ mostrándonos las formas de onda.







    2.   GENERANDO RESULTADOR PREVISTOS DE LA SIMULACIÓN:
ModelSimeta muy completa, pero debido a que en la simulación funcional no tenemos en cuenta los retardos de la circuitería interna, con la ayuda de la herramienta ‘HDL Bencher’ también podemos comprobar si los resultados que habíamos previsto obtener son los correctos.

Para ello hacemos doble clic en ‘Generate Expected Simulation Results’ situado en la ventana de procesos.






    3.   SIMULACIÓN FUNCIONAL CON MODELSIM:
Antes de arrancar la utilidad de simulación ‘ModelSim, añadimos el fichero test bench al proyecto haciendo clic en ‘Add Test Bench to Project’. Esto genera un nuevo fichero en formato HDL, en nuestro caso VHDL, denominado tb_contabin_tb.vhd’, que será utilizado por ‘ModelSimpara realizar la simulación.



Y se abrirá el simulador.



Y saldrá la simulación de las señales que has metido.





    1.   INTRODUCCIÓN DE PINES:






Se introducen los pines e modo texto en la tabla que nos encontramos a la izquierda, pero también se puede hacer de forma gráfica pero es más rápido de la primera forma.



    2.   IMPLEMENTACIÓN:

Con la implementación del diseño, si está correcto todo, se terminaría el diseño.






Aquí os dejo el enlace para que os podáis descargar el tutorial y el programa: http://cid-64f7131e50857260.office.live.com/self.aspx/CONTABIN/CONTABIN%5E_1.rar

0 comentarios:

Publicar un comentario

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes Powered by Blogger | DSW printable coupons