UNIVERSIDAD DE GUADALAJARA Centro Universitario de Ciencias Exactas e Ingenierías División Electrónica y Computación Carrera(s): Ingeniería en Computación 1. INFORMACIÓN DEL CURSO Título: Arquitectura de computadoras, clave I7023 Departamento: Ciencias Computacionales Horas teoría: 51 Conocimientos mínimos requeridos Número de créditos: 8 Prerrequisitos: Ninguno Tipo: Curso (teórico – práctico) Nivel: Básica particular Horas práctica: 17 Total de horas (semestre): 68 Programación, Matemática Discreta 2. DESCRIPCIÓN Objetivo General El estudio de las arquitecturas de computadoras basadas en microprocesadores de 16 y 32 bits en plataformas típicas comerciales. Contenido temático (a nivel subcapítulos que se abordará en el desarrollo del programa y su estructura conceptual) 1. Introducción a la estructura de computadores a. Niveles de descripción de un computador b. Estructura básica de un computador convencional c. Evolución histórica: tecnología, estructura y arquitectura d. Lenguajes de descripción hardware 2. Aritmética para computadoras a. Introducción b. Números con signo y sin signo, Complemento a 1 y Complemento a dos, BCD, Hexadecimal c. Operaciones Básicas (Suma, Resta, Multiplicación, División) d. Construcción de una unidad Aritmética y Lógica (ALU) e. Numero de Coma Flotante (32-bits y 64-bits) 3. Formato de instrucciones y modos de direccionamiento a. Introducción al repertorio de instrucciones b. Lenguaje ensamblador c. Formato de las instrucciones: diseño del repertorio d. Modos de direccionamiento. e. Soporte de los modos de direccionamiento a los lenguajes de alto nivel 4. Formato de los datos y clases de instrucciones a. Tipos de datos y formatos de representación. i. Ordenamiento de Datos (Big-Endian, Little Endian, Bi-Endian) b. Instrucciones que operan sobre datos, control del flujo. 1 c. Soporte de las instrucciones de control a las construcciones de alto nivel 5. Rendimiento del procesador. a. Medidas del rendimiento de un computador b. Patrones de medida (Benchmarks) c. Influencia en el rendimiento de las alternativas de diseño d. Influencia de los compiladores de lenguajes de alto nivel e. Procesadores RISC y CISC i. Arquitectura interna de la familia de procesadores, Arquitectura Intel Netburst. Diseños de 16 y 32 bits f. Caso real de un procesador Intel Netburst basado en x86 y ARM g. Parámetros técnicos de los Procesadores y SPEC para rendimientos actuales. 6. Organización de la memoria: memoria principal. a. Características generales de las memorias b. Organización interna de la memoria principal. c. Diseño de memorias d. Detección y corrección de errores. 7. Memoria Caché. a. Principios básicos de funcionamiento de la memoria caché b. Elementos de diseño. c. Factores que determinan el rendimiento de la memoria caché. d. Ejemplos de sistemas de memoria caché. 8. Memoria Virtual a. Gestión de memoria b. Memoria virtual c. Memoria virtual segmentada d. Memoria con segmentos paginados 9. Organización de la Entrada/salida y control de Perifericos a. Buses de comunicación i. Estructura de un bus ii. Protocolos de transferencia iii. Protocolos de arbitraje iv. Jerarquía de buses v. Buses normalizados b. E/S controlada por programa c. E/S por interrupción: gestión de interrupciones d. E/S por acceso directo a memoria (DMA): motivación e. Procesadores de E/S: tipos y estructura. f. Tipos de dispositivos de E/S y sus características g. Diseño de un sistema de E/S 11. Multiprocesadores h. Introducción i. Las dificultades edición de Programas de procesamiento Paralelo j. SISD, MIMD, SIMD, SPMD, y Vectorial k. Hardware Multithereading l. Programar multiprocesadores m. Multiprocesadores conectados por un solo bus n. Multiprocesadores conectados por una red 2 o. Introducción a unidades de Procesamiento grafico GPU p. Clusters, Warehouse Scale Computers, Procesadores de Paso de Mensaje (Message-Passing Multiprocessors) q. Introducción a Multiprocesadores de Red ( IXP1200, IXP2400 o IXP2800 ) Desempeño de Multiprocesadores y Modelos de Rendimiento Modalidades de enseñanza aprendizaje Cátedra. Modalidad de evaluación Resolución de exámenes, tareas, proyectos. Competencia a desarrollar Identificar las diversas arquitecturas de computadoras, así como comprensión del funcionamiento básico de los sistemas con microprocesadores y sus parámetros de medición y eficiencia de éstos Campo de aplicación profesional Arquitectura y Programación de Sistemas. 3. BIBLIOGRAFÍA Título Computer Organization & Architecture. Designing for performance. http://www.williamstallings.com/COA6 e.html Organización y diseño de computadores la interfaz hardware/software Los microprocesadores INTEL 8086/8088, 80186, 80286, 80386 y 80486. Arquitectura, programación e interfaces Embedded Systems Design: An Introduction to Processes Tools and Techniques Multi-Core Processors and NextGeneration Systems. http// DDJ Multi-Core Processors and Next-Generation Systems.htm Elaboró: Fecha de creación: Autor Editorial Año de la edición más reciente Stalling, W. Prentice-Hall; 6ª edition. 2002 David A. Patterson John L. Hennessy Mc Graw Hill Barry B. Brey Prentice Hall Hisp. Berger, A CMP Books 2002 Jonathan Hoysradt Dr. Juan José Raygoza Panduro Octubre 2011 3 Fecha de evaluación: Participantes de la evaluación: Fecha de la Modificación: Participantes en la modificación: 1 del Julio del 2015 José Juan Meza Espinosa/Roberto Patiño Ruiz/Jorge Ernesto Lopez Arce Delgado 29 de Julio del 2015 José Juan Meza Espinosa/Roberto Patiño Ruiz/Jorge Ernesto Lopez Arce Delgado Formato con base en el Artículo 21 del Reglamento General de planes de estudios de la U.de G. 4