Вы находитесь на странице: 1из 11

Circuitos Electrónicos Integrados

LABORATORIO Nº 09

“FPGA – Programación en Entorno


Gráfico”

Alumnos :

Grupo : Profesor: Nota:


Semestre :
Fecha de entrega : Hora:
ANÁLISIS DE TRABAJO SEGURO (ATS)

FECHA
TAREA: DIA MES AÑO

LABORATORIO AMBIENTE:
EQUIPO DE

FIRMA
DOCENTE:
TRABAJO
TALLER SESIÓN N°

FIRMA

FIRMA
1. 4.
ALUMNOS

FIRMA

FIRMA
(Apellidos y 2. 5.
Nombres)

FIRMA

FIRMA
3. 6.

CARACTERÍSTICAS DE EQUIPOS Y HERRAMIENTAS:

OTROS
PASOS DE LA TAREA RIESGOS MEDIDAS DE CONTROL
(ESPECIFICAR PARA
CADA PASO)

10

11

12
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 1 / 9

I. OBJETIVOS
a) Identificar la arquitectura de las FPGA.
b) Programar un FPGA utilizando lenguaje esquemático para crear circuitos lógicos.
c) Cargar correctamente el archivo .BIT en el FPGA.
d) Realizar Síntesis, implementar y generar un archivo de programación.

II. MATERIAL Y EQUIPO


 01 FPGA Atlys Digilent.
 Cable Microusb - Usb

III. FUNDAMENTO TEORICO

Los FPGA (Field Programmable Gate Array) son circuitos lógicos programables directamente por el
usuario, lo cual requiere de herramientas de costo relativamente bajo, como lo son el software de
desarrollo y el dispositivo grabador. La grabación o programación de uno de estos dispositivos se puede
llevar a cabo en milisegundos. Los FPGA son muy utilizados por fabricantes que producen tecnología a
baja escala, como por ejemplo diseñadores de equipos de propósito específico, los cuales no pueden
justificar la producción de ASICs por los bajos volúmenes de dispositivos que venden. Los FPGAs tienen
una funcionalidad similar, a costos menores y con una velocidad ligeramente menor. También los
FPGAs se utilizan como prototipos, los cuales se pueden depurar y permiten refinar el diseño. Con el
software de diseño se puede simular en hardware antes de mandar a fabricar el ASIC correspondiente

Estructura general de las FPGAs

El proceso de diseño de un circuito digital utilizando una matriz lógica programable puede
descomponerse en dos etapas básicas:

 Dividir el circuito en bloques básicos, asignándolos a los bloque configurables del dispositivo.
 Conectar los bloques de lógica mediante los conmutadores necesarios

Ilustración 1: Estructura general de una FPGA (en concreto de XILINX)

Los elementos básicos constituyentes de una FPGA como las de Xilinx se pueden ver en la
Ilustración 1 y son los siguientes:
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 2 / 9

 Bloques lógicos, cuya estructura y contenido se denomina arquitectura. Hay muchos tipos de
arquitecturas, que varían principalmente en complejidad (desde una simple puerta hasta módulos
más complejos o estructuras tipo PLD). Suelen incluir biestables para facilitar la implementación de
circuitos secuenciales. Otros módulos de importancia son los bloques de Entrada/Salida

 Recursos de interconexión, cuya estructura y contenido se denomina arquitectura de rutado.

 Memoria RAM, que se carga durante el RESET para configurar bloques y conectarlos.

Seguridad en la ejecución del laboratorio

Tener cuidado con el tipo y niveles de voltaje con


los que trabaja.

Antes de utilizar el multímetro, asegurarse que


esta en el rango y magnitud eléctrica adecuada.

Tener cuidado en la conexión y en la desconexión


de los equipos utilizados
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 3 / 9

PROCEDIMIENTO.

Estructura externa del FPGA ATLYS


Datos generales
 Xilinx Spartan-6 LX45 FPGA, paquete BGA 324 pines.
 128 MByte DDR2 de datos amplia de 16 bits.
 10/100/1000 Ethernet PHY.
 Puertos a bordo USB2 para la transferencia de la programación y de
datos.
 USB-UART y puerto USB HID (por ratón / teclado).
 Dos puertos HDMI de entrada de vídeo y dos puertos de salida HDMI.
 AC-97 Codec con entrada de línea, salida de línea, micrófono, auriculares.
 Monitores de energía en tiempo real sobre todos los carriles de
alimentación.
 X4 16 MByte SPI Flash para almacenamiento de configuración y de datos.
 100MHz CMOS oscilador.
 48 I / O para enrutador de conectores de expansión.
 GPIO incluye 8 LEDs, 6 botones, y 8 interruptores deslizantes.
 Se envía con un 20W fuente de alimentación y el cable USB.

Crear un programa en lenguaje


esquemático de compuertas
lógicas.

1. Para crear un nuevo


proyecto, Inicio> Programas> Xilinx
ISE Design Suite 11> ISE>
Navegador de proyectos.

2. En Navegador de
proyectos, seleccione la opción
Nuevo proyecto en el menú de
introducción.

3. Navigator, seleccione la
opción Nuevo proyecto en el menú
de introducción (o seleccionando
Select Archivo> Nuevo proyecto).

4. Esto nos lleva a un cuadro


de diálogo donde se puede
introducir el nombre del proyecto
y la ubicación del proyecto.

5. Seleccionamos la Familia
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 4 / 9

del FPGA, dispositivos y paquetes


para su proyecto. Esto depende de
la ficha que está apuntando para el
proyecto. Los valores apropiados
para un proyecto adecuado para el
tablero que son las siguientes:

6. Una vez introducidos los


ajustes apropiados, haga clic en
Siguiente. Los siguientes dos
cuadros de diálogo le dan la opción
de añadir archivos de origen de
nuevos o existentes a su proyecto.

Navegador de proyectos Visión


general

7. Una vez que el nuevo


proyecto se ha creado, ISE abre el
proyecto en Project Navigator.
Haga clic en la pestaña Diseño para
mostrar el panel Diseño y haga clic
en la pestaña Consola para mostrar
el panel Consola.

El panel de Diseño (1) contiene dos ventanas: una ventana Fuentes que
muestra todos los archivos de origen asociados con el diseño actual y una
ventana de proceso que muestra todos los procesos disponibles que se
pueden ejecutar en un archivo de origen seleccionado.
El panel de la consola (2) muestra los mensajes de estado, incluyendo los
mensajes de error y de advertencia.
La ventana del editor de HDL (3) muestra el código fuente o el esquema de los
archivos seleccionados en el panel Diseño.
Añadiendo nuevos ficheros Fuente

8. Una vez creado el nuevo


proyecto, dos fuentes se enumeran
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 5 / 9

en fuentes en el panel Diseño: el


nombre del archivo del proyecto y
el dispositivo de destino para el
diseño. Usted puede agregar un
archivo de origen nueva o
existente al proyecto. Para ello,
haga clic en el dispositivo de
destino y seleccione una de las tres
opciones para agregar archivos de
origen.

9. Creamos un nuevo archivo


de origen, por lo que
seleccionamos Nueva Fuente de la
lista. Esto inicia el Asistente para
nuevo origen, lo que le pide el tipo
de fuente y el nombre del archivo.
Seleccione esquemática y darle un
nombre significativo (nombramos
circuit1).

10. Agregamos símbolos y


formas que representan a puertas
lógicas o circuitos lógicos y luego
añadir líneas que representan los
cables para conectar esas formas.

11. En la pantalla, hay dos


cuadros de lista Símbolos y
Categorías etiquetados.

12. La lista muestra todos los


símbolos de los símbolos en la
categoría seleccionada en la lista
Categorías. Por ejemplo, el "<-
Todos los símbolos ->" categoría
muestra todos los símbolos en la
biblioteca actual en la lista de
símbolos.

13. Ahora conectamos las


puertas con cables. Para ello, haz
clic en el botón de la herramienta
de alambre añadir a cambiar al
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 6 / 9

modo de alambre agregar. Arrastre


el cursor a un pin componente
donde aparecen cuatro cajas de
color rojo (que indican que un clic
izquierdo añadirá un extremo del
cable a la clavija). Con este método
se puede añadir cables entre los
pines de puertas.

14. Para mover una puerta,


debe volver a seleccionar el modo,
ya sea seleccionando el cursor en
la barra de herramientas o
pulsando el botón Esc en el
teclado.

UCF Creación del archivo


Las herramientas de Xilinx utilizan un archivo Restricciones de usuario (.ucf
15. Para agregar un archivo archivo) para definir restricciones de usuario como pin físico a las asignaciones
.ucf a su diseño, vaya a la ventana netas de circuito. Esto se conoce como una implementación del archivo veces
Orígenes y haga clic derecho en el Restricciones. El archivo .ucf puede modificarse dentro ISE utilizando un editor
archivo de origen que requiere de texto.
restricciones de usuario.
Seleccione la opción Nuevo Fuente
Añadir en el menú desplegable. El
Asistente de Nueva Fuente le pide
el tipo de fuente y el nombre del
archivo. Seleccione Restricciones
de implementación del archivo y
darle un nombre significativo
(nombramos circuit2).
16. Para editar el archivo .ucf,
seleccionarlo en la ventana
Fuentes, expanda la opción
Restricciones de usuario en la
ventana de Procesos de abajo, y
haga doble clic en la opción Editar
Restricciones (texto). Aparecerá un
editor de texto en blanco.

17. Para asociar un alfiler físico


con un nombre de red
determinada, escriba: NET LOC
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 7 / 9

"netname" = "XXX"; en una línea


en el archivo .ucf. En el
comunicado, "netname" (comillas
incluidas) es el nombre de la red
para conectar a la patilla número
XXX (comillas incluidas).
18. Para nuestro proyecto de
ejemplo, las 2 entradas se asignan
a conmutadores 0 a 1 y la salida se
asigna a LED0 en el tablero Nexys2.
El archivo .ucf acabado es como
sigue:
Generación Programación Archivo

19. Ahora estamos listos para


crear un archivo de programación
(.bit) para el Nexys2 FPGA.
20. Vaya a la ventana Fuentes
y seleccionar el módulo de nivel
superior (indicado por los tres
bloques que se muestran con el
nombre de la fuente.)
21. Ahora vaya a la ventana
Procesos donde hay tres procesos
particulares en una fila:
1. Sintetizar - XST
2. Implementar Diseño
3. Generar archivo de
programación

1. Ejecutar el proceso de síntesis haciendo doble clic en Sintetizar o


izquierdo del ratón y seleccionando la opción de ejecución. Este
proceso analiza el circuito que ha creado, la comprobación de
conexiones válidas, la sintaxis y estructura, para verificar que el
circuito es válida y sintetizable.
2. Si el proceso Sintetizar no devuelve ningún error, puede seguir
adelante y ejecutar el proceso de diseño de implementar. Este
proceso utiliza diversos algoritmos para trazar el circuito digital y
luego crea lugar y la ruta de información de modo que pueda ser
colocado en la FPGA física.

Opciones de inicio de reloj

24. Si el proceso de Diseño


Implementar no devuelve ningún
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 8 / 9

error, puede ejecutar el proceso de


archivos Generar Programación.
Antes de hacer esto, haga clic
derecho en el proceso de archivos
de programación Generar y
seleccione Propiedades de
Proceso. En el panel de la ventana
Propiedades Proceso categoría,
seleccione Opciones de inicio.

25. El primer elemento en el panel de la derecha es la propiedad FPGA de


puesta en marcha del reloj. Esta opción permite que un archivo de
configuración o bien configurar una acometida directamente de la PC, o cargar
una configuración de la memoria flash de la plataforma en el tablero. Para
configurar el tablero de la PC, el valor del reloj de puesta en marcha debe ser
JTAG Reloj. Para configurar la tarjeta de la memoria flash plataforma, el valor
del reloj de puesta en marcha debe ser CCLK.
26. Después de seleccionar el valor adecuado de reloj de puesta en
marcha, haga clic en Aceptar y ejecutar el proceso de archivos Generar
Programación. Después de este proceso se complete, un archivo de
configuración .bit debería aparecer en el directorio donde se encuentra su
proyecto.

Configuración Junta

27. El archivo de configuración


.bit que se ha generado se puede
utilizar ahora por el software
Adepto de Digilent para configurar
una placa del sistema Digilent. Ver
el Adepto Software Tutorial básico
para más información.
Laboratorio 01 LAB 01
“FPGA – Programación en Entorno Gráfico” Página 9 / 9

TAREA PARA DESARROLLAR EN EL LABORATORIO

Programa el FPGA para que pueda simular función lógica:

ADJUNTA IMÁGENES QUE EVIDENCIEN EL TRABAJO REALIZADO.

OBSERCACIONES Y/O CONCLUSIONES.

______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________
______________________________________________________________________________________

Вам также может понравиться