RISC e CISC
CISC e RISC são paradigmas de projeto de CPU e, por extensão, de todo o computador.
CISC: Complex Instruction-Set Computer
FOCO NO SOFTWARE.
É o paradigma inicial.
Objetivo de facilitar a tarefa do desenvolvedor de compiladores ao oferecer suporte para linguagens de alto nível cada vez mais complexas.
Uma vantagem, os programas tendem a ocupar menos espaço em memória.
Com a evolução das linguagens de alto nível, os processadores foram incorporando cada vez mais recursos e tornando-se cada vez mais complexos:
Muitos modos de endereçamento;
Muitos formatos de instrução e instruções com mais endereços;
Em geral usa mais a memória para armazenamento de dados;
Uso de microprogramação (microcódigos).
Uso de microcódigos na implementação da unidade de controle para melhor aproveitamento da pipeline.
RISC: Reduced Instruction-Set Computer
FOCO NO HARDWARE.
Início da década de 1980.
Objetivo de criar um hardware mais otimizado.
Iniciativas independentes que acabaram assumindo características comuns.
Grande número de registradores de propósito geral e/ou uso de um compilador que otimize o uso de registradores.
Enfoque na otimização do uso da pipeline de instruções.
Arquitetura Harvard.
Conjunto de instruções simples, limitado e de formato fixo:
Instruções com tempo de execução fixo (ao menos as que não envolvem desvio);
Operações de registador para registrador;
Modos de endereçamento simples (via registrador, indireto via registrador);
Formatos de instrução simples e de tamanho fixo (normalmente de 1 endereço).
Exemplos de arquiteturas puras (Stallings)
* A tabela original no livro do Stallings aponta um único modo de endereçamento para o SPARC e para o MIPS. Isto se deve a algumas particularidades da implementação das arquiteturas. A quantidade apontada seriam os modos de endereçamento "equivalentes" obtidos.
** Os processadores MIPS foram usados em workstations da Silicon Graphics, mas não encontrei informações precisas sobre esse modelo específico.
RISC e CISC na atualidade
As arquiteturas atuais não são mais arquiteturas puramente RISC ou CISC. O que temos são basicamente arquiteturas RISC e CISC superescalares (veja Despacho Múltiplo), o que implica em dizer que há algum grau de hibridismo entre elas.
CISC
IBM z/Architecture (Mainframes IBM da linha Z)
x86 - 64 bits (Intel e AMD)
A arquitetura mais usada em computadores pessoais, servidores, computadores de alto desempenho e consoles de vídeo game.
RISC
ARM - Advanced RISC Machine
A arquitetura mais usada em sistemas embarcados e em dispositivos portáteis como smartphones e tablets. A arquitetura evoluiu e equipa uma variedade de gadgets, eletrônicos de consumo, servidores e, finalmente, os mais poderosos supercomputadores.
IBM POWER / OpenPOWER (servidores e supercomputadores)
RISC-V
Uma arquitetura open hardware que tem ganhado mercado rapidamente
SPARC (Oracle, após aquisição da Sun)
Uma arquitetura que está caindo em desuso.
Uma curiosidade final, com tantas adições à ISA IA-32 / Intel 64 (x86), em 2006, os microprocessadores Intel Core 2 Duo e Xeon já contavam com 554 instruções de máquina. E o número continua aumentando! Já vieram SSE4, AES, AVX, etc.
Referências:
STALLINGS, William. Arquitetura e Organização de Computadores. 8ª edição. Pearson Education. São Paulo, 2010.
PATTERSON, David A.; HENNESSY, John L. Organização e Projeto de Computadores – A Interface Hardware/Software - 4ª edição. Editora Elsevier. Rio de Janeiro, 2014.
HENNESSY, John L.;PATTERSON, David A. Computer Architecture - A Quantitative Approach, 5th Edition. Morgan Kaufmann. 2011.
RAMANATHAN, R.M. at al. Extending the Worlds Most Popular Processor Architecture: New innovations that improve the performance and energy efficiency of Intel® architecture. 2006.
Conteúdos Relacionados:
Despacho Múltiplo, Pipeline e Princípio de Funcionamento de um Microprocessador.
Retornar para Arquitetura de Computadores.