INSTITUTO TECNOLOGICO DE COSTA RICA ESCUELA DE INGENIERIA ELECTRÓNICA II SEMESTRE 2007 Curso Código Tipo de curso Créditos Horas por semana Requisitos Correquisitos Suficiencia Asistencia Profesores Diseño de Sistemas Digitales EL-3310 Teórico 4 4 EL-3307 Diseño Lógico EL-3308 Laboratorio de Diseño Lógico EL-3312 Circuitos Discretos Sí Libre Ing. Roberto Pereira Arroyo, M.Sc. Ing. Adolfo Chaves Jiménez, Lic. I. DESCRIPCION: Este curso hace un recorrido sobre las técnicas de diseño de los elementos fundamentales de un computador: el subsistema de memoria, la unidad central de procesamiento (CPU) y el conjunto de instrucciones de un procesador de propósito general. Con ello, el estudiante comprenderá los principios que permiten utilizar los recursos del hardware para implementar el software del computador. El marco de análisis utilizado le permite comprender las interacciones e interdependencias entre el hardware y el software en diferentes niveles del computador durante el proceso de diseño y ejecución de instrucciones. II. OBJETIVOS GENERALES Analizar la arquitectura básica de los microprocesadores, incluyendo microarquitectura, arquitectura del conjunto de instrucciones, arquitectura segmentada y la jerarquía de memoria. III. OBJETIVOS ESPECIFICOS 1.Analizar los componentes de la arquitectura básica de un microprocesador. 2.Analizar los componentes básicos de la microarquitectura de un microprocesador. 3.Introducción a la implementación de memorias 4.Analizar la arquitectura segmentada 5.Analizar la jerarquía de memoria y su implementación IV. CONTENIDO 1. ORGANIZACIÓN BÁSICA DE UN COMPUTADOR Organización básica de un computador (componentes básicos) Niveles de abstracción - perspectivas del computador Niveles de programación 2. ARQUITECTURA DEL CONJUNTO DE INSTRUCCIONES 2.1 Elementos de la arquitectura Almacenamiento de datos – Clasificación de la arquitectura Conjunto de registros Representación de datos (formato de datos) INSTITUTO TECNOLOGICO DE COSTA RICA ESCUELA DE INGENIERIA ELECTRÓNICA II SEMESTRE 2007 Modos de direccionamiento Operaciones Codificación de instrucciones 2.2 Operaciones del microprocesador Clasificación de instrucciones: transferencia de control, transferencia de datos, lógicas y aritméticas, de desplazamiento y rotación, de punto flotante, de control del sistema 2.2 Representación de las instrucciones de un microprocesador Relación entre lenguajes de alto nivel, ensamblador y lenguaje de máquina Codificación de instrucciones 2.3 Soporte a procedimientos y subrutinas 3. RENDIMIENTO DE UN SISTEMA COMPUTACIONAL 3.1. Definición de rendimiento en términos computacionales 3.2 Medición del rendimiento de un computador 4. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR 4.1 Esquema básico de un microprocesador 4.2 Implementación del flujo de datos Implementación de ciclo simple Implementación multiciclo 4.3 Implementación del control por medio de microprogramación Microinstrucciones Fundamentos de la creación de un microprograma Implementación de un microprograma 4.4 Manejo de excepciones e interrupciones 5 ARQUITECTURA SEGMENTADA (PIPELINING) 5.1 Conceptos básicos de la arquitectura segmentada Paralelismo a nivel de instrucciones Ventajas de la arquitectura segmentada Definición de riesgos estructurales, de datos, de control, stalls, riesgos de rama 5.2 Implementación de la arquitectura segmentada Flujo de datos segmentado INSTITUTO TECNOLOGICO DE COSTA RICA ESCUELA DE INGENIERIA ELECTRÓNICA II SEMESTRE 2007 Control segmentado Riesgos estructurales, de datos, de control, stalls, riesgos de rama Arquitectura de ciclo simple Arquitectura multiciclo 5.3 Manejo de excepciones o interrupciones en la arquitectura segmentada 6. JERARQUÍA DE MEMORIA 6.1 Implementación de memorias 6.2 Jerarquía de memoria 6.3 Fundamentos de la memoria cache Concepto de memoria cache Mapeo de cache Acceso a la memoria cache Escritura y lectura de la memoria cache Diseño del sistema de memoria para soporte de memoria cache Estrategias para mejorar el rendimiento 6.4 Memoria virtual Concepto de memoria virtual Fundamentos del manejo de memoria virtual Interacción de la memoria virtual con otros tipos de memoria V. EVALUACIÓN: Trabajo teórico 10 % (semana 12) Un examen 90 % (semana 16) VI. BIBLIOGRAFÍA Patterson, D.; Hennessy, J.: Computer Organization and Design: The Hardware/Software Interface. Tercera Edición. Elsevier-Morgan Kraufmann. 2005 Patterson, D.; Hennessy, J. : Computer Architecture: A quantitative approach. Tercera Edición. Elsevier- Morgan Kraufmann. 2002 Parhami, B: Arquitectura de Computadoras: De los microprocesadores a las supercomputadoras. McGraw-Hill. 2005 VII. HORARIOS DE CLASE Y DE CONSULTA Grupo 1 Martes 10:30 a 12:10, Jueves 9:30 a 11:10 Profesor Roberto Pereira Arroyo (rpereira@ietec.org) (www.ie.itcr.ac.cr/rpereira) Oficina 12. Teléfono: 5502107 Consulta: Martes y Jueves de 1 a 3 p.m.