Seguidores

lunes, 12 de marzo de 2012

Arquitecturas de CPU

1.2.1.1 Arquitecturas.

Ademas de las arquitecturas clásicas mencionadas anteriormente, en la actualidad han aparecido
arquitecturas híbridas entre la Von Newman y la Harvard, buscando conservar la flexibilidad, pero
mejorando el rendimiento.
El cambio más importante de los últimos años en diseño de las computadoras de los últimos años se dio
durante los años 1980, con la aparición de la corriente de diseño conocida como computadoras de
conjunto reducido de instrucciones (RISC, por sus siglas en ingles). Esta escuela pretende aplicar un
enfoque totalmente distinto al tradicional hasta entonces, que paso a conocerse como computadoras de
conjunto complejo de instrucciones (CISC) para diferenciarla de la nueva tendencia.
La tendencia tradional, representada por las arquitecturas CISC (Complex Instruction Set Computers)
se caracterizan por tener un número amplio de instrucciones y modos de direccionamiento. Se
implementan instrucciones especiales que realizan funciones complejas, de manera que un
programador puede encontrar con seguridad, una instrucción especial que realiza en hardware la
función que el necesita. El número de registros del CPU es limitado, ya que las compuertas lógicas del
circuito integrado se emplean para implementar las secuencias de control de estas instrucciones
especiales.
Al investigar las tendencias en la escritura de software científico y comercial al inicio de los 80, ya se
pudo observar que en general ya no se programaba mucho en ensamblador, sino en lenguajes de alto
nivel, tales como C. Los compiladores de lenguajes de alto nivel no hacían uso de las instrucciones
especiales implementadas en los procesadores CISC, por lo que resultaba un desperdicio de recursos
emplear las compuertas del circuito de esta forma. Por lo anterior, se decidió que era mejor emplear
estos recursos en hacer que las pocas instrucciones que realmente empleaban los compiladores se
ejecutaran lo más rápidamente posible. Así surgió la escuela de diseño RISC (Reduced Instruction Set
Computers) donde solo se cuenta con unas pocas instrucciones y modos de direccionamiento, pero se
busca implementarlos de forma muy eficiente y que todas las instrucciones trabajen con todos los
modos de direccionamiento. Ademas, se observo que una de las tareas que tomaban más tiempo en
ejecutarse en lenguajes de alto nivel, era el pasar los parámetros a las subrutinas a través de la pila.
Como la forma más rápida de hacer este paso es por medio de registros del CPU, se busco dotarlo con
un amplio número de registros, a través de los cuales se pueden pasar dichos parámetros.

No hay comentarios:

Publicar un comentario