Arquitecturas RISC y CISC
2. ARQUITECTURA DEL CONJUNTO DE INSTRUCCIONES Elementos de la arquitectura Operaciones del microprocesador Representacin de las instrucciones de un microprocesador Soporte a procedimientos Objetivo: Conocer y comparar las caractersticas bsicas de las arquitecturas CISC y RISC
Diseo de Sistemas Digitales EL-3310 I SEMESTRE 2007
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
Arquitecturas CISC y RISC
Clasificacin de arquitectura de acuerdo con la complejidad del ISA
Arquitectura CISC (complex instruction set computer) Arquitectura RISC (reduced instruction set computer)
Arquitectura CISC
Objetivo: ISA amplio y verstil
CISC: computadoras personales RISC: servidores y workstations Ejemplos:
CISC: INTEL (celeron, Pentium II, Pentium III, Pentium IV) y AMD (Duron, Athlon). RISC: SPARC = Scalable Processor ARChitecture de la empresa Sun, POWER PC
Gran cantidad de instrucciones Instrucciones complejas Gran cantidad de modos de direccionamiento Soporta gran cantidad de tipos de datos Implementacin de instrucciones de alto nivel lo ms directamente posible Reduccin del tiempo de ejecucin de instrucciones complejas por medio de implementacin directa en hardware Compatibilidad con miembros anteriores de la familia Microarquitectura ms compleja Instrucciones de longitud variable
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
Arquitectura CISC
Desventajas Poco uso de las instrucciones y direccionamientos complejos Poco aprovechamiento de parte de los compiladores: no es fcil encontrar la mejor instruccin para ejecutar una tarea Baja densidad de cdigo Accesos a memoria disminuyen velocidad de ejecucin
Arquitectura RISC
Objetivo: Implementar el caso frecuente para ejecucin rpida
Conjunto de instrucciones reducido y simple Conjunto de instrucciones ortogonal (slo una instruccin para cada funcin) Pocos modos simples de direccionamiento Pocos tipos de datos soportados Arquitectura load/store Gran nmero de registros de propsito general Longitud de instruccin fija
Ventajas
Microarquitectura ms simple Instrucciones ms cortas, menos tiempo de acceso a memoria Compiladores ms sencillos y eficientes Desventajas Mayor nmero de lneas de cdigo para una funcin Compatibilidad con arquitecturas antiguas es ms difcil de mantener
Dr.-Ing. Paola Vega C.
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
ITCR Diseo de Sistemas Digitales
Motivaci Motivacin de arquitectura RISC
Instrucciones simples pueden ejecutarse en pocos ciclos de reloj/ciclos de
reloj ms cortos
CISC Instrucciones multiciclo
CISC vrs RISC
RISC Instrucciones de nico ciclo Carga/almacenamiento son instrucciones separadas Arquitectura registro-registro Instrucciones cortas, Cdigo con ms lneas Implementa las instrucciones directamente en hardware Se aaden instrucciones nuevas slo si son de uso frecuente y no reducen el rendimiento de las ms importantes Compiladores complejos Elimina microcdigo y la decodificacin de instrucciones complejas
Apropiado para la aplicacin de arquitectura segmentada
Potencialmente se completara una instruccin por ciclo de reloj
Carga/almacenamiento incorporadas en otras instrucciones Arquitectura memoria-memoria Instrucciones largas, Cdigo con menos lneas Utiliza memoria de microprograma Se enfatiza la versatilidad del repertorio de instrucciones Reduce la dificultad de implementar compiladores
Tamao de instruccin fijo simplifica bsqueda y decodificacin Un grupo pequeo de instrucciones (20%) ocupa la mayor parte
del tiempo de ejecucin de un programa ( 80%)
Un conjunto de instrucciones simples puede implantar tambin instrucciones
complejas Caractersticas tpicas de procesadores RISC Bsqueda previa de instrucciones Segmentacin Operacin superescalar / paralelismo a nivel de instruccin
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.
CISC vrs RISC
CISC (M68000)
Add (A3)+, 100(A2) Sume el contenido de la localidad de memoria apuntada por A3 al componente de un arreglo que inicia en la localidad de memoria 100. El nmero de ndice del componente es A2. El contenido de A3 se incrementa automticamente en uno.
RISC (MIPS)
Lw $t0, 0($s3) Lw $t1, 100($s2) Add $t2, $t0, $t1 Sw $t2, 0($s3) Addi $s3, $s3,1 $t0 <- Mem[0+$s3] $t1 <- Mem[100+$s2] $t2 <- $t0 + $t1 Mem[0+$s3] <- $t2 $s3<- [$s3]+1
ITCR Diseo de Sistemas Digitales
Dr.-Ing. Paola Vega C.