ASIC and FPGA Design

Undergraduate Courses

Laboratorio

 

DIE: Dispositivos Integrados Especializados (ASIC and FPGA Design)

Ir a página principal

 

 

Profesores:

 

E. Boemo (Teoría)

 

Fernando Barbero (Lab)

Juan Antonio Andrés (Lab)

 

 

 

 

 

 

 

Otras actividades en la UAM relacionadas con FPGAs:

 

Euroform

 

FPL 2006

 

SPL 2011

SPL 2008

SPL 2007

SPL 2006

 

JCRA 2007

JCRA 2003

 

ACM Transactions on Reconfigurable Systems

 

 

Información sobre los turnos de laboratorio:

Turnos

DIE-3313

DIE-3311

DIE-3312

 

Horario

Lunes, 9:00-11:00

Miércoles, 9:00-11:00

Jueves, 9:00-11:00

 

Profesor

Fernando Barbero

Juan Antonio Andrés

Fernando Barbero

 

Tutorías

Por mail (ver dirección de correo a la izquierda)

 

Calendario de Clases

Calendario

 

Calificaciones

Calificaciones

 

Grupos

Asignación de alumnos a grupos y números de pareja

 

 

  

Noticias

·         18-Sep-2012: Los laboratorios comienzan el 20 de septiembre para el turno del jueves, el 24 de septiembre para el turno del lunes y el 26 de septiembre para el turno del miércoles.

·         8-Oct-2012: Añadidos comentarios acerca de cómo conseguir las herramientas para trabajar en casa (ver más abajo).

·         17-Oct-2012: Información sobre el método de entrega de la práctica: usar la página de entrega de prácticas de la web de la Escuela. Si se hace fuera de los laboratorios usar el usuario y contraseña que han sido facilitados.

·         30-Oct-2012: Se cambia el método de entrega, a partir de ahora se hará por Moodle.

·         9-Nov-2012: Enunciado Práctica 7 disponible.

·         15-Nov-2012: Enunciados Prácticas 5 y 6 disponibles.

·         27-Nov-2012: Cambios en el calendario y en el peso de las prácticas. P6 pasa a ser sugerida, sin calificación.

·         14-Ene-2013: Notas provisionales disponibles. Se ha considerado una nota máxima de 9.0 para el itinerario “Fácil”.

 

 

 

 

 

Prácticas

El laboratorio se compone de una serie de prácticas, unas de obligada ejecución y otras optativas según diferentes “itinerarios”.

La planificación de las sesiones de laboratorio se encuentra en el link mostrado en la tabla de arriba.

Los guiones de las prácticas y la documentación adicional se muestran a continuación:

Práctica 1 (P1)

Tutorial

Ficheros: no se necesitan.

Práctica 2 (P2)

Completar el diseño de un cronómetro

Ficheros: P2_stopwatch.zip

Práctica 3 (P3)

Diseño de alta velocidad. Temporización. (Multiplicador)

Ficheros: P3_mult.zip      tabla_P3.doc

Práctica 4 (P4)

Sistemas embebidos. El microcontrolador PicoBlaze

Ficheros: P4_pico_example.zip

Documentos y herramientas PicoBlaze: doc_picoblaze.zip

Práctica 5 (P5)

Uso de DCMs y simulación con tiempos

Ficheros: no se necesitan, partir de lo realizado en la Práctica 2.

Práctica 6 (P6)

(sugerida)

Inferencia de memoria

Ficheros: PE2_bin_reader_RAM

Práctica 7 (P7)

Proyecto de diseño completo (controlador VGA) e integración en un SoC

Ficheros: P7_vga.zip

Documentos y herramientas PicoBlaze: doc_picoblaze.zip

Datasheet memoria SRAM : 61LV25616AL.pdf

 

 

 

Información Adicional

 

Presentaciones, tutoriales, etc. de interés para el laboratorio:

 

·         Conceptos básicos

·         Introducción a VHDL

·         Introducción a la simulación con ModelSim

·         VHDL handbook

·         Inferencia de memorias para FPGAs Xilinx

 

 

Manuales y notas de aplicación de Xilinx:

 

·         Spartan 3 Family Datasheet

·         Spartan 3 Starter Board (S3BOARD) (foto) (User Guide)

·         Application Note: Using Digital Clock Managers (DCMs) in Spartan-3 FPGAs

 

 

VHDL IEEE libraries:

 

·      std_logic_1164

·      std_logic_unsigned

·      std_logic_signed

·      std_logic_arith

 

 

 

Para trabajar en casa

 

Es posible conseguir una licencia gratuita para las dos herramientas que usamos en el laboratorio:

·         ModelSim: En la página principal de esta herramienta (http://model.com/) encontramos, en la parte izquierda, la opción ModelSim Student Edition. Siguiendo este enlace encontraremos instrucciones detalladas para bajarnos la herramienta y bajar e instalar el fichero de licencia correspondiente. Básicamente el proceso consiste en registrarse en esta web y seguir unas sencillas instrucciones de instalación. También podemos encontrar información sobre las características de esta versión, limitada en potencia respecto a la estándar, pero más que suficiente para estas prácticas.

·         Xilinx ISE: El primer paso necesario es registrarse en la web de Xilinx. Para esto se recomienda no usar Internet Explorer pues algunas versiones dan problemas en el acceso a la página de registro y login. En la web oficial (http://www.xilinx.com/) encontramos, en la parte superior, Sign In. Clicando en este enlace tenemos a continuación, a mano derecha, la opción Create Account. Introduciendo nuestros datos podremos crear nuestro propio usuario y contraseña de Xilinx. Una vez completado este proceso, podemos descargar la herramienta en el enlace Download que aparece en la parte superior. Si queremos exactamente la misma versión que hay en el laboratorio, podemos seleccionar a la izquierda, bajo Version, 14.1, y descargar la segunda opción disponible: “ISE Design Suite – 14.1 Full Product Installation”, por ejemplo “Full Installer for Windows”. En este momento se nos pedirá usuario y contraseña, tras lo cual podremos bajar un archivo comprimido con el directorio del programa de instalación de la herramienta. Durante la instalación de la herramienta, hacia el final, se abrirá el Xilinx License Configuration Manager de Xilinx y se nos dará la opción de solicitar una licencia WebPACK. Eligiremos esta opción y siguiendo las instrucciones podremos recibir por mail un fichero de licencia, que dejaremos instalado mediante un botón “Copy license…” del Xilinx License Configuration Manager (se dan las instrucciones correspondientes durante el proceso). En la sección de la web de Xilinx dedicada a las herramientas, y en concreto al ISE, podemos encontrar una comparativa entre las características de esta versión WebPACK y las versiones no gratuitas. No todas los accesorios están disponibles ni se pueden implementar todos los modelos de FPGA, pero de nuevo es más que suficiente para estas prácticas.

 

En algunas prácticas (por ejemplo las que utilizan el microprocesador PicoBlaze) la simulación del diseño necesita que estén disponibles para el simulador las bibliotecas de primitivas de Xilinx. Esto se puede conseguir de la siguiente manera:

·         Primero hay que compilar las bibliotecas de primitivas de Xilinx. Esto se puede hacer desde el entorno ISE:

o   Con cualquier proyecto abierto seleccionar en "Hierarchy" la línea con el modelo de FPGA.

o   Seleccionar el proceso "Design Utilities/Compile HDL Simulation Libraries". Comprobar que en sus Properties (botón derecho) tiene seleccionado el simulador "Modelsim-PE VHDL" y ejecutar el proceso.

·         Tras esto hay que informar al simulador de la situación de estos modelos simulables. Para ello:

o   Poner en el directorio sim/ de la práctica (o en el directorio de proyecto ISE si se simula directamente sobre este directorio, como es el caso de la Práctica 5) este fichero: modelsim.ini. Es adecuado para la versión de ModelSim para estudiantes (ModelSim PE Student Edition 10.1c).

o   Para usar ModelSim “stand-alone” (es decir, sin llamarlo desde ISE), abrir una consola de comandos de Windows y en ella:

§  Ejecutar <dir_inst_Xilinx 14.1>\ISE_DS\settings32.bat (asigna la variable de entorno “XILINX”).

§  Cambiarse al directorio sim/ de la práctica.

§  Ejecutar "modelsim". Si este programa no está en el "path" de Windows, llamarle directamente, en una instalación típica será algo como C:\Modeltech_pe_edu_10.1c\win32pe_edu\modelsim.

 

Normativa del laboratorio

Para aprobar la asignatura debe obtenerse al menos un 5 en Teoría y un 5 en Laboratorio. La nota final se obtiene como (0.30*Laboratorio + 0.70*Teoría). Sin embargo, como reconocimiento a esos alumnos que todos los años realizan un Proyecto de Laboratorio excepcional, este porcentaje se puede elevar hasta el 50%, previa presentación oral del trabajo (examen).

Los alumnos que no aprueben el laboratorio y se presenten al examen final deberán realizar posteriormente un Examen de Laboratorio, que consiste en un diseño electrónico cuya complejidad y requerimiento de tiempo será similar a lo realizado en el curso normal.

La asistencia al laboratorio es obligatoria. Se permiten dos faltas no justificadas. El incumplimiento de esta norma conlleva el suspenso del laboratorio.

La copia de prácticas se califica con CERO en el Laboratorio.

Cada práctica se valorará mediante los siguientes criterios:

           Correcto funcionamiento enseñado al profesor en clase. Conocimiento de las respuestas a las preguntas formuladas en los enunciados de las prácticas. (Este apartado representa el 75% de la nota de las prácticas sobre las que se hace examen individual escrito, ver siguiente punto).

           Examen individual escrito de corta duración. Se realizarán dos, uno sobre la práctica 2 en la clase siguiente a la última de la práctica 2, y el otro sobre las prácticas 3 a 7 al final de curso. Este último examen tendrá un enunciado dependiente del “itinerario” escogido por el alumno. Tendrán una duración de 15 minutos. (Este apartado representa el 25% de la nota, esto es, un examen representará el 25% de la nota de la práctica 2 y el otro el 25% de las notas de las prácticas 3 a 7).

           Posibles preguntas orales del profesor pueden modificar, al alza o, sobre todo, a la baja, la nota resultante de los puntos anteriores.

           La práctica 1 (tutorial) se valora simplemente como 10 o 0, según si se enseña al profesor funcionando o no (y mostrando los ficheros sobre los que se ha trabajado).

 

Itinerarios: Se dan tres posibilidades de realización de las prácticas. En cualquier caso las prácticas P1 a P4 son obligatorias, variando los itinerarios en función de las demás prácticas:

-       Fácil: P1-P4 + P5 : Se puntuará sobre una máxima nota global de laboratorio de 9.0 (antes 8.0)

-       Intermedio: P1-P4 + P7 : Se puntuará sobre una máxima nota global de laboratorio de 9.5 (antes 9.0)

-       Completo: P1-P5 + P7: Se puntuará sobre una máxima nota global de laboratorio de 10.0

Pesos de las prácticas según el itinerario:

Práctica

Fácil

Intermedio

Completo

P1

10%

10%

10%

P2

15%

15%

15%

P3

15%

15%

15%

P4

45%

25%

15%

P5

15%

10%

P6

0%

0%

0%

P7

35%

35%

 La práctica 6 tiene carácter de “ejercicio sugerido” y no es considerada en las calificaciones.

Convalidaciones: consultar con Eduardo Boemo.