09/03/2011 Introducción a la arquitectura de computadores Ingeniería del Software EUITI – UPM Índice Descripción computador – Hardware Estructura del computador – Modelo de programación – Registros del procesador – Ejecución de instrucciones Interrupciones – Reloj del computador Jerarquía de memoria Entrada/salida Protección 1 09/03/2011 Historia computadores Precedentes – – – – – Sumadora de Pascal (S.XV) Tejedora de Jacquard Calculadora de Leibniz (S. XVII) Babagge (S. XIX) Hollerith (tarjetas perforadas) IBM 1944 MARK-1 calculador programable con clavijas ENIAC. Fichas perforadas para datos y programas, 17000 tubos de vacío 100KHz, 30 toneladas. 1946 Von Neumann EDVAC – Aritmetica binaria – Programa almacenado (arquitectura Von Neumann) Etapas Primera generación Segunda generación – Tubo de vacío. Maquinas grandes pesadas, poco fiables. – 1958, transistor. – Lenguajes de alto nivel Tercera generación – IBM 360 circuitos integrados – Cobol y Fortran Cuarta generación Quinta generación – Años 70. Memorias electrónicas, aparición microprocesadorPC – Años 90. SO con interfaz grafica. 2 09/03/2011 Orígenes del PC 1981 IBM PC – 8088 de 16 bits, 16Kb de memoria, max 64 en placa base y 256Kb max – Cintas de cassete, luego disco 5 ¼ DE 180Kb y 360 Kb 1983 IBM PC-XT – Disco duro de 10Mb 1984 IBM PC-AT – Intel 286, bus ISA de 16 bits (antes eran de 8 bits) – 20 Mb y disquetes de 5 ¼ de 1.2M – Ordenador personal 286 y superiores (y clonicos) Arquitectura de Von Neumann Arquitectura – Sistema binario – Programa y datos almacenados Componentes – Memoria principal – E/S – CPU Buses ALU UC – Bus de datos – Bus de direcciones – Bus de control 3 09/03/2011 Clasificación Monoprocesador Multiprocesador Multicomputador Clasificación POTENCIA (Coste) – Consola, PDA, etc. – Ordenador portátil – Ordenador personal: Tiene una potencia de proceso similar a la de un ordenador portátil, la diferencia esta en su mayor volumen físico. Ambos suelen ser un lugar de trabajo típico de ofimática y están destinados a un solo usuario. – Estación de trabajo: Ordenador de características similares a la del ordenador personal, pero con una potencia de cálculo superior. Es utilizado para trabajos técnicos y también está dirigido a un solo usuario. – Servidor: Este tipo de ordenador está pensado para diversos usuarios y puede incluir diversos procesadores, tiene una memoria principal de gran dimensión y un disco duro de gran tamaño. Los usuarios suelen conectarse desde otros ordenadores por lo que no se hace necesaria una pantalla. – Mainframe: Este es un ordenador de elevadas prestaciones con una capacidad de entradasalida muy elevada, que se destina sobretodo a aplicaciones técnicas, militares, gestion – Superordenador: Ordenador con una potencia de cálculo muy elevada destinado sobre todo a aplicaciones técnicas. AMBITO – Ordenadores de gestión (personal, mainframe) – Ordenadores científicos (personal, estacion, superordenador) – Ordenadores de control (personal industrial) – Ordenadores de bases de datos (mainframe, servidor) – Ordenadores de diseño, juegos y multimedia (personal, estacion) ESTRUCTURA INTERNA – Procesador convencional: Ejecuta las instrucciones una detrás de otra – Procesador con paralelismo interno: Externamente parece que ejecuta las instrucciones de manera secuencial, pero internamente puede realizar operaciones en paralelo. – Procesador con paralelismo externo: Es el caso de los sistemas que incluyen diversos procesadores, como los servidores 4 09/03/2011 Supercomputadores BlueGene (USA) – – – – – – – Columbia (USA) – – – IBM 32768 0,7GHz PowerPC (IBM) 70 Teraflops (trillones) Agencia de Seguridad Nuclear, biologicas, medicas Chip incluye 2 procesadores, uno de calculo y otro de comunicación con la memoria del chip Linux BlueGene eServer comercial – NASA 10240 Itanium 2, 1.5Ghz, 6Mb cache 20 Superclusters de 512 procesadores, 1 Terabyte memoria por cluster Linux – – – – Acuerdo con IBM 3564 PowerPC 2,2Ghz Linux Bioinformatica, proteínas, astronomía EarthSimulator NEC (Yokohama) MareNostrum (Barcelona) Linpack test SuperComputacion PERSONAL 2011 5 09/03/2011 Comparativa PC Torre (CPU) Monitores Teclado, ratón Otros – – – – – Altavoces Impresoras Escáner Joystick Cámaras 6 09/03/2011 PC Placa base 7 09/03/2011 Placa base Microprocesador CPU Intel Pentium, AMD Velocidad en GHz Cache, FSB 8 09/03/2011 Reloj del computador Tres conceptos: – Oscilador – Interrupcion periodica – Contador fecha-hora Nº segundos desde 1 de enero de 1990 HW con bateria o software Tipos de Procesador CISC (años 60 a 80) – – – – Instrucciones, mas y mas sofisticadas Modos de direccionamiento Ventajas: Potencia para el desarrollo de aplicaciones Desventajas: Compiladores usaban 20% instrucciones 80% tiempo RISC (Patterson, 80) – Programas mas largos y mas lentos – CPU mas sencilla: rendimiento, coste, robustez T=I*M/F – Cualquier instrucción nueva debe añadir 1% rendimiento – 50-100 instrucciones, trabajo lo hace el compilador – Instrucciones sencillas, con formato regular, un solo ciclo CISC: Intel x86, Motorola 68000. Mercado RISC: MIPS usados por SGI, Sparc, PowerPC (graficos, matematicas) Hibridos 9 09/03/2011 Historia de los procesadores Intel 1971: 4004 Microprocessor 1972: 8008 Microprocessor 1974: 8080 Microprocessor (cerebro del primer PC) 1978: 8086-8088 Microprocessor (IBM-PC) 1982: 286 Microprocessor (backward compatible, 6 años 15millones de PC) 1985: Intel386™ Microprocessor (32, multitasking) 1989: Intel486™ DX CPU Microprocessor (Desktop, coprocesador matematico) 1993: Intel® Pentium® Processor (manejo de datos: voz, sonido, imágenes) 1995: Intel® Pentium® Pro Processor (servidores, CAD, cientifico, cache optimizada) 1997: Intel® Pentium® II Processor (0, 25 micras, MMX multimedia) 1998: Intel® Pentium II Xeon Processor (servidores internet, automatizacion, multiprocesador 8) 1999: Intel® Celeron® Processor (bajo coste) 1999: Intel® Pentium® III Processor (0, 25 micras, instrucciones Interned streaming SIMD , reconocimiento voz, video) 1999: Intel® Pentium® III Xeon™ Processor 2000: Intel® Pentium® 4 Processor (0,18 – 0,13 micras velocidad eq. Vehiculo de costa a costa en 13 segundos) 2001: Intel® Xeon™ Processor 2001: Intel® Itanium™ Processor (64 bits) 2002: Intel® Itanium™ 2 Processor 2003: Intel® Pentium® M Processor (+chipset, +network connection = Centrino) Procesadores Intel Name Date Transistors Microns Clock speed Data width MIPS 8080 1974 6,000 6 2 MHz 8 bits 0.64 5 MHz 16 bits 8-bit bus 0.33 8088 1979 29,000 3 80286 1982 134,000 1.5 6 MHz 16 bits 80386 1985 275,000 1.5 16 MHz 32 bits 5 80486 1989 1,200,000 1 25 MHz 32 bits 20 Pentium 1993 3,100,000 0.8 60 MHz 32 bits 100 Pentium II 1997 7,500,000 0.35 233 MHz 32 bits ~300 Pentium III 1999 9,500,000 0.25 450 MHz 32 bits ~510 Pentium 4 2000 42,000,000 0.18 1.5 GHz 32 bits ~1,700 Pentium 4 "Prescott" 2004 125,000,000 0.09 3.6 GHz 32 bits ~7,000 1 10 09/03/2011 AMD Am486 Am5x86 K5-K6 Duron Athlon – 32 bits – 64 bits – Mobile Sempron, opteron Turion Coprocesador Coprocesador matemático – Coma flotante – Primeros PC era opcional, separado 11 09/03/2011 Memoria RAM – Volatil – – – – – 1 Kb= 210 bytes = 1.024 bytes = 1 kilobyte 1 Mb= 220 bytes = 1.048.576 bytes = 1 Megabyte 1 Gb = 230 bytes = 1.073.741.224 bytes = 1 Gigabyte 1 Tbyte= 240 bytes = 1 Terabyte Tipos Estatica SRAM (10ns cache) Dinamica DRAM (60ns- mem ppal) ROM – PROM – EPROM – EEPROM BIOS - Pila BIOS= ROM, Flash – Basic Input Output System – Test hardware – Salta al sector BOOT del disco duro, lo carga en RAM – Ejecuta el boot 12 09/03/2011 Buses del PC (ranuras de expansión) IDE (Integrated Driver Electronics) – – – – – – – – Discos duros, CD-ROM Principio permitia 40Mb Cable plano de 40 hilos Estandar ATA (AT attachment) ATAPI (ATA packet interface), CD-ROM Ultra ATA, Ultra DMA, DMA 33 Sustituido por S-ATA 2 unidades por puerto ISA (Industry Standard Architecture) EISA (Extended ISA) – – – – Desde años 90 por intel, 32 bits (64bits), Tambien usado por Mac Alta velocidad transferencia Plug & play Compartir IRQ entre tarjetas 33Mhz66MHz, PCI bridge AGP (Accelerated Graphics Port) – – – – Ampliación a 32bits. Compatible con ISA (dos niveles), lento (8Mhz, 32Mb/s) PCI (Peripheral Component Interconnect) – – – – – Sonido, video, perifericos 8 a 16 bits y 8,33 Mhz, 8Mb/s 32 bits, 66Mhz Muy alta transferencia de datos, 1 ranura (video) Intel, conexión directa entre monitor y memoria de video. Graficos 3D 1Gb/seg (4x) PCI Express (1-16x) – 64 bits, 133Mhz Puertos del PC PS/2 Puerto Serie (UART) Puerto paralelo SCSI (Small Computer System Interface) – Tarjeta adaptadora – 15 perifericos en cadena, cableado simple – Estaciones de trabajo, sistemas redundantes USB (Universal serial bus) – Inicialmente: baja velocidad (teclados, raton, escaner) – 127 dispositivos (plug & play) – 480 Mb/seg (USB 2.0) – Alimentacion de dispositivos de bajo consumo – Integrados en Placa base FireWire (IEEE 1394) – Alta velocidad (High Performance Software Bus) – Plug & Play, camaras, almacenamiento. – 400 Mb/seg, 67 dispositivos 13 09/03/2011 Puertos del PC Comunicaciones – Modems – RDSI – Adaptador a red de area local (LAN). ADSL (modem router externo) – IrDA Corto alcance. PDA, movil, multimedia. – Bluetooth Corto alcance, seguridad. Impresoras, PDA, movil. – WiFi 802.11b (2.Ghz) – 11Mbps 802.11g (2.Ghz) – 54Mbps Chipset 14 09/03/2011 Disco duro Herméticos, limpios 3,5 pulgadas 7 platillos, 14 cabezas Pistas, Cilindros Interfaz – IDE- P-ATA – SCSI – S-ATA Acceso – PIO – DMA Disco duro 5400-7200 (10000) rpm Tiempo de acceso=busqueda+ latencia (mseg) Tiempo de lectura Se manejan bloques 15 09/03/2011 Resumen Computador es un sistema complejo – Distintas familias de procesadores, distintas tecnologías – Distintas variantes dentro de las familias. VonNeumann – Micro Subsistemas Buses Memoria Puertos Discos – Velocidades inferiores al micro – Protocolos diferentes 16