lunes, 27 de octubre de 2014

Arquitectura Avanzada y Comerciales



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