You are on page 1of 36

Reduced instruction set computing

En arquitectura computacional, RISC (del ingls Reduced Instruction Set Computer, en


espaol Computador con Conjunto de Instrucciones Reducidas) es un tipo de diseo
de CPU generalmente utilizado en microprocesadores o microcontroladores con las siguientes
caractersticas fundamentales:

1. Instrucciones de tamao fijo y presentadas en un reducido nmero de formatos.

2. Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.


Adems estos procesadores suelen disponer de muchos registros de propsito general.
El objetivo de disear mquinas con esta arquitectura es posibilitar la segmentacin y
el paralelismo en la ejecucin de instrucciones y reducir los accesos a memoria. Las mquinas
RISC protagonizan la tendencia actual de construccin de microprocesadores. PowerPC, DEC
Alpha, MIPS, ARM, SPARC son ejemplos de algunos de ellos.
RISC es una filosofa de diseo de CPU para computadora que est a favor de conjuntos de
instrucciones pequeas y simples que toman menor tiempo para ejecutarse. El tipo de
procesador ms comnmente utilizado en equipos de escritorio, el x86, est basado
en CISC en lugar de RISC, aunque las versiones ms nuevas traducen instrucciones basadas
en CISC x86 a instrucciones ms simples basadas en RISC para uso interno antes de su
ejecucin.
La idea fue inspirada por el hecho de que muchas de las caractersticas que eran incluidas en
los diseos tradicionales de CPU para aumentar la velocidad estaban siendo ignoradas por los
programas que eran ejecutados en ellas. Adems, la velocidad del procesador en relacin con
la memoria de la computadora que acceda era cada vez ms alta. Esto conllev la aparicin
de numerosas tcnicas para reducir el procesamiento dentro del CPU, as como de reducir el
nmero total de accesos a memoria.
Terminologa ms moderna se refiere a esos diseos como arquitecturas de carga-
almacenamiento.

Complex instruction set computing


Este artculo o seccin necesita referencias que aparezcan en una publicacin acreditada.
Este aviso fue puesto el 13 de junio de 2011.
Puedes aadirlas o avisar al autor principal del artculo en su pgina de discusin
pegando: {{sust:Aviso referencias|Complex instruction set
computing}} ~~~~

En arquitectura computacional, CISC (del ingls Complex Instruction Set Computer, en


espaol Computador con Conjunto de Instrucciones Complejas) es un modelo de arquitectura
de computadores. 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, en contraposicin a la arquitectura RISC.
Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que, en la
actualidad, la mayora de los sistemas CISC de alto rendimiento implementan un sistema que
convierte dichas instrucciones complejas en varias instrucciones simples del tipo RISC,
llamadas generalmente microinstrucciones.
Los CISC pertenecen a la primera corriente de construccin de procesadores, antes del
desarrollo de los RISC. Ejemplos de ellos son: Motorola 68000, Zilog Z80 y toda la
familia Intel x86, AMD x86-64 usada en la mayora de las computadoras personales actuales.
Hay que hacer notar, sin embargo que la utilizacin del trmino CISC comenz tras la
aparicin de los procesadores RISC como nomenclatura despectiva por parte de los
defensores/creadores de stos ltimos.

Microprocesador (CICS)

La microprogramacin es una caracterstica importante y esencial de casi todas


las arquitecturas CISC.

Como por ejemplo:

Intel 8086, 8088, 80286, 80386, 80486.

Motorola 68000, 68010, 68020, 68030, 6840.

La microprogramacin significa que cada instruccin de mquina es


interpretada por un microprograma localizada en una memoria en el circuito
integrado del procesador.

En la dcada de los sesentas la micropramacin, por sus caractersticas, era la


tcnica ms apropiada para las tecnologas de memorias existentes en esa
poca y permita desarrollar tambin procesadores con compatibilidad
ascendente. En consecuencia, los procesadores se dotaron de poderosos
conjuntos de instrucciones.
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.

Ejemplo de microprocesadores basados en la tecnologa CISC:

MIPS, Millions Instruction. Per Second.

PA-RISC, Hewlett Packard.

SPARC, Scalable Processor Architecture, Sun Microsystems.

POWER PC, Apple, Motorola e IBM.

Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que


en la actualidad la mayora de los sistemas CISC de alto rendimiento
implementan un sistema que convierte dichas instrucciones complejas en
varias instrucciones simples, llamadas generalmente microinstrucciones.

La microprogramacin es una caracterstica importante y esencial de casi todas


las arquitecturas CISC. La microprogramacin significa que cada instruccin de
mquina 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


microinstruccin. Es as entonces como los chips CISC utilizan comandos que
incorporan una gran diversidad de pequeas instrucciones para realizar una
nica operacin.

Microprocesador (RICS)

Buscando aumentar la velocidad del procesamiento se descubri en base a


experimentos que, con una determinada arquitectura de base, la ejecucin de
programas compilados directamente con microinstrucciones y residentes en
memoria externa al circuito integrado resultaban ser mas eficientes, gracias a
que el tiempo de acceso de las memorias se fue decrementando conforme se
mejoraba su tecnologa de encapsulado.

Debido a que se tiene un conjunto de instrucciones simplificado, stas se


pueden implantar por hardware directamente en la CPU, lo cual elimina el
micro cdigo y la necesidad de decodificar instrucciones complejas.

Las caractersticas esenciales de una arquitectura RISC pueden resumirse


como sigue:

Estos microprocesadores siguen tomando como base el esquema moderno de


Von Neumann.

Entre las ventajas de RISC tenemos las siguientes:

La CPU trabaja ms rpido al utilizar menos ciclos de reloj para ejecutar


instrucciones.

Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a


diferencia de CISC, RISC conserva despus de realizar
sus operaciones en memoria los dos operandos y su resultado, reduciendo la
ejecucin de nuevas operaciones.

Cada instruccin puede ser ejecutada en un solo ciclo del CPU.

Las instrucciones, aunque con otras caractersticas, siguen divididas en tres


grupos:

a) Transferencia.

b) Operaciones.

c) Control de flujo.
El hecho de que la estructura simple de un procesador RISC conduzca a una
notable reduccin de la superficie del circuito integrado, se aprovecha con
frecuencia para ubicar en el mismo, funciones adicionales:

Unidad para el procesamiento aritmtico de punto flotante.

Unidad de administracin de memoria.

Funciones de control de memoria cache.

Implantacin de un conjunto de registros mltiples.

La relativa sencillez de la arquitectura de los procesadores RISC conduce a


ciclos de diseo ms cortos cuando se desarrollan nuevas versiones, lo que
posibilita siempre la aplicacin de las ms recientes tecnologas 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 generacin en generacin son mucho
mayores que en los CISC.

Por otra parte, es necesario considerar tambin que:

La disponibilidad de memorias grandes, baratas y con tiempos de acceso


menores de 60 ns en tecnologas CMOS.

Mdulos SRAM (Memoria de acceso aleatorio esttica) para memorias cache


con tiempos de acceso menores a los 15 ns

RICS VS CISC

Es que los procesadores CISCx86 corren a DOS, Windows 3.1 y Windows 95 en el modo
nativo; es decir, sin la traduccin de software que disminuya el desempeo. Pero CISC
y RISC tambin reflejan dos filosofas de computacin rivales. El procesamiento de RISC
requiere breves instrucciones de software de la misma longitud, que son fciles de
procesar rpidamente y en tandm por un CPU.
En contraste, un procesador de CISC tiene que procesar instrucciones ms largas de
longitud desigual. Es ms difcil procesar mltiples instrucciones de CISC a la vez.

Los que proponen RISC mantienen que su mtodo de procesamiento es ms eficiente y


ms escalable, por lo que los arquitectos pueden aadir unidades de ejecucin ms
fcilmente a un diseo existente y aumentar el rendimiento (las unidades de ejecucin
son los circuitos dentro del chip que hacen gran parte del trabajo).

Similarmente, RISC facilita el multiprocesamiento verdadero, donde varios CPUs


trabajan simtricamente mientras dividen, ejecutan y ensamblan una cadena de
instruccin; los chips CISC pueden hacer lo mismo, pero no son tan efectivos. La
simplicidad de las instrucciones de RISC tambin significa que requieren menos lgica
para ejecutar, reduciendo el costo del chip. Pocos en el campo del CISC discuten estos
hechos, prefiriendo apuntar a la realidad.

Todo el debate de CISC/RISC puede ser irrelevante pronto debido a que nuevas tcnicas
estn convergiendo. El Pentium Pro, el Nx586 y el K5 son bsicamente procesadores
RISC en su ncleo. Toman las instrucciones de CISC y las traducen a instrucciones estilo
RISC. Para la generacin que sigue al Pentium Pro, Intel y Hewlett-Packard estn
colaborando en un CPU hbrido que pueda aceptar instrucciones RISC y CISC. Si ese
chip crea un estndar, puede acelerar el cambio hacia el software optimizado para
RISC. Un mundo de RISC significara CPUs ms poderosos, y ms baratos. Cuando
quiera mejorar, simplemente puede aadir otro CPU en lugar de desprenderse de su
viejo CPU.

ARQUITECTURA CISC

La tecnologa CISC (Complex Instruction Set Computer) naci de la mano de Intel, creador
en 1971 del primer microchip que permitira el nacimiento de la informtica personal. Ms
concretamente, sera en 1972 cuando aparecera el 8080, primer chip capaz de procesar 8
bits, suficiente para representar nmeros y letras. Con la posibilidad de colocar todos
los circuitos en un solo chip y la capacidad de manejar nmero y letras nacera la cuarta
generacin de ordenadores, la de los conocidos como PC u ordenadores personales.
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 mayora de los sistemas CISC de alto rendimiento implementan
un sistema que convierte dichas instrucciones complejas en varias instrucciones simples,
llamadas generalmente microinstrucciones.

La microprogramacin es una caracterstica importante y esencial de casi todas las


arqutecturas CISC. La microprogramacin significa que cada instruccin de mquina 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 microinstruccin. Es as entonces
como los chips CISC utilizan comandos que incorporan una gran diversidad de pequeas
instrucciones para realizar una nica operacin.

Cuando el sistema operativo o una aplicacin requiere de una de estas acciones, enva al
procesador el nombre del comando para realizarla junto con el resto
de informacin complementaria que se necesite. Pero cada uno de estos comandos de la
ROM del CISC varan de tamao y, por lo tanto, el chip debe en primer lugar verificar
cuanto espacio requiere el comando para ejecutarse y poder as reservrselo en la memoria
interna. Adems, el procesador debe determinar la forma correcta de cargar y almacenar el
comando, procesos ambos que ralentizan el rendimiento del sistema.

El procesador enva entonces el comando solicitado a una unidad que lo descodifica en


instrucciones ms pequeas que podrn 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 descodificacin de una instruccin
mayor, slo puede realizarse una instruccin cada vez.

A travs de la compleja circuitera del chip, el nanoprocesador ejecuta cada una de las
instrucciones del comando. El desplazamiento por esta circuitera tambin ralentiza
el proceso. Para realizar una sola instruccin un chip CISC requiere de cuatro a diez ciclos
de reloj.

Entre las bondades de CISC destacan las siguientes:

Reduce la dificultad de crear compiladores.

Permite reducir el costo total del sistema.

Reduce los costos de creacin de sftware.


Mejora la compactacin de cdigo.

Facilita la depuracin de errores.

Ejemplo de microprocesadores basados en la tecnologa CISC:

Intel 8086, 8088, 80286, 80386, 80486.

Motorola 68000, 68010, 68020, 68030, 6840.

ARQUITECTURA RISC

Buscando aumentar la velocidad del procesamiento se descubri en base


a experimentos que, con una determinada arquitectura de base, la ejecucin
de programas compilados directamente con microinstrucciones y residentes
en memoria externa al circuito integrado resultaban ser mas eficientes, gracias a que
el tiempo de acceso de las memorias se fue decrementando conforme se mejoraba su
tecnologa de encapsulado.

La idea estuvo inspirada tambin por el hecho de que muchas de las caractersticas que
eran incluidas en los diseos tradicionales de CPU para aumentar la velocidad estaban
siendo ignoradas por los programas que eran ejecutados en ellas. Adems, la velocidad del
procesador en relacin con la memoriade la computadora que acceda era cada vez ms
alta.

Debido a que se tiene un conjunto de instrucciones simplificado, stas se pueden implantar


por hardware directamente en la CPU, lo cual elimina el microcdigo 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 ms rpidamente posible. La forma de conseguirlo es
simplificando el tipo de instrucciones que ejecuta el procesador. As, las instrucciones ms
breves y sencillas de un procesador RISC son capaces de ejecutarse mucho ms aprisa que
las instrucciones ms largas y complejas de un chip CISC. Sin embargo,
este diseo requiere de mucha ms RAM y de una tecnologa de compilador ms avanzada.
La relativa sencillez de la arquitectura de los procesadores RISC conduce a ciclos de diseo
ms cortos cuando se desarrollan nuevas versiones, lo que posibilita siempre la aplicacin
de las ms recientes tecnologas 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 generacin en generacin son mucho
mayores que en los CISC.

Los comandos que incorpora el chip RISC en su ROM constan de varias instrucciones
pequeas que realizan una sola tarea. Las aplicaciones son aqu las encargadas de indicar
al procesador qu combinacin de estas instrucciones debe ejecutar para completar una
operacin mayor.

Adems, los comandos de RISC son todos del mismo tamao y se cargan y almacenan del
mismo modo. Al ser estas instrucciones pequeas 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 tamao del comando, en descodificarlo ni en averiguar cmo cargarlo y
guardarlo.

El procesador RISC puede adems 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 ms sencillos, la circuitera por la
que pasan tambin es ms sencilla. Estos comandos pasan por menos transistores, de
forma que se ejecutan con ms rapidez. Para ejecutar una sola instruccin normalmente
les basta con un ciclo de reloj.

Entre las ventajas de RISC tenemos las siguientes:

La CPU trabaja mas rpido al utilizar menos ciclos de reloj para ejecutar
instrucciones.

Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a


diferencia de CISC, RISC conserva despus de realizar sus operaciones en memoria los
dos operandos y su resultado, reduciendo la ejecucin de nuevas operaciones.

Cada instruccin puede ser ejecutada en un solo ciclo del CPU

Ejemplo de microprocesadores basados en la tecnologa CISC:

MIPS, Millions Instruction Per Second.

PA-RISC, Hewlett Packard.

SPARC, Scalable Processor Architecture, Sun Microsystems.

POWER PC, Apple, Motorola e IBM.


Introduccin

Procesadores: risc y cisc


Una de las primeras decisiones a la hora de disear un microprocesador es decidir cual
ser su juego de instrucciones. La decisin es trascendente pordos razones; primero, el
juego de instrucciones decide el diseo fsico del conjunto; segundo, cualquier operacin
que deba ejecutarse en el microprocesador deber poder ser descrita en trminos de
un lenguaje de estas instrucciones. Frente a esta cuestin caben dos filosofas de
diseo;mquinas denominadas CISC y mquinas denominadas RISC.

Cuando hablamos de microprocesadores CISC, computadoras con un conjunto de


instrucciones complejas y procesadores RISC, computadoras con un conjunto de
instrucciones reducido, se piensa que los atributoscomplejo y reducido describen las
diferencias entre los dos modelos dearquitectura para microprocesadores. Esto es cierto
solo de forma superficial, pues se requiere de muchas otras caractersticas esenciales
para definir los RISC y los CISC.

Hasta hace solo algunos aos, la divisin era tajante: RISC se utilizaba para entornos
de red, mientras que CISC se aplicaba en ordenadores domsticos. Pero en la actualidad
se alzan voces que afirman que CISC est agotando sus posibilidades, mientras otras
defienden fervientemente que CISC ya ha alcanzado a RISC, adoptando algunas de sus
principales caractersticas.

Este trabajo expone la caractersticas esenciales de ambas arquitecturas, poniendo de


manifiesto sus ventajas y desventajas.

Dentro de muy poco los usuarios dejaran de hacerse la pregunta RISC O CISC?,
puesto que la tendencia futura, nos lleva a pensar que ya no existirn los CISC puros.

ARQUITECTURA CISC
naci de la mano de Intel, creador en 1971 del primer microchip que permitira el
nacimiento de la informtica personal. Ms concretamente, sera en 1972 cuando
aparecera el 8080, primer chip capaz de procesar 8 bits, suficiente para representar
nmeros y letras.

CISC Complex Instructions Set Computer, Ordenador con un conjunto de instrucciones


completo. El objetivo principal de la arquitectura CISC es completar una tarea en el menor
nmero de lneas de cdigo ensamblador posibles. Este objetivo es conseguido mediante
la construccin de un microprocesador capaz de comprender y ejecutar una serie de
operaciones complejas.
Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que en la
actualidad la mayora de los sistemasCISC de alto rendimiento implementan
un sistemaque convierte dichas instrucciones complejas en varias instrucciones simples,
llamadas generalmente microinstrucciones.

La microprogramacin es una caracterstica importante y esencial de casi todas las


arquitecturas CISC. La microprogramacin significa que cada instruccin de mquina es
interpretada por un microprograma localizado en una memoria en el circuito integrado
del procesador. Debido a que se tiene un conjunto de instrucciones simplificado, stas se
pueden implantar porhardware directamente en la CPU, lo cual elimina el microcdigo y la
necesidad de decodificar instrucciones complejas.

Ventajas de la arquitectura CISC.


Computador con repertorio de instrucciones complejo.

Gran nmero de instrucciones complejas.

Gran variedad de tipos de datos y de modos de direccionamiento.

Permite implementar instrucciones de alto nivel directamente o con un nmero pequeo de


instrucciones ensamblador.

Adems se pueden aadir nuevas instrucciones al repertorio manteniendo las antiguas.

ARQUITECTURA RISC
Desde hace unos aos se fabrican y utilizan en algunas mquinas procesadores "RISC" o
"Reduced Instruction Set Computer", es decir con un nmero reducido de instrucciones.

Los procesadores RISC slo usan instrucciones sencillas que se puedan ejecutar
rpidamente. Por este motivo suelen ser arquitecturas basadas en registros de propsito
general que operan siempre sobre operandos que se encuentran almacenados en el
procesador, cerca de la unidad de ejecucin. Su objetivo no es facilitar que las
instrucciones sean ejecutadas lo ms rpidamente posible.

En el diseo de una mquina RISC se tienen cinco pasos:

1. Analizar las aplicaciones para encontrar las operaciones clave.

2. Disear un bus de datos que sea ptimo para las operaciones clave.
3. Disear instrucciones que realicen las operaciones clave utilizando el bus de
datos.

4. Agregar nuevas instrucciones slo si no hacen ms lenta a la mquina.

5. Repetir este proceso para otros recursos.

Ventajas de RISC
La CPU trabaja ms rpido al utilizar menos ciclos de reloj para ejecutar instrucciones.

Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a


diferencia de CISC, RISC conserva despus de realizar sus operaciones en memoria los
dos operandos y su resultado, reduciendo la ejecucin de nuevas operaciones.

Cada instruccin puede ser ejecutada en un solo ciclo del CPU.

Computador con repertorio de instrucciones reducido.


Pocas instrucciones y muy bsicas.
Repertorio simple y ortogonal.
Formatos de instruccin uniformes.
Pocos tipos de datos y de modos de direccionamiento, siempre los ms sencillos.

RISC Vs CISC
El microprocesador, parte fundamental del ordenador, se desarrolla entre dos
arquitecturas distintas: CISC y RISC. La tecnologa RISC (reduced instruction set
computer) se utilizaba principalmente para entornos de red mientras que la arquitectura
CISC (complex instruction set computer) tena su mxima aplicacin en ordenadores
domstico, los microprocesadores CISC tienen un mercado de software muy difundido,
aunque tampoco tendrn ya que establecer nuevas familias en comparacin con el
desarrollo de nuevos proyectos con tecnologa RISC.

La simplicidad de la arquitectura de los procesadores RISC conduce a ciclos de diseo


ms cortos cuando se desarrollan nuevas versiones, lo que posibilita siempre la aplicacin
de las ms recientes tecnologas de chips. 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 generacin en generacin son mucho
mayores que en los CISC.

Esto hace suponer que RISC reemplazar al CISC, pero la respuesta a este argumento
no es tan simple ya que, Para aplicar una determinada arquitectura de microprocesador
son decisivas las condiciones de realizacin tcnica y sobre todo la rentabilidad,
incluyendo los costos de software. Tambin existen razones de compatibilidad para
desarrollar y utilizar procesadores de estructura compleja as como un extenso conjunto
de instrucciones.
RISC O CICS?
La cuestin, es que hasta el momento, el estudio de prestaciones de ambas
tecnologas, nos ha llevado a concluir que hoy en da los RISC obtienen ms
prestaciones, es decir, son ms potentes y rpidos que los CISC. Sin embargo, el
mercado se ha decantado por la tecnologa CISC en cuanto a volumen de ventas. Por
qu?

1.- Por experiencia propia, podemos comprobar que un CISC tiene un coste
"razonable", que es alcanzado a nivel de usuario. Esto mismo, no ocurre con los RISC,
que por el contrario tienen un coste elevado, por esto mismo esta tecnologa ha sido
enfocada a ventas a nivel de empresa y equipos de gama alta.

2.- La utilidad que se le d a la maquina es muy importante, ya que el usuario debe


de encontrar un nivel optimo en cuanto a calidad - precio. Y por qu pagar ms si
realmente no se le va a sacar partido al cien por cien.

3.- El software utilizado es otro de los factores importantes, dado que un RISC no
utiliza el mismo software que un CISC. Estos ltimos, por lo general tienen un
software ms asequible.

4.- Dada la compatibilidad hacia atrs de la familia CISC x86, los usuarios han podido
renovar sus equipos sin por ello tener que abandonar software que ya conocan, y
reutilizar sus datos. As mismo, los fabricantes han tenido en cuenta este factor,
puesto que seguir con otra lnea de procesadores supona no solo un cambio muy
radical, sino que adems poda llevar un riesgo en cuanto a ventas.

Arquitectura RISC y CISCW


A que nos referimos a las Arquitecturas RISC y CISC ...

Una de las primeras decisiones a la hora de disear un microprocesador es decidir cual


ser su juego de instrucciones.
La decisin por dos razones; primero, el juego de instrucciones decide el diseo fsico del
conjunto; segundo, cualquier operacin que deba ejecutarse en el microprocesador
deber poder ser descrita en trminos de un lenguaje de estas instrucciones.

Frente a esta cuestin caben dos filosofas de diseo; mquinas denominadas CISC y
mquinas denominadas RISC.
Cuando hablamos de microprocesadores CISC, computadoras con un conjunto de
instrucciones complejo, (del ingls complex instruction set computer), y
procesadores RISC, computadoras con un conjunto de instrucciones reducido, (del ingls
reduced instruction set computer), se piensa que los atributos complejo y reducido
describen las diferencias entre los dos modelos de arquitectura para microprocesadores.
Esto es cierto solo de forma superficial, pues se requiere de muchas otras caractersticas
esenciales para definir los RISC y los CISC.

Hasta hace solo algunos aos, la divisin era tajante: RISC se utilizaba para entornos de
red, mientras que CISC se aplicaba en ordenadores domsticos. Pero en la actualidad se
alzan voces que afirman que CISC est agotando sus posibilidades, mientras otras
defienden fervientemente que CISC ya ha alcanzado a RISC, adoptando algunas de sus
principales caractersticas.

Arquitectura RISC

En la arquitectura computacional, RISC (del ingls reduced instruction set computer) es un


tipo de microprocesador con las siguientes caractersticas fundamentales:

Instrucciones de tamao fijo y presentadas en un reducido nmero de formatos.


Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.
El objetivo de disear mquinas con esta arquitectura es posibilitar la segmentacin y el
paralelismo en la ejecucin de instrucciones y reducir los accesos a memoria.

Las mquinas RISC protagonizan la tendencia actual de construccin de


microprocesadores. PowerPC, DEC Alpha, MIPS, ARM, SPARC... son ejemplos de
algunos de ellos.
RISC es una filosofa de diseo de CPU para computadora que est a favor de conjuntos
de instrucciones pequeas y simples que toman menor tiempo para ejecutarse.

El tipo de procesador ms comnmente utilizado en equipos de escritorio, el x86, est


basado en CISC en lugar de RISC, aunque las versiones ms nuevas traducen
instrucciones basadas en CISC x86 a instrucciones ms simples basadas en RISC para
uso interno antes de su ejecucin.

La idea fue inspirada por el hecho de que muchas de las caractersticas que eran
incluidas en los diseos tradicionales de CPU para aumentar la velocidad estaban siendo
ignoradas por los programas que eran ejecutados en ellas. Adems, la velocidad del
procesador en relacin con la memoria de la computadora que acceda era cada vez ms
alta. Esto con llev la aparicin de numerosas tcnicas para reducir el procesamiento
dentro del CPU, as como de reducir el nmero total de accesos a memoria.

Caracteristicas:

En pocas palabras esto significa que para cualquier nivel de desempeo dado, un chip
RISC tpicamente tendr menos transistores dedicados a la lgica principal. Esto permite
a los diseadores una flexibilidad considerable; as pueden, por ejemplo:

Incrementar el tamao del conjunto de registros.


Mayor velocidad en la ejecucin de instrucciones.
Implementar medidas para aumentar el paralelismo interno.
Aadir cachs enormes.
Aadir otras funcionalidades, como E/S y relojes para minicontroladores.
Construir los chips en lneas de produccin antiguas que de otra manera no seran
utilizables.
No ampliar las funcionalidades, y por lo tanto ofrecer el chip para aplicaciones de
bajo consumo de energa o de tamao limitado.

Las caractersticas que generalmente son encontradas en los diseos RISC son:

Codificacin uniforme de instrucciones, lo que permite una de codificacin ms


rpida.
Un conjunto de registros homogneo, permitiendo que cualquier registro sea
utilizado en cualquier contexto y as simplificar el diseo del compilador.
Modos de direccionamiento simple con modos ms complejos reemplazados por
secuencias de instrucciones aritmticas simples.
Los tipos de datos soportados en el hardware no se encuentran en una mquina
RISC.
Los diseos RISC tambin prefieren utilizar como caracterstica un modelo de
memoria Harvard, donde los conjuntos de instrucciones y los conjuntos de datos estn
conceptualmente separados.

RISC Moderno:

Los diseos RISC han llevado a un gran nmero de plataformas y arquitecturas al xito,
algunas de las ms grandes:

La lnea MIPS Technologies Inc., que se encontraba en la mayora de las


computadoras de Silicon Graphics hasta 2006, y estuvo en las consolas ya
descatalogadas Nintendo 64, PlayStation y PlayStation 2. Actualmente se utiliza en la
PlayStation Portable y algunos routers.
La serie IBM POWER, utilizado principalmente por IBM en Servidores y
superordenadores.
La versin PowerPC de Motorola e IBM (una versin de la serie IBM POWER)
utilizada en los ordenadores AmigaOne, Apple Macintosh como el iMac, eMac, Power Mac
y posteriores (hasta 2006). Actualmente se utiliza en muchos sistemas empotrados en
automviles, routers, etc, as como en muchas consolas de videojuegos, como la
Playstation 3, Xbox 360 y Wii.
El procesador SPARC y UltraSPARC de Sun Microsystems y Fujitsu, que se
encuentra en sus ltimos modelos de servidores (y hasta 2008 tambin en estaciones de
trabajo).
El PA-RISC y el HP/PA de Hewlett-Packard, ya descatalogados.
El DEC Alpha en servidores HP AlphaServer y estaciones de trabajo AlphaStation,
ya descatalogados.
El ARM El paso de hardware de instrucciones x86 en operaciones RISC llega a
ser significativo en el rea y la energa para dispositivos mviles e integrados. Por lo tanto,
los procesadores ARM dominan en PALM, Nintendo DS, Game Boy Advance y en
mltiples PDAs, Apple iPods, Apple iPhone, iPod Touch (Samsung ARM1176JZF, ARM
Cortex-A8, Apple A4), Apple iPad (Apple A4 ARM -based SoC), videoconsolas como
Nintendo DS (ARM7TDMI, ARM946E-S), Nintendo Game Boy Advance (ARM7TDMI).
El Atmel AVR usado en gran variedad de productos, desde mandos de la Xbox a
los coches de la empresa BMW.
La plataforma SuperH de Hitachi, originalmente usada para las consolas Sega
Super 32X, Saturn y Dreamcast, ahora forman parte de el corazon de muchos equipos
electrnicos para el consumo.SuperH es la plataforma base de el grupo Mitsubishi -
Hitachi. Estos dos grupos, unidos en 2002, dejaron aparte la propia arquitectura RISC de
Mitsubishi, el M32R.
Los procesadores XAP usados en muchos chips wireless de poco consumo
(Bluetooth, wifi) de CSR.

Entre las ventajas de RISC tenemos las siguientes:

La CPU trabaja mas rpido al utilizar menos ciclos de reloj para ejecutar
instrucciones.
Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a
diferencia de CISC, RISC conserva despus de realizar sus operaciones en memoria los
dos operandos y su resultado, reduciendo la ejecucin de nuevas operaciones.
Cada instruccin puede ser ejecutada en un solo ciclo del CPU

Arquitectura CISC

En la arquitectura computacional, CISC (complex instruction set computer) es un modelo


de arquitectura de computadora.
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, en contraposicin a la arquitectura RISC.

Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que, en la


actualidad, la mayora de los sistemas CISC de alto rendimiento implementan un sistema
que convierte dichas instrucciones complejas en varias instrucciones simples del tipo
RISC, llamadas generalmente microinstrucciones.

Los CISC pertenecen a la primera corriente de construccin de procesadores, antes del


desarrollo de los RISC. Ejemplos de ellos son: Motorola 68000, Zilog Z80 y toda la familia
Intel x86 usada en la mayora de las computadoras personales actuales.

Para realizar una sola instruccin un chip CISC requiere de cuatro a diez ciclos de reloj.

Entre las ventajas de CISC destacan las siguientes:

Reduce la dificultad de crear compiladores.


Permite reducir el costo total del sistema.
Reduce los costos de creacin de sftware.
Mejora la compactacin de cdigo.
Facilita la depuracin de errores.

Ejemplo de microprocesadores basados en la tecnologa CISC:

Intel 8086, 8088, 80286, 80386, 80486.


Motorola 68000, 68010, 68020, 68030, 6840.
Ejemplo de microprocesadores basados en la tecnologa CISC:

MIPS, Millions Instruction Per Second.


PA-RISC, Hewlett Packard.
SPARC, Scalable Processor Architecture, Sun Microsystems.
POWER PC, Apple, Motorola e IBM.

Conclusin:

Hoy en da, los programas cada vez ms grandes y complejos demandan mayor velocidad
en el procesamiento de informacin, lo que implica la bsqueda de microprocesadores
ms rpidos y eficientes.

SIGNIFICADO DE RISC

En arquitectura computacional, RISC (del ingls Reduced Instruction Set Computer, en


espaol Computador con Conjunto de Instrucciones Reducidas) es un tipo de diseo
de CPU generalmente utilizado en microprocesadores o microcontroladores con las
siguientes caractersticas fundamentales:

1. Instrucciones de tamao fijo y presentadas en un reducido nmero de formatos.


2. Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.
Adems estos procesadores suelen disponer de muchos registros de propsito general.

El objetivo de disear mquinas con esta arquitectura es posibilitar la segmentacin y


el paralelismo en la ejecucin de instrucciones y reducir los accesos a memoria. Las
mquinas RISC protagonizan la tendencia actual de construccin de
microprocesadores. PowerPC, DEC Alpha, MIPS, ARM,SPARC son ejemplos de algunos de
ellos.

RISC es una filosofa de diseo de CPU para computadora que est a favor de conjuntos de
instrucciones pequeas y simples que toman menor tiempo para ejecutarse. El tipo de
procesador ms comnmente utilizado en equipos de escritorio, el x86, est basado
en CISC en lugar de RISC, aunque las versiones ms nuevas traducen instrucciones
basadas en CISC x86 a instrucciones ms simples basadas en RISC para uso interno antes
de su ejecucin.

FUNCIONES
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 ms
rpidamente posible. La forma de conseguirlo es simplificando el tipo de instrucciones que ejecuta el
procesador. As, las instrucciones ms breves y sencillas de un procesador RISC son capaces de
ejecutarse mucho ms aprisa que las instrucciones ms largas y complejas de un chip CISC. Sin
embargo, este diseo requiere de mucha ms RAM y de una tecnologa de compilador ms avanzada.

La relativa sencillez de la arquitectura de los procesadores RISC conduce a ciclos de diseo ms cortos
cuando se desarrollan nuevas versiones, lo que posibilita siempre la aplicacin de las ms recientes
tecnologas 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 generacin en generacin son mucho mayores que en los CISC.

Los comandos que incorpora el chip RISC en su ROM constan de varias instrucciones pequeas que
realizan una sola tarea. Las aplicaciones son aqu las encargadas de indicar al procesador qu
combinacin de estas instrucciones debe ejecutar para completar una operacin mayor.

Los comandos de RISC son todos del mismo tamao y se cargan y almacenan del mismo modo. Al ser
estas instrucciones pequeas y sencillas, no necesitan ser descodificadas en instrucciones menores
como en el caso de los chips CISC, pues ya constituyen en s unidades descodificadas. Es por ello, que
el procesador RISC no gasta tiempo verificando el tamao del comando, en descodificarlo ni en
averiguar cmo cargarlo y guardarlo.

El procesador RISC puede adems 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.

Al ser los comandos del RISC ms sencillos, la circuitera por la que pasan tambin es ms sencilla.
Estos comandos pasan por menos transistores, de forma que se ejecutan con ms rapidez. Para
ejecutar una sola instruccin normalmente les basta con un ciclo de reloj.

APLICACIONES
Hoy en da, los programas cada vez ms grandes y complejos demandan mayor
velocidad en el procesamiento de informacin, lo que implica la bsqueda de
microprocesadores ms rpidos y eficientes.
Las arquitecturas CISC utilizadas desde hace 15 aos han permitido desarrollar un
gran nmero de productos de software. Ello representa una considerable inversin
y asegura a estas familias de procesadores un mercado creciente. Sin embargo,
simultneamente aumentan las aplicaciones en las cuales la capacidad de
procesamiento que se pueda obtener del sistema es ms importante que la
compatibilidad con el hardware y el software anteriores, lo cual no solo es vlido en
los subsistemas de alta capacidad en el campo de los sistemas llamados
"embedded", en los que siempre dominaron las soluciones especiales de alta
capacidad de procesamiento sino tambin para las estaciones de trabajo
("workstations"). Esta clase de equipos se han introducido poco a poco en oficinas,
en la medicina y en bancos, debido a los cada vez mas voluminosos y complejos
paquetes de software que con sus crecientes requerimientos de reproduccin
visual, que antes se encontraban solo en el campo tcnico de la investigacin y
desarrollo.
En este tipo de equipos, el software de aplicacin, se ejecuta bajo el sistema
operativo UNIX, el cual es escrito en lenguaje C, por lo que las arquitecturas RISC
actuales estn adaptadas y optimizadas para este lenguaje de alto nivel.
Por ello, todos los productores de estaciones de trabajo de renombre, han pasado
en pocos aos, de los procesadores CISC a los RISC, lo cual se refleja en el fuerte
incremento anual del nmero de procesadores RISC, (los procesadores RISC de 32
bits han visto crecer su mercado hasta en un 150% anual). En pocos aos, el RISC
conquistar de 25 al 30% del mercado de los 32 bits, pese al aparentemente
abrumador volumen de software basado en procesadores con el estndar CISC que
se ha comercializado en todo el mundo.

Caractersticas Generales
Las caractersticas comunes a todos los procesadores RISC, fuente de sus capacidades
de altas prestaciones son:Modelo de conjunto de instrucciones Load/Store que significa:
Cargar-Almacenar. Slo las instrucciones Load/Store acceden a memoria; las dems
operaciones en un RISC, tienen lugar en su gran conjunto de registros. Ello simplifica el
direccionamiento y acorta los tiempos de los ciclos de la CPU, adems facilita la gestin de
los fallos de paginas page faults en entornos de memoria virtual, permite un elevado nivel de
concurrencia a consecuencia de la independencia de las operaciones de Load/Store de la
ejecucin del resto de las instrucciones.
Arquitectura no destructiva de tres direcciones. Los procesadores CISC destruyen la
informacin que existe en alguno de los registros, como consecuencia de la ejecucin
normal de instrucciones; esto es debido a su arquitectura de dos direcciones, por lo que el
resultado de una operacin sobrescribe uno de los registros que contena a los operandos.
Por contra, las instrucciones RISC, con tres direcciones, contienen los campos de los dos
operandos y de su resultado. Por lo tanto, tanto los operandos origen como el destino, son
mantenidos en los registros tras haber sido completada la operacin. Esta arquitectura no
destructiva permite a los compiladores organizar las instrucciones de modo que mantengan
llenos los conductos (pipelines) del chip, y por tanto reutilizar los operandos optimizando la
concurrencia.
Instrucciones simples, de formato fijo, con pocos modos de direccionamiento. Las
instrucciones simples reducen de manera muy significativa el esfuerzo para su
descodificacin, y favorecen su ejecucin en pipelines. Las instrucciones de longitud fija,
con formatos fijos, implican que los campos de cdigos de operacin opcodes y de los
operandos estn siempre codificados en las mismas posiciones, permitiendo el acceso a los
registros al mismo tiempo que se est descodificando el cdigo de operacin. Todas las
instrucciones tienen una longitud equivalente a una palabra y estn alineadas en la memoria
en lmites de palabra word boundaries, ya que no pueden ser repartidas en pedazos que
puedan estar en diferentes pginas.

Ausencia de microcdigo. El microcdigo no se presta a la ejecucin en ciclos nicos, ya


que requiere que el hardware sea dedicado a su interpretacin dinmica. La programacin en
microcdigo no hace que el software sea ms rpido que el programado con un conjunto de
instrucciones simples. Todas las funciones y el control, en los procesadores RISC, estn
cableados hardwired, para lograr una mxima velocidad y eficiencia.
Ejecucin en conductos pipelined. Las instrucciones simples, de formato fijo y ciclo
nico permiten que las diferentes etapas de los ciclos de ejecucin bsqueda o fetch,
descodificacin, ejecucin, y escritura del resultado o result write-back para instrucciones
mltiples, se puedan realizar simultneamente, de un modo ms simple y eficaz.
Ejecucin en ciclos nicos single-cycle. El resultado directo de los conjuntos de
instrucciones que ofrecen los procesadores RISC, es que cada instruccin puede ser
ejecutada en un nico ciclo de la CPU. Esto invalida la creencia de que las
microinstrucciones en microcdigo, creadas para ser ejecutadas en un solo ciclo de
procesador, son ms rpidas que las instrucciones del lenguaje ensamblador. Ya que el
cach esta construido partiendo de la misma tecnologa que el almacenamiento de control
del microprograma, una nica instruccin puede ser ejecutada a la misma velocidad que una
microinstruccin. La ejecucin en ciclos nicos tambin simplifica la gestin de las
interrupciones y los conductos pipelines.

TECNOLOGIA

Los inicios de la tecnologa RISC surgen en el ambiente acadmico, en 1980, en la Universidad de


Berkeley California, donde el Dr. David A. Pattersoninici un proyecto denominado RISC I,
obteniendo resultados en tan solo 19 meses, seguido por RISC II, SOAR Smalltalk on a
RISC y SPUR (Symbolic Processing on a RISC), pero simultneamente, en la Universidad de
Stanford, el Dr. John Hennesy inici tambin un proyecto de implementacin RISC,
denominado MIPS, seguido por el sistema MIPS-XMP, enfocados hacia el proceso simblico,
demostrando as las capacidades de velocidad de la arquitectura RISC.

Ambos profesores se vieron envueltos rpidamente, en proyectos de productos comerciales, y


en concreto,el llamado Hennesy fu uno de los fundadores de MIPS Computer Systems, mientras
Patterson actuaba de asesor durante el desarrollo del primer SPARC.

Arquitectura RISC vs CISC


Jos Ignacio Vega Luna
Profesor Investigador de la UAM / Azcapotzalco
DCBI / Departamento de Electrnica

Roberto Snchez Gonzlez


Profesor Investigador de la UAM / Azcapotzalco
DCBI / Departamento de Electrnica

Gerardo Salgado Guzmn


Profesor Investigador de la UAM / Azcapotzalco
DCBI / Departamento de Electrnica

Luis Andrs Snchez Gonzlez


Hewlett Packard de Mxico

Hoy en da, los programas cada vez ms grandes y complejos demandan


mayor velocidad en el procesamiento de informacin, lo que implica la
bsqueda de microprocesadores ms rpidos y eficientes.

Los avances y progresos en la tecnologa de semiconductores, han reducido


las diferencias en las velocidades de procesamiento de los microprocesadores
con las velocidades de las memorias, lo que ha repercutido en nuevas
tecnologas en el desarrollo de microprocesadores. Hay quienes consideran
que en breve los microprocesadores RISC (reduced instruction set computer)
sustituirn a los CISC (complex instruction set computer), pero existe el hecho
que los microprocesadores CISC tienen un mercado de software muy
difundido, aunque tampoco tendrn ya que establecer nuevas familias en
comparacin con el desarrollo de nuevos proyectos con tecnologa RISC.

La arquitectura RISC plantea en su filosofa de diseo una relacin muy


estrecha entre los compiladores y la misma arquitectura como se ver ms
adelante.

INTRODUCCION
Veamos primero cual es el significado de los trminos CISC y RISC:

CISC (complex instruction set computer) Computadoras con un conjunto de


instrucciones complejo.
RISC (reduced instruction set computer) Computadoras con un conjunto de
instrucciones reducido.

Los atributos complejo y reducido describen las diferencias entre los dos modelos de
arquitectura para microprocesadores solo de forma superficial. Se requiere de
muchas otras caractersticas esenciales para definir los RISC y los CISC tpicos. Aun
ms, existen diversos procesadores que no se pueden asignar con facilidad a
ninguna categora determinada.
As, los trminos complejo y reducido, expresan muy bien una importante
caracterstica definitiva, siempre que no se tomen solo como referencia las
instrucciones, sino que se considere tambin la complejidad del hardware del
procesador.

Con tecnologas de semiconductores comparables e igual frecuencia de reloj,


un procesador RISC tpico tiene una capacidad de procesamiento de dos a
cuatro veces mayor que la de un CISC, pero su estructura de hardware es tan
simple, que se puede realizar en una fraccin de la superficie ocupada por el
circuito integrado de un procesador CISC.

Esto hace suponer que RISC reemplazar al CISC, pero la respuesta a esta
cuestin no es tan simple ya que:

Para aplicar una determinada arquitectura de microprocesador son decisivas


las condiciones de realizacin tcnica y sobre todo la rentabilidad, incluyendo
los costos de software.

Existan y existen razones de compatibilidad para desarrollar y utilizar


procesadores de estructura compleja as como un extenso conjunto de
instrucciones.

La meta principal es incrementar el rendimiento del procesador, ya sea optimizando


alguno existente o se desee crear uno nuevo. Para esto se deben considerar tres
reas principales a cubrir en el diseo del procesador y estas son:

La arquitectura.
La tecnologa de proceso.

El encapsulado.

La tecnologa de proceso, se refiere a los materiales y tcnicas utilizadas en la


fabricacin del circuito integrado, el encapsulado se refiere a cmo se integra un
procesador con lo que lo rodea en un sistema funcional, que de alguna manera
determina la velocidad total del sistema.
Aunque la tecnologa de proceso y de encapsulado son vitales en la
elaboracin de procesadores ms rpidos, es la arquitectura del procesador
lo que hace la diferencia entre el rendimiento de una CPU (Control Process
Unit) y otra. Y es en la evaluacin de las arqutecturas RISC y CISC donde
centraremos nuestra atencin.

Dependiendo de cmo el procesador almacena los operandos de las


instrucciones de la CPU, existen tres tipos de juegos de instrucciones:

1. Juego de instrucciones para arquitecturas basadas en pilas.

2. Juego de instrucciones para arquitecturas basadas en acumulador.

3. Juego de instrucciones para arquitecturas basadas en registros.

Las arqutecturas RISC y CISC son ejemplos de CPU con un conjunto de


instrucciones para arqutecturas basadas en registros.

ARQUITECTURAS CISC
La microprogramacin es una caracterstica importante y esencial de casi todas las
arqutecturas CISC.

Como por ejemplo:

Intel 8086, 8088, 80286, 80386, 80486.


Motorola 68000, 68010, 68020, 68030, 6840.

La microprogramacin significa que cada instruccin de mquina es


interpretada por un microprograma localizado en una memoria en el circuito
integrado del procesador.

En la dcada de los sesentas la micropramacin, por sus caractersticas, era


la tcnica ms apropiada para las tecnologas de memorias existentes en esa
poca y permita desarrollar tambin 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 de reloj (al menos uno por microinstruccin).

ARQUITECTURAS RISC
Buscando aumentar la velocidad del procesamiento se descubri en base a
experimentos que, con una determinada arquitectura de base, la ejecucin de
programas compilados directamente con microinstrucciones y residentes en memoria
externa al circuito integrado resultaban ser mas eficientes, gracias a que el tiempo de
acceso de las memorias se fue decrementando conforme se mejoraba su tecnologa
de encapsulado.

Debido a que se tiene un conjunto de instrucciones simplificado, stas se


pueden implantar por hardware directamente en la CPU, lo cual elimina el
microcdigo y la necesidad de decodificar instrucciones complejas.

En investigaciones hechas a mediados de la dcada de los setentas, con


respecto a la frecuencia de utilizacin de una instruccin en un CISC y al
tiempo para su ejecucin, se observ lo siguiente:

- Alrededor del 20% de las instrucciones ocupa el 80% del tiempo total de
ejecucin de un programa.

- Existen secuencias de instrucciones simples que obtienen el mismo


resultado que secuencias complejas predeterminadas, pero requieren tiempos
de ejecucin ms cortos.

Las caractersticas esenciales de una arquitectura RISC pueden resumirse


como sigue:

Estos microprocesadores siguen tomando como base el esquema moderno de


Von Neumann.

Las instrucciones, aunque con otras caractersticas, siguen divididas en tres


grupos:

a) Transferencia.
b) Operaciones.
c) Control de flujo.

Reduccin del conjunto de instrucciones a instrucciones bsicas simples, con


la que pueden implantarse todas las operaciones complejas.

Arquitectura del tipo load-store (carga y almacena). Las nicas instrucciones


que tienen acceso a la memoria son 'load' y 'store'; registro a registro, con un
menor nmero de acceso a memoria.

Casi todas las instrucciones pueden ejecutarse dentro de un ciclo de reloj.


Con un control implantado por hardware (con un diseo del tipo load-store),
casi todas las instrucciones se pueden ejecutar cada ciclo de reloj, base
importante para la reorganizacin de la ejecucin de instrucciones por medio
de un compilador.

Pipeline (ejecucin simultnea de varias instrucciones). Posibilidad de reducir


el nmero de ciclos de mquina necesarios para la ejecucin de la instruccin,
ya que esta tcnica permite que una instruccin puede empezar a ejecutarse
antes de que haya terminado la anterior.

El hecho de que la estructura simple de un procesador RISC conduzca a una notable


reduccin de la superficie del circuito integrado, se aprovecha con frecuencia para
ubicar en el mismo, funciones adicionales:

Unidad para el procesamiento aritmtico de punto flotante.


Unidad de administracin de memoria.

Funciones de control de memoria cache.

Implantacin de un conjunto de registros mltiples.

La relativa sencillez de la arquitectura de los procesadores RISC conduce a ciclos de


diseo ms cortos cuando se desarrollan nuevas versiones, lo que posibilita siempre
la aplicacin de las ms recientes tecnologas 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
generacin en generacin son mucho mayores que en los CISC.
Por otra parte, es necesario considerar tambin que:

La disponibilidad de memorias grandes, baratas y con tiempos de acceso


menores de 60 ns en tecnologas CMOS.

Mdulos SRAM (Memoria de acceso aleatorio esttica) para memorias cache


con tiempos de acceso menores a los 15 ns.

Tecnologas de encapsulado que permiten realizar ms de 120 terminales.

Esto ha hecho cambiar, en la segunda mitad de la dcada de los ochentas,


esencialmente las condiciones tcnicas para arqutecturas RISC.
La siguiente tabla esquematiza algunas de las principales caractersticas de
las arqutecturas RISC Y CISC.

PRINCIPIOS DE DISEO DE LAS MAQUINAS RISC


Resulta un tanto ingenuo querer abarcar completamente los principios de diseo de
las mquinas RISC, sin embargo, se intentar presentar de una manera general la
filosofa bsica de diseo de estas maquinas, teniendo en cuenta que dicha filosofa
puede presentar variantes. Es muy importante conocer estos principios bsicos, pues
de stos se desprenden algunas caractersticas importantes de los sistemas basados
en microprocesadores RISC.

En el diseo de una mquina RISC se tienen cinco pasos:

1. Analizar las aplicaciones para encontrar las operaciones clave.

2. Disear un bus de datos que sea ptimo para las operaciones clave.

3. Disear instrucciones que realicen las operaciones clave utilizando el bus de


datos.

4. Agregar nuevas instrucciones slo si no hacen ms lenta a la mquina.

5. Repetir este proceso para otros recursos.

El primer punto se refiere a que el diseador deber encontrar qu es lo que hacen


en realidad los programas que se pretenden ejecutar. Ya sea que los programas a
ejecutar sean del tipo algortmicos tradicionales, o estn dirigidos a robtica o al
diseo asistido por computadora.
La parte medular de cualquier sistema es la que contiene los registros, el ALU
y los 'buses' que los conectan. Se debe optimar este circuito para el lenguaje o
aplicacin en cuestin. El tiempo requerido, (denominado tiempo del ciclo del
bus de datos) para extraer los operandos de sus registros, mover los datos a
travs del ALU y almacenar el resultado de nuevo en un registro, deber
hacerse en el tiempo mas corto posible.

El siguiente punto a cubrir es disear instrucciones de mquina que hagan un


buen uso del bus de datos. Por lo general se necesitan solo unas cuantas
instrucciones y modos de direccionamiento; slo se deben colocar
instrucciones adicionales si sern usadas con frecuencia y no reducen el
desempeo de las ms importantes.

Siempre que aparezca una nueva y atractiva caracterstica, deber analizarse


y ver la forma en que se afecta al ciclo de bus. Si se incrementa el tiempo del
ciclo, probablemente no vale la pena tenerla.

Por ltimo, el proceso anterior debe repetirse para otros recursos dentro del
sistema, tales como memoria cache, administracin de memoria,
coprocesadores de punto flotante, etctera.

Una vez planteadas las caractersticas principales de la arquitectura RISC as


como la filosofa de su diseo, podramos extender el anlisis y estudio de
cada una de las caractersticas importantes de las arqutecturas RISC y las
implicaciones que estas tienen.

PAPEL DE LOS COMPILADORES EN UN SISTEMA RISC


El compilador juega un papel clave para un sistema RISC equilibrado.

Todas las operaciones complejas se trasladan al microprocesador por medio


de conexiones fijas en el circuito integrado para agilizar las instrucciones
bsicas ms importantes. De esta manera, el compilador asume la funcin de
un mediador inteligente entre el programa de aplicacin y el microprocesador.
Es decir, se hace un gran esfuerzo para mantener al hardware tan simple
como sea posible, an a costa de hacer al compilador considerablemente ms
complicado. Esta estrategia se encuentra en clara contra posicin con las
mquinas CISC que tienen modos de direccionamiento muy complicados. En
la prctica, la existencia en algunos modos de direccionamiento complicados
en los microprocesadores CISC, hacen que tanto el compilador como el
microprograma sean muy complicados.

No obstante, las mquinas CISC no tienen caractersticas complicadas como


carga, almacenamiento y salto que consumen mucho tiempo, las cuales en
efecto aumentan la complejidad del compilador.

Para suministrar datos al microprocesador de tal forma que siempre est


trabajando en forma eficiente, se aplican diferentes tcnicas de optimizacin
en distintos niveles jerrquicos del software.

Los diseadores de RISC en la empresa MIP y en Hewlett Packard trabajan


segn la regla siguiente:

Una instruccin ingresa en forma fija en el circuito integrado del


procesador (es decir, se alambra fsicamente en el procesador) si se ha
demostrado que la capacidad total del sistema se incrementa en por lo
menos un 1%.

En cambio, los procesadores CISC, han sido desarrollados por equipos


especializados de las empresas productoras de semiconductores y con
frecuencia el desarrollo de compiladores se sigue por separado. Por
consiguiente, los diseadores de los compiladores se encuentran con una
interfaz hacia el procesador ya definido y no pueden influir sobre la
distribucin ptima de las funciones entre el procesador y compilador.

Las empresas de software que desarrollan compiladores y programas de


aplicacin, tienden por razones de rentabilidad, a utilizar diferentes
procesadores como usuarios de su software en lugar de realizar una
optimizacin completa, y aprovechar as las respectivas caractersticas de
cada uno. Lo cual tambin genera otros factores negativos de eficiencia. Esta
limitacin de las posibilidades de optimizacin del sistema, que viene dada a
menudo por una obligada compatibilidad, se super con los modernos
desarrollos RISC.

CAPACIDAD DE PROCESAMIENTO DE LOS SISTEMAS DESDE EL PUNTO DE


VISTA DEL USUARIO
Aparte de la base conceptual para el desarrollo de un sistema de computacin de alta
calidad, se requieren tcnicas especiales para optimizar cada uno de los factores que
determinan la capacidad de procesamiento, la cual, solo puede definirse con el
programa de aplicacin.

La informacin suministrada por un fabricante, sobre la velocidad en mips


(millones de Instrucciones por segundo) que una arquitectura es capaz de
realizar, carece de relevancia hasta que el usuario sepa cuantas instrucciones
genera el respectivo compilador, al traducir su programa de aplicacin y
cunto tiempo tarda la ejecucin de estas instrucciones, y solo el anlisis de
diferentes pruebas y comparaciones de rendimiento ("benchmarks) da una
idea aproximada, que el usuario puede aplicar para delimitar las arqutecturas
adecuadas.

Dos diferentes puntos de vista acerca de capacidad de procesamiento


del sistema.

Sistema reprogramable. Un usuario que necesite desarrollar un sistema


reprogramable, no est interesado en obtener una alta capacidad de
procesamiento.

Sistema incluido o dedicado. En estos sistemas el principal objetivo es


procesar en forma repetitiva una serie de aplicaciones o funciones
determinadas, y es de suma importancia la mayor cantidad posible de pruebas
y comparaciones de rendimiento ("benchmarks" ) diferentes.

As, estas pruebas y comparaciones sirven para determinar la capacidad de


procesamiento de los sistemas, pero solo el anlisis de varios resultados de
diferentes programas da una idea aproximada de la capacidad de procesamiento real.

APLICACIONES DE LOS PROCESADORES RISC


Las arquitecturas CISC utilizadas desde hace 15 aos han permitido desarrollar un
gran nmero de productos de software. Ello representa una considerable inversin y
asegura a estas familias de procesadores un mercado creciente. Sin embargo,
simultneamente aumentan las aplicaciones en las cuales la capacidad de
procesamiento que se pueda obtener del sistema es ms importante que la
compatibilidad con el hardware y el software anteriores, lo cual no solo es vlido en
los subsistemas de alta capacidad en el campo de los sistemas llamados
"embedded", en los que siempre dominaron las soluciones especiales de alta
capacidad de procesamiento sino tambin para las estaciones de trabajo
("workstations"). Esta clase de equipos se han introducido poco a poco en oficinas, en
la medicina y en bancos, debido a los cada vez mas voluminosos y complejos
paquetes de software que con sus crecientes requerimientos de reproduccin visual,
que antes se encontraban solo en el campo tcnico de la investigacin y desarrollo.

En este tipo de equipos, el software de aplicacin, se ejecuta bajo el sistema


operativo UNIX, el cual es escrito en lenguaje C, por lo que las arqutecturas
RISC actuales estn adaptadas y optimizadas para este lenguaje de alto nivel.
Por ello, todos los productores de estaciones de trabajo de renombre, han
pasado en pocos aos, de los procesadores CISC a los RISC, lo cual se
refleja en el fuerte incremento anual del nmero de procesadores RISC, (los
procesadores RISC de 32 bits han visto crecer su mercado hasta en un 150%
anual). En pocos aos, el RISC conquistar de 25 al 30% del mercado de los
32 bits, pese al aparentemente abrumador volumen de software basado en
procesadores con el estndar CISC que se ha comercializado en todo el
mundo.

La arquitectura MIPS-RISC ha encontrado, en el sector de estaciones de


trabajo, la mayor aceptacin. Los procesadores MIPS son fabricados y
comercializados por cinco empresas productoras de semiconductores, entre
las que figuran NEC y Siemens. Los procesadores de los cinco proveedores
son compatibles en cuanto a las terminales, las funciones y los bits.

CONCLUSIONES
Cada usuario debe decidirse a favor o en contra de determinada arquitectura de
procesador en funcin de la aplicacin concreta que quiera realizar. Esto vale tanto
para la decisin por una determinada arquitectura CISC o RISC, como para
determinar si RISC puede emplearse en forma rentable para una aplicacin concreta.

Nunca ser decisiva nicamente la capacidad de procesamiento del


microprocesador, y s la capacidad real que puede alcanzar el sistema en su
conjunto.

Los costos, por su parte, tambin sern evaluados.

Supongamos por ejemplo, que el precio de un procesador sea de $500.00 USD, ste
ser secundario para un usuario que disea una estacin de trabajo para venderla
despus a un precio de $100 000.00 USD. Su decisin se orientar exclusivamente
por la potencialidad de este procesador.
RISC ofrece soluciones atractivas donde se requiere una elevada capacidad
de procesamiento y se presente una orientacin hacia los lenguajes de alto
nivel.

En el campo industrial existe un gran nmero de aplicaciones que ni siquiera


agotan las posibilidades de los controladores CISC de 8 bits actuales.

Si bin el campo de aplicaciones de las arqutecturas RISC de alta capacidad


crece con fuerza, esto no equivale al fin de otras arqutecturas de
procesadores y controladores acreditadas que tambin seguirn
perfeccionndose, lo que si resulta dudoso es la creacin de familias CISC
completamente nuevas.

Adoptando tcnicas tpicas de los procesadores RISC en las nuevas versiones


de procesadores CISC, se intenta encontrar nuevas rutas para el incremento
de la capacidad de las familias CISC ya establecidas.

Entre tanto, los procesadores RISC han conquistado el sector de las


estaciones de trabajo, dominado antes por los procesadores Motorola 68 000,
y es muy probable que acosen la arquitectura Intel en el sector superior de las
PC's.

Las decisiones en el mercado las toman los usuarios, y aqu, el software o la


aplicacin concreta juega un papel mucho ms importante que las diferencias
entre las estructuras que son inapreciables para el usuario final.

BIBLIOGRAFIA
1. Tanembaum, Andrew S. (1992)
"Organizacin de Computadoras. Un Enfoque Estructurado"
Ed. Prentice Hall.

2. Rolf Jurgen B.
"Del CISC al RISC: Aumento explosivo de la potencia en los
microprocesadores"
Revista Siemens Ao 51 Enero/Marzo 1991. Siemens Aktiengesellschaft.
Munich, RFA.

3. Hernndez, Luis.
"RISC O CISC?"
PC/TIPS BYTE. Ao 5 No. 50 Marzo de 1992.

Jos Ignacio Vega Luna / vlji@hp9000a1.uam.mx


Profesor Investigador de la UAM / Azcapotzalco
DCBI / Departamento de Electrnica

Roberto Snchez Gonzlez / sgr@hp9000a1.uam.mx


Profesor Investigador de la UAM / Azcapotzalco
DCBI / Departamento de Electrnica

Gerardo Salgado Guzmn / gsg@hp9000a1.uam.mx


Profesor Investigador de la UAM / Azcapotzalco
DCBI / Departamento de Electrnica

Luis Andrs Snchez Gonzlez


Hewlett Packard de Mxico

MIMD
Taxonoma de Flynn

Una Mltiples
instruccin instrucciones

Un
SISD MISD
dato

Mltiples
SIMD MIMD
datos

En computacin, MIMD (del ingls Multiple Instruction, Multiple Data,


en espaol "mltiples instrucciones, mltiples datos") es una tcnica empleada para
lograr paralelismo. Las mquinas que usan MIMD tienen un nmero de procesadores que
funcionan de manera asncrona e independiente. En cualquier momento, cualquier
procesador puede ejecutar diferentes instrucciones sobre distintos datos. La arquitectura
MIMD pueden utilizarse en una amplia gama de aplicaciones como el diseo
asistido, simulacin, modelado y en interruptores. Las computadoras MIMD pueden
categorizarse por tener memoria compartida o distribuida, clasificacin que se basa en
cmo el procesador MIMD accede a la memoria. La memoria compartida de las mquinas
puede estar basada en buses, extensiones, o de tipo jerrquico. Las mquinas con
memoria distribuida pueden tener esquemas de interconexin en hipercubo o malla.

You might also like