NO EXISTEN CAMBIOS
The subject guide has been updated with the changes mentioned here
SUBJECT NAME |
SUBJECT NAME |
INGENIERÍA DE COMPUTADORES II |
CODE |
CODE |
71902025 |
SESSION |
SESSION |
2024/2025 |
DEPARTMENT |
DEPARTMENT |
INFORMÁTICA Y AUTOMÁTICA
|
DEGREE IN WHICH IT IS OFFERED |
DEGREE IN WHICH IT IS OFFERED |
|
|
|
GRADO EN INGENIERÍA INFORMÁTICA
|
COURSE - PERIOD - TYPE |
-
SEGUNDO
-
SEMESTER 1
- OBLIGATORIAS
|
|
GRADO EN INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN
|
COURSE - PERIOD - TYPE |
- ESPECÍFICO PARA INGENIEROS TÉCNICOS EN INFORMÁTICA DE GESTIÓN EN UNED
-
OPTATIVAS
-
SEMESTER 1
- OBLIGATORIAS
- ESPECÍFICO PARA INGENIEROS TÉCNICOS EN INFORMÁTICA DE GESTIÓN
-
OPTATIVAS
-
SEMESTER 1
- OBLIGATORIAS
- GRADO EN INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN
-
SEGUNDO
COURSE
-
SEMESTER 1
- OBLIGATORIAS
|
|
MÁSTER UNIVERSITARIO EN INGENIERÍA INFORMÁTICA
|
CREDITS NUMBER |
CREDITS NUMBER |
6 |
HOURS |
HOURS |
150 |
LANGUAGES AVAILABLE |
LANGUAGES AVAILABLE |
CASTELLANO |
La asignatura "Ingeniería de Computadores II" se imparte en el primer cuatrimestre del segundo curso, tiene carácter obligatorio para las titulaciones de los grados de Ingeniería Informática y de Tecnologías de la Información y aporta 6 créditos ECTS, equivalentes a 150 horas de trabajo por parte de un estudiante.
El objetivo de esta guía es proporcionar un conjunto de orientaciones para poder abordar con éxito el estudio de la asignatura. Por esta razón, se recomienda la lectura completa de la guía a comienzo del cuatrimestre con el fin de formarse una idea completa de la temática de la asignatura y del plan de trabajo que se piensa seguir en su desarrollo.
La asignatura de “Ingeniería de Computadores II” pertenece a la materia de Ingeniería de Computadores. La inclusión de esta asignatura en el plan de estudios persigue los siguientes objetivos generales:
- Adquirir conceptos básicos para entender el funcionamiento de los computadores actuales.
- Proporcionar herramientas y conocimientos necesarios para otras asignaturas que forman parte del Plan de Estudios.
- Ayudar a adquirir las competencias genéricas y específicas que debe tener el futuro ingeniero.
Los dos primeros objetivos son propios de cualquier enseñanza tradicional de carácter técnico. En el tercer objetivo se menciona la adquisición de competencias propias de las enseñanzas impartidas en el Espacio Europeo de Educación Superior.
La asignatura "Ingeniería de Computadores II" pertenece a la materia denominada "Ingeniería de Computadores" que está compuesta por tres asignaturas, siendo ésta la que se puede considerar como intermedia. Con la inclusión de esta asignatura en el plan de estudios se persigue que el alumno:
- Adquiera los conceptos básicos necesarios para entender el funcionamiento de los procesadores que incorporan los computadores actuales, ya sean tanto máquinas orientadas al ámbito doméstico, como al empres o al científico-técnico.
- Posea una sólida base académica para abordar el estudio de otras asignaturas del plan de estudios con contenidos técnicos más avanzados, como, por ejemplo, "Ingeniería de Computadores III", "Procesamiento paralelo" o "Sistemas distribuidos".
- Adquiera parte de las competencias genéricas y específicas que debe tener todo graduado en el campo de la ingeniería informática y de las tecnologías de la información.
Los dos primeros objetivos son propios de cualquier enseñanza tradicional de carácter técnico-científico y, dada la extensión y profundidad con que se tratan algunos temas, se sitúa en el nivel intermedio dentro del plan de formación de los grados en Ingeniería Informática y en Tecnologías de la Información.
En el tercer objetivo se menciona la adquisición de competencias propias de las enseñanzas impartidas en el Espacio Europeo de Educación Superior. En este sentido, la asignatura “Ingeniería de Computadores II” contribuye al desarrollo de distintas competencias genéricas y específicas de las planteadas en el plan de estudios en el que se enmarca (ver apartado "Competencias que adquiere el estudiante").
Papel de la asignatura dentro del Plan de Estudios
Los contenidos de la asignatura "Ingeniería de Computadores II" se relacionan con los de otras asignaturas que los alumnos deben haber cursado previamente, o que cursarán en años posteriores. Un mismo concepto puede aparecer en varias ocasiones y, normalmente, cada asignatura lo planteará desde un punto de vista particular y diferente al de las otras asignaturas. Por ejemplo, la organización de la jerarquía de memoria es un tema tratado tanto en las asignaturas "Ingeniería de Computadores I" e "Ingeniería de Computadores II" como en la materia de "Sistemas Operativos". Esto permite que el alumno llegue a tener una visión y una comprensión más amplia y coherente de las distintas áreas que forman una materia tan extensa como es "Ingeniería de Computadores".
Las asignaturas que guardan una relación más directa con "Ingeniería de Computadores II" se citan a continuación.
La asignatura que sirve como punto de arranque para el resto de asignaturas de esta materia es "Ingeniería de Computadores I" (primer curso, segundo cuatrimestre), impartida en el Grado en Ingeniería Informática y en el Grado en Tecnologías de la Información; "Procesamiento Paralelo" (tercer curso, primer cuatrimestre), impartida sólo en el Grado en Ingeniería Informática; "Ingeniería de Computadores III" (segundo curso, segundo cuatrimestre) impartida sólo en el Grado en Tecnologías de la Información. Los conceptos aprendidos en "Ingeniería de Computadores II" se aplicarán en el estudio de estas asignaturas.
También guarda relación con la materia de "Fundamentos Físicos". Esta materia comprende la asignatura de "Fundamentos Físicos de la Informática" para el Grado en Ingeniería Informática, la asignatura de "Física" para el Grado en Tecnologías de la Información y la asignatura de "Fundamentos de Sistemas Digitales" común a ambos grados. Esta materia se centra en las bases electrónicas de la computación digital y cubre los temas principales de los fundamentos de sistemas digitales. Todas estas asignaturas se cursan en el primer cuatrimestre del primer curso de ambos grados, por tanto, lo habitual es que el alumno las haya cursado antes de cursar la asignatura de "Ingeniería de Computadores II".
Otra materia relacionada con esta asignatura es la materia de "Sistemas Operativos". Las asignaturas de esta materia son: "Sistemas Operativos", común a ambos grados e impartida en el primer cuatrimestre del segundo curso; "Diseño y Administración de Sistemas Operativos", asignatura del Grado en Ingeniería Informática y "Ampliación de Sistemas Operativos", asignatura perteneciente al Grado en Tecnologías de la Información. Las dos asignaturas se imparten en el primer cuatrimestre del tercer curso.
Es destacable también la relación con la asignatura "Lógica y Estructuras Discretas", asignatura de primer cuatrimestre del primer curso de ambos grados.
Además, muchos de los conocimientos adquiridos en la asignatura van a ser aplicables para realizar un buen proyecto fin de carrera.
Necesariamente, se requiere haber cursado la asignatura "Ingenieria de Computadores I" dado que los contenidos que se tratan en esta asignatura profundizan en todo lo relativo al funcionamiento a nivel arquitectónico de los diferentes procesadores (superescalares, vectoriales, VLIW, EPIC) que incorporan actualmente tanto los computadores comerciales como los supercomputadores.
Además, es muy recomendable haber cursado alguna asignatura relacionada con la programación de computadores dado que ya se inicia al estudiante en los conceptos de procesamiento paralelo a nivel de instrucción (procesadores segmentados), a nivel de datos (procesadores vectoriales) y a nivel de función, hilo y proceso (multicomputadores y multiprocesadores).
Los profesores que forman parte del equipo docente de la asignatura tienen amplia experiencia docente, actúan de forma coordinada y comparten responsabilidades. El alumno podrá ponerse en contacto directo con el equipo docente en los despachos, teléfonos y correos electrónicos siguientes:
Sánchez Moreno, José (jsanchez@dia.uned.es)
Martes de 10:00 a 14:00 horas.
Tfno: 913987146.
Despacho 5.11; E.T.S.I. Informática. UNED. (Coordinador).
Dormido Canto, Sebastián (sebas@dia.uned.es)
Lunes de 10:00 a 14:00 horas.
Tfno: 913987194.
Despacho 5.11; E.T.S.I. Informática. UNED.
Fabregas Acosta, Ernesto (efabregas@dia.uned.es)
Lunes y Jueves de 15:00 a 17:00 horas.
Tfno: 913987786.
Despacho 6.02; E.T.S.I. Informática. UNED.
Moreno Salinas, David (dmoreno@dia.uned.es)
Lunes de 15:00 a 19:00 horas.
Tfno: 913987942.
Despacho 6.12; E.T.S.I. Informática. UNED.
Sanz Prat, Victorino (vsanz@dia.uned.es)
Lunes de 10:00 a 12:00 y de 14:00 a 16:00 horas.
Tfno: 913989469.
Despacho 6.12; E.T.S.I. Informática. UNED.
Las consultas sobre los contenidos o sobre el funcionamiento de la asignatura se plantearán, preferentemente, en el curso virtual utilizando los foros públicos. Si el alumno no puede acceder a los cursos virtuales, o cuando necesite privacidad, se podrá poner en contacto con el equipo docente mediante la dirección de correo electrónico:
ic2@dia.uned.es
La ETSI Informática de la UNED está situada en la Ciudad Universitaria de Madrid. La dirección postal es
C/ Juan del Rosal, 16, 28040. Madrid
Además del Equipo Docente de la asignatura, el estudiante tendrá asignado un profesor-tutor que desempeñará las siguientes funciones:
1. Ayudar al estudiante a entender el funcionamiento de la institución dado el desconocimiento que puede tener de la UNED.
2. En función de la demanda de su grupo de estudiantes, centrar su tutoría en clases presenciales o semipresenciales o en resolver dudas específicas.
3. Evaluar y hacer el seguimiento de una parte de las actividades formativas que sus estudiantes realicen, bajo las directrices marcadas por el equipo docente.
Competencias genéricas
- 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.
- 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 dtareas/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.
- CG.3. Competencias de gestión de la calidad y la innovación: 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 y gestión de los procesos de comunicación e información.
- 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).
- 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.
- 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).
Competencias específicas
- FB.04. Conocimientos básicos sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos 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 tener un conocimiento profundo de los principios fundamentales de la computación y saberlos aplicar para interpretar, seleccionar, valorar, modelar, y crear nuevos conceptos, teorías, usos y desarrollos tecnológicos relacionados con la informática.
- BTEic.1. Capacidad de diseñar y construir sistemas digitales, incluyendo computadores, sistemas basados en microprocesador y sistemas de comunicaciones.
- BTEic.3. Capacidad de analizar y evaluar arquitecturas de computadores, incluyendo plataformas paralelas y distribuidas, así como desarrollar y optimizar software para las mismas.
En el proceso de adquisición de las competencias específicas mencionadas, esta asignatura contribuye ofreciendo al alumno los siguientes resultados de aprendizaje:
-
Entender las razones y las estrategias para la existencia de diferentes tipos de arquitectura de computador. No tener problemas en identificar los componentes de un computador moderno.
-
Comprender la organización de la arquitectura clásica de von Neumann y sus principales unidades funcionales. Entender cómo un computador recupera las instrucciones de memoria y las ejecuta.
-
Conocer las opciones existentes para el procesamiento paralelo y vectorial al margen del modelo von Neumann y cómo aplicar estas técnicas de procesamiento diseñar procesadores escalares, superescalares y vectoriales.
-
Ser capaz de describir arquitecturas alternativas como SIMD, MIMD y VLIW.
-
Conocer cómo cada una de las unidades funcionales de un computador puede afectar al rendimiento global y poder estimar el impacto que tiene en el rendimiento global del sistema los cambios en las unidades funcionales.
-
Ser capaz de explicar el concepto de predicción de salto, el concepto de prefetching de instrucciones y el concepto de ejecución especulativa.
-
Conocer el concepto de red de interconexión y ser capaz de caracterizar las distintas aproximaciones que existen. Conocer las implicaciones que el multiprocesamiento conlleva en un sistema de memoria y cómo se resuelven.
-
Manejar entornos de simulación de procesadores segmentados, superescalares y vectoriales.
-
Interesarse por las tendencias en materia de ingeniería de computadores y saber dónde encontrar información sobre esas tendencias.
Tema 1. Procesadores segmentados
En este tema se estudia el concepto de segmentación, pieza básica y fundamental sobre la que se articula el diseño de los procesadores de las últimas décadas, con independencia de su filosofía arquitectónica. La segmentación constituye una técnica de implementación de procesadores mediante la cual se solapa la ejecución de múltiples instrucciones, explotando el paralelismo entre las instrucciones que componen un programa y permitiendo descomponer la ejecución de una instrucción en un número fijo de etapas donde cada una representa una fase del procesamiento de la instrucción. El disponer de varias etapas permite que en cada una de ellas haya una instrucción en un estadio diferente de su procesamiento y, por lo tanto, en un instante dado puedan llegar a estar ejecutándose en el procesador tantas instrucciones como etapas. Cada etapa se encuentra conectada con la anterior formando un cauce (o pipeline) por cuyo extremo entra la instrucción, se procesa en las sucesivas etapas de la segmentación o segmentos y, concluida la ejecución, sale por el otro extremo. Un símil muy utilizado para visualizar de forma rápida el concepto de segmentación es el de las cadenas de fabricación de automóviles. Evidentemente, la segmentación no está carente de problemas siendo los más habituales las interdependencias que existen entre las instrucciones en materia de operandos. En este tema no solo se estudia el concepto de segmentación, utilizando para ello una segmentación genérica básica reflejo de las reales, sino que se analizan en detalle los problemas que surgen y se estudian algunas de las soluciones adoptadas.
Resultados de aprendizaje
Tras el estudio del tema, el alumno estará capacitado para:
- Entender las razones y las estrategias para la existencia de diferentes tipos de arquitectura de computador. No tener problemas en identificar los componentes de un computador moderno.
- Comprender la organización de la arquitectura clásica de von Neumann y sus principales unidades funcionales. Entender cómo un computador recupera las instrucciones de memoria y las ejecuta.
- Ser capaz de describir arquitecturas alternativas como SIMD, MIMD y VLIW.
- Conocer cómo cada una de las unidades funcionales de un computador puede afectar al rendimiento global y poder estimar el impacto que tiene en el rendimiento global del sistema los cambios en las unidades funcionales.
- Manejar entornos de simulación de procesadores segmentados, superescalares y vectoriales.
- Interesarse por las tendencias en materia de ingeniería de computadores y saber dónde encontrar información sobre esas tendencias.
Tema 2. Procesadores superescalares
La mayoría de los procesadores que se utilizan en los computadores actuales, ya estén orientados al mercado doméstico como al científico o al industrial, se basan en segmentaciones capaces de procesar varias instrucciones simultáneamente y de forma desordenada, de ahí su denominación de procesadores superescalares. En este tema se estudia la arquitectura de un procesador superescalar genérico, muy similar a la de los procesadores comerciales, aunque más sencilla debido a su carácter didáctico. Recurriendo a esta arquitectura superescalar, se analiza cada una de las etapas que intervienen en el procesamiento de los diferentes tipos de instrucciones (carga/almacenamiento, aritmético-lógicas, saltos, bifurcaciones) y se estudian las soluciones dadas por los investigadores y la industria a los problemas que se plantean en cada una de ellas. Además, se analizan las limitaciones que presentan este tipo de arquitecturas de procesador para crear computadores cada vez más potentes.
Resultados de aprendizaje
Tras el estudio del tema, el alumno será capaz de:
- Entender las razones y las estrategias para la existencia de diferentes tipos de arquitectura de computador. No tener problemas en identificar los componentes de un computador moderno.
- Conocer las opciones existentes para el procesamiento paralelo y vectorial al margen del modelo von Neumann y cómo aplicar estas técnicas de procesamiento diseñar procesadores escalares, superescalares y vectoriales.
- Conocer cómo cada una de las unidades funcionales de un computador puede afectar al rendimiento global y poder estimar el impacto que tiene en el rendimiento global del sistema los cambios en las unidades funcionales.
- Ser capaz de explicar el concepto de predicción de salto, el concepto de prefetching de instrucciones y el concepto de ejecución especulativa.
- Manejar entornos de simulación de procesadores segmentados, superescalares y vectoriales.
- Interesarse por las tendencias en materia de ingeniería de computadores y saber dónde encontrar información sobre esas tendencias.
Tema 3. Procesadores VLIW y procesadores vectoriales
En este tema se introducen dos nuevas filosofías para el diseño de procesadores que, aunque basadas en la segmentación, introducen formas alternativas para mejorar el rendimiento: los procesadores VLIW (Very Long Instruction Word) y los procesadores vectoriales. Los procesadores VLIW se caracterizan por utilizar internamente instrucciones compuestas de varias instrucciones u operaciones básicas de forma que se maximiza el uso de las múltiples unidades funcionales que poseen. Este aspecto pone de manifiesto la gran importancia que tiene el diseño de compiladores para procesadores VLIW que tengan en cuenta la arquitectura interna del procesador y generan código objeto acorde con sus características. Esto pone de relieve los inconvenientes de esta filosofía de diseño: la necesidad de disponer de compiladores altamente especializados y los problemas de incompatibilidad ya que el código objeto que se genera para un procesador VLIW tiene en cuenta las latencias y el número de unidades funcionales de ese procesador lo que provoca que sea ineficiente si se pretende ejecutar en otro procesador VLIW con características diferentes.
Por otro lado, los procesadores vectoriales se caracterizan por proporcionar operadores de alto nivel que trabajan sobre vectores, no sobre valores escalares. Así, una operación vectorial tomaría dos vectores de n elementos, realizaría la correspondiente operación aritmética con ellos y generaría como resultado un vector de n elementos. Por lo tanto, una instrucción vectorial es equivalente a un bucle constituido por instrucciones secuenciales, donde en cada iteración se realiza una operación aritmética y se genera uno de los elementos del resultado. Aunque los computadores basados en procesadores vectoriales tuvieron su máximo apogeo en la década de los 80 como punta de lanza de la supercomputación científica, y habiendo sido superados hoy en día por los multiprocesadores y multicomputadores, paradójicamente actualmente se encuentran más accesibles que nunca. Ello se debe a que los actuales procesadores superescalares incorporan en su repertorio de instrucciones un conjunto de instrucciones vectoriales, conocidas como instrucciones SIMD, que permiten mejorar el rendimiento de las aplicaciones multimedia por lo que todos los procesadores incorporan una o dos unidades funcionales específicas para el tratamiento de las instrucciones SIMD.
Resultados de aprendizaje
Con la información proporcionada en este tema, el alumno estará en condiciones de:
- Conocer las opciones existentes para el procesamiento paralelo y vectorial al margen del modelo von Neumann y cómo aplicar estas técnicas de procesamiento diseñar procesadores escalares, superescalares y vectoriales.
- Conocer cómo cada una de las unidades funcionales de un computador puede afectar al rendimiento global y poder estimar el impacto que tiene en el rendimiento global del sistema los cambios en las unidades funcionales.
- Manejar entornos de simulación de procesadores segmentados, superescalares y vectoriales.
- Interesarse por las tendencias en materia de ingeniería de computadores y saber dónde encontrar información sobre esas tendencias.
Todos los contenidos son fundamentales y de dificultad elevada aunque inferior a la del tema 2.
Tema 4. Procesamiento paralelo
Hasta llegar a este punto, todo lo que se ha estudiado en los tres temas previos estaba orientado a la mejora de las prestaciones de computadores construidos con un único procesador. Sin embargo, hoy en día se sabe que los sistemas basados en un único procesador presentan límites en el rendimiento que pueden alcanzar, por lo que la tendencia que se ha establecido es la de construir máquinas dotadas de varios procesadores, pudiendo oscilar el número de procesadores desde unos pocos, como sucede en los computadores orientados al ámbito doméstico o empresarial, hasta alcanzar los cientos de miles en sistemas orientados a la computación de alto rendimiento. Evidentemente, esta tendencia, basada en el incremento de rendimiento en base a la suma de procesadores, va unida a toda la investigación que se continúa realizando para mejorar las características de los procesadores a nivel individual (consumo de energía, disipación de calor, tamaño, velocidad, etc.), ya se trate de procesadores superescalares, vectoriales o VLIW. En este tema se presentan las arquitecturas más relevantes para construir computadores dotados de varios procesadores, es decir, sistemas de computación conocidos de forma coloquial como computadores paralelos. Para avanzar de forma ordenada y comprensible en la explicación de los diferentes tipos de plataforma de computación paralela que existen en la actualidad, se recurre a su clasificación en base a su organización lógica y física. La organización lógica se refiere a la visión que el programador tiene de la plataforma, es decir, las capacidades para expresar tareas paralelas (la estructura de control) y los métodos de comunicación entre dichas tareas (el modelo de comunicación). La organización física se refiere a la estructura del hardware que compone la plataforma, donde el criterio habitual es catalogar los sistemas en función de la organización del espacio de direcciones de memoria, obteniéndose así los dos tipos fundamentales: los sistemas de memoria compartida o multiprocesadores y los sistemas de memoria distribuida o multicomputadores.
Resultados de aprendizaje
Una vez se haya trabajado el tema, el estudiante estará capacitado para:
- Conocer el concepto de red de interconexión y ser capaz de caracterizar las distintas aproximaciones que existen. Conocer las implicaciones que el multiprocesamiento conlleva en un sistema de memoria y cómo se resuelven.
- Interesarse por las tendencias en materia de ingeniería de computadores y saber dónde encontrar información sobre esas tendencias.
La metodología de aprendizaje a aplicar será la propia de la enseñanza a distancia, utilizando para ello tanto los medios tradicionales impresos como las tecnologías de información y comunicación disponibles en nuestra universidad, teniendo en cuenta los requerimientos de flexibilidad y autonomía propios de nuestros estudiantes.
El alumno contará, inicialmente, con esta guía de estudio que explica en detalle el plan de trabajo propuesto para la asignatura y proporciona orientaciones sobre el estudio y las actividades que debe realizar. Además, en esta guía encontrará información sobre la organización de la asignatura, cómo estudiarla y qué papel están llamados a desempeñar los materiales y medios que se van a utilizar.
También se describen las actividades y ejercicios prácticos que deberá realizar, el calendario a seguir para realizarlas y cómo enviar los documentos y trabajos desarrollados.
El alumno dispondrá, además, de un texto base que ha sido escrito de forma específica para abordar el estudio y la práctica de la asignatura. El texto incluye la descripción teórica detallada de los contenidos objeto de estudio, así como ejemplos prácticos resueltos y ejercicios de autoevaluación, que le ayudarán a analizar y evaluar su aprendizaje.
Por otro lado, el alumno estará en todo momento apoyado por el curso virtual de la asignatura, donde encontrará la ayuda del equipo docente y del tutor para cualquier duda que se le presente. Además, en dicho curso el equipo docente publicará ejercicios que el alumno podrá realizar de forma voluntaria. Se facilitarán también la solución de algunos de los exámenes propuestos, enlaces de interés y lecturas complementarias que se considere que pueden ayudar al alumno en el estudio de la asignatura. Por último, será el curso virtual el lugar en el que podrá encontrar los ejercicios de evaluación continua, que tendrán un peso en la nota final.
Además de todo lo expuesto, el alumno tiene también la posibilidad de asistir a la tutoría presencial de su Centro Asociado, donde el tutor encargado de ella, le orientará en el estudio de la asignatura y le resolverá todas las dudas que tenga en relación a la misma. Dicho tutor será también el encargado, siempre que sea posible, de corregir las pruebas de evaluación continua propuestas por el equipo docente. La distribución del tiempo de estudio de la asignatura que se proporciona a continuación es orientativa, ya que la planificación obviamente dependerá del tipo de alumno:
- Trabajo con contenidos teóricos, lectura de orientaciones, desarrollo de actividades prácticas tanto presenciales como en línea e intercambio de información con el equipo docente, tutor, etc. puede suponer hasta un 25%.
- Trabajo autónomo que incluye el estudio de los contenidos teóricos, la realización de trabajos prácticos libres u obligatorios y la realización de las pruebas presenciales puede suponer el 75% restante.
ONSITE TEST
|
Type of exam |
Type of exam |
Examen de desarrollo |
Development questions |
Development questions |
3 |
Duration of the exam |
Duration of the exam |
120 (minutes) |
Material allowed in the exam |
Material allowed in the exam |
Un texto sobre la temática de la asignatura. El texto puede incluir anotaciones manuscritas relacionadas con aclaraciones así como correcciones de las erratas detectadas. Calculadora no programable. |
Assessment criteria |
Assessment criteria |
La Prueba de Evaluación Presencial (PEP) es el equivalente al examen final tradicional. Consiste en una prueba presencial que tendrá una duración de 2 horas y se desarrollará en un Centro Asociado de la UNED. Se puede utilizar un libro con anotaciones y una calculadora no programable, pero no podrán utilizarse fotocopias, ni miniordenadores, tipo calculadora, ni ningún otro material. Consultar el apartado sobre material permitido en el examen. La prueba constará de tres ejercicios similares a los presentes en el texto base recomendado en la bibliografía básica de la asignatura. En estos ejercicios se valorarán, especialmente, los razonamientos, desarrollos y explicaciones que haga el alumno para llegar a la solución de los mismos. No se guarda la calificación de esta prueba para cursos posteriores. |
% Concerning the final grade |
% Concerning the final grade |
90 |
Minimum grade (not including continuas assessment) |
Minimum grade (not including continuas assessment) |
5,5 |
Maximum grade (not including continuas assessment) |
Maximum grade (not including continuas assessment) |
9 |
Minimum grade (including continuas assessment) |
Minimum grade (including continuas assessment) |
0 |
Coments |
Coments |
Las preguntas serán eminentemente prácticas. La utilización de un libro durante la realización de la prueba presencial debería hacerse, únicamente, para consultas puntuales y concretas. La consulta intensiva del libro durante el examen debido a una falta de estudio de la materia, probablemente, hará que el tiempo disponible (2 horas) sea totalmente insuficiente para completar el mínimo necesario para superar con éxito la prueba. |
CONTINUOUS ASSESSMENT TEST (PEC)
|
PEC? |
PEC? |
Si |
Description |
Description |
Se publica en el curso virtual al comienzo del cuatrimestre y se basa en la programación en ensamblador, mediante un simulador, de un procesador segmentado escalar con extensiones vectoriales. El procesador tiene una características similares a las de los procesadores descritos en los temas 1 y 3 del texto base. El estudiante deberá desarrollar un conjunto de programas en ensamblador que pongan de manifiesto algunas de las características de este procesador y de las técnicas estudiadas para mejorar el rendimiento mediante incremento del paralelismo a nivel de instrucción (por ejemplo, el desenrollamiento de bucles o la segmentación software). |
Assessment criteria |
Assessment criteria |
Esta prueba no tiene carácter obligatorio pero representa el 10% de la calificación final. Será evaluada por el equipo docente. Si se suspende la PEP en febrero pero se aprueba la PED, se guarda la nota de esta última para septiembre. |
Weighting of the PEC in the final grade |
Weighting of the PEC in the final grade |
10% |
Approximate submission date |
Approximate submission date |
Lunes siguiente a la última semana de exámenes |
Coments |
Coments |
El enunciado de la PED recogerá el tipo de actividad a realizar, los materiales necesarios, los plazos y la forma de presentación de la prueba. Los materiales necesarios para realizar la PED, además del enunciado, serán el software de simulación y el manual de usuario, todo disponible en el curso virtual. No es necesaria la presencia del alumno en un Centro Asociado para la realización de la PED. El acceso y entrega de la misma estarán limitados a un periodo de tiempo, enmarcado en el cuatrimestre en el que se imparte la asignatura, fuera del cual no se podrá entregar. Sin embargo, si hay que presentarse a la PEP en septiembre y no se ha entregado la PED en febrero, es posible entregarla en septiembre. El plazo de entrega termina el lunes siguiente a la última semana de las pruebas presenciales de febrero o septiembre. Se concreta, con más detalle, en el enunciado de la PED. No se guarda la calificación de la PED para cursos posteriores. |
OTHER GRADEABLE ACTIVITIES
|
Are there other evaluable activities? |
Are there other evaluable activities? |
No |
Description |
Description |
. |
Assessment criteria |
Assessment criteria |
|
Weighting in the final grade |
Weighting in the final grade |
|
Approximate submission date |
Approximate submission date |
|
Coments |
Coments |
|
How to obtain the final grade?
|
El sistema de evaluación se realizará en base a una Prueba de Evaluación Presencial (PEP) y a la Prueba de Evaluación a Distancia (PED). La nota final se obtendrá aplicando la siguiente expresión: Nota final= Nota PEP * 0.9 + Nota PED * 0.1 |
El objetivo básico del libro "Ingeniería de Computadores II" es proporcionar una visión lo más completa posible de los fundamentos en que se apoya el diseño de los diferentes tipos de procesadores que incorporan los computadores actuales así como describir los esquemas y elementos básicos que se utilizan en el diseño de los computadores orientados al procesamiento paralelo, esto es, los denominados, genéricamente, multiprocesadores y multicomputadores.
Los contenidos de este texto constituyen una continuación de los temas tratados en la asignatura "Ingeniería de Computadores I". Si en "Ingeniería de Computadores I" se estudia la arquitectura, organización y diseño de computadores poniendo el foco en cada uno de los elementos básicos que constituyen un computador, en este libro se estudian algunas de las técnicas más utilizadas para mejorar las prestaciones, es decir, el tiempo que se tarda en ejecutar un conjunto de instrucciones. Estas técnicas para mejorar el rendimiento se suelen agrupar en dos grandes categorías: el paralelismo funcional y el paralelismo de datos. De forma escueta, el paralelismo funcional pretende mejorar las prestaciones de un computador en base a la ejecución en paralelo de instrucciones, funciones, procesos o programas. El paralelismo de datos se basa en el diseño de procesadores con repertorios de instrucciones que sean capaces de procesar un conjunto de datos de forma continua y sin detenciones, como si fuera un único dato.
Alrededor de estas dos formas de paralelismo se articula el contenido de los cuatro capítulos del libro. Como representantes del paralelismo funcional a nivel de instrucción se tratan los procesadores segmentados (capítulo 1), los procesadores superscalares (capítulo 2) y los procesadores VLIW (capítulo 3), y como forma de paralelismo de datos se estudian los procesadores vectoriales (capítulo 3). Dado que ambas aproximaciones presentan limitaciones que impiden por sí solas una mejora sostenida y permanente de las prestaciones de un procesador, el texto se completa con un cuarto capítulo sobre multiprocesadores y multicomputadores, es decir, computadores construidos en base a la unión y replicación de procesadores individuales como los tratados en los tres primeros capítulos. Por ello, el capítulo 4 se centra en computadores que pueden explotar de forma simultánea las ventajas que brindan el paralelismo funcional y el de datos.
Dado el perfil del alumno para el que se ha escrito este libro, se ha tratado de cuidar de manera muy especial los aspectos específicos de la enseñanza a distancia. Los conceptos se introducen de forma progresiva, tratando de que el estudio se realice de forma incremental y asentando los conceptos vistos con anterioridad. La gran cantidad de figuras, tablas y ejemplos que presenta el texto (más de 200) tienen como objetivo facilitar su estudio sin la ayuda directa de un profesor.
La estructuración de todos los capítulos es uniforme. Todos contienen, además de las secciones específicas de desarrollo del tema, una sección guión-esquema donde se enumeran los temas tratados y una introducción en la que se exponen los objetivos a cubrir y se dan algunas reseñas históricas, una sección final de conclusiones en la que se resumen los conceptos introducidos y se proporciona una visión global y de futuro, una sección de preguntas de autoevaluación (alrededor de 250) y una sección de problemas (más de 40) con diferentes grados de dificultad que pretenden cubrir todos los aspectos tratados a lo largo de cada capítulo.
En el curso virtual se dispone de un documento que contiene la lista de erratas detectada en el texto base hasta la fecha. Es importante descargar y consultar este documento durante el estudio.
Los libros que se indican como biblografía complementaria tienen por finalidad ayudar a ampliar o completar los temas tratados en la asignatura. A continuación, se proporcionan unos breves comentarios sobre la idoneidad de cada libro.
El texto de Anguita, Prieto y Ortega, que lleva por título "ARQUITECTURA DE COMPUTADORES (1ª)", cubre, prácticamente, todos los temas tratados en la asignatura aunque de forma más extensa, especialmente, en lo referente al procesamiento paralelo. Para los temas 1, 2 y 3 constituye una referencia excelente ya que los contenidos se enfocan de forma muy parecida a como se hace en el texto base. Es la primera referrencia de la que debe hacer uso el estudiante si quiera aclarar algún aspecto del temario y acceder a nuevos ejercicios.
El texto "ARQUITECTURA DE COMPUTADORES. FUNDAMENTOS DE LOS PROCESADORES SUPERESCALARES (1ª)" de Lipasti y Shen es un texto dedicado por completo al estudio de los procesadores superescalares. Es un texto avanzado que cubre aspectos de los procesadores superescalares que no son tratados en la asignatura pero ello no impide que pueda consultarse para clarificar algunos conceptos o ver cómo los abordan otros autores. Este libro se puede utilizar para completar lo tratado en el tema 2 de la asignatura.
El libro "INTRODUCTION TO PARALLEL COMPUTING" de Grama, Karypis, Kumar y Gupta es considerado un texto fundamental para introducirse en todos los aspectos del procesamiento paralelo, ya sea a nivel de iniciación como avanzados. Por esa razón, y pese a estar en inglés, se ha incluido en la bibliografia complementaria. Cualquier aspecto de los tratados en el tema 4 puede ser ampliado en este texto.
Otro texto clásico y muy utilizado que ya ha alcanzado la sexta edición en lengua inglesa es "COMPUTER ARCHITECTURE: A QUANTITATIVE APPROACH" de Hennessy y Patterson. Este libro permite estudiar la mayor parte de los puntos tratados en los cuatro temas que constituyen los contenidos de la asignatura. Es especialmente adecuado para estudiar con profundidad todo lo referente al paralelismo a nivel de instrucción, aunque sigue siendo igual de válido para profundizar en el mundo del procesamiento paralelo. Lo característico de este libro, y que lo ha convertido en un texto de referencia en curso avanzados de ingeniería de computadores en cualquier universidad del mundo, es el enfoque cuantitativo que realizan los autores.
Bibliografía complementaria on-line
La biblioteca de la UNED a través del consorcio Madroño ofrece a sus alumnos acceso a diferentes recursos bibliográficos de forma on-line. Al ser recursos gratuitos, resulta muy interesante el poder proporcionar a los estudiantes algunas recomendaciones de esta colección que les sirvan como bibliografía complementaria. A continuación, se enumeran los textos que se han localizado en esta colección y que tienen relación directa con los contenidos de Ingeniería de Computadores II.
Digital Design and Computer Architecture, 2nd Edition
Harris, D.; Harris, S.
Editorial Morgan Kaufmann, 2012
Print ISBN-13: 978-0-12-394424-5
Web ISBN-13: 978-0-12-397816-5
Texto recomendable para el estudio de la segmentación y con una introducción al procesamiento superescalar interesante.
Computer Architecture: A Quantitative Approach, 5th Edition
Hennessy, J.L; Patterson, D.A.
Editorial Morgan Kaufmann, 2011
Print ISBN-13: 978-0-12-383872-8
Web ISBN-13: 978-0-12-383873-5.
Ya reseñado previamente como un texto clásico y fundamental para el estudio de los contenidos de esta asignatura. Aunque esta edición no es la más adecuada para nuestros objetivos, sirve para estudiar la segmentación y el procesamiento vectorial.
Computer Architecture and Organization
Ghosal, S.
Editorial Pearson India, 2011
Print ISBN-13: 978-81-317-6155-7
Web ISBN-13: 978-93-325-1205-4
Es un texto en el que la segmentación está bien tratada y, además, proporciona una introducción al resto de los temas.
Modern Computer Architecture and Organization, 2th edition
Ledin, J.; Farley, D.
Packt, 2022
Print ISBN 978-18-032-3451-9
Es un texto que hace un amplio recorrido por todo lo relacionado con la arquitectura de los computadores, tanto a nivel ingenieril como en lo que respecta a las tendencias que se están siguiendo. El tema 8 recoge parte de lo que se estudia en esta asignatura en lo relacionado con la segmentación, los riesgos de la segmentación y los procesadores superescalares.
Los recursos que brinda la UNED al estudiante para apoyar su estudio son de distintos tipos, entre ellos cabe destacar:
- La guía de curso.
- El curso virtual.
- La tutoría presencial. Algunos Centros Asociados cuentan con un tutor que atiende las dudas de los estudiantes en relación con el desarrollo y los contenidos de la asignatura. La asistencia a la tutoría proporciona contacto con otros compañeros del grado y constituye un gran apoyo para el estudio.
- Las bibliotecas. Además de los recursos anteriores, el uso de la biblioteca, donde el estudiante podrá encontrar solución autónoma a distintas cuestiones, dada la gran cantidad de material existente en ellas.
- E Internet. En algunos casos, constituye la herramienta por excelencia para el acceso a determinado tipo de información.
El curso virtual
Todos los alumnos de la UNED en el momento en que realizan la matrícula tienen acceso al campus virtual de la universidad. Dentro de los servicios que proporciona este campus virtual (servicio de notas, biblioteca, gestiones administrativas, etc.), el que tiene especial relevancia para el estudiante es el un curso virtual.
Los cursos virtuales son el espacio que aloja el contenido de cada una de las asignaturas en la web de la UNED. El concepto de "curso virtual" equivale al de "asignatura"; es el nombre que se le ha dado tradicionalmente a ese espacio donde se ofrecen contenidos, herramientas de comunicación (foros) y herramientas de evaluación de cada asignatura, en la plataforma de formación de la UNED. Ágora es el nombre técnico del programa informático que soporta esa plataforma de formación. Por lo que los conceptos de "las asignaturas en Ágora", "los cursos virtuales", "los cursos virtuales de las asignaturas", o cualquier otra cosa similar, hacen todas referencias a las asignaturas, al espacio dedicado a cada asignatura en la plataforma de la UNED.
Ágora es la actual plataforma virtual educativa de la UNED para el aprendizaje y el trabajo colaborativo en-línea, que permite ofrecer y recibir formación a través de cursos y comunidades virtuales. Está basada en OpenLMs que, a su vez, está basada en Moodle.
Responde al modelo de educación a distancia híbrido de la UNED. Para ello, utiliza las nuevas tecnologías, recursos educativos adecuados a los distintos estudiantes, materiales multimedia adaptados que se pueden consultar cuando se precise. Cuenta con herramientas virtuales que permiten la interacción y comunicación continuas y cercanas entre todos los integrantes de la formación: personal docente e investigador, tutores, estudiantes, como foros, videoconferencia en línea, chat, exámenes en línea, etc., que favorece la formación de los estudiantes, tan imprescindibles para el aprendizaje colaborativo y autónomo en el proceso de enseñanza-aprendizaje. Está diseñada para impartir o complementar docencia en línea en todos los estudios de la UNED, así como servir de entorno de trabajo para investigaciones y proyectos colaborativos en la UNED y con otras entidades o instituciones, mediante acuerdos o convenios institucionales.
Pese a que las opciones que proporciona Ágora son innumerables, por la experiencia acumulada con otras plataformas y con asignaturas similares, se ha dispuesto que el estudiante solo tenga acceso a:
- Guía de curso. Da acceso a la información que está consultando. Es un servicio de carácter obligatorio para todas las asignaturas de grado y máster de la UNED.
- Documentos. Espacio en el que el equipo docente puede almacenar documentos para la preparación de la asignatura. Consta de una subcarpeta con una colección de ejercicios de examen resueltos ordenados por temas y una subcarpeta en la que se mantiene actualizado un documento con una lista de las erratas que se van encontrando en el texto base; este documento contiene aportaciones que, en muchas ocasiones, han sido producto del debate mantenido en los foros con los estudiantes.
- Foros de debate. Constituyen una herramienta de comunicación escrita asíncrona fundamental para el correcto desarrollo académico de una asignatura basada en una enseñanza a distancia. El curso virtual cuenta con foros tutorizados (foros supervisados y moderados por el equipo docente y los tutores) y foros no tutorizados (los estudiantes pueden comunicarse de forma libre y espontánea entre ellos). De entre todos los foros con que cuenta la asignatura, los más relevantes son:
- El foro Consultas Generales. Está atendido por el equipo docente de la asignatura y se plantean y resuelven aspectos generales de la asignatura (por ejemplo, plazos, formas de estudio, tipos de examen, forma de evaluación, etc.)
- El foro Prueba de Evaluación a Distancia. Contiene lo necesario para la realización de la PED (la memoria con lo que hay que realizar en el curso académico y varias herramientas de simulación).
- Cuatro foros temáticos, asociados a cada tema del programa de la asignatura. Con esta estructura se pretende mantener un cierto orden en el intercambio de información entre alumnos, equipo docente y tutores.
- Los foros asociados a grupos de tutorías repartidos por todo el territorio nacional. Estos foros son gestionados por los correspondiente profesores-tutores de los Centros Asociados y el equipo docente no interviene en ellos.