CISC vs RISC
eefracotor18 de Mayo de 2015
3.370 Palabras (14 Páginas)299 Visitas
INICE.
INICE. 1
DEFINICION. 2
Arquitectura CISC 2
Arquitectura RISC 2
CARACTERISTICAS. 3
PROCESOS DE INSTRUCCIONES. 6
Tipos de instrucciones 6
Ejemplos de instrucciones. 7
Formatos de instrucción. 12
REGISTROS. 13
MODO DE DIRECCIONAMIENTO. 16
VENTAJAS. 17
Ventajas de la arquitectura CISC 17
Ejemplo de microprocesadores basados en la tecnología CISC: 17
Ventajas de la arquitectura RISC 17
Ejemplo de microprocesadores basados en la tecnología RISC: 18
DESVENTAJAS. 18
Desventajas de la arquitectura RISC 18
Desventajas de la arquitectura CISC. 18
DEFINICION.
A mediados del siglo XX, en los años 50, todos los computadores se diseñaban de forma completamente aislada unos de otros. Esto hacía que sus instrucciones fuesen independientes, haciendo que un programa escrito para un cierto ordenador no se pudiese ejecutar en otro; no era distinto para el caso de los procesadores los cuales se desarrollaban de forma completamente independiente, haciendo que un mismo programa tuviese que ser modificado para ejecutarse en máquinas diferentes. A finales de la década, IBM reunió a un grupo de sus investigadores para estudiar la forma con la que un programa pudiese trabajar en múltiples computadores sin importantes cambios, ampliando la compatibilidad del software en diferentes máquinas. El resultado fue el enfoque CISC, Complex Instruction Set Computing, introducido por primera vez en los IBM System/360 el 7 de abril de 1964.
Arquitectura CISC
CISC (Complex Instruction Set Computer) Es una tecnología que nace de la mano de Intel con la finalidad de homogenizar los diferentes computadores, en 1971 INTEL crea el primer microchip que permitiría el nacimiento de la informática personal. Más adelante concretamente en 1972 es cuando aparecería el 8080, primer chip capaz de procesar 8 bits, suficientes para representar números y letras. Con la posibilidad de colocar todos los circuitos en un solo chip y la capacidad de manejar número y letras nacería la cuarta generación de ordenadores, la de los conocidos como PC u ordenadores personales.
Arquitectura RISC
RISC. (reduced instruction set computer). Nace de la búsqueda de aumentar la velocidad del procesamiento, de esta manera se descubrió en base a experimentos que, con una determinada arquitectura de base, la ejecución de programas compilados directamente con microinstrucciones y residentes en memoria externa al circuito integrado resultaban ser más eficientes, gracias a que el tiempo de acceso de las memorias se fue decrementando conforme se mejoraba su tecnología de encapsulado. La idea estuvo inspirada también por el hecho de que muchas de las características que eran incluidas en los diseños tradicionales de CPU para aumentar la velocidad estaban siendo ignoradas por los programas que eran ejecutados en ellas. Además, la velocidad del procesador en relación con la memoria de la computadora que accedía era cada vez más alta.
CARACTERISTICAS.
Los microprocesadores CISC tienen un conjunto de instrucciones que se caracteriza por ser muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los registros internos.
Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que en la actualidad la mayoría de los sistemas CISC de alto rendimiento implementan un sistema que convierte dichas instrucciones complejas en varias instrucciones simples, llamadas generalmente microinstrucciones.
La microprogramación es una característica importante y esencial de casi todas las arquitecturas CISC. La microprogramación significa que cada instrucción de máquina es interpretada por un microprograma localizado en una memoria en el circuito integrado del procesador. Las instrucciones compuestas son decodificadas internamente y ejecutadas con una serie de microinstrucciones almacenadas en una ROM interna. Para esto se requieren de varios ciclos de reloj, al menos uno por microinstrucción. Es así entonces como los chips CISC utilizan comandos que incorporan una gran diversidad de pequeñas instrucciones para realizar una única operación.
Cuando el sistema operativo o una aplicación requiere de una de estas acciones, envía al procesador el nombre del comando para realizarla junto con el resto de información complementaria que se necesite. Pero cada uno de estos comandos de la ROM del CISC varían de tamaño y, por lo tanto, el chip debe en primer lugar verificar cuanto espacio requiere el comando para ejecutarse y poder así reservárselo en la memoria interna. Además, el procesador debe determinar la forma correcta de cargar y almacenar el comando, procesos ambos que ralentizan el rendimiento del sistema.
El procesador envía entonces el comando solicitado a una unidad que lo descodifica en instrucciones más pequeñas que podrán ser ejecutadas por un nanoprocesador, una especie de procesador dentro del procesador. Y al no ser las instrucciones independientes, pues son instrucciones menores procedentes de la descodificación de una instrucción mayor, sólo puede realizarse una instrucción cada vez.
A través de la compleja circuitería del chip, el nanoprocesador ejecuta cada una de las instrucciones del comando. El desplazamiento por esta circuitería también ralentiza el proceso. Para realizar una sola instrucción un chip CISC requiere de cuatro a diez ciclos de reloj.
A diferencia de la arquitectura CISC, la arquitectura RISC se tiene un conjunto de instrucciones simplificado, éstas se pueden implantar por hardware directamente en la CPU, lo cual elimina el microcódigo y la necesidad de decodificar instrucciones complejas.
La arquitectura RISC funciona de modo muy diferente a la CISC, su objetivo no es ahorrar esfuerzos externos por parte del software con sus accesos a la RAM, sino facilitar que las instrucciones sean ejecutadas lo más rápidamente posible. La forma de conseguirlo es simplificando el tipo de instrucciones que ejecuta el procesador. Así, las instrucciones más breves y sencillas de un procesador RISC son capaces de ejecutarse mucho más aprisa que las instrucciones más largas y complejas de un chip CISC. Sin embargo, este diseño requiere de mucha más RAM y de una tecnología de compilador más avanzada.
La relativa sencillez de la arquitectura de los procesadores RISC conduce a ciclos de diseño más cortos cuando se desarrollan nuevas versiones, lo que posibilita siempre la aplicación de las más recientes tecnologías de semiconductores. Por ello, los procesadores RISC no solo tienden a ofrecer una capacidad de procesamiento del sistema de 2 a 4 veces mayor, sino que los saltos de capacidad que se producen de generación en generación son mucho mayores que en los CISC.
Los comandos que incorpora el chip RISC en su ROM constan de varias instrucciones pequeñas que realizan una sola tarea. Las aplicaciones son aquí las encargadas de indicar al procesador qué combinación de estas instrucciones debe ejecutar para completar una operación mayor.
Además, los comandos de RISC son todos del mismo tamaño y se cargan y almacenan del mismo modo. Al ser estas instrucciones pequeñas y sencillas, no necesitan ser descodificadas en instrucciones menores como en el caso de los chips CISC, pues ya constituyen en sí unidades descodificadas. Por ello, el procesador RISC no gasta tiempo verificando el tamaño del comando, en descodificarlo ni en averiguar cómo cargarlo y guardarlo.
El procesador RISC puede además ejecutar hasta 10 comandos a la vez pues el compilador del software es el que determina qué comandos son independientes y por ello es posible ejecutar varios a la vez. Y al ser los comandos del RISC más sencillos, la circuitería por la que pasan también es más sencilla. Estos comandos pasan por menos transistores, de forma que se ejecutan con más rapidez. Para ejecutar una sola instrucción normalmente les basta con un ciclo de reloj.
PROCESOS DE INSTRUCCIONES.
Un conjunto de instrucciones es la suma de las operaciones básicas que puede cumplir un procesador. El conjunto de instrucciones de un procesador es un factor determinante en la arquitectura del éste, aunque una misma arquitectura puede llevar a diferentes implementaciones por diferentes fabricantes.
El procesador funciona de forma eficiente gracias a un número limitado de instrucciones, conectadas de forma permanente a los circuitos electrónicos. La mayoría de las operaciones se pueden realizar utilizando funciones básicas. Algunas arquitecturas, no obstante, sí incluyen funciones avanzadas de procesamiento.
Diversos estudios han analizado las características del código producido por los compiladores de los lenguajes de alto nivel sobre arquitecturas CISC, para así poder determinar las características de las instrucciones máquina que realmente se utilizan y se ejecutan. Estos análisis sacan a la luz algunas observaciones sobre ciertos aspectos que merece la pena comentar:
- Tipos de Instrucciones (simples/complejas)
- Bifurcaciones
- Modos de direccionamiento
- Llamadas a procedimientos
- Formatos de instrucción
- El compilador
Tipos de instrucciones
La tabla de la imagen muestra la distribución dinámica de instrucciones (las que realmente se ejecutan, no las que figuran en los programas) según un estudio realizado para el MC68000. Algunas de estas operaciones, teniendo en cuenta su cometido, pueden considerarse complejas, tales como DBcc, MUL, DIV, LINK, UNLINK y las operaciones con bits, no obstante solamente suponen el 12% de las
...