Circuitos Electrónicos IntegradosLABORATORIO Nº 10 “FPGA – Programación en Entorno Gráfico” Alumnos : Grupo : Semestre : Fecha de entrega : Profesor: Hora: Nota: . . como lo son el software de desarrollo y el dispositivo grabador. III. LAB 01 Página 1 / 9 MATERIAL Y EQUIPO 01 FPGA Atlys Digilent. 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. La grabación o programación de uno de estos dispositivos se puede llevar a cabo en milisegundos.BIT en el FPGA. como por ejemplo diseñadores de equipos de propósito específico. implementar y generar un archivo de programación.Laboratorio 01 “El primer contacto con el PIC16F84” I. los cuales no pueden justificar la producción de ASICs por los bajos volúmenes de dispositivos que venden. asignándolos a los bloque configurables del dispositivo. a costos menores y con una velocidad ligeramente menor. lo cual requiere de herramientas de costo relativamente bajo. Los FPGAs tienen una funcionalidad similar. Conectar los bloques de lógica mediante los conmutadores necesarios Ilustración 1: Estructura general de una FPGA (en concreto de XILINX) . c) d) II. a) b) OBJETIVOS Identificar la arquitectura de las FPGA. Cargar correctamente el archivo . Realizar Síntesis. Programar un FPGA utilizando lenguaje esquemático para crear circuitos lógicos. Los FPGA son muy utilizados por fabricantes que producen tecnología a baja escala.Usb FUNDAMENTO TEORICO Los FPGA (Field Programmable Gate Array) son circuitos lógicos programables directamente por el usuario. Cable Microusb . los cuales se pueden depurar y permiten refinar el diseño. También los FPGAs se utilizan como prototipos. Antes de utilizar el multímetro. Memoria RAM.Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 2 / 9 Los elementos básicos constituyentes de una FPGA como las de Xilinx se pueden ver en la Ilustración 1 y son los siguientes: Bloques lógicos. que se carga durante el RESET para configurar bloques y conectarlos. 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 . cuya estructura y contenido se denomina arquitectura. Suelen incluir biestables para facilitar la implementación de circuitos secuenciales. que varían principalmente en complejidad (desde una simple puerta hasta módulos más complejos o estructuras tipo PLD). cuya estructura y contenido se denomina arquitectura de rutado. Seguridad en la ejecución del laboratorio Tener cuidado con el tipo y niveles de voltaje con los que trabaja. Hay muchos tipos de arquitecturas. Otros módulos de importancia son los bloques de Entrada/Salida Recursos de interconexión. 128 MByte DDR2 de datos amplia de 16 bits. 2. seleccione la opción Nuevo proyecto en el menú de introducción (o seleccionando Select Archivo> Nuevo proyecto). . salida de línea. Inicio> Programas> Xilinx ISE Design Suite 11> ISE> Navegador de proyectos. Monitores de energía en tiempo real sobre todos los carriles de alimentación. seleccione la opción Nuevo proyecto en el menú de introducción. Para crear un nuevo proyecto. Puertos a bordo USB2 para la transferencia de la programación y de datos. GPIO incluye 8 LEDs. auriculares. USB-UART y puerto USB HID (por ratón / teclado). 10/100/1000 Ethernet PHY. 3. AC-97 Codec con entrada de línea. Dos puertos HDMI de entrada de vídeo y dos puertos de salida HDMI. y 8 interruptores deslizantes. Se envía con un 20W fuente de alimentación y el cable USB. X4 16 MByte SPI Flash para almacenamiento de configuración y de datos. 6 botones. 48 I / O para enrutador de conectores de expansión. 100MHz CMOS oscilador. 1. Esto nos lleva a un cuadro de diálogo donde se puede introducir el nombre del proyecto y la ubicación del proyecto.Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 3 / 9 PROCEDIMIENTO. Navigator. En Navegador de proyectos. Estructura externa del microcontrolador PIC16F84 Datos generales Crear un programa en lenguaje esquemático de compuertas lógicas. Xilinx Spartan-6 LX45 FPGA. 4. micrófono. paquete BGA 324 pines. dispositivos y paquetes para su proyecto.Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 4 / 9 5. Una vez que el nuevo proyecto se ha creado. 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. El panel de Diseño (1) contiene dos ventanas: una ventana . 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. ISE abre el proyecto en Project Navigator. 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. Seleccionamos la Familia del FPGA. Esto depende de la ficha que está apuntando para el proyecto. Navegador de proyectos Visión general 7. 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. incluyendo los mensajes de error y de advertencia. Añadiendo nuevos ficheros Fuente 8. 9. El panel de la consola (2) muestra los mensajes de estado. hay dos cuadros de lista .Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 5 / 9 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. Creamos un nuevo archivo de origen. En la pantalla. por lo que seleccionamos Nueva Fuente de la lista. La ventana del editor de HDL (3) muestra el código fuente o el esquema de los archivos seleccionados en el panel Diseño. Usted puede agregar un archivo de origen nueva o existente al proyecto. Para ello. lo que le pide el tipo de fuente y el nombre del archivo. Una vez creado el nuevo proyecto. Seleccione esquemática y darle un nombre significativo (nombramos circuit1). dos fuentes se enumeran en fuentes en el panel Diseño: el nombre del archivo del proyecto y el dispositivo de destino para el diseño. Esto inicia el Asistente para nuevo origen. 10. haga clic en el dispositivo de destino y seleccione una de las tres opciones para agregar archivos de origen. 11. El archivo . Por ejemplo. Para agregar un archivo . Para mover una puerta. La lista muestra todos los símbolos de los símbolos en la categoría seleccionada en la lista Categorías. Seleccione la opción Nuevo Fuente Añadir en el menú desplegable. el "<. ya sea seleccionando el cursor en la barra de herramientas o pulsando el botón Esc en el teclado. debe volver a seleccionar el modo. haz clic en el botón de la herramienta de alambre añadir a cambiar al modo de alambre agregar. UCF Creación del archivo 15.Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 6 / 9 Símbolos y Categorías etiquetados. 13. 14. 12. Ahora conectamos las puertas con cables.ucf archivo) para definir restricciones de usuario como pin físico a las asignaciones netas de circuito.Todos los símbolos ->" categoría muestra todos los símbolos en la biblioteca actual en la lista de símbolos. Esto se conoce como una implementación del archivo veces Restricciones. Con este método se puede añadir cables entre los pines de puertas. . 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).ucf a su diseño. vaya a la ventana Orígenes y haga clic derecho en el archivo de origen que requiere restricciones de usuario. Para ello.ucf puede modificarse dentro ISE utilizando un editor de texto. El Asistente de Nueva Fuente le pide el tipo de Las herramientas de Xilinx utilizan un archivo Restricciones de usuario (. escriba: NET LOC "netname" = "XXX".ucf. Para nuestro proyecto de ejemplo. En el comunicado. en una línea en el archivo . y haga doble clic en la opción Editar Restricciones (texto).Laboratorio 01 “El primer contacto con el PIC16F84” fuente y el nombre del archivo. "netname" (comillas incluidas) es el nombre de la red para conectar a la patilla número XXX (comillas incluidas). Aparecerá un editor de texto en blanco. 20. 18. Para asociar un alfiler físico con un nombre de red determinada. 16. Ahora estamos listos para crear un archivo de programación (. El archivo . Seleccione Restricciones de implementación del archivo y darle un nombre significativo (nombramos circuit2). las 2 entradas se asignan a conmutadores 0 a 1 y la salida se asigna a LED0 en el tablero Nexys2.ucf acabado es como sigue: Generación Programación Archivo 19. Vaya a la ventana Fuentes y seleccionar el módulo de nivel superior LAB 01 Página 7 / 9 . seleccionarlo en la ventana Fuentes. 17. expanda la opción Restricciones de usuario en la ventana de Procesos de abajo.bit) para el Nexys2 FPGA. Para editar el archivo .ucf. seleccione . Ahora vaya a la ventana Procesos donde hay tres procesos particulares en una fila: 1. Si el proceso Sintetizar no devuelve ningún error. Si el proceso de Diseño Implementar no devuelve ningún error. En el panel de la ventana Propiedades Proceso categoría. puede ejecutar el proceso de archivos Generar Programación. 2. Generar archivo de programación 1. la comprobación de conexiones válidas. Este proceso analiza el circuito que ha creado. Opciones de inicio de reloj 24. 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 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. haga clic derecho en el proceso de archivos de programación Generar y seleccione Propiedades de Proceso. Antes de hacer esto.) 21. puede seguir adelante y ejecutar el proceso de diseño de implementar. para verificar que el circuito es válida y sintetizable. Sintetizar . la sintaxis y estructura. Implementar Diseño 3.XST 2.Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 8 / 9 (indicado por los tres bloques que se muestran con el nombre de la fuente. Ver el Adepto Software Tutorial básico para más información. Después de seleccionar el valor adecuado de reloj de puesta en marcha. ADJUNTA IMÁGENES QUE EVIDENCIEN EL TRABAJO REALIZADO. el valor del reloj de puesta en marcha debe ser CCLK. Esta opción permite que un archivo de configuración o bien configurar una acometida directamente de la PC.XOR) OBSERCACIONES Y/O CONCLUSIONES. 26. Después de este proceso se complete. ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ .NOT. El primer elemento en el panel de la derecha es la propiedad FPGA de puesta en marcha del reloj. haga clic en Aceptar y ejecutar el proceso de archivos Generar Programación. Para configurar el tablero de la PC.Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 9 / 9 Opciones de inicio. 25.bit debería aparecer en el directorio donde se encuentra su proyecto.NOR.NAND. TAREA EN EL LABORATORIO Programa el FPGA para que pueda simular las distintas compuertas lógicas (AND. Configuración Junta 27. o cargar una configuración de la memoria flash de la plataforma en el tablero.OR. Para configurar la tarjeta de la memoria flash plataforma. un archivo de configuración . 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. el valor del reloj de puesta en marcha debe ser JTAG Reloj. Laboratorio 01 “El primer contacto con el PIC16F84” LAB 01 Página 10 / 9 ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ .