Asignatura grado 2025
INGENIERÍA DE COMPUTADORES III
Curso 2024/2025 Código Asignatura: 71012018
-
Guía de la Asignatura Curso 2024/2025
- Primeros Pasos
- Presentación y contextualización
- Requisitos y/o recomendaciones para cursar esta asignatura
- Equipo docente
- Horario de atención al estudiante
- Competencias que adquiere el estudiante
- Resultados de aprendizaje
- Contenidos
- Metodología
- Sistema de evaluación
- Bibliografía básica
- Bibliografía complementaria
- Recursos de apoyo y webgrafía
INGENIERÍA DE COMPUTADORES III
Código Asignatura: 71012018
La guía de la asignatura ha sido actualizada con los cambios que aquí se mencionan.
Nombre y apellidos | ALFONSO URQUIA MORALEDA (Coordinador de Asignatura) |
Correo electrónico | aurquia@dia.uned.es |
Teléfono | 91398-8459 |
Facultad | ESCUELA TÉCN.SUP INGENIERÍA INFORMÁTICA |
Departamento | INFORMÁTICA Y AUTOMÁTICA |
Nombre y apellidos | CARLA MARTIN VILLALBA |
Correo electrónico | carla@dia.uned.es |
Teléfono | 91398-8253 |
Facultad | ESCUELA TÉCN.SUP INGENIERÍA INFORMÁTICA |
Departamento | INFORMÁTICA Y AUTOMÁTICA |
Nombre y apellidos | MIGUEL ANGEL RUBIO GONZALEZ |
Correo electrónico | marubio@dia.uned.es |
Teléfono | 91398-7154 |
Facultad | ESCUELA TÉCN.SUP INGENIERÍA INFORMÁTICA |
Departamento | INFORMÁTICA Y AUTOMÁTICA |
NOMBRE DE LA ASIGNATURA | |
---|---|
NOMBRE DE LA ASIGNATURA | INGENIERÍA DE COMPUTADORES III |
CÓDIGO | |
CÓDIGO | 71012018 |
CURSO ACADÉMICO | |
CURSO ACADÉMICO | 2024/2025 |
DEPARTAMENTO | |
DEPARTAMENTO | INFORMÁTICA Y AUTOMÁTICA |
TÍTULO EN QUE SE IMPARTE | |
TÍTULO EN QUE SE IMPARTE | |
GRADO EN INGENIERÍA INFORMÁTICA | |
CURSO | |
CURSO | SEGUNDO CURSO |
PERIODO | SEMESTRE 2 |
TIPO | OBLIGATORIAS |
Nº ECTS | |
Nº ECTS | 6 |
HORAS | |
HORAS | 150 |
IDIOMAS EN QUE SE IMPARTE | |
IDIOMAS EN QUE SE IMPARTE | CASTELLANO |
La asignatura Ingeniería de Computadores III se imparte en el segundo semestre, del segundo curso, del grado en Ingeniería Informática. Se trata de una asignatura obligatoria, de 6 créditos ECTS.
Esta asignatura es la tercera del grupo de tres asignaturas que componen la materia del grado denominada Ingeniería de Computadores. Con esta asignatura se completa, por tanto, el estudio de la materia. Tras haber estudiado en las dos anteriores asignaturas cómo funcionan los computadores y qué componentes los integran, en esta asignatura el alumno aprenderá a diseñar por sí mismo el hardware digital y a programar bancos de prueba para la verificación funcional del hardware que ha diseñado.
El alumno aprenderá a diseñar circuitos combinacionales, tales como multiplexores, buffers, codificadores y decodificadores, detectores de paridad, comparadores, sumadores y restadores, y unidades aritmético lógicas, así como diferentes tipos de registros, buses, memorias RAM y ROM, y máquinas de estado finito de Moore y Mealy. Con ello, el alumno aprenderá los fundamentos del diseño de los componentes básicos del computador. Además, el alumno aprenderá a diseñar circuitos que implementan sistemas de control, tales como los empleados en sistemas de alarma, máquinas expendedoras, electrodomésticos, semáforos que regulan el tráfico, etc.
El diseño de los circuitos y la programación de los bancos de prueba se realizará empleando el lenguaje para la descripción del hardware VHDL. El lenguaje VHDL (VHSIC Hardware Description Language) es usado muy ampliamente en el ámbito académico e industrial. Está concebido para realizar la descripción de sistemas digitales, empleando diferentes representaciones (comportamiento y estructura) y diferentes niveles de abstracción, existiendo una amplia variedad de herramientas software basadas en VHDL que facilitan el diseño, simulación y síntesis de los sistemas digitales.
Esta asignatura, que forma parte de la materia Ingeniería de Computadores, guarda relación no sólo con las otras dos asignaturas de la materia (Ingeniería de Computadores I y II), sino también con la asignatura de primer curso Fundamentos de sistemas digitales. Los conocimientos explicados en las asignaturas Ingeniería de Computadores I y Fundamentos de sistemas digitales constituyen la base para entender los fundamentos del diseño y análisis de hardware digital explicados en esta asignatura.
Se recomienda al alumno que antes de iniciar el estudio de esta asignatura curse las dos asignaturas de primer curso siguientes:
- Fundamentos de sistemas digitales
- Ingeniería de Computadores I
Los conocimientos explicados en esas dos asignaturas constituyen la base para entender los fundamentos del diseño y análisis de hardware digital explicados en esta asignatura.
Las consultas pueden dirigirse al Equipo Docente de las tres maneras siguientes:
- La comunicación escrita se realizará preferiblemente a través de los foros del curso virtual de la asignatura. También puede contactarse con el Equipo Docente escribiendo a la dirección de correo electrónico de la asignatura (ic3@dia.uned.es), o mediante correo postal, que debe dirigirse a la dirección: "Alfonso Urquía, Dpto. de Informática y Automática, ETS de Ingeniería Informática, UNED, Juan del Rosal 16, 28040, Madrid".
- Llamando a los números de teléfono 91 398 84 59 / 82 53 cualquier martes lectivo, entre las 10:00h y las 14:00h.
- Acudiendo personalmente a la E.T.S. de Ingeniería Informática de la UNED. En este caso, el alumno debe previamente concertar una cita con el Equipo Docente, mediante comunicación telefónica o escribiendo un correo electrónico.
La metodología, los materiales didácticos y el contenido de esta asignatura contribuyen al desarrollo de competencias genéricas propuestas por la UNED y de competencias específicas del grado en Ingeniería Informática. Entre las competencias genéricas, cabe destacar las siguientes:
- CG.1 - Competencias de gestión y planificación: Iniciativa y motivación. Planificación y organización (establecimiento de objetivos y prioridades, secuenciación y organización del tiempo de realización, etc.). Manejo adecuado del tiempo.
El material docente de la asignatura está especialmente concebido para su uso dentro del modelo educativo a distancia de la UNED. Esto facilita que el alumno pueda estudiar de manera autónoma, potenciando su iniciativa y motivación. El alumno, guiado por la planificación temporal propuesta por el Equipo Docente, desarrolla su capacidad para la gestión y planificación de su propio trabajo, y el manejo adecuado del tiempo.
- CG.2 - Competencias cognitivas superiores: selección y manejo adecuado de conocimientos, recursos y estrategias cognitivas de nivel superior apropiados para el afrontamiento y resolución de diversos tipos de tareas/problemas con distinto nivel de complejidad y novedad: Análisis y Síntesis. Aplicación de los conocimientos a la práctica. Resolución de problemas en entornos nuevos o poco conocidos. Pensamiento creativo. Razonamiento crítico. Toma de decisiones.
El estudio de la materia y la realización de las actividades propuestas en la asignatura contribuyen al desarrollo de capacidades cognitivas superiores del alumno, como son la capacidad de analizar y resolver problemas, de razonar de manera crítica y tomar decisiones en el contexto del diseño de hardware digital, y de aplicar los conocimientos a la práctica.
- CG.3 - Competencias de gestión de la calidad y la innovación: Seguimiento, monitorización y evaluación del trabajo propio o de otros. Aplicación de medidas de mejora. Innovación.
Los ejercicios resueltos de autocomprobación permiten al alumno desarrollar su capacidad para realizar el seguimiento y evaluación de su propio trabajo.
- CG.4 - Competencias de expresión y comunicación (a través de distintos medios y con distinto tipo de interlocutores): Comunicación y expresión escrita. Comunicación y expresión oral. Comunicación y expresión en otras lenguas (con especial énfasis en el inglés). Comunicación y expresión matemática, científica y tecnológica (cuando sea requerido y estableciendo los niveles oportunos).
Los trabajos prácticos evaluables permiten al alumno desarrollar su capacidad para la comunicación y expresión escrita en el ámbito científico y tecnológico.
- CG.5 - Competencias en el uso de las herramientas y recursos de la Sociedad del Conocimiento: Manejo de las TIC. Competencia en la búsqueda de información relevante. Competencia en la gestión y organización de la información. Competencia en la recolección de datos, el manejo de bases de datos y su presentación.
Las herramientas de comunicación, proporcionadas en el Curso Virtual de la asignatura, permiten al alumno desarrollar su capacidad para la comunicación adecuada y eficaz con otras personas, empleando medios tecnológicos.
- CG.7 - Compromiso ético. Compromiso ético, especialmente relacionado con la deontología profesional. El tratamiento y funcionamiento ético individual es un valor indiscutible para la construcción de sociedades más justas y comprometidas. La universidad puede fomentar actitudes y valores éticos, especialmente vinculados a un desempeño profesional ético: Compromiso ético (por ejemplo en la realización de trabajos sin plagios, etc.). Ética profesional (esta última abarca también la ética como investigador).
Los trabajos prácticos evaluables deben realizarse individualmente (sin plagios), por lo que su realización permite al alumno desarrollar su capacidad para el desempeño profesional ético.
Asimismo, el contenido de la asignatura contribuye a que el alumno desarrolle las siguientes competencias específicas del grado en Ingeniería Informática:
- FB.03 - Capacidad para comprender y dominar los conceptos básicos de matemática discreta, lógica y algorítmica, y su aplicación para el tratamiento automático de la información por medio de sistemas computacionales y para la resolución de problemas propios de la Ingeniería.
- FB.04 - Conocimientos básicos sobre el uso y programación de los ordenadores y programas informáticos con aplicación en Ingeniería.
- BC.9 - Capacidad para conocer, comprender y evaluar la estructura y arquitectura de los computadores, así como los componentes básicos que los conforman.
- BTEc.1 - Capacidad para interpretar, seleccionar, valorar, modelar, y crear nuevos desarrollos tecnológicos relacionados con la Informática.
- BTEic.1 - Capacidad de diseñar sistemas digitales, incluyendo computadores, procesadores específicos y sistemas empotrados.
Como resultado del aprendizaje, se pretende que el alumno adquiera fundamentalmente las capacidades enumeradas a continuación.
- El alumno debe adquirir la capacidad de discutir las diferentes etapas del ciclo de diseño de circuitos digitales y el uso en cada una de ellas de los lenguajes para la descripción del hardware (HDL).
- El alumno debe adquirir la capacidad de discutir qué características fundamentales deben tener los HDL para poder describir circuitos digitales y qué características fundamentales deben tener los entornos de simulación que soportan este tipo de lenguajes.
- El alumno debe adquirir la capacidad de aplicar el lenguaje VHDL al diseño para síntesis de circuitos digitales combinacionales y secuenciales, tanto mediante la descripción de su comportamiento como de su estructura.
- El alumno debe adquirir la capacidad de aplicar el lenguaje VHDL a la programación de bancos de prueba para testear los circuitos diseñados.
A continuación se detallan los resultados del aprendizaje que el alumno debe alcanzar tras estudiar cada uno de los temas.
TEMA 1. FUNDAMENTOS DEL DISEÑO DEL HARDWARE DIGITAL
- Discutir la finalidad de los lenguajes para la descripción del hardware (HDL) y algunas de las principales ventajas que presenta su uso.
- Discutir el ciclo de diseño del hardware digital y el papel que desempeñan en el ciclo de diseño los HDL.
- Discutir y comparar las características de las siguientes tecnologías de fabricación de circuitos integrados: full-custom ASIC, standard cell ASIC, gate array ASIC, dispositivos programables en campo (FPGA, CPLD, PROM, PAL y PLA), y componentes estándar de pequeño y medio tamaño.
- Discutir las siguientes propiedades de los circuitos digitales: el retardo de los dispositivos, su ejecución concurrente, la marginalidad en el diseño y la fortaleza de las señales.
- Discutir el propósito y los fundamentos del test en diseño y manufactura, así como los conceptos: modelo de fallos, cobertura del test y calidad del test.
- Discutir la utilidad y composición de los bancos de pruebas.
- Discutir y comparar los niveles de abstracción y representación de los sistemas digitales.
- Realizar las operaciones básicas de manejo de algún entorno de simulación de VHDL'93 de su elección. Estas operaciones básicas incluyen al menos la edición de modelos VHDL, su depurado usando el debugger, su simulación y la visualización de los resultados.
TEMA 2. CONCEPTOS BÁSICOS DE VHDL
- Discutir la finalidad de las unidades de diseño de VHDL entity, architecture, package y configuration.
- Describir la interfaz de los circuitos digitales mediante unidades de diseño entity. Discutir las características y las diferencias entre los modos in, out e inout de los puertos.
- Discutir la sintaxis y la finalidad de las sentencias concurrentes simple, condicional y de selección. Dibujar el diagrama conceptual del hardware a que da lugar la síntesis de estas sentencias y el correspondiente circuito al nivel de puertas lógicas.
- Discutir la sintaxis y la finalidad de la sentencia generate.
- Discutir la sintaxis y la finalidad de los bloques process y de las sentencias secuenciales de asignación a señal, a variable, if, case y del bucle for. En casos sencillos, dibujar el diagrama conceptual del hardware a que da lugar la síntesis del bloque process, y el correspondiente circuito compuesto de puertas lógicas y biestables.
- Discutir cómo se realiza el modelado del retardo en VHDL.
- Definir en VHDL la estructura de un circuito mediante instanciación y conexión de otros circuitos. Asimismo, discutir la utilidad de la parametrización en la descripción de un circuito.
- Discutir las principales características de las señales, variables y constantes en VHDL. Discutir la diferencia entre señales y variables en lo que respecta al retardo en la asignación de los nuevos valores.
- Discutir cuáles son los tipos predefinidos de VHDL y sus operadores básicos. Asimismo, discutir las finalidad, los operadores básicos y las funciones de conversión de los tipos de dato std_logic, std_logic_vector, unsigned y signed. Finalmente, discutir las características de los tipos de dato time y string, así como de los tipos enumerados.
- Discutir qué son los atributos en VHDL y la finalidad de algunos de ellos.
- Discutir qué finalidad tienen las librerías en VHDL y conocer las librerías más comúnmente usadas.
- Discutir la utilidad de los procedimientos y funciones de VHDL.
- Discutir la finalidad de las sentencias assert y report.
TEMA 3. SIMULACIÓN DEL CÓDIGO VHDL
- Discutir las etapas análisis, elaboración y ejecución, de que consta el procesamiento y simulación del código VHDL realizado por las herramientas de CAD.
- Discutir el orden en el cual debe compilarse el código VHDL, atendiendo a las relaciones existentes entre las diferentes unidades de diseño.
- Discutir los conceptos driver y función de resolución.
- Discutir en qué consiste la inicialización y cómo se realiza.
- Discutir qué son los atributos de las señales y los conceptos evento, señal activa, transacción y señal implícita.
- Discutir cómo se realiza la simulación de las asignaciones con retardo delta, y cómo se combina la simulación de asignaciones con retardo explícito y asignaciones con retardo delta.
- Discutir cómo se gestionan las colas de transacciones de los drivers.
- Realizar manualmente, paso a paso, la simulación de diseños sencillos, indicando cómo se realiza la inicialización, cómo va avanzando el reloj de la simulación, qué eventos se producen y cómo se gestionan las colas de transacciones planificadas. Saber comprobar el resultado de las simulaciones realizadas manualmente, usando para ello algún simulador de VHDL.
TEMA 4. DISEÑO DE LÓGICA COMBINACIONAL
- Discutir qué características debe reunir un diseño para que el circuito resultante de su síntesis sea combinacional.
- Diseñar circuitos lógicos combinacionales empleando VHDL, tales como funciones lógicas, multiplexores, sumadores y restadores binarios, y ALUs, describiendo el comportamiento y/o la estructura del circuito.
- Describir un mismo circuito combinacional usando diferentes representaciones (comportamental, estructural o mixta) y empleando diferentes tipos de sentencias, tanto concurrentes como secuenciales.
- Programar y simular bancos de prueba para circuitos combinacionales, y analizar los resultados de la simulación.
TEMA 5. REGISTROS Y MEMORIAS
- Discutir la diferencia conceptual entre la operación de reset síncrono y asíncrono. Describir ambas usando VHDL.
- Diseñar usando VHDL registros con las funcionalidades siguientes: reset, carga serie y paralelo, lectura serie y paralelo, y desplazamiento de 1 bit hacia la derecha e izquierda. Programar usando VHDL bancos de pruebas para los registros que testeen las funcionalidades anteriores.
- Discutir las características de los registros siguientes: registro de desplazamiento, registro multifunción, register file y registro triestado.
- Realizar el diseño comportamental y estructural usando VHDL de un register file.
- Programar bancos de pruebas que lean los vectores de test de fichero.
- Diseñar usando VHDL el acceso al bus de varios componentes mediante buffers triestado.
- Diseñar en VHDL memorias RAM y ROM, y buses bidireccionales.
TEMA 6. DISEÑO DE LÓGICA SECUENCIAL
- Diseñar usando VHDL distintos tipos de flip-flop y sus bancos de prueba. Diseñar usando VHDL el circuito latch. Discutir la diferencia entre un flip-flop y un latch.
- Discutir buenas prácticas aplicables al diseño para síntesis de circuitos secuenciales síncronos.
- Diseñar en VHDL máquinas de estado finito de Moore y de Mealy sintetizables, realizando el diseño tanto en base a la descripción de su estructura al nivel de puertas lógicas y flip-flops, como en base a su comportamiento.
- Diseñar y programar en VHDL bancos de pruebas de circuitos secuenciales síncronos. Discutir diferencias conceptuales entre los bancos de pruebas para circuitos secuenciales síncronos y para circuitos combinacionales.
- Discutir qué son las máquinas de estado finito seguras y realizar el diseño de este tipo de máquinas usando VHDL.
TEMA 7. METODOLOGÍA DE TRANSFERENCIA ENTRE REGISTROS
- Discutir los conceptos siguientes: operaciones RT, notación RT, programa RT y metodología RT.
- Discutir el ciclo de ejecución de una operación RT.
- Discutir los principios fundamentales de la programación RT.
- Dado un algoritmo, traducirlo a un programa RT.
- Describir usando VHDL programas RT sencillos y programar bancos de pruebas para testear estos diseños.
- Discutir los conceptos fundamentales de la síntesis de programas RT mediante FSMD. En particular, discutir la estructura general de la FSMD, cómo se realiza la síntesis del camino de datos y por qué la unidad de control puede sintetizarse como una FSM.
TEMA 1. FUNDAMENTOS DEL DISEÑO DEL HARDWARE DIGITAL
TEMA 2. CONCEPTOS BÁSICOS DE VHDL
TEMA 3. SIMULACIÓN DEL CÓDIGO VHDL
TEMA 4. DISEÑO DE LÓGICA COMBINACIONAL
TEMA 5. REGISTROS Y MEMORIAS
TEMA 6. DISEÑO DE LÓGICA SECUENCIAL
TEMA 7. METODOLOGÍA DE TRANSFERENCIA ENTRE REGISTROS
El texto base de la asignatura es una Unidad Didáctica editada por la UNED. Este texto está adaptado para la educación a distancia y cubre totalmente el temario de la asignatura.
En la página web de la asignatura (http://www.uned.es/71012018/) están disponibles los objetivos docentes de cada tema y el temario detallado, de modo que aquellos alumnos que lo deseen puedan preparar la asignatura empleando otros recursos diferentes al texto base.
Se recomienda al alumno que aprenda a manejar algún simulador de VHDL'93 y que realice por sí mismo la simulación de los diseños explicados en el texto base, así como que emplee dicho simulador para resolver los ejercicios y las actividades propuestas. En la página web de la asignatura y en el texto base puede encontrarse información acerca de varios simuladores gratuitos.
En la página web de la asignatura hay ejercicios resueltos de autoevaluación. También pueden encontrarse los trabajos y exámenes resueltos de anteriores convocatorias, y enlaces a recursos de uso opcional que pueden ser útiles para aquellos alumnos que voluntariamente deseen profundizar en la materia más allá de los objetivos planteados en la asignatura.
TIPO DE PRUEBA PRESENCIAL |
|
---|---|
Tipo de examen | |
Tipo de examen | Examen de desarrollo |
Preguntas desarrollo | |
Preguntas desarrollo | 4 |
Duración | |
Duración | 120 (minutos) |
Material permitido en el examen | |
Material permitido en el examen | Ninguno |
Criterios de evaluación | |
Criterios de evaluación | La puntuación de cada pregunta se especifica en el enunciado del examen. |
% del examen sobre la nota final | |
% del examen sobre la nota final | 60 |
Nota mínima del examen para aprobar sin PEC | |
Nota mínima del examen para aprobar sin PEC | 0 |
Nota máxima que aporta el examen a la calificación final sin PEC | |
Nota máxima que aporta el examen a la calificación final sin PEC | 0 |
Nota mínima en el examen para sumar la PEC | |
Nota mínima en el examen para sumar la PEC | 5 |
Comentarios y observaciones | |
Comentarios y observaciones | El examen presencial escrito obligatorio se celebrará en todos los Centros Asociados, de manera coordinada, según el calendario previsto. El examen tendrá una duración de 2 horas, no se permitirá el uso de ningún material y constará de varios ejercicios, que el alumno deberá resolver de manera argumentada. El examen será calificado con una nota comprendida entre 0 y 10. Para aprobar el examen debe obtenerse una nota igual o superior a 5. |
PRUEBAS DE EVALUACIÓN CONTINUA (PEC) |
|
---|---|
¿Hay PEC? | |
¿Hay PEC? | |
Descripción | |
Descripción | El trabajo práctico obligatorio consistirá en la realización y verificación de varios diseños de hardware digital propuestos por el Equipo Docente. Se propondrá un trabajo para convocatoria ordinaria y otro trabajo diferente para convocatoria extraordinaria. El trabajo propuesto para convocatoria ordinaria será corregido por los profesores tutores y, en aquellos casos en que esto no sea posible, por el equipo docente. En convocatoria ordinaria, la evaluación del trabajo se hará en la modalidad de evaluación continua formativa: la fecha límite de entrega coincidirá aproximadamente con la mitad del cuatrimestre, lo cual permitirá entregar al alumno la calificación a su trabajo y la solución antes de las pruebas presenciales. El trabajo propuesto para convocatoria extraordinaria será corregido por el equipo docente y no se seguirá la modalidad de evaluación continua formativa: la fecha límite de entrega del trabajo coincidirá con la fecha en que se realiza la prueba presencial de la asignatura y el alumno recibirá la calificación al trabajo junto con |
Criterios de evaluación | |
Criterios de evaluación | El trabajo práctico será calificado con una nota comprendida entre 0 y 10. Para aprobar el trabajo práctico debe obtenerse una nota igual o superior a 5. Para aprobar la asignatura es necesario aprobar el trabajo práctico. |
Ponderación de la PEC en la nota final | |
Ponderación de la PEC en la nota final | 40% |
Fecha aproximada de entrega | |
Fecha aproximada de entrega | 16 de abril (conv. ordinaria) y 10 de septiembre (conv. extraordinaria) |
Comentarios y observaciones | |
Comentarios y observaciones |
OTRAS ACTIVIDADES EVALUABLES |
|
---|---|
¿Hay otra/s actividad/es evaluable/s? | |
¿Hay otra/s actividad/es evaluable/s? | |
Descripción | |
Descripción | La participación en los foros del curso virtual no es obligatoria. No obstante, se valorará positivamente la participación constructiva en los foros del curso virtual, entendiendo como tal la contribución a la resolución de dudas planteadas por otros alumnos, proporcionar información o comentarios útiles para que otros alumnos comprendan la materia, etc. |
Criterios de evaluación | |
Criterios de evaluación | La participación constructiva en los foros se valorará con una nota comprendida entre 0 y 1. |
Ponderación en la nota final | |
Ponderación en la nota final | 0 |
Fecha aproximada de entrega | |
Fecha aproximada de entrega | |
Comentarios y observaciones | |
Comentarios y observaciones |
¿Cómo se obtiene la nota final? |
|
---|---|
La nota de aquellos alumnos que hayan aprobado el examen y el trabajo práctico se calculará, como se indica a continuación, de las notas obtenidas en el examen y en el proyecto, y de la evaluación de la actividad del alumno en los foros: Nota = mín(10, 0.6*notaExamen + 0.4*notaTrabajo + actividadForos) La nota del examen o del trabajo, obtenida en convocatoria ordinaria, se guardará para la convocatoria extraordinaria del mismo curso académico. Sin embargo, no se guardarán notas de un curso académico al siguiente. |
ISBN(13): 9788436279412
Título: DISEÑO Y ANÁLISIS DE CIRCUITOS DIGITALES CON VHDL Segunda edición, 2023 Autor/es: Alfonso Urquia;Carla Martin; Editorial: Editorial UNED |
La Unidad Didáctica recomendada como bibliografía básica cubre totalmente el temario y es suficiente para preparar la asignatura. En la Unidad Didáctica se explican metodologías básicas para el diseño de circuitos digitales y para la programación de bancos de pruebas, todo ello empleando VHDL. A lo largo del texto se muestran diferentes ejemplos completamente desarrollados de diseño y test de circuitos digitales, y se plantean ejercicios prácticos, proporcionándose en todos los casos el código VHDL completo.
El alumno puede emplear el software de CAD para VHDL'93 que desee, con el fin de simular los diseños en su propio ordenador. En la Unidad Didáctica y en la página web de la asignatura se dan indicaciones adicionales a este respecto.
ISBN(13): 9780071400701
Título: VHDL: PROGRAMMING BY EXAMPLE 2002 Autor/es: Douglas L. Perry; Editorial: McGraw Hill |
ISBN(13): 9780262014335
Título: CIRCUIT DESIGN AND SIMULATION WITH VHDL 2010 Autor/es: Volnei A. Pedroni; Editorial: : MIT PRESS |
ISBN(13): 9780471720928
Título: RTL HARDWARE DESIGN USING VHDL: CODING FOR EFFICIENCY, PORTABILITY, AND SCALABILITY 2006 Autor/es: Pong P. Chu; Editorial: : JOHN WILEY & SONS INC. |
ISBN(13): 9780534466022
Título: ADVANCED DIGITAL LOGIC DESIGN: USING VHDL, STATE MACHINES, AND SYNTHESIS FOR FPGAS 2006 Autor/es: Sunggu Lee; Editorial: NELSON THOMSON LEARNING |
Dado que VHDL es un lenguaje usado muy ampliamente, en Internet puede encontrarse abundante documentación sobre VHDL, ejemplos de diseño de circuitos, libros, herramientas de simulación, etc. En la página web de la asignatura (http://www.uned.es/71012018) hay algunos enlaces de interés.
A continuación se realizan algunos comentarios sobre los cuatro libros recomendados como bibliografía complementaria y su relación con el contenido de la asignatura. La consulta de estos libros es opcional, ya que el texto base cubre completamente el temario de la asignatura.
El Capítulo 1 de (Chu, 2006) proporciona información adicional acerca de los niveles de abstracción en la representación de los sistemas digitales, y acerca del ciclo de diseño del hardware digital y el papel de los HDL. Acerca de las características de los lenguajes para la descripción del hardware, se recomienda la consulta del Capítulo 2 de (Chu, 2006). El Capítulo 2 de (Lee, 2006) es una buena referencia acerca del diseño de lógica digital usando lenguajes para la descripción del hardware.
Existe gran cantidad de bibliografía en la cual se describen las capacidades y uso de VHDL'93. Los Capítulos 1 a 8 de (Perry, 2002) constituyen una exposición paso a paso, muy didáctica, de los conceptos básicos de VHDL. Los Capítulos 3 y 4 de (Pedroni, 2010) contienen muchos ejemplos de definición de nuevos tipos, conversión entre tipos, operaciones y atributos.
El Capítulo 6 de (Chu, 2006) es una excelente referencia acerca de la síntesis del código VHDL. En el Capítulo 7 de este mismo texto se dan recomendaciones y guías valiosas acerca del diseño con VHDL para síntesis de circuitos combinacionales eficientes. En los Capítulos 9 y 10 de (Perry, 2002) se discute el diseño para síntesis usando VHDL.
Los Capítulos 8 y 9 de (Chu, 2006) contienen varios ejemplos de diseño de registros y memorias. En el Capítulo 7 de (Pedroni, 2010) se encuentra el código VHDL de diferentes registros descritos de diferentes formas y se discute el número de registros inferidos en cada descripción. Asimismo, se comentan algunos de los errores de diseño más comunes. En el Capítulo 9 de (Pedroni, 2010) se describe el diseño de diferentes elementos de memoria, tales como la memoria ROM y la RAM.
Los Capítulos 8 y 9 de (Chu, 2006) contienen también información útil y variedad de ejemplos acerca del diseño para síntesis de circuitos secuenciales. El Capítulo 10 está dedicado por completo al diseño de máquinas de estado finito con VHDL a partir de diagramas ASM. El Capítulo 11 de (Pedroni, 2010) es una buena referencia sobre las máquinas de estado finito y tiene varios ejemplos interesantes descritos en VHDL.
El Capítulo 11 de (Chu, 2006) describe el diseño de circuitos siguiendo la metodología RT, mediante el empleo de diagramas ASMD (diagrama ASM con camino de datos), y en el Capítulo 12 se desarrollan varios casos de estudio. En el Capítulo 5 de (Lee, 2006) puede encontrarse información adicional acerca del diseño aplicando la metodología RT, así como ejemplos de diseño detallados, como es el caso de un controlador LCD. En (Perry, 2002) puede encontrarse un ejemplo de diseño de relativa complejidad usando VHDL: una pequeña CPU, compuesta de un array de registros, una ALU, varios registros (de desplazamiento, contador de programa, de dirección y de instrucción), un comparador y una unidad de control. También en (Lee, 2006) pueden encontrarse diseños completos de relativa complejidad: un analizador de protocolo USB, varias unidades aritméticas rápidas y un microprocesador RISC.
En el curso virtual de la asignatura puede encontrarse:
- Los foros, que proporcionan un medio de comunicación entre los alumnos, y entre los alumnos y el profesorado.
- El enunciado de los trabajos obligatorios: el de convocatoria ordinaria y el de convocatoria extraordinaria. La entrega y evaluación del trabajo se realiza también a través del curso virtual.
- Lista de preguntas más frecuentes.
En la página web de la asignatura (http://www.uned.es/71012018) puede encontrarse:
- Información detallada acerca del contenido y los objetivos docentes de la asignatura.
- Ejercicios de autoevaluación resueltos.
- Soluciones a los exámenes de las convocatorias anteriores.
- Soluciones a los trabajos prácticos planteados en convocatorias anteriores.
- Enlaces a sitios de descarga de software gratuito de simulación, enlaces a cursos y otros recursos relacionados con el diseño de circuitos digitales, etc.