29 nov 2010

CONTADOR BCD con CLOCK ENABLE y CLEAR ASÍNCRONO. DECODIFICADO A 7 SEGMENTOS

FINALIDAD:
El fin de este ejercicio es realizar el estudio de la creación de un símbolo a partir de un módulo basado en un lenguaje descriptivo HDL.
ISE’ contiene plantillas de código HDL que representan los componentes lógicos de uso más frecuente, tales como contadores, flip-flop’s D, multiplexores, etc…
Además, ‘ISE’ nos facilita la creación de ficheros fuente HDL con la ayuda de un WIZARD, por lo que no se requiere un conocimiento profundo del lenguaje para proyectos básicos.

Señalar que, un proyecto lógico para CPLD de cierta envergadura, es inviable crearlo mediante el uso de esquemas, por lo que un lenguaje HDL como VHDL, Verilog o ABEL, se hace necesario para profundizar en el diseño de los Dispositivos Lógicos Programables.


ENUNCIADO:

Implementar en el CPLD XC9572 un Contador BCD con permiso de reloj y borrado asíncrono. Su salida será decodificada a 7 segmentos sobre una DISPLAY de cátodo común de 7 segmentos.



ESQUEMA:








   1.  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.


   2.  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’.








   3.  AÑADIR NUEVA FUENTE:

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




   4.  DISEÑAR ESQUEMA DEL CONTADOR:

4.1.      AÑADIENDO COMPONENETES:

Hacemos clic en la pestaña ‘Symbols’ y se nos abre la ventana de símbolos, mostrándonos las librerías y sus componentes correspondientes.


En los diseños donde necesitemos realizar un SET, un RESET, un PRESET o un CLEAR a más de un dispositivo, deberíamos de utilizar siempre la net interna global SET/RESET con bajo skew. Para ello, deberemos de añadir, a la línea a tratar, el buffer global ‘BUFGSR’ o poner el atributo con el nombre ‘BUFG’ y valor ‘SR’.


4.2.      CREANDO UN SÍMBOLO DE UN MÓDULO HDL:

Antes de terminar el diseño tenemos que diseñar el decodificador ‘BCD-7seg’, en código VHDL, y convertirlo en un símbolo que posteriormente podrá ser usado en el esquema general. Sigue los siguientes pasos:




Se creará el siguiente fichero.




La descripción de la arquitectura la podríamos personalizar, en el caso de ser un diseñador experimentado de VHDL, si no es así, podemos utilizar una de las muchas plantillas VHDL que el ‘ISE’ nos ofrece.
Concretamente en ‘ISE’ hay una plantilla que define exactamente nuestro decodificador BCD-7seg y se llama ‘7-Segment Display’.

La plantilla la buscamos en ‘Edit->Language Templates’.



Ahora, simplemente copiamos el contenido de la plantilla y lo pegamos en la arquitectura de la entidad ‘bcd_7seg’.




Guardamos el diseño y desde Project Navigator’, generamos el símbolo del decodificador para utilizarlo en el esquema general.



4.3.      AÑADIENDO SÍMBOLO DEL DECODIFICADOR:

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



4.4.      AÑADIENDO NOMBRES Y MARCAS A LA RED DE LÍNEAS:


En las salidas hemos colocado, manualmente, los OBUF’s para poder nombrar los port’s igual que el nombre del segmento del display y facilitar el estudio de la simulación.







    1.   CREAR EL FICHERO TEST BENCHWAVEFORM:


Seleccionamos la opción de ‘Project->New Source’, elegimos la opción de ‘Test Bench Waveform’, y le llamamos ‘tb_contabcd’. A continuación, asociamos el fichero de test bench al fichero de ‘CONTABCD’.





    2.   SIMULACIÓN FNCIONAL CON MODELSIM:

Teniendo seleccionada la fuente ‘tb_contabcd-testbench_arch [tb_contabcd_tb.vhd]’, pulsamos dos veces seguidas sobre el proceso ‘Simulate Behavioral VHDL Model’.




Y se abrirá el simulador.


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








    1.   INTRODUCCIÓN DE PINES:





Aquí os dejo el enlace para que podáis descargaros el tutorial y el programa: http://cid-64f7131e50857260.office.live.com/self.aspx/CONTADOR%20BCD/CONTABCD.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