Escolar Documentos
Profissional Documentos
Cultura Documentos
de Computadores
“Fundamentos de Computação”
Ricardo Zelenovsky
zelen2005@yahoo.com.br
Aula 1 – Módulos 1 e 2.
Observação:
Há uma grande quantidade de
Aula 2 – Módulos 2, 3 e 4.
exercícios. Nem todos serão
vistos em sala. Dependerá da
Aula 3 – Módulos 5 e 6.
dinâmica das aulas.
Aula 4 – Módulos 7 e 8.
OAC - CPUs - Ricardo Zelenovsky Módulo 01-2
Organização e Arquitetura de Computadores
Bibliografia
3) Pipeline.
4) CISC x RISC.
Processador DVI
Dispositivos
USB
E/S
PS2
Memória
OAC - CPUs - Ricardo Zelenovsky Módulo 01-5
O Computador em 6 Níveis
5: Ling. orientada problemas
Tradução Compilador
4: Linguagem Assembly
Tradução Assembler (Montador)
3: Sistema Operacional
Interpretação Parcial Sistema Operacional
2: Arquitetura Conj. Instr.
Exec. Direta ou Interpret Microprograma
1: Microarquitetura
Hardware
PRE
CLR
• Conjunto de registradores;
• ALU;
• Caminho de Dados (data path);
• Microprograma (CISC)
• CISC AH
BH
AL
BL
AX
BX CS
IP
0000
• RISC BP
SI 6
Execução direta pelo HW. DI 5
4
Fila
ALU 3 de
2 6
Bytes
Reg Instr 1
EU BIU Módulo 01-8
OAC - CPUs - Ricardo Zelenovsky
Registradores 8088
Somador de Barramento Interno
Endereços de Endereços B. Endereços
Fila de Instr.
B. Dados
Reg. de Interf.
Segmentação Barr.
B. Controle
Controle
Reg.
Barramento
Principais
Interno
de Dados
ALU Flags
(B) de microarquitetura.
(B) A maioria das máquinas tem um único espaço de endereço linear que se
estende a partir do endereço 0.
UC
Re Unidade PC
gis de
Ende
tra Controle
reços Me
do MAR
res mó
MDR ria
Dados
ALU IR
CI
UC
Re Unidade PC REM
gis de
Ende
tra Controle
reços Me
do MAR
res mó
MDR ria
Dados
ALU IR
RDM
AH AL AX IP EU =
BH BL BX CS 0000 Execution
CH CL CX DS 0000 Unit
DH DL DX SS 0000
SP ES 0000 BUS 8086
BP
SI 6
DI 5
4
Fila
BIU =
ALU 3 de Bus
2 6
Bytes
Interface
Reg Instr 1
Unit
EU BIU
OAC - CPUs - Ricardo Zelenovsky Módulo 01-31
O que é Pipeline ?
B
Busca
X Estados de um D
Executa Processador Decodifica
O
Operando
Com Pipeline
OAC - CPUs - Ricardo Zelenovsky Módulo 01-35
5 Estados de um Processador CPU (Tanenbaum)
B
Busca
G D
Grava Decodifica
Estados de um
Processador
X O
Executa Operando
D O X G
B Decodifica Operandos Executa Grava
Busca D O X G
Decodifica Operandos Executa Grava
X
LOAD
Compilador é responsável por
arrumar instruções de forma a X
obter desempenho. P.F.
B D O X
Busca Decodifica Operandos Executa
(103) (102) (101) (100)
PB D O X
Pré-Busca Decodifica Operandos Executa
(502) (501) (500) (100)
endereço da instrução
1001010 011010010110
T NT
T
Predito Predito
Não Tomado Não Tomado
01 NT 00
(B) 147 ns
ns de latência
7 ns e 2 estágios.
1 Instr/7 ns
1 Instr/4 ns
(C) 204 ns
ns de latência
4 ns e 5 estágios.
4 ns 4 ns 4 ns
(D) 248 ns
ns de latência
8 ns e 3 estágios.
8 ns 1 Instr/8 ns
(E) 287 ns
ns de latência
7 ns e 4 estágios.
7 ns 7 ns 1 Instr/7 ns
OAC - CPUs - Ricardo Zelenovsky Módulo 01-50
*BE0 E12
*BE1 C13
H12 D0 *BE2 B13
80386
H13 D1 *BE3 A13
H14 D2 A2 C4
J14 D3 A3 A3
K14 D4 A4 B3
K13 D5 A5 B2
L14 D6 A6 C3
K12 D7 A7 C2
L13 D8 A8 C1
N14 D9 A9 D3
M12 D10 A10 D2
N13 D11 A11 D1
N12 D12 A12 E3
P13 D13 A13 E2
P12 D14 A14 E1
M11 D15 A15 F1
N11 D16 A16 G1
N10 D17 A17 H1
P11 D18 A18 H2
P10 D19 A19 H3
M9 D20 A20 J1
N9 D21 A21 K1
P9
N8
P7
D22
D23 80386 A22
A23
K2
L1
L2
D24 A24
80387
N6 D25 A25 K3
P5 D26 A26 M1
N5 D27 A27 N1
M6 D28 A28 L3
P4 D29 A29 M2
P3 D30 A30 P1
M5 D31 A31 N2
E14 *ADS W/*R B10
D13 *NA D/*C A11
C14 *BS16 M/*IO A12
G13 *READY *LOCK C10
D14 HOLD PEREQ C8
M14 HOLDA *BUSY B9
*ERROR A8
B7 INTR
B8 NMI
C9 RESET
F12 CLK2
80386 Segmentação
Somador de
3 Entradas
Paginação
Somador
Registradores Cache de
de Segmento Página
Unidade de
Interface com
PLA de Limites PLA de Controle
Barramento HOLD, HLDA
Unidade de e Atributos e Atributos NMI, BUSY
Execução Priorizador ETC.
de Pedidos
"Shifter" Unidade de
Somador Proteção/Teste Driver de A0-A31
Endereço
Decodificador
Multiplicador Controlador
Seqüencializador
Divisor Tamanho
Barramento
Banco de ROM de
Registradores Controle Mux e D0-D31
Transceivers
Pré-Busca
Decodificador
Verificação de
de
Limites
Instruções
Fila de Fila de
Instruções Códigos
Decodificadas (16 bytes)
Unidade de Unidade de
Decodificação Pré-Busca
de Instrução
Buffer
Pré-fetch
64
Via V Via U
32 32
Unidade
ALU ALU Matemática
64 Interface Inteiros Inteiros
64 bits Soma
Multiplicação
32 32
Divisão
Registradores
64 Gerais
32 32
64
Cache
de Dados
AMD - K6
• Ano de 1995
• Cache L1 = 16 KB
(I = 8 KB + D = 8KB)
• Ano de 1997
• Cache L1 = 16 KB
(I = 8 KB + D = 8KB)
• Cache L2 = 512 KB
Cache L2
Instruções/Dados
FSB BSB
Cache L1 Cache L1
Instruções Dados
Busca Carga
(fetch) (load) Armazenamento
(store)
Unidade de Unidade de Unidade de
Busca/Decodificação Despacho/Execução Retirada
Banco de Instruções
(ROB)
OAC - CPUs - Ricardo Zelenovsky Módulo 01-74
Intel – Pentium II – Arquitetura de 6ª Geração (P6)
Decodificador de Barramento
ROB
RAT Instruções x86 Cache L1:
Instruções
Unidade Buffer
Decodificador
Tabela 8 KB
Simples
de de
1 m -op
Unidade
Retirada Reodenação de Enfileirador p/ período
de Busca de
Decodificador Instruções
de
Apelidos Simples
Decodificador
14 40 1 m -op
Micro-ops de Tamanho
de p/ período
Registradores Registradores de Instruções
Decodificador
de Retirada Físicos Registradores Alinhador
Complexo
de Instruções
1 a 4 m -op
p/ período
• Ano de 1999
• Cache L2 = 512 KB
Processo = Programa
P1 P2
P1 P2 P1 P2 P1 P2 P1 P2 P1 P2
T1 T2 T3 T4 T5 T6 T7
T1 T2 T3 T4 T5 T6 T7
T1 T2 T3 T4 T5 T4 T6 T7
OAC - CPUs - Ricardo Zelenovsky Módulo 01-83
Thread = “Linha de execução”
• Num computador com 2 CPUs, o S.O. pode
despachar ao mesmo tempo 2 threads
do mesmo programa.
• A execução termina “mais cedo”.
• Há problemas com dependência de dados.
T2 T4 T6
CPU 1
T1 T3 T5 T7
CPU 2
Threads compartilham:
Espaço de endereçamento e tudo que está
associado a este espaço tais como descritores de
arquivo, variáveis ambientais e temporizadores..
CPU
Virtualization (VT)
OAC - CPUs - Ricardo Zelenovsky Módulo 01-94
Virtualization Techology (VT)
• Se a CPU tiver o recurso HT, ela aparecerá
como duas CPUs para cada S.O.
• Se já existem programas (VMware) para isso,
por que fazer virtualização na CPU ?
• Numa CPU comum, o VMware tem de fazer tudo!
• Ano de 2005
• Cache L2 = 1 MB
Qual barramento é
mais “rápido”?
Qual a Banda
OAC - CPUs - Ricardo Zelenovsky
Passante do QPI? Módulo 01-101
Banda Passante do QPI
RAM
QPI trabalha com 20 linhas (bits)
para cada direção, usa clock de
Contr. 3,2 GHz, faz 2 transferências por
RAM ciclo e usa um codificador de 8/10?
CPU
codificador 8/10
QPI 25,6 GB/s
2 transf. por ciclo
Chip Set 2 direções
PCIe 20 ×2 ×3,2 ×2 8
16x 𝐵𝑃 = ×
8 10
8,2
GB/s
Vídeo 𝐵𝑃=25,6 𝐺𝐵/𝑠
OAC - CPUs - Ricardo Zelenovsky Módulo 01-102
Banda Passante do DMI
DMI trabalha com 4 (bits) para
cada direção, usa clock de 5 GHz.
Vídeo RAM
8,2
GB/s 𝐵𝑃=4 ×5 × 2=40 𝐺𝑏 /𝑠
PCIe Contr.
16x RAM 𝐵𝑃=5 𝐺𝐵/ 𝑠
CPU
DMI 40 Gb/s DMI 2.0 usa 4 (bits) para cada
direção, usa clock de 10 GHz.
Peripheral
Controller 𝐵𝑃=4 ×10 × 2=80 𝐺𝑏/ 𝑠
Hub
𝐵𝑃=10 𝐺𝐵/ 𝑠
OAC - CPUs - Ricardo Zelenovsky Módulo 01-103
• Ano de 1999 AMD – K7 - Athlon
• Clock = 166 a 233 MHz
• Cache L2 = 256 KB / 2 MB
• Slot A
Controlador
de
FADD FMUL
IEU0 AGU0 IEU1 AGU1 IEU2 AGU0 MMX MMX FSTORE
Interface 3DNow 3DNow de
com Cache
(BIU)
Cache L1: Instruções TLB L1 = 32 posições
64 KB TLB L2 = 256 posições
FSB BSB
Athlon Cache L2
Módulo 01-105
OAC - CPUs - Ricardo Zelenovsky
AMD – Athlon 64 X2
• Ano de 2005
• Ano de 2005
AX
RAX EAX AH AL
63 31 15 8 7 0
Xeon FX
Itanium
Série-A
Core i7
Core i5 Phenom II
Core i3
Athlon II
Pentium
Celeron Sempron
(omitido)
Atom
OAC - CPUs - Ricardo Zelenovsky Módulo 01-110
Processadores na Página da Intel
Processadores
Intel® Core™ i7 Extreme Edition
Intel® Core™ i7 de terceira geração
Intel® Core™ i5 de terceira geração
Intel® Core™ i3 de terceira geração
Intel® Core™ vPro™ de segunda geração
Família Intel® Xeon® E7
Família Intel® Xeon® E5
Família Intel® Xeon® E3
Itanium®
Intel® Atom™
Embarcado
Pentium 4
(NetBurst)
2 x 1 GB/s DMI
2 x 2 GB/s Bus Todo Core i3 tem HT
Chipset
Cache L1 = 32 KB Instruções
32 KB Dados
Cache L2 = 256 KB
Cache L3 = 3 MB
1ª G 2ª G 3ª G
Nehalem Sandy Bridge Ivy Bridge
32 nm 32 nm 22 nm
DMI
Sem HT Bus Não é o padrão
Chipset
para todos core i5
North-Bridge
Cache L1 = 32 KB Instruções
32 KB Dados
Cache L2 = 256 KB
Cache L3 = 3 a 6 MB
1ª G 1ª G 2ª G 3ª G
Nehalem Nehalem Sandy Bridge Ivy Bridge
45 nm 32 nm 32 nm 22 nm
DMI
Todas com HT Bus
Chipset
North-Bridge
Cache L1 = 32 KB Instruções
32 KB Dados
Cache L2 = 256 KB
Cache L3 = 8 MB
1ª G 2ª G 3ª G
Nehalem Sandy Bridge Ivy Bridge
32 nm 32 nm 22 nm
Xeon E3 Itanium
Cores: 2/4, com HT: 4/8 Cores: 1/2/4, com HT: 4/8
CLK: 2,2 3,6 GHz CLK: 1,33 1,73 GHz
Cache
OAC - CPUsL3 = 3/8
- Ricardo Zelenovsky Cache L3 = 6/8/12/16/18/24
Módulo 01-126
Demais Processadores da Intel
Pentium
Cores: 2 maioria sem HT
CLK: 1,0 3,46 GHz
Cache L3 = 1/2/3 MB
Celeron
Cores: 1/2 sem HT
CLK: 1,2 2,4 GHz
Cache = 0,256/0,512/1/2 MB
Neste slide
Atom não foi feita
Cores: 1/2, com HT: 2/4 distinção entre
CLK: 1,6 2,13 GHz desktop e móvel
Cache
OAC - CPUs= 0,512/1
- Ricardo MB
Zelenovsky Módulo 01-127
Evolução das Tecnologias de Integração
(Previsão para a Intel)
Nehalem Sandy Bridge Haswell
45 nm 32 nm 22 nm 14 nm
Futuro
Transistores 3D
Compartilha:
Busca (fetch)
Decodificação
Ponto flutuante
OAC - CPUs - Ricardo Zelenovsky Módulo 01-130
OAC - CPUs - Ricardo Zelenovsky Módulo 01-131
Codename Zambezi Zambezi Zambezi
Modelo FX 81xx FX 61xx FX 41xx
Processo 32 nm 32 nm 32 nm
Core 8 6 4
GHz 3,1 a 3,6 GHz 3,3 GHz 3,6 a 4,2 GHz
DT/Mob Desktop Desktop Desktop
HTT HTT HTT HTT
Memória DDR3 DDR3 DDR3
Canais 2 Ch 2 Ch 2 Ch
Cache L1 8x2x64 KB 6x2x64 KB 4x2x64 KB
Cache L2 8 x 1MB 6 x 1MB 4 x 1MB
Cache L3 8 MB 8 MB 8 MB
OAC - CPUs - Ricardo Zelenovsky Módulo 01-132
Codename Llano Thuban, etc. Propus, etc.
Modelo A8/A6/A4 Phenom II Athon II
Processo 32 nm 45 nm 32/45 nm
Core 4/3/2 + GPU 6/4/3/2 2/3/4
GHz 2,5 a 3,0 GHz 2,5 a 3,7 GHz 1,9 a 3,4 GHz
DT/Mob Móvel Desktop DT/Mob
HTT HTT HTT HTT
Memória DDR3 DDR2/3 DDR2/3
Canais 2 Ch 2 Ch 1 Ch
Cache L1 64 KB 2x64 KB? 2/3/4x(2x64) KB
Cache L2 4/3/1MB 1,5/2/4 MB 4 x 1MB
Cache L3 Ñ 6 MB Ñ
OAC - CPUs - Ricardo Zelenovsky Módulo 01-133
FCC – Ago/2009 – TRE PI – Análise de Sistema
(Prova D04, Tipo 01)
(B) Registradores
(A) 45 nm.
1) Willamette = 180 nm
(B) 90 nm. 2) Northwood = 130 nm
3) Prescott = 90 nm
(C) 130 nm.
4) Cedar Mill = 65 nm
(D) 135 nm.