Arquitectura de Computadores Clase 01: Apertura del curso Departamento de Ingeniería de Sistemas Universidad id d de Antioquia i 2011 2 Información general Nombre del curso: Arquitectura de computadores Código: ISI374 Créditos: Cédtos 4 Semestre lectivo: 2011 2 Prerrequisito: Diseño de circuitos digitales (ISI354) Departamento: Ingeniería de Sistemas Horario: MJ 8 10 Aula: 19 305 Profesor: Fredy Rivera Oficina: 21 410 E mail: farivera@udea.edu.co Horario de atención: LJ 14:30 16:00 (horario diferente, cita previa por email) Página Web: http://microe.udea.edu.co/~farivera/isi374.html 2 1
Presentación del curso En este curso se estudia la organización estándar de un computador, en la cual la máquina se divide en las siguientes partes: Unidad central de procesamiento Sub de memoria Sub de entrada/salida Sub de interconexión 3 Objetivo general Adquirir una visión general de la arquitectura de computadores y de la organización básica del computador digital mediante la cual se comprendan sus características e interacciones entre sus componentes, de manera que el estudiante pueda diseñar programas que se ejecuten con más eficiencia en máquinas reales, y tenga noción de cuáles son las filosofías de diseño empleadas en los microprocesadores actuales 4 2
Objetivos específicos Conocer la interface entre el software y hardware para saber cómo el primero ordena al segundo realizar las funciones requeridas Comprender los aspectos básicos de hardware y software que afectan el rendimiento de un programa, y conocer las técnicas básicas empleadas por los diseñadores de hardware para mejorarlo Adquirir destreza en la consulta y lectura de temas propios del área en lengua inglesa Asumir compromisos y responsabilidades en el proceso de aprendizaje que se puedan trasladar al ejercicio profesional Desempeñarse éticamente en el plano académico y personal 5 Contenido* Unidad 1. Introducción a los s de computación Unidad 2. El lenguaje de la máquina Unidad dad3. Evaluación del rendimiento e de un computador Unidad 4. Diseño del procesador Unidad 5. El procesador segmentado Unidad 6. Jerarquía de memoria Unidad 7. Entrada/salida y almacenamiento Unidad 8. Introducción a los multiprocesadores * Para conocer el contenido detallado remitirse al programa general del curso disponible en la Web 6 3
Metodología Clase magistral para la exposición de contenidos fundamentales y complejos, enriquecida mediante la discusión y análisis por parte de los estudiantes Solución de problemas con orientación de los monitores del curso para afianzar los conceptos teóricos Demostraciones en las cuales el profesor presenta simuladores arquitectónicos con el fin de adquirir una visión más clara de la operación interna de las máquinas de cómputo Actividades fuera de clase en las que los estudiantes deben observar videos, realizar búsquedas bibliográficas y leer material recomendado Espacio abierto a los estudiantes para el desarrollo de iniciativas y proyectos dentro de la temática del curso 7 Evaluación Cuatro exámenes escritos individuales* y seguimiento Examen No.1 Unidades 1, 2 y 3 25% Examen No.2Unidad 4 y 5 20% Examen No.3 Unidad 6 20% Examen No.4Unidad 7 y 8 15% Seguimiento Quizes, informes, 20% * Para conocer las fechas estimadas de cada examen remitirse al programa general del curso disponible en la Web. La realización de exámenes supletorios estará completamente regida por el reglamento estudiantil 8 4
Bibliografía Textos de referencia para el curso: Computer Organization and Design: The Hardware/Software Interface, D. Patterson and J. Henessy. Morgan Kaufmann Publishers La cuarta edición cubre todas las unidades del temario, mientras que la tercera no cubre la última por completo Otro libro por los mismos autores que sirve de complemento: Computer Architecture: A Quantitative Approach, J. Hennessy and D. Patterson. Morgan Kaufmann Publishers Sirven las dos ediciones más recientes (tercera y cuarta) 9 Bibliografía (cont.) Algunas referencias complementarias: Arquitectura de computadoras. De los microprocesadores a las supercomputadoras, B. Parhami. McGraw Hill Computer Organization and Architecture: Designing for Performance, 7th ed., W. Stallings. Pearson Education The Essentials of Computer Organization and Architecture, L. Null and J. Lobur. Jones and Batlett Publishers Advanced Computer Architectures: A Design Space Approach, D. Sima, T. Fountain and P. Karsuzk. Addison Wesley Parallel Computer Architecture: A Hardware/Software Approach, D. Culler. Morgan Kaufmann Publishers IEEE Xplore (http://ieeexplore.ieee.org) ACM Digital Library (http://portal.acm.org/dl.cfm) WWW Computer Architecture (http://www.cs.wisc.edu/arch/www) 10 5
Procesadores de texto, hojas de cálculo, navegadores, CAD, juegos, 11 Fortran, Pascal, Basic, Cobol, C, Java, C++, 12 6
Gestión de memoria, procesos, archivos, I/O, (Ej: Windows, Linux, MacOS, Chromium, Android, ) Compilación, ensamblado, enlazado 13 R0 R7 SR PC swap: muli $2, $5, 4 add $2, $4, $2 lw $15, 0($2) lw $16, 4($2) 14 7
CPU I/O Mem. Bus 15 16 8
17 Campo de acción de este curso 18 9
Existen muchos programas de educación superior relacionados con la computación Programas de pregrado que tienen guías curriculares aprobadas por instituciones científicas y profesionales internacionales (ACM, AIS, IEEE CS The Joint Task Force for Computing Curricula)*: Computer engineering (CE) Computer science (CS) Information systems (IS) Information technology (IT) Software engineering (SE) * Documentos de referencia disponibles en: ACM Curricula Recomendations: http://www.acm.org/education/education/curricula recommendations 19 Qué se entiende por computación? Abarca cualquier actividad orientada a objetivos que requiera, se beneficie o se dedique a crear computadores Incluye el diseño de s de hardware y software para una gran variedad de propósitos: Procesar, estructurar y manejar diferentes tipos de información Realizar estudios (científicos, tecnológicos, económicos, sociales) usando computadores Hacer que los s se comporten de manera inteligente Buscar y compartir información Crear y usar medios de comunicación y entretenimiento La computación puede tener otros significados más específicos de acuerdo al contexto en el que se use el término Debido al amplio campo de acción de la computación, ser competente en todo el espectro es virtualmente imposible 20 10
Vista de las disciplinas de la computación 21 Representación gráfica de las disciplinas de la computación 22 11
Representación gráfica de las disciplinas de la computación 23 Representación gráfica de las disciplinas de la computación 24 12
Representación gráfica de las disciplinas de la computación 25 Representación gráfica de las disciplinas de la computación 26 13
Énfasis por temas de las disciplinas de la computación 27 Habilidades esperadas de los graduados en disciplinas de la computación en cuanto a hardware y dispositivos 28 14
Recomendaciones para un curso de arquitectura de computadores en ingeniería de software (igual al de ciencias de la computación) 29 15