Buscar

Arquitetura de Computadores Cap 1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
OAC – Introdução 1 Juliana F Camapum Wanderley
Organização e Arquitetura de Computadores
Aula 1 - Introdução
2002
Juliana F. Camapum Wanderley
http://www.cic.unb.br/docentes/juliana/cursos/oac
OAC – Introdução 2 Juliana F Camapum Wanderley
Sumário
„ Introdução a Arquitetura de Computadores
„ Organização e Anatomia de um Computador
„ Mudanças Tecnológicas Rápidas 
„ Conclusões
2
OAC – Introdução 3 Juliana F Camapum Wanderley
Introdução
„ Nos anos 60/70:
„ minimizar espaço em memória melhora o
desempenho
„ Problema atual:
„ hierarquia de memórias
„ paralelismo dos processadores (pipeline)
„ otimização dos compiladores
„ sistema operacional...
OAC – Introdução 4 Juliana F Camapum Wanderley
AC
O que é "Arquitetura de Computadores"?
„ Arquitetura do conjunto de instruções + Organização da máquina
„ Coordenação de muitos Níveis de Abstração
I/O systemProcessor
Compiler
Operating
System
(Linux)
Application (Netscape)
Digital Design
Circuit Design
Instruction Set
Architecture
Datapath & Control 
transistors
MemoryHardware
Software Assembler
3
OAC – Introdução 5 Juliana F Camapum Wanderley
Abstração
„ Maior aprofundamento revela mais 
informações 
„ Uma abstração omite detalhes desnecessários,
ajudando a lidar com a complexidade
„ É uma descrição simplificada ou seletiva de um
sistema
OAC – Introdução 6 Juliana F Camapum Wanderley
Arquitetura do Conjunto de Instruções
„ Uma importante abstração
„ interface entre hardware e software de baixo nível
„ padronização das instruções, linguagem de máquina, etc...
„ Vantagens: diferentes implementações da mesma 
arquitetura
„ desvantagem: algumas vezes impossibilita o uso de 
inovações 
„ Modernas arquiteturas de conjunto de instruções:
„ Intel (80x86/Pentium/K6/MMX), PowerPC, DEC Alpha, SGI 
MIPS, SUN SPARC, HP PA-RISC
4
OAC – Introdução 7 Juliana F Camapum Wanderley
Arquitetura do Conjunto de Instruções
„ Conjunto de instruções (ou códigos de operação).
„ Categorias de Instruções - MIPS R3000 
„ Carregar/Armazenar
„ Cálculo
„ Desvio
„ Ponto flutuante
„ Gerenciamento de Memória
„ Formato das instruções.
„ 3 formatos de instruções (32 bits) - MIPS R3000 
„ Tipos e estruturas de dados, codificação e representação
„ Modos de endereçamento e acesso a dados e instruções.
„ Organização da memória.
OAC – Introdução 8 Juliana F Camapum Wanderley
AC
Níveis de Representação
High Level Language 
Program (e.g., C)
Assembly Language 
Program (e.g.,MIPS)
Machine Language 
Program (MIPS)
Control Signal 
Specification
Compiler
Assembler
Machine Interpretation
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
lw $t0, 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
°
°
5
OAC – Introdução 9 Juliana F Camapum Wanderley
Por trás do Programa
„ Computadores: dois dígitos – 0 e 1 (bit’s).
„ Em computadores: bits são agrupados em grupos na memória:
„ Z-80 – Grupos de 8 bits (1 byte).
„ MIPS – Grupos de 32 bits.
„ Memória de um computador:
Endereço Conteúdo
0 0000 0000 0000 0000 0000 0000 1001 1000
1 0000 0000 0000 0000 0000 1000 0001 1010
2 0000 0000 0000 0000 1111 0000 1001 1000
„ Representação popular: em hexa:
Endereço Conteúdo
0000 0000 0000 0098
0000 0001 0000 F098
Significado dos bits:
Programas, números, texto, 
imagens, sons, etc.
OAC – Introdução 10 Juliana F Camapum Wanderley
Organização da Máquina
„Características de performance e capacidade das principais 
unidades funcionais.
„ Registradores, Unidade lógica e aritmética, Unidade de controle ...
„Como estas unidades funcionais são conectadas.
„A natureza das informações trocadas entre componentes.
„A lógica e os meios pelos quais é controlado este fluxo de 
informações.
6
OAC – Introdução 11 Juliana F Camapum Wanderley
Anatomia: 5 componentes de qualquer Computador
Computador Pessoal
Processador
Computador
Controle
Datapath
Via de dados
Memória
(onde 
programas, 
dados
vivem qdo
rodando)
Devices
Input
Entrada
Output
Saída
Teclado, 
Mouse
Monitor,
Impressora
Disco
(onde 
programas, 
dados
vivem quando
não estão 
rodando)
OAC – Introdução 12 Juliana F Camapum Wanderley
Nosso primeiro enfoque
„ O processador (datapath e controle)
„ Implementado usando milhões de
transistores
„ Impossível de entender olhando cada
transistor
„ Nós precisamos de abstrações
7
OAC – Introdução 13 Juliana F Camapum Wanderley
Arquitetura de Computadores
Arquitetura
Pentium
Data
cache
Instruction
cache
Control
Branch
Bus
In
te
ge
r d
at
a 
pa
th
Floating-
point
data path
OAC – Introdução 14 Juliana F Camapum Wanderley
Mudanças tecnológicas
„ Grande desenvolvimento da eletrônica
„ Transistor: chave on/off
„ CI: dúzias a milhões de transistores em um VLSI.
8
OAC – Introdução 15 Juliana F Camapum Wanderley
Circuitos Integrados
„ Silício → semicondutor. Pode ser:
„ Excelentes condutores.
„ Excelentes isolantes.
„ Áreas que alternam entre condutores e isolantes (chaves).
„ Fabricação:
„ Bastão (ingot) – diâmetro de 6 a 12 polegadas, 
comprimento de 12 a 24 polegadas.
„ Fatiados em finas fatias → wafers (largura de 0,1 
polegada).
„ Série de passos de processamento químico, que cria 
transistores, condutores e isolantes.
„ Conectar o chip com os pinos externos. Encapsulamento.
OAC – Introdução 16 Juliana F Camapum Wanderley
Tendências Tecnológicas: Capacidade
de Memória (cada chip DRAM)
size
Year
1000
10000
100000
1000000
10000000
100000000
1000000000
1970 1975 1980 1985 1990 1995 2000
Ano
Tam. (Mbit) 
1980 0.0625
1983 0.25
1986 1
1989 4
1992 16
1996 64
2000 256
- Aprox 1.4X/ano, ou dobro a cada 2 anos.
- 4000X desde 1980.
9
OAC – Introdução 17 Juliana F Camapum Wanderley
Year
1000
10000
100000
1000000
10000000
100000000
1970 1975 1980 1985 1990 1995 2000
i80386
i4004
i8080
Pentium
i80486
i80286
i8086
Tendências Tecnológicas: Complexidade do
Microprocessador 
2X transistores/Chip
Cada 1.5 anos
Chamada
"Lei de Moore"
Alpha 21264: 15 milhões
Pentium Pro: 5.5 milhões
PowerPC 620: 6.9 milhões
Alpha 21164: 9.3 milhões
Sparc Ultra: 5.2 milhões
Lei de Moore
Athlon (K7): 22 Milhões
OAC – Introdução 18 Juliana F Camapum Wanderley
Tendências Tecnológicas: Desempenho de
Processador
0
100
200
300
400
500
600
700
800
900
1000
1100
1200
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
1.54X/ano
Desempenho Processador aumento/ano, erroneamente 
referido como Lei de Moore (transistores/chip)
Intel P4 1500 MHz
(Prim. 2001)
10
OAC – Introdução 19 Juliana F Camapum Wanderley
Tecnologia do Computador
Mudança Dramática!
„ Processador
„ 2X em veloc. cada 1.5 anos; 
100X desempenho na última década.
„ Memória
„ Capacidade DRAM: 2x / 2 anos; 64x tamanho na última
década.
„ Disco
„ capacidade: > 2X em tamanho cada 1 ano.
„ Custo por bit: melhora cerca de 100% por ano.
„ 120X tamanho na última década.
OAC – Introdução 20 Juliana F Camapum Wanderley
Tecnologia do Computador
Mudança Dramática
„ PC Estado-da-arte:
„ Velocidade Clock do Processador: 4000 MHz
(4.0 GigaHertz)
„ Capacidade da Memória: 1000 MegaByte
(1.0 GigaBytes)
„ Capacidade do Disco: 1000 GigaBytes
(1.0 TeraBytes)
„ Novas unidades! Mega => Giga, Giga => Tera
11
OAC – Introdução 21 Juliana F Camapum WanderleyPor que Estudar Arq de Computadores?
„ Mudança; É excitante!; nunca foi tão excitante!
„ Impacta todos os outros aspectos de engenharia
elétrica/eletrônica e ciência dos computadores.
Bionics:
Sensors in latex fingers 
instantly register hot 
and cold, and an electronic 
interface in his artificial 
limb stimulates the nerve 
endings in his upper arm, 
which then pass the 
information to his brain. 
The $3,000 system allows
his hand to feel pressure 
and weight, so for the first 
time since losing his arms 
in a 1986 accident, he can 
pick up a can of soda 
without crushing it or 
having it slip through his 
fingers. One Digital Day
OAC – Introdução 22 Juliana F Camapum Wanderley
AC: Então, o que aprenderei neste curso?
„ Arq de Computadores do ponto de vista 
do programador
„ O que o programador escreve
„ Como é convertido para algo que o
computador entende
„ Como o computador interpreta o programa
„ O que torna programas lentos
12
OAC – Introdução 23 Juliana F Camapum Wanderley
AC: Então, o que será visto neste curso?
„ Aprender as grandes idéias em CC e engenharia:
„ 5 componentes clássicos de um computador
„ Dados podem ser qualquer coisa (inteiros, ponto flutuante,
caracteres); um programa determina o que ele é
„ Conceito de programa armazenado: instruções são apenas dados
„ Princípio de Localidade, explorado via hierarquia de memória (cache)
„ Maior performance via exploração de paralelismo (pipeline).
„ Princípio de abstração, utilizado para construir sistemas em camadas
„ Compilação vs. Interpretação através das camadas do sistema.
„ Princípios/Armadilhas de Medidas de Desempenho.
OAC – Introdução 24 Juliana F Camapum Wanderley
O que AC não é
„ Aprendizado de C
„Se você sabe uma, você deveria ser capaz de aprender outra ling. de 
programação praticamente sozinho.
„Dado que você sabe Pascal ou Java, deve ser mais ou menos fácil 
entender/aprender C.
„ Programação em Linguagem Assembly
„Esta é uma habilidade que você aprenderá como um efeito colateral
de entender as Grandes Idéias.
„ Projeto de Hardware
„Nós trabalharemos com hardware em nível de abstração, com
muito pouco de lógica física para que tenhamos uma 
perspectiva adequada do assunto.
C
C++
Java
13
OAC – Introdução 25 Juliana F Camapum Wanderley
Organização do curso
„ Desempenho (Capítulo 2) 
„ Uma arquitetura de conjunto de instruções (Capítulo 3)
„ Aritmética e como construir uma ALU (Capítulo 4)
„ Lógica Seqüencial (Apêndice B)
„ Construção de um processador para executar nossas 
instruções (Capítulo 5)
„ Mapeamento do Controle no Hardware (Apêndice C)
„ Pipelining para melhorar desempenho (Capítulo 6)
„ Memória: caches e memória virtual (Capítulo 7)
„ I/O (Capítulo 8)
Chave para um bom curso: Ler o livro!
OAC – Introdução 26 Juliana F Camapum Wanderley
Literatura
„ Livro Texto:
„ Requerido: Organização e Projeto de Computadores: A 
Interface Hardware/Software, Segunda Edição, Patterson and 
Hennessy (P&H) - Editora LTC
14
OAC – Introdução 27 Juliana F Camapum Wanderley
Leitura
„ Todo o capítulo 1 do livro texto
„ Itens 1.1 - 1.8

Outros materiais