Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Infra-estrutura de Hardware
Edna Barros
GRECO - Grupo de Engenharia da Computação
Centro de Informática - UFPE
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Conceitos Básicos de Arquitetura
de Computadores
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Motivação
Porque é importante saber conceitos de
arquitetura/organização de computadores?
Revolução da Informação:
• Primeiro computador comercial no final anos 1940
• .... Multiprocessadores (SP2, Clusters,....)
• Número e complexidade crescente de aplicações:
– Caixas Eletrônicos
– Computadores em automóveis
– Laptops
– Projeto Genoma
– World Wide Web
Os computadores estão cada vez mais presentes
no nosso dia a dia....
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Computadores no dia a dia...
Computadores estão
presentes nos mais diversos
equipamentos
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
No nosso dia a dia ....
Computadores no dia a dia...
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
E todos estes computadores/equipamentos podem
estar conectados em rede ....
Voz e Dados
GPS/AVL
Chamada
Terminais de
Dados
Rede
CDPD/GPRS
Centro de Dispatch
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Armazenamento e Processamento de
Informações....em um escritório
• Na mesa mantemos os
papéis que estamos
usando naquele
momento
• Completada uma tarefa,
pomos os papéis
alterados de volta no
fichário.
• Após o expediente, a
faxineira joga no lixo
tudo que está na mesa.
Pastas
Fichário
■
Como se dá o processamento
das informações?
• Informações que não tem uso
no momento ficam no fichário.
• A pasta sobre a mesa contém
cópias das informações que
precisaremos naquele dia.
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Fichário
Mesa
Pastas
3
timing & size
Information
2
timing & size
Information
1
Disco
Memória
Unidade de
Controle (CPU)
Componentes de um Computador
■
O fichário representa o disco rígido, com alta capacidade de
armazenamento.
■
A pasta sobre a mesa representa a memória, de acesso rápido e fácil
■
Mesa e usuário são a CPU
■
OBS: Memória é volátil e disco não (faxineira)
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Abrindo o computador....
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Entrada/Saída Manual
Teclado
Mouse
Monitor de Vídeo
Joystick
Característica comum: baixa velocidade
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Saída: Monitor de Vídeo
Tubo de raios
catódicos
Aumento da energia
dos elétrons
Aceleração
Colisão numa tela
de fósforo
Emissão de luz
Ponto luminoso
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Saída: Vídeo
Controle
• Densidade do fluxo
controlada por circuitos
adicionais
• Direção do feixe
controlada por campo
magnético
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Saída: Vídeo
Resolução
• Linhas: 1024
• Pontos por linha: 1280
• Resolução: 1.310.720
• 75 figuras/seg : 98.304.000 Bits/seg 100 MHz de largura de
Banda
• Intensidade
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Saída: Vídeo
Display de
cristal líquido
Matrix de pixels
Controle
Complexo
Tecnologia VLSI
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Unidade de Processamento
Placa Mãe
CPU
Memória
Disco rígido
Disco Flexível
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Placa Mãe
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
O Processador
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Processador: PowerPC 750
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Processador: Tecnologia
Cooper
technology
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Processador: Tecnologia
Visão Parcial
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Processador: Tecnologia
Corte Transversal
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Processador Power-PC
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Processador
Memória
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Memória Vs. Armazenamento
O fichário representa o
disco rígido, com alta
capacidade de
armazenamento.
A pasta sobre a mesa
representa a memória, de
acesso rápido e fácil
Mesa e usuário são a
CPU
OBS: Memória é volátil e
disco não.
Fluxo de Dados
Pasta
Fichário
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Processador vs. memória
µProc
60%/ano..
DRAM
7%/ano..
1
10
100
1000
1
9
8
0
1
9
8
1
1
9
8
3
1
9
8
4
1
9
8
5
1
9
8
6
1
9
8
7
1
9
8
8
1
9
8
9
1
9
9
0
1
9
9
1
1
9
9
2
1
9
9
3
1
9
9
4
1
9
9
5
1
9
9
6
1
9
9
7
1
9
9
8
1
9
9
9
2
0
0
0
DRAM
CPU
1
9
8
2
Desemp. Proc-Mem:
(cresce 50% / ano)
D
e
s
e
m
p
e
n
h
o
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Memória Principal Vs. Cache
O fichário representa o disco
rígido.
A pasta sobre a mesa
representa a memória
principal.
No quadro de avisos se
encontram informações que
podem ser acessadas de forma
muito rápida. O quadro
representa a
cache
.
Mesa e usuário são a CPU
Pasta
Quadro
Fichário
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Níveis de memória
Nível
1
2
3
4
Nome
Registrador
Cache
Memória
Principal
Secundária
Tamanho
< 1K
< 4 M
< 4 G
> 1 G
Tecnologia
BICMOS
SRAM
DRAM
Disco
Tempo de
acesso (ns)
2-5
3-10
80-400
5.000.000
Largura de
banda(MB/s)
4000-32.000
800-5000
400-2000
4-32
Gerência
Compilador
Hardware
S.O
S.O /
usuário
Copia em
Cache
Memória
Principal
Disco
Fita
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Processador
Memória
Discos
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Discos
36 Gbytes, 31/2”
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Platter
Track
Platters
Sectors
Tracks
Discos magnéticos
# discos: 1-15 (2 lados)
rotação: 3600 - 7200 rpm
diâmetro: 1-8 inch
# trilhas: 1000-5000
# setores: 64-200
setor: 512 bytes
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Discos / História
1973:
1. 7 Mbit/pol2
140 MBytes
1979:
7. 7 Mbit/pol2
2,300 MBytes
source: New York Times, 2/23/98, page C3,
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
1
10
100
1000
10000
1970
1980
1990
2000
Year
A
re
a
l
D
e
n
s
it
y
Discos: história
1989:
63 Mbit/pol2
60,000 MBytes
1997:
1450 Mbit/pol2
2300 Mbytes
(2.5” diâmetro)
source: N.Y. Times, 2/23/98, page C3
1997:
3090 Mbit/p2.
8100 Mbytes
(3.5” diâmetro)
2000:
10,100
Mb/p2
25,000
MBytes
2000:
11,000
Mb/p2
73,400
MBytes
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Estado da Arte: Ultrastar 72ZX
• 73.4 GB, 3.5 inch disk
• 2¢/MB
• 16 MB track buffer
• 11 platters, 22 surfaces
• 15,110 cylinders
• 7 Gbit/sq. in. areal density
• 17 watts (idle)
• 0.1 ms controller time
• 5.3 ms avg. seek
(seek 1 track => 0.6 ms)
• 3 ms = 1/2 rotation
• 37 to 22 MB/s to media
source: www.ibm.com;
www.pricewatch.com; 2/14/00
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Discos: Limites
Capacidade crescente (60%/ano) and Taxa de
tranf. crescente (40%/ano)
Redução lenta do tempo de acesso (8%/ano)
Tempo para leitura completa:
Ano
Sequencial
Randômica
1990
4 minutos
6 horas
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Discos: Estado da Arte
IBM microdrive para cameras digitais
• 340 Mbytes
Disco em 5 anos?
• building block: 2006
MicroDrive
– 9GB disk, 50 MB/sec
• 10,000 unidades em um rack
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Year
1000
10000
100000
1000000
10000000
100000000
1970
1975
1980
1985
1990
1995
2000
i80386
i4004
i8080
Pentium
i80486
i80286
i8086
Technologia: Capacidade de
Integração
2X transistores/Chip
A cada 1.5 anos
“Moore’s Law”:
Alpha 21264: 15 million
Pentium Pro: 5.5 million
PowerPC 620: 6.9 million
Alpha 21164: 9.3 million
Sparc Ultra: 5.2 million
Moore’s Law
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Technologia: Desempenho do
Processador
0
100
200
300
400
500
600
700
800
900
87 88 89 90 91 92 93 94 95 96 97
DEC Alpha 21264/600
DEC Alpha 5/500
DEC Alpha 5/300
DEC Alpha 4/266
IBM POWER 100
DEC
AXP/
500
HP
9000/
750
Sun
-4/
260
IBM
RS/
6000
MIPS
M/
120
MIPS
M
2000
1.54X/yr
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Avanços na Tecnologia
Processador
• 2X velocidade a cada 1.5 ano; 1000X desempenho nos últimos
15 anos
Memória
• DRAM capacidade: 2x / 1.5 anos; 1000X tamanho nos últimos
15 anos
• Custo por bit: melhora 25% por ano
Disco
• capacidade: > 2X em tamanho a cada 1.5 ano
• Custo por bit: melhora em média 60% por ano
• 120X tamanho na última decada
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Evolução dos Computadores
239.078.908
$4.400
47.846.890
$4.400
16.384
400.000.000
500
2
Intel
Ppro PC
200MHz
1996
16.122.356
$8.156
3.556.188
$7.400
16.384
50.000.000
500
2
HP9900
0
1991
240.000
166.000.000
330.000
500.000
1900
Desempenho
(adições por
seg.)
154.673
$4.081
42.105
$3.000
256
150
1
IBM-PC
1981
51.604
$8.459.712
21.842
$4.000.000
32.768
60.000
58
Cray-1
1976
13.135
318
1
Preço/perf
reaj.
$66.071
$4.140.257
$4.996.7499
Preço reaj.
10.855
263
1
Preço/Perf.
4
64
48
Memóri
a (KB)
$16.000
500
8
PDP-8
1965
$1.000.000
10.000
60
IBM/360
1964
$1.000.000
124.500
1000
UNIVA
C1
1951
Preço
Potência
Tama
nho
Nome
Ano
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Esforços em Arquitetura de Computadores
Arquiteturas
de Computador
Tecnologia
Linguagens de
Programação
Sistemas
Operacionais
História
Aplicações
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
CPU
Mem.
I/O
Computer
Periféricos
Interconexão
Componentes de um
Computador: Hardware
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Computador: Hardware +
Software
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Computador: Hardware + Software
Coordenação de muitos níveis de abstração
I/O system
Processor
Aplicação (Netscape)
Repertório de
Instruções
Arquitetura
Memory
Hardware
Software
Sistema
Operacional
Windows
Compilador
Montador
Datapath & Control
Digital Design
Circuit Design
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Representação da Informação
Programa em
Linguagem de alto
nível (e.g., C)
Programa em
linguagem assembly
(e.g.,MIPS)
Programa em
linguagem de
Máquina (MIPS)
Hardware
Compilador
Montador
Interpretação
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
lw$to, 0($2)
lw$t1, 4($2)
sw
$t1, 0($2)
sw
$t0, 4($2)
0000 1001 1100 0110 1010 1111 0101 1000
1010 1111 0101 1000 0000 1001 1100 0110
1100 0110 1010 1111 0101 1000 0000 1001
0101 1000 0000 1001 1100 0110 1010 1111
°
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
swap(int v[], int k)
{int temp;
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
}
swap:
muli $2, $5,4
add $2, $4,$2
lw $15, 0($2)
lw $16, 4($2)
sw $16, 0($2)
sw $15, 4($2)
jr $31
00000000101000010000000000011000
00000000100011100001100000100001
10001100011000100000000000000000
10001100111100100000000000000100
10101100111100100000000000000000
10101100011000100000000000000100
00000011111000000000000000001000
Binary machine
language
program
(for MIPS)
C compiler
Assembler
Assembly
language
program
(for MIPS)
High-level
language
program
(in C)
Representação
da Informação
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Compilação
Programa objeto
L0
Programa fonte
Ln
Compilador
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Interpretação
Instrução
Ln
Interpretador
Instrução
Ln-1
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Interpretação & Compilação
Interpretador
Instrução de máq.
L0
Programa objeto
Lint
Programa fonte
Ln
Compilador
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Computador: Hardware e
Software
Hardware
S
ys
tem
s softw
are
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Computador: Hardware e
Software
Software
Aplicação
Sistema
Editores
Compiladores
Sistemas
operacionais
Montadores
Memória
virtual
Sistema de
arquivo
I/O device
drivers
gcc
as
...
...
...
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Interface entre hw e sw:
Repertório de Instruções:
Repertório de Instruções
software
hardware
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Como funciona um computador
Vídeo
Teclado
CPU
Execução das
instruções de um
programa
CPU
Execução das
instruções de um
programa
Memória
Programas
+
Dados
E/S
Buffers
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Como funciona um computador
Vídeo
Teclado
Memória
Programas
+
Dados
E/S
Buffers
Reg
.
ALU
Endereço
Instrução
❏
Unid. processamento
❏
Unid. controle
Operando
temp
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Memória
0
15
sinal
Dado
Instrução
magnitude
0
3
15
Opcode
Endereço
4
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Como funciona um computador?
Busca a próxima
instrução
Busca a próxima
instrução
Executa a
instrução
Executa a
instrução
Início
Término
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Executando um programa
1 9 4 0
5 9 4 1
2 9 4 1
0 0 0 3
0 0 0 2
3 0 0
1 9 4 0
3 0 0
9 4 1
9 4 0
3 0 2
3 0 1
PC (endereço)
AC (operando)
IR (Instrução)
Registradores da CPU
Memória
...
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Executando um programa
1 9 4 0
5 9 4 1
2 9 4 1
0 0 0 3
0 0 0 2
3 0 0
1 9 4 0
3 0 0
9 4 1
9 4 0
3 0 2
3 0 1
PC
AC
IR
Registradores da CPU
Memória
...
0 0 0 3
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Executando um programa
1 9 4 0
5 9 4 1
2 9 4 1
0 0 0 3
0 0 0 2
3 0 1
5 9 4 1
3 0 0
9 4 1
9 4 0
3 0 2
3 0 1
PC
AC
IR
Registradores da CPU
Memória
...
0 0 0 3
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Executando um programa
1 9 4 0
5 9 4 1
2 9 4 1
0 0 0 3
0 0 0 2
3 0 1
5 9 4 1
3 0 0
9 4 1
9 4 0
3 0 2
3 0 1
PC
AC
IR
Registradores da CPU
Memória
...
0 0 0 5
16
16
16
2
5
3
+
=
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Executando um programa
1 9 4 0
5 9 4 1
2 9 4 1
0 0 0 3
0 0 0 2
3 0 2
2 9 4 1
3 0 0
9 4 1
9 4 0
3 0 2
3 0 1
PC
AC
IR
Registradores da CPU
Memória
...
0 0 0 5
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Executando um programa
1 9 4 0
5 9 4 1
2 9 4 1
0 0 0 3
0 0 0 5
3 0 2
2 9 4 1
3 0 0
9 4 1
9 4 0
3 0 2
3 0 1
PC
AC
IR
Registradores da CPU
Memória
...
0 0 0 5
0001
AC <- Mem.
0010
Mem. <- AC
0101
AC <- AC + Mem.
Cin - CENTRO DE INFORMÁTICA UFPE
GRECO
Executando um programa
Busca instrução
Busca instrução
Executa instrução
Executa instrução
Busca operando
Busca operando
Decodifica instrução
Decodifica instrução
Armazena resultado
Armazena resultado
Incrementa PC
Incrementa PC
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Arquitetura vs. Organização
Arquitetura
■
Estudo da CPU
▲
Repertório de
instruções
▲
Tipos de Dados
▲
Acesso à
memória
▲
Conjunto de
registradores
Organização
■
Tecnologia de
memória
■
Interfaces
■
Implementação
das instruções
■
interconexões
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Programa
Introdução
Módulo 1:Conceitos Básicos de Arquitetura
e Projeto de uma CPU
– Conceitos Básicos de Arquitetura (6hs)
– Usando o simulador MIPS (2hs)
– Unidade de processamento e de controle (4hs)
– Projetando a via de Dados (8hs)
– Projetando a unidade de controle (8hs)
– Exercício Escolar e entrega de projeto (18/12)
Cin - CENTRO DE INFORMÁTICA
UFPE
GRECO
Programa
Módulo 2: Projeto Eficiente de uma CPU
• Exceções (2hs)
• Pipeline
– Conceitos básicos (4hs)
– Otimizando implementações em Pipeline (4hs)
– Superescalares(2hs)
– Implementando uma CPU pipeline(18hs)
– Exercício Escolar e entrega de projeto (26/02/03)
Final (12/03/03)
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Monitores
Equipe:
• Viviane e outros
Acompanhamento de projetos
• Sala de aula
• Horário Extra
Cin - CENTRO DE INFORMÁTICA UFPEGRECO
Avaliação
Módulo 1:
• prova - 60%
• projeto - 40% (avaliação da equipe e avaliação
individual)
• Entrega de relatório
Módulo 2:
• prova - 60%
• projeto - 40 %
• Entrega de Relatório
Cin - CENTRO DE INFORMÁTICA UFPE