Curso VHDL – Introducción

En años pasados, durante un congreso de electrónica llevado a cabo en mi alma mater :), colaboré en la impartición de un curso de introducción a VHDL con duración de 4 días.

El curso fue muy básico, durante los dos primeros días se presentaron algunas generalidades del lenguaje VHDL y se introdujo a la utilización del software ISE de Xilinx. Después de eso se llevaron a cabo algunos ejercicios:

El curso fue muy básico, durante los dos primeros días se presentaron algunas generalidades del lenguaje VHDL y se introdujo a la utilización del software ISE de Xilinx. Después de eso se llevaron a cabo algunos ejercicios:

  • Compuertas básicas (and, or…)
    Introducción a ISE y VHDL. Revisión de sintaxis, implementación, asignación de pines, generación de archivo de programación, descarga de proyecto.
  • Medio sumador (diseño estructural) y (diseño por flujo de datos / funcional)
    Diferencia entre diseño estructural, por comportamiento y funcional.
  • Sumador completo (diseño por flujo de datos / funcional) y (diseño estructural)
    Reutilización e instanciación de componentes, continuamos con la diferencia entre los modos de diseño,
  • Sumador de 4 bits (esquemático)
    Cómo trabajar con la herramienta de diseño de esquemáticos.
  • Sumador de N bits
    La sentencia generate, diseño genérico.
  • Contador de 4 bits con salida a leds
    Circuitos secuenciales.
  • Contador 0-99 con salida a displays de 7 segmentos, pulsos cada 1s
    Proyecto final, una forma fácil de dividir la frecuencia, multiplexación de displays.
  • Proyectos no incluidos por falta de tiempo, ejemplo VGA, diseño de un procesador simple
    (Probablemente para un curso intermedio).

Bien, el caso es que, he decidido publicar el material aquí, con la intención de recibir ideas, comentarios y/o sugerencias para poder mejorar o ampliar el curso. ¿Qué les parece?

Un comentario en “Curso VHDL – Introducción”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *