ARQUITECTURA
AVANZADA.
Este término sirve para identificar
aquella arquitectura producida con el apoyo de recursos informáticos digitales
que permite conseguir objetos arquitectónicos de progresivo grado de
complejidad formal y funcional, imposible de alcanzar por medios
convencionales, apoyando el proceso de diseño mediante representaciones
gráficas digitales de naturaleza dinámica e interactiva orientadas a facilitar
la visualización y la coordinación integrada y continua del proyecto y de la
obra a ser producida
Tipos de arquitectura
Una de las primeras decisiones a la hora de diseñar un
procesador es decidir cual será su juego de instrucciones. Este conjunto
de instrucciones (órdenes) es el lenguaje que realmente entiende el procesador,
y constituye lo que se conoce como lenguaje ensamblador o lenguaje-máquina.
La decisión es trascendente, por dos razones. Primero:
el juego de instrucciones decide el diseño físico del conjunto. Segundo:
cualquier operación que deba ejecutarse con el procesador deberá poder ser
descrita en términos de este "lenguaje" elemental (recuerde que los
compiladores e intérpretes son en realidad traductores desde el lenguaje de
alto nivel (fuente) a este lenguaje-máquina.
Sin entrar en detalles, podemos decir que frente a esta
cuestión caben dos filosofías de diseño. La primera conduce a máquinas
denominadas CISC ("Complex Instruction Set Computer"); las
máquinas construidas según el otro criterio se denominan RISC
("Reduced Instruction Set Computer").
Como puede deducirse de sus propios nombres, las máquinas CISC
utilizan instrucciones muy complejas, diríamos que muy descriptivas y
específicas, lo que necesariamente se traduce en varias consecuencias:
·
El lenguaje debe contener un amplio surtido
de ellas (una para cada circunstancia distinta).
·
Son instrucciones complejas, por tanto de ejecución
lenta. La circuitería del procesador también es compleja.
·
Para un trabajo específico se requieren pocas
instrucciones (siempre hay una que resuelve el problema).
Las máquinas RISC representan el enfoque
opuesto. Utilizan instrucciones muy simples, que deben ser cuidadosamente
escogidas, porque cualquier operación debe ser expresada como una secuencia de
estas pocas instrucciones. Las consecuencias son justamente opuestas a
las anteriores:
- El lenguaje contiene un conjunto pequeño de instrucciones.
- Las instrucciones son muy simples, por tanto de ejecución rápida. La circuitería es más simple que en los procesadores CISC.
- Para cualquier operación se requieren varias instrucciones elementales.
Procesadores Superescalares y
VLIW
Los procesadores con arquitecturas VLIW se caracterizan,
como su nombre indica, por tener juegos de instrucciones muy simples en cuanto
a número de instrucciones diferentes, pero muy grandes en cuanto al tamaño de
cada instrucción. Esto es así porque en cada instrucción se especifica el
estado de todas y cada una de las unidades funcionales del sistema, con el
objetivo de simplificar el diseño del hardware al dejar todo el trabajo de planificar
el código en manos del programador/compilador, en oposición a un procesador superescalar, en el que es el hardware en tiempo de
ejecución el que planifica las instrucciones. Un microprocesador típico VLIW es
el IA-64.
Características de
los Procesadores VLIW (Very Long Instruction Word)
Son procesadores con un formato de instrucción muy largo
Capaz de codificar varias operaciones (p) sobre una misma
instrucción
Ø Paso adelante en la filosofía RISC
Ø El hardware no aplica gestión dinámica de instrucciones
Hardware
mucho más simple y rápido.
Ø El compilador extrae el paralelismo a nivel de instrucciones,
empaquetando varias operaciones independientes (o NOPs si no las encuentra) en
una misma instrucción
Ø Si el ILP es bajo o el compilador es malo, el tamaño delcódigo generado
es mucho mayor
Ø Problemas
de saltos: instrucciones condicionadas
Ventajas
- Simplificación de la arquitectura hardware al no tener que planificar el código.
- Reducción del número de instrucciones de los programas.
Inconvenientes
- Requiere compiladores mucho más complejos.
- Cualquier mejora en la arquitectura hardware implica un cambio en el juego de instrucciones (compatibilidad hacia atrás nula).
A día de hoy, las
máquinas VLIW prácticamente han desaparecido, ya que los inconvenientes pesan
bastante más que las ventajas. La imposibilidad de tener compatibilidad hacia
atrás, los excesivos cambios requeridos en los compiladores, y el hecho de que
la simplificación del hardware respecto a las máquinas superescalares
convencionales no sea tampoco excesiva han hecho que se abandonen este tipo de
diseños.
No hay comentarios:
Publicar un comentario