ELECTRONIC MEMORIES

SUMADOR DE UN BIT

Posted by discobolo100 en 28 diciembre, 2010

SUMADOR DE UN BIT

Llevamos una semana con otro nuevo programa (xilinx) que…como la mayoría de los programas ha comenzado complicándonos la vida con la instalación y activación de las licencias pero despues de pasar un par de días con ello el programa fue instalado.
Y como no podía ser de otra manera ya tenemos un montón de ejercicios para hacer con el programa, en este caso el ejercicio que nos han planteado es crear un sumador de un bit.
Con ayuda del PDF que se nos ha proporcionado hemos podido realizarlo, y en esta entrada mostraremos el proceso que hemos seguido para realizarlo.

Primero abriremos nuestro entorno de trabajo de xilinx.

Una vez abierto iremos a FILE y aremos clik en new project… entonces nos saldrá un wizard en el que escribiremos el nombre del proyecto, el propio wizard nos crea una carpeta con el nombre del proyecto como se puede ver en la imagen de abajo.

Damos a NEXT y nos sale una ventana en la quetenemos que configurar una serie de parametros los cuales voy a dejar bien explicados a base de imagenes.

Una vez que lo hayamos configurado damos a NEXT y se nos desplegara otra ventana nueva. En la que se nos preguntará si queremos crear una nueva fuente tal y como se muestra en la imagen. En este caso concreto no queremos crear una nueva fuente asi que daremos a NEXT.

La siguiente pantalla que nos saldrá sera una muy parecida a la anterior en la que nos preguntará si queremos añadir una fuente, y al igual que en el paso anterior, no queremos añadir una fuente por lo que haremos clik en NEXT.

Después de dar a NEXT ya habremos terminado de configurar el wizard y nos lo comunicarán en una ventana en la que nos dirá que el wizard ha sido creado, y las caracteristicas propias de nuestro wizard.

Ahora tenemos que comenzar a realizar lo que es el ejercicio en sí. Y para eyo nos apoyamos del PDF que se nos ha proporcionado en el que nos dice que las ecuaciones que debemos implementar son las siguientes:

Ya tenemos las ecuaciones, asi que..¡¡vamos a realizar el esquema!!
para la realización del esquema tenemos que hacer click en “xc9572-15PC84” y en la             ventana  de proces se desplegara un pequeño menu… pues haremos coble click en new   source  (nueva fuente).

Al hacer coble click se nos mostrara un wizard haciendonos la vida mas sencilla, nosotros vamos a crear un sistematic, asi que..hacemos click en sistematic, ponemos el nombre y damos a NEXT.

Al dar a NEXT te sale una ventana en la que te dice que se ha creado satisfactoriamente la fuente y con dar a finalizar valdrá.
Bueno hemos creado el sistematic, pero está en blanco y eso hay que rellenarlo. Para ello aremos doble click en la fuente que se nos ha creado y posteriormente iremos sacando las puertas que vamos a necesitar para la implementacion de la ecuacion antes nombrada.
Una vez tenemos las puertas sacadas las conesionaremos entre sí y pondremos nombre a las entradas y salidas quedando el sistematico como se muestra en la imagen.
Antes de proseguir con nada más debemos cerciorarnos de que no tenemos errores, así que haremos click en check sistematic y veremos si nos da errores, si todo ha salido bien nos mostrará un mensaje en el que nos dice que no ha detectado errores o warning.

¡¡NO HAY ERRORES!!

¿Paso siguiente? pues..¡¡simulación funcional!!
y..si os preguntais que es es, os aconsejo leer el parrafito que he puesto entre las lineas y que he copiado del PDF famoso.
______________________________________________________________________________________________________

PARRAFITO
Para verificar nuestro diseño, se va a utilizar la herramienta de simulación ‘ModelSim’, la cual necesita un fichero fuente de texto de entrada, escrito en un Lenguaje Descriptivo de Hardware (HDL) que contenga los vectores de prueba para poder realizar la simulación a la entidad creada. Para la obtención de este fichero ‘ISE’ dispone de una herramienta llamada ‘HDL Bencher’.
Una vez abierta la herramienta, tenemos dos posibilidades para generar el fichero de test ‘test bench’:
Empleando el formato gráfico que se nos brinda tras la apertura del programa. De manera que los
estímulos los podremos meter gráficamente haciendo clic en las señales de entrada y salida. Este estilo
recibe el nombre de ‘test bench waveform’. Antes de abrir el ‘ModelSim’ el test creado gráficamente será
compilado y convertido a un formato HDL, en nuestro caso VHDL.
Si cerramos el formato gráfico, podremos escribir directamente el fichero de texto en lenguaje HDL,
concretamente en nuestro caso VHDL, utilizando una plantilla genérica a la cual se le debe de añadir a mano
los vectores de prueba.
______________________________________________________________________________________________________

En nuestro ejemplo vamos a emplear el formato gráfico.
Ahora que tenemos una idea de que es eso del test bench vamos a crearlo. Para ello nos vamos al fichero con estensión .sch y damos a new source y en vez de elegir la opcion de sistematic como antes elegiremos la de test bench waveform, lo pondremos nombre y ese nombre lo finalizaremos con “_TB” así nos podremos aclar luego de que fichero es de todos los que se nos habran creado.

Al dar a Next se nos depliega esta ventana, en la que daremos a OK.

Vamos a comprobar la tabla de verdad del sumador completo de un bit. Para ello, meteremos los
estímulos haciendo clic con el botón izquierdo del ratón encima del fondo azul de las entradas, hasta realizar todas las combinaciones de la tabla en la línea de tiempo horizontal.

Ahora lo guardamos y añadimos el test bench al proyecto. Seguidamente haremos clik en el fichero con extensión .sch y veremos como en la ventana de procesos se despliega un menú.
Ese menú tiene una opción llamada “simulate behavioral model” pues haremos doble clik en él y veremos como se abre el model sim.
Una vez abierto haremos click en la lupa negra para ver la simulación.

Al dar a la lupa negra veremos lo siguiente:

Pasamos a analizar las señales y si concuerdan con lo que esperamos que deberian salir.

CREACIÓN DE RESTRICCIONES

Vamos a crear un fichero de restricciones para la localización de pines. Para ello, dentro
de la ventana de procesos, abrimos la utilidad ‘Pre-Assign Package Pins’.

Hacemos doble clik y asignamos las entradas y salidas a las que en realidad deberia tener.

Y por ultimo creamos el informe. Para ello ejecutaremos “implement Design” y ya tendremos hecho el informe.

El último paso sería pasar a programarlo. Pero tenemos problemas con los controladores del cable de descarga, así que de momento la práctica acaba aquí.
Hacer clik aquí para descargar el ejercicio desde megaupload.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

 
A %d blogueros les gusta esto: