Organización del Computador I Introducción Patricia Borensztejn Verano 2014 “La civilización avanza extendiendo el número de operaciones importantes que podemos hacer sin pensar en ellas” Alfred North Whitehead An Introduction to Mathematics, 1911 La primera 1946: Primera Computadora Digital de Propósito General. Se llamaba ENIAC (Electronic Numerical Integrator And Calculator), y fue subvencionada por el ejército de EEUU. Se usó para calcular tablas de balística para nuevas armas de fuego recién adquiridas. Medía: 24,4 m de largo, 2,6 de alto y de ancho unos 90 cm y era capaz de realizar 1600 sumas por segundo ENIAC • Cuando terminó la guerra (1949), ENIAC se usó para calcular dígitos de los números π y e. – Le llevó setenta horas para calcular 2000 dígitos de π. Fue record en ese momento – En 1954, la computadora de NORC de IBM calculó 3000 dígitos en 13 minutos – En 2003, el programa PiFast corriendo en una computadora Pentium 4, reportó 0,27 segundos para calcular 125000 decimales – En 1807 el inglés William Shanks tardó 20 años en obtener 707 decimales de π. Comparando: Cálculo de π Año Tiempo Decimales Nombre 1807 20 años 707 W. Shanks 1949 70 horas 2000 ENIAC 1954 13 minutos 3000 IBM 2003 0,27 segundos 125000 Pentium 4 2010 90 días 5000 000 000 000 Intel Xeon Cálculo de Pi • 2010: Record logrado por Alexander Yee y Shigeru Kondo calcularon 5 billones de dígitos de Pi. • Utilizaron dos procesadores Intel Xeon cada uno de 6 núcleos (total 12 núcleos, 24 con hyperthreading) • Generaron 6 Terabytes de Datos. • En cuanto a velocidad, no mejoraron mucho, pero lograron el record de cifras… Tecnologías • Desde ENIAC hasta hoy la velocidad de las computadoras se ha multiplicado exponencialmente. • Esto fue debido a la invención del transistor. Transistor • Es un interruptor ON/OFF controlado por una señal eléctrica • Tiene 3 conexiones. La corriente pasa a través de dos de ellas siempre y cuando la tercera tenga un voltaje aplicado. Puede en un momento bloquear una corriente, funcionando entonces como una resistencia muy grande, o dejarla correr pasando a tener una pequeña resistencia. (transfer resistor ) • Podemos decir entonces que un procesador es un sistema que utiliza una señal eléctrica, (o sea, una señal analógica ) para trabajar digitalmente con los valores De izda. a dcha., Bardeen, Shockley y Brattain, los ON y OFF. inventores del transistor. (1947) Circuito Integrado • AGC, Apollo Guidance Computer, la computadora que llegó a la luna fue una de las primeras aplicaciones de los circuitos integrados • AGC fue diseñada por el MIT en 1962 y construida por la firma Raytheon. Estaba formado por 2800 IC´s (circuitos integrados) cada uno de los cuales contenía dos puertas NOR de tres entradas. Un circuito integrado doble NOR de 3 entradas El primer circuito integrado, construido en 1959 en Texas Instruments, contenía seis transistores Puertas Lógicas y Transistores • Cualquier función, tan compleja como se quiera, incluso un procesador, se puede construir totalmente utilizando solo puertas NOR. • Una puerta NOR se realiza con seis transistores (aprox.) • Las puertas lógicas están un nivel de abstracción por arriba de los transistores Niveles de Abstracción • Independientemente de la manera que “vemos” el sistema, éste puede ser descrito con diversos (cuatro) niveles de abstracción (o detalle): – – – – Transistor Gate RTL (register transfer) Procesador (memoria, • Estos niveles nos permiten ir encarando el diseño de un sistema complejo, de forma abstracta, hasta llegar a los niveles mas bajos del diseño • Lo que caracteriza a cada nivel de abstracción es: – – – – – Bloques básicos Representación de las señales Representación del tiempo Representacion del comportamiento Representación física Características de cada nivel de abstracción Ley de Moore (1964) Ley de Moore • Gordon Moore: Ingeniero y luego cofundador de Intel. El crecimiento exponencial “Dadme un grano de trigo por la primera casilla del tablero, dos por la segunda, cuatro por la tercera, ocho por la cuarta y así duplicando sucesivamente hasta la sexagésima cuarta y última casilla del tablero.” Leyenda sobre el juego de ajedrez, contada al califa de Bagdad, Al-Motacen Billah, Emir de los Creyentes, por Beremís Samir, el “Hombre que calculaba”. Malba Tahan. El hombre que calculaba 18.446.744.073.709.551.615 El crecimiento exponencial • Te hace llegar muy rápido a números muy grandes…. • “Si la industria del transporte hubiera avanzado a la misma velocidad que la industria de las computadoras, hoy usted podría hoy vivir en Tahití, trabajar en San Francisco y a la noche ir a Moscú a ver el ballet del Bolshoi.” Tamaño del transistor Intel Core i7 Wafer 300mm wafer, 280 chips, 32nm technology Each chip is 20.7 x 10.5 mm • • • The original transistor built by Bell Labs in 1947 was large enough that it was pieced together by hand. By contrast, more than 100 million 22nm trigate transistors could fit onto the head of a pin Compared to Intel’s first microprocessor, the 4004, introduced in 1971, a 22nm CPU runs over 4000 times as fast and each transistor uses about 5000 times less energy. The price per transistor has dropped by a factor of about 50,000. 22nm es la tecnología actual (?) de fabricación de un transistor. Metro, milímetro, micra, nanómetro • Milimetro: – 0,001 m. 10-3 m. milésima parte de un metro • Micrómetro (micra): – 0,000001 m. 10-6 m. millonésima parte de un metro • Nanómetro: – 0,000000001 m. 10-9 m. mil millonésima parte de un metro • Picómetro: – 0,000000000001 m. 10-12 m. …………………. La revolución de la información • Este avance, acaecido desde la invención del transistor, ha cambiado la economía mundial de una manera tan radical que es considerado como la tercera revolución, después de la agraria e industrial. – Revolución agraria: período neolítico – Revolución Industrial: siglo XVIII y XIX – Revolucion Tecnológica o de la Información: siglo XX. Ley de Moore Ley de Moore • El número de transistores de un chip se duplica cada año y medio • La velocidad (hercios) de los procesadores se duplica cada año y medio • Cada año y medio, se podrá integrar en la mismo área y al mismo costo la misma cantidad de transistores. • ¿Hasta cuando la ley de Moore se seguirá cumpliendo? ¿Hasta cuando se puede seguir duplicando la frecuencia de funcionamiento? The Power Wall • Pero no solo aumentó la velocidad del reloj, sino al mismo tiempo la potencia (watts). Pues obviamente, están correlacionadas. §1.7 The Power Wall Power Trends • In CMOS IC technology Power Capacitive load Voltage2 Frequency ×30 Chapter 1 — Computer Abstractions and 5V → 1V ×1000 Energía y Potencia • La energía se mide en Joules • La potencia en joules por segundo, vatios • La energía depende del cuadrado del voltaje aplicado y de la carga capacitiva del transistor, en cada transición (de 0 a 1, de 1 a 0) • La potencia es la energía multiplicada por la frecuencia de operación (número de veces que oscila el transistor ) • O sea que la potencia es directamente proporcional a la frecuencia de operación. • La energía y la potencia pueden reducirse bajando el voltaje aplicado. Esto ha sucedido en un 15% por generación. En 20 años los voltajes han bajado de 5V a 1V. The Power Wall, la pared térmica • En el año 2004 Intel anuncia que debe abandonar dos proyectos de la línea Pentium 4: la frecuencia de operación cada vez mas elevada produce un calentamiento dentro del chip que puede quemarlo • May 17, 2004 …” Intel, the world's largest chip maker, publicly acknowledged that it had hit a ''thermal wall'' on its microprocessor line “ New York Times Ley de Moore: de uno a varios procesadores en un chip • A partir del año 2004, se produjo un cambio en el diseño de los procesadores: en lugar de aumentarles la frecuencia de operación como forma de aumentar el rendimiento, fueron multiplicando los procesadores dentro del circuito integrado MULTICORE • Gran desventaja para los programadores: hasta entonces fue aumentando el rendimiento sin necesidad de cambiar una sola línea de código. Hoy, para sacar ventaja del multicore, hay que reescribir los programas • A ustedes les toca el desafío. ¡¡¡¡¡¡Todo se ha vuelto explícitamente paralelo!!!!!! FIGURE 1.17 Growth in processor performance since the mid-1980s. This chart plots performance relative to the VAX 11/780 as measured by the SPECint benchmarks (see Section 1.10). Prior to the mid-1980s, processor performance growth was largely technology-driven and averaged about 25% per year. The increase in growth to about 52% since then is attributable to more advanced architectural and organizational ideas. The higher annual performance improvement of 52% since the mid-1980s meant performance was about a factor of seven higher in 2002 than it would have been had it stayed at 25%. Since 2002, the limits of power, available instruction-level parallelism, and long memory latency have slowed uniprocessor performance recently, to about 22% per year. Copyright © 2014 Elsevier Inc. All rights reserved. 27 Distintos tipos de computadoras • • • • Personal computers – General purpose, variety of software – Subject to cost/performance tradeoff Server computers – Network based – High capacity, performance, reliability – Range from small servers to building sized Supercomputers – High-end scientific and engineering calculations – Highest capability but represent a small fraction of the overall computer market Embedded computers – Hidden as components of systems – Stringent power/performance/cost constraints PostPC Era FIGURE 1.2 The number manufactured per year of tablets and smart phones, which reflect the PostPC era, versus personal computers and traditional cell phones. Smart phones represent the recent growth in the cell phone industry, and they passed PCs in 2011. Tablets are the fastest growing category, nearly doubling between 2011 and 2012. Recent PCs and traditional cell phone categories are relatively flat or declining. Copyright © 2014 Elsevier Inc. All rights reserved. 29 The PostPC Era Personal Mobile Device (PMD) Battery operated Connects to the Internet Hundreds of dollars Smart phones, tablets, electronic glasses Cloud computing Warehouse Scale Computers (WSC) Software as a Service (SaaS) Portion of software run on a PMD and a portion run in the Cloud Amazon and Google Chapter 1 — Computer Abstractions and Technology — 30 Terabytes (TB) o Tebibytes (TiB) • Originalmente un TB era 240 bytes, o sea: 1.099.511.627.776 bytes • Luego se empezó a usar el término para denominar 1.000.000.000.000 (1012) bytes • Se resuelve llamando TiB o sea Tebibyte a 240 Megas, Gigas, Teras, Petas, Exa, etc FIGURE 1.1 The 2X vs. 10Y bytes ambiguity was resolved by adding a binary notation for all the common size terms. In the last column we note how much larger the binary term is than its corresponding decimal term, which is compounded as we head down the chart. These prefixes work for bits as well as bytes, so gigabit (Gb) is 109 bits while gibibits (Gib) is 230 bits. 32 Copyright © 2014 Elsevier Inc. All rights reserved. Nuestro Curso • Vamos a estudiar a los procesadores, que aunque difieren según estén dentro de un ipad o de una PC o de una supercomputadora, mantienen muchas características en común. Rendimiento: Primer Semana • ¿Porqué son rápidas las computadoras? • ¿En que se mide la velocidad? • ¿Mas rápido es mejor? Segunda Semana • Lenguaje Máquina Programa Almacenado • ENIAC no tenía programa almacenado. Para pasar información a las válvulas (tecnología de válvulas) las mujeres conectaban y desconectaban los cables que llegaban a las 6000 clavijas. (Las mujeres olvidadas del ENIAC) Idea de Programa Almacenado • Von Neumann, Eckert y Mauchly en 1945 idearon una manera para evitar el engorro de conectar y desconectar cables: guardar las órdenes dentro de la máquina como si fueran números: ¡esas son las instrucciones! • Al modelo se lo suele llamar Modelo Von Neumann. Asi está en casi todos los libros. Nosotros pensamos que es mucho mejor no llamarlo asi!!!! Segunda Semana • Entonces, veremos un conjunto de instrucciones particular, que se definió para una arquitectura particular que se llama MIPS. (Machine without Pipeline Interlocks) • Cada fabricante tiene un repertorio (lenguaje) propio de instrucciones: IA64, IA32 (Intel), SPARC, ARM, MIPS, VAX…. Enfin, no hay muchos…y además todos se parecen porque lo que hay debajo es exactamente lo mismo! (transistores, puertas lógicas, registros, sumadores, memorias) Tercer Semana • Aritmética de las computadoras: suma, resta, multiplicación y división binaria. • El primer sistema binario documentado es debido a Gottfried Leibniz, amante de la lengua y de la cultura china, quien se basó en los símbolos del I-Ching, para desarrollar y escribir su artículo "Explication de l'Arithmétique Binaire" en los principios de 1700. En él se mencionan los símbolos binarios usados por matemáticos chinos. Leibniz utilizó el 0 y el 1, al igual que el sistema de numeración binario actual. Los 64 hexagramas del I-Ching Cuarta Semana • El procesador: construyendo un procesador MIPS con un juego restringido de instrucciones Quinta Semana Memoria Se llamó LOL (Little Old Ladies) por las mujeres que la tejían Memoria usada en Apollo Guidance Computer: ¡había que tejerla! Sexta Semana • Entrada y Salida Organización de la Materia • • • • • Teoría y Laboratorios Queremos que trabajen en clase con nosotros Un parcial al finalizar la cuarta semana Un recupertorio en la séptima semana Los labos no se entregan, sino que se realizan y nosotros los vemos realizarlos. Labos grupales. • La materia se promociona con todos los labos realizados y nota superior a 6 en parcial o recuperatorio • Para firmar los prácticos deben tener los labos realizados y parcial o recuperatorio con nota mayor o igual a 4 Bibliografía Computer Organization and Design. The hardware/software Interface. David Patterson: University of California, Berkeley. Diseñó el RISC1 que dio lugar a la arquitectura SPARC. Es renombradísimo. John Hennessey: Presidente de Stanford. Fundó MIPS (MIPS Technologies) y desarrolló uno de sus primeros procesadores.