Está en la página 1de 5

CURSO

“DISEÑO DE SISTEMAS DIGITALES MEDIANTE VHDL


PARA SU IMPLEMENTACIÓN CON FPGAS”

40 horas (15 horas teoría + 25 horas práctica)

OBJETIVOS

Aprendizaje del lenguaje VHDL para el diseño de sistemas digitales sobre dispositivos lógicos
programables (FPGA).

- Adquirir una base sólida de fundamentos del lenguaje VHDL.


- Aprendizaje del proceso de diseño de sistemas complejos con VHDL para su implementación con
FPGAs de Altera mediante la herramienta Quartus II.
- Desarrollo de bancos de pruebas para la simulación con VHDL.
- Realización de ejemplos prácticos de sistemas digitales con VHDL, usando máquinas de estado,
contadores, registros de desplazamiento, circuitos aritméticos, memorias de tipo ROM, RAM, FIFO y
lógica de interconexión e control.
- Instanciación de componentes propios de las bibliotecas de Altera incluidas en la herramienta
Quartus II en los sistemas digitales descritos en VHDL.
- Diseño de bibliotecas de componentes propios en VHDL para su posterior utilización en otros
proyectos.
- Recomendaciones de diseño con VHDL para síntesis con FPGAs.
- Análisis de las opciones de síntesis, asignación de recursos, posicionamiento y enrutado más
adecuadas para la implementación de los sistemas digitales descritos con VHDL en FPGAs de Altera
mediante la herramienta Quartus II.
- Realización de ejemplos prácticos de sistemas digitales de complejidad media-alta mediante la
herramienta Quartus II.

Curso “Diseño con VHDL para FPGAs de Altera”. Programación 1/5


“DISEÑO DE SISTEMAS DIGITALES MEDIANTE VHDL
PARA SU IMPLEMENTACIÓN CON FPGAS”

PROGRAMA

TEMA 1 (1 h. teoría). INTRODUCCIÓN AL DISEÑO DE SISTEMAS DIGITALES MEDIANTE


LÓGICA PROGRAMABLE (PLDs Y FPGAs).
1.1.- Introducción.
1.2.- Definición y clasificación de los Circuitos de Lógica Programable.
1.3.- Características generales de los Circuitos de Lógica Programable.
1.4.- Fases del diseño de sistemas digitales mediante Circuitos de Lógica Programable.
1.5.- Ventajas de los Circuitos de Lógica Programable.
1.6.- Aplicaciones de los Circuitos de Lógica Programable.
1.7.- Análisis comparativo.
1.7.1.- Circuitos de Lógica Programable frente a circuitos digitales estándar.
1.7.2.- Circuitos de Lógica Programable frente a circuitos semimedida.

TEMA 2 (2 h. teoría). ARQUITECTURAS DE LAS FPGAs DE ALTERA.


2.1.- Introducción.
2.2.- Recursos lógicos.
2.3.- Recursos de interconexión.
2.4.- Arquitectura de las FPGAs de la familia Cyclone de Altera.
2.4.1.- Recursos lógicos:
2.4.2.- Recursos de interconexión.
2.4.3.- Tecnología y métodos de configuración.
2.4.4.- Otras características.
2.5.- Arquitectura de las FPGAs de la familia Stratix de Altera.
2.5.1.- Recursos lógicos:
2.5.2.- Recursos de interconexión.
2.5.3.- Tecnología y métodos de configuración.
2.5.4.- Otras características.

TEMA 3 (8 h. teoría + 4 h. práctica). Lenguaje VHDL.


3.1.- Lenguajes de descripción del hardware (0’5 h)
• Introducción
• Génesis
• Características
• Aplicaciones
• Limitaciones
• El lenguaje VHDL
• Ventajas de VHDL para el diseño de sistemas digitales
• Otros lenguajes de descripción del hardware

3.2.- Fundamentos de VHDL (0,5 h)


• Fundamentos de una descripción
• Entidades y arquitecturas
• Bibliotecas y paquetes
• Configuraciones
• VHDL concurrente y secuencial
• Metodología de diseño con VHDL

Curso “Diseño con VHDL para FPGAs de Altera”. Programación 2/5


3.3.- Elementos de lenguaje (1 h)
• Identificadores
• Delimitadores
• Comentarios
• Tipos de datos
• Nuevos tipos y subtipos
• Literales
• Operadores
• Objetos
• Cuestiones y ejercicios

3.4.- Declaraciones básicas (1 h + 1 h prácticas)


• Entidades
• Arquitecturas
• Descripciones simples
• Constantes, variables y señales
• Modos y asociación de puertos
• Sentencias assert y report
• Cuestiones y ejercicios

3.5.- VHDL concurrente y secuencial (1 h + 1 h prácticas)


• Sentencias concurrentes
• Sentencias secuenciales
• Alcance y visibilidad de objetos
• Cuestiones y ejercicios

3.6.- Declaraciones avanzadas (1,5 h)


• Subprogramas
• Lógica multivaluada
• Señales
• Atributos
• Alias
• Sobrecarga de funciones y operadores
• Funciones de resolución
• Sentencia generate
• Conversión de tipos. Conversiones explícita e implícita
• Cuestiones y ejercicios

3.7.- Paquetes y bibliotecas (0,5 h)


• Paquetes
• Bibliotecas
• Alcance y visibilidad de las declaraciones
• Configuraciones
• Cuestiones y ejercicios

3.8.- Análisis y simulación de un diseño (1 h)


• Concepto de unidad de diseño
• Compilación
• Elaboración

Curso “Diseño con VHDL para FPGAs de Altera”. Programación 3/5


• Modelo de tiempo
• Ciclo de simulación
• Creación de un banco de pruebas para simulación
• Cuestiones y ejercicios

3.9.- Introducción general a la Síntesis (1 h)


• Introducción. La síntesis en el proceso de diseño
• Herramientas de síntesis
• Flujo de la síntesis
• Código VHDL sintetizable
• VHDL no sintetizable
• Síntesis guiada
• Verificación formal

3.10.- Descripción de circuitos sintetizables (2 h prácticas).


• Descripción de circuitos combinacionales.
o Decodificadores.
o Codificadores.
o Multiplexores.
o Demultiplexores.
• Descripción de circuitos secuenciales.
o Registros.
o Registros de desplazamiento.
o Contadores.
o Máquinas de estado.
o Memorias.
• Descripción de circuitos aritméticos.
o Sumadores.
o Restadores.
o Multiplicadores.
o Divisores.

TEMA 4 (2h. teoría + 6 h. práctica). HERRAMIENTA DE DISEÑO QUARTUS II DE ALTERA.


4.1.- Introducción. Diagrama de flujo general de la herramienta Quartus II.
4.2.- Captura de esquemáticos. Biblioteca de componentes para esquemático de Quartus II.
Realización de un nuevo componente a partir de un esquemático.
4.3.- Utilización del editor HDL.
4.4.- Inclusión de un componente HDL en un esquemático.
4.5.- Simulación funcional.
4.6.- Síntesis del sistema digital diseñado.
4.7.- Opciones de síntesis para las FPGAs de la familias Cyclone y Stratix de Altera.
4.8.- Informes de síntesis para las FPGAs de la familia Cyclone y Stratix de Altera.
4.9.- Implementación del sistema digital diseñado.
4.10.- Opciones de implementación para las FPGAs de la familias Cyclone y Stratix de Altera.
4.11.- Informes de implementación para las FPGAs de la familia Cyclone y Stratix de Altera.
4.12.- Utilización del editor de FPGAs.
4.13.- Simulación temporal.
4.14.- Análisis de retardos mediante el fichero de informe de retardos.
4.15.- Placas de desarrollo basadas en FPGAs de Altera.
4.16.- Obtención del fichero de configuración.

Curso “Diseño con VHDL para FPGAs de Altera”. Programación 4/5


4.17.- Programación de la FPGA.
4.18.- Comprobación del circuito.
4.19.- Programación de una memoria de configuración.
4.20.- Realización de un ejemplo tutorial.

TEMA 5 (2 h. teoría + 2 h. práctica). DISEÑO DE SISTEMAS DIGITALES COMPLEJOS CON


FPGAs.
5.1.- Introducción.
5.2.- Diseño de sistemas digitales mediante Circuitos Digitales Configurables.
5.2.1.- Diseño jerárquico.
5.2.1.1.- Metodología “top-down”.
5.2.1.2.- Metodología “bottom-up”.
5.2.1.3.- Recomendaciones para el establecimiento de una organización jerárquica adecuada.
5.2.1.4.- Síntesis incremental. Compilación incremental.
5.2.1.4.- Ejemplos.
5.2.2.- Diseño trasladable a otras tecnologías.
5.2.2.1.- Diseño independiente de la tecnología. Ventajas e inconvenientes.
5.2.2.2.- Diseño dependiente de la tecnología. Ventajas e inconvenientes.
5.2.2.3.- Ejemplos.
5.2.3.- Diseño temporal.
5.2.3.1.- Diseño asíncrono. Ventajas e inconvenientes.
5.2.3.1.- Diseño síncrono. Ventajas e inconvenientes.
5.2.3.1.- Diseño autosincronizado. Ventajas e inconvenientes.
5.2.3.4.- Ejemplos.
5.2.4.- Diseño síncrono.
5.2.4.- Razones para la elección de una metodología de diseño síncrona.
5.2.5.- Normas de diseño de sistemas digitales síncronos mediante FPGAs.
5.2.5.1.- Utilización adecuada de las señales de reloj.
5.2.5.2.- Utilización adecuada de las señales de puesta en estado inicial (“reset”).
5.2.5.3.- Utilización adecuada de las señales de habilitación de reloj (“clock enable”).
5.2.5.4.- Sincronización de entradas. Metaestabilidad.
5.2.5.5.- Sincronización de transferencias de datos entre sistemas con diferente señal de reloj.
5.2.5.6.- Ejemplos.

TEMA 6 (13 horas práctica). REALIZACIÓN DE SISTEMAS DIGITALES DE COMPLEJIDAD


MEDIA-ALTA.
- Circuito de lectura de un teclado PS2.
- Realización de periféricos de microprocesadores (UART RS-232).
- Generador digital de señales.

Curso “Diseño con VHDL para FPGAs de Altera”. Programación 5/5

También podría gustarte