03 noviembre 2010

Tema 2. Diferencias entre arquitecturas y repertorios de instrucciones RISC y CISC


             Una arquitectura define el modo de trabajar del microprocesador, el repertorio de instrucciones y cómo estas se implementan en la práctica. RISC y CISC son dos arquitecturas para microprocesadores.

             Los CISC (Complex Instruction Set Computer) pertenecen a la primera corriente de construcción 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 mayoría de las computadoras personales del planeta. La utilización del término CISC comenzó tras la aparición de los procesadores RISC como nomenclatura despectiva por parte de los defensores/creadores de éstos últimos.

              Las arquitecturas CISC, tienen repertorios de instrucciones mucho más complicados que se traducen en diseños de la ruta de datos mucho más complejos, su conjunto de instrucciones se caracteriza por ser muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los registros internos, en contraposición a la arquitectura RISC. Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que, en la actualidad, la mayoría de los sistemas CISC de alto rendimiento implementan un sistema que convierte dichas instrucciones complejas en varias instrucciones simples del tipo RISC, llamadas generalmente microinstrucciones.


               Más tarde aparecieron las arquitecturas de tipo RISC (Reduced Instruction Set Computer), con instrucciones optimizadas: rápidas y pequeñas. 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. La idea de RISC 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 la memoria 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.


CISC vs RISC
      
        Las arquitecturas CISC nacieron como primera solución, contando con un extenso juego de intrucciones para facilitar la tarea del programador de ensamblador. Algunas de sus instrucciones son complicadas e implican el uso de varias instrucciones simples. El objetivo principal de la arquitectura CISC es completar una tarea en el menor número de líneas de código ensamblador posibles. Este objetivo es conseguido mediante la construcción de un microprocesador capaz de comprender y ejecutar una serie de operaciones complejas.

                Una de las ventajas principales de la filosofía CISC es que el compilador tiene que hacer muy poco trabajo para traducir un lenguaje de alto nivel a ensamblador. Además, debido a que la longitud del código es relativamente corta, hace falta poca RAM para almacenar las instrucciones. Pero la dificultad está en construir instrucciones complejas directamente en hardware.

              La filosofía RISC disecciona cada instrucción en varias mucho más simples. Esto repercute en que los programas de ensamblador son más largos y algo más complicados (se programa a un nivel más bajo). Un código escrito con esta filosofía, a primera vista, puede parecer una manera mucho menos eficiente de completar la operación: hay que encargarse de mover datos a registros, realizar las operaciones, controlar en todo momento los registros usados, mover los resultados a memoria... Debido a que hay más líneas de código, hace falta más RAM para almacenar las instrucciones en ensamblador. El compilador debe realizar también más trabajo para convertir un lenguaje de alto nivel en código.

                  Sin embargo, la estrategia RISC tiene grandes ventajas. Debido a que cada instrucción realiza una operación muy simple, el código se ejecutará en aproximadamente el mismo tiempo que sus comandos homólogos en RISC, por ejemplo el "MULT" de la arquitectura CISC. Estas "instrucciones reducidas" RISC requieren menos hardware y son más sencillas que las instrucciones complejas, dejando más espacio para registros de propósito general. Además, las optimizaciones sobre un hardware más sencillo son mucho más fáciles de realizar.

         A modo de resumen, CISC nos proporciona: 1. Computador con repertorio de instrucciones complejo. 2. Gran número de instrucciones complejas. 3. Gran variedad de tipos de datos y de modos de direccionamiento. 4. Permite implementar instrucciones de alto nivel directamente o con un número pequeño de instrucciones ensamblador. 5. Además se pueden añadir nuevas instrucciones al repertorio manteniendo las antiguas.

               Las características de RISC son: 1. Computador con repertorio de instrucciones reducido. 2. Pocas instrucciones y muy básicas. 3. Repertorio simple y ortogonal. 4. Formatos de instrucción uniformes. 5. Pocos tipos de datos y de modos de direccionamiento, siempre los más sencillos.

Ecuación para medir el rendimiento de un ordenador

La actualidad


                 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 apoderado completamente del mercado de estaciones de trabajo. Después del lanzamiento de la SUN SPARCstation los otros proveedores se apuraron a competir con sus propias soluciones basadas en RISC. Incluso el mundo de las computadoras centrales está ahora basado completamente en RISC.

             Esto es sorprendente en vista del dominio del Intel x86 en el mercado de las computadoras personales de escritorio y el mercado de 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 encuentra en la mayoría de las computadoras de SGI, en la Nintendo 64 y PlayStation.
- La serie IBM POWER, utilizado principalmente en Servidores de IBM.
- La versión PowerPC de Motorola e IBM (una versión de la serie IBM POWER) utilizada en los ordenadores Amiga, Apple Macintosh como el iMac, eMac, Power Mac y posteriores.
- El procesador SPARC de SUN Microsystems y el UltraSPARC, que se encuentra en todos sus últimos modelos de equipos.
- El PA-RISC y el HP/PA de Hewlett-Packard.
- El DEC Alpha en servidores HP AlphaServer.
- El ARM – Se encuentra en dispositivos PALM, Nintendo DS, Game Boy Advance y en múltiples PDAs.



Más información:
http://www.wikipedia.org/ La enciclopedia online. Varios artículos sobre RISC, CISC, procesadores...

RISC vs. CISC: the Post-RISC Era (en inglés) El mejor artículo que puede consultarse acerca de los procesadores RISC y CISC, así como la comparación entre ellos. Presentado por el sitio web Ars Technica - The PC enthusiast's Resource. LECTURA MUY RECOMENDABLE


http://www-cs-faculty.stanford.edu/~eroberts/courses/soco/projects/2000-01/risc/risccisc/ RISC vs. CISC

RISC, Reduced Instruction Set Computer Architecture Wikipedia, la enciclopedia libre, lleva a cabo un exhaustivo informe sobre los microprocesadores de tipo RISC.


The RISC Concept - A Survey of Implementations (en inglés) Interesante artículo acerca de la arquitectura RISC en el cual se hace una descripción jerárquica, haciendo incapié en las características esenciales de este paradigma arquitectónico.

Tanembaum, Andrew S. (1992)"Organización de Computadoras. Un Enfoque Estructurado"Ed. Prentice Hall.

Rolf Jurgen B. "Del CISC al RISC: Aumento explosivo de la potencia en los microprocesadores"Revista Siemens Año 51 Enero/Marzo 1991. Siemens Aktiengesellschaft. Munich, RFA.
Hernández, Luis."¿RISC O CISC?"PC/TIPS BYTE. Año 5 No. 50 Marzo de 1992.

No hay comentarios:

Publicar un comentario