4ta Generacion de PCs v.6
4ta Generacion de PCs v.6
4ta Generacion de PCs v.6
PAG.
INTRODUCCION……………………………………………………………..... 2
RESUMEN………………………………………………………………………. 2
PLANTEAMIENTO DEL PROBLEMA………………………………………. 2
a) PROBLEMÁTICA……………………………………………... 2
b) DELIMITACION……………………………………………….. 2
c) JUSTIFICACION……………………………………………… 2
d) OBJETIVOS…………………………………………………… 2
FUNDAMENTACION TEORICA…………………………………………….. 2
ANEXOS…………………………………………………………………………4
BIBLIOGRAFIA…………………………………………………………………5
1
INTRODUCCION
Hoy día todos los habitantes del mundo somos dependientes directos o
indirectos del uso de las computadoras, como en oficinas bancarias, grandes y
medianos comercios, centros de enseñanza, oficinas de ventas y
reservaciones para viajes, clínicas médicas u hospitales, fábricas y almacenes
industriales, organismos de gobierno y oficinas administrativas, laboratorios, y
centros de investigación. Estas máquinas maravillosas inventadas por el
hombre, tal como ahora las concebimos, son el resultado de una secuencia de
eventos que el transcurso de esta investigación conoceremos.
RESUMEN
2
En la tercera generación de computadoras, se dio el uso de circuitos
integrados, no obstantes, estos no abarcaban del todo las exigencias
demandadas a comienzos de la década de los 70s.
b) DELIMITACION
La evolución y avance tecnológico se da a nivel internacional, ya que el
mismo interviene en la globalización.
c) JUSTIFICACION
Con el fin de entender el desarrollo de los avances tecnológicos, que
dominan cada vez de mayor manera la vida cotidiana humana, es por
qué se ve la necesidad de aprender de la historia de los mismos.
d) OBJETIVOS
Comprender de mejor manera la historia, como tema introductorio a la
materia de Sistemas de Computación, para de tal manera entender de
mejor manera los avances y análisis del mismo.
FUNDAMENTACION TEORICA
Hizo que sea una computadora ideal para uso “personal”, de ahí que el
término “PC” se estandarizara y los clones que sacaron posteriormente otras
empresas fueron llamados “PC y compatibles”, usando procesadores del
mismo tipo que las IBM , pero a un costo menor y pudiendo ejecutar el mismo
tipo de programas. Existen otros tipos de microcomputadoras , como la
Macintosh, que no son compatibles con la IBM, pero que en muchos de los
3
casos se les llaman también “PC”, por ser de uso personal. El primer
microprocesador fue el Intel 4004, producido en 1971. Se desarrolló
originalmente para una calculadora, y resultaba revolucionario para su época.
Contenía 2.300 transistores en un microprocesador de 4 bits que sólo podía
realizar 60.000 operaciones por segundo.
4
1971 un microprocesador de propósito general, al cual denominaron el chip
4000.
Este chip de 4 bits, contenía 23,000 transistores que procesaban 108 kHz o
0.06 MIPS. Contaba con 46 instrucciones y 4k de espacio de almacenamiento.
5
Solamente se comercializaron 40 equipos al costo de 750 dólares.
Los discos duros Winchester son introducidos por IBM en los modelos 3340.
Estos dispositivos de almacenamiento se convierten en el estándar de la
industria. Provisto de un pequeño cabezal de lectura/escritura con un sistema
de aire que le permite movilizarse muy cerca de la superficie del disco de una
película de 18 millonésimas de pulgada de ancho.
El disco duro 3340 duplica la densidad de los discos IBM cercano a los 1.7
millones de bits por pulgada cuadrada.
6
1975 CM/P, el primer sistema operativo estándar
7
el Control Program Monitor, para posteriormente cambiarlo a Computer
Program Monitor. Por el contrario de cualquier sistema operativo desarrollado
antes o después, el CP/M no fue el resultado de investigación y desarrollo de
un equipo de ingenieros sino la inventiva y el trabajo de un sólo hombre.
Aunque su sistema operativo resultó ser un buen producto, por muchas
razones técnicas el CP/M fue lanzado al mercado apenas un año antes de la
aparición de las primeras micro computadoras comerciales.
8
Steven Wozniak y Steven Jobs fueron amigos desde la escuela secundaria y
ambos se habían interesado mucho en electrónica y eran considerados por
sus compañeros como personas controvertidas. Después de su graduación se
mantuvieron en contacto y ambos consiguieron empleos en corporaciones de
Silicon Valley. (Wozniak trabajó en Hewlett-Packard y Jobs en Atari).
Al año siguiente lanzaron la Apple Disk II, la primera disquetera, y para el año
de 1980 la compañía fundada por Jobs y Wozniak ya contaba con varios miles
de empleados. Emerge una forma de distribución masiva de software, a
precios más asequibles
9
1978 el microprocesador Intel 8086
Steven Jobs visita los Laboratorios SPARC de la Xerox y obtiene ideas para
desarrollar la Macintosh. MicroPro, una de las primeras grandes casas de
software de la época lanza su procesador de textos WORDSTAR. El sistema
operativo de la época es el CPM-86.
10
Todos estos grandes éxitos despertaron en la IBM la ambición de ingresar al
mercado de las computadoras personales y participar en las suculentas
ganancias que obtenían empresas como Apple, Tandy/Radio Shack,
Commodore y hasta Spectrum de Inglaterra.
11
Este mismo año, Digital Equipment (DEC) lanzó al mercado una familia de
computadores basados en arquitecturas de paralelismo masivo: las máquinas
van en un rango desde los 1,024 hasta los 16,384 microprocesadores que
trabajan en forma paralela. En su configuración máxima (por un costo de unos
1,500,000 dólares) son capaces de realizar 26 mil millones de instrucciones
básicas por segundo (26,000 MIPS).
CHIP DE SILICIO.
12
En 1973, Scelbi Computer Consulting creó lo que se dijo fue el primer
microcomputador, el Scelbi 8-H. IBM introduce la primera impresora láser.
MICROCOMPUTADOR: EL ALTAIR
13
microprocesador de 8-bit Intel 8080, 256 bytes de memoria, y un panel frontal
de switches, no tenia teclado ni dispositivo de almacenamiento. Paul Allen y
Bill Gates desarrollaron una versión de BASIC como lenguaje de
programación del computador.
APPLE COMPUTER
14
HiPlot. Computer Headware anuncia el manejador de base de datos
WHATSIT. Intel produce el 8086, una CPU de 16 bits en un chip. Este
procesador es compatible con el 8080, que tenía la misma arquitectura y
corría los mismos programas. DEC introduce la VAX 11/780, computadora de
32 bits que se hizo popular para aplicaciones técnicas y científicas.
15
formados en una única pieza plana de poco espesor de un material conocido
como semiconductor.
Tecnología básica:
Microprocesadores
16
El primer microprocesador de 8 bits fue el Intel 8008, desarrollado en 1972
para su empleo en terminales informáticos.1 El Intel 8008 contenía 3.300
transistores. El primer microprocesador realmente diseñado para uso general,
desarrollado en 1974, fue el Intel 8080 de 8 bits, que contenía 4.500
transistores y podía ejecutar 200.000 instrucciones por segundo. Los
microprocesadores modernos tienen una capacidad y velocidad mucho
mayores.
Funcionamiento
17
El procesador (denominado CPU, por Central Processing Unit) es un circuito
electrónico que funciona a la velocidad de un reloj interno, gracias a un cristal
de cuarzo que, sometido a una corriente eléctrica, envía pulsos, denominados
"picos". La velocidad de reloj (también denominada ciclo), corresponde al
número de pulsos por segundo, expresados en Hertz (Hz). De este modo, un
ordenador de 200 MHz posee un reloj que envía 200.000.000 pulsos por
segundo. Por lo general, la frecuencia de reloj es un múltiplo de la frecuencia
del sistema (FSB, Front-Side Buso Bus de la Parte Frontal), es decir, un
múltiplo de la frecuencia de la placa madre.
Con cada pico de reloj, el procesador ejecuta una acción que corresponde a
su vez a una instrucción o bien a una parte de ella. La medida CPI (Cycles Per
Instruction o Ciclos por Instrucción) representa el número promedio de ciclos
de reloj necesarios para que el microprocesador ejecute una instrucción. En
consecuencia, la potencia del microprocesador puede caracterizarse por el
número de instrucciones por segundo que es capaz de procesar.
Los MIPS (millions of instructions per second o millones de instrucciones por
segundo) son las unidades que se utilizan, y corresponden a la frecuencia del
procesador dividida por el número de CPI.
Instrucciones
18
Código de Campo de Operación
Operación
19
Registros
Memoria caché:
20
Los últimos modelos de ordenadores poseen muchos niveles distintos de
memoria caché:
21
Señales de Control:
Unidades Funcionales:
22
El registro de estado.
E registro acumulador.
Una unidad de administración del bus (o unidad de entrada-salida)
que administra el flujo de información entrante y saliente, y que se
encuentra interconectado con el sistema RAM.
Características principales:
23
Kbits. Desde entonces, la capacidad de almacenamiento de las memorias no
ha dejado de incrementarse año tras año. Este crecimiento ha ido
acompañado por una disminución de su coste y un incremento en la
velocidad de aproximación.
La arquitectura de los primeros microprocesadores [Fagg96a] fue una
adaptación de las ideas usadas con anterioridad en los minicomputadores y
los mainframes. Las compañías incorporaban estas ideas en los
microprocesadores tan pronto como la rápida evolución de las capacidades
dadas por la tecnología y el coste lo permitían. Por eso esta generación se
caracteriza principalmente por las mejoras en la tecnología de circuitos
integrados, que los microprocesadores aprovechan más que otros
computadores debido a su mayor integración, y no tanto por las mejoras
arquitectónicas. Ya en 1974 el 6800 contenía alrededor de 5000 transistores
en tecnología NMOS de 6 micras. Operaba a 2 MHz y podía direccionar 64
Kbytes de memoria. También aparecieron el MC6502 y el Intel 8080 entre
otros. La disminución del coste de los CIs conduce a un gran abaratamiento
de los computadores, lo cual permite la fabricación de los primeros
computadores personales. En 1975 apareció el primer sistema de
computador popular basado en microprocesador: el MITS Altair 8800. Estaba
basado en el Intel 8080, un microprocesador de 8 bits que trabaja a 2 MHz
introducido en 1974. El Apple II se introdujo en 1977, basado en el MC6502,
junto con un terminal CRT, un teclado y una disquetera. Fue el primer
computador personal con gráficos en color. En 1978 Intel introdujo el
microprocesador de 16 bits 8086, con 29000 transistores, tecnología HMOS
de 3 micras, un rango de direcciones de 1 Mbyte y una velocidad de 8MHz.
Este diseño fue utilizado por IBM para el computador personal (IBM PC) que
se presentó en 1981, para el que elige el PC-DOS de Microsoft como
sistema operativo. El Apple II En 1979, pensando que la memoria seguiría
reduciendo su coste y que los futuros programas se escribirían en lenguajes
de alto nivel, Motorola incrementó el ancho de banda con un bus de datos de
16 bits y un bus de direcciones de 32 bits para el MC68000. Este
24
microprocesador podía dar un rendimiento pico de 2 MIPS. Debido a
limitaciones de empaquetamiento (tenía 64 pines) los 32 bits se redujeron a
24 en los primeros productos. También se añadieron registros de propósito
general de 32 bits, hasta un total de 16. El número total de transistores era
de alrededor de 68000, podía trabajar a 5V y a una velocidad de 8 MHz.
Apple Computer seleccionó el 68000 para la línea de computadores
personales Macintosh.
En 1976 aparece el Cray-1 de Cray Research, el primer supercomputador
vectorial.
En 1978 DEC presenta el VAX 11/780, un computador de 32 bits que se
hace popular para aplicaciones científicas y técnicas. Los diseñadores del
VAX buscan simplificar la compilación de lenguajes de alto nivel –en 1972
habían aparecido C, SmallTalk y Prolog, que se sumaron a los ya existentes
Fortran, Cobol y Lisp- y para ello crean una arquitectura ortogonal de
instrucciones complejas. Además optimizan el tamaño del código para que
ocupe menos memoria. En el sentido opuesto al de los diseñadores del VAX,
J. Cocke trabaja en el proyecto 801 de IBM para desarrollar un
minicomputador que será origen de las futuras arquitecturas RISC de la
siguiente generación.
Avances arquitectónicos: primera etapa
La primera etapa de esta generación dura hasta mediados de los 80, cuando
el número de transistores en un CI se aproxima a 250.000. En este periodo
no hay grandes novedades en la arquitectura de los computadores
personales. Para mejorar el rendimiento la secuencia de instrucciones se
segmenta a 5 ó más etapas. Un ejemplo de esta generación es el MC68020,
introducido en 1984, el primer microprocesador de 32 bits tanto en los buses
de datos y direcciones 30 como en registros y ALU. Tenía 200.000
transistores, incorporaba por primera vez una cache interna de 256 bytes y
una segmentación de hasta 5 etapas [Tred96]. Funcionaba a una frecuencia
de 16 MHz. Por su parte Intel incrementó el ancho de bits de su serie x86 a
32 bits con el Intel 80386 [CrGe87] [Cat90] [Brey95] (1985). Tenía 275.000
25
transistores y reloj de 33 MHz. Incluía la lógica de gestión de memoria en el
chip. No utilizó segmentación. En esa época los fabricantes de
minicomputadores como Hewlett-Packard (HP), Digital Equipment Corp.
(DEC), Tektronix y Apollo comienzan a usar microprocesadores para sus
CPUs, creando el mercado de las estaciones de trabajo [Tred96], que pronto
consiguieron ser mucho más potentes que los mainframes de las
generaciones anteriores. A principios de los años 80, John Hennessy, de la
Universidad de Stanford, y David Patterson, de la Universidad de Berkeley,
definen la base de los procesadores actuales. Estudios dinámicos sobre
ejecución de las cargas de trabajo habituales revelaron que las instrucciones
y los modos de direccionamiento complejos se usaban muy poco. Además,
las instrucciones eran muy largas y eso aumentaba el tiempo necesario para
leerlas de memoria, cada vez más crítico. De estos estudios surgió la idea de
diseñar computadores de repertorio de instrucciones reducido o RISC
(Reduced Instruction Set Computer), nombre acuñado por D. Patterson. Los
repertorios simples facilitaron la labor de construir microprocesadores
segmentados ya en 1980-81 [Kogg81][bhcl91]. Los primeros prototipos RISC
eran segmentados y el primero en llegar al mercado fue el MIPS R2000 en
1986, seguido del Sparc [Cata91] de Sun, 29000 de AMD, etc... [Feel94]
[Gimi87] [Henn96] [Henn99][ibm94] [Pase82] [Kate85]. 31 En el campo de los
supercomputadores se presenta en 1986 el Cray XP de cuatro procesadores,
que alcanza 713 MFLOPs.
La segunda etapa comienza cuando se pueden integrar un millón de
transistores en un CI, a finales de los 80. Los mayores fabricantes de
microprocesadores para computadores personales, Intel y Motorola, tenían
absoluta necesidad de compatibilidad, por lo que no modificaban
significativamente sus arquitecturas. Así para obtener mayor rendimiento con
una arquitectura fija se aumentaba la frecuencia de reloj y se usaban los
transistores disponibles para añadir memoria cache interna, coprocesadores
matemáticos, segmentaciones más profundas y algoritmos de predicción de
saltos [Dani96]. En 1989 se lanzan al mercado el i486 y el MC68040 con 1.2
26
millones de transistores cada uno y rendimiento similar [Yu96]. El MC68040
estaba segmentado en 6 etapas, con memoria cache de instrucciones y
datos de 4 Kbytes cada una y coprocesador matemático. El i486 funcionaba
a 25 MHz con tecnología de 1 micra y a 50 MHz con la de 0.8 micras, incluía
un coprocesador matemático, una cache de 8 Kbytes y soporte para
memoria virtual, además de segmentación. El éxito de Intel en el mercado de
computadores personales atrae a competidores (AMD, Cyrix, etc.) a crear
soluciones compatibles con la familia x86. En los microprocesadores para
estaciones de trabajo aparecen evoluciones de la segmentación como la
ejecución supersegmentada y la ejecución 32 superscalar. En los
procesadores supersegmentados se disminuye el tiempo de ciclo a costa de
aumentar el número de etapas del pipeline. Los procesadores
superescalares son capaces de lanzar más de una instrucción por ciclo con
el objeto de explotar el paralelismo a nivel de instrucción (Instruction Level
Parallelism, ILP). No obstante, los primeros procesadores capaces de
ejecutar múltiples instrucciones por ciclo fueron dos computadores de los
años 60, el CDC 6600 [Thor64], del que hemos hablado al describir los
avances arquitectónicos de la segunda generación, y el IBM 360/91
[AnST67], donde ya se incluye etiquetado de instrucciones y renombramiento
de registros. Ejemplos de esta generación son Sun SuperSPARC, el HP-PA
7100, MIPS R4000, Intel 80960CA y Motorola 88110. Otros hitos importantes
de esta generación son la estación de trabajo Sun 3/260 que en 1986
incorpora por primera vez dos niveles de cache, uno interno y otro externo.
En 1991 el Cray Y-MP C90, que tiene 16 procesadores, consigue alcanzar
16 GFLOPs. Destacar por último, por su impacto en las metodologías de
diseño actuales, que a finales de los 80 se funda la organización SPEC
(System Performance and Evaluation Company) con el objetivo inicial de
proporcionar un método de comparación más realistas para el mercado de
servidores y estaciones de trabajo que los hasta la fecha populares MIPS,
MFLOPS o los kernels sintéticos tipo Whetstone. La primera propuesta de
SPEC hoy se conoce con el nombre de SPEC89 y estaba orientada casi
27
exclusivamente al rendimiento de procesador. A esta versión inicial han
seguido tres nuevas entregas, SPEC92, SPEC95 y SPEC CPU2000, así
como nuevos benchmarks destinados a medir otros elementos del
computador como el sistema gráfico (SPECviewperf y SPECapc) o el
sistema de ficheros (SPECSFC). Desde su aparición ha sido un referente
importante utilizado tanto por la industria como dentro del mundo académico
donde es uno de los bancos de pruebas más utilizados para explorar nuevas
ideas o analizar diferentes alternativas de diseño. 33 Avances
arquitectónicos: tercera etapa A finales de los 90 hemos asistido a la
vertiginosa expansión de Internet y del Word Wide Web (WWW), al éxito
comercial de los PDAs (personal digital assistants) y a la proliferación de
otros productos electrónicos de gran consumo como las consolas de video
juegos, las cámaras digitales o los reproductores de MP3. Estos cambios,
han dado lugar a tres segmentos claramente diferenciados dentro del
mercado de los computadores, cada uno de ellos con diferentes aplicaciones
objetivo, diferentes requisitos y diferentes tecnologías: computadores
personales, servidores y procesadores empotrados. Vemos un poco más en
detalle cada uno de ellos
Tendencias y problemas actuales Una vez presentados los avances en
tecnología y arquitectura a lo largo de la evolución de los computadores y
algunas de las últimas propuestas para computadores de alto rendimiento,
completamos el análisis del área de conocimiento presentando los retos que
deben afrontarse actualmente y las tendencias en el desarrollo de los
distintos factores que pueden influir en el futuro de arquitectura y tecnología.
Al introducir el concepto de arquitectura de computadores establecimos su
dependencia de la tecnología, por un lado, y de las aplicaciones, por el otro.
Por eso examinaremos el estado de estos dos factores. En la tecnología
distinguiremos entre la tecnología básica usada por los procesadores y
memorias, la de semiconductores, y la que usan los sistemas de
almacenamiento secundario. Avances y limitaciones en la tecnología de
semiconductores La tecnología de semiconductores ha realizado constantes
28
progresos desde la invención de los circuitos integrados. En 1965 G.E.
Moore predijo que el número de transistores en un circuito integrado se
duplicaría anualmente. En 1975, cuando la tecnología de semiconductores
alcanzada la adolescencia, Moore revisó su predicción a la baja duplicando
el número de transistores cada 57 18 meses y la tendencia se ha mantenido
así durante 20 años, siendo denominada ley de Moore [Gepp98a] (Figura
28). Todo el mundo discute si se seguirá cumpliendo o no, y durante cuánto
tiempo. En 1994 la Asociación de Industrias de Semiconductores (SIA)
realizó una predicción sobre la evolución de los distintos aspectos de la
tecnología. La predicción tuvo que ser revisada al alza en muchos factores
en 1997 y además la introducción de nuevas tecnologías se ha acelerado de
3 años a 2 [Gepp98b]. En la tabla 1.6 aparecen las principales predicciones
de la SIA para procesadores de gama alta [FlHR99]. Sin embargo, existe una
triple amenaza para la ley de Moore: costes de fabricación, complejidad del
diseño y test de circuitos tan complejos en tiempo razonable y límites
tecnológicos, tanto de retardo de interconexiones como de consumo y
disipación de potencia [FlHR99]. A continuación revisaremos los principales
aspectos de cada uno de estos problemas. Figura 28: Ley de Moore Costes
de fabricación 58 La segunda ley de Moore dice que el coste de construir una
fábrica de semiconductores se duplica cada 3 o 4 años. Es una opinión
generalizada que serán los costes de fabricación y no los retos tecnológicos
los que limiten la mejora de los CIs [ChDo98]. Algunos predicen que a partir
del 2005 ya no será rentable disminuir el tamaño de los transistores y que
dejará de cumplirse la primera ley de Moore. Hasta ahora ésta se ha
mantenido porque las mejoras exponenciales de tecnología y productividad
han creado un aumento del mercado de circuitos integrados, aumento que a
su vez ha producido grandes ganancias. Estas han permitido invertir mucho
dinero en investigación y en fábricas de elevadísimo coste, como por ejemplo
2.000 millones de dólares el de una fábrica para chips de Pentium Pro
[Yu96]. El coste creciente sólo se puede mantener si el volumen de ventas es
enorme, así que es necesario abrirse a nuevos mercados. Esto puede
29
imponer nuevos requisitos al diseño, ya que para el consumidor medio son
importantes la fiabilidad y la facilidad de uso. Según Hennessy [Henn99]
estamos en el umbral de una nueva era en la que todo el mundo usará
servicios de información y aparatos basados en computadores. Cuando el
usuario medio empiece a utilizar estos sistemas esperará que funcionen y
sean fáciles de usar. Otra alternativa es que se simplifiquen los procesos y
los equipos de fabricación de forma que el coste de las fábricas no siga
creciendo. Límites en la tecnología de semiconductores Los avances en
tecnología de semiconductores aumentan tanto la velocidad como el número
de transistores que pueden incluirse en un chip. Cada generación disminuye
un 30% cada dimensión -lateral y vertical- de los transistores y su retardo
[Bork99] [FlHR99]. Esto debería provocar una mejora del ciclo de reloj de un
43%. Sin embargo ha mejorado un 50% debido a que se disminuye el
número de puertas por ciclo 59 de reloj, aumentando la profundidad de
segmentación [Matz97]. Por ejemplo, el UltraSPARC-III de Sun está
segmentado en 14 etapas, de aproximadamente 8 retardos de puertas
lógicas cada una [HoLa99]. La densidad de transistores debería duplicarse
cada generación y los chips de memoria lo han cumplido. En cambio, los
chips de lógica no alcanzan la densidad máxima por la complejidad de las
microarquitecturas, que como veremos más adelante necesita herramientas
CAD mejores. Actualmente se están utilizando tecnologías de 0.25 micras y
de 0.18 micras. Parece que la tendencia es a llegar a las 0.1 micras en el
2006, acercando los sistemas de litografía ópticos actuales a los límites
impuestos por la física. Para tamaños por debajo de 0.1 son necesarias
nuevas herramientas litográficas, que pueden estar basadas en rayos X,
haces de electrones o de iones, de las cuales hay prototipos en desarrollo
[Gepp98b]. El factor que más limita la mejora del rendimiento hoy en día son
las conexiones. También se necesitan avances en el área de consumo de
potencia y aquí el diseño asíncrono u opciones como la del procesador
Crusoe pueden ser una vía de solución.. Las conexiones son uno de los
grandes límites para conseguir mejorar el rendimiento porque disminuir su
30
tamaño aumenta la resistencia y/o la capacidad. El número de capas de
metal para interconexiones se ha incrementado de 2 a 6 y seguirá
incrementándose a medida que se necesiten más interconexiones entre los
dispositivos. Según [StCo91], frecuencias de reloj superiores a 1 GHz (ciclo
de reloj de 1 ns) pueden ser un límite absoluto para las interconexiones
metálicas entre tarjetas de chips o módulos multichip. En general, a
velocidades de 400 MHz y superiores, las conexiones deben ser punto a
punto. Será necesario encontrar nuevos materiales con menos resistencia y
menos capacidad para poder sobrepasar los límites dados por las
interconexiones. Las 60 conexiones de aluminio tienen alta resistencia y son
vulnerables a electromigración, problemas que aumentan al disminuir la
anchura de las líneas. El cobre era una alternativa mejor pero había
dificultades para su fabricación. En 1997 IBM y Motorola anunciaron
procesos de fabricación con 6 niveles de interconexiones de cobre, que
mejora rendimiento, consumo, densidad y coste, pero sobre todo fiabilidad
[Gepp98b]. Además se combinan conexiones de cobre con aislantes de baja
constante dieléctrica para reducir la capacidad de los cables y las
interferencias. Un año después del desarrollo de la tecnología de
interconexiones de cobre IBM ya la está usando para el PowerPC 750 a 500
MHz [Beck93], un PowerPC empotrado (consumen menos y son más
rápidas, así que son muy convenientes para empotrados). En Mayo IBM
anunció su nuevo servidor S/390 G6 con interconexiones de cobre [IBM99a].
El chip, que incluye la cache de nivel 2, tiene, gracias a la nueva tecnología,
el doble de transistores que el del S/390 G5 y ocupa un 10% menos de área
(121 millones de transistores, que ofrecen 16 Mbytes de memoria, en un chip
de 16.5 mm). También lo incorporará a las familias de servidores RS/6000 y
AS/400 [Gepp99]. A pesar de las mejoras en las conexiones, el retardo de
las mismas y el aumento de la frecuencia de reloj implican que las
arquitecturas grandes necesitan ser modulares y que la ubicación sea
adecuada para evitar la presencia de cables largos. Ya vimos ejemplos de
ello, en el UltraSPARC-III (la señal de parada global del pipe tendría mucho
31
retardo, así que se elimina) y, sobre todo, en el Alpha 21264: todas las
conexiones externas al chip son canales punto a punto de alta velocidad y el
banco de registros se divide en dos para que su tamaño sea menor y se
pueda acceder en un ciclo. En este sentido, en la predicción de SIA es muy
llamativa la diferencia entre el crecimiento de la frecuencia local del reloj y la
global. El consumo también es un factor que limita el aumento del
rendimiento tanto para microprocesadores empotrados, como para los
microprocesadores 61 de alto rendimiento, más rápidos, que necesitan más
potencia y necesitan disiparla. Esto fuerza a alcanzar compromisos entre
tamaño del dado (que el tamaño del dado no crezca mucho), la alimentación
(disminuir el voltaje de alimentación) y la frecuencia, tal como se aprecia en
la tabla 1.6. Disminuir la alimentación aumenta la susceptibilidad a errores
blandos (debido a que la energía necesaria para cambiar el estado de un
biestable es cada vez menor) y precisa de técnicas de refrigeración potentes
[Bork99]. También se investiga en el uso de nuevos materiales para
aumentar rendimiento y disminuir consumo [Gepp99] como por ejemplo en
siliciogermanio. Por otra parte surge el problema del empaquetamiento
[Slat96]. A medida que los diseñadores colocan más funciones en un chip,
éstos necesitan más patillas de entrada/salida. Las tecnologías actuales que
proporcionan circuitos a precios aceptables, no permiten empaquetar con
más de 200 patillas. Las que permiten mayor número elevan
considerablemente el coste de los CI. Por esta razón, se necesitan nuevas
tecnologías de empaquetamiento que permitan empaquetar grandes
cantidades de patillas a costes bajos. Complejidad de diseño y test La
complejidad del diseño y el tamaño del equipo de diseño se han convertido
en una de las barreras más importantes al avance de la tecnología [Yu96].
Un ejemplo que muestra el crecimiento de ambos factores es el diseño de
dos microprocesadores MIPS. En 1985 fue terminado el MIPS R2000 tras 15
meses de diseño. Tenía 0.1 millones de transistores. El equipo de diseño lo
formaban 20 personas y la verificación constituía un 15 % del coste total. El
MIPS R10000 terminado en 1996 tenía 6.8 millones de transistores. El
32
equipo de diseño lo formaban más de 100 personas, que tardaron 3 años. La
verificación costó más del 35% del total [Henn99]. De este ejemplo se
deduce que el tiempo de diseño se ha duplicado y el tamaño del equipo se
ha quintuplicado. 62 La validación y test de los microprocesadores actuales
cada vez ocupan más parte del esfuerzo de diseño. Actualmente consumen
del 40 al 50% del coste de diseño de un chip de Intel y el 6% de los
transistores en el Pentium Pro. Por un lado los equipos de test son más
caros debido al mayor número de pines y frecuencia de reloj. Y por otro, el
tiempo de test aumenta constantemente debido a la complejidad de los chips
y a los requisitos de calidad [Yu96]. Además, para diseños con tecnologías
de tamaños característicos tan pequeños como los actuales es muy
importante analizar el comportamiento temporal y el consumo, ya que la
ubicación y conexionado pueden afectarles mucho. Esto presenta nuevos
retos en el campo del test. Otras mejoras necesarias tienen que ver con la
integración entre los distintos niveles del proceso de diseño. Al planear un
nuevo microprocesador de alto rendimiento los diseñadores tienen que tomar
muchas decisiones, que incluyen organización superescalar, lanzamiento de
instrucciones en desorden, ejecución especulativa, predicción de saltos y
jerarquía de caches. La interacción entre las distintas características de la
microarquitectura frecuentemente es contra-intuitiva y se formulan preguntas
sobre las ventajas potenciales de rendimiento [MoWM99]. Los compromisos
de diseño complejos requieren modelado del rendimiento preciso y a tiempo
[LiSh97]. Este modelado debe realizarse en varios niveles de abstracción
para que sea preciso y rápido [BoCA99]. Al empezar el proceso de diseño se
usaban habitualmente modelos de rendimiento: en este nivel de abstracción
se quiere definir la mejor microarquitectura que implementa una arquitectura
dada, y “mejor” quiere decir la que produce mayor rendimiento en términos
de CPI. Estamos siendo testigos de la creciente necesidad de tener en
cuenta más y más ligaduras de bajo nivel en el modelado y análisis de alto
nivel (en fases tempranas de diseño). Esto es debido al aumento de
integración de los circuitos: los diseños actuales usan muchos millones de
33
transistores que operan a frecuencias cercanas al GHz. A esa velocidad los
retardos de interconexiones 63 y cables determinan significativamente el
ciclo de reloj, así que la partición y ubicación de los bloques lógicos es un
tema que debe tratarse con cuidado en los niveles más altos de diseño para
evitar sorpresas posteriores (como vimos en el apartado anterior son
necesarias decisiones de diseño de alto nivel para evitar retardos de
conexiones demasiado largos). Por lo tanto se necesita más integración
entre las metodologías de modelado y validación en distintos niveles. Para
arquitecturas VLIW se debería incluir el compilador dentro del modelo, pero
de momento no se ha hecho debido a que es muy complejo. Por otro lado,
los diseñadores de aplicaciones empotradas no están tan interesados en el
aumento constante de rendimiento sino en integrar más funciones en el chip.
Al evolucionar hacia el “sistema en un chip” los microprocesadores
empotrados se especializan, ya que diferentes aplicaciones necesitan
diferente memoria, controladores de periféricos e interfaces. Esto aumenta la
demanda de microprocesadores que puedan ser un bloque de un ASIC.
Varias compañías ofrecen cores de microprocesadores y deben proporcionar
también otros bloques complejos y herramientas para diseñar, depurar,
verificar y testear los chips. Para que estos componentes complejos
(Intelectual Property) puedan ser utilizados en otros diseños es necesario
que sean diseñados pensando en su reuso, tanto si son hard-IP
(componentes ya ubicados, conectados y verificados) como si son soft-IP
(descripción RT sintetizable). Además para que sea posible el diseño de
“sistemas en un chip” son precisas mejoras en las herramientas para el co-
diseño hardware y software, verificación formal y optimizaciones a nivel RT y
la integración más estrecha de diseños físicos y lógicos [Mart99]. Hace 10
años el cuello de botella de la tecnología eran las técnicas de fabricación
pero hoy es el problema de diseñar chips grandes y muy densos con
componentes muy pequeños. 64 Limitaciones de los sistemas de
almacenamiento Los computadores hoy en día tienen que almacenar todas
las formas de información: archivos, documentos, imágenes, sonidos, vídeos,
34
datos científicos y otros tantos nuevos formatos de datos. Se han realizado
grandes avances técnicos para capturar, almacenar, analizar y visualizar
datos [Gray96]. La sociedad cada vez necesita más y más información, sobre
todo con el surgimiento de las aplicaciones multimedia y el acceso a datos a
través de navegadores, como veremos más adelante. En los últimos años se
ha conseguido mejorar la capacidad y el coste de los sistemas de
almacenamiento enormemente, pero la velocidad no se ha incrementado en
la misma proporción. Por ejemplo, la velocidad de acceso a los discos (en la
Figura 1.6, en la pág. 28, puede observarse la disminución del coste), se ha
incrementado en menos de un factor 2, la de las cintas en 3, mientras que la
de la CPU lo ha hecho en varios órdenes de magnitud. Esto es una limitación
grave en el incremento del rendimiento global de los computadores. De
acuerdo con la ley de Amdahl, el incremento global en el rendimiento de un
sistema depende del incremento del rendimiento de cada una de sus partes y
del tiempo que se utilizan éstas. Por tanto, si sólo se mejora el rendimiento
de la CPU, no se produce un incremento proporcional en el rendimiento
global. Y puede deducirse que ignorar la velocidad de almacenamiento de
datos, conduce a mayor pérdida de rendimiento a medida que la CPU se
hace más rápida. Por esta razón, uno de los objetivos tecnológicos actuales
es conseguir sistemas de almacenamiento masivo con menores tiempos de
acceso. Una posible solución son los SSD (Solid State Disks) implementados
con DRAMs y una batería para que sean no volátiles. Pero el problema es el
coste, que es al menos 50 veces el coste de los discos magnéticos. Esto
seguramente conducirá a sistemas con memorias DRAM masivas en el
futuro.
ANEXOS
35
Microprocesador Intel 8008.
BIBLIOGRAFIA
http://www.dacya.ucm.es/hidalgo/estructura/historia
http://es.ccm.net/contents/397-procesador
http://eduardking.mx.tripod.com/cuartagen.htm
http://biblio3.url.edu.gt/Libros/provinciales/computadoras
36