College Online
0%

Do Transistor ao Computador — Visao Integrada

Modulo 3 · Aula 3 ~25 min de leitura Nivel: Intermediario

Video da aula estara disponivel em breve

O Transistor MOSFET

Tudo comeca com o MOSFET (Metal-Oxide-Semiconductor Field-Effect Transistor) — o componente fundamental de toda eletrônica digital moderna. Um MOSFET funciona como uma chave controlada por tensao: uma tensao aplicada ao terminal gate controla se corrente pode fluir entre source e drain.

Diagrama — MOSFET NMOS e PMOS
  NMOS (N-channel):                 PMOS (P-channel):
       D (drain)                         D (drain)
       |                                  |
       |                                  |
  G ──|│                            G ──|│  (circulo = inversao)
       |                                  |
       |                                  |
       S (source)                        S (source)

  NMOS: conduz quando Gate = HIGH (1)    PMOS: conduz quando Gate = LOW (0)
        nao conduz quando Gate = LOW (0)       nao conduz quando Gate = HIGH (1)

  Complementar MOS (CMOS):
  Combinando NMOS e PMOS, criamos portas logicas
  que consomem energia apenas durante transicoes.

Do Transistor a Porta Logica

Combinando transistores NMOS e PMOS em configuracao CMOS (Complementary MOS), construimos portas logicas. A ideia central: a rede PMOS (conectada a VDD) puxa a saida para 1; a rede NMOS (conectada a GND) puxa para 0. As redes sao complementares — quando uma conduz, a outra nao.

Diagrama — Inversor e NAND CMOS
  Inversor (NOT):          NAND de 2 entradas:

      VDD                      VDD        VDD
       |                        |          |
      [P1]  ← PMOS             [P1]      [P2]   PMOS em paralelo
       |                        |          |      (qualquer um conduz → saida=1)
  A ──┤                    A ──┤    B ──┤
       |                        └────┬─────┘
       ├── Y (saida)                 |
       |                             ├── Y (saida)
  A ──┤                              |
       |                        A ──┤
      [N1]  ← NMOS             [N1]         NMOS em serie
       |                        |            (ambos devem conduzir → saida=0)
      GND                  B ──┤
                               [N2]
                                |
                               GND

  Inversor: Y = NOT A           NAND: Y = NOT(A AND B)

  A partir de NAND, podemos construir QUALQUER funcao logica
  (NAND e funcionalmente completa).
i
Por que CMOS domina? Circuitos CMOS consomem energia significativa apenas durante transicoes (quando o capacitor de saida carrega ou descarrega). Em estado estavel, nao ha caminho direto de VDD a GND (um dos transistores esta sempre cortado). Isso resulta em consumo estatico extremamente baixo — a razao pela qual bilhoes de transistores cabem em um chip moderno sem derreter.

Da Porta Logica a Blocos Funcionais

Portas logicas sao compostas em blocos funcionais cada vez mais complexos:

Hierarquia de Construcao
  Nivel 0: Transistores (NMOS, PMOS)
      │
      v
  Nivel 1: Portas Logicas (NOT, AND, OR, NAND, NOR, XOR)
      │
      v
  Nivel 2: Blocos Combinacionais
      │    - Somador (half-adder → full-adder → ripple-carry → carry-lookahead)
      │    - Multiplexador (MUX)
      │    - Decodificador / Codificador
      │    - Comparador
      │
      v
  Nivel 3: Blocos Sequenciais
      │    - Flip-flop (latch → D-FF → registrador)
      │    - Contador
      │    - Shift register
      │    - Maquina de estados finita (FSM)
      │
      v
  Nivel 4: Unidades Funcionais
      │    - ALU (somador + logica + MUX de selecao)
      │    - Register File (array de flip-flops com decodificador)
      │    - Memoria (SRAM = flip-flops, DRAM = capacitores)
      │    - Unidade de Controle (FSM ou microcode)
      │
      v
  Nivel 5: Processador
      │    - Datapath (ALU + Register File + PC + MUX)
      │    - Controle (gera sinais para o datapath)
      │    - Cache (SRAM + logica de tag/hit)
      │
      v
  Nivel 6: Sistema Computacional
           - CPU + Memoria + I/O + Barramento
           - Sistema Operacional
           - Software de aplicacao

Construindo uma ALU

A ALU (Arithmetic Logic Unit) e o "coracao computacional" do processador. Uma ALU de 1 bit simples combina um somador completo (full adder) com portas logicas, selecionadas por um MUX:

Diagrama — ALU de 1 bit
                    A(i)  B(i)
                     │     │
            ┌────────┤     ├────────┐
            │        │     │        │
        ┌───┴───┐┌───┴─────┴───┐┌───┴───┐
        │  AND  ││  Full Adder ││  OR   │
        └───┬───┘│             │└───┬───┘
            │    │  Cin ──────>│    │
            │    └──────┬──────┘    │
            │      Sum  │  Cout     │
            │           │           │
            v           v           v
        ┌───────────────────────────────┐
        │         MUX 4:1               │
        │    ALU_op (2 bits) seleciona  │
        └──────────────┬────────────────┘
                       │
                    Resultado(i)

  ALU_op = 00: AND
  ALU_op = 01: OR
  ALU_op = 10: ADD
  ALU_op = 11: SUB (usando complemento de 2)

  ALU de 32 bits: 32 copias deste bloco, encadeadas via carry

Camadas de Abstracao

O poder da engenharia de computadores reside nas camadas de abstracao. Cada camada esconde a complexidade da camada inferior e oferece uma interface simplificada para a camada superior:

Diagrama — Pilha de Abstracao Completa
  ┌─────────────────────────────────────────────┐
  │  7. Aplicacao                                │  Python, browser, jogos
  ├─────────────────────────────────────────────┤
  │  6. Sistema Operacional                      │  Linux, Windows
  ├─────────────────────────────────────────────┤
  │  5. ISA (Instruction Set Architecture)       │  x86, ARM, RISC-V
  ├─────────────────────────────────────────────┤
  │  4. Microarquitetura                         │  Pipeline, cache, branch pred.
  ├─────────────────────────────────────────────┤
  │  3. Logica Digital (RTL)                     │  ALU, registradores, FSM
  ├─────────────────────────────────────────────┤
  │  2. Portas Logicas                           │  AND, OR, NOT, NAND
  ├─────────────────────────────────────────────┤
  │  1. Transistores                             │  NMOS, PMOS, CMOS
  ├─────────────────────────────────────────────┤
  │  0. Fisica                                   │  Eletrons, silicio, dopagem
  └─────────────────────────────────────────────┘

  Cada camada:
  - Esconde detalhes da camada inferior
  - Expoe uma interface bem definida para a camada superior
  - Pode ser modificada internamente sem afetar as camadas acima
    (desde que a interface seja mantida)

Essa organizacao em camadas e o que permite que um programador Python escreva x = a + b sem saber que, no fundo, bilhões de transistores MOSFET estão trocando de estado em nanosegundos.

Lei de Moore e Alem

Em 1965, Gordon Moore observou que o numero de transistores em um chip dobrava aproximadamente a cada dois anos. Essa Lei de Moore guiou a industria por mais de 50 anos:

Evolucao
  Ano    Processador        Transistores      Processo
  ──────────────────────────────────────────────────────
  1971   Intel 4004         2.300             10 um
  1978   Intel 8086         29.000            3 um
  1993   Pentium            3.100.000         0.8 um
  2006   Core 2 Duo         291.000.000       65 nm
  2015   Skylake            1.750.000.000     14 nm
  2020   Apple M1           16.000.000.000    5 nm
  2023   Apple M3 Max       92.000.000.000    3 nm

  Desafios atuais (pos-Moore):
  - Limites fisicos: 3 nm ~ 15 atomos de silicio
  - Efeitos quânticos: tunelamento de eletrons
  - Consumo de energia: mais transistores = mais calor
  - Custo de fabricacao: fab de 3 nm custa $20+ bilhões

  Alternativas:
  - Chiplets (multiplos dies em um pacote)
  - 3D stacking (transistores empilhados verticalmente)
  - Novos materiais (grafeno, nanotubos de carbono)
  - Computacao quântica (outra paradigma inteiramente)
*
O que "nm" realmente significa O numero de "nanometros" no nome do processo (7 nm, 5 nm, 3 nm) nao corresponde mais a nenhuma medida fisica real do transistor — e um nome comercial. O que importa e a densidade de transistores e o desempenho por watt. Dois processos de "5 nm" de fabricantes diferentes podem ter densidades muito distintas.

Fluxo Moderno de Projeto de Chips

O projeto de um chip moderno (ASIC) segue um fluxo estruturado:

Fluxo de Projeto
  1. Especificacao
     └── Requisitos funcionais e de desempenho

  2. Design RTL (Register Transfer Level)
     └── Descricao em VHDL/Verilog/SystemVerilog
     └── Simulacao funcional (ModelSim, VCS)

  3. Sintese Logica
     └── RTL → netlist de portas (Design Compiler)
     └── Otimizacao de area, timing, potencia

  4. Verificacao Formal
     └── Prova matematica de corretude
     └── Equivalência checking (RTL vs. netlist)

  5. Place and Route (P&R)
     └── Posicionar celulas no die
     └── Rotear fios entre elas
     └── Timing closure (todos os caminhos atendem ao clock)

  6. Sign-off
     └── DRC (Design Rule Check) — regras da foundry
     └── LVS (Layout vs. Schematic) — consistência
     └── Analise de timing, potência, signal integrity

  7. Fabricacao (Foundry)
     └── TSMC, Samsung, Intel, GlobalFoundries
     └── Litografia (EUV para 7 nm e menores)
     └── 50-100 etapas de processo, 2-3 meses

  8. Teste e Packaging
     └── Teste de cada die no wafer
     └── Packaging (encapsulamento)
     └── Teste final

  Custo total: $50M-$500M+ para um chip de ponta

Conectando Tudo: Visao Integrada

Ao longo deste curso, percorremos todas as camadas da pilha digital:

A mensagem central: cada camada de abstracao e construida sobre a anterior, mas pode ser entendida independentemente. Voce nao precisa pensar em tunelamento quântico para escrever Python, mas entender as camadas ajuda a tomar decisoes arquiteturais melhores — saber por que cache importa, por que alocacao de memoria tem custo, e por que paralelismo e fundamental.

No harness.os

A visao integrada do transistor ao computador e a metafora definitiva para o harness.os:

Exercicios

  1. Desenhe o circuito CMOS de uma porta NOR de 2 entradas. Quantos transistores sao necessarios? Verifique a tabela verdade.
  2. Usando portas NAND de 2 entradas como unico componente, construa: (a) um inversor, (b) uma porta AND, (c) uma porta OR. Desenhe os diagramas.
  3. Um processador moderno tem 10 bilhões de transistores e opera a 5 GHz. Cada transistor chaveando consome ~10 fJ por transicao. Se 10% dos transistores chaveiam a cada ciclo, qual e a potência dinamica dissipada?
  4. Trace o caminho completo de uma instrucao ADD R1, R2, R3 desde os transistores ate o resultado em R1. Identifique cada camada de abstracao envolvida.
  5. Compare a pilha de abstracao de hardware (transistor → porta → ALU → CPU) com a pilha de abstracao de software (bit → variavel → funcao → modulo → aplicacao). Que principios sao comuns a ambas?

Resumo

Verifique seu entendimento

Qual e a principal vantagem da tecnologia CMOS sobre alternativas como logica NMOS pura?

  • CMOS e mais rapida porque usa dois tipos de transistor
  • CMOS usa menos transistores por porta logica
  • CMOS consome energia significativa apenas durante transicoes, resultando em consumo estatico muito baixo
  • CMOS funciona com tensoes mais altas, permitindo maior margem de ruido