Guía docente de Desarrollo de Hardware Digital (Especialidad Ingeniería de Computadores) (296113N)
Grado
Rama
Módulo
Materia
Curso
Semestre
Créditos
Tipo
Profesorado
Teórico
Práctico
Tutorías
María Begoña del Pino Prieto
Email- Primer semestre
- Lunes de 17:30 a 19:30 (Despacho Nº3,Segunda Planta, Etsiit)
- Jueves de 09:30 a 13:30 (Despacho Nº3,Segunda Planta, Etsiit)
- Segundo semestre
- Lunes de 09:30 a 12:30 (Despacho Nº3,Segunda Planta, Etsiit)
- Miércoles de 09:30 a 12:30 (Despacho Nº3,Segunda Planta, Etsiit)
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 Grado)
- 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 de descripción hardware 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).
- MD03. Seminarios (Debates, Demos, Exposición de Trabajos Tutelados, Conferencias, Visitas Guiadas, Monografías).
- MD04. Actividades no presenciales Individuales.
- MD05. Actividades no presenciales Grupales.
- MD06. Tutorías Académicas.
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%
Información adicional
Información de interés para estudiantado con discapacidad y/o Necesidades Específicas de Apoyo Educativo (NEAE): Gestión de servicios y apoyos (https://ve.ugr.es/servicios/atencion-social/estudiantes-con-discapacidad).