cisc y risc

52
. Introducción 2. Procesadores: CISC y RISC 3. Kripton - 5 O K5 De Amd 4. Pentium pro de intel 5. Mips 6. Sun microsystems 7. Hewlett - packard 8. Fundamentos y origen del risc 9. Corazón del risc 10. Compiladores optimizados del risc 11. ¿ Risc o cisc ? 1. Introducción Todos los CPUs x86 compatibles con la PC son procesadores CISC (Computadora de Conjunto de Instrucciones Complejas), pero en las Mac nuevas o en alguna que se hagan dibujos de ingeniería complejos, probablemente tengan un CPU RISC (Computadora de Conjunto de Instrucciones Reducido). La diferencia práctica entre CISC y RISC es que los procesadores CISCx86 corren a DOS, Windows 3.1 y Windows 95 en el modo nativo; es decir, sin latraducción de software que disminuya el desempeño. Pero CISC y RISC también reflejan dos filosofías de computación rivales. El procesamiento de RISC requiere breves instrucciones de software de la misma longitud, que son fáciles de procesar rápidamente y en tandém por un CPU. En contraste, un procesador de CISC tiene que procesar instrucciones más largas de longitud desigual. Es más difícil procesar múltiples instrucciones de CISC a la vez. Los que proponen RISC mantienen que su método de procesamiento es más eficiente y más escalable, por lo que los arquitectos pueden añadir unidades de ejecución más fácilmente a un diseño existente y aumentar el rendimiento (las unidades de ejecución son los circuitos dentro del chip que hacen gran parte del trabajo). Similarmente, RISC facilita el multiprocesamiento verdadero, donde varios CPUs trabajan simétricamente mientras dividen, ejecutan y ensamblan una cadena de instrucción; los chips CISC pueden hacer lo mismo, pero no son tan efectivos. La simplicidad de las instrucciones de RISC también significa que requieren menos lógica para ejecutar, reduciendo el costo del chip. Pocos en el campo del CISC discuten estos hechos, prefiriendo apuntar a la realidad <<la gran mayoría del software para la PC está escrito para procesadores CISC>>. Todo el debate de CISC/RISC puede ser irrelevante pronto debido a que nuevas técnicas están convergiendo. El Pentium Pro, el Nx586 y el K5 son básicamente procesadores RISC en su núcleo. Toman las instrucciones de CISC y las traducen a instrucciones estilo RISC.

Upload: gabriela-ortega

Post on 26-Jun-2015

756 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: cisc y risc

. Introducción2. Procesadores: CISC y RISC3. Kripton - 5 O K5 De Amd4. Pentium pro de intel5. Mips 6. Sun microsystems7. Hewlett - packard8. Fundamentos y origen del risc9. Corazón del risc10. Compiladores optimizados del risc11. ¿ Risc o cisc ?

1. Introducción

Todos los CPUs x86 compatibles con la PC son procesadores CISC (Computadora de Conjunto de Instrucciones Complejas), pero en las Mac nuevas o en alguna que se hagan dibujos de ingeniería complejos, probablemente tengan un CPU RISC (Computadora de Conjunto de Instrucciones Reducido).

La diferencia práctica entre CISC y RISC es que los procesadores CISCx86 corren a DOS, Windows 3.1 y Windows 95 en el modo nativo; es decir, sin latraducción de software que disminuya el desempeño. Pero CISC y RISC también reflejan dos filosofías de computación rivales. El procesamiento de RISC requiere breves instrucciones de software de la misma longitud, que son fáciles de procesar rápidamente y en tandém por un CPU.

En contraste, un procesador de CISC tiene que procesar instrucciones más largas de longitud desigual. Es más difícil procesar múltiples instrucciones de CISC a la vez.

Los que proponen RISC mantienen que su método de procesamiento es más eficiente y más escalable, por lo que los arquitectos pueden añadir unidades de ejecución más fácilmente a un diseño existente y aumentar el rendimiento (las unidades de ejecución son los circuitos dentro del chip que hacen gran parte del trabajo). Similarmente, RISC facilita el multiprocesamiento verdadero, donde varios CPUs trabajan simétricamente mientras dividen, ejecutan y ensamblan una cadena de instrucción; los chips CISC pueden hacer lo mismo, pero no son tan efectivos. La simplicidad de las instrucciones de RISC también significa que requieren menos lógica para ejecutar, reduciendo el costo del chip. Pocos en el campo del CISC discuten estos hechos, prefiriendo apuntar a la realidad <<la gran mayoría del software para la PC está escrito para procesadores CISC>>.

Todo el debate de CISC/RISC puede ser irrelevante pronto debido a que nuevas técnicas están convergiendo. El Pentium Pro, el Nx586 y el K5 son básicamente procesadores RISC en su núcleo. Toman las instrucciones de CISC y las traducen a instrucciones estilo RISC. Para la generación que sigue al Pentium Pro, Intel y Hewlett-Packard están colaborando en un CPU híbrido que pueda aceptar instrucciones RISC y CISC. Si ese chip crea un estándar, puede acelerar el cambio hacia el software optimizado para RISC. Un mundo de RISC significaría CPUs más poderosos, y más baratos. Cuando quiera mejorar, simplemente puede añadir otro CPU en lugar de desprenderse de su viejo CPU.

Page 2: cisc y risc

2. Procesadores: CISC y RISC

Los procesadores se agrupan hoy en dos familias, la más antigua y común de las cuales es la "CISC" o "Complex InstructionSet Computer": computadorde set complejo de instrucciones. Esto corresponde a procesadores que son capaces de ejecutarun gran número de instrucciones pre-definidas enlenguaje de máquina (del orden del centenar).

Desde hace unos años se fabrican y utilizan en algunas máquinas procesadores "RISC" o "Reduced Instruction Set Computer",es decir con un número reducido de instrucciones. Esto permite una ejecución más rápida de las instrucciones pero requierecompiladores (o sea traductores automáticos deprogramas) más complejos ya que las instrucciones que un "CISC" podríaadmitir pero no un "RISC", deben ser escritas como combinaciones de varias instruciones admisibles del "RISC". Se obtieneuna ganancia en velocidad por el hecho que el RISC domina instrucciones muy frecuentes mientras sonoperaciones menosfrecuentes las que deben descomponerse.

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 existiran los CISC puros.

Hace ya tiempo que se ha empezado a investigar sobre microprocesadores "hibridos", es decir, han llevado a cabo el que las nuevas CPU's no sean en su cien por cien CISC, sino por el contrario, que estas ya contengan algunos aspectos de tecnologia RISC. Este proposito se ha realizado con el fin de obtener ventajas procedentes de ambas tecnologias (mantener la compatibilidad x86 de los CISC, y a la vez aumentar las prestaciones hasta aproximarse a un RISC), sin embargo, este objetivo todavia no se ha conseguido, de momento se han introducido algunos puntos del RISC, lo cual no significa que hayan alcanzado un nivel optimo.

Realmente, las diferencias son cada vez mas borrosas entre las arquitecturas CISC y RISC. Las CPU's combinan elementos de ambas y no son faciles de encasillar. Por ejemplo, el Pentium Pro traduce las largas instrucciones CISC de la arquitectura x86 a microoperaciones sencillas de longitud fija que se ejecutan en un nucleo de estilo RISC. El UltraSparc-II de Sun, acelera la decodificacion MPEG con unas instrucciones especiales para graficos; estas instrucciones obtienen unos resultados que en otros procesadores requeririan 48 instrucciones.

Por lo tanto a corto plazo, en el mercado coexistiran las CPU's RISC y los microprocesadores hibridos RISC - CISC, pero cada vez con diferencias mas difusas entre ambas tecnologias. De hecho, los futuros procesadores lucharan en cuatro frentes :

-Ejecutar mas instrucciones por ciclo.

-Ejecutar las instrucciones en orden distinto del original para que las interdependencias

entre operaciones sucesivas no afecten al rendimiento del procesador.

-Renombrar los registros para paliar la escasez de los mismos.

Page 3: cisc y risc

-Contribuir a acelerar el rendimiento global del sistema, ademas de la velocidad de la

CPU.

A continuacion pasaremos a comentar brevemente algunas de las CPU's, recien salidas o proximas a salir:

3. Kripton - 5 O K5 De Amd

Estado Actual : Muestras comerciales.

Velocidad Prevista : 120 Mhz

Rendimiento Estimado : Entre 109 y 115 SPECint92.

Proceso de Fabricacion : CMOS de tres capas de metal.

Tamaño de la Tecnologia de Proceso : 0'35 micras

Ventajas Tecnologicas :

Microarquitectura superescalar de cuatro vias

Nucleo de tipo RISC desacoplado

Ejecucion especulativa con reordenacion de instrucciones

Desventajas Tecnologicas :

Velocidades de reloj inferiores a las inicialmente previstas

Las extensas pruebas de compatibilidad han retrasado el lanzamiento

Donde Consultar : http : // www.amd.com

4. Pentium pro de intel

Estado Actual : Inicios de produccion.

Velocidad Prevista : 150 Mhz

Rendimiento Estimado : Entre 220 SPECint92; 215 SPECfp92

Proceso de Fabricacion : BiCMOS.

Tamaño de la Tecnologia de Proceso : 0'6 micras

Ventajas Tecnologicas :

Paquete multichip que integra una cache secundaria de 256 KB que se comunica con la CPU a la misma velocidad del procesador

Microarquitectura superescalar con reordenacion de instrucciones

Superpipelines incluidos para permitir altas velocidades de reloj.

Desventajas Tecnologicas :

Alto precio de fabricacion del paquete multichip

Microarquitectura optimizada para software de 32 bits, que tienen rendimiento pobre con codigo de 16 bits

Consumo de energia y disipacion de calor totalmente inapropiadas para ordenadores portatiles

Page 4: cisc y risc

Donde Consultar : http : // www.intel.com

5. Mips

Estado Actual : Primeras pruebas de produccion

Velocidad de reloj Prevista : 200 Mhz

Rendimiento Estimado : 300 SPECint92 y 600 SPECfp92

Proceso de Fabricacion : CMOS

Tamaño de la Tecnologia de Proceso : 0'35 micras

Ventajas Tecnologicas :

Este chip de 64 bits tiene cinco pipelines funcionales, por lo que puede llegar a ejecutar cinco instrucciones por ciclo de reloj. Con dos unidades de coma flotante de precision doble, el R10000 esta optimizado para sostener un alto rendimiento de coma flotante.

Desventajas Tecnologicas :

Para optimizar el rendimiento, la memoria cache secundaria externa tiene que fabricarse con costosa tecnologia

SRAM.

Donde Consultar : http : // www.mips.com

6. Sun microsystems

Estado Actual : Diseño

Velocidad de Reloj Prevista : de 250 a 300 Mhz

Rendimiento Estimado : De 350 a 420 SPECint92 y de 550 a 660 SPECfp92

Proceso de Fabricacion : CMOS de cinco capas de metal.

Tamaño de la Tecnologia de Proceso : 0'3 micras

Ventajas Tecnologicas :

El UltraSparc-II es una CPU de 64 bits superescalar de cuatro vias que no ha sido optimizada para tener unas altas cifras de rendimiento puro, sino para aplicaciones multimedia y de red.

Desventajas Tecnologicas :

La falta de asistencia por harware para reordenar instrucciones crea una gran dependencia hacia la calidad de los compiladores y exige la recompilacion del software anterior para disfrutar de todas las ventajas del chip

UltraSparc-II.

Donde Consultar : http : // www.sun.com / sparc /

7. Hewlett - packard

Estado Actual : Muestras de produccion

Velocidad de Reloj Prevista : de 200 Mhz

Rendimiento Estimado : Superior a 360 SPECint92 y 550 SPECfp92

Page 5: cisc y risc

Proceso de Fabricacion : CMOS

Tamaño de la Tecnologia de Proceso : 0'5 micras

Ventajas Tecnologicas :

HP es el unico fabricante RISC que deja fuera del chip las memorias cache primarias de instrucciones y datos, por lo que pueden tener un tamaño de varios megabytes y tener un buen rendimiento con los datos de tamaño excesivo para la cache, que suelen ser problematicos para otros nucleos RISC diseñados solo para la velocida de proceso.

Desventajas Tecnologicas :

Las caches externas funcionan a la misma velocidad que la CPU y, por tanto, deben estar fabricadas con la costosisima SRAM ultrarrapida.

Donde Consultar : http : // www.hp.com

8. Fundamentos y origen del risc

Los titulares que definen la arquitectura RISC, podria resumirse, con la suficiente flexibilidad, en varios puntos :

- Reduccion del numero de instrucciones ( ensamblador ).

- Uso intensivo de registros, diminuyendo los accesos a memoria.

- Simplificacion de la CPU en aras de una mayor velocidad de proceso.

- Empleo de memorias cache.

- Utilizacion de "compiladores optimizados", generadores de codigo objeto adaptado a los requerimientos de la CPU.

9. Corazón del risc

La CPU o procesador es el centro, el cerebro del ordenador. Sera ella quien dicte las acciones a tomar tras leer la informacion contenida en memoria. Se alimenta de instrucciones en lenguaje ensamblador para, a partir de cada una de estas, generar una pleyade de ordenes ( microordenes ) que, semiocultas al programador, recorreran las interioridades del propio procesador, activando registros, etc,... de su complejo hardware, a la vez que escapan hacia el exterior de la CPU con la mision de gobernar el comportamiento de la memoria buses de E/S, etc. En resumen son estas microordenes las que constituyes el sistema nervioso del ordenador. El problema se plantea al implementar en la CPU un dispositivo que "dispare" una serie de respuestas ante el estimulo de los "LOAD", "STORE", "JUMP", "MOVE"...

Las CPU's cuentan con una pequeña memoria de control de naturaleza ROM en la que se graba el conjunto de microordenes que corresponden a cada instruccion. Cuando una de estas es introducida en el procesadorm, lo que se hace realmente es utilizarla para direccionar adecuadamente la memoria de control y obtener asi las microordenes correspondientes. ¿Ventajas? Un cambio en las instrucciones solo exige regrabar esta ROM.

¿ COMO SURGE EL RISC ?

Los ordenadores etiquetados como CISC gozan de los privilegios y defectos del microcodigo. La CPU es considerablemente mas rapida que la

Page 6: cisc y risc

memoriaprincipal. Esto significa que conviene manejar un amplio abanico de instrucciones complejas cuyo significado equivalga al de varias instrucciones simples, disminuyendo asi los accesos a memoria. A esto se le añade la tandencia de aumentar el grado de complejidad de las instrucciones para acercarlas a los lenguajes de alto nivel.

Sin embargo, como resultado de icertos estudios en los que se examino la frecuencia de utilizacion de las diferentes instrucciones, se observo que el 80 % del tiempo era consumido por solo el 20 % de las instrucciones, con prioridad de los almacenamientos (STORE), cargas (LOAD) y bifurcaciones (BRANCH).

Instrucciones mas usadas

Esto significa que se poseian soberbias memorias de control cuyo contenido era muy poco utilizado. Se estaba penalizando la velocidad de respuesta en aras de tener informacion poco util.

La alternativa RISC se basa en esto y propone procesadores cableados con un repertorio simple de instrucciones sencillas y frecuentes; todo codigo complejo puede descomponerse en varios congeneres mas elementales en los que, para evitar los terribles efectos sobre los retardos de la memoria principal (MP), se recurre a numerosos registros y a memorias cache. Un registro es una unidad de almacenamiento enclavada en la CPU y, por tanto, tan rapida como esta. Las memorias cache son pequeñas memorias de alta velocidad, se alimentan de la MP, de la que toman la informacion que esta siendo mas frecuentemente utilizada. Otro de los objetivos del RISC fue lograr que a cada instruccion correspondiera un solo ciclo de reloj, a excepcion, de aquellos casos que hay que mover datos.

- Disminuye la probabilidad de fallo.

- Reduce el tamaño de la CPU, que puede entonces albergar mas recursos (registros).

- Facilita el diseño.

- Permite maquinas mas compactas y con menor consumo.

- A menor complejidad... menor coste.

Aun asi con todos los datos obtenidos a favor y en contra del CISC y del RISC, hay que tener en cuenta otro factor importante : la eficacia del software.

10. Compiladores optimizados del risc

Es cierto que un procesador RISC es mas veloz que uno CISC, pero tambien lo es que, al ser mas simples las instrucciones, necesita mas de estas para emular funciones complejas, por lo que los programas son mas largos y voluminosos. Es decir, el codigo objeto generado, ocupa mas memoria y, al ser mas extenso, emplea mas tiempo

en ser procesado. Los partidarios argumentan que el factor volumen de memoria incide poco en el precio,ademas estiman que el aumento de codigo no toma dimensiones importantes por el uso de coprocesadores y compiladores optimizados.

Los segundos destacan dos aspectos :

Page 7: cisc y risc

1.- Al existir menor variedad en el codigo generado, el proceso de compilacion es mas rapido. El motivo es que hay menor numero de reglas y posibilidades entre las que elegir ( no existira la disyuntiva de construir la misma accion por diferentes caminos, solo habra una forma unica ) evitando la exploracion de grandes tablas de instrucciones en busca del sujeto correcto.

" En un ordenador convencional, la misma instruccion de lenguaje de alto nivel puede ejecutarse de diversa formas, cada una con sus inconvenientes y ventajas, pero en el RISC solo hay una forma de hacer las cosas "

2.- Al traducir los lenguajes de alto nivel mediante unidades de extrema simplicidad, se incremente la eficiencia. Si se emplean instrucciones potentes secorre el riesgo de no aprovecharlas en su totalidad y potencia, menor es la adaptacion a los diferentes casos particulares

11. ¿ Risc o cisc ?

El conflicto surge al evaluar las ventajas netas ¿ que es mas apropiado, usar muchas instrucciones de un solo ciclo aprovechadas al maximo, o pocas de multiples pasos de reloj en las que existe infrautilizacion ?

La cuestion, es que hasta el momento, el estudio de prestaciones de ambas tecnologias, nos ha llevado a concluir que hoy en dia los RISC obtienen mas prestaciones, es decir, son mas potentes y rapidos que los CISC. Sin embargo, el mercado se ha decantado por la tecnologia CISC en cuanto a volumen de ventas. ¿ Por que ?

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 tecnologia ha sido enfocada a ventas a nivel de empresa y equipos de gama alta.

2.- La utilidad que se le de a la maquina es muy importante, ya que el usuario debe de encontrar un nivel optimo en cuanto a calidad - precio. Y por que pagar mas 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 ultimos, por lo general tienen un software mas asequible.

4.- Dada la compatibilidad hacia atras de la familia CISC x86, los usuarios han podido renovar sus equipos sin por ello tener que abandonar software que ya conocian, y reutilizar sus datos. Asi mismo, los fabricantes han tenido en cuenta este factor, puesto que seguir con otra linea de procesadores suponia no solo un cambio muy radical, sino que ademas podia llevar un riesgo en cuanto a ventas.

Estos son algunos de los motivos. Sin embargo, tambien hay que tener en cuenta el conflicto de intereses de algunos fabricantes, asi como la opinion de distintas revistas, algunas de ellas asociadas a diferentes marcas.

Se estan estudiando las tendencias futuras, como pueden ser los hibridos, mejoras en los microprocesadores CISC, mejoras en los RISC, ...

 

 

Page 8: cisc y risc

Autor:

Luis Ernestoluis.ernesto[arroba]codetel.net.do

Fuente

http://www.monografias.com/trabajos5/teccisc/teccisc.shtml

Page 9: cisc y risc

Mejor respuesta - elegida por quien preguntó

De Arquitectura computacional, RISC (del inglés Reduced Instruction Set Computer), Computadora con Conjunto de Instrucciones Reducido. Es un tipo de microprocesadores con las siguientes características fundamentales:

1. Instrucciones de tamaño fijo y presentadas en un reducido número de formatos.2. Sólo las instrucciones de carga y almacenamiento acceden a la memoria por datos.

Además estos procesadores suelen disponer de muchos registros de propósito general.

El objetivo de diseñar máquinas con esta arquitectura es posibilitar la segmentación y el paralelismo en la ejecución de instrucciones y reducir los accesos a memoria. Las máquinas RISC protagonizan la tendencia actual de construcción de microprocesadores. PowerPC, DEC Alpha, MIPS, ARM... son ejemplos de algunos de ellos.

RISC es una filosofía de diseño de CPU para computadora que está a favor de conjuntos de instrucciones pequeños y simples que toman menor tiempo para ejecutarse. El tipo de procesador más comúnmente utilizado en equipos de escritorio, el x86, está basado en CISC en lugar de RISC, aunque las versiones más nuevas traducen instrucciones basadas en CISC x86 a instrucciones más simples basadas en RISC para uso interno antes de su ejecución.

CISC: Un tipo de procesadores que reconoce un conjunto amplio de órdenes, pero que normalmente realiza los pasos indicados por esas órdenes con menor velocidad que un procesador RISC. Es el caso de la serie X86 de Intel.

Un ejemplo de CISC es tu PC. Un ejemplo de RISC son el Play Station 3 y los IBM AS/400.

Fuente(s):http://es.wikipedia.org/wiki/RISC

Page 10: cisc y risc

Hoy en día, los programas cada vez más grandes y complejos demandan mayor velocidad en el procesamiento de información, lo que implica la búsqueda de microprocesadores más rápidos y eficientes.

Los avances y progresos en la tecnología 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 tecnologías en el desarrollo de microprocesadores. Hay quienes consideran que en breve los microprocesadores RISC (reduced instruction set computer) sustituirán a los CISC (complex instruction set computer), pero existe el hecho que los microprocesadores CISC tienen un mercado de software muy difundido, aunque tampoco tendrán ya que establecer nuevas familias en comparación con el desarrollo de nuevos proyectos con tecnología RISC.

La arquitectura RISC plantea en su filosofía de diseño una relación muy estrecha entre los compiladores y la misma arquitectura como se verá más adelante.

INTRODUCCION

Veamos primero cual es el significado de los términos 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 características esenciales para definir los RISC y los CISC típicos. Aun más, existen diversos procesadores que no se pueden asignar con facilidad a ninguna categoría determinada.

Así, los términos complejo y reducido, expresan muy bien una importante característica definitiva, siempre que no se tomen solo como referencia las instrucciones, sino que se considere también la complejidad del hardware del procesador.

Page 11: cisc y risc

Con tecnologías de semiconductores comparables e igual frecuencia de reloj, un procesador RISC típico 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 fracción 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 cuestión no es tan simple ya que:

Para aplicar una determinada arquitectura de microprocesador son decisivas las condiciones de realización técnica y sobre todo la rentabilidad, incluyendo los costos de software.

Existían 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 diseño del procesador y estas son:

La arquitectura. La tecnología de proceso. El encapsulado.

La tecnología de proceso, se refiere a los materiales y técnicas utilizadas en la fabricación del circuito integrado, el encapsulado se refiere a cómo 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 tecnología de proceso y de encapsulado son vitales en la elaboración de procesadores más rápidos, 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 evaluación de las arquítecturas RISC y CISC donde centraremos nuestra atención.

Dependiendo de cómo 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.

Page 12: cisc y risc

3. Juego de instrucciones para arquitecturas basadas en registros.

Las arquítecturas RISC y CISC son ejemplos de CPU con un conjunto de instrucciones para arquítecturas basadas en registros.

ARQUITECTURAS CISC

La microprogramación es una característica importante y esencial de casi todas las arquítecturas CISC.

Como 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 década de los sesentas la micropramació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 de reloj (al menos uno por microinstrucción).

ARQUITECTURAS 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 mas eficientes, gracias a que el tiempo de acceso de las memorias se fue decrementando conforme se mejoraba su tecnología de encapsulado.

Page 13: cisc y risc

Debido a que 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.

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.

Las características 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 características, siguen divididas en tres grupos:

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

Reducción del conjunto de instrucciones a instrucciones básicas 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 número de acceso a memoria.

Casi todas las instrucciones pueden ejecutarse dentro de un ciclo de reloj. Con un control implantado por hardware (con un diseño del tipo load-store), casi todas las instrucciones se pueden ejecutar cada ciclo de reloj, base importante para la reorganización de la ejecución de instrucciones por medio de un compilador.

Pipeline (ejecución simultánea de varias instrucciones). Posibilidad de reducir el número de ciclos de máquina necesarios para la ejecución de la instrucción, ya que esta técnica permite que una instrucción puede empezar a ejecutarse antes de que haya terminado la anterior.

Page 14: cisc y risc

El hecho de que la estructura simple de un procesador RISC conduzca a una notable reducción de la superficie del circuito integrado, se aprovecha con frecuencia para ubicar en el mismo, funciones adicionales:

Unidad para el procesamiento aritmético de punto flotante. Unidad de administración de memoria. Funciones de control de memoria cache. Implantación de un conjunto de registros múltiples.

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.

Por otra parte, es necesario considerar también que:

La disponibilidad de memorias grandes, baratas y con tiempos de acceso menores de 60 ns en tecnologías CMOS.

Módulos SRAM (Memoria de acceso aleatorio estática) para memorias cache con tiempos de acceso menores a los 15 ns.

Tecnologías de encapsulado que permiten realizar más de 120 terminales.

Esto ha hecho cambiar, en la segunda mitad de la década de los ochentas, esencialmente las condiciones técnicas para arquítecturas RISC.

La siguiente tabla esquematiza algunas de las principales características de las arquítecturas RISC Y CISC.

PRINCIPIOS DE DISEÑO DE LAS MAQUINAS RISC

Resulta un tanto ingenuo querer abarcar completamente los principios de diseño de las máquinas RISC, sin embargo, se intentará presentar de una manera general la filosofía básica de diseño de estas

Page 15: cisc y risc

máquinas, teniendo en cuenta que dicha filosofía puede presentar variantes. Es muy importante conocer estos principios básicos, pues de éstos se desprenden algunas características importantes de los sistemas basados en microprocesadores RISC.

En el diseño de una máquina RISC se tienen cinco pasos:

1. Analizar las aplicaciones para encontrar las operaciones clave.2. Diseñar un bus de datos que sea óptimo para las operaciones

clave.3. Diseñar instrucciones que realicen las operaciones clave

utilizando el bus de datos.4. Agregar nuevas instrucciones sólo si no hacen más lenta a la

máquina.5. Repetir este proceso para otros recursos.

El primer punto se refiere a que el diseñador 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 algorítmicos tradicionales, o estén dirigidos a robótica o al diseño 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 aplicación en cuestión. El tiempo requerido, (denominado tiempo del ciclo del bus de datos) para extraer los operandos de sus registros, mover los datos a través 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 diseñar instrucciones de máquina que hagan un buen uso del bus de datos. Por lo general se necesitan solo unas cuantas instrucciones y modos de direccionamiento; sólo se deben colocar instrucciones adicionales si serán usadas con frecuencia y no reducen el desempeño de las más importantes.

Siempre que aparezca una nueva y atractiva característica, 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, administración de memoria, coprocesadores de punto flotante, etcétera.

Page 16: cisc y risc

Una vez planteadas las características principales de la arquitectura RISC así como la filosofía de su diseño, podríamos extender el análisis y estudio de cada una de las características importantes de las arquítecturas 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 básicas más importantes. De esta manera, el compilador asume la función de un mediador inteligente entre el programa de aplicación y el microprocesador. Es decir, se hace un gran esfuerzo para mantener al hardware tan simple como sea posible, aún a costa de hacer al compilador considerablemente más complicado. Esta estrategia se encuentra en clara contra posición con las máquinas CISC que tienen modos de direccionamiento muy complicados. En la práctica, 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 máquinas CISC no tienen características 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 técnicas de optimización en distintos niveles jerárquicos del software.

Los diseñadores de RISC en la empresa MIP y en Hewlett Packard trabajan según la regla siguiente:

Una instrucción ingresa en forma fija en el circuito integrado del procesador (es decir, se alambra físicamente 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 diseñadores de los compiladores se encuentran con una interfaz hacia el procesador ya

Page 17: cisc y risc

definido y no pueden influir sobre la distribución óptima de las funciones entre el procesador y compilador.

Las empresas de software que desarrollan compiladores y programas de aplicación, tienden por razones de rentabilidad, a utilizar diferentes procesadores como usuarios de su software en lugar de realizar una optimización completa, y aprovechar así las respectivas características de cada uno. Lo cual también genera otros factores negativos de eficiencia. Esta limitación de las posibilidades de optimización 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 computación de alta calidad, se requieren técnicas especiales para optimizar cada uno de los factores que determinan la capacidad de procesamiento, la cual, solo puede definirse con el programa de aplicación.

La información 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 aplicación y cuánto tiempo tarda la ejecución de estas instrucciones, y solo el análisis de diferentes pruebas y comparaciones de rendimiento ("benchmarks) da una idea aproximada, que el usuario puede aplicar para delimitar las arquítecturas 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.

Page 18: cisc y risc

Así, estas pruebas y comparaciones sirven para determinar la capacidad de procesamiento de los sistemas, pero solo el análisis 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 años han permitido desarrollar un gran número de productos de software. Ello representa una considerable inversión y asegura a estas familias de procesadores un mercado creciente. Sin embargo, simultáneamente aumentan las aplicaciones en las cuales la capacidad de procesamiento que se pueda obtener del sistema es más importante que la compatibilidad con el hardware y el software anteriores, lo cual no solo es válido 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 también 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 reproducción visual, que antes se encontraban solo en el campo técnico de la investigación y desarrollo.

En este tipo de equipos, el software de aplicación, se ejecuta bajo el sistema operativo UNIX, el cual es escrito en lenguaje C, por lo que las arquítecturas RISC actuales están adaptadas y optimizadas para este lenguaje de alto nivel. Por ello, todos los productores de estaciones de trabajo de renombre, han pasado en pocos años, de los procesadores CISC a los RISC, lo cual se refleja en el fuerte incremento anual del número de procesadores RISC, (los procesadores RISC de 32 bits han visto crecer su mercado hasta en un 150% anual). En pocos años, 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 estándar CISC que se ha comercializado en todo el mundo.

La arquitectura MIPS-RISC ha encontrado, en el sector de estaciones de trabajo, la mayor aceptación. Los procesadores MIPS son fabricados y comercializados por cinco empresas productoras de

Page 19: cisc y risc

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 función de la aplicación concreta que quiera realizar. Esto vale tanto para la decisión por una determinada arquitectura CISC o RISC, como para determinar si RISC puede emplearse en forma rentable para una aplicación 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, también serán evaluados.

Supongamos por ejemplo, que el precio de un procesador sea de $500.00 USD, éste será secundario para un usuario que diseña una estación de trabajo para venderla después a un precio de $100 000.00 USD. Su decisión 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 orientación hacia los lenguajes de alto nivel.

En el campo industrial existe un gran número de aplicaciones que ni siquiera agotan las posibilidades de los controladores CISC de 8 bits actuales.

Si bién el campo de aplicaciones de las arquítecturas RISC de alta capacidad crece con fuerza, esto no equivale al fin de otras arquítecturas de procesadores y controladores acreditadas que también seguirán perfeccionándose, lo que si resulta dudoso es la creación de familias CISC completamente nuevas.

Adoptando técnicas típicas 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.

Page 20: cisc y risc

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 aplicación concreta juega un papel mucho más importante que las diferencias entre las estructuras que son inapreciables para el usuario final.

http://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm

RISC

DEC Alpha AXP 21064, unmicroprocesador RISC

En la arquitectura computacional, RISC (del inglés reduced instruction set computer) es un tipo

de microprocesador con las siguientes características fundamentales:

1. Instrucciones de tamaño fijo y presentadas en un reducido número de formatos.

2. Sólo las instrucciones de carga y almacenamiento acceden a la memoria por datos.

Además estos procesadores suelen disponer de muchos registros de propósito general.

Page 21: cisc y risc

El objetivo de diseñar máquinas con esta arquitectura es posibilitar la segmentación y

el paralelismo en la ejecución de instrucciones y reducir los accesos a memoria. Las máquinas RISC

protagonizan la tendencia actual de construcción de microprocesadores. PowerPC, DEC

Alpha,MIPS, ARM, ... son ejemplos de algunos de ellos.

RISC es una filosofía de diseño de CPU para computadora que está a favor de conjuntos de

instrucciones pequeñas y simples que toman menor tiempo para ejecutarse. El tipo de procesador

más comúnmente utilizado en equipos de escritorio, el x86, está basado en CISC en lugar de RISC,

aunque las versiones más nuevas traducen instrucciones basadas en CISC x86 a instrucciones más

simples basadas en RISC para uso interno antes de su ejecución.

La idea fue inspirada 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

lamemoria de la computadora que accedía era cada vez más alta. Esto conllevó la aparición de

numerosas técnicas para reducir el procesamiento dentro del CPU, así como de reducir el número

total de accesos a memoria.

Terminología más moderna se refiere a esos diseños como arquitecturas de carga-

almacenamiento.

Contenido

 [ocultar]

1     Filosofía de diseño antes de RISC   

2     Filosofía de diseño RISC   

o 2.1      Multitarea   

3     Historia   

4     Características   

5     Primeros diseños RISC   

6     RISC moderno   

7     Véase también   

8     Enlaces externos   

[editar]Filosofía de diseño antes de RISC

Uno de los principios básicos de diseño para todos los procesadores es añadir velocidad al

proveerles alguna memoria muy rápida para almacenar información temporalmente, estas memorias

son conocidas como registros. Por ejemplo, casi cada CPU incluye una orden para sumar dos

números. La operación básica de un CPU sería cargar esos dos números en los registros, sumarlos

y almacenar el resultado en otro registro, finalmente, tomar el resultado del último registro y

devolverlo a la memoria principal.

Page 22: cisc y risc

Sin embargo, los registros tienen el inconveniente de ser algo complejos para implementar. Cada

uno está representado por transistores en el chip, en este aspecto la memoria principal tiende a ser

mucho más simple y económica. Además, los registros le añaden complejidad al cableado, porque

la unidad central de procesamiento necesita estar conectada a todos y cada uno de los registros

para poder utilizarlos por igual.

Como resultado de esto, muchos diseños de CPU limitan el uso de registros de alguna u otra

manera. Algunos incluyen pocos registros, aunque esto limita su velocidad. Otros dedican sus

registros a tareas específicas para reducir la complejidad; por ejemplo, un registro podría ser cap

registros, mientras que el resultado podría estar almacenado en cualquiera de ellos.

En el mundo de la microcomputación de los años setenta, éste era un aspecto más de las CPU, ya

que los procesadores eran entonces demasiado lentos –de hecho había una tendencia a que el

procesador fuera más lento que la memoria con la que se comunicaba-. En esos casos tenía sentido

eliminar casi todos los registros, y entonces proveer al programador de una buena cantidad de

maneras de tratar con la memoria para facilitar su trabajo.

Dado el ejemplo de la suma, la mayoría de los diseños de CPU se enfocaron a crear una orden que

pudiera hacer todo el trabajo automáticamente: llamar los dos números que serían sumados,

sumarlos, y luego almacenarlos fuera directamente. Otra versión podría leer los dos números de la

memoria, pero almacenaría el resultado en un registro. Otra versión podría leer uno de la memoria y

otro desde un registro y almacenarlo en la memoria nuevamente. Y así sucesivamente.

La meta en general en aquel tiempo era proveer cada posible modo de direccionamiento para cada

instrucción, un principio conocido como ortogonalidad. Esto llevó a un CPU complejo, pero en teoría

capaz de configurar cada posible orden individualmente, haciendo el diseño más rápido en lugar de

que el programador utilizara órdenes simples.

La última representación de este tipo de diseño puede ser vista en dos equipos, el MOS 6502 por un

lado, y el VAX en el otro. El chip 6502 de $25 USD efectivamente tenía solamente un registro, y con

la configuración cuidadosa de la interfaz de memoria fue capaz de sobrepasar diseños corriendo a

velocidades mayores (como el Zilog Z80 a 4MHz). El VAX era un minicomputador que en una

instalación inicial requería 3 gabinetes de equipo para un solo CPU, y era notable por la

sorprendente variedad de estilos de acceso a memoria que soportaba, y el hecho de que cada uno

de éstos estaba disponible para cada instrucción.

[editar]Filosofía de diseño RISC

A finales de los setenta, investigaciones en IBM (y otros proyectos similares en otros lugares)

demostraron que la mayoría de esos modos de direccionamiento ortogonal eran ignorados por la

mayoría de los programas. Esto fue un efecto colateral en el incremento en el uso

de compiladores para generar los programas, algo opuesto a escribirlos en lenguaje ensamblador.

Los compiladores tendían a ser demasiado tontos en términos de las características que usaban, un

Page 23: cisc y risc

efecto colateral del intento por hacerlos pequeños. El mercado se estaba moviendo hacia un uso

más generalizado de los compiladores, diluyendo aún más la utilidad de los modelos ortogonales.

Otro descubrimiento fue que debido a que esas operaciones eran escasamente utilizadas, de hecho

tendían a ser más lentas que un número pequeño de operaciones haciendo lo mismo. Esta paradoja

fue un efecto colateral del tiempo que se utilizaba diseñando los CPU, los diseñadores simplemente

no tenían tiempo de optimizar cada instrucción posible, y en vez de esto sólo optimizaban las más

utilizadas. Un famoso ejemplo de esto era la instrucción VAX INDEX, que se ejecutaba más

lentamente que un ciclo que implementara el mismo código.

Casi al mismo tiempo, las CPU comenzaron a correr a velocidades mayores que las de la memoria

con la que se comunicaban. Aún a finales de los setenta, era aparente que esta disparidad

continuaría incrementándose al menos durante la siguiente década, para entonces los CPU podrían

ser cientos de veces más rápidos que la memoria. Esto significó que los avances para optimizar

cualquier modo de direccionamiento serían completamente sobrepasados por las velocidades tan

lentas en las que se llevaban a cabo.

Otra parte del diseño RISC llego desde las medidas prácticas de los programas en el mundo

real. Andrew Tanenbaum reunió muchos de éstos, demostrando así que la mayoría de los

procesadores estaban sobredimensionados. Por ejemplo, él demostró que el 98 % de todas las

constantes en un programa podían acomodarse en 13 bits, aun cuando cada diseño de CPU

dedicaba algunos múltiplos de 8 bits para almacenarlos, típicamente 8, 16 o 32, una palabra entera.

Tomando este hecho en cuenta sugiere que una máquina debería permitir que las constantes

fuesen almacenadas en los bits sin utilizar de otras instrucciones, disminuyendo el número de

accesos a memoria. En lugar de cargar números desde la memoria o los registros, éstos podrían

estar ahí mismo para el momento en el que el CPU los necesitara, y por lo tanto el proceso sería

mucho más rápido. Sin embargo, esto requería que la instrucción misma fuera muy pequeña, de otra

manera no existiría suficiente espacio libre en los 32 bits para mantener constantes de un tamaño

razonable.

Fue el pequeño número de modos y órdenes que dio lugar al término Conjunto de Instrucciones

Reducidas. Ésta no es una definición correcta, ya que los diseños RISC cuentan con una vasta

cantidad de conjuntos de instrucciones para ellos. La verdadera diferencia es la filosofía para hacer

todo en registros y llamar y guardar los datos hacia ellos y en ellos mismos. Ésta es la razón por la

que la forma más correcta de denominar este diseño es cargar-almacenar. Con el paso del tiempo

las técnicas de diseño antiguas se dieron a conocer como Computadora con Conjunto de

Instrucciones Complejo, CISC por sus siglas en inglés, aunque esto fue solamente para darles un

nombre diferente por razones de comparación.

Por esto la filosofía RISC fue crear instrucciones pequeñas, implicando que había pocas, de ahí el

nombre conjunto de instrucciones reducido. El código fue implementado como series de esas

instrucciones simples, en vez de un sola instrucción compleja que diera el mismo resultado. Esto

Page 24: cisc y risc

hizo posible tener más espacio dentro de la instrucción para transportar datos, resultando esto en la

necesidad de menos registros en la memoria. Al mismo tiempo la interfaz con la memoria era

considerablemente simple, permitiendo ser optimizada.

Sin embargo RISC también tenía sus desventajas. Debido a que una serie de instrucciones son

necesarias para completar incluso las tareas más sencillas, el número total de instrucciones para la

lectura de la memoria es más grande, y por lo tanto lleva más tiempo. Al mismo tiempo no estaba

claro dónde habría o no una ganancia neta en el desempeño debido a esta limitación, y hubo una

batalla casi continua en el mundo de la prensa y del diseño sobre los conceptos de RISC.

[editar]Multitarea

Debido a lo redundante de las microinstrucciones, los sistemas operativos diseñados para estos

microprocesadores, contemplaban la capacidad de subdividir un microprocesador en varios,

reduciendo el número de instrucciones redundantes por cada instancia del mismo. Con una

arquitectura del sofware optimizada, los entornos visuales desarrollados para estas plataformas,

contemplaban la posibilidad de ejecutar varias tareas en un mismo ciclo de reloj. Así mismo, la

paginación de la memoria RAM era dinámica y se asignaba una cantidad suficiente a cada instancia,

existiendo una especie de 'simbiosis' entre la potencia del microprocesador y la RAM dedicada a

cada instancia del mismo.

La multitarea dentro de la arquitectura CISC nunca ha sido real, tal como en los RISC sí lo es. En

CISC, el microprocesador en todo su conjunto está diseñado en tantas instrucciones complejas y

diferentes, que la subdivisión no es posible, al menos a nivel lógico. Por lo tanto, la multitarea es

aparente y por ordenes de prioridad. Cada ciclo de reloj trata de atender a una tarea instanciada en

la RAM y pendiente de ser atendida. Con una cola de atención por tarea FIFO para los datos

generados por el procesador, y LIFO para las interrupciones de usuario, trataban de dar prioridad a

las tareas que el usuario desencadenara en el sistema. La apariencia de multitarea en un CISC

tradicional, viene de la mano de los modelos escalares de datos, convirtiendo el flujo en un vector

con distintas etapas y creando la tecnología pipeline.

Los microprocesadores actuales, al ser hibridos, permiten cierta parte de multitarea real. La capa

final al usuario es como un CISC tradicional, mientras que las tareas que el usuario deja pendientes,

dependiendo del tiempo de inactividad, el sistema traducirá las instrucciones (el software ha de ser

compatible con esto) CISC a RISC, pasando la ejecución de la tarea a bajo nivel, en donde los

recursos se procesan con la filosofía RISC. Dado que el usuario solo atiende una tarea por su

capacidad de atención, el resto de tareas que deja pendientes y que no son compatibles con el

modelo de traducción CISC/RISC, pasan a ser atendidas por el tradicional pipeline, o si son tareas

de bajo nivel, tal como desfragmentaciones de disco, chequeo de la integridad de la información,

formateos, tareas gráficas o tareas de cálculo matemático intenso.

Page 25: cisc y risc

En vez de tratar de subdividir a un solo microprocesador, se incorporó un segundo microprocesador

gemelo, indéntico al primero. El inconveniente es que la RAM debía de ser tratada a nivel hardware

y los módulos diseñados para plataformas monoprocesador no eran compatibles o con la misma

eficiencia, que para las plataformas multiprocesador. Otro inconveniente, era la fragmentación del

BYTE de palabra. En un RISC tradicional, se ocupan los BYTES de la siguiente forma: Si la palabra

es de 32 BITS (4 BYTES de palabra de 8 BITS cada una, o dos de 16 o una de 32), dependiendo de

la profundidad del dato portado, dentro del mismo BYTE, se incluian partes de otras instrucciones y

datos. Ahora, al ser dos microprocesadores distintos, ambos usaban registros independientes, con

accesos a la memoria propios (en estas plataformas, la relacion de RAM por procesador es de 1/1).

En sus orígenes, las soluciones se parecían a las típícas ñapas de albanil, cada placa base

incorporaba una solución solamente homologada por la chip set usada y los drivers que la

acompañaban. Si bien la fragmentación siempre ha sido como ese mosquito que zumba en el oido,

pero que por pereza permitimos que nos pique, llegó un momento que era imposible evadir el

zumbido. Esta época llegó con las plataformas de 64 BITS.

[editar]Historia

Mientras la filosofía de diseño RISC se estaba formando, nuevas ideas comenzaban a surgir con un

único fin: incrementar drásticamente el rendimiento de la CPU.

Al principio de la década de los ochenta se pensaba que los diseños existentes estaban alcanzando

sus límites teóricos. Las mejoras de la velocidad en el futuro serían hechas con base

en procesos mejorados, esto es, pequeñas características en el chip. La complejidad del chip podría

continuar como hasta entonces, pero un tamaño más pequeño podría resultar en un mejor

rendimiento del mismo al operar a más altas velocidades de reloj. Se puso una gran cantidad de

esfuerzo en diseñar chips para computación paralela, con vínculos de comunicación

interconstruidos. En vez de hacer los chips más rápidos, una gran cantidad de chips serían

utilizados, dividiendo la problemática entre éstos. Sin embargo, la historia mostró que estos miedos

no se convirtieron en realidad, y hubo un número de ideas que mejoraron drásticamente el

rendimiento al final de la década de los ochenta.

Una idea era la de incluir un canal por el cual se pudieran dividir las instrucciones en pasos y

trabajar en cada paso muchas instrucciones diferentes al mismo tiempo. Un procesador normal

podría leer una instrucción, decodificarla, enviar a la memoria la instrucción de origen, realizar la

operación y luego enviar los resultados. La clave de la canalización es que el procesador pueda

comenzar a leer la siguiente instrucción tan pronto como termine la última instrucción, significando

esto que ahora dos instrucciones se están trabajando (una está siendo leída, la otra está

comenzando a ser decodificada), y en el siguiente ciclo habrá tres instrucciones. Mientras que una

sola instrucción no se completaría más rápido, la siguienteinstrucción sería completada enseguida.

La ilusión era la de un sistema mucho más rápido. Esta técnica se conoce hoy en día

como Segmentación de cauce.

Page 26: cisc y risc

Otra solución más era utilizar varios elementos de procesamiento dentro del procesador y

ejecutarlos en paralelo. En vez de trabajar en una instrucción para sumar dos números, esos

procesadores superescalares podrían ver la siguiente instrucción en el canal y tratar de ejecutarla al

mismo tiempo en una unidad idéntica. Esto no era muy fácil de hacer, sin embargo, ya que algunas

instrucciones dependían del resultado de otras instrucciones.

Ambas técnicas se basaban en incrementar la velocidad al añadir complejidad al diseño básico del

CPU, todo lo opuesto a las instrucciones que se ejecutaban en el mismo. Siendo el espacio en el

chip una cantidad finita, para poder incluir todas esas características algo más tendría que ser

eliminado para hacer hueco. RISC se encargó de tomar ventaja de esas técnicas, esto debido a que

su lógica para el CPU era considerablemente más simple que la de los diseños CISC. Aun con esto,

los primeros diseños de RISC ofrecían una mejora de rendimiento muy pequeña, pero fueron

capaces de añadir nuevas características y para finales de los ochenta habían dejado totalmente

atrás a sus contrapartes CISC. Con el tiempo esto pudo ser dirigido como una mejora de proceso al

punto en el que todo esto pudo ser añadido a los diseños CISC y aun así caber en un solo chip, pero

esto tomó prácticamente una década entre finales de los ochenta y principios de los noventa.

[editar]Características

En pocas palabras esto significa que para cualquier nivel de desempeño dado, un chip RISC

típicamente tendrá menos transistores dedicados a la lógica principal. Esto permite a los

diseñadores una flexibilidad considerable; así pueden, por ejemplo:

Incrementar el tamaño del conjunto de registros.

Mayor velocidad en la ejecución de instrucciones.

Implementar medidas para aumentar el paralelismo interno.

Añadir cachés enormes.

Añadir otras funcionalidades, como E/S y relojes para minicontroladores.

Construir los chips en líneas de producción antiguas que de otra manera no serían utilizables.

No hacer nada, ofrecer el chip para aplicaciones de bajo consumo de energía o de tamaño

limitado.

Las características que generalmente son encontradas en los diseños RISC son:

Codificación uniforme de instrucciones (ejemplo: el código de operación se encuentra siempre

en la misma posición en cada instrucción, la cual es siempre una palabra), lo que permite una

decodificación más rápida.

Un conjunto de registros homogéneo, permitiendo que cualquier registro sea utilizado en

cualquier contexto y así simplificar el diseño del compilador (aunque existen muchas formas de

separar los ficheros de registro de entero y coma flotante).

Page 27: cisc y risc

Modos de direccionamiento simple con modos más complejos reemplazados por secuencias de

instrucciones aritméticas simples.

Los tipos de datos soportados en el hardware (por ejemplo, algunas máquinas CISC tiene

instrucciones para tratar con tipos byte, cadena) no se encuentran en una máquina RISC.

Los diseños RISC también prefieren utilizar como característica un modelo de memoria Harvard,

donde los conjuntos de instrucciones y los conjuntos de datos están conceptualmente separados;

esto significa que el modificar las direcciones donde el código se encuentra pudiera no tener efecto

alguno en las instrucciones ejecutadas por el procesador (porque la CPU tiene separada la

instrucción y el caché de datos, al menos mientras una instrucción especial de sincronización es

utilizada). Por otra parte, esto permite que ambos cachés sean accedidos separadamente, lo que

puede en algunas ocasiones mejorar el rendimiento.

Muchos de esos diseños RISC anteriores también compartían una característica no muy amable,

el slot de salto retardado (Delay Slot). Un slot de salto retardado es un espacio de instrucción

siguiendo inmediatamente un salto. La instrucción en este espacio es ejecutada independientemente

de si el salto se produce o no (en otras palabra el salto es retardado). Esta instrucción mantiene

la ALU de la CPU ocupada por el tiempo extra normalmente necesario para ejecutar una brecha.

Para utilizarlo, recae en el compilador la responsabilidad de reordenar las instrucciones de manera

que el código sea coherente para ejecutar con esta característica. En nuestros días el slot de salto

retardado se considera un desafortunado efecto colateral de la estrategia particular por implementar

algunos diseños RISC. Es por esto que los diseños modernos de RISC, tales como ARM, PowerPC,

y versiones más recientes de SPARC y de MIPS, generalmente eliminan esta característica.

[editar]Primeros diseños RISC

Una consola del CDC 6600mainframe system

El primer sistema que pudiera ser considerado en nuestros días como RISC no lo era así en

aquellos días; era la supercomputadora CDC 6600, diseñada en 1964 por Seymour Cray.

Cray la diseñó como un CPU para cálculos a gran escala (con 74 códigos, comparada con

un 8086 400, además de 12 computadores simples para manejar los procesos de E/S (la mayor

parte del sistema operativo se encontraba en uno de éstos).

Page 28: cisc y risc

El CDC 6600 tenía una arquitectura de carga/almacenamiento con tan solo dos modos de

direccionamiento. Había once unidades de canalización funcional para la aritmética y la lógica,

además de cinco unidades de carga y dos unidades de almacenamiento (la memoria tenía múltiples

bancos para que todas las unidades de carga/almacenamiento pudiesen operar al mismo tiempo). El

nivel promedio de operación por ciclo/instrucción era 10 veces más rápido que el tiempo de acceso

a memoria.

Los diseños RISC que más se dieron a conocer sin embargo, fueron aquellos donde los resultados

de los programas de investigación de las universidades eran ejecutados con fondos del

programa DARPA VLSI. El programa VLSI prácticamente desconocido hoy en día, llevo a un gran

número de avances en el diseño de chips, la fabricación y aún en las gráficas asistidas por

computadora.

El proyecto RISC de la Universidad de Berkeley comenzó en 1980 bajo la dirección de David A.

Patterson, basándose en la obtención de rendimiento a través del uso de la canalización y un

agresivo uso de los registros conocido como ventanas de registros. En una CPU normal se tienen un

pequeño número de registros, un programa puede usar cualquier registro en cualquier momento. En

una CPU con ventanas de registros, existen un gran número de registros (138 en el RISC-I), pero

los programas solo pueden utilizar un pequeño número de estos (32 en el RISC-I) en cualquier

momento.

Un programa que se limita asimismo a 32 registros por procedimiento puede hacer llamadas a

procedimientos muy rápidas: la llamada, y el regreso, simplemente mueven la ventana de 32

registros actual para limpiar suficiente espacio de trabajo para la subrutina, y el

regreso restablece esos valores.

El proyecto RISC entregó el procesador RISC-I en 1982. Consistiendo de solo 44.420 transistores

(comparado con promedios de aproximadamente 100.000 en un diseño CISC de esa época) RISC-I

solo tenía 32 instrucciones, y aun así sobrepasaba el desempeño de cualquier otro diseño de chip

simple. Se continuó con esta tendencia y RISC-II en 1983 tenía 40.760 transistores y 39

instrucciones, con los cuales ejecutaba 3 veces más rápido que el RISC-I.

Casi al mismo tiempo, John Hennessy comenzó un proyecto similar llamado MIPS en la Universidad

de Stanford en 1981. MIPS se centraba casi completamente en la segmentación, asegurándose de

que ejecutara tan lleno como fuera posible. Aunque la segmentación ya había sido utilizada en otros

diseños, varias características del chip MIPS hacían su segmentación mucho más rápida. Lo más

importante, y quizá molesto de estas características era el requisito de que todas las instrucciones

fueran capaces de completarse en un solo ciclo. Este requisito permitía al canal ser ejecutado a

velocidades más altas (no había necesidad de retardos inducidos) y es la responsable de la mayoría

de la velocidad del procesador. Sin embargo, también tenía un efecto colateral negativo al eliminar

muchas de las instrucciones potencialmente utilizables, como una multiplicación o una división.

Page 29: cisc y risc

El primer intento por hacer una CPU basada en el concepto RISC fue hecho en IBM el cual comenzó

en 1975, precediendo a los dos proyectos anteriores. Nombrado como proyecto RAN, el trabajo llevó

a la creación de la familia de procesadores IBM 801, la cual fue utilizada ampliamente en los

equipos de IBM. El 801 fue producido eventualmente en forma de un chip como ROMP en 1981, que

es la abreviatura de Research Office Products Division Mini Processor. Como implica el nombre,

esta CPU fue diseñada para tareas pequeñas, y cuando IBM lanzó el diseño basado en el IBM RT-

PC en 1986, el rendimiento no era aceptable. A pesar de esto, el 801 inspiró varios proyectos de

investigación, incluyendo algunos nuevos dentro de IBM que eventualmente llevarían a su

sistema IBM POWER.

En los primeros años, todos los esfuerzos de RISC eran bien conocidos, pero muy confinados a los

laboratorios de las universidades que los habían creado. El esfuerzo de Berkeley se dio a conocer

tanto que eventualmente se convirtió en el nombre para el proyecto completo. Muchos en la

industria de la computación criticaban el que los beneficios del rendimiento no se podían traducir en

resultados en el mundo real debido a la eficiencia de la memoria de múltiples instrucciones, y ésa

fue la razón por la que nadie los estaba utilizando. Pero a comienzos de 1986, todos los proyectos

de investigación RISC comenzaron a entregar productos. De hecho, casi todos los procesadores

RISC modernos son copias directas del diseño RISC-II.

[editar]RISC moderno

La investigación de Berkeley no fue comercializada directamente, pero el diseño RISC-II fue

utilizado por Sun Microsystems para desarrollar el SPARC, por Pyramid Technology para desarrollar

sus máquinas de multiprocesador de rango medio, y por casi todas las compañías unos años más

tarde. Fue el uso de RISC por el chip de SUN en las nuevas máquinas el que demostró que los

beneficios de RISC eran reales, y sus máquinas rápidamente desplazaron a la competencia y

esencialmente se apoderaron de todo el mercado de estaciones de trabajo.

John Hennessy dejó Stanford para comercializar el diseño MIPS, comenzando una compañía

conocida como MIPS Computer Systems Inc. Su primer diseño fue el chip de segunda generación

MIPS-II conocido como el R2000. Los diseños MIPS se convirtieron en uno de los chips más

utilizados cuando fueron incluidos en las consolas de juego Nintendo 64 yPlayStation. Hoy son uno

de los procesadores integrados más comúnmente utilizados en aplicaciones de alto nivel por Silicon

Graphics.

IBM aprendió del fallo del RT-PC y tuvo que continuar con el diseño del RS/6000 basado en su

entonces nueva arquitectura IBM POWER. Entonces movieron sus computadoras centrales S/370 a

los chips basados en IBM POWER, y se sorprendieron al ver que aun el conjunto de instrucciones

muy complejas (que era parte del S/360 desde 1964) corría considerablemente más rápido. El

resultado fue la nueva serie System/390 que aún hoy en día es comercializada como zSeries. El

diseño IBM POWER también se ha encontrado moviéndose hacia abajo en escala para producir el

diseño PowerPC, el cual eliminó muchas de las instrucciones solo IBM y creó una implementación

Page 30: cisc y risc

de chip único. El PowerPC fue utilizado en todas las computadoras Apple Macintosh hasta 2006, y

está comenzando a ser utilizado en aplicaciones automotrices (algunos vehículos tienen más de 10

dentro de ellos), las consolas de videojuegos de última generación (PlayStation 3, Nintendo

Wii y Xbox 360) están basadas en PowerPC.

Casi todos los demás proveedores se unieron rápidamente. De los esfuerzos similares en el Reino

Unido resultó el INMOS Trasputer, el Acorn Archimedes y la línea Advanced RISC Machine, la cual

tiene un gran éxito hoy en día. Las compañías existentes con diseños CISC también se unieron a la

revolución. Intel lanzó el i860 y el i960 a finales de los ochenta, aunque no fueron muy

exitosos. Motorola construyó un nuevo diseño pero no le vio demasiado uso y eventualmente lo

abandonó, uniéndose a IBM para producir el PowerPC. AMD lanzó su familia 29000 la cual se

convirtió en el diseño RISC más popular a principios de los noventa.

Hoy en día los microcontroladores y CPU RISC representan a la vasta mayoría de todos los CPU

utilizados. La técnica de diseño RISC ofrece poder incluso en medidas pequeñas, y esto ha venido a

dominar completamente el mercado de CPU integrados de bajo consumo de energía. Los CPU

integrados son por mucho los procesadores más comunes en el mercado: considera que una familia

completa con una o dos computadoras personales puede poseer varias docenas de dispositivos con

procesadores integrados. RISC se ha apoderó completamente del mercado de estación de trabajo.

Después del lanzamiento de la SUN SPARCstation los otros proveedores se apuraron a competir

con sus propias soluciones basadas en RISC. Aunque hacia 2006-2010 las estaciones de trabajo

pasaron a la arquitectura x86-64 de Intel y AMD. Incluso el mundo de las computadoras centrales

está ahora basado completamente en RISC.

Esto es sorprendente en vista del dominio del Intel x86 y x86 64 en el mercado de las computadoras

personales de escritorio (ahora también en el de estaciones de trabajo), ordenadores portátiles y en

servidores de la gama baja. Aunque RISC fue capaz de avanzar en velocidad muy rápida y

económicamente.

Los diseños RISC han llevado a un gran número de plataformas y arquitecturas al éxito, algunas de

las más grandes:

La línea MIPS Technologies Inc., que se encontraba en la mayoría 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 versión PowerPC de Motorola e IBM (una versión de la serie IBM POWER) utilizada en los

ordenadores AmigaOne, Apple Macintosh como el iMac, eMac, Power Mac y posteriores (hasta

Page 31: cisc y risc

2006). Actualmente se utiliza en muchos sistemas empotrados en automóviles, routers, etc, así

como en muchas consolas de videojuegos, como la Playstation 3,Xbox 360 y Nintendo Wii.

El procesador SPARC y UltraSPARC de Sun Microsystems y Fujitsu, que se encuentra en sus

últimos modelos de servidores (y hasta 2008 también 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 – Se encuentra en dispositivos PALM, Nintendo DS, Game Boy Advance y en

múltiples PDAs, teléfonos móviles, smartphones y reproductores multimedia (como el iPod).

http://es.wikipedia.org/wiki/RISC

Page 32: cisc y risc

RISC VS CISC

 

Las familias de los microprocesadores intel x86 y motorola M68000 son conocidas por sus abundantes sets de instrucciones, modos de direccion multiple, formatos y tamaños de instruccion multiple.

Sus controles son microprogramables, y diferentes instrucciones se ejecutan con diferentes numeros de ciclos. Las unidades de control de semejantes microprocesadores son naturalmente complejos. Desde que tuvieron que distinguir entre un largo numero de opcodigos, modos de direccionamiento, y formatos. Este tipo de sistema pertenece a la categoria llamada computadora de setes de instruccion compleja (CISC , complex intruction set computer). A pesar de que muchos microprocesadores CISC son conducidos, existe una dificultad inherente en manejar una conduccion en un sistema con una variedad de tamaños de instrucciones y largas instrucciones de ejecucion diferentes.

En oposicion del diseño tradicional de CISC, en los 80's emergen una nueva marca de diseño de computadora llamada RISC(Reduced Instruction Set Coputer) [HePa 90, PaDi80, PaSe82,Patt85,Tabk87,Tabk90b]. Que es reducido o reduced en RISC? Practicamente todo: el numero de instrucciones, modos de direccion y los formatos. En un RISC ideal todas las instrucciones tienen el mismo tamaño (usualmente 32 bits) y las ejecuta con un ciclo CPU individual. En la practica solo la mayoria de las instrucciones (aproximadamete un 80%en la mayora de los sistemas RISC) se ejecutan en un ciclo individual.

Las propiedades relativas desistemas CISC contra RISC seran mencionadas con mas detalle.

Un sistema CISC con un largo menu de especificaciones relacionadas en un largo y mayormente complicado sistema de decodificacion. Precedido por un complejo control logico. Las señales logicas usualmente tiene que propagar atraves de un numero considerable de compuertas, incrementando la duraccion de retardos y deteniendo el sistema. En un ambiente microprogramable (la mayoria de los CISC son microprogramables), se incrementa la complejidad que resulta directamente en microrutinas y resulta una larga ejecucion que produce todas las microoperaciones necesarias y sus señales de control correspondientes para ejecutar una instruccion. Una de las maneras para incrementar la velocidad de ejecucion en cualquier computadora es implementado la conduccion.

Page 33: cisc y risc

Para una conduccion con secciones, nosotros podemos tomar el sistema para trata con n instrucciones subsecuentes simultaneamente. Considere un simple par-seccion instrucciones de conduccion.

Seccion uno: Fetch, F.

Seccion dos: Execute, E.

Asume un modelo simple donde cada una de las secciones sercanas toma justo solo un ciclo del CPU para completarlo. Nosotros tomamos los tiempos de instruccion siguiendo (en ciclos del CPU) planes para tres instrucciones subsecuentes:

 

instrucciones

de ciclo 1 2 3 4

 

i F E

i+1 F E

i+2 F E

 

 

Las 3 tres instrucciones son completaaamente cuidadas en 4 ciclos. Estas deben ademas de ser mensionadas que la instruccion i-1 es ejecutada en la duracion de un ciclo, mientras que la instrucion i+3 es buscada durante el ciclo 4. En cualquie ciclo dos instrucciones estan siendo trabajadas en esta simple conducccion par-seccion, en el ejemplo anterior ilustra que existe una dificultad en implementar una linea de instruccion de conexion eficientemiente en un sistema tipo CISC. En sistemas actuales las instrucciones de instrucion tienen mas que dos secciones (usualmente de tres a seis para integrar operaciones y mas para el punto flotante). Si existen diferencias considerables entre medidas y ciclos de ejecucion de instrucciones diferentes que pueden aparecer en el CPU en cualquier orden, el diseño de conduccion y la utilizacion puede ser mucho mas complicado. Estas complicaciones pueden ser mas severas para super escalas o para sistemas de superconduccion.

Page 34: cisc y risc

 

La complenjidad de un sistema CISC podria implicar un diseño a largo plazo con una significante prioridad de diseñar errores. En un sistema complejo los errores tomaran un largo tiempo para colocarse y corregirse.En el tiempo en que un sistema CISC es diseñado, construido y probado este puede volverse obsoleto. En el arte de la tecnologia comun de las computadoras en que se encuentran avances significativos en un corto tiempo (tres meses o menos).

 

 

Propiedades del sistema tipo RISC

 

Como se discutio en la seccion anterior algunas de las condiciones necesarias para archivar una operacion reducida en un sistema RISC son:

 

1.- Estandard, tamaño arreglado de instruccion, igual para la computadora la longitud de la palabra y para el ancho de el bus de datos (con la estipulacion algunos nuevos sistemas la longitud de la palabra y/o del bus de datos en un entero multiple del tamaño de la instruccion como en estos nuevos sistemas de 64 bits y en algunos sistemas de 32 bits con un bus de datos de 64 bits).

 

2.- El tiempo de la ejecucion es estandart para todas las instrucciones, preferiblemente dentro un ciclo singular del CPU (con la estipulacion esta minoria de instrucciones igual como divide tendra que ser ejecutado en mas de un solo ciclo.

Page 35: cisc y risc

ARQUITECTURAS CISC

La microprogramación es una característica importante y esencial de casi todas las arquítecturas CISC.

Como 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 década de los sesentas la micropramació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 de reloj (al

menos uno por microinstrucción).

ARQUITECTURAS 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 mas 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 se pueden implantar por hardware

directamente en la CPU, lo cual elimina el microcódigo y la necesidad de decodificar instrucciones

complejas.

Las características 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 características, siguen divididas en tres grupos:

a) Transferencia.

b) Operaciones.

c) Control de flujo.

Reducción del conjunto de instrucciones a instrucciones básicas 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 número de acceso a memoria.

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

por hardware (con un diseño del tipo load-store), casi todas las instrucciones se pueden ejecutar cada

ciclo de reloj, base importante para la reorganización de la ejecución de instrucciones por medio de

un compilador.

Page 36: cisc y risc

Pipeline (ejecución simultánea de varias instrucciones). Posibilidad de reducir el número de ciclos de

máquina necesarios para la ejecución de la instrucción, ya que esta técnica permite que una

instrucción 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 reducción de la

superficie del circuito integrado, se aprovecha con frecuencia para ubicar en el mismo, funciones

adicionales:

Unidad para el procesamiento aritmético de punto flotante.

Unidad de administración de memoria.

Funciones de control de memoria caché.

Implantación de un conjunto de registros múltiples.

DIFERENCIAS ENTRE RISC Y CISC

RISC es una filosofía de diseño de CPU para computadora que está a favor de conjuntos de instrucciones

pequeños y simples que toman menor tiempo para ejecutarse. El tipo de procesador más comúnmente

utilizado en equipos de escritorio, el x86, está basado en CISC en lugar de RISC, aunque las versiones

más nuevas traducen instrucciones basadas en CISC x86 a instrucciones más simples basadas en RISC

para uso interno antes de su ejecución.

CISC: Un tipo de procesadores que reconoce un conjunto amplio de órdenes, pero que normalmente

realiza los pasos indicados por esas órdenes con menor velocidad que un procesador RISC. Es el caso

de la serie X86 de Intel.

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.

Elaborado por:

Marcos Francisco Acosta Sánchez

Matricula: 0640527

Universidad de Occidente Campus Culiacán

Para la materia Arquitectura de Computadoras

Links:

Page 37: cisc y risc

http://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm

http://espanol.answers.yahoo.com/question/index?qid=20071004230216AADw9Qw

http://arquitecturacomp.wordpress.com/2009/06/13/tecnologias-cisc-y-risc/

Page 38: cisc y risc

CISC vs RISC 

1. Introducción 2. Arquitecturas CISC 3. Arquitecturas RISC

1. Introducción

Hoy en día, los programas cada vez más grandes y complejos demandan mayor velocidad en el procesamiento de información, lo que implica la busqueda de microprocesadores más rápidos y eficientes.

Los avances y progresos en la tecnología 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 tecnologías en el desarrollo de microprocesadores. Hay quienes consideran que en breve los microprocesadores RISC(Reduced Introduction Set Computer) sustituirán a los CISC(Complex Instruction Set Computer), pero existe el hecho que los microprocesadores CISC tienen un mercado de Software muy difundido, aunque tampoco tendrán ya que establecer nuevas familias en comparación con el desarrollo de nuevos proyectos con tecnologías RISC, que plantea en su filosofía de diseño una relación muy estrecha entre los compiladores y la misma arquitectura.

Al estudiar alguna de estas tecnologías, la manera más fácil de comprender su lógica y funcionamiento, es hacer la comparación de éstas.

CISC(Complex Instruction Set Computer) Computadoras con un conjunto de instrucciones complejo RISC(Reduced Instruction Set Computer) Computadoras con un conjunto de instrucciones reducido

Existen diversos procesadores que no se pueden asignar con facilidad a ninguna de éstas categorías. Así, los términos complejo y reducido, expresan muy bien una importante característica definitiva, siempre que no se tomen solo como referencia las instrucciones, sino que se considere también la complejidad del Hardware del procesador.

Con tecnologías de semiconductores comparables e igual frecuencia de reloj, un procesador RISC típico tiene una capacidad de procesamiento de dos a cuatro veces que la de un CISC, pero su estructura de hardware es tan simple,

Page 39: cisc y risc

que se puede realizar en una fracción de la superficie ocupada por el circuito integrado de un procesador CISC.

Esto nos hace suponer que RISC reemplazará por completo al CISC, pero la respuesta a esta cuestión no es tan simple ya que:

Para aplicar una determinada arquitectura de microprocesador son decisivas las condiciones de realización técnica y sobre todo la rentabilidad, incluyendo los costos de software. Existían 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 diseño del procesador y éstas

son:

La Arquitectura. La Tecnología de Proceso. El Encapsulado.

La Tecnología de proceso, se refiere a los materiales y técnicas utilizadas en la fábricación del circuito integrado, El Encapsulado se refiere a como 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 tecnología de proceso y de encapsulado son vitales en la elaboración de procesadores más rápidos, 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 evaluación de las arquitecturas RISC y CISC donde se centra nuestra atención

Dependiendo de cómo el procesador almacena lo 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 un acumulador.3. Juego de instrucciones para arquitecturas basadas en regidtros.

Las arquitecturas RISC y CISC son ejemplos de CPU con un conjunto de instrucciones para arquitecturas basadas en registros.

Volver al comienzo

Page 40: cisc y risc

2. Arquitecturas 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).

Volver al comienzo

3. Arquitecturas 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 fué decrementando conforme se mejoraba su tecnología de encapsulado.

De bido a que se tiene un conjunto de instrucciones simplificado, éstas pueden implantar por hardware directamente en la CPU, lo cual elimina el microcó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.

Page 41: cisc y risc

Existen secuencias de instrucciones simples que obtienen el mismo resultado que secuencias complejas predeterminadas, pero requieren tiempos de ejecución más cortos.

http://cedicyt.usach.cl/microcomputadores/2004/grupo5/Daniel%20Zamora/Pagina%20Tecnologia%20Cisc%20y%20Risc/Cisc-Risc.html