ARQUITECTURA DE COMPUTADOR CISC Y RISC

HISTORIA Y EVOLUCIÓN DE CISC
La microprogramación es una característica importante y esencial de casi todas las arquitecturas CISC, podríamos mencionar por ejemplo: Intel 8086, 8088, 80286, 80386, 80486. Motorola 68000, 68010, 68020, 68030, 6840. 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. En la decada de los sesentas la microprogramación, por sus características, era la técnica más apropiada para las tecnologías de memorias existentes en esa época y permitía desarrollar también procesadores con compatibilidad ascendente. En consecuencia, los procesadores se dotaron de poderosos conjuntos de instrucciones.
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 reloj (al menos uno por microinstrucción).

HISTORIA Y EVOLUCIÓN DE RISC
Buscando aumentar la velocidad del procesamiento 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. Debido a que se tiene un conjunto de instrucciones simplificado, éstas pueden implantar por hardware directamente en la CPU, lo cual elimina el micro código y la necesidad de decodificar instrucciones complejas. En investigaciones hechas a mediados de la década de los setentas, con respecto a la frecuencia de utilización de una instrucción en un CISC y al tiempo para su ejecución se observó lo siguiente: Alrededor del 20% de las instrucciones ocupa el 80% del tiempo total de ejecución de un programa.
Existen secuencias de instrucciones simples que obtienen el mismo resultado que secuencias complejas predeterminadas, pero requieren tiempos de ejecución más cortos.

ARQUITECTURA CISC
La arquitectura CISC (Complex Instruction Set Computer, Ordenador de Conjunto de Instrucciones Complejas) se refiere a la conexión permanente del procesador con las instrucciones complejas, difíciles de crear a partir de las instrucciones de base. Intel creador de CISC en 1971 del primer microchip que permitiría el nacimiento de la informática personal.
Más concretamente, sería en 1972 cuando aparecería el 8080, primer chip capaz de procesar 8 bits, suficiente 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.
El diseño de esta arquitectura estuvo orientado por las condiciones de mercado de aquella época y muy especialmente por la limitación en oferta y precio de la memoria de acceso aleatorio del ordenador, la RAM.
Así pues, muchas de las decisiones tomadas con relación al diseño del chip tenían como objetivo minimizar los requerimientos de memoria que se hicieran al ordenador. Una forma de reducir la necesidad de memoria era simplificando el software e incrementando la complejidad del procesador, lo cual si bien iba en detrimento del rendimiento global del sistema era una solución mucho mejor que tener que añadir más RAM. La arquitectura CISC es especialmente popular en procesadores de tipo 80x86. Este tipo de arquitectura tiene un costo elevado a causa de las funciones avanzadas impresas en la silicona.
Las instrucciones son de longitud diversa, y a veces requieren más de un ciclo de reloj. Dado que los procesadores basados en la arquitectura CISC sólo pueden procesar una instrucción a la vez, el tiempo de procesamiento es una función del tamaño de la instrucción. Hasta finales de la década de los 70 se pretendía reducir el coste del “hardware”, mediante el uso de complejos juegos de instrucciones basados en la microprogramación. En esta época el tiempo de acceso a Memoria Principal era muy superior al de decodificación y procesamiento de las instrucciones, debido al uso de los circuitos integrados. Para paliar ese desequilibrio se disminuyó el empleo de la Memoria Principal y se aumentó el del procesador, creando así los juegos de instrucciones complejos o CISC.
Otros aspectos ventajosos son: el abaratamiento del “hardware”, la facilitación del diseño de los Compiladores, y la disminución del tamaño de los programas.

ARQUITECTURA RISC
Los avances tecnológicos han permitido disminuir el desequilibrio antes mencionado con nuevas memorias más rápidas y el uso de las memorias caché. Esto ha supuesto la pérdida de interés por la microprogramación y la aparición, por su parte, de las tecnologías RISC en la década de los 80. El principal objetivo de esta tecnología es disponer de instrucciones muy simples, con el mínimo número de microinstrucciones. En la actualidad se admite la superioridad de la arquitectura RISC, respecto a la arquitectura CISC, si bien CISC todavía persiste.
La arquitectura RISC (Reduced Instructions Set Computer), por su parte, se implementaría desde su aparición, algo más tardía, principalmente en estaciones de trabajo y servidores de red. En estas máquinas, donde la potencia y la velocidad era requisito sine qua non, los chips RISC se convertirían en los años 80 en la arquitectura más común y la combinación de RISC con el sistema operativo Unix, en la configuración de mayor rendimiento. El elevado coste de estos sistemas limitaría su implantación a este tipo de máquinas de gama alta de utilización principal en ámbitos empresariales o académicos, los únicos que podían sufragarlas. 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 ahí el término de “reduced”) de un procesador RISC son capaces de ejecutarse mucho más aprisa que las instrucciones más largas y complejas de un chip CISC. Además, una serie de técnicas iniciales como la ejecución superescalar y el uso del pipelining permitían ejecutar más de una instrucción a la vez aumentando el rendimiento del chip. Sin embargo, este diseño requiere de mucha más RAM y de una tecnología de compilador más avanzada. Ambas cosas no estuvieron disponibles para la informática doméstica hasta más recientemente y fue a partir de entonces, 1990, que Motorola e IBM se atrevieron a desarrollar un chip RISC diseñado para ser comercializado en ordenadores personales, el PowerPC. Para muchos observadores, el hecho de que la arquitectura RISC hubiera triunfado en el entorno de mainframes, estaciones de trabajo o miniordenadores, entornos todos muy exigentes y que puede permitirse elegir lo mejor, era una prueba latente de la superioridad de su diseño con respecto a los chips CISC.

Así, cuando en 1990 Apple lanza su primer Power Macintosh y anuncia que se pasa al RISC, muchos auguraron que la tecnología de instrucciones complejas tenía los días contados. Pero desde entonces han pasado más de seis años y los fabricantes de procesadores CISC, aunque algo a remolque del PowerPC (Apple por ejemplo se adelantó a los Pentiums a 200MHz con sus máquinas a 225MHz el pasado verano), han seguido aumentando el rendimiento (también cada vez menor) y lo que es más importante, han conseguido mantener los precios de los chips muy bajos