>> Tecnologia Eletrônica >  >> Casa Inteligente >> Aspirador de pó

Como Funciona um Microprocessador: O Ciclo Fetch-Decode-Execute

O Batimento Cardíaco de Toda CPU

Um microprocessador executa programas repetindo um loop fundamental — o Ciclo de Instrução — biliões de vezes por segundo.

O Ciclo 5 Estágios (RISC Clássico / Simplificado)

  1. Fetch (Buscar)
    • PC (Program Counter) guarda endereço próxima instrução.
    • Endereço colocado no bus endereços; memória devolve palavra instrução.
    • Instrução carregada em IR (Instruction Register).
    • PC incrementado (ou atualizado por branch).
  2. Decode (Decodificar)
    • Unidade controlo interpreta bits IR → opcode + operandos.
    • Determina: operação ALU, acessos registos, acesso memória, branch?
    • Gera sinais controlo para datapath.
  3. Execute (Executar)
    • ALU executa aritmética/lógica (ADD, AND, SHIFT…).
    • Cálculo endereço load/store (base + offset).
    • Condição branch avaliada.
  4. Memory Access (Acesso Memória)
    • Load: ler dados memória → registo.
    • Store: escrever registo → memória.
    • Branch taken: PC atualizado para target.
  5. Writeback (Escrita Registo)
    • Resultado ALU ou dados lidos escrito registo destino.
    • Flags (Z, N, C, V) atualizadas.

Melhorias Modernas

  • Pipelining: Sobreposição estágios — 5+ instruções em voo simultaneamente.
  • Superscalar: Múltiplas unidades decode/execute — emite 2–8 instruções/ciclo.
  • Out-of-Order: Reordena instruções para evitar stalls (data hazards).
  • Execução Especulativa: Prevê branches; rollback se errado.
  • Caches (L1/L2/L3): Reduz latência memória (hit rates 95%+).
  • Memória Virtual: MMU traduz VA → PA; TLB cache traduções.

Interrupções e Exceções

Externas (IRQ), internas (divisão zero, page fault), software (syscall) — guarda PC/FLAGS, salta para handler, retorna via IRET/ERET.

Analogia

Fetch = ler passo receita. Decode = entender instrução. Execute = picar/cozinhar. Memory = buscar/guardar ingredientes. Writeback = pôr resultado na tigela. Repetir.

De 4.77 MHz 8088 a 5 GHz Core i9 — mesmo ciclo, paralelismo exponencialmente maior.