Arquitectura RISC vs CISC.docx

download Arquitectura RISC vs CISC.docx

of 25

Transcript of Arquitectura RISC vs CISC.docx

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    1/25

    Arquitectura RISC vs CISCJos Ignacio Vega LunaProfesor Investigador de la UAM / AzcapotzalcoDCBI / Departamento de Electrnica

    Roberto Snchez GonzlezProfesor Investigador de la UAM / AzcapotzalcoDCBI / Departamento de Electrnica

    Gerardo Salgado GuzmnProfesor Investigador de la UAM / Azcapotzalco

    DCBI / Departamento de Electrnica

    Luis Andrs Snchez GonzlezHewlett Packard de Mxico

    Hoy en da, los programas cada vez ms grandes y complejos demandanmayor velocidad en el procesamiento de informacin, lo que implica labsqueda de microprocesadores ms rpidos y eficientes.Los avances y progresos en la tecnologa de semiconductores, han reducidolas diferencias en las velocidades de procesamiento de los microprocesadorescon las velocidades de las memorias, lo que ha repercutido en nuevastecnologas en el desarrollo de microprocesadores. Hay quienes consideranque en breve los microprocesadores RISC (reduced instruction set computer)sustituirn a los CISC (complex instruction set computer), pero existe el hechoque los microprocesadores CISC tienen un mercado de software muydifundido, aunque tampoco tendrn ya que establecer nuevas familias encomparacin con el desarrollo de nuevos proyectos con tecnologa RISC. La arquitectura RISC plantea en su filosofa de diseo una relacin muy

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

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

    CISC (complex instruction set computer) Computadoras con unconjunto de instrucciones complejo.

    RISC (reduced instruction set computer) Computadoras con unconjunto de instrucciones reducido.

    Los atributos complejo y reducido describen las diferencias entre los dosmodelos de arquitectura para microprocesadores solo de forma superficial. Serequiere de muchas otras caractersticas esenciales para definir los RISC y losCISC tpicos. Aun ms, existen diversos procesadores que no se puedenasignar con facilidad a ninguna categora determinada.

    http://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm#direcvljihttp://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm#direcsgrhttp://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm#direcgsghttp://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm#direcgsghttp://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm#direcsgrhttp://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm#direcvlji
  • 7/22/2019 Arquitectura RISC vs CISC.docx

    2/25

    As, los trminos complejo y reducido, expresan muy bien una importantecaracterstica definitiva, siempre que no se tomen solo como referencia lasinstrucciones, sino que se considere tambin la complejidad del hardware delprocesador.

    Con tecnologas de semiconductores comparables e igual frecuencia de reloj,un procesador RISC tpico tiene una capacidad de procesamiento de dos acuatro veces mayor que la de un CISC, pero su estructura de hardware es tansimple, que se puede realizar en una fraccin de la superficie ocupada por elcircuito integrado de un procesador CISC.

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

    Para aplicar una determinada arquitectura de microprocesador sondecisivas las condiciones de realizacin tcnica y sobre todo larentabilidad, incluyendo los costos de software.

    Existan y existen razones de compatibilidad para desarrollar y utilizarprocesadores de estructura compleja as como un extenso conjunto deinstrucciones.

    La meta principal es incrementar el rendimiento del procesador, ya seaoptimizando alguno existente o se desee crear uno nuevo. Para esto se debenconsiderar tres reas principales a cubrir en el diseo del procesador y estasson:

    La arquitectura. La tecnologa de proceso. El encapsulado.

    La tecnologa de proceso, se refiere a los materiales y tcnicas utilizadas en lafabricacin del circuito integrado, el encapsulado se refiere a cmo se integra

    un procesador con lo que lo rodea en un sistema funcional, que de algunamanera determina la velocidad total del sistema.

    Aunque la tecnologa de proceso y de encapsulado son vitales en laelaboracin de procesadores ms rpidos, es la arquitecturadel procesadorlo que hace la diferencia entre el rendimiento de una CPU (Control ProcessUnit) y otra. Y es en la evaluacin de las arqutecturas RISC y CISC dondecentraremos nuestra atencin.

    Dependiendo de cmo el procesador almacena los operandos de lasinstrucciones de la CPU, existen tres tipos de juegos de instrucciones:

    1. Juego de instrucciones para arquitecturas basadas en pilas.2. Juego de instrucciones para arquitecturas basadas en acumulador.3. Juego de instrucciones para arquitecturas basadas en registros.

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

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    3/25

    ARQUITECTURAS CISC

    La microprogramacin es una caracterstica importante y esencial de casitodas las arqutecturas CISC.

    Como por ejemplo:

    Intel 8086, 8088, 80286, 80386, 80486.

    Motorola 68000, 68010, 68020, 68030, 6840.

    La microprogramacin significa que cada instruccin de mquina esinterpretada por un microprograma localizado en una memoria en el circuitointegrado del procesador.

    En la dcada de los sesentas la micropramacin, por sus caractersticas, erala tcnica ms apropiada para las tecnologas de memorias existentes en esapoca y permita desarrollar tambin procesadores con compatibilidadascendente. En consecuencia, los procesadores se dotaron de poderososconjuntos de instrucciones.

    Las instrucciones compuestas son decodificadas internamente y ejecutadascon una serie de microinstrucciones almacenadas en una ROM interna. Paraesto se requieren de varios ciclos de reloj (al menos uno por microinstruccin).

    ARQUITECTURAS RISC

    Buscando aumentar la velocidad del procesamiento se descubri en base aexperimentos que, con una determinada arquitectura de base, la ejecucin de

    programas compilados directamente con microinstrucciones y residentes enmemoria externa al circuito integrado resultaban ser mas eficientes, gracias aque el tiempo de acceso de las memorias se fue decrementando conforme semejoraba su tecnologa de encapsulado.

    Debido a que se tiene un conjunto de instrucciones simplificado, stas sepueden implantar por hardware directamente en la CPU, lo cual elimina elmicrocdigo y la necesidad de decodificar instrucciones complejas.

    En investigaciones hechas a mediados de la dcada de los setentas, conrespecto a la frecuencia de utilizacin de una instruccin en un CISC y al

    tiempo para su ejecucin, se observ lo siguiente:

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

    - Existen secuencias de instrucciones simples que obtienen el mismoresultado que secuencias complejas predeterminadas, pero requieren tiempos

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    4/25

    de ejecucin ms cortos.

    Las caractersticas esenciales de una arquitectura RISC pueden resumirsecomo sigue:

    Estos microprocesadores siguen tomando como base el esquemamoderno de Von Neumann.

    Las instrucciones, aunque con otras caractersticas, siguen divididas entres grupos:

    a) Transferencia.

    b) Operaciones.c) Control de flujo.

    Reduccin del conjunto de instrucciones a instrucciones bsicassimples, con la que pueden implantarse todas las operacionescomplejas.

    Arquitectura del tipo load-store (carga y almacena). Las nicasinstrucciones que tienen acceso a la memoria son 'load' y 'store';registro a registro, con un menor nmero de acceso a memoria.

    Casi todas las instrucciones pueden ejecutarse dentro de un ciclo dereloj. Con un control implantado por hardware (con un diseo del tipo

    load-store), casi todas las instrucciones se pueden ejecutar cada ciclode reloj, base importante para la reorganizacin de la ejecucin deinstrucciones por medio de un compilador.

    Pipeline (ejecucin simultnea de varias instrucciones). Posibilidad dereducir el nmero de ciclos de mquina necesarios para la ejecucin dela instruccin, ya que esta tcnica permite que una instruccin puedeempezar a ejecutarse antes de que haya terminado la anterior.

    El hecho de que la estructura simple de un procesador RISC conduzca a unanotable reduccin de la superficie del circuito integrado, se aprovecha confrecuencia para ubicar en el mismo, funciones adicionales:

    Unidad para el procesamiento aritmtico de punto flotante. Unidad de administracin de memoria. Funciones de control de memoria cache. Implantacin de un conjunto de registros mltiples.

    La relativa sencillez de la arquitectura de los procesadores RISC conduce aciclos de diseo ms cortos cuando se desarrollan nuevas versiones, lo queposibilita siempre la aplicacin de las ms recientes tecnologas desemiconductores. Por ello, los procesadores RISC no solo tienden a ofreceruna capacidad de procesamiento del sistema de 2 a 4 veces mayor, sino quelos saltos de capacidad que se producen de generacin en generacin sonmucho mayores que en los CISC.

    Por otra parte, es necesario considerar tambin que:

    La disponibilidad de memorias grandes, baratas y con tiempos deacceso menores de 60 ns en tecnologas CMOS.

    Mdulos SRAM (Memoria de acceso aleatorio esttica) para memoriascache con tiempos de acceso menores a los 15 ns.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    5/25

    Tecnologas de encapsulado que permiten realizar ms de 120terminales.

    Esto ha hecho cambiar, en la segunda mitad de la dcada de los ochentas,esencialmente las condiciones tcnicas para arqutecturas RISC.

    La siguiente tabla esquematiza algunas de las principales caractersticas delas arqutecturas RISC Y CISC.

    PRINCIPIOS DE DISEO DE LAS MAQUINAS RISC

    Resulta un tanto ingenuo querer abarcar completamente los principios dediseo de las mquinas RISC, sin embargo, se intentar presentar de unamanera general la filosofa bsica de diseo de estas maquinas, teniendo encuenta que dicha filosofa puede presentar variantes. Es muy importanteconocer estos principios bsicos, pues de stos se desprenden algunascaractersticas importantes de los sistemas basados en microprocesadoresRISC.

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

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

    bus de datos.4. Agregar nuevas instrucciones slo si no hacen ms lenta a la mquina.5. Repetir este proceso para otros recursos.

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

    hacen en realidad los programas que se pretenden ejecutar. Ya sea que losprogramas a ejecutar sean del tipo algortmicos tradicionales, o estn dirigidosa robtica o al diseo asistido por computadora.

    La parte medular de cualquier sistema es la que contiene los registros, el ALUy los 'buses' que los conectan. Se debe optimar este circuito para el lenguaje oaplicacin en cuestin. El tiempo requerido, (denominado tiempo del ciclo delbus de datos) para extraer los operandos de sus registros, mover los datos atravs del ALU y almacenar el resultado de nuevo en un registro, deberhacerse en el tiempo mas corto posible.

    El siguiente punto a cubrir es disear instrucciones de mquina que hagan unbuen uso del bus de datos. Por lo general se necesitan solo unas cuantasinstrucciones y modos de direccionamiento; slo se deben colocarinstrucciones adicionales si sern usadas con frecuencia y no reducen eldesempeo de las ms importantes.

    Siempre que aparezca una nueva y atractiva caracterstica, deber analizarsey ver la forma en que se afecta al ciclo de bus. Si se incrementa el tiempo del

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    6/25

    ciclo, probablemente no vale la pena tenerla.

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

    Una vez planteadas las caractersticas principales de la arquitectura RISC ascomo la filosofa de su diseo, podramos extender el anlisis y estudio decada una de las caractersticas importantes de las arqutecturas RISC y lasimplicaciones 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 mediode conexiones fijas en el circuito integrado para agilizar las instruccionesbsicas ms importantes. De esta manera, el compilador asume la funcin deun mediador inteligente entre el programa de aplicacin y el microprocesador.Es decir, se hace un gran esfuerzo para mantener al hardware tan simple

    como sea posible, an a costa de hacer al compilador considerablemente mscomplicado. Esta estrategia se encuentra en clara contra posicin con lasmquinas CISC que tienen modos de direccionamiento muy complicados. Enla prctica, la existencia en algunos modos de direccionamiento complicadosen los microprocesadores CISC, hacen que tanto el compilador como elmicroprograma sean muy complicados.

    No obstante, las mquinas CISC no tienen caractersticas complicadas comocarga, almacenamiento y salto que consumen mucho tiempo, las cuales enefecto aumentan la complejidad del compilador.

    Para suministrar datos al microprocesador de tal forma que siempre esttrabajando en forma eficiente, se aplican diferentes tcnicas de optimizacinen distintos niveles jerrquicos del software.

    Los diseadores de RISC en la empresa MIP y en Hewlett Packard trabajansegn la regla siguiente:

    Una instruccin ingresa en forma fija en el circuito integrado delprocesador (es decir, se alambra fsicamente en el procesador) si se hademostrado que la capacidad total del sistema se incrementa en por lomenos un 1%.

    En cambio, los procesadores CISC, han sido desarrollados por equiposespecializados de las empresas productoras de semiconductores y confrecuencia el desarrollo de compiladores se sigue por separado. Porconsiguiente, los diseadores de los compiladores se encuentran con unainterfaz hacia el procesador ya definido y no pueden influir sobre ladistribucin ptima de las funciones entre el procesador y compilador.

    Las empresas de software que desarrollan compiladores y programas de

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    7/25

    aplicacin, tienden por razones de rentabilidad, a utilizar diferentesprocesadores como usuarios de su software en lugar de realizar unaoptimizacin completa, y aprovechar as las respectivas caractersticas decada uno. Lo cual tambin genera otros factores negativos de eficiencia. Estalimitacin de las posibilidades de optimizacin del sistema, que viene dada amenudo por una obligada compatibilidad, se super con los modernosdesarrollos RISC.

    CAPACIDAD DE PROCESAMIENTO DE LOS SISTEMAS DESDE

    EL PUNTO DE VISTA DEL USUARIOAparte de la base conceptual para el desarrollo de un sistema de computacinde alta calidad, se requieren tcnicas especiales para optimizar cada uno delos factores que determinan la capacidad de procesamiento, la cual, solopuede definirse con el programa de aplicacin.

    La informacin suministrada por un fabricante, sobre la velocidad en mips(millones de Instrucciones por segundo) que una arquitectura es capaz derealizar, carece de relevancia hasta que el usuario sepa cuantas instruccionesgenera el respectivo compilador, al traducir su programa de aplicacin y

    cunto tiempo tarda la ejecucin de estas instrucciones, y solo el anlisis dediferentes pruebas y comparaciones de rendimiento ("benchmarks) da unaidea aproximada, que el usuario puede aplicar para delimitar las arqutecturasadecuadas.

    Dos diferentes puntos de vista acerca de capacidad de procesamientodel sistema.

    Sistema reprogramable. Un usuario que necesite desarrollar un sistemareprogramable, no est interesado en obtener una alta capacidad deprocesamiento.

    Sistema incluido o dedicado. En estos sistemas el principal objetivo esprocesar en forma repetitiva una serie de aplicaciones o funcionesdeterminadas, y es de suma importancia la mayor cantidad posible depruebas y comparaciones de rendimiento ("benchmarks" ) diferentes.

    As, estas pruebas y comparaciones sirven para determinar la capacidad deprocesamiento de los sistemas, pero solo el anlisis de varios resultados dediferentes programas da una idea aproximada de la capacidad deprocesamiento real.

    APLICACIONES DE LOS PROCESADORES RISC

    Las arquitecturas CISC utilizadas desde hace 15 aos han permitidodesarrollar un gran nmero de productos de software. Ello representa unaconsiderable inversin y asegura a estas familias de procesadores unmercado creciente. Sin embargo, simultneamente aumentan las aplicacionesen las cuales la capacidad de procesamiento que se pueda obtener del

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    8/25

    sistema es ms importante que la compatibilidad con el hardware y el softwareanteriores, lo cual no solo es vlido en los subsistemas de alta capacidad en elcampo de los sistemas llamados "embedded", en los que siempre dominaronlas soluciones especiales de alta capacidad de procesamiento sino tambinpara las estaciones de trabajo ("workstations"). Esta clase de equipos se hanintroducido poco a poco en oficinas, en la medicina y en bancos, debido a loscada vez mas voluminosos y complejos paquetes de software que con suscrecientes requerimientos de reproduccin visual, que antes se encontrabansolo en el campo tcnico de la investigacin y desarrollo.

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

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

    La arquitectura MIPS-RISC ha encontrado, en el sector de estaciones detrabajo, la mayor aceptacin. Los procesadores MIPS son fabricados ycomercializados por cinco empresas productoras de semiconductores, entrelas que figuran NEC y Siemens. Los procesadores de los cinco proveedoresson compatibles en cuanto a las terminales, las funciones y los bits.

    CONCLUSIONES

    Cada usuario debe decidirse a favor o en contra de determinada arquitectura

    de procesador en funcin de la aplicacin concreta que quiera realizar. Estovale tanto para la decisin por una determinada arquitectura CISC o RISC,como para determinar si RISC puede emplearse en forma rentable para unaaplicacin concreta.

    Nunca ser decisiva nicamente la capacidad de procesamiento delmicroprocesador, y s la capacidad real que puede alcanzar el sistemaen su conjunto.

    Los costos, por su parte, tambin sern evaluados.

    Supongamos por ejemplo, que el precio de un procesador sea de $500.00

    USD, ste ser secundario para un usuario que disea una estacin detrabajo para venderla despus a un precio de $100 000.00 USD. Su decisinse orientar exclusivamente por la potencialidad de este procesador.

    RISC ofrece soluciones atractivas donde se requiere una elevada capacidadde procesamiento y se presente una orientacin hacia los lenguajes de altonivel.

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

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    9/25

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

    Si bin el campo de aplicaciones de las arqutecturas RISC de alta capacidadcrece con fuerza, esto no equivale al fin de otras arqutecturas deprocesadores y controladores acreditadas que tambin seguirnperfeccionndose, lo que si resulta dudoso es la creacin de familias CISCcompletamente nuevas.

    Adoptando tcnicas tpicas de los procesadores RISC en las nuevas versionesde procesadores CISC, se intenta encontrar nuevas rutas para el incrementode la capacidad de las familias CISC ya establecidas.

    Entre tanto, los procesadores RISC han conquistado el sector de lasestaciones de trabajo, dominado antes por los procesadores Motorola 68 000,y es muy probable que acosen la arquitectura Intel en el sector superior de lasPC's.

    Las decisiones en el mercado las toman los usuarios, y aqu, el software o laaplicacin concreta juega un papel mucho ms importante que las diferenciasentre las estructuras que son inapreciables para el usuario final.

    Caractersticas de la arq cisc

    Arquitectura RISC y CISCA que nos referimos a las Arquitecturas RISCy CISC...

    Una de las primeras decisiones a la hora de disear un microprocesador es decidir cual sersu juego de instrucciones.

    La decisin por dos razones; primero, el juego de instrucciones decide el diseo fsico del

    conjunto; segundo, cualquier operacin que deba ejecutarse en el microprocesador deber

    poder ser descrita en trminos de un lenguaje de estas instrucciones.

    Frente a esta cuestin caben dos filosofas de diseo; mquinas denominadas CISCymquinas denominadas RISC.

    http://rcmcomputointegrado.blogspot.com/2012/03/arquitectura-risc-y-cisc.htmlhttp://rcmcomputointegrado.blogspot.com/2012/03/arquitectura-risc-y-cisc.html
  • 7/22/2019 Arquitectura RISC vs CISC.docx

    10/25

    Cuando hablamos de microprocesadores CISC, computadoras con un conjunto deinstrucciones complejo, (del ingls complex instruction set computer), y procesadores RISC,computadoras con un conjunto de instrucciones reducido, (del ingls reduced instruction set

    computer), se piensa que los atributos complejo y reducido describen las diferencias entre los

    dos modelos de arquitectura para microprocesadores.Esto es cierto solo de forma superficial, pues se requiere de muchas otras caractersticas

    esenciales para definir los RISC y los CISC.

    Hasta hace solo algunos aos, la divisin era tajante: RISC se utilizaba para entornos de red,

    mientras que CISC se aplicaba en ordenadores domsticos. Pero en la actualidad se alzan

    voces que afirman que CISC est agotando sus posibilidades, mientras otras defienden

    fervientemente que CISC ya ha alcanzado a RISC, adoptando algunas de sus principales

    caractersticas.

    Arquitectura RISC

    En la arquitectura computacional, RISC (del ingls reduced instruction set computer) es un tipode microprocesador con las siguientes caractersticas fundamentales:

    Instrucciones de tamao fijo y presentadas en un reducido nmero de formatos. Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.

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

    paralelismo en la ejecucin de instrucciones y reducir los accesos a memoria.

    http://www.monografias.com/trabajos55/microprocesadores-cisc-risc/Image9300.gifhttp://img.tfd.com/cde/RISC.GIFhttp://www.monografias.com/trabajos55/microprocesadores-cisc-risc/Image9300.gifhttp://img.tfd.com/cde/RISC.GIF
  • 7/22/2019 Arquitectura RISC vs CISC.docx

    11/25

    Las mquinas RISCprotagonizan la tendencia actual de construccin de microprocesadores.PowerPC, DEC Alpha, MIPS, ARM, SPARC... son ejemplos de algunos de ellos.

    RISC es una filosofa de diseo de CPU para computadora que est a favor de conjuntos de

    instrucciones pequeas y simples que toman menor tiempo para ejecutarse.

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

    en CISC en lugar de RISC, aunque las versiones ms nuevas traducen instrucciones basadas

    en CISC x86 a instrucciones ms simples basadas en RISC para uso interno antes de su

    ejecucin.

    La idea fue inspirada por el hecho de que muchas de las caractersticas que eran incluidas enlos diseos tradicionales de CPU para aumentar la velocidad estaban siendo ignoradas por los

    programas que eran ejecutados en ellas. Adems, la velocidad del procesador en relacin con

    la memoria de la computadora que acceda era cada vez ms alta. Esto con llev la aparicin

    de numerosas tcnicas para reducir el procesamiento dentro del CPU, as como de reducir el

    nmero total de accesos a memoria.

    Caracteristicas:

    En pocas palabras esto significa que para cualquier nivel de desempeo dado, un chip RISC

    tpicamente tendr menos transistores dedicados a la lgica principal. Esto permite a losdiseadores una flexibilidad considerable; as pueden, por ejemplo:

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

    consumo de energa o de tamao limitado.

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

    Codificacin uniforme de instrucciones, lo que permite una de codificacin ms rpida. Un conjunto de registros homogneo, permitiendo que cualquier registro sea utilizado en

    cualquier contexto y as simplificar el diseo del compilador. Modos de direccionamiento simple con modos ms complejos reemplazados por secuencias

    de instrucciones aritmticas simples. Los tipos de datos soportados en el hardware no se encuentran en una mquina RISC. Los diseos RISC tambin prefieren utilizar como caracterstica un modelo de memoria

    Harvard, donde los conjuntos de instrucciones y los conjuntos de datos estnconceptualmente separados.

    RISC Moderno:

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    12/25

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

    La lnea MIPS Technologies Inc., que se encontraba en la mayora de las computadoras deSilicon Graphics hasta 2006, y estuvo en las consolas ya descatalogadas Nintendo 64,PlayStation y PlayStation 2. Actualmente se utiliza en la PlayStation Portable y algunosrouters.

    La serie IBM POWER, utilizado principalmente por IBM en Servidores y superordenadores. La versin PowerPC de Motorola e IBM (una versin de la serie IBM POWER) utilizada en los

    ordenadores AmigaOne, Apple Macintosh como el iMac, eMac, Power Mac y posteriores(hasta 2006). Actualmente se utiliza en muchos sistemas empotrados en automviles, routers,etc, as como en muchas consolas de videojuegos, como la Playstation 3, Xbox 360 y Wii.

    El procesador SPARC y UltraSPARC de Sun Microsystems y Fujitsu, que se encuentra en susltimos modelos de servidores (y hasta 2008 tambin en estaciones de trabajo).

    El PA-RISC y el HP/PA de Hewlett-Packard, ya descatalogados. El DEC Alpha en servidores HP AlphaServer y estaciones de trabajo AlphaStation, ya

    descatalogados. El ARM El paso de hardware de instrucciones x86 en operaciones RISC llega a ser

    significativo en el rea y la energa para dispositivos mviles e integrados. Por lo tanto, losprocesadores ARM dominan en PALM, Nintendo DS, Game Boy Advance y en mltiplesPDAs, Apple iPods, Apple iPhone, iPod Touch (Samsung ARM1176JZF, ARM Cortex-A8,Apple A4), Apple iPad (Apple A4 ARM -based SoC), videoconsolas como Nintendo DS(ARM7TDMI, ARM946E-S), Nintendo Game Boy Advance (ARM7TDMI).

    El Atmel AVR usado en gran variedad de productos, desde mandos de la Xbox a los cochesde la empresa BMW.

    La plataforma SuperH de Hitachi, originalmente usada para las consolas Sega Super 32X,Saturn y Dreamcast, ahora forman parte de el corazon de muchos equipos electrnicos para elconsumo.SuperH es la plataforma base de el grupo Mitsubishi - Hitachi. Estos dos grupos,unidos en 2002, dejaron aparte la propia arquitectura RISC de Mitsubishi, el M32R.

    Los procesadores XAP usados en muchos chips wireless de poco consumo (Bluetooth, wifi)de CSR.

    Entre las ventajasde RISCtenemos las siguientes:

    La CPU trabaja mas rpido al utilizar menos ciclos de reloj para ejecutar instrucciones. Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a diferencia de

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

    Cada instruccin puede ser ejecutada en un solo ciclo del CPU

    Arquitectura CISC

    En la arquitectura computacional, CISC (complex instruction set computer) es un modelo dearquitectura de computadora.

    Los microprocesadores CISC tienen un conjunto de instrucciones que se caracteriza por ser

    muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los

    registros internos, en contraposicin a la arquitectura RISC.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    13/25

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

    actualidad, la mayora de los sistemas CISC de alto rendimiento implementan un sistema que

    convierte dichas instrucciones complejas en varias instrucciones simples del tipo RISC,

    llamadas generalmente microinstrucciones.

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

    desarrollo de los RISC. Ejemplos de ellos son: Motorola 68000, Zilog Z80 y toda la familia Intel

    x86 usada en la mayora de las computadoras personales actuales.

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

    Entre las ventajas de CISCdestacan las siguientes:

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

    Ejemplo de microprocesadores basados en la tecnologa CISC:

    Intel 8086, 8088, 80286, 80386, 80486. Motorola68000, 68010, 68020, 68030, 6840.

    Ejemplo de microprocesadores basados en la tecnologa CISC:

    MIPS, Millions Instruction Per Second. PA-RISC, Hewlett Packard. SPARC, Scalable Processor Architecture, Sun Microsystems. POWER PC, Apple, Motorola e IBM.

    Conclusin:

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

    el procesamiento de informacin, lo que implica la bsqueda de microprocesadores ms

    http://www.monografias.com/trabajos55/microprocesadores-cisc-risc/Image9299.gif
  • 7/22/2019 Arquitectura RISC vs CISC.docx

    14/25

    rpidos y eficientes.

    Referencias:

    http://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm http://es.wikipedia.org/wiki/RISC http://www.monografias.com/trabajos55/microprocesadores-cisc-risc/microprocesadores-cisc-

    risc.shtml

    PROCESADORESCISC - RISC

    Los procesadores se agrupan hoy en dos familias, la ms antigua y comn de lascuales es la "CISC" o "Complex Instruction Set Computer": computador de setcomplejo de instrucciones. Esto corresponde a procesadores que son capaces deejecutar un gran nmero de instrucciones pre-definidas en lenguaje de mquina (delorden del centenar).Desde hace unos aos se fabrican y utilizan en algunas mquinas procesadores "RISC"o "Reduced Instruction Set Computer", es decir con un nmero reducido deinstrucciones. Esto permite una ejecucin ms rpida de las instrucciones perorequiere compiladores (o sea traductores automticos de programas) ms complejosya que las instrucciones que un "CISC" podra admitir pero no un "RISC", deben serescritas como combinaciones de varias instruciones admisibles del "RISC". Se obtiene

    una ganancia en velocidad por el hecho que el RISC domina instrucciones muyfrecuentes mientras son operaciones menos frecuentes las que deben descomponerse.Procesadores CISC

    Las caractersticas principales de los procesadores CISC son:

    CISC = Complex Instruction Set Computero Muchas instrucciones potenteso Muchos modos de direccionamientoo Varios formatos de instrucciones

    Normalmente microprogramados (no microprogramables) La ejecucin de las instrucciones lleva varios ciclos de mquina.

    http://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htmhttp://es.wikipedia.org/wiki/RISChttp://www.monografias.com/trabajos55/microprocesadores-cisc-risc/microprocesadores-cisc-risc.shtmlhttp://www.monografias.com/trabajos55/microprocesadores-cisc-risc/microprocesadores-cisc-risc.shtmlhttp://www.monografias.com/trabajos55/microprocesadores-cisc-risc/microprocesadores-cisc-risc.shtmlhttp://www.monografias.com/trabajos55/microprocesadores-cisc-risc/microprocesadores-cisc-risc.shtmlhttp://es.wikipedia.org/wiki/RISChttp://www.azc.uam.mx/publicaciones/enlinea2/num1/1-2.htm
  • 7/22/2019 Arquitectura RISC vs CISC.docx

    15/25

    Aparece 60s ? Compiladores en su infancia

    o CISC pretenda disminuir el salto entre los lenguajes de alto nivel (LAN)y el lenguaje mquina (LM)

    60s...IBM 360;70s...DEC VAX, Intel x86, Motorola 680x0Mdelo ejecucin: reg/men-reg/mem

    o ? tiempo acceso memoria ms lento que ? clko Registros pocos y especializados

    Instrucciones complejas ? ?CPIo Repertorio completo VAX ?+400Kb de uCdigo

    20% inst. ? 60% ?C y slo 0.2% de utilizacin

    Arquitectura de mucho xito ? Intel x86o nica CISC en expansin hasta hoy en da

    memoria segmentada ? ? trabajo a programadores bajo nivel ycompiladores

    Procesadores RISC

    RISC = Reduced Instruction Set Computero Pocas instrucciones y sencillaso Pocos modos de direccionamiento

    En los 80s los uP eran muy complejoso Las instrucciones complejas se utilizaban pocoo ... y hacan al uP ms lento

    Idea ? Optimizar el caso comno ... buscando las operaciones ms utilizadas y diseando la mquina

    entorno a ellaso Aadir nuevas slo si no ralentizan la mquina

    ? accesos a memoria ? Load/Store

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    16/25

    o

    modelo de ejecucin reg-rego ? registros general purpose (p.e. 32)

    ? instrucciones ? simples y regulareso ejecucin directa por el hardware (uCdigo=0)o ? formatos instruccin ? decodif. ms rpidao objetivo de 1 instruccin/ciclo

    ? NI ? ? trabajo de los compiladoreso ? distancia entre LAN y LMo

    80s.. tecnologa de compiladores madura

    CISC vs. RISCEjemplos

    CSIC RISCIBM370 VAX 11/780 8086 SPARC I MIPS IAo 1973 1978 1978 1981 1983Instrucciones 208 303 100 39 55Microcdigo 54Kb 400Kb 11Kb 0 0Inst. (bytes) 2-6 2-57 1-17 4 4

    Balance ? gana RISC Aunque actualmente la divisin no est clara .... Pentium, Pentium II y IA-64

    son CSIC, pero por debajo existe una mquina RISC. RISC por rendimiento,CISC por compatibilidad software... ltimos SPARC instruccin producto dematrices

    Una computadora CISC gasta el 80% de su tiempo ejecutando solamente el

    20% de suinstrucciones.

    La ejecucin en RISC es ms rpida que en CISC.

    Los programas en RISC ocupan menos espacio de memoria.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    17/25

    Procesadores RISC, multiproceso y

    cachIntroduccin:A lo largo de la historia de la industria de los ordenadores, la tendencia mayormenteadoptada para conseguir un aumento de prestaciones, ha sido el incremento de lacomplejidad de las instrucciones. Es lo que se ha denominado "computacin conconjuntos de instrucciones complejas" o CISC (Complex Instruction Set Computing).Sin embargo, la tendencia actual, se esfuerza en conseguir procesadores con conjuntosde instrucciones de complejidad reducida o RISC (Reduced Instruction Set Computing).

    La idea es que un conjunto de instrucciones poco complejas son simples, y por tantode ms rpida ejecucin, lo que permite crear un cdigo ms "aerodinmico".Tanto la tecnologa CISC como la RISC son acreditadas a IBM, aunque sus antecesoresbien pueden ser John vonNeumman (inventor del primer programa de ordenadoralmacenado, y que promova la velocidad inherente a conjuntos de instruccionesreducidas), Maurice Wilkes (padre de la microprogramacin y de muchos conceptos delos diseos RISC), y Seymour Cray (primeros supercomputadores, empleandoprincipios RISC).En 1975, IBM inici el desarrollo de un controlador para un sistema de conmutacintelefnica, que aunque fue abandonado, sirvi como punto de partida para eldesarrollo de una CPU con tecnologa ECL, corazn del sistema 801, precursor del IBMPC RT.Los inicios de la tecnologa RISC tambin surgen en el ambiente acadmico, ya que en1980, la Universidad de Berkeley (California), el Dr. David A. Patterson inici unproyecto denominado RISC I, que obtuvo resultados en tan solo 19 meses, seguido porRISC II, SOAR (Smalltalk on a RISC) y SPUR (Symbolic Processing on a RISC). Elresultado directo, adems de la educacin en la ingeniera y los fundamentos deldiseo de microprocesadores, fue la creacin de una mquina que fuese capaz demayores velocidades de ejecucin a menores velocidades de reloj y que requiriesemenores esfuerzos de diseo.Casi simultneamente, en la Universidad de Stanford, el Dr. John Hennesy inici

    tambin un proyecto de implementacin RISC, denominado MIPS, seguido por elsistema MIPS-XMP, enfocados hacia el proceso simblico, demostrando las capacidadesde velocidad de la arquitectura RISC.Ambos profesores se vieron envueltos rpidamente, en proyectos de productoscomerciales, y en concreto, Hennesy fue uno de los fundadores de MIPS ComputerSystems, mientras Patterson actuaba de asesor durante el desarrollo del primerSPARC.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    18/25

    Por otro lado, durante las pasadas dcadas, el multiproceso, como medida deincrementar drsticamente las prestaciones de los sistemas a un coste razonable, seha visto reducido al mbito de los computadores de "alto nivel", en parte debido a losbajos niveles de integracin del silicio, y a la falta de software que facilitase laejecucin paralela de las aplicaciones.Las ventajas de los procesadores RISC, especialmente las ligadas a los sistemasabiertos (lase UNIX), los hacen plataformas ideales para explorar los puntos fuertesde los sistemas multiprocesadores.Tecnologa RISC:La comparacin que antes hemos realizado entre CISC y RISC es algo simple, ya queno es slo una cuestin de diferencias en el conjunto de instrucciones, puesto que esfundamental resaltar el mejor uso y aprovechamiento de los recursos del silicio, esdecir, menor tiempo de diseo y empleo de menor nmero de transistores, lo queredunda en menor nmero de errores de diseo y menor tiempo de ejecucin parainstrucciones individuales.Las caractersticas comunes a todos los procesadores RISC, fuente de sus capacidadesde altas prestaciones, son:

    1. Modelo de conjunto de instrucciones Load/Store

    (Cargar/Almacenar).Slo las instrucciones Load/Store acceden a memoria;

    las dems operaciones en un RISC, tienen lugar en su gran conjunto de

    registros. Ello simplifica el direccionamiento y acorta los tiempos de los ciclos de

    la CPU, y adems facilita la gestin de los fallos de paginas (page faults) en

    entornos de memoria virtual. Adems, permite un elevado nivel de concurrencia

    a consecuencia de la independencia de las operaciones de Load/Store de la

    ejecucin del resto de las instrucciones.

    2. Arquitectura no destructiva de tres direcciones.Los procesadores CISC

    destruyen la informacin que existe en alguno de los registros, como

    consecuencia de la ejecucin normal de instrucciones; esto es debido a su

    arquitectura de dos direcciones, por la cual el resultado de una operacin

    sobrescribe uno de los registros que contena a los operandos. Por contra, lasinstrucciones RISC, con tres direcciones, contienen los campos de los dos

    operandos y de su resultado. Por lo tanto, tanto los operandos origen como el

    destino, son mantenidos en los registros tras haber sido completada la

    operacin. Esta arquitectura "no destructiva" permite a los compiladores

    organizar las instrucciones de modo que mantengan llenos los conductos

    (pipelines) del chip, y por tanto reutilizar los operandos optimizando la

    concurrencia.

    3. Instrucciones simples, de formato fijo, con pocos modos de

    direccionamiento.Las instrucciones simples reducen de manera muy

    significativa el esfuerzo para su descodificacin, y favorecen su ejecucin enpipelines. Las instrucciones de longitud fija, con formatos fijos, implican que los

    campos de cdigos de operacin (opcodes) y de los operandos estn siempre

    codificados en las mismas posiciones, permitiendo el acceso a los registros al

    mismo tiempo que se est descodificando el cdigo de operacin. Todas las

    instrucciones tienen una longitud equivalente a una palabra y estn alineadas

    en la memoria en lmites de palabra (word boundaries), ya que no pueden ser

    repartidas en pedazos que puedan estar en diferentes pginas.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    19/25

    4. Ausencia de microcdigo.El microcdigo no se presta a la ejecucin enciclos nicos, ya que requiere que el hardware sea dedicado a su interpretacin

    dinmica. La programacin en microcdigo no hace que el software sea ms

    rpido que el programado con un conjunto de instrucciones simples. Todas las

    funciones y el control, en los procesadores RISC, estn "cableados"

    (hardwired), para lograr una mxima velocidad y eficiencia.

    5. Ejecucin en conductos (pipelined).Las instrucciones simples, de formato

    fijo y ciclo nico permiten que las diferentes etapas de los ciclos de ejecucin

    (bsqueda o fetch, descodificacin, ejecucin, y escritura del resultado o result

    write-back) para instrucciones mltiples, se puedan realizar simultneamente,

    de un modo ms simple y eficaz.

    6. Ejecucin en ciclos nicos (single-cycle).El resultado directo de los

    conjuntos de instrucciones que ofrecen los procesadores RISC, es que cada

    instruccin puede ser ejecutada en un nico ciclo de la CPU. Esto invalida la

    creencia de que las microinstrucciones en microcdigo, creadas para ser

    ejecutadas en un solo ciclo de procesador, son ms rpidas que las

    instrucciones del lenguaje ensamblador. Ya que el cach esta construido

    partiendo de la misma tecnologa que el almacenamiento de control del

    microprograma, una nica instruccin puede ser ejecutada a la misma velocidad

    que una microinstruccin. La ejecucin en ciclos nicos tambin simplifica la

    gestin de las interrupciones y los conductos (pipelines).

    Conceptos de multiproceso:La industria informtica, ha tenido siempre un objetivo primordial, repetido a lo largode toda su cadena (fabricantes de semiconductores, fabricantes de sistemas yusuarios): la bsqueda de la velocidad. Para alcanzar este objetivo se han invertidoingentes cantidades de recursos, hasta alcanzar los lmites fsicos del silicio.Obviamente, la velocidad va ligada a las prestaciones, y por lo general, la primera hasido la principal medida para decidirse por un sistema u otro. Sin embargo, por muyevidente que parezca, y dados los lmites fsicos de los semiconductores, las

    prestaciones pueden no estar forzosamente ligadas a la velocidad. Hoy es posibleconstruir sistemas, que an teniendo procesadores ms "lentos" que otros, ofrezcanunas prestaciones significativamente superiores. Son los sistemas multiprocesador,que como su denominacin indica, incorporan varios procesadores para llevar a cabolas mismas funciones.No es un concepto nuevo, ya que los "minicomputadores" construidos por compaascomo NCR, Sequent y Stratus, ya empleaban varios nodos de proceso comoalternativas econmicas a otros productos de otras compaas. Sin embargo, aquellossistemas an duplicaban recursos caros del sistema, como memoria y dispositivos deentrada/salida, y por tanto, confinaban a los sistemas multiprocesador al mundo de lossistemas de alto nivel.Ahora, y en gran medida gracias a los procesadores de arquitectura RISC, el soportemultiprocesador es una solucin integrada y fcilmente disponible en estaciones detrabajo de sobremesa, que resuelve, a travs de hardware VLSI, los complejosproblemas de comparticin de recursos (memoria compartida) de aquellas primerasmquinas.Evidentemente, estas mejoras en el hardware, para ser funcionales, requierenimportantes desarrollos en el software, y de hecho, muchos sistemas operativosadmiten extensiones multiproceso (Match, SCO, Solaris, System V, etc.), que

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    20/25

    proporcionan paralelismo "en bruto" (asignando mltiples tareas a mltiplesprocesadores) a nivel del sistema operativo.Las aplicaciones escritas para facilitar el paralelismo en su ejecucin, incrementansignificativamente las prestaciones globales del sistema; esto es lo que se denominamulti-enhebrado (multithreading), que implica dividir una sola aplicacin entre variosprocesadores. Sin embargo, los desarrolladores de software y programadores deaplicaciones slo han comenzado a explorar las vastas posibilidades de incremento deprestaciones que ofrecen los sistemas con capacidades reales de proceso en paralelo.El multiproceso no es algo difcil de entender: ms procesadores significa mas potenciacomputacional. Un conjunto de tareas puede ser completado ms rpidamente si hayvarias unidades de proceso ejecutndolas en paralelo. Esa es la teora, pero otrahistoria es la prctica, como hacer funcionar el multiproceso, lo que requiere unosprofundos conocimientos tanto del hardware como del software. Es necesario conocerampliamente como estn interconectados dichos procesadores, y la forma en que elcdigo que se ejecuta en los mismos ha sido escrito para escribir aplicaciones ysoftware que aproveche al mximo sus prestaciones.Para lograrlo, es necesario modificar varias facetas del sistema operativo, laorganizacin del cdigo de las propias aplicaciones, as como los lenguajes deprogramacin.Es difcil dar una definicin exacta de un sistema multiprocesador, aunque podemosestablecer una clasificacin de los sistemas de procesadores en:SISD o secuencia nica de instrucciones y datos (Single Instruction, Single Data): una

    sola secuencia de instrucciones opera sobre una sola secuencia de datos (caso tpico

    de los ordenadores personales).SIMD o secuencia nica de instrucciones y mltiple de datos (Single Instruction,

    Multiple Data): una sola secuencia de instrucciones opera, simultneamente, sobre

    mltiples secuencias de datos (array processors).MISD o mltiples secuencias de instrucciones y nica de datos (Multiple Instruction,

    Single Data): mltiples secuencias de instrucciones operan, simultneamente, sobre

    una sola secuencia de datos (sin implementaciones tiles actualmente).MIMD o mltiples secuencias de instrucciones y datos (Multiple Instruction, Multiple

    Data): mltiples secuencias de instrucciones operan, simultneamente, sobre mltiplessecuencias de datos.

    Los sistemas multiprocesadores pueden ser clasificados con mayor propiedad comosistemas MIMD. Ello implica que son mquinas con mltiples y autnomos nodos deproceso, cada uno de los cuales opera sobre su propio conjunto de datos. Todos losnodos son idnticos en funciones, por lo que cada uno puede operar en cualquier tareao porcin de la misma.El sistema en que la memoria est conectada a los nodos de proceso establece elprimer nivel de distincin entre diferentes sistemas multiprocesador:

    1. Multiprocesadores de memoria distribuida (distributed-memory

    multiprocessors), tambin denominados multiprocesadores vagamente

    acoplados (loosely coupled multiprocessors). Se caracterizan porque cada

    procesador slo puede acceder a su propia memoria. Se requiere la

    comunicacin entre los nodos de proceso para coordinar las operaciones y

    mover los datos. Los datos pueden ser intercambiados, pero no compartidos.

    Dado que los procesadores no comparten un espacio de direcciones comn, no

    hay problemas asociados con tener mltiples copias de los datos, y por tanto

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    21/25

    los procesadores no tienen que competir entre ellos para obtener sus datos. Yaque cada nodo es un sistema completo, por si mismo (incluso sus propios

    dispositivos de entrada/salida si son necesarios), el nico lmite prctico para

    incrementar las prestaciones aadiendo nuevos nodos, esta dictado por la

    topologa empleado para su interconexin. De hecho, el esquema de

    interconexin (anillos, matrices, cubos, ...), tiene un fuerte impacto en las

    prestaciones de estos sistemas. Adems de la complejidad de las

    interconexiones, una de las principales desventajas de estos sistemas, como es

    evidente, es la duplicacin de recursos caros como memoria, dispositivos de

    entrada/salida, que adems estn desocupados en gran parte del tiempo.

    2. Multiprocesadores de memoria compartida (shared-memory multiprocessors),tambin llamados multiprocesadores estrechamente acoplados (tightly coupled

    multiprocessors). Son sistemas con mltiples procesadores que comparten un

    nico espacio de direcciones de memoria. Cualquier procesador puede acceder

    a los mismos datos, al igual que puede acceder a ellos cualquier dispositivo de

    entrada/salida. El sistema de interconexin ms empleado para estos casos, es

    el de bus compartido (shared-bus). Tener muchos procesadores en un nico

    bus tiene el inconveniente de limitar las prestaciones del sistema a medida que

    se aaden nuevos procesadores. La razn es la saturacin del bus, es decir, su

    sobre utilizacin; en un sistema de bus compartido, se deriva por la contienda

    entre los diferentes dispositivos y procesadores para obtener el control del bus,

    para obtener su utilizacin.

    Es evidente, que los sistemas actuales tienden al uso de arquitecturas de memoriacompartida, fundamentalmente por razones de costes, a pesar del problema de lacontienda por el bus. Los tres fuentes fundamentalmente responsables de dichadisputa son la memoria (cada CPU debe usar el bus para acceder a la memoriaprincipal), la comunicacin (el bus es usado por los "bus masters" para lacomunicacin y coordinacin), y la latencia de la memoria (el subsistema de memoriamantiene al bus durante las transferencias de datos, y en funcin de la velocidad a laque la memoria puede responder a las peticiones, puede llegar a ser un factor muy

    significativo).

    Los sistemas de memoria cach y el multiproceso:Los sistemas de memoria multinivel (cach) son un esfuerzo para evitar el nmero depeticiones realizadas por cada CPU al bus. Los caches son pequeas y rpidas (y portanto caras) memorias, que hacen de tampn (buffer) entre la CPU y la memoriaexterna, para mantener los datos y/o instrucciones. Se basan en el principio de la"localidad", lo que significa que, dada la fundamental naturaleza secuencial de losprogramas, los siguientes datos o instrucciones requeridas, estarn localizadasinmediatamente a continuacin de las actuales.Los datos contenidos en la memoria cach se organizan en bloques denominadoslneas. Las lneas son cargadas en el cach como copias exactas de los datos situadosen la memoria externa. Para referenciar a los datos de la memoria cach, se empleanmarcas (tags) que identifican a cada lnea. Las marcas o tags emplean una porcin dela direccin fsica de los datos, para compararla con la direccin fsica solicitada por laCPU. Cuando existe una coincidencia exacta de la direccin y de otros cualificadores(estado, privilegio, contexto, etc.), se dice que ha tenido lugar un acierto (hit) decach; en caso contrario, tiene lugar un fallo (miss) del cach, y en ese caso, los datoshan de ser recuperados desde la memoria.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    22/25

    El empleo de memoria cach se ha popularizado, como medida para acelerar el tiempode acceso a la memoria principal, incluso en los sistemas monoprocesador, evitandoas, segn se incrementa la velocidad de los propios procesadores, aumentar lavelocidad de dicha memoria, y por tanto encarecer el sistema.La forma en que la memoria es actualizada por los caches locales puede tener un granimpacto en las prestaciones de un sistema multiprocesador. Bsicamente hay dosmtodos:

    1. Escritura continua (write-through). Requiere que todas las escrituras

    realizadas en el cach actualicen asimismo los datos de la memoria principal.

    De esta forma, la memoria principal siempre tiene la ltima copia de los datos,

    y por tanto no hay nunca ninguna incoherencia con el cach. El inconvenientees que se producen frecuentes accesos a memoria, especialmente superfluos

    cuando el software est modificando las mismas secciones de datos

    repetidamente (por ejemplo ejecutando bucles).

    2. Copia posterior (copy-back). Es un sistema mucho ms eficiente, aunque

    tambin ms complejo de implementar. En este caso, la CPU puede modificar la

    lnea de cach sin necesidad de actualizar inmediatamente la memoria principal.

    Los datos slo son copiados a la memoria principal cuando la lnea de cach va

    a ser reemplazada con una nueva. Ello no solo minimiza el trfico del bus, de

    vital importancia para el resto de los procesadores, sino que tambin libera al

    procesador de la tarea de escribir en la memoria principal. Sin embargo, estesistema, en una arquitectura de bus compartido, implica un nuevo nivel de

    dificultad, denominado coherencia o consistencia (coherency o consistency);

    dado que cada cach puede tener una copia de los datos existentes en la

    memoria principal, el desafo es asegurar que los datos permanecen iguales

    entre todos los caches. Hay dos mtodos para mantener cada lnea de cach

    idntica a las dems:

    a. Escritura radiada (write-broadcast), que requiere que la CPU que

    modifica los datos compartidos actualice los otros caches, para lo cual

    escribe en el bus la direccin de los datos, y los datos mismos, de modo

    que todos los dispositivos interesados (otras CPUs) los capturen. Estoasegura que cada lnea de cach en el sistema es una copia exacta de

    las dems.

    b. Escritura invalidada (write-invalidate), impide a una CPU modificar los

    datos compartidos en su cach hasta que otros caches han invalidado

    sus copias. En cuanto otros caches invalidan sus lneas, el cach

    modificado tiene la nica copia; de este modo, se garantiza que un slo

    cach escribe una lnea compartida en un momento dado. Tiene la

    ventaja de conservar el ancho de banda del bus ya que los datos

    modificados no tienen que ser enviados a otros caches.

    Ambos sistemas requieren que los caches sean capaces de identificar peticiones en elbus que afecten a sus datos, lo que se realiza con una tcnica conocida como "sondeodel bus" (bus snooping). Cada cach compara las direcciones de las peticiones en elbus compartido con los datos en su propio cache, usando las marcas (tags).

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    23/25

    Este sistema requiere un acceso concurrente a las marcas (tags) del cach por partedel bus del sistema y del bus del procesador. Sin dicho acceso concurrente, elprocesador no podra acceder al cach durante las operaciones de sondeo del bus (quetienen que tener prioridad de acceso a las marcas, para poder mantener la coherenciadel cach). El resultado son frecuentes atascos del procesador y consecuentemente,bajo rendimiento.A su vez, hay varios protocolos asociados con el sondeo del bus para el movimiento delos datos y los mensajes entre los caches:

    1. Intervencin indirecta de los datos (indirect data intervention). Es el mtodo

    ms simple de intercambio de datos entre procesadores, aunque tambin el

    menos eficiente. La 1 CPU hace una peticin de datos, que es sondeada por la2; tiene lugar un acierto de sondeo (snoop hit) si dichos datos estn en el

    cach de la 2 CPU, entonces esta obtiene el control del bus e indica a la 1 que

    lo reintente ms tarde. La 2 CPU escribe los datos de su cach a la memoria, y

    la 1 CPU obtiene el control del bus de nuevo, reiniciando la peticin. Los datos

    son ahora suministrados por la memoria.

    2. Intervencin directa de los datos (direct data intervention). Los datos son

    suministrados directamente por la 2 CPU a la 1. Este mecanismo es aplicable

    fundamentalmente a los sistemas con sistemas de cache de copia posterior

    (copy-back). Aunque pueden evitar muchos ciclos comparados con la

    intervencin indirecta, la memoria principal permanece inconsistente con elcach, y debe de ser actualizada cuando la lnea de cach es vaciada.

    3. Reflexin a memoria (memory reflection) con intervencin directa. La memoria

    captura los datos que han sido depositados en el bus, mientras son enviados a

    la CPU solicitante. Si la lnea de cach no ha sido modificada antes de que tenga

    lugar la ltima transaccin de intervencin de datos, no es necesario escribir a

    la memoria, con lo que se conserva el ancho de banda. Esta actualizacin del

    cache solicitante y la memoria puede tener lugar en un mismo y nico ciclo de

    reloj.

    PRINCIPALES FABRICANTES Y SUS PROCESADORES

    FABRICANTE PROCESADOR TENDENCIA

    SUN SPARC RISC

    SILICON GRAPHICS MIPS RISC

    MOTOROLA POWER RISC

    HEWLETT PACKARD PA RISC

    DEC ALPHA RISC

    INTEL PENTIUM CISC ~ RISC

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    24/25

    RISC frente a CISC:

    Existen varios mitos que contraponen las ventajas de la tecnologa RISC frente a la

    CISC, que es importante descalificar:

    a. Los procesadores RISC ofrecen peor soporte para los lenguajes de alto nivel oHLL (High Level Language) que lo CISC. Esta creencia se argumenta en que unconjunto de instrucciones de "alto nivel" (CISC) es mejor soporte paralenguajes de alto nivel. Sin embargo, la caracterstica fundamental de loslenguajes de alto nivel, implica que el programador slo interacciona con elordenador a travs del propio lenguaje de alto nivel (programacin, depuracin,mensajes del sistema, etc.), por lo que todos los problemas a "bajo nivel",deben de ser transparentes y desconocidos para el. Por ello, son de nulasconsecuencias para el programador y los lenguajes de alto nivel, como seimplementan las funciones, en funcin del tipo de CPU.

    b. Es ms complicado escribir compiladores RISC que CISC. Dado que los

    procesadores CISC tienen un mayor nmero de instrucciones y modos dedireccionamiento, existen por tanto ms formas de hacer la misma tarea, lo quepuede confundir tanto al compilador como al que lo escribe. Por ello,subjetivamente es posible escoger una forma de hacerlo poco adecuada, por eltipo de instrucciones o por el tiempo de ejecucin que requieren. En cambio, enun procesador RISC, hay menos opciones, por lo que el compilador es mssimple, aunque se genere, habitualmente, un 20-30% ms cdigo; a cambio, seconsigue un incremento de la velocidad de hasta un 500%.

    c. Un programa es ms rpido cuanto ms pequeo. La velocidad a la que unprograma puede ser ejecutado no depende en absoluto de su tamao, sino deltiempo de ejecucin de cada una de sus instrucciones. Dado que lasinstrucciones RISC son ms rpidas, y admiten mejor los pipelines, puede habermayor paralelismo y simultaneidad en la ejecucin de pequeas secciones de

    cdigo. Dichas secciones de cdigo pueden ser ejecutadas en una fraccin deltiempo que requiere una sola instruccin CISC.

    Resumiendo:

    No es un hecho meramente acadmico, sino puramente comercial y econmico. La

    "era RISC" ha alcanzado a todos los fabricantes de semiconductores: AMD, Intel, MIPS,

    Motorola, ROSS, ...; y todos ellos son productos usados por fabricantes de

    ordenadores y estaciones de trabajo: Apple, DEC, HP, IBM, SUN, etc. y sus

    correspondientes clnicos.

    El tiempo de diseo de estos productos se reduce sensiblemente, lo que disminuye sucoste final, y por tanto, se incrementan sus expectativas, al poder llegar al mercado en

    un tiempo ms adecuado, y con menos posibilidades de errores.

    Adems, son globalmente ms eficaces, de menores dimensiones y ms bajo consumo,

    ofreciendo siempre claras ventajas tcnicas frente a los ms avanzados CISC.

  • 7/22/2019 Arquitectura RISC vs CISC.docx

    25/25

    Actualmente, las estaciones de trabajo RISC multiprocesadoras de mayor xito, sebasan en diferentes versiones de la tecnologa SPARC: superSPARC e HyperSPARC.

    Esta claro que el futuro pertenece a los RISC y a los sistemas multiprocesador, a no

    ser que la fsica y la electrnica logren superar las barreras tecnolgicas para

    incrementar muy por encima de las cotas actuales, las velocidades y prestaciones de

    una nica CPU.

    Tambin cabe esperar, y por que no, la pronta aparicin de otras tecnologas que

    compitan con CISC y RISC.

    http://www.angelfire.com/ca6/germancho/cisc_rics.htm

    http://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracte

    r%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_

    e3YtglCAPBuBw-

    3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=

    caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=false

    revisar esta pag y trasncirbir la infoooo

    llamar a carla y que haga la otra arquitectura

    -

    http://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=falsehttp://books.google.co.ve/books?id=2wWZyKu60cAC&pg=PA301&lpg=PA301&dq=caracter%C3%ADsticas+de+la+arquitectura+cisc&source=bl&ots=DQMMlZ6nvw&sig=8_y9yeEE_e3YtglCAPBuBw-3knc&hl=es&sa=X&ei=MT1RU6GFG8bz0gGf2IAQ&ved=0CEwQ6AEwBQ#v=onepage&q=caracter%C3%ADsticas%20de%20la%20arquitectura%20cisc&f=false