Diferencia entre revisiones de «Organización del Computador II»
De Cuba-Wiki
Línea 68: | Línea 68: | ||
*[[Temas final Dic-2006 (Organización del Computador II)| Temas para las fechas de final de Diciembre del 2006]]: Temas dados por Patricia para el final de Diciembre del 2006 y detalles sobre la bibliografía. | *[[Temas final Dic-2006 (Organización del Computador II)| Temas para las fechas de final de Diciembre del 2006]]: Temas dados por Patricia para el final de Diciembre del 2006 y detalles sobre la bibliografía. | ||
*[[Finales Dic-2006 (Organización del Computador II)| Finales de Diciembre del 2006]]: Finales ya tomados en Diciembre del 2006. | *[[Finales Dic-2006 (Organización del Computador II)| Finales de Diciembre del 2006]]: Finales ya tomados en Diciembre del 2006. | ||
*[[Media: | *[[Media:Resumen_orga_2_-_Straminsky.pdf | Resumen de microarquitectura y otros temas para el final]] | ||
*[[Media:Res_orga2.zip | Resumen para el final]] : Contiene los latex y el pdf | *[[Media:Res_orga2.zip | Resumen para el final]] : Contiene los latex y el pdf | ||
*[[Media:Understanding_Pipelining_and_Superscalar_Execution.pdf | Pipelining and Superscalar execution]] : Paper sobre temas de microarquitectura para el final. | *[[Media:Understanding_Pipelining_and_Superscalar_Execution.pdf | Pipelining and Superscalar execution]] : Paper sobre temas de microarquitectura para el final. |
Revisión del 21:40 29 sep 2015
Organización del Computador II es una materia dedicada al estudio de las arquitecturas IA-32 e IA-64 de Intel. Pertenece al área de Sistemas y, según el Plan de la Carrera, es una materia a ser cursada en Segundo año. Es correlativa de Organización del Computador I, y es requerida para cursar Sistemas Operativos.
Históricamente, esta materia se cursa los Martes y Jueves a la noche.
Contenidos
- IA32
- Operaciones básicas
- Direccionamiento a memoria
- Manejo de la pila y convencion C
- Aritmética de números grandes
- Strings
- Vectores y matrices
- MMX: Multimedia extension
- FPU: Floating point unit
- Listas enlazadas
Apuntes
- Apuntes primer parcial 03/10/2006: Clase del 03/10/2006 de Emilio Platzer con tips para el primer parcial.
- Apuntes segundo parcial 14/11/2006: Clase del 14/11/2006 de Emilio Platzer con tips para el segundo parcial. Temas: FPU y Listas.
- Glosario de términos técnicos de la materia
- Resumen de Instrucciones de IA-32: Resumen hecho a partir de extractos los manuales de Intel [Volumen 2] (2009).
IA-32
- Ejercicios varios IA-32: Código assembler de funciones varias realizadas en el laboratorio.
- Práctica de Strings: Ejercicios de la práctica de strings.
- Práctica de Vectores y Matrices: Ejercicios de la práctica de vectores y matrices.
- Práctica de Aritmética: Ejercicios de la práctica de aritmética y relacionados.
- Operaciones sobre listas: Una posible manera de implementar en assembler varias operaciones sobre listas enlazadas.
- Manejo del stack (pila): Esquema para la creación de un stack frame.
- Ejemplo de FPU: Resolución del ejercicio 5 de la práctica de FPU. Nos muestra el manejo de la pila y el uso de las operaciones de la FPU.
IA-64 (Itanium)
- Itanium for Dummies: También conocido como "No sé nada de Itanium, ¿Cómo empiezo?"
- Ejercicios varios Itanium: Código assembler de funciones varias realizadas en el laboratorio de Itanium. Incluye sumador y Fibonacci versión iterativa y recursiva.
- Rotación de Registros y Software Pipelining: Apuntes de clase sobre Rotación de registros con ejercicio de ejemplo, próximamente también Software Pipelining.
- SIMD: Apuntes de clase del 26/10/2006 sobre el set de instrucciones SIMD de Itanium.
- Software pipelining: Apuntes de clase software pipelining.
- Instrucciones de pipelining: Un mismo problema resuelto usando ctop, cexit, wtop y wexit para familiarizarse con estas instrucciones.
- Suma de vectores con Software Pipelining: Un pequeño ejemplo útil para encarar el tema.
- Mini-Tutorial de Software Pipelining: Un ejemplo de pipelining optimizando la escritura en el mismo vector que leemos.
- Ejemplo básico de Software Pipelining: Anónimo, cortesía de Fer (nadie lo probó, pero esta explicado).
- Software pipelining para el TP: Ejemplo de cómo tener en cuenta las latencias (la idea es que se use para el TP3).
- Arquitectura Itanium: Apuntes de las teóricas sobre las características generales de la arquitectura, a complementar con la presentación de la página.
Parciales
Primeros parciales
- Parcial del 10/10/06
- Parcial del 15/05/11
- Parcial del 11/10/11
- Parcial del 17/05/12
- Parcial del 14/05/13
- Parcial del 01/10/13
- Parcial del 20/05/14
Segundos parciales
- Parcial del 16/11/06
- Parcial del 28/06/11
- Parcial del 24/11/11
- Parcial del 26/06/12
- Parcial del 22/11/12
- Parcial del 27/06/13
- Parcial del 12/11/13
- Recuperatorio del 26/11/13
- Parcial del 24/06/14
Finales
- Temas para las fechas de final de Diciembre del 2006: Temas dados por Patricia para el final de Diciembre del 2006 y detalles sobre la bibliografía.
- Finales de Diciembre del 2006: Finales ya tomados en Diciembre del 2006.
- Resumen de microarquitectura y otros temas para el final
- Resumen para el final : Contiene los latex y el pdf
- Pipelining and Superscalar execution : Paper sobre temas de microarquitectura para el final.
- Inside the Machine (Chapter 4): Superscalar Execution : Capitulo de muestra sobre ejecución superescalar para preparar el final.
- Los finales de Alejandro Furfaro suelen ser orales (si no hay mucha gente). Duran 15-20 minutos y hace preguntas de microarquitectura, específicamente sobre coherencia de Caché, predicción de saltos, microarquitectura Netburst y Pentium III.
Recursos
- Planilla de stack trace FPU: Útil para ir explicando paso por paso el estado de la pila de FPU en el parcial.
- Planilla de stack trace FPU (fuente): Archivo fuente de la planilla, hecho en Inkscape SVG.
- Libros de Intel: Cómo conseguir gratuitamente una copia impresa de los libros de Intel de IA32 e IA64.
Enlaces externos
- Página oficial de la materia
- PC Assembly Language
- Art of Assembly
- Tabla de códigos x86
- Intel Itanium Architecture Software Developer's Manual - Volume 3: Instruction Set Reference
- Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 2A: Instruction Set Reference, A-M
- Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 2B: Instruction Set Reference, N-Z