Los acrónimos RISC y CISC hacen referencia a
dos filosofías diametralmente opuestas en el diseño de microprocesadores y
significan respectivamente: Reduced Instruction Set Computer y Complex
Instruction Set Computer. Para entender en qué consisten estas dos
arquitecturas distintas es necesario definir algunos conceptos.
El microprocesador es el núcleo de un
ordenador, se encarga de realizar todas las operaciones que le sean requeridas
para ejecutar un programa.
Los programas son conjuntos de instrucciones
diseñados de forma que al llevarlas a cabo nos proporcionen unos resultados
útiles para un determinado fin.
Los registros son memorias donde se almacenan
datos temporalmente.
Para que un procesador pueda ejecutar una
instrucción ésta tiene que estar en un lenguaje que pueda entender; lenguaje
máquina o lenguaje de bajo nivel.
Cuando un programador crea un código, un
conjunto de instrucciones, no lo hace empleando un lenguaje de programación de
bajo nivel ya que sería muy engorroso. Lo que hace es usar un lenguaje de alto
nivel, más adecuado para la capacidad cognitiva humana, y luego traducirlo a
lenguaje máquina mediante un ensamblador. De esta forma se consigue que el
procesador entienda las órdenes y las ejecute.
El procesador sólo entenderá un número
determinado de instrucciones en lenguaje máquina que lleva almacenadas en su
interior, así que las instrucciones del programa deberán ser traducidas a
combinaciones de ellas.
Así pues, el número y complejidad de
instrucciones que posee un procesador vendrá determinado por la filosofía de
diseño que se esté siguiendo.
La filosofía de diseño CISC es anterior en el
tiempo a su contrapartida RISC aunque su acrónimo no empezó a emplearse hasta
después de la aparición de esta última. En los años 70 se creía que era mejor
en términos de rendimiento el que el procesador contara con un gran número de
instrucciones complejas que abarcara las operaciones más frecuentes. Es decir,
a la hora de realizar una suma de dos números era más deseable que existiera
una orden que llevara a cabo todo el proceso en vez de una que accediera a los
números almacenados en memoria, otra que los llevara a la unidad aritmética
donde eran sumados y otra que guardara el resultado en una posición de memoria.
Los diseños CISC hacían más fácil la labor
del programador y permitían que hubiera un menor número de registros en el
procesador, sin embargo hacen muy difícil la implementación de técnicas de
mejora de rendimiento como las que se usan en la actualidad.
Aún así fueron durante mucho tiempo la
filosofía de diseño más usada para los ordenadores personales, como por ejemplo
toda la gama Intel X86, conocidos comúnmente como 286, 386 y 486 entre otros.
La técnica de diseño RISC surgió al comprobar
que el software que se corría en los procesadores CISC no hacía un buen uso del
conjunto de instrucciones del procesador y que se obtenía un mayor rendimiento
si se traducían esas instrucciones complejas a varias más sencillas.
Al reducir la complejidad de las instrucciones
se reducía también su tamaño y se podía usar ese espacio extra para almacenar
los datos con los que se estaba trabajando, reduciendo así muchísimo el tiempo
de acceso a memoria.
Con esta filosofía se dificultaba la labor
del programador pero a cambio se abría la posibilidad de utilizar las técnicas
de segmentación para mejorar drásticamente el rendimiento del procesador.
Un ejemplo de filosofía RISC son los
procesadores PowerPC, presentes en los ordenadores Macintosh y en consolas de
última generación.
No hay comentarios:
Publicar un comentario