Memoria
Cache
Aunque de origen
inglés [4],
la palabra cache ha tomado carta de naturaleza en Español (no
se si los académicos se habrán enterado de ello, por si acaso, la españolizamos
añadiéndole un acento). Utilizada en informática significa memoria
temporal; generalmente de existencia oculta y automática para el usuario, que
proporciona acceso rápido a los datos de uso más frecuente o
previsible. Por ejemplo, el "Caché" de disco
es un área
de memoria donde el Sistema transfiere los datos que supuestamente serán
accedidos de inmediato. Si leemos un "cluster" [1]
el sistema puede disponer en esta memoria "cache" los clusters que
siguen en la estructura lógica, de forma que, si seguimos efectuando lecturas,
lo más probable es que los próximos datos estén ya en memoria y puedan ser
accedidos de forma inmediata [2.
La utilización de
este tipo de memorias no es sino la generalización de un principio de uso común
en la vida diaria; poner más a mano las cosas de uso más
frecuente. Se basa en dos suposiciones que generalmente resultan ciertas:
- Los ordenadores tienden a utilizar las mismas
instrucciones y (en menor medida), los mismos datos repetidamente.
- La información necesitada se encuentra
almacenada de forma adyacente, o cuando menos muy cercana, en memoria o
disco.
Tipos de cache
Es una innovación
relativamente reciente [3];
en realidad son dos, cada una con una misión específica: Una
para datos y otra para instrucciones. Están incluidas en el procesador
junto con su circuitería de control, lo que significa tres cosas:
comparativamente es muy cara; extremadamente rápida, y limitada en
tamaño (en cada una de las cachés internas, los 386 tenían 8 KB; el 486 DX4 16
KB, y los primeros Pentium 8 KB). Como puede suponerse, su velocidad de
acceso es comparable a la de los registros, es decir, centenares de veces más
rápida que la RAM.
Es más antigua que
la interna, dado que hasta fecha "relativamente" reciente estas
últimas eran impracticables. Es una memoria de acceso rápido incluida en
la placa base, que dispone de su propio bus y controlador independiente que
intercepta las llamadas a memoria antes que sean enviadas a la RAM (
H2.2
Buses locales).
La caché
externa típica es un banco SRAM ("Static Random Access
Memory") de entre 128 y 256 KB. Esta memoria es considerablemente más
rápida que la DRAM ("Dynamic Random Access Memory") convencional,
aunque también mucho más cara [5]
(tenga en cuenta que un aumento de tamaño sobre los valores anteriores
no incrementa proporcionalmente
la eficacia de la memoria caché). Actualmente (2004) la tendencia es
incluir esta caché en el procesador. Los tamaños típicos oscilan entre
256 KB y 1 MB.
Además de las
anteriores, que son de propósito general, existe una caché de funcionalidad
específica que se aloja en memoria RAM estándar. Es la caché de disco (nos
hemos referido a ella en la introducción de este epígrafe), destinada a
contener los datos de disco que probablemente sean necesitados en un futuro
próximo y los que deben ser escritos. Si la información requerida está en
chaché, se ahorra un acceso a disco, lo que es centenares de veces más rápido
(recuerde que los tiempos de acceso a RAM se miden en nanosegundos y los de
disco en milisegundos
E1.7.1
Unidades de medida).
El funcionamiento
de la caché de disco se basa en dos esquemas de operación. La lectura
adelantada ("Read-ahead") y la escritura retrasada ("Write-behind").
La primera consiste en anticipar lo que se necesitará de forma inmediata y
traerlo a la caché. Por su parte, la escritura retrasada consiste en
mantener los datos en caché hasta que se producen momentos de desocupación del
sistema de disco. En este caso la caché actúa como memoria tampón o
"buffer" intermedio, y no se obliga al subsistema a realizar
físicamente ninguna escritura, con lo que las cabezas quedan libres para nuevas
lecturas.
Puesto que los
cachés de disco de escritura retrasada mantienen los datos en memoria volátil
después que "supuestamente" se han escrito en el dispositivo,
una caída accidental del sistema, por fallo de energía o apagado intempestivo,
puede producir pérdidas de los datos alojados en la caché en ese momento (es
esta una de las razones por las que los sistemas Windows y Linux exigen un
proceso especial de apagado, que a veces tarda unos segundos, en los que
observamos una intensa actividad del sistema de disco).
Caché
de disco en MS DOS y Windows
La cache de los
sistemas MS DOS y de los primeros sistemas Windows se denominaba SmartDrive.
Por su parte, los nuevos Sistemas de 32 bits disponen de un controlador virtual
denominadoVCACHE que utiliza un esquema de funcionamiento de lectura
adelantada y escritura atrasada
para
proporcionar servicios de cache a las máquinas virtuales (
E0.2).
VCACHE tiene la
ventaja cachear ficheros en discos de red, y de permitir cambiar en tiempo de
ejecución la cantidad de memoria destinada a este menester. Cuando la
actividad del disco es elevada pero la ocupación de memoria es baja, VCACHE
incrementa su tamaño para realizar la mayor cantidad de operación en RAM,
evitando de este modo accesos a disco. Por ejemplo, si la aplicación abre
un fichero para lectura/escritura, es posible que VCACHE vuelque la totalidad
del fichero a memoria; posteriormente, quizás cuando se cierre el fichero, la
imagen de memoria sea volcada de nuevo al disco. Si por el contrario la
actividad de disco es pequeña y la ocupación de memoria es alta, VCACHE
disminuye su propio tamaño con objeto de aumentar la RAM disponible para las
aplicaciones.
En la terminología
C++ los flujos que son cacheados se denominan "buffered". A
este respecto, los compiladores C/C++ disponen de su propio sistema de caché
para ficheros de disco. Esta caché se denomina de ejecución (runtime),
para distinguirla de la caché del Sistema. Así mismo,
disponen de recursos en la Librería Estándar para forzar su vaciado en caso
necesario; para esto se recurre a la funciones fflush (para
ficheros abiertos con fopen) y flush (para los
flujos de salida, "ostreams").
Sin embargo, no
olvide que el vaciado de la caché del compilador se realiza sobre la del
Sistema, que está por debajo (recuerde que el Software tiene una estructura de
capas
E1.7w1),
y que el SO decide por su cuenta cuando es el momento oportuno para realizar
físicamente la escritura de los discos. Esto significa que una seguridad
total solo se alcanza forzando la escritura de la caché del Sistema, y esto
naturalmente depende de la plataforma utilizada.
Imágenes de algunas memoria
cache
Caché
interna
Caché
externa
Caché
de disco
Los coprocesadores matemáticos
Un coprocesador es
un microprocesador de
un ordenador utilizado
como suplemento de las funciones del procesador principal (la CPU).
Las operaciones ejecutadas por uno de estos coprocesadores pueden ser
operaciones de aritmética en coma flotante, procesamiento
gráfico,procesamiento de señales,
procesado de texto o Criptografía, etc. Y su función es
evitar que el procesador principal tenga que realizar estas tareas de cómputo
intensivo, estos coprocesadores pueden acelerar el rendimiento del sistema por
el hecho de esta descarga de trabajo en el procesador principal y porque suelen
ser procesadores especializados que realizan las tareas para las que están
diseñado más eficientemente. Además estos coprocesadores permiten a los compradores de
ordenadores personalizar su equipamiento ya que sólo tendrán que pagar ese
hardware específico quienes deseen o necesiten tener el rendimiento extra
ofrecido por estos dispositivos.
Los
coprocesadores fueron vistos por primera vez en los mainframes donde
se añadían para funcionalidad opcional como el soporte matemático para punto flotante, otro uso muy común era
para el control de los canales de Entrada/Salida, aunque
este dispositivo se conocía normalmente como controlador de canal,
un ejemplo de estos dispositivos lo tenemos en los controladores DMA.
Los
coprocesadores también comenzaron a hacerse comunes en los ordenadores de
escritorio a través de los 1980s y
a principios de los 1990s debido
a las limitaciones del diseño de la CPU y consideraciones de coste. El coprocesador
matemático fue
un extra común para los ordenadores de gama alta como
el Macintosh II y
muchas estaciones de trabajo que
requerían capacidades de aritmética en coma flotante, pero hasta principios de
los 90 la demanda de estos dispositivos fue mínimo. Otro coprocesador que
empezó a ser común durante esta era fue el coprocesador gráfico, usado por la Familia Atari de 8 bits y
el Commodore Amiga. El procesador gráfico en
los Commodore era denominado habitualmente como "Copper".
Finalmente,
el coste de los coprocesadores matemáticos fue lo suficientemente bajo para
incluir en el microprocesador de propósito general (CPU)
las funciones del coprocesador matemático eliminando, de este modo, los
componentes separados. La demanda de coprocesador gráfico dedicado también ha
crecido, sin embargo, debido a la alta demanda de procesamiento gráfico por
parte de los videojuegos de
ordenador que requieren gráficos 3D por computadora muy
reales; este procesador dedicado elimina una considerable carga computacional a
la CPU principal e incrementa el rendimiento en las aplicaciones gráficas
intensivas. A partir del año 2000,
las tarjetas gráficas con
una Unidad de Procesado de Gráfico (GPU)
son comunes. Las tarjetas de sonidoactuales
también vienen con un potente procesador incluido con extensiones multimedia
para eliminar tiempo de cómputo en al procesador principal. En 2006, AGEIA anunció
otra tarjeta de expansión para
ordenadores llamada PhysX,
este dispositivo tiene un procesador integrado diseñado para ejecutar
computación de los aspectos físicos de los escenarios 3D liberando
de esta carga a la CPU y GPU. Está diseñado para trabajar con videojuegos, pero
teóricamente se podrán ejecutar otras tareas matemáticas en él.
Su función
es:
El coprocesador matemático es un
procesador especial que sirve como complemento del microprocesador principal.
El coprocesador matemático puede encargarse de operaciones como la aritmética de punto flotante, gráficos, procesamiento de señales, procesamiento de cadenas, encriptación, del filtro de Savitzky–Golay (método para cálculo de derivadas), etc.
Por lo tanto, el coprocesador no es un procesador de propósito general. Algunos coprocesadores no pueden buscar instrucciones desde la memoria, ejecutar instrucciones de control de flujo, hacer operaciones de entrada/salida, administrar la memoria, entre otras cosas, que sí pueden hacer los procesadores de propósito general.
El coprocesador depende de un procesador anfitrión o "host" para entregarle instrucciones al coprocesador.
De todas maneras, en algunas arquitecturas, el coprocesador tiene un funcionamiento más de propósito general, pero con un limitado rango de funciones y siempre bajo la supervisión del procesador principal.
El uso de coprocesadores disminuyó debido a la dificultad de integrar este con los nuevos microprocesadores de altas velocidades. De todas maneras hay un resurgimiento de estos, especialmente para aquellos dedicados a los gráficos, que cada vez son más complejos en los juegos.
El coprocesador matemático puede encargarse de operaciones como la aritmética de punto flotante, gráficos, procesamiento de señales, procesamiento de cadenas, encriptación, del filtro de Savitzky–Golay (método para cálculo de derivadas), etc.
Por lo tanto, el coprocesador no es un procesador de propósito general. Algunos coprocesadores no pueden buscar instrucciones desde la memoria, ejecutar instrucciones de control de flujo, hacer operaciones de entrada/salida, administrar la memoria, entre otras cosas, que sí pueden hacer los procesadores de propósito general.
El coprocesador depende de un procesador anfitrión o "host" para entregarle instrucciones al coprocesador.
De todas maneras, en algunas arquitecturas, el coprocesador tiene un funcionamiento más de propósito general, pero con un limitado rango de funciones y siempre bajo la supervisión del procesador principal.
El uso de coprocesadores disminuyó debido a la dificultad de integrar este con los nuevos microprocesadores de altas velocidades. De todas maneras hay un resurgimiento de estos, especialmente para aquellos dedicados a los gráficos, que cada vez son más complejos en los juegos.
Imagen de coprocesadores matemáticos
CPU
usadas en computadoras personales
Las
dos empresas más grandes en el mercado de las CPU para PC son Intel y Motorola.
Intel ha disfrutado de un tremendo éxito con sus procesadores desde principios
de la década de 1980. La mayor parte de las PC es controlada por procesadores
Intel. La principal excepción a esta regla es la Macintosh. Todas las Mac
usan chips fabricados por Motorola. Además, varias firmas, como AMD (Advanced
Micro Devices) y Cyrix, hacen procesadores que imitan la funcionalidad de los
chips de Intel. Otras diversas compañías fabrican chips para estaciones de
trabajo PC.
Los procesadores Intel
Intel
Corporation es el más grande fabricante de microchips en el mundo, además de ser
el principal proveedor de chips para PC. De hecho, Intel inventó el
microprocesador; llamado la "computadora en un chip", en 1971, con el
modelo 4004. Este invento condujo a las primeras microcomputadoras que
empezaron a aparecer en 1975. Sin embargo, el éxito de Intel en este mercado no
estuvo garantizado hasta 1981, cuando IBM introdujo la primera IBM PC, la cual
estaba basada en el Intel 8088. Desde entonces, todas las máquinas IBM y las
compatibles basadas en el diseño de IBM han sido creadas alrededor de chips
Intel. Aunque el 8088 fue el primer chip usado en una IBM PC, en realidad IBM
usó un chip anterior, el 8086, en un modelo subsecuente, llamado IBM PC XT. Los
chips que vinieron después -el 286, 386, 486, la línea Pentium y Pentium II-
corresponden a ciertas normas de diseño establecidas por el 8086. Con
frecuencia se hace referencia a esta línea de chips como la línea 80x86.
El
aumento constante en el tamaño del bus, el tamaño del registro y la memoria
direccionable ha sido acompañado también por incrementos en la velocidad de
reloj. Por ejemplo, el reloj conectado a la primera PC corría a 4.77 MHz,
mientras que las velocidades de reloj para chips Pentium iniciaron a 60 MHz en
1993 y crecieron con rapidez a 100, 120, 133, 150 y 166 MHz. Los chips Pentium
II tienen velocidades de 233, 266, 300, 350, 400 MHz y superiores.
Estas estadísticas,
sin embargo, reflejan todas las mejoras que se han hecho. El diseño básico de
cada chip, conocido como la arquitectura, ha crecido en forma constante en sofisticación
y complejidad. Por ejemplo, la arquitectura del 386 contenía 320 000
transistores, y el 486 contenía 1.2 millones. Con el Pentium, ese número creció
a más de 3.1 millones, y la arquitectura de la Pentium Pro llevó el número
total de transistores en el chip a 5.5 millones. La arquitectura del Pentium II
incluye la sorprendente cantidad de 7.5 millones de transistores.
La
creciente complejidad de la aquitectura permitió a Intel incorporar algunas
técnicas complejas para el procesamiento. Una mejora importante que llegó con
el 386 se llama modo 8086 virtual. Es este modo, un solo chip 386 podía lograr
el poder de procesamiento de 16 chips 8086 separados cada uno corriendo una
copia separada del sistema operativo. La capacidad del modo 8086 virtual
permitía a un solo chip 386 correr diferentes programas al mismo tiempo,
técnica conocida como multitarea. Todos los chips que siguieron al 386 han
tenido capacidad multitarea.
Los
486
Introducido
en 1989, el 80486 no presentaba ninguna tecnología nueva de procesador. En
cambio, combinaba un procesador 386, un coprocesador matemático y un
controlador de memoria caché en un solo chip. Debido a que estos chips ya no
estaban separados, ya no tenían que comunicarse por el bus. Esta innovación
incrementó la velocidad del sistema asombrosamente.
Los
Pentium
El
siguiente miembro de la familia Intel de microprocesadores fue el Pentium,
introducido en 1993. Con el Pentium, Intel rompió su tradición de nombres
numéricos de los modelos, en parte para prevenir que otros fabricantes de chips
usaran nombres numéricos parecidos, lo cual implicaba que sus productos eran
idénticos desde el punto de vista funcional a los chips de Intel. El Pentium,
sin embargo, aún se considera parte de la serie 80X86.
El
chip Pentium fue otro salto para los microprocesadores. La velocidad y poder
del Pentium empequeñeció a todos sus predecesores en la línea Intel. En
términos prácticos, esto significa que el Pentium corre programas de
aplicaciones aproximadamente cinco veces más rápido que una 486 con la misma
velocidad de reloj. Parte de la velocidad del Pentium viene de una
arquitectura superescalar, la cual permite al chip procesar más de
una instrucción en un solo ciclo de reloj.
Los
Pentium Pro
Introducido
en 1995, el Pentium Pro reflejó aún más adelantos de diseño.
El Pentium Pro puede procesar tres instrucciones en un solo ciclo de reloj, una
más que el Pentium. Además, el Pentium Pro puede lograr velocidades de reloj
más rápidas.
Intel
acuñó la frase "ejecución dinámica" para describir la capacidad del
chip para ejecutar instrucciones de programa de la manera más eficiente, no
necesariamente en el orden en el cual fueron escritas. Esta ejecución fuera de
orden significa que las instrucciones que no pueden ser ejecutadas de inmediato
son dejadas de lado mientras el Pentium Pro empieza a procesar otras
instrucciones.
Pentium
con tecnología MMX
El
Pentium también soporta una tecnología llamada MMX. MMX incluye
tres mejoras en el diseño arquitectónico principal: nuevas instrucciones,
procesos SIMD y caché adicional. MMX incluye un conjunto de 57 instrucciones
que incrementan las capacidades multimedia de un chip de computadora. Estas
instrucciones procesan sonido, video y datos gráficos con más eficiencia que un
procesador que no es MMX. El proceso MMX de datos múltiples en una sola
instrucción (Single Instruction Multiple Data: SIMD) permite que una
instrucción realice la misma función en múltiples piezas de datos, reduciendo
el número de ciclos requeridos para manejar video, sonido, animación y datos
gráficos.
Los
Pentium II
La
serie Pentium más reciente de procesadores de Intel es el Pentium II.
Presentado en el verano de 1997, el Pentium II tiene 7.5 millones de
transistores y una ejecución promedio de 233 MHz, 266 MHz, 300 MHz, 333 MHz,
350 MHz, 400 MHz y superiores. Como el Pentium Pro, el Pentium II soporta
tecnología MMX y ejecución dinámica. El Pentium II difiere de otros modelos
Pentium en que éste viene dentro de un cartucho de plástico y metal en lugar
del formato de oblea usado por otros chips. Esto se debe al nuevo esquema de
conexión Conector de Borde Único (Single Edge Connector) del
Pentium II. En lugar de conectarse en la ranura de chip regular en su tarjeta
madre, el Pentium II se conecta en una ranura especial llamada Ranura Uno
(llamada Conector de Borde Único), el cual requiere un nuevo diseño de tarjeta
madre. Dentro del cartucho del Pentium II está el procesador central y el chip
de caché L2, lo que permite operaciones de alto rendimiento.
En
1998, Intel expandió la familia Pentium II al anunciar dos nuevos procesadores,
Celeron y Xeon, los cuales adaptaban la tecnología del Pentium II para nuevos
mercados. El procesador Celeron ofrece muchas de las
capacidades del Pentium II, pero opera a velocidades ligeramente menores y está
diseñado para computadoras personales en un nivel de entrada con precios en el
rango de los 1 000 dólares. El Pentium II Xeon incorpora una
caché de nivel 2 mayor en el procesador y ofrece capacidades de
multiprocesamiento aumentadas. El Xeon está diseñado para uso en computadoras
de servidores de red y estaciones de trabajo.
Los competidores de Intel
Advanced
Micro Devices (AMD) y Cyrix son
los dos competidores principales del dominio de Intel. Usted por lo general
encontrará procesadores AMD y Cyrix en computadoras del extremo inferior; de
precios bajos, para el hogar y pequeños negocios que se venden por menos de 1
000 dólares.
AMD
tiene tres líneas de procesadores. La línea de procesadores 5x86,
que tiene una velocidad de reloj de 133 MHz y es más o menos equivalente al
chip Pentium a 75 MHz. El chip K5 de AMD es un procesador de
clase Pentium y viene en versiones de 100 MHz y 116.7 MHz. Estos chips son
equivalentes a los procesadores Pentium de 133 MHz y 166 MHz, respectivamente.
Uno de los procesadores AMD más rápidos es el chip K6. Este chip
soporta la tecnología Intel MMX (las otras dos líneas de AMD no lo hacen) y
vienen en velocidades de 166 MHz, 200 MHz, 233 MHz, 266 MHz, 300 MHz y
superiores. La línea K6 de chips es comparable a la línea Pentium Pro
de procesadores de la misma velocidad de reloj.
Cyrix
originalmente empezó como un fabricante de coprocesadores matemáticos en 1988.
Ahora trabaja con IBM Microelectronics y SGS-Thomson para fabricar chips en dos
líneas principales. El procesador MediaGX. introducido en febrero
de 1997, integra funciones de sonido y gráficos y viene en velocidades de hasta
233 MHz. La Arquitectura de Sistema Virtual (Virtual System
Architecture: VSA) combina la tecnología de un controlador de memoria,
tarjeta de video y tarjeta de sonido en el procesador MediaGX. Un ejemplo de
una PC que usa el procesador MediaGX es la PC Compaq Presario 2100. El
procesador Cyrix 6x86MX es compatible con MMX y viene en versiones de 133 MHz,
150 MHz, 188 MHz y 208 MHz. El Cyrix MII ofrece rendimiento de clase Pentium
II.
Los procesadores Motorola
Motorola
Corporation es el otro fabricante importante de microprocesadores para
computadoras pequeñas. Como se mencionó antes, las computadoras Macintosh de
Apple usan procesadores Motorola. Otros fabricantes de computadoras, que
incluyen fabricantes de estaciones de trabajo, como Sun Microsystems, también
se han basado en los chips Motorola. Motorola fue una de las primeras favoritas
entre las compañías que construían computadoras grandes, basadas en UNIX, como
la serie NCR Tower y la serie AT&T 3B.
Motorola
ofrece dos familias de chips procesadores. La primera es conocida como la
"familia 680x0" similar al grupo de procesadores para PC de Intel
conocido como la "familia 80x86". La segunda, denominada MPC, tiene
una arquitectura diferente y es conocida como la familia PowerPC.
La
serie 680x0
Aunque
el chip 68000 es mejor conocido como el fundamento de la Macintosh original, en
realidad precede a la MAC por varios años. De hecho, IBM consideró usar el
68000 en la primera IBM PC. (La decisión de IBM de usar el chip 8088 de Intel
en su primera PC al parecer fue tomada por consideraciones de costos.) Aunque
el chip 68000 de Motorola era más potente que el 8088 de Intel, las mejoras
subsecuentes al chip Motorola se hicieron en incrementos más pequeños en comparación
con los saltos gigantes en rendimiento de Intel. Para cuando Motorola introdujo
el chip 68060, Intel estaba promoviendo el Pentium. En un intento por recuperar
su participación en el mercado, Motorola inició el desarrollo del nuevo chip
PowerPC.
La
serie PowerPC
El
chip PowerPC tuvo un comienzo inusual. Dos rivales de la industria, IBM y
Apple, unieron fuerzas con Motorola en 1991 de manera ostensible para destronar
a Intel de su predominio en el mercado de chips para PC. La porción de hardware
de sus esfuerzos se enfocó en el chip PowerPC, el primero de los cuales fue el
601. Pisándole los talones salió el 603, un procesador de bajo poder adecuado
para computadoras notebook. Su sucesor, el 604 y 604e, es un chip de alto poder
diseñado para sistemas de escritorio de alto rendimiento. Con la introducción
del 620 a fines de 1995, los chips PowerPC establecieron una nueva marca de
rendimiento para microprocesadores. Un puñado de máquinas pequeñas basadas en
el 620 trabajando juntas ofrece casi el mismo poder de cómputo que una
mainframe IBM 370. El chip PowerPC 750 (266MHz) fue introducido para
computadoras de escritorio y portátiles que necesitan poder de cómputo
significativo en un procesador de bajo voltaje. El PowerPC 750 fue diseñado
para multimedia, pequeños negocios y aplicaciones portátiles. El nuevo chip G3
proporciona aún más poder para tales aplicaciones. Como se verá en la siguiente
sección, los chips PowerPC y G3 son por completo diferentes de la primera serie
68000.
Ambas
familias, la Motorola 680x0 y la Intel 80x86, tienen procesadores de cómputo
de conjunto de instrucciones complejas (complex instructions set computing:
CISC). Los conjuntos de instrucciones para estas CPUs son grandes, pues
contienen por lo general de 200 a 300 instrucciones.
Procesadores RISC
Una
teoría más reciente en el diseño de microprocesadores sostiene que si el
conjunto de instrucciones para la CPU se mantiene pequeño y simple, cada
instrucción se ejecutará mucho más rápido, lo que permitirá al procesador
completar más instrucciones durante un periodo dado. Las CPU diseñadas de
acuerdo con esta teoría se llaman procesadores de cómputo con conjunto
de instrucciones reducidas (reduced instruction set computing: RISC). El
diseño RISC, que se usa en el PowerPC (aunque fue usado por primera vez a
mediados de la década de 1980), dio como resultado un procesador más rápido y
más barato. Debido a la forma en que el Pentium Pro y sus satélites procesan
instrucciones, son llamados tipo RISC, pero su arquitectura aún se basa en el
cómputo de conjunto de instrucciones complejas.
La
tecnología RISC ha sido el motor de las computadoras de tamaño mediano como la
IBM RS/6000 y las estaciones de trabajo UNIX de alto rendimiento como las
construidas por Sun Microsystems, Hewlett-Packard y NCR. Las CPU RISC también
se encuentran en impresoras y otros dispositivos que tienen sus propias CPU
internas. Los procesadores PowerPC y G3 reflejan un movimiento importante de
parte de los gigantes de la industria hacia el uso de tecnología RISC en
computadoras de escritorio y notebooks.
Motorola
no está sola en la producción de procesadores RISC y CISC. En 1989, Intel
introdujo el i860, el cual tenía un chip RISC de 64 bits, que fue el primer
chip en contener más de un millón de transistores. Otros procesadores RISC
incluyen el Intel i960, el Motorola 88100, la serie VR4000 de NEC Electronics y
el Alpha de DEC. Sun Microsystems también produce un procesador RISC, conocido
SPARC, que usa en sus estaciones de trabajo UNIX. Los miembros de la familia
NEC VR4000 están pensados para ser usados por el mismo rango de computadoras
que los chips PowerPC; es decir; por máquinas desde notebook hasta sistemas de
alto rendimiento. Por otra parte, el procesador VR4111 de NEC, está proyectando
para dispositivos alimentados por baterías, como las PC de bolsillo y de
cartera.
Aún
no se determina si la tecnología CISC o la RISC será la base de la mayor parte
de los microprocesadores del futuro, pero las primeras apuestas son para
modelos de chips RISC con consumo de energía reducido.
Procesamiento paralelo
Otra
corriente de pensamiento sobre la producción de computadoras más rápidas es
construirlas con más de un procesador. Ésta no es una idea nueva en el campo de
las mainframes y las supercomputadoras. De hecho, la IBM 3090 tenía de dos a
cuatro procesadores, y la Cray X MP 4 tenía cuatro procesadores. Algunas
compañías están desarollando computadoras con 256, 512 e incluso miles de
microprocesadores, conocidos como procesadores paralelos masivos
(massively parallel processors: MPP). Por ejemplo, Intel, junto con el
Laboratorio Nacional Sandia del Departamento de Energía de Estados Unidos,
construyó lo que se conoce como "la supercomputadora más rápida del
mundo". Ésta incluye más de 7 200 procesadores Pentium Pro y alcanza
velocidades de 1.06 teraflops, es decir, billones de operaciones de punto
flotante por segundo. (El récord anterior era de 386.2 gigaflops, o sea, mil
millones de operaciones por segundo.)
En
el otro extremo del espectro, en la actualidad se dispone de versiones de PC
con procesador doble y procesador cuádruple. Por desgracia, el sistema
operativo DOS no puede usar un procesador adicional. Algunos programadores en
UNIX, sin embargo, han desarrollado software basado en un procesador adicional.
Uno de los sistemas operativos de Microsoft, Windows NT, también puede usar
computadoras de procesamiento paralelo. Estas computadoras con frecuencia están
basadas en el Pentium Pro, y lucen como una PC de escritorio ordinaria.
Imágenes
de los procesadores:
Intel.
Motorola.
RISC.
Advanced
Micro Devices
Advanced Micro Devices, Inc. (NYSE: AMD) o AMD es una compañía estadounidense de semiconductores establecida en Sunnyvale,California, que desarrolla procesadores de cómputo y productos tecnológicos
relacionados para el mercado de consumo. Sus productos principales incluyen microprocesadores, chipsets para placas base, circuitos integrados auxiliares, procesadores
embebidos y procesadores gráficos para servidores, estaciones
de trabajo, computadores
personales y aplicaciones para sistemas embedidos.
AMD es el segundo
proveedor de microprocesadores basados en la arquitectura x86 y también uno de los más grandes
fabricantes de unidades de procesamiento gráfico.
Historia de lanzamientos al mercado
8086, Am286, Am386, Am486, Am5x86
En 1982 AMD firmó un contrato con Intel,
convirtiéndose en otro fabricante licenciatario de procesadores 8086 y 8088, esto
porque IBM quería usar Intel 8088 en sus IBM PC, pero las políticas de IBM de la época exigían al menos
dos proveedores para sus chips. AMD produjo después, bajo el mismo acuerdo,
procesadores 80286, o 286, pero Intel
canceló el contrato en 1986,
rehusándose a revelar detalles técnicos del i386. La creciente popularidad del
mercado de los clones de PC significaba que Intel podría producir CPUs según
sus propios términos y no según los de IBM.
AMD apeló esa decisión y posteriormente ganó
bajo arbitraje judicial. Comenzó un largo proceso judicial que solo acabaría en 1991, cuando la
Suprema Corte de California finalmente
falló a favor de AMD, y forzó a Intel a pagar más de 1000 millones de dólares
en compensación por violación de contrato. Disputas legales subsiguientes se
centraron en si AMD tenía o no derechos legales de usar derivados del microcódigo de
Intel. Los fallos fueron favoreciendo a las dos partes. En vista de la
incertidumbre, AMD se vio forzado a desarrollar versiones "en limpio"
del código de Intel. Así, mientras un equipo de ingeniería describía las
funciones del código, un segundo equipo sin acceso al código original debía
desarrollar microcódigo que realizara las mismas funciones.
Llegado este punto, Jerry Sanders bien pudo
retirarse del mercado. Pero en 1991 AMD lanza el Am386, su clon
del procesador Intel 80386. En menos de un año AMD vendió un millón de unidades. El
386DX-40 de AMD fue muy popular entre los pequeños fabricantes independientes.
Luego, en 1993 llegó Am486 que, al igual que su antecesor se vendió a un
precio significativamente menor que las versiones de Intel. Am486 fue utilizado
en numerosos equipos OEM e incluso por Compaq probando
su popularidad. Pero nuevamente se trataba de un clon de la tecnología Intel; y
a medida que los ciclos de la industria de las PC se acortaban, seguir clonando
productos de Intel era una estrategia cada vez menos viable dado que AMD
siempre estaría tras Intel.
El 30 de diciembre de 1994, la Suprema
Corte de California finalmente negó a AMD el derecho de usar microcódigo de
i386. Posteriormente, un acuerdo entre las dos empresas (cuyos términos aun
siguen en el mayor de los secretos) permitió a AMD producir y vender
microprocesadores con microcódigo de Intel 286, 386, y 486. El acuerdo parece
haber permitido algunos licenciamientos cruzados de patentes, permitiendo a
ambas partes el uso de innovaciones tecnológicas sin pago de derechos. Más allá
de los detalles concretos del acuerdo, desde entonces no hubo acciones legales
significativas entre las empresas.
K5, K6,
Athlon, Duron y Sempron[
El primer procesador x86 completamente
fabricado por AMD fue el K5 lanzado en 1996. La "K" es una referencia
a la kriptonita, que según
de la tradición del cómic, es la única sustancia, que puede perjudicar a
Superman, una clara referencia a Intel, que dominaba en el mercado en ese
momento, como "Superman". El número "5" se refiere a la
quinta generación de procesadores, en la cual Intel introdujo el nombre Pentium
debido a que la Oficina de Patentes de los EE.UU. dictaminó que un sólo número
no podía ser registrado como marca.
En 1996, AMD adquirió NexGen principalmente
por los derechos de la serie NX de procesadores compatibles con x86. AMD dio al
equipo de diseño de NexGen un edificio propio, los dejó solos, y les dio tiempo
y dinero para reelaborar el Nx686. El resultado fue el procesador K6,
introducido en 1997. Aunque el K6 se basó en el Socket 7, algunas
versiones como el K6-3/450 fueron más rápidas que el Pentium II de Intel
(procesador de sexta generación).
El K7 es el procesador de séptima generación
x86 de AMD, haciendo su debut el 23 de junio de 1999, bajo la marca Athlon. A
diferencia de los procesadores anteriores de AMD, no podría ser utilizado en
las mismas tarjetas madre, debido a problemas de licencia sobre el Slot 1 de
Intel, AMD decide entonces usar como nombre la letra "A" que hace
referencia al bus del procesador Alpha. Duron fue una versión limitada y de menor costo del
Athlon (64KB en lugar de 256KB L2 de caché) con un socket de 462-pin PGA (Socket A) o soldado
directamente a la tarjeta madre.Sempron fue
lanzado como un procesador Athlon XP de menor costo sustituyendo al Duron en el
socket "A" PGA, desde entonces se ha mantenido y actualizado esta
línea hasta el socketAM3.
El 9 de octubre de 2001, fue lanzado el Athlon XP, seguido
por el Athlon XP con 512 KB de caché L2 el 10 de febrero de 2003.
AMD64 / K8
K8 es una gran revisión de la arquitectura
K7, cuya mejora más notable es el agregado de extensiones de 64 bit sobre el conjunto
de instrucciones x86. Esto es
importante para AMD puesto que marca un intento de definir el estándar x86 e
imponerse, en vez de seguir los estándares marcados por Intel. Y al respecto,
AMD ha tenido éxito. La historia ha dado un giro y Microsoft adoptó
el conjunto de instrucciones de AMD, dejando a Intel el trabajo de ingeniería
inversa de las especificaciones de AMD (EM64T). Otras
características notables de K8 son el aumento de los registros de propósito
general (de 8 a 16 registros), la arquitectura Direct Connect Architecture y el
uso de HyperTransport.
El proyecto AMD64 puede ser la culminación de
la visionaria estrategia de Jerry Sanders, cuya meta corporativa para AMD fue
la de convertirla en una poderosa empresa de investigación por derecho propio,
y no sólo una fábrica de clones de bajo precio, con estrechos márgenes de
ganancia.
AMD Opteron es la
versión para servidores corporativos de K8; y aunque fue concebida por la
compañía para competir contra la línea IA-64 Itanium de
Intel, dados los bajos volúmenes de venta y producción de esta última, compite
actualmente con la línea Xeon de Intel.
Dual-core
Athlon 64 X2
Turion 64[editar]
El procesador AMD Turion 64 es una
versión de bajo consumo del procesador AMD Athlon 64 destinada
a los ordenadores portátiles, que salieron a competir contra la tecnología Centrino deIntel. Se
presentan en dos series, ML con un consumo máximo de 35 W y MT con un consumo
de 25 W, frente a los 27 W del Intel Pentium M.
Phenom (K10)
En noviembre de 2006, AMD hace público el
desarrollo de su nuevo procesador con nombre código "Barcelona",
lanzado a mediados del 2007. Con este procesador se da inicio a la arquitectura
K8L.
Tras el dominio total de Intel con su
arquitectura "CORE", AMD tuvo que re-diseñar su tecnología de
producción y finalmente dar el salto a los 65nm y a los Quad Core nativos, a
diferencia de los Quad FX, que son 2 dual core en una misma placa madre. Un
Quad core nativo (Monolítico), quiere decir que los cuatro núcleos del
procesador son totalmente independientes entre sí, a diferencia de los
"Kentsfield" (2 "Conroe") y
los "Clovertown" (2 Kentsfield) de Intel, y de los Quad FX del
propio AMD. Los primeros procesadores en usar el núcleo Barcelona, serán los
Quad Core Opteron.
Características
·
Proceso de fabricación de 65nm.
·
Configuración y compatibilidad para
plataformas multi-socket (4x4).
·
2MB de cache L3. (Compartido para los 4
núcleos).
·
512KB de cache L2. (Para cada núcleo).
·
Hyper Transport 3.0
·
Soporte para memorias DDR3.
·
Soporte para instrucciones extendidas SSE4.
Athlon II y
Phenom II
Finalmente, AMD pasó los 65nm a los 45nm en
la fabricación con sus nuevos AMD Athlon II y Phenom II. Ambos emplean tanto
Socket AM2+ como AM3, teniendo de esta manera, soporte para DDR3.
·
En Dual
Core "X2" están los
modelos: 555, 560. (Compatibles
con AM2+ y AM3). Con un TDP
80W. Con algunas placas base, se pueden desbloquear los 2 núcleos a los
Phenom II X2, así pasaría a ser un Phenom II X4, con los 4 núcleos funcionando,
eso es, por que en el proceso de fabricación, si no pasan los test de calidad y
dan algún fallo, deshabilitan los cores, caché y/o similares. Por ejemplo un
Phenom II 965BE de 4 núcleos, le someten a unas pruebas rigurosas, si uno de
sus núcleos tiene fallos, lo deshabilitan y los vende como un modelo inferior.
·
En Quad
Core "X4" están los
modelos: 955BE, 965BE, 970BE.
(Compatibles con AM2+ y AM3). Con
un TDP de 125W en la
revisión C3, también los hay de 140W, pero eran de una revisión anterior,
la C2. Las siglas BE,
significa Black Edition, son los que tienen el multiplicador desbloqueado, para
realizar un mejor overclocking. Estos procesadores son denominado bajo el nombre de Deneb.
·
En Six
Core "X6" están los
modelos: 1055T, 1075T, 1090T,
1100T. (Compatible con AM3). Con
un
·
TDP de 140W. Los procesadores 1090T y 1100T son BE. Estos son denominadosThuban
Fusion,
Bobcat, Bulldozer y Vishera[
Después de la fusión entre AMD y ATI, la
iniciativa con el nombre clave fusión anunció que se unirán a la CPU y la GPU
en algunos de sus chips principales, incluyendo un vínculo PCI Express de 16
carriles mínimo para acomodar periféricos externos PCI Express, lo que elimina
completamente la necesidad de un northbridge en la placa base. En la iniciativa
se ve como parte del procesamiento hecho originalmente en la CPU (por ejemplo,
operaciones de la unidad de punto flotante) es trasladado a la GPU, que está
mejor optimizada para los cálculos, como cálculos de la unidad de punto
flotante. Esta fusión fue dada a conocer por AMD como una unidad de
procesamiento acelerado (APU).19
Llano es ser la segunda APU liberada,20 dirigida
al mercado general.,19 que
incorpora una CPU y GPU en el mismo chip, así como las funciones de
Northbridge, y etiquetados en la nueva línea de tiempo de AMD con el uso de
"Socket FM1 " y memoria DDR3. Estas, sin embargo, no estuvieron
basadas el nuevo núcleo bulldozer y de hecho seria similar al procesador Phenom
II "Deneb" que sirve como procesador de gama alta de AMD, hasta el
lanzamiento de las nuevas piezas de 32 nm. El 28 de septiembre de 2011, AMD
dijo que en el tercer trimestre de 2011 no tendrá un aumento en los ingresos
del 10% como planea antes, debido al problema de la fabricación con los chips
de 32 nm Fusion Llano.21
Bulldozer es el
nombre clave de AMD para el segundo lanzamiento de CPU para procesadores de
escritorio lanzado el 12 de octubre de 2011. Esta microarquitectura familia 15h
es la sucesora de la familia 10h (K10) con microarquitectura y metodología de
diseño M-SPACE. Bulldozer está diseñado desde cero, no es un desarrollo de
procesadores anteriores.22 El
núcleo está dirigido específicamente a los productos de computación con 10-125
vatios de TDP. AMD pretende mejorar dramáticamente la eficiencia en el
desempeño por watt en aplicaciones de computación de alto rendimiento (HPC) con
núcleos Bulldozer.
Vishera es la serie de procesadores de AMD
que sucedió a Bulldozer.
Bobcat es el último núcleo de procesador x86
de AMD destinado a mercado low-power/low-cost.Se puso de manifiesto durante un
discurso del vicepresidente ejecutivo de AMD Henri Richard en Computex 2007 y
se puso en producción Q1 2011.20 Uno
de los principales partidarios fue el vicepresidente ejecutivo Mario A. Rivas
quien consideró que era difícil competir en el mercado x86 con un solo núcleo
optimizado para el rango de 10-100 vatios y promovió activamente el desarrollo
de un núcleo más simple con un rango objetivo de 1-10 watts.
Chips
basados en arquitectura ARM[
AMD tiene previsto lanzar en 2014 un chip ARM
para su uso en servidores como una alternativa a los chips actuales de bajo
consumo x86 como parte de una estrategia para recuperar la cuota de mercado
perdida en el negocio de chips de servidor.18
Iniciativa
50X15[
Consiste en que la mitad de la población
cuente con la capacidad de conectarse a internet para el 2015; esto se logra a
través de concursos entre universidades de varios países donde desarrollan las
mejores soluciones para cada región del planeta basadas en la tecnología de
AMD. Además se cuenta con prestigiosos organismos multilaterales entre los que
podemos encontrar a la FAO y UNICEF
AMD / ATI.
Después de completar la compra de ATI en 2006, AMD se reestructura como la única
empresa en el mundo que provee un abanico de soluciones en todos los ramos de
microprocesadores, tarjetas gráficas y chipsets. Así también se convierte en el
mayor productor mundial de chips para TV, consolas y telefonía móvil en el
mundo, con esto AMD se convierte hoy en día en el mayor rival de Intel en
cuanto a soluciones en semiconductores se refiere.[cita requerida] A finales del 2010 AMD, de la cual ATI es
Filial, anuncio que desde la Serie Radeon HD 6000,23 se
reemplazara la marca ATI por AMD para ayudar a impulsar las plataformas AMD
Vision y AMD Fusion24
Imágenes de algunas empresas:










0 comentarios:
Publicar un comentario