0% encontró este documento útil (0 votos)
62 vistas

Manual Xilinx

Este documento presenta una práctica de diseño digital utilizando el software Xilinx ISE 9.1. Explica cómo crear un proyecto, diseñar circuitos lógicos para resolver un problema, simularlos y asignarlos a los pines de una FPGA. Se resuelve un problema lógico utilizando compuertas AND, OR y NOT y se crean símbolos para cada salida. Finalmente, se simula el diseño y se asignan los pines de entrada y salida a la tarjeta de desarrollo.

Cargado por

PakitoCachorros
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
62 vistas

Manual Xilinx

Este documento presenta una práctica de diseño digital utilizando el software Xilinx ISE 9.1. Explica cómo crear un proyecto, diseñar circuitos lógicos para resolver un problema, simularlos y asignarlos a los pines de una FPGA. Se resuelve un problema lógico utilizando compuertas AND, OR y NOT y se crean símbolos para cada salida. Finalmente, se simula el diseño y se asignan los pines de entrada y salida a la tarjeta de desarrollo.

Cargado por

PakitoCachorros
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 15

Universidad Catlica de Oriente

Facultad de Ingeniera
Laboratorio de diseo digital I
PRACTICA # 0
El objetivo de la prctica es conocer el software Xilinx ISE 9.1 mediante la captura de
esquemticos.
El problema a resolver:
X(2) X(1) X(0) Z(2) Z(1) Z(0)
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1
1
0
1
1
1
1
1
1
0
0
1
0
1
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
0
1
Las ecuaciones para las tres variables de salida son:
Z2 = !X0X2 + X0X1
Z1 = !X2X1 + !X0X1 + X0!X1X2
Z0 = !X2X1 + X0X1 + !X0!X1X2
Ahora comencemos con el Xilinx ISE.
Ejecutar el programa
INICIO > PROGRAMAS > XILINX ISE 9.1I > PROJECT NAVIGATOR
El prximo paso es crear un proyecto: FILE > NEW PROYECT

Se abre el cuadro de opciones para crear un proyecto

En este cuadro se selecciona el nombre del proyecto (PROJECT NAME), use nombres sin
espacios ni caracteres; para la prctica utilicemos tut1. Tambin se puede seleccionar la
ubicacin del proyecto y el tipo del mdulo de ms alto nivel (TOP-LEVEL MODULE
TYPE), en nuestro caso, esquemticos (SCHEMATIC). Presione siguiente.
El siguiente paso es seleccionar el dispositivo:

Xilinx (http://www.xilinx.com) es fabricante de varios tipos de dispositivos reprogramables


(CPLDs, FPGAs, etc). El programa de Ingeniera electrnica, cuenta en el laboratorio con
FPGAs de la familia Xilinx Spartan3E XC3S100E.
Completamos la parte superior del cuadro con estos datos.
La parte inferior muestra las herramientas de sntesis (SYNTHESIS TOOL), el simulador
(SIMULATOR) y el lenguaje de Simulacin generado (GENERATED SIMULATION
LANGUAJE). Para nuestro caso las opciones por defecto son suficientes.
Finalmente presione siguiente tres veces consecutivas (en estos pasos se pueden agregar
archivos al proyecto pero lo haremos posteriormente)

Una vez creado el proyecto, hay que crear un nuevo diseo de esquemtico. Para ello hacer
clic derecho sobre el rea SOURCES y clic en NEW SOURCE

Aparecer un cuadro de dilogo en donde debemos seleccionar el nombre del archivo


(tut1Z2 ya que es el esquemtico para la variable de salida Z2) y el tipo de archivo
(SCHEMATIC).

Una vez seleccionado el tipo de archivo y el nombre, pulsar NEXT. En el siguiente cuadro de
dilogo, simplemente resume las propiedades del esquemtico que acabamos de crear.
Una vez hecho esto se abrir el editor de esquemticos. Si no aparece esta pantalla, de clic
en SOURCES en la parte derecha de la pantalla y luego doble clic en el nombre del
esquematico

En la parte izquierda superior hay una ventana con cuatro pestaas, en la primera podemos
ver la jerarqua de los mdulos (SOURCES) que en un proyecto simple, aparecen los
archivos de trabajo) y en la cuarta se encuentran los smbolos (SYMBOLS) donde se
encuentran los componentes que se pueden aadir a un esquemtico.

Smbolos est dividido en varios cuadros de dialogo. En el primero de ellos, categoras


(CATEGORIES) se puede escoger el tipo de elementos que se quiere usar, como puertas
lgicas, comparadores, multiplexores, memorias, etc. Este acta como filtro para el cuadro
de dialogo Smbolos (SYMBOLS), en este es donde finalmente se selecciona el componente
especifico (por ejemplo AND2, and de 2 entradas). Tambin si se conoce el nombre exacto
se puede utilizar el cuadro SYMBOL NAME FILTER.

Recordemos que la ecuacin para Z2 es !X0X2 + X0X1, por lo tanto para comenzar aadimos
una AND de dos entradas (and2), una AND de dos entradas con una entrada negada
(and2b1) y una OR de dos entradas (or2); estas se encuentran bajo la categora LOGIC. Si se
desea cambiar la rotacin puede usar el cuadro ORIENTATION.
Despus de agregar todos los componentes el editor se debe ver como la siguiente figura:

Luego conectemos los componentes con la herramienta agregar conexin (ADD WIRE)
,
ubicada en la parte superior izquierda de la pantalla. Al terminar el circuito debe quedar
como en la figura:

Ahora es necesario definir las entradas y salidas del circuito; por lo tanto es necesario
agregar marcadores de Entrada/Salida (ADD I/O MARKER)
. Seleccione la herramienta
y de clic sobre los puntos que son entradas o salidas.
Cuando se selecciona una herramienta, en la parte inferior izquierda, aparecen las opciones
para esta, para este caso aparecen opciones sobre la direccin del marcador (Entrada,
salida, Entrada/Salida, etc.). Antes de dar clic sobre cada punto de Entrada/Salida seleccione
la direccin correcta. Al finalizar el circuito se debe ver como la figura:

Ahora editemos cada nodo para que corresponda con el nombre de cada entrada o salida.
Para esto doble clic sobre el marcador

En NAME escribimos el nombre correspondiente a cada marcador (X0, X1, X2, o Z2), Al
finalizar el circuito se debe ver como en la figura:

Una vez terminado el diseo del circuito puede hacerse una comprobacin simple sobre el
mismo para asegurarnos de que todas las conexiones estn bien hechas y que no hay cables
sueltos o puertas sin conectar. Para ello desde el men principal clic en Tools y dentro de
este men en Check Schematics. Aparecer una ventana que nos informar si hay algn
Error o Warning.

Creacin de un smbolo
Con el diseo realizado se podr hacer un nuevo componente, consistente en un caja
negra, un bloque con el mismo nmero de entradas y salidas del circuito original diseado
y con su funcionalidad. Este nuevo smbolo creado pasa a formar parte de la librera de

componentes del proyecto y podr utilizarse como un componente ms. Esto es


fundamental para realizar diseos jerrquicos.
Para crearlo desde el men principal clic en TOOLS y dentro de este men SYMBOL
WIZARD.

Aparecer la siguiente ventana en la que sealaremos la opcin USING SCHEMATIC.

Aparecen un conjunto de ventanas que permiten editar el smbolo, como no vamos a


cambiar el smbolo por defecto podemos dar siguiente.
Al terminar una nueva librera con el nombre del proyecto estar disponible en
CATEGORIES.
Realice el procedimiento para las otras dos salidas, creando sus respectivos smbolos. Al
finalizar, deben aparecer estos dos esquemticos en el proyecto

Esquemtico para Z1

Esquemtico para Z0
Creemos un nuevo esquemtico para conectar los tres bloques diseados, recuerden clic
derecho sobre SOURCES y luego NEW SOURCE.

Los simbolos para las tres salidas aparecen en CATEGORIES con la ruta del proyecto

Agregamos los tres smbolos al esquemtico y los conectamos

Antes de continuar, vamos a crear un bus para la entrada y otro bus para la salida. Un bus
no es ms que una agrupacin lgica de lneas que cumplen una misma funcin. En este
caso podemos decir que existe un bus de entrada que llamaremos X y un bus de salida que
llamaremos Z. Para esto, nombramos las lneas (dando doble clic sobre ellas) ya no como X2,
X1 o X0, sino X(2), X(1) y X(0). Hacemos lo mismo con las salidas: Z(2), Z(1) y Z(0).

Luego, en cualquier parte del esquemtico agregamos dos lneas y las llamamos X(2:0) y
Z(2:0) respectivamente. Finalmente le ponemos el marcador correspondiente (entrada para
X y salida para Z). El esquemtico final debe verse como en la figura

Simulacin
Para simular el circuito diseado, damos clic en SOURCES, y cambiamos la barra SOURCES
FOR de SYNTHESIS/IMPMENTATION a BEHAVIORAL SIMULATION

Luego clic derecho sobre el rea de SOURCES, Seleccionamos NEW SOURCE, pero en este
caso al crear la nueva fuente seleccionamos TEST BENCH WAVEFORM y le damos un
nombre al archivo de simulacin, por ejemplo tb_tut1Fin:

Luego clic en NEXT, nos pregunta cual modulo dentro del proyecto deseamos simular,
seleccionamos tut1Fin que contiene los tres bloques ensamblados presionamos NEXT
siguiente dos veces y luego finalizar.
Al hacer esto aparece una ventana para iniciar los parmetros de simulacin. Nuestro
circuito es combinacional (la diferencia entre combinacional y secuencial se ve dentro de los
temas del curso). Por lo tanto seleccionamos COMBINATORIAL (OR INTERNAL
CLOCK), el resto de opciones pueden dejarse por defecto.

Se abre el editor de formas de onda del simulador. Como el circuito es extremadamente


simple realizamos todas las posibles combinaciones dando clic en la parte inicial del rea
gris de la seal de entrada X; esto abre el editor de patrones.

Damos clic en PATTERN WIZARD. Para generar todas las posibles combinaciones de las
entradas podemos realizar un conteo hacia arriba de 1 en 1 de 0 a 7. Las opciones para que
el PATTERN WIZARD cree esto, son las que se ven en la figura.

Clic en OK, y el patrn de X cambia como se ve en la figura

Guardamos el archivo de simulacin, al hacer esto en SOURCES aparece el archivo.


Para simular, damos clic en el archivo y en la pestaa PROCESS VIEW (parte inferior
derecha de la pantalla) aparece la opcin SIMULATE BEHAVIORAL MODEL bajo la
opcin XILINX ISE SIMULATOR

Damos doble clic, y el proceso de simulacin comienza. Al finalizar el resultado aparece en


una nueva ventana:

Como vemos se cumple la tabla de verdad con la que partimos el diseo


Implementacin
La FPGA se encuentra en un sistema de desarrollo de la compaa digilent

Para la implementacin necesitamos que las entradas X2, X1 y X0 sean suiches, mientras
que las salidas Z2, Z1 y Z0 sean leds. Por lo tanto cada pin de la FPGA debe ser asignado a un
siguiendo las instrucciones entregadas por el fabricante de la tarjeta de desarrollo (Digilent
inc)
Para asignar los pines debemos cambiar la barra SOURCES FOR nuevamente a
SYNTHESIS IMPLEMENTATION seleccionamos el esquemtico en SOURCES y. En la
parte inferior en PROCESS aparece la opcin USER CONSTRAINTS y dentro de esta
ASSIGN PACKAGE PINES.

Al dar doble clic el ISE pregunta si desea crear un nuevo archivo de restricciones (UCF) a lo
que respondemos si. Al hacer esto se abre el PACE. Este es un programa que permite crear
restricciones de rea, tiempo, etc para la FPGA. En nuestro caso solo nos interesa la
asignacin de pines. Llenamos la tabla con los valores que seleccionamos anteriormente
pero antecediendo la letra p. Al terminar el PACE se debe ver como en la figura siguiente:

Guardamos (si aparece el cuadro de dialogo Bus Delimeter seleccionamos XST OPTIONAL
{}) y cerramos el PACE.
El ltimo paso es programar la FPGA, para esto conecte el cable JTAG al puerto USB y
finalmente el adaptador.
Seleccione el esquemtico en SOURCES y de doble clic en GENERATE PROGRAMMING
FILE. Xilinx ISE comienza todo el proceso de Sntesis del circuito e Implementacin. Deben
aparecer marcas verdes sobre los tres procesos (SYNTHESIZE, IMPLEMENT DESIGN
y GENERATE PROGRAM FILE), en caso de error observe la consola (parte inferior) e
intente corregir el error.

Luego dentro de GENERATE PROGRAM FILE ejecutamos el IMPACT. Seleccionamos


BOUNDARY SCAN MODE, presionamos Siguiente y seleccionamos AUTOMATICALLY
CONNECT TO CABLE AND IDENTIFY BOUNDARY-SCAN CHAIN. El software
comienza a buscar la FPGA por todos los puertos posibles.
Cuando termine la bsqueda, de clic derecho sobre el grfico de la FPGA y seleccione
ASSIGN NEW CONFIGURATION FILE. Seleccione el archivo .bit del proyecto en el que
est trabajando (tut1Fin.bit).

Al hacer esto se nos advierte sobre un problema de configuracin del reloj. Podemos
ignorarlo. Luego presionamos clic derecho sobre el grfico de la FPGA y clic en PROGRAM.
Finalmente OK para programar la FPGA

Verifique el funcionamiento del circuito con los suiches y los leds asignados.

También podría gustarte