Guía docente de Desarrollo de Hardware Digital (Especialidad Ingeniería de Computadores) (296113N)

Curso 2022/2023
Fecha de aprobación: 15/06/2022

Grado

Grado en Ingeniería Informática

Rama

Ingeniería y Arquitectura

Módulo

Formación de Especialidad 3: Ingeniería de Computadores

Materia

Sistemas de Cómputo para Aplicaciones Específicas

Curso

3

Semestre

2

Créditos

6

Tipo

Obligatoria

Profesorado

Teórico

María Begoña del Pino Prieto. Grupo: A

Práctico

María Begoña del Pino Prieto Grupo: 1

Tutorías

María Begoña del Pino Prieto

Email
  • Primer semestre
    • Lunes de 09:30 a 13:30 (Ffcc Sec.Fisica 3ªplanta)
    • Viernes de 12:00 a 14:00 (Ffcc Sec.Fisica 3ªplanta)
  • Segundo semestre
    • Jueves de 09:30 a 11:30 (Etsiit D.2-3)

Prerrequisitos y/o Recomendaciones

No es necesario aprobar asignaturas, materias o módulos previos como requisito indispensable para cursar esta asignatura. No obstante, se recomienda tener conocimientos previos en Tecnología y Organización de Computadores, en especial en análisis y diseño de sistemas digitales.

Breve descripción de contenidos (Según memoria de verificación del Máster)

  • Metodologías de diseño y construcción de sistemas digitales.
  • Hardware reconfigurable y plataformas de codiseño.
  • Modelado y síntesis automática con lenguajes de descripción hardware, verificación.
  • Desarrollo de procesadores específicos, módulos de interfaz y de comunicaciones.
  • Integración de sistemas de cómputo específicos, codiseño Hardware/Software.
  • Campos de aplicación.

Competencias

Competencias Generales

  • CG09. Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero Técnico en Informática.

Resultados de aprendizaje (Objetivos)

  • Conocer diferentes metodologías de diseño y construcción de sistemas digitales, sus ventajas y limitaciones.
  • Conocer dispositivos y plataformas de desarrollo de sistemas con hardware reconfigurable, y sus campos de aplicación.
  • Utilizar apropiadamente herramientas software de síntesis automática y verificación para el diseño de módulos hardware específicos.
  • Especificar sistemas digitales mediante un lenguaje de descripción estándar.
  • Obtener descripciones sintetizables para inferencia de lógica combinacional y secuencial.
  • Analizar y diseñar módulos hardware tales como procesadores específicos, módulos de interfaz y de comunicaciones.
  • Comprender nociones básicas de codiseño hardware/software para la integración de sistemas de cómputo específicos.

Programa de contenidos Teóricos y Prácticos

Teórico

Tema 1. Metodologías de diseño y construcción de sistemas digitales

  • Ciclo de desarrollo
  • Requisitos de diseño
  • Metodologías de diseño
  • Alternativas de implementación física
  • Herramientas software
  • Evolución histórica
  • Estado actual y tendencias

Tema 2. Hardware reconfigurable

  • Conceptos generales
  • Perspectiva histórica
  • Dispositivos reconfigurables
  • Metodologías de desarrollo
  • Herramientas CAD/EDA
  • Plataformas de desarrollo
  • Campos de aplicación

Tema 3. Lenguajes de descripción hardware

  • Cuestiones preliminares
  • Perspectiva histórica
  • Lenguajes estándar
  • Fundamentos del estándar IEEE-1076: VHDL

Tema 4. Diseño de hardware digital con VHDL

  • VHDL sintetizable
  • Descripciones funcionales y estructurales
  • Síntesis de lógica combinacional
  • Inferencia de elementos de memoria y registros
  • Especificación de máquinas de estados finitos
  • Diseño de sistemas RT
  • Recomendaciones de diseño

Tema 5. Integración de sistemas de cómputo específicos

  • Nociones básicas de codiseño hardware/software
  • Diseño basado en componentes IP y diseño basado en plataforma
  • Sistemas completamente configurables descritos en lenguajes multiplataforma

Tema 6. Desarrollo de componentes IP

  • Modelado
  • Bancos de pruebas
  • Diseños reutilizables
  • Ejemplos: procesadores específicos, módulos de interfaz y de comunicaciones

Práctico

Seminarios/Talleres:

  • Iniciación a una plataforma de desarrollo con hardware reconfigurable
  • Iniciación a herramientas de especificación, verificación y síntesis automática
  • Iniciación a herramientas de codiseño de sistemas empotrados con hardware reconfigurable

Prácticas de Laboratorio

  • Diseño de un procesador en VHDL
  • Análisis, desarrollo y optimización de proyectos con hardware reconfigurable

Bibliografía

Bibliografía fundamental

  • Ashenden, P.J., The designer’s guide to VHDL, Morgan Kaufmann Publishers, c2008
  • Chu, P. P., FPGA prototyping by VHDL examples : Xilinx Spartan-3 version , Wiley-Interscience, c2008.
  • Hamblen, J.O., Hall T.S., Furman, M.D.: Rapid Prototyping of Digital Systems : SOPC Edition, Springer 2008
  • Maxfield, C., FPGAs: Instant Access, Newnes 2008
  • Rushton, A., VHDL for Logic Synthesis, John Wiley and Sons, 2011
  • Terés, Ll. et al, VHDL, Lenguaje estándar de diseño electrónico, McGraw Hill, 1997

Bibliografía complementaria

  • Ashenden, P. J., Digital Design: An Embedded Systems Approach Using VHDL, Elseiver 2008
  • Ashenden, P.J., Lewis, J., VHDL-2008: just the new stuff, Elsevier/Morgan Kaufmann, c2008
  • Bergeron, J., Writing Testbenches: Functional Verification of HDL Models, Second Edition, Springer 2003 • Brown, S. y Vranesic, Z., Fundamentals of digital logic with VHDL design, McGraw-Hill, 2009, 3rd ed (Traducida al castellano la edición anterior: Brown, S. y Vranesic, Z., Fundamentos de lógica digital con diseño VHDL, McGraw-Hill, 2006, 2ª ed) 
  • Cayssials, R, Sistemas embebidos en FPGA, Marcombo, 2014
  • Chu , P.P., RTL Hardware Design Using VHDL: Coding for Efficiency, Portability, and Scalability, Wiley-IEEE Press, 2006
  • Chu , P.P., Embedded SoPC design with NIOS II processor and Verilog examples, Wiley, c2012.
  • Grout, I. Digital systems design with FPGAs and CPLDs. Elsevier, c2008 • Hwang, E.D., Digital Logic and Microprocessor Design with VHDL, Thomson, 2006
  • Kafig, W., VHDL 101: everything you need to know to get started, Elsevier 2011
  • Kits, S., Advanced FPGA Design: Architecture, Implementation, and Optimization, Wiley-IEEE Press, 2007
  • LaMeres, B.J., Introduction to Logic Circuits & Logic Design with VHDL, Springer, 2017
  • Maxfield, C., The design warrior’s guide to FPGAs: devices, tools and flows, Elsevier, c2004
  • Meyer-Baese , U., Digital Signal Processing with Field Programmable Gate Arrays (Signals and  Communication Technology), Springer; 3rd edition, 2007
  • Navaby, Z., VHDL: Modular Desing and Synthesis of Cores and Systems, McGraw-Hill, 2007
  • Pardo, F. Y Boluda, J.A., VHDL: lenguaje para síntesis y modelado de circuitos, Ra-Ma, 2011
  • Pedroni, V.A., Digital electronics and design with VHDL, Elsevier Morgan Kaufmann Publishers, 2008
  • Perry, D.L., VHDL programming by example, McGraw-Hill, 2002
  • Ruz, J.L., VHDL: De la tecnología a la arquitectura de computadores, Editorial síntesis, 1997.
  • Sass, R, Schmidt, A. G., Embedded Systems Design with Platform FPGAs: Principles and Practices. Elsevier 2010 (Recurso electrónico).
  • Schaumont, P.R. , Hardware/Software Codesign: A Practical Introduction, Springer 2013 
  • Short, K.L., VHDL for Engineers, Prentice Hall, 2008
  • Taraate, V., PLD Based Design with VHDL: RTL Design, Synthesis and Implementation Springer, 2017.
  • Vahid, F., Embedded System Design: A Unified Hardware/Software Introduction, Wiley; 2001
  • Wilson, P.R., Design recipes for FPGAs, Newnes, 2007

Enlaces recomendados

Principales fabricantes de dispositivos configurables

Estándares IEEE (sobre manuales de referencia de lenguajes HDL, bibliotecas, etc.):

Repositorios de hardware abierto:

Metodología docente

  • MD01. Lección Magistral (Clases Teóricas-Expositivas) 
  • MD02. Actividades Prácticas (Resolución de Problemas, Resolución de Casos Prácticos, Desarrollo de Proyectos, Prácticas en Laboratorio, Taller de Programación, Aula de Informática, Prácticas de Campo). 

Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final)

Evaluación Ordinaria

Todo lo relativo a la evaluación se regirá por la normativa sobre evaluación y calificación de los estudiantes vigente en la Universidad de Granada. El sistema de calificaciones se expresará mediante calificación numérica de acuerdo con lo establecido en el art. 5 del R. D 1125/2003, de 5 de septiembre, por el que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y validez en el territorio nacional.

La evaluación continua de la asignatura se compone de las siguientes actividades:

  • Actividades individuales o grupales durante el cuatrimestre
    • Se plantean cuestiones de teoría, problemas y actividades de análisis/síntesis, justificando respuestas y decisiones adoptadas.
    • Criterios de evaluación: Exactitud, razonamiento, criterios de decisión
    • Porcentaje sobre calificación final: 25%
  • Prueba de conocimientos teóricos y de resolución de problemas
    • Se plantean cuestiones de teoría y problemas, justificando respuestas y decisiones adoptadas.
    • Criterios de evaluación: Exactitud, razonamiento, criterios de decisión
    • Porcentaje sobre calificación final: 15%
  • Evaluación sobre casos prácticos
    • Se propondrá realizar un conjunto de actividades basadas en casos prácticos, y responder una serie de preguntas sobre la metodología, herramientas de verificación y de síntesis, optimización de prestaciones y otras cuestiones consideradas en las prácticas de la asignatura.
    • Criterios de evaluación: Capacidad de análisis, funcionalidad de la solución, metodología, razonamiento, conclusiones.
    • Porcentaje sobre calificación final: 50%
  • Evaluación de seminarios
    • Se realizarán preguntas y ejercicios en relación con la temática de los seminarios que supongan la elaboración de conclusiones sobre ventajas e inconvenientes de la metodología explicada en el contexto del desarrollo de sistemas de cómputo específicos.
    • Criterios de evaluación: Capacidad de análisis, razonamiento, conclusiones.
    • Porcentaje sobre calificación final:10%

Evaluación Extraordinaria

En las convocatorias extraordinarias se utilizará la evaluación única final, tal y como se describe más abajo.

Evaluación única final

La evaluación única final se realizará en la fecha indicada por el Centro para tal efecto, y constará de las siguientes pruebas:

  • Prueba de conocimientos teóricos y de resolución de problemas
    • Se plantean cuestiones de teoría y problemas, justificando respuestas y decisiones adoptadas.
    • Criterios de evaluación: Exactitud, razonamiento, criterios de decisión
    • Porcentaje sobre calificación final: 40%
  • Prueba sobre prácticas y seminarios
    • Se propondrá realizar un conjunto de actividades basadas en casos prácticos, y responder una serie de preguntas sobre la metodología, herramientas de verificación y de síntesis, optimización de prestaciones y otras cuestiones consideradas en los seminarios y las prácticas de la asignatura.
    • Criterios de evaluación: Capacidad de análisis, funcionalidad de la solución, metodología, razonamiento, conclusiones.
    • Porcentaje sobre calificación final: 60%