Arquitecturas con Paralelismo Interno
|
Curso
|
Cuatrimestre
|
Carácter
|
Créditos
|
| Cuarto |
Segundo |
Optativa |
4,5T + 3P |
Curso 2011/2012
Coordinador:
José L. Pedraza Domínguez
Profesores encargados:
M. Isabel García Clemente,
Antonio Pérez Ambite y
José L. Pedraza Domínguez
Resumen
El tema central de la asignatura es el estudio de las técnicas que se
aplican a los procesadores convencionales para mejorar sus
prestaciones. Comienza con una profundización en los aspectos básicos
del pipeline que se han estudiado en la asignatura troncal de
tercer curso Arquitectura
de Computadores, analizando tanto los mecanismos para aumentar la
eficiencia en la ejecución de saltos como la gestión eficaz de
operaciones multiciclo. A continuación se estudian los algoritmos y
mecanismos hardware para acelerar las operaciones escalares en coma
flotante: sumas, multiplicaciones, etc. En la última parte de la
asignatura se estudian los procesadores superescalares y VLIW, tanto
desde el punto de vista de los mecanismos hardware que incorporan para
aumentar el paralelismo efectivo que puede explotarse, como desde el
punto de vista de su programación, introduciendo los conceptos básicos
de planificación de instrucciones para computadores con paralelismo
interno (pipeline, superescalares, VLIW).
La asignatura se complementa con prácticas sencillas en las que el
alumno analiza el comportamiento de pequeños programas en máquinas
simuladas, con diferentes mecanismos de gestión de saltos o con
planificación dinámica. Finalmente se realiza un estudio de
características de un procesador que incorpora los mecanismos
estudiados en la asignatura.
Temario
- Introducción.
- Pipeline de instrucciones.
- Conceptos básicos.
- Etapas y registros de pipeline.
- Dependencias, tipos y parones (stalls).
- Dependencias de datos RAW y anticipación (forwarding).
- Instrucciones de salto. Saltos retardados. Predicción de salto
estática y dinámica.
- Operaciones multiciclo.
- Dependencias estructurales.
- Dependencias de datos WAW y WAR.
- Planificación dinámica. Algoritmo de Tomasulo.
- Manejo de excepciones. Tratamiento preciso de excepciones.
- Aceleración de operaciones escalares.
- Suma: CLA's, carry skip adder, carry select adder.
- Multiplicación: grupos solapados, árboles de Wallace.
- División: SRT. Algoritmos multiplicativos.
- Procesadores superescalares.
- Conceptos básicos.
- Decodificación paralela.
- Emisión superescalar de instrucciones.
- Shelving.
- Renombrado de registros.
- Ejecución paralela de instrucciones.
- Conservación de la consistencia secuencial de la ejecución.
- Consistencia secuencial del tratamiento de excepciones.
- Procesadores VLIW.
- Características básicas.
- Ejemplo.
- Planificación estática de instrucciones.
- Niveles de planificación.
- Planificación de trazas (trace scheduling).
- Loop unrolling.
- Software pipelining.
Prácticas
Se realizarán tres prácticas obligatorias:
Bibliografía
- J.L. Henessy, D. A. Patterson. "Computer Architecture: A
Quantitative Approach". 4ª ed. Ed. Morgan Kauffmann, 2007.
- D. Sima, T. Fountain, P. Kacsuk. "Advanced Computer
Architectures", Addison Wesley. 1997.
- M. Johnson. "Superscalar Microprocessor Dessign". Prentice
Hall. 1991.
- J. Silk, B. Robic, T. Ungerer. "Processor Architecture. From
dataflow to superscalar and beyond". Springer-Verlag, 1999.
- A. R. Omondi. "The microarchitecture of pipelined and superscalar
computers". Kluwer Academic Publishers, 1999.
- J.P. Shen, M.H. Lipasti. "Modern processor design. Fundamentals of
superscalar processors". Mc. Graw Hill, 2003.
- Julio Ortega, Mancia Anguita, Alberto Prieto. "Arquitectura de
Computadores". Thompson Paraninfo, 2005.
- Kai Hwang. "Advanced Computer Architecture". Mc Graw
Hill. 1993.
Normas
Para superar la asignatura, será necesario realizar y superar las
tres prácticas mencionadas anteriormente, así como un examen de la
parte teórica.
Cada una de las prácticas aprobadas en su totalidad en el curso
anterior se conservará para el curso actual.
Se realizarán dos exámenes del conjunto de la asignatura, el primero
para la convocatoria de Junio y el segundo para la convocatoria de
Septiembre.
REVISIONES
Una vez publicadas las notas del examen de la asignatura, se abrirá
un plazo de solicitud de revisión (2 días hábiles)
para aquellos alumnos que consideren que existe algún error en la
calificación. Esta solicitud de revisión se realizará
conectándose a
http://www.datsi.fi.upm.es/docencia/Arq_Paral_Int/rev_arq_int.html.
El alumno deberá rellenar los datos que se requieren. Una vez
revisados estos exámenes por los profesores, se publicará la lista
de notas revisadas. Si el alumno desea revisión presencial, deberá
acudir al lugar y hora que se establecerá en su momento.
Noticias
[octubre 2011]: Plan96: Docencia de la asignatura.
El curso 2011-2012 es el último en que se imparte docencia de esta
asignatura, por pertenecer al plan de estudios de Ingeniería
Informática (plan 96).
[23 febrero 2012]: Práctica 1 -pipeline-.
La práctica 1 se realizará en aula informática el próximo martes a las
12:00 (Práctica 1).
[23 febrero 2012]: Desarrollo de próximas clases y examen.
La previsión sobre el desarrollo de las próximas clases es la siguiente:
- Martes 28-febrero, 12:00 a 14:00. Práctica de pipeline.
- Miércoles 29-febrero, 11:00 a 12:00. Clase teórica. Saltos.
- Martes 6-marzo, 12:00 a 14:00. Clase teórica. Aceleración
operaciones escalares.
- Miércoles 7-marzo, 11:00 a 12:00. Clase teórica. Aceleración
operaciones escalares.
- Martes 13-marzo, 13:00 a 14:00. Examen primera parte y práctica de pipeline.
- Miércoles 14-marzo, 11:00 a 12:00. Clase teórica. Aceleración
operaciones escalares.
[9-marzo]: Examen de la primera parte y de la práctica 1:
13/3/2012 12:00 Aula 6202
El examen de la primera parte de la asignatura
y de la práctica de pipeline se realizará el martes día 12 de
marzo durante el horario de clase (12:00) pero en el
aula 6202.
La parte teórica que incluye este examen es la correspondiente a:
- Introducción
- Pipeline: Conceptos básicos
[11-abril]: Examen de la segunda parte y de la práctica 2:
17/4/2012 12:00 Aula de clase (3103)
El examen de la segunda parte de la asignatura
y de la práctica de planificación dinámica se realizará el martes
día 17 de abril durante el horario de clase (12:00), en
el aula 3103.
La parte teórica que incluye este examen es la correspondiente a:
- Aceleración de operaciones escalares.
- Pipeline: Operaciones multiciclo
- Pipeline: Manejo de excepciones. Tratamiento preciso de
excepciones.
[16-mayo]: Planificación final de curso:
La próxima semana (días 22 y 23) finalizará la explicación de la parte
teórica de la asignatura.
El día 29 de mayo se realizarán las exposiciones (por los alumnos) de
trabajos correspondientes a la práctica 3. Para ello necesitamos que
nos hagáis llegar a
pr_api @ datsi
las presentaciones (Power Point o PDF) de los trabajos, como muy tarde
el día 28. El trabajo correspondiente a esta práctica se podrá
entregar (en papel o PDF) hasta el día del examen final de la
asignatura (según el calendario oficial el 21 de junio), aunque
recomendamos que se realice la entrega el mismo día de las
exposiciones (29 de mayo).
Finalmente, el día 30 de mayo está previsto realizar el examen
correspondiente a la última parte de la asignatura. La parte teórica
que incluye este examen es la correspondiente a:
- Procesadores superescalares.
- Procesadores VLIW.
- Planificación estática de instrucciones.
Página modificada el 16/05/2012