Pular para o conteúdo

Hardware e sistemas operacionais · parte 17 de 27

Gerações e arquiteturas: CISC, RISC, x86-64, ARM, RISC-V e POWER

Como as CPUs diferem por arquitetura: CISC e RISC, VLIW e EPIC do Itanium, a evolução de 8 a 64 bits e os chips atuais de x86-64, ARM, RISC-V e POWER.

intermediárioPublicada em · 18 min de leitura

Tamanho da fonte:
Largura da coluna:
Tom:
Espaço entre linhas:
Fonte:

Gerações e arquiteturas: CISC, RISC, x86-64, ARM, RISC-V e POWER

Arquitetura de CPU é o contrato entre o programa e o chip. Ela define quais instruções existem, quantos registradores o programa pode usar, como a memória é endereçada e como o chip trata exceções. Duas CPUs podem ter o mesmo clock e o mesmo número de núcleos e ainda assim rodar programas de formas muito diferentes, porque o contrato é outro. Um compilador escrito para x86-64 não roda num chip ARM sem ser recompilado ou traduzido, e isso acontece porque a arquitetura é o idioma em que o programa fala com o chip.

Esta nota explica as escolhas que dividem as famílias de CPU. O ponto de partida é a diferença entre CISC e RISC, que organizou a discussão de arquitetura nos anos 1980. Depois vêm o VLIW e o EPIC do Itanium, a evolução de largura de bits e as arquiteturas que dominam o mercado hoje.

1. Arquitetura não é o mesmo que microarquitetura

Vale separar dois conceitos que se confundem. A arquitetura, ou ISA (conjunto de instruções), é o que o programador e o compilador enxergam: os nomes das instruções, os registradores e os modos de endereçamento. A microarquitetura é como o fabricante implementa essa ISA dentro do chip: quantos estágios de pipeline, quantas ULAs, qual previsão de desvios, qual tamanho de cache. Dois chips com a mesma ISA podem ter microarquiteturas muito diferentes. Um Intel e um AMD que rodam x86-64 executam o mesmo binário, mas por dentro são projetos distintos.

Essa separação explica por que a família x86 atravessou décadas. A ISA manteve compatibilidade, e a microarquitetura mudou a cada geração. Um programa escrito para o 8086 em 1978 ainda roda, em princípio, num chip atual, porque o contrato foi preservado.

2. CISC e RISC

CISC significa computador com conjunto complexo de instruções, em inglês Complex Instruction Set Computer. Nessas arquiteturas, uma instrução pode fazer muita coisa: ler um valor da memória, somar a um registrador e gravar o resultado de volta, tudo num único comando. O x86 é o exemplo mais conhecido. A vantagem é o código ser compacto e o programador precisar escrever menos instruções. A desvantagem é que cada instrução complexa precisa de hardware para decodificar e executar as partes, o que ocupa área e torna o pipeline mais difícil de encher.

RISC significa computador com conjunto reduzido de instruções, em inglês Reduced Instruction Set Computer. A ideia é que cada instrução faça uma coisa simples, e que a memória seja acessada só por instruções de carga e de gravação, separadas das contas. Um trecho que em CISC é uma instrução vira três em RISC: carregar, somar e gravar. O código fica maior, mas cada instrução é fácil de decodificar, de tamanho fixo ou quase fixo, e cabe bem num pipeline. Os primeiros chips RISC, como os da Berkeley e da Stanford nos anos 1980, mostraram que essa simplicidade podia ser mais rápida que a complexidade, desde que o compilador soubesse aproveitar o conjunto.

A figura abaixo compara as duas formas de fazer a mesma soma em memória. À esquerda, uma instrução CISC faz tudo, e a CPU quebra internamente em passos. À direita, três instruções RISC fazem o mesmo, cada uma simples.

Mesma soma em CISC, com uma instrução que lê, soma e grava na memória, e em RISC, com três instruções separadas de carga, soma e gravação
figura 1 · Mesma soma em CISC e RISC: uma instrução que faz tudo ou passos simples

Na prática, a distinção ficou menos nítida. As CPUs x86 modernas traduzem as instruções complexas em micro-operações simples, muito parecidas com o modelo RISC, e executam essas micro-operações no núcleo. Isso significa que o x86 de hoje carrega parte do custo de decodificação do CISC, mas trabalha com um núcleo interno RISC. Já ARM e RISC-V são RISC no sentido clássico, com conjunto simples e carga e gravação separadas. Esse é um dos motivos pelos quais a eficiência energética do ARM se tornou tão valiosa em celulares e, mais tarde, em notebooks.

3. VLIW e EPIC: o paralelismo decidido pelo compilador

VLIW, em inglês Very Long Instruction Word, é uma arquitetura em que cada instrução é longa e contém várias operações que podem rodar ao mesmo tempo. O compilador é quem decide quais operações cabem juntas, e a CPU só executa o pacote. A vantagem é que o hardware fica simples, porque não precisa descobrir o paralelismo sozinho. A desvantagem é que o compilador precisa ser muito bom e os programas precisam ter paralelismo previsível, algo que nem sempre existe, especialmente em código com muitos desvios.

O EPIC, de Explicitly Parallel Instruction Computing, é a evolução desse modelo que a HP e a Intel desenvolveram para a arquitetura IA-64. A Wikipedia registra que o Itanium foi lançado em junho de 2001, como família de processadores de 64 bits voltada inicialmente para servidores corporativos. Ele agrupava instruções em pacotes, chamados bundles, com bits de modelo que indicavam quais instruções eram independentes e podiam rodar em paralelo. O projeto foi caro e a compatibilidade com o x86 que dominava o mercado era fraca, o que limitou a adoção. A Intel anunciou em 2019 o fim das novas encomendas e as últimas entregas foram feitas em julho de 2021, segundo a mesma página. Ele é um exemplo claro de uma arquitetura tecnicamente interessante que perdeu para o ecossistema existente.

4. Largura de bits: 8, 16, 32 e 64

A largura de bits de uma CPU mede o tamanho típico de um dado que ela manipula de uma vez, e também costuma definir o tamanho dos registradores e o espaço de endereços. Um endereço de 32 bits consegue apontar para cerca de 4 bilhões de posições, o que dá 4 GB. Um endereço de 64 bits aponta para uma quantidade muito maior, suficiente para qualquer memória física atual. A transição de 32 para 64 bits foi a mais importante das últimas duas décadas em uso de memória.

Os primeiros microprocessadores de 4 e 8 bits, como o 4004 e o Z80, já estão na nota de história. A passagem para 16 bits com o 8086 e para 32 bits com o 386 abriu caminho para sistemas operacionais com multitarefa e proteção de memória. Já o 64 bits chegou aos PCs pela extensão AMD64, que a AMD apresentou para o x86 e que virou o x86-64 usado hoje. Além da velocidade, a largura de bits limita o tamanho dos números que cabem numa operação e o tamanho da memória que o programa pode usar sem artifícios.

5. As famílias atuais

Hoje, quatro famílias dominam o mercado e a pesquisa de arquitetura. Cada uma tem uma história e uma forma de competir.

O x86-64 é a arquitetura de quase todos os PCs de mesa, notebooks de muitos fabricantes e servidores tradicionais. Intel e AMD fabricam chips que implementam essa mesma ISA com microarquiteturas diferentes. A AMD usa a linha Ryzen, com a microarquitetura Zen. O Ryzen 9000, com núcleos Zen 5 em processo de 4 nanômetros da TSMC, tem clock de boost de até 5,7 GHz no modelo topo de linha, segundo a Wikipedia. A Intel lançou em janeiro de 2026 a família Panther Lake, vendida como Core Ultra Series 3, no processo 18A, com modelos de até 16 núcleos entre P, E e de baixo consumo, segundo o TechSpot.

O ARM é uma arquitetura licenciada, o que significa que a empresa dona da ISA cobra para que outros fabricantes a implementem. Esse modelo permitiu que a Apple, a Qualcomm, a Samsung e outros projetassem os próprios núcleos sobre a mesma base. A Apple usa ARM no M1 e nos chips seguintes, como o M5 que a nota de história cita, com núcleos de desempenho e de eficiência. A Qualcomm lançou o Snapdragon X2 Elite Extreme com até 18 núcleos Oryon, em processo de 3 nanômetros, segundo a imprensa de tecnologia que cobriu o anúncio. Os 18 núcleos formam três grupos de seis, dois de núcleos prime e um de desempenho, e a Qualcomm usa esses nomes, não o de eficiência. A ARM também vende projetos de núcleo prontos, a família Cortex, que muitos fabricantes usam como base para os próprios chips de celular e de embarcados. O ARM está na maior parte dos celulares e aparece em servidores de nuvem, em que fabricantes como a Amazon projetam os próprios chips.

O RISC-V é uma ISA aberta, criada na Universidade da Califórnia em Berkeley a partir de 2010. A Wikipedia registra que a especificação foi publicada como código aberto em 2011, e que a parte de usuário, depois renomeada como ISA não privilegiada, foi ratificada na versão 20191213. A organização que mantém o padrão, a RISC-V International, é uma associação sem fins lucrativos sediada na Suíça. Como a especificação é livre e sem royalties, o RISC-V é atraente para microcontroladores, aceleradores e projetos acadêmicos, e cresce em data centers e em dispositivos embarcados. Ele tem variantes de 32, 64 e 128 bits, e a de 128 bits ainda não está congelada.

No mercado de servidores x86, a AMD com a linha EPYC e a Intel com a linha Xeon disputam o espaço que antes era quase só da Intel. O POWER é a família da IBM, que implementa a arquitetura Power ISA e é usada em servidores de grande porte. A IBM anunciou o Power11 em 8 de julho de 2025, com disponibilidade geral em 25 de julho do mesmo ano, fabricado pela Samsung em um processo de 7 nanômetros aprimorado, com empacotamento 2.5D. Cada die tem 16 núcleos, segundo a cobertura do lançamento, e os sistemas de maior porte chegam a 120 núcleos. Uma cifra de 256 núcleos, que circulou antes, não foi confirmada nesta revisão, e por isso fica de fora.

A figura abaixo mostra como essas organizações se distribuem dentro de um pacote moderno. A nota de pipeline já tratou dos chiplets em geral, e a figura aqui mostra a versão de um chip de desktop da AMD, com dois blocos de núcleos e um die de entrada e saída.

Pacote com dois chiplets de núcleos Zen 5 em 4 nm e um die de entrada e saída em 6 nm, ligados por Infinity Fabric e conectados à memória DDR5
figura 2 · Chiplets: dois blocos de núcleos e um die de E/S no mesmo pacote

A figura indica 6 nm para o die de entrada e saída. Na revisão de 1 de novembro de 2026, a página da Wikipedia consultada trouxe o processo de 4 nm para a série inteira e não separou o die de E/S, então o valor de 6 nm não foi confirmado. A figura de anatomia da seção de estudos de caso mostra a mesma organização sem afirmar esse número.

6. Estudos de caso reais

As arquiteturas acima ficam abstratas sem um chip concreto. Esta seção olha para cinco núcleos reais, um de cada família, com uma figura de anatomia para cada um. Os números vêm de fontes citadas, e onde a fonte diverge ou não foi conferida, o texto diz isso.

Intel: P-core Lion Cove e E-core Skymont

A Intel monta os chips Arrow Lake com dois tipos de núcleo. O P-core Lion Cove decodifica até 8 instruções por ciclo, contra 6 do Redwood Cove anterior, segundo a Wikipedia. Ele tem 48 KB de L1 de dados com 4 ciclos de latência, uma cache intermediária de 192 KB com 9 ciclos, e 3 MB de L2 por núcleo com 17 ciclos, segundo a Chips and Cheese. O E-core Skymont é menor, e um cluster reúne quatro núcleos sobre uma L2 compartilhada de 4 MB. A decodificação de 9 instruções do Skymont aparece em relatos anteriores ao lançamento, e não consegui confirmá-la em documento da Intel, então o número fica como não confirmado. A L3 é compartilhada entre os dois tipos, e o tamanho varia de modelo para modelo.

A divisão entre P e E existe porque as duas tarefas pedem coisas diferentes. Um P-core gasta área e energia para terminar uma tarefa rápido, e um E-core gasta menos para terminar muitas tarefas leves. O sistema operacional decide em qual núcleo cada thread roda.

Die de computação com um P-core Lion Cove, um cluster E Skymont de quatro núcleos, e a L3 compartilhada, com as caches de cada núcleo
figura 3 · Anatomia de um P-core Lion Cove e de um cluster E Skymont em um die de computaçã

AMD: Zen 5 com CCD e die de E/S

O Ryzen 9950X é montado com dois chiplets de computação, os CCDs, com oito núcleos Zen 5 cada um, e um die de entrada e saída que cuida da memória e das conexões externas. Segundo a AMD, em material do Hot Chips 2024, cada núcleo tem L1 de dados de 48 KB com 12 vias e L2 de 1 MB com 16 vias, um buffer de reordenação de 448 entradas, e um front-end com decodificação de duas vias de 4 instruções e um cache de micro-operações de 6 mil entradas. A Chips and Cheese mediu que desligar esse cache derruba cerca de 20% o desempenho na suíte inteira, o que mostra que ele alimenta a maior parte do núcleo. A L3 é de 32 MB por CCD, e os 64 MB do chip inteiro resultam de dois CCDs. Os clocks de base e de boost são 4,3 GHz e 5,7 GHz, segundo fichas de varejo e a análise da Tom’s Hardware. A página da AMD não abriu nesta revisão, e uma fonte isolada dá 4,4 GHz de base, então o valor de 4,3 GHz é o mais confirmado. O processo de 4 nm aparece para a série na Wikipedia. O processo do die de E/S, que a figura 13 indica como 6 nm, não foi confirmado nesta revisão.

Pacote do Ryzen 9950X com dois CCDs de oito núcleos Zen 5, cada um com L3 de 32 MB, ligados por Infinity Fabric a um die de E/S com memória DDR5
figura 4 · Anatomia do Ryzen 9950X: dois CCDs com oito núcleos Zen 5 e um die de E/S

Apple M1 Max: clusters P e E com memória unificada

O sysctl deste Mac mostra 8 núcleos de desempenho e 2 de eficiência, cache L2 de 12 MB para o cluster P e de 4 MB para o cluster E, e linhas de 128 bytes. A cache de sistema, que faz o papel de uma L3 compartilhada, aparece com 8 MB na Wikipedia, mas uma fonte isolada dá 16 MB, então esse número fica divergente. A memória é unificada: CPU, GPU e Neural Engine usam o mesmo pool, e este Mac tem 32 GB. A figura separa os núcleos P em dois clusters de quatro, que é a organização usual desse chip. Não consultei a documentação da Apple nesta revisão, então essa divisão está marcada como não conferida.

SoC do Apple M1 Max com dois clusters P de quatro núcleos, um cluster E de dois, cache e memória unificada compartilhada com GPU e Neural Engine.
figura 5 · Anatomia de um Apple M1 Max: clusters P e E, caches e memória unificada

Arm Cortex-X925: decodificação de 10 instruções

O Cortex-X925 é um núcleo que a Arm licencia para fabricantes de celulares e de outros dispositivos. Segundo a Chips and Cheese e resumos de especificação, ele decodifica e despacha 10 instruções por ciclo, com L1 de instruções e de dados de 64 KB cada. A L2 é escolhida pelo fabricante entre 2 MB e 3 MB, e a L3 do cluster também é definida por quem monta o chip. Não consegui consultar o manual técnico oficial da Arm, então esses números são de fonte secundária.

Núcleo Arm Cortex-X925 com decodificação de 10 instruções por ciclo, L1 de instruções e de dados de 64 KB cada e L2 de 2 ou 3 MB
figura 6 · Anatomia de um núcleo Arm Cortex-X925 com decodificação de 10 instruções

SiFive P550: RISC-V de três vias

O RISC-V é uma ISA aberta, e o P550 da SiFive é um núcleo de desempenho de três vias com execução fora de ordem e pipeline de 13 estágios, segundo a Chips and Cheese e o anúncio da SiFive. A figura mostra o caminho em fila, da busca à retirada. Ela não atribui cada um dos 13 estágios a um bloco, porque a fonte consultada não traz essa correspondência.

Núcleo SiFive P550 de três vias: busca e decodificação em ordem, depois renomeação, fila de emissão e execução fora de ordem até a retirada
figura 7 · Anatomia de um núcleo SiFive P550 RISC-V de três vias, com execução fora de orde

Uma comparação com o elemento de CPU

A figura abaixo usa o elemento de CPU do ArchFlow, que desenha um chip esquemático com grade de núcleos, para três processadores de 2024 e 2025. Ele não desenha as regiões internas de cada chip, por isso as figuras anteriores fazem esse papel. Os números são os declarados por cada fabricante e pela imprensa: o Ryzen 9 9950X tem 16 núcleos, 32 threads, até 5,7 GHz e 64 MB de L3; o Snapdragon X2 Elite Extreme tem 18 núcleos, até 5,0 GHz, em três grupos de seis, dois de núcleos prime e um de desempenho, segundo a Tom’s Hardware; o Apple M1 tem 8 núcleos, 8 threads e 3,2 GHz. A carga é o pulso visual de 70% em todos, e não mede nada.

Três processadores reais desenhados com o elemento cpu: Ryzen 9 9950X, Snapdragon X2 Elite Extreme e Apple M1, com núcleos, threads e clock
figura 8 · Três processadores reais de 2024 e 2025 com núcleos e frequência declarados

7. Uma tabela de comparação

A tabela resume as famílias. Ela serve para comparar, e não substitui a leitura das seções, que explicam cada escolha.

FamíliaTipo de ISAOnde apareceQuem fabricaObservação
x86-64CISC com núcleo interno RISCPCs de mesa, notebooks, servidoresIntel e AMDCompatibilidade com décadas de software
ARMRISC, licenciadoCelulares, notebooks, nuvemApple, Qualcomm, Samsung, Amazon e outrosEficiência energética como foco
RISC-VRISC, abertoEmbarcados, aceleradores, pesquisaMuitos fabricantes e instituiçõesISA livre, sem royalties
POWERRISC (Power ISA)Servidores de grande porteIBM, com fabricação pela Samsung no Power11Confiabilidade e memória em grande escala
IA-64 (Itanium)EPIC, derivado de VLIWServidores, até 2021Intel e HPParalelismo decidido pelo compilador

8. Erros comuns

O primeiro erro é achar que a família define a velocidade. Um chip ARM não é automaticamente mais rápido ou mais lento que um x86. O que pesa é a microarquitetura, o processo de fabricação e o software. Compare chips do mesmo tipo de tarefa.

O segundo erro é tratar RISC e CISC como uma batalha ganha por uma delas. As fronteiras ficaram borradas, e o que importa hoje é a implementação. O terceiro é confundir compatibilidade de programa com compatibilidade de sistema. Um programa para x86 pode precisar de recompilação ou de emulação para rodar em ARM, e isso não tem relação com a velocidade do chip.

Exercícios

  1. Escolha um programa que você usa e descubra se existe versão nativa para ARM e para x86-64. Explique por que a recompilação resolve o problema de compatibilidade de instrução, mas não garante a mesma velocidade.
  2. Explique, em uma frase, por que o EPIC do Itanium depende tanto do compilador, e por que isso é um problema para código com muitos desvios.
  3. Compare as duas figuras de CISC e RISC e diga qual delas tem mais instruções, e qual tem mais operações por instrução. Diga o efeito disso no pipeline.

Fontes

Consultadas em 1 de novembro de 2026.

Relacionados

  • CPU
  • História das CPUs
  • Como a CPU executa instruções
  • Pipeline, cache e paralelismo
  • Limites e segurança

↑ Voltar ao topo

Atalhos de teclado

Abrir busca
/
Alternar tema claro/escuro
t
Aula anterior na série
←
Próxima aula na série
→
Lista de atalhos
?