Un poco de historia de los procesadores
POWER
PC
Hay que recordar los origenes para no perder el rumbo, por lo menos en la infomática es muy importante, ya que a veces hay que ver de donde venimos para entender haca donde vamos.
es algo antiguo paro perfectamente extrapolable a nuestros dias, pero era lo que se movia cuando se comenzo a cambiar de powerpc a intel en nuestros mac´s
PowerPC es un
microprocesador basado en el sistema RISC desarrollado conjuntamente por IBM, Apple Computer, y Motorola Corporation, está diseñado para
cumplir con los estándares ISA (instruction set architecture),
permitiendo que cualquiera diseñe y fabrique procesadores
PowerPC, que correrán con el mismo código. Su nombre está
derivado del nombre de IBM para la arquitectura Performance
Optimization With Enhanced RISC, usada en la workstations
RS/6000.
Los primeros
computadores basados sobre PowerPC fueron los PowerMacs, que
aparecieron en 1994. Desde entonces, otras compañías,
incluyendo IBM han construido PCs basados en PowerPC. Aunque
revisiones iniciales han sido buenas, queda por verse si esta
nueva arquitectura puede eventualmente suplantar, o aún
coexistir, con el gran número de computadores basados en Intel
en uso en el mercado.
La arquitectura
PowerPC especifica 32 y 64 bits de datos. Las primeras
implementaciones son de 32 bits, pero las futuras de alta
eficiencia serán de 64 bits. Un PowerPC tiene 32 registros de
propósito general (32 o 64 bits), y 32 registro s de punto
flotante.
Hay ya un
número de diferentes sistemas operativos que corren sobre
computadores basados en PowerPC, incluyendo el sistema operativo
Macintosh (Sistema 7.5 y mayores), Windows NT y OS/2.
HISTORIA
Introducción
IBM comenzó la salida de
los productos RS/6000 en febrero de 1990 [1, 2]. Desarrolló
estos productos en respuesta a las necesidades de cliente de
sitios de trabajo y sistemas del alcance medio con los sistemas
operativos de UNIX.
Los procesadores en estos
productos eran puestas en práctica de la arquitectura del
procesador, una configuración reducida del ordenador del
conjunto de instrucciones de la segunda generación (RISC).
La arquitectura del
procesador incorporó las características comunes a la mayoría
de las otras configuraciones del RISC. Las instrucciones eran una
longitud fija (4 octetos) con formatos constantes, permitiendo un
mecanismo simple el decodificar de la instrucción. Cargar y
salvar las instrucciones proporcionó accesos a toda la memoria.
La configuración proporcionó a un conjunto de los registros de
fines generales (GPRs) el cómputo de punto fijo, incluyendo el
cómputo de los direccionamientos de memoria. Proporcionó a un
conjunto separado de los registros punto flotante (FPRs). Todos
los cómputos extrajeron operandos de la fuente a partir de un
conjunto del registro y pusieron resultados en el mismo conjunto
del registro. La mayoría de las instrucciones realizaron una
operación simple.
Era única entre las
configuraciones existentes del RISC en que fue repartida
funcionalmente, separando las funciones del control de flujo de
programa, el cómputo de punto fijo, y el cómputo de punto
flotante. El repartir de la configuración facilitó la puesta en
práctica de los diseños superescala, en los cuales las unidades
funcionales múltiples ejecutaron en paralelo instrucciones
independientes.
La arquitectura del
procesador divergió algo del camino tomado por la mayoría de
las otras configuraciones del RISC. El objetivo primario de esas
configuraciones era ser suficientemente simple de modo que las
puestas en práctica pudieran tener una duración de ciclo muy
corta, que daría lugar a los procesadores que podrían ejecutar
instrucciones posiblemente más rápidas.
Los diseñadores de la
arquitectura del procesador eligieron reducir al mínimo el
tiempo total requerido para terminar una tarea. El tiempo total
es el producto de tres componentes: la longitud de camino,
número de ciclos necesarios para terminar una instrucción, y la
duración del ciclo.
La carga y almacenamiento
del 20%-30% de las instrucciones ejecutadas por la mayoría de
los programas. Además, muchas aplicaciones manipulan las
matrices, para las cuales el modelo de los accesos de memoria es
a menudo regular (por ejemplo, cada " nth " elemento).
De acuerdo con estas observaciones, los diseñadores incluidos
ponen al día formas de la mayoría de la carga y salvan
instrucciones. (las formas de la actualización realizan el
acceso de memoria y ponen el direccionamiento actualizado en el
registro de direccionamiento bajo). El uso de estas instrucciones
evita la necesidad de un cómputo de direccionamiento separado
después de cada acceso.
Además, una operación
común en muchos algoritmos de cómputo de punto flotante está
agregando un valor al producto de otros dos valores. Esta
observación incitó la inclusión de un punto flotante que
multiplicar-agrega la instrucción, que realiza esta operación.
Las primeras
implementaciones de importancia proporcionaron un funcionamiento
excepcional. El conjunto del procesador (incluyendo el
controlador de la memoria, memoria inmediata de la instrucción,
y memoria inmediata de los datos) consistió en siete o nueve
chips dependiendo del modelo de sistema. El complejo de los
siete-chips proporcionó a una memoria inmediata de los datos de
32KB y el complejo de los nueve-chips proporcionó a una memoria
inmediata de los datos de 64KB. Estos sistemas contuvieron una
memoria inmediata de instrucción de 8KB que sistemas posteriores
ampliaron a 32KB.
Un segundo diseño de
gran importancia del procesador [3] fue hecho posible por los
avances de la tecnología del silicio que permitieron a
diseñadores poner más que millón de transistores en un solo
chip. Este solo diseño del chip del RISC (RSC) integró una
unidad simple de ramificación, una unidad de punto fijo,
una unidad de punto flotante, una memoria inmediata unificada, un
regulador de la memoria, y un regulador de la entrada-salida en
un solo chip de silicio para el uso en los sistemas de escritorio
baratos. La comercialización de los productos que usaban este
procesador comenzó en abril de 1992.
El diseño POWER2, descrito como POWER2: La
generación siguiente de la familia RS/6000 " [ 4 ], entrega
más funcionamiento que los diseños anteriores de poder doblando
el número de las unidades en la ejecución. La salida de los
productos que usaban este procesador comenzó en octubre de 1993.
Crecimiento de la aplicación en el mercado
El funcionamiento no es
la única característica que los clientes consideran al
comprar sistemas informáticos. Compran sistemas para mejorar la
productividad de sus empleados y para reducir gastos de ejecutar
su negocio. Una de las claves para alcanzar estos objetivos es el
número de diversas tareas que los sistemas pueden realizar. Los
clientes prefieren los sistemas para los cuales un amplio rango
de aplicaciones está disponible. Con estos sistemas, los
clientes pueden elegir las aplicaciones basadas en su
funcionamiento, costo, habilidades del empleado, requerimientos
de la integración de la aplicación, y otras necesidades
individuales.
En 1990, cinco
configuraciones del RISC competían en el mercado. Era
inverosímil que los cinco tuvieran éxito en el mercado de
trabajo. El mercado de la aplicación sería menos atractivo a
los creadores de aplicaciones si este va a romperse por cinco
arquitecturas diferentes porque cada versión de una aplicación
atraería a pocos clientes.
Además, los clientes
comenzaron a sentir que los sistemas del multiprocesador
proporcionaron un valor adicional porque ofrecieron una mejor
relación precio - funcionamiento y un rendimiento más
alto que sistemas de un solo procesador. Debido a que las
diferentes firmas comercializadores, Apple, Motorola, y a
la IBM formaron una sociedad en la que se usa una configuración
común derivada de la Nueva arquitectura.
Configuración De PowerPC
Temprano en 1991,
arquitectos del procesador, compiladores, desarrolladores
del sistema operativo, los diseñadores del procesador, los
arquitectos del sistema, y los diseñadores de sistema de las
tres compañías trabajaron juntos para desarrollar una
configuración que resolvería las necesidades de la alianza.
Porque habría sido imposible desarrollar totalmente una nueva
configuración en hora de satisfacer las necesidades de sus
clientes, las compañías decidían utilizar la configuración de
poder como el punto de partida. Realizaron cambios para alcanzar
un número de metas específicas. La configuración tuvo que:
·
Permitir un amplio rango de puestas en práctica, entre los
reguladores económicos y los procesadores de alto rendimiento.
·
Ser suficientemente simple para permitir el diseño de los
procesadores que tienen una duración de ciclo muy corta .
·
Reducir al mínimo los efectos que obstaculizan el diseño de
puestas en práctica superescala agresivas.
·
Incluir las características del multiprocesador.
·
Definir una configuración de 64-bit que sea un conjunto mejorado
de la configuración de 32-bit, proporcionando compatibilidad
binaria de la aplicación para las aplicaciones de 32-bit.
Analizando las
necesidades de aplicaciones y de sistemas operativos, en vista de
que la instrucción típica se mezcla, y examinando rastros de la
aplicación y del sistema operativo, el grupo de Arquitectura
alcanzó un consenso en la definición de la configuración de
PowerPC [ 5 ]. Esta configuración alcanza las metas enumeradas
previamente, con todo permite que los clientes del Power ejecuten
sus aplicaciones existentes en nuevos sistemas y ejecuten nuevas
aplicaciones en sus sistemas existentes.
La arquitectura del
PowerPC incluye la mayoría de las instrucciones principales.
Casi todas las instrucciones excluidas del PowerPc son las
instrucciones que se ejecutan infrecuentemente y el compilador
puede substituir cada instrucción excluida por varias otras
instrucciones que estén en ambas configuraciones. Las
instrucciones excluidas causarán una interrupción del programa
del tipo de la instrucción ilegal en procesadores de PowerPC y
serán emuladas por el sistema operativo de AIX. La mayoría de
las aplicaciones principales beneficiarán el funcionamiento
mejorado de los procesadores nuevos de PowerPC. Otras
aplicaciones que realizan con frecuencia las operaciones, que
utilizan las instrucciones excluidas, producirán resultados
correctos en los sistemas b de PowerPC
La configuración de
PowerPC es una configuración de 64-bit. Esta configuración
amplía tratando el cómputo de punto fijo a 64 dígitos
binarios, y utiliza la conmutación dinámica entre el modo
64-bit y el modo 32-bit. En modo 32-bit, un procesador 64-bit de
PowerPC ejecutará la aplicación compilada para la
configuración 32-bit del subconjunto.
Reducir la configuración de Poder
Además de excluir algunas instrucciones
principales, la configuración de PowerPC también quitó algunos
requisitos no criticos. PowerPC también ganó nuevas
instrucciones y características de terminar la configuración y
de alcanzar las metas fijadas por el grupo de arquitectura. El
grupo de Arquitectura identificó las características de la
configuración de poder que eran demasiado restrictivas,
demasiado pesadas, y no rentables. Esto dio lugar a la exclusión
de 32 instrucciones por las razones descritas en el resto
de esta sección. La configuración de poder contuvo un registro
de MQ que tenía dos características que podrían complicar un
diseño a gran escala: el uso del registro era implícito, y era
un solo recurso. El registro de MQ habría requerido la
instrucción que envía la función en un diseño agresivo para
identificar todas las instrucciones que utilizan el MQ y para
poner un mecanismo en ejecución de retitulación especial para
él. Las funciones proporcionadas por el MQ no alinearon la
complejidad agregada. La exclusión del MQ dio lugar a la
exclusión de 15 instrucciones de rotación de extensión-precisión,
dos dividen instrucciones, y una extensión-precisión multiplica
la instrucción.
Varias instrucciones de
la configuración de poder habrían hecho los diseños futuros
del procesador considerablemente más complejo. Tres de poder de
punto fijo rotar-insertan instrucciones requirieron tres
operandos. La necesidad de un operando adicional habría
podido requerir un acceso adicional del fichero del registro y
habría aumentado drásticamente la complejidad del mecanismo de
retitulación en un diseño de gran magnitud. Dos instrucciones
que computaban valores absolutos, y dos otras que realizaron
restar con un límite más bajo de cero, lógica de selección
requerida después del cómputo aritmético y antes del
"writeback" al fichero del registro. La necesidad de la
lógica de selección después del cómputo aritmético habría
podido dar lugar a una duración de ciclo mínima más larga para
algunas ocaciones. PowerPC también excluyó cinco otras
instrucciones raramente usadas del problema-estado. La
especificación del mecanismo de gerencia de la memoria de
PowerPC y de otros cambios relacionados dio lugar a la exclusión
de las instrucciones de gerencia de la memoria inmediata de
poder. PowerPC excluyó la base de datos que bloqueaba y
siguiendo el mecanismo, otra característica del modelo de la
memoria de poder, porque habría hecho a la gerencia de la
memoria considerablemente más complejo, y esto no proporciono la
graduable necesidad por la mayoría de las aplicaciones.
En la configuración de
poder, una carga de la forma de la actualización podría
especificar el mismo registro para el blanco (RT) y el
direccionamiento bajo (RA). Si ocurriera esto, el procesador
realizaría la carga pero suprimiría la actualización. La
configuración de PowerPC eliminó este requisito, reconociendo
que no hay razón de utilizar la instrucción de la forma de
actualización en este caso, porque el procesador desecharía con
eficacia el direccionamiento actualizado. En la configuración de
PowerPC, este uso de la forma de la actualización no es una
operación válida y el resultado es indefinido. Un problema
similar existe con una carga de la forma de actualización y las
instrucciones del almacenamiento para las cuales el RA sea GPR 0.
Si el RA es GPR 0, el cómputo del direccionamiento efectivo
utiliza el valor 0 mejor que el contenido de GPR 0. Esta
operación es inválida en la configuración de PowerPC y el
resultado es indefinido. Otro ejemplo de requisitos suspendidos
se ocupa de los campos en los formatos de instrucción que no son
necesarios para una instrucción determinada. Por ejemplo, muchos
ACCIONAN formatos de instrucción que tienen un dígito binario
Rc el ", que controla si el código de condición registra
la información de estatus que describe el resultado de la
operación. En la configuración de poder, si el dígito binario
de Rc es un 1 en una instrucción para la cual esta información
de estatus sea inaplicable (por ejemplo, carga y almacenar), la
instrucción se ejecuta correctamente, pero la información de
estatus consiste en valores indefinidos. La configuración de
PowerPC considera tales instrucciones como formas inválidas.
" Si el procesador ejecuta una instrucción inválida, el
resultado es indefinido, a menos que los requisitos de
protección y del privilegio de memoria no se viole. El recurso
de sincronización definido en la configuración de poder
habría sido muy difícil de poner en ejecución en un ambiente
de gerencia de poder y de los procesadores registrados que
pudieron ser múltiplos de un no entero del reloj del sistema. La
configuración permite más flexibilidad, permitiendo diseños
más rentables. Una consecuencia de este acercamiento es que las
aplicaciones de PowerPC tendrán normalmente que utilizar un
servicio de sistema para obtener el tiempo correcto, porque el
uso directo del recurso de la sincronización no será posible
sin el conocimiento de las variables de entorno, disponible
solamente para el sistema.
Debido al rápido
avance de la tecnología del software lógico y de dotación
física, la unión entre costo-a-valor de algunas
características de la configuración de poder ha cambiado.
PowerPC suspendio algunos de los requisitos de la configuración
de poder, eliminando los aspectos de la configuración de poder
que agregaron la complejidad significativa, que limitaron la
velocidad de puestas en práctica, y que restringió el número
de las unidades de ejecución que un diseño superescala
podría poner. Estas exclusiones crearon deficiencias en la
configuración resultante. Además, la configuración de Poder
faltaron otras características necesarias para competir en el
mercado móvil rápido. Por ejemplo, los procesadores baratos con
buen funcionamiento de punto flotante de precisión, y los
procesadores para el uso en sistemas simétricos del
multiprocesador, no eran posibles con la configuración de poder.
Completando la arquitectura del PowerPC
La configuración de
PowerPC agregó las características que corregían ambos
conjuntos de deficiencias. En definir las adiciones, los
arquitectos definieron características de una manera para evitar
la complejidad de la dotación física para manejar errores del
software lógico donde estaba fácil que el software lógico
evite los errores.
Los arquitectos agregaron
un conjunto completo de instrucciones aritméticas de coma
flotante de solo-precisión, así como dos instrucciones de
convertir valores de punto flotante a los números enteros.
Porque la mayoría de estas instrucciones proporcionan la
versión de solo-precisión de instrucciones de precisión doble
existentes, la complejidad agregada por las nuevas instrucciones
es mínima.
Aparte de los cambios al
conjunto de instrucciones, los cambios más significativos
estaban en el modelo de memoria y la definición de gerencia
de memoria. En la configuración de poder, el procesador no
mantuvo la memoria de los datos constante con accesos de
entrada-salida o alcances de instrucción. El software lógico
tuvo que manejar el estado coherente de la memoria para ambas
estas áreas. Antes de copiar un área de la memoria al disco, el
software lógico tuvo que asegurarse de que cualquier copia
modificada del área de memoria que estuviera en la memoria
inmediata de los datos había sido escrita en la memoria
principal. Antes de que comenzara a leer el disco, el software
lógico tuvo que asegurarse de que la memoria inmediata de los
datos no contuvo una copia de cualquier parte del área de
memoria, y el software lógico tuvo que invalidar cualquier copia
del área de memoria en la memoria inmediata de instrucciones
antes de recomenzar el programa que solicitó la operación.
Los procesadores tuvieron
acceso siempre a memoria principal a través de las memorias
inmediatas. Los únicos accesos de memoria que no utilizaron las
memorias inmediatas eran accesos a un espacio de direccionamiento
separado designado "espacio T=1. " Las operaciones
programadas de entrada-salida (PIO) tienen acceso a este espacio
de direccionamiento. El modelo de la memoria de PowerPC
proporciona mayor flexibilidad. Los atributos se asociaron a cada
paginación de la memoria virtual permitiendo que el software
lógico controle cómo el sistema realiza accesos. El modelo
permite el acceso especulativo a cualquier paginación a menos
que tenga un atributo el indicar que contiene la entrada-salida o
exhibe otras características reemplazables. Otro atribuye
control si una paginación se puede ocultar, necesidad para no
ser ocultado, o se puede ocultar con el almacenamiento que son
escritos a través a la memoria principal. Esta definición
permite asociar entrada-salida en el espacio de memoria
principal. La definición también incluyó el estado coherente
procesador-acción, liberando el software lógico de la
responsabilidad del estado coherente de la memoria con respecto a
operaciones de la entrada-salida. Como en el modelo de la memoria
de poder, el modelo de la memoria de PowerPC requiere software
lógico para mantener la memoria de instrucción constante con
memoria de los datos. Los programas que modifican o generan
instrucciones deben asegurarse de que las copias ocultas de un
área de memoria que contiene las nuevas instrucciones sean
constantes con la memoria principal antes de procurar ejecutar
esas instrucciones.
POWERPC® vs PENTIUM®
La PowerPC es una
alternativa a la arquitectura x86, con un mejor
funcionamiento, a un precio más bajo, y que es
compatible con todo el software existente. Proviniendo de
compañías con la reputación como Apple, IBM y Motorola
esto suena extraordinariamente convincente. La pregunta
de el millon es: ¿ Llegará a ser eficiente a mis
necesidades la PowerPC ?. Para responder a esta pregunta
habrá, que examinar algunas de las ideas que se tienen
acerca de la PowerPC, y tratar de aclararlas.
Primera idea: La PowerPC es
más rápida que la Pentium. Definir "más
rápida" a través de las diferentes plataformas de
computación seria un engaño porque aislar el Hardware
del Software es casi imposible. Los resultados de pruebas
rigurosas indican que mientras las máquinas basadas en
la PowerPC pueden realizar el trabajo del sistema Pentium
en algunas circunstancias, la optimización del Software
es crítica. Microsoft Office por ejemplo es una suite
más altamente optimizada para la plataforma x86 que para
la PowerPC. Al correr Microsoft Windows NT en una Power
Macintosh contra una PC, se obtiene una tremenda
discrepancia de operación. Para citar sólo un ejemplo,
un chequeo de ortografía que es instantáneo en
Microsoft Word en una Pentium, toma todo un minuto en una
Power Mac; no porque el Hardware de la PC sea más
rápido, sino porque Microsoft escribió las rutinas de
chequeo diferentes para cada sistema. Esto pudiera
cambiar si los desarrolladores de Software se enfocan en
optimizar las aplicaciones para la PowerPC, pero como la
familia de la x86 tiene un mercado dominante los
programadores ponen menos atención a las versiones de
sus programas para PowerPC. Con esta situación se anula
cualquier ventaja potencial que el Hardware de la PowerPC
pudiera ofrecer.
Segunda idea: La
PowerPC es menos cara que la Pentium. La PowerPC 604 de
133 MHz. Está fabricada en un encapsulado más pequeño
que el de la Pentium de 133 MHz, lo que significa que
debería costar menos su fabricación. Pero gracias a la
política de precios tan agresiva por parte de Intel,
esta expectativa no se refleja en el precio al público,
por ejemplo: para 1000 unidades el precio de la PowerPC
es de $756 y para Pentium es de $694.
Tercera idea: La
PowerPC corre todo el Software existente?. Verdadero, con
reservas, porque para correr aquellos programas no
diseñados para la PowerPC se cuenta con emuladores que
siguen siendo relativamente lentos y sólo aceptables
para aplicaciones de uso no frecuente.
Cuarta idea: La
arquitectura x86 está perdiendo la delantera?.
Últimamente pudiera parecer que esta arquitectura a
topado con pared, pero Intel aparenta estar preparado
para esa contingencia habiéndose aliado con
Hewlett-Packard Co (quienes hacen el procesador PA-RISC
usado en las workstations de HP). para construir lo que
es presumiblemente alguna clase de chip híbrido que
soporte un nuevo set de instrucciones, pero permaneciendo
compatible con el código de las x86.
Pros y Contras
de las Plataformas:La PowerPC hizo su entrada en escena con muchas promesas del apoyo de tres jugadores principales. Este es ciertamente el procesador RISC que tiene la más grande oportunidad de romper el mercado de las workstations, pero como Intel continua con su fabricación de CPU's al alza y los precios a la baja, la PowerPC está muy presionada para competir. Agregemos a esto una limitada selección de Software y de sistemas operativos nativos que reducen el mercado potencial a futuro. Los prospectos de la PowerPC son positivos en los mercados de la Macintosh y Mac-Clone quienes se están retirando de las series de CPU's Motorola 68000. Esta puede ser la llave para que los mercados de Mac-clone y Windows NT basados en la PowerPC sean el empuje que los desarrolladores de Software necesitan para hacer sus aplicaciones bien, asegurándose que serán más rápidos y ofrecerán más operaciones que las de la plataforma x86. |
|
|
No hay comentarios:
Publicar un comentario
Deja tus opiniones y/o comentarios, nos sirven para mejorar nuestro blog, gracias