ScholarGate
Asistente

RISC y CISC

RISC y CISC nombran dos filosofías contrastantes de conjuntos de instrucciones: las computadoras de conjunto de instrucciones reducido (RISC) favorecen pequeños conjuntos de instrucciones simples, uniformes y de registro a registro, mientras que las computadoras de conjunto de instrucciones complejo (CISC) ofrecen muchas instrucciones potentes y de longitud variable que realizan más operaciones por instrucción.

Encontrar tema con PaperMindPróximamenteFind papers & topics
Tools & resources
Descargar diapositivas
Learn & explore
VídeoPróximamente

Definition

RISC (computadora de conjunto de instrucciones reducido) es una filosofía de diseño que enfatiza un pequeño conjunto de instrucciones simples y de formato fijo ejecutadas en un modelo de carga-almacenamiento; CISC (computadora de conjunto de instrucciones complejo) enfatiza un conjunto más grande de instrucciones más potentes, a menudo de longitud variable, incluyendo operaciones de memoria a memoria.

Scope

Este tema cubre las dos filosofías de diseño y sus compensaciones: la simplicidad y regularidad de las instrucciones frente a la riqueza y la densidad del código, la disciplina de carga-almacenamiento de RISC, las ventajas de las instrucciones simples en el pipelining (segmentación), y cómo las implementaciones modernas de CISC de alto rendimiento traducen internamente las instrucciones complejas en microoperaciones tipo RISC. Excluye las codificaciones a nivel de bit (formatos y codificación de instrucciones) y los detalles de implementación del pipeline (segmentación y riesgos).

Core questions

  • ¿Qué objetivos de diseño motivan la reducción de un conjunto de instrucciones a operaciones simples y uniformes?
  • ¿Cómo distingue la disciplina de carga-almacenamiento a RISC de CISC?
  • ¿Por qué las instrucciones simples y regulares se segmentan (pipeline) más fácilmente?
  • ¿Cómo concilian los procesadores x86 modernos un conjunto de instrucciones CISC con una ejecución interna tipo RISC?

Key concepts

  • conjunto de instrucciones reducido
  • conjunto de instrucciones complejo
  • arquitectura de carga-almacenamiento
  • instrucciones de longitud fija frente a variable
  • microoperaciones
  • codiseño compilador-hardware
  • densidad de código

Key theories

El argumento RISC
Patterson y Ditzel argumentaron que un pequeño conjunto de instrucciones simples, ejecutadas rápidamente y segmentadas eficientemente con un buen soporte del compilador, puede superar a los conjuntos de instrucciones complejos cuyas instrucciones elaboradas rara vez se utilizan y son difíciles de implementar rápidamente.

Mechanisms

Los diseños RISC mantienen las instrucciones simples, de longitud fija y de registro a registro, con instrucciones separadas de carga y almacenamiento para la memoria; esta regularidad facilita la decodificación y el pipelining. Los diseños CISC proporcionan instrucciones complejas y de longitud variable que pueden acceder directamente a la memoria y realizar operaciones de varios pasos. Las implementaciones modernas de CISC decodifican instrucciones complejas en secuencias de microoperaciones internas más simples que luego son ejecutadas por un núcleo tipo RISC.

Clinical relevance

La distinción RISC/CISC moldeó las plataformas informáticas dominantes: ARM y RISC-V encarnan los principios RISC y lideran en los mercados móviles, embebidos y, cada vez más, de servidores y computadoras portátiles, mientras que x86 (una ISA CISC con componentes internos tipo RISC) dominó durante mucho tiempo las PC y los servidores. El debate informa las decisiones actuales sobre eficiencia energética, rendimiento y ecosistemas de software.

History

El concepto RISC surgió de la investigación del IBM 801 y de los proyectos Berkeley RISC y Stanford MIPS de principios de la década de 1980, articulado en el artículo de Patterson y Ditzel de 1980. Las ideas RISC se difundieron a través de diseños comerciales como SPARC, MIPS, PowerPC y ARM. Mientras tanto, x86 sobrevivió adoptando microoperaciones internas tipo RISC, y la ISA abierta RISC-V renovó el impulso para un diseño RISC limpio.

Debates

¿Sigue siendo relevante la distinción entre RISC y CISC?
Debido a que los chips CISC modernos se ejecutan internamente como microoperaciones tipo RISC y ambos campos comparten la segmentación y el almacenamiento en caché, algunos argumentan que la distinción original se ha disuelto; otros sostienen que la regularidad del conjunto de instrucciones aún afecta la eficiencia de decodificación, el consumo de energía y la verificación.

Key figures

  • David A. Patterson
  • David R. Ditzel
  • John L. Hennessy
  • John Cocke

Related topics

Seminal works

  • patterson1980risc
  • hennessy2019
  • patterson2020

Frequently asked questions

¿Es RISC siempre más rápido que CISC?
No inherentemente. La simplicidad de RISC facilita la segmentación y las altas velocidades de reloj, pero una instrucción CISC puede realizar más trabajo por instrucción. En la práctica, los procesadores CISC de alto rendimiento traducen las instrucciones en operaciones tipo RISC, por lo que el rendimiento real depende de toda la microarquitectura, no solo de la etiqueta ISA.
¿Por qué ARM y RISC-V se denominan arquitecturas RISC?
Ambas utilizan pequeños conjuntos de instrucciones simples, en su mayoría de longitud fija, con un modelo de memoria de carga-almacenamiento y pocos modos de direccionamiento —los rasgos definitorios de la filosofía RISC— lo que las hace eficientes de implementar y adecuadas para diseños con restricciones energéticas y de alto rendimiento.

Methods for this concept

Related concepts