Download Tema 1 de Estructura de Computadores
Document related concepts
no text concepts found
Transcript
Tema 1: Introducción a Estructura de Computadores Conceptos básicos y visión histórica Programa de Teoría 1. Introducción. 2. Lenguaje Máquina. 3. Lenguaje Ensamblador. 4. Ruta de Datos y Unidad de Control. 5. Unidad Aritmético-Lógica (ALU). 6. Sistema de Entrada-Salida. 7. Memoria. Contenido • ¿Qué es un computador? • Descripción funcional: Arquitectura de von Neumann • Orígenes y evolución histórica. • Parámetros característicos de un computador. ¿Qué es un computador? Concepto de computador Máquina de estados finitos: FSM Arquitectura von Neumann Ruta de datos Unidad de Control Memoria de programa y datos FSM + Datapath Arquitectura von Neumann Ruta de datos Unidad de control Responsable de realizar cálculos Registros, unidades funcionales, unidades de interconexión Responsable de ordenar cálculos Secuenciador, registros, pilas... Memoria de programa y datos Estructura de un computador Procesador Unidad de Control Salida Memoria Ruta de datos Unidad AritméticoLógica Entrada Computador Ruta de datos Unidades funcionales Registros de la ruta de datos Realizan operaciones aritméticas y/o lógicas ALUs, desplazadores, multiplicadores Almacenan resultados temporales Unidades de interconexión Multiplexores y/o buses Unidad de Control Contador de programa Registro de instrucción Dirección de la instrucción en curso Se incrementa en cada ciclo Código de la instrucción en curso Secuenciador Genera señales para cada instrucción Actualiza el Contador de Programa Secuenciador Captación de la instrucción Leer dirección del Contador de Programa Incrementar el Contador de Programa Decodificación de la instrucción Ejecución de la instrucción Captura de operandos Operación Escritura de resultados Ejemplo de procesador Necesidad de cómputo Antecedentes históricos Ábaco Máquina de Pascal (1642). Suma Máquina de Leibniz (fin s. XVII). Multiplica y divide Telar de Jacquard (med. XVIII) Tarjetas perforadas El ábaco La pascalina La máquina de calcular de Leibniz Telar de Jacquard La era moderna Computadores mecánicos Charles Babbage: Máquina diferencial. Calcular tablas de artillería. Máquina analítica. Programable, con E/S, memoria, unidad de cálculo Computadores eléctricos Clasificadora de Höllerith (1886): Primer ordenador eléctrico Charles Babbage Máquina de diferencias Charles Babbage Ada Lovelace Máquina analítica Clasificadora de Höllerith Computadores electromecánicos Zuse (1941) primer computador de relés Howard Aiken (IBM) Mark I, II, III y IV (1943-52) Electromecánicos: Mark I Howard Aiken: “Si Babbage hubiera nacido en el siglo XX nos habríamos quedado sin trabajo” Computadores electrónicos 1ª generación: Válvula de vacío ENIAC (1945-55), Eckert & Mauchly John von Neumann: EDVAC (1945) Bases de la arquitectura de computadores moderna EDSAC (Wilkes,1949): programa almacenado y coma flotante UNIVAC I (1951): computador fabricado en serie Electrónicos (válvulas): ENIAC John Mauchly John P. Eckert Computadores electrónicos 2ª generación: El transistor 1946: los laboratorios Bell inventan el transistor Leprechaun, 1956: primer computador basado en transistores Burroughs B5000: primer ordenador de estructura de pila IBM Stretch, IBM 1410, PDP-1 (DEC), UNIVAC 1100 El transistor: 2ª generación / Shockley Bardain Brattain Electrónica integrada 3ª generación: Circuito Integrado J. Kilby inventa el circuito integrado en 1958 Inicialmente, es un chip con algunos transistores (SSI) A finales de los 60, ya son cientos de transistores (MSI) 1975, decenas de miles de transistores en un chip (LSI) Grandes familias de computadores Burroughs B2500, IBM 360, CDC 6500, PDP 5, UNIVAC 1108 Circuito integrado: 3ª generación Jack Kilby El microprocesador (4004) ¿4ª generación? El Microprocesador Intel 4004: primer microprocesador comercial Aparecen los lenguajes de programación de alto nivel Parámetros característicos Tamaño de palabra Frecuencia de reloj Medidas de rendimiento MIPS, MFLOPS Pruebas sintéticas: SPECint, SPECfp Conceptos importantes Estructura de un computador Descomposición funcional Fundamentos de la ejecución de un programa Evolución tecnológica Parámetros característicos y evaluación del rendimiento