Buscar

Introdução à Arquitetura de Computadores

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 30 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 30 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 30 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

Arquitetura de Computadores
Prof. Fábio M. Costa
Instituto de Informática – UFG
1o. Semestre / 2005
Programa e Introdução
Assunto do curso
“Atributos de um sistema [de computação] 
que são visíveis para o programador (...) e 
que têm impacto direto sobre a execução 
lógica de um programa”
Tanenbaum, 1999
Stallings, 2001
Arquitetura Vs. Organização
Arquitetura
conjunto de instruções
conjunto de 
registradores
representação de 
dados
mecanismos de E/S
endereçamento de 
memória
Organização: Especifica 
as unidades operacionais 
e sua interconexão para 
implementação de uma 
determinada arquitetura
estrutura interna do 
processador
barramentos internos
tecnologia de memórias
interface com sistema de 
E/S
Roteiro do curso...
Introdução
Arquitetura vs. Organização de Computadores
Organização estruturada de computadores
Interação com outras disciplinas
Roteiro do curso...
Fundamentos
Princípios de funcionamento de computadores
Panorama das tecnologias atuais
Tendências tecnológicas
Princípios de projeto de computadores
Análise do desempenho de computadores
Perspectiva histórica 
Roteiro do curso...
Representação de dados
Números inteiros sinalizados e não-sinalizados
Operações aritiméticas
Operações lógicas
Números de ponto flutuante 
Roteiro do curso...
Arquitetura de conjuntos de instruções
Classificação de conjuntos de instruções
Endereçamento de memória
Tipos de operações
Tipos de dados (operandos)
Formatos de instruções
Controle de fluxo (procedimentos e sub-rotinas, 
interrupções) 
Roteiro do curso...
Programação em Linguagem de Montagem
Visão geral do modelo de programação
Arquiteturas representativas (ênfase no 80x86)
Exercícios de programação
Outors aspectos da programação em Assembly: 
linkedição e carga de programas, macros, o 
processo de montagem, relocação de código 
Roteiro do curso...
Suporte ao Sistema Operacional
Conceitos básicos de sistemas 
operacionais
Escalonamento de processos
Gerenciamento de memória 
Roteiro do curso...
Entrada e Saída
Organização básica de entrada e saída
Métodos de transferência de dados 
(polling, interrupções, DMA)
Dispositivos de E/S 
Interação com outras 
disciplinas
Antes:
Introdução à Computação
Sistemas Digitais
Depois:
Organização de Computadores
Sistemas Operacionais
Compiladores
Disciplina básica do currículo de Computação
Ênfase do curso
Entender o projeto de computadores 
existentes
fundamentação conceitual, perspectiva 
histórica e atualidades
Dar subsídios para melhor utilizar 
(programar) a máquina
Aprender as técnicas básicas de projeto 
de computadores
Bibliografia
STALLINGS, W. 
Arquitetura e Organização 
de Computadores, 
Tradução da 5ª Edição, 
Prentice-Hall, 2002.
Trata tanto os aspectos 
de arquitetura quanto de 
organização de 
computadores, fazendo 
uma clara distinção entre 
eles
Estudos de casos com 
duas arquiteturas reais: 
Pentium II e PowerPC
Bibliografia...
PATTERSON, D.A.; 
HENNESSY, J.L. Projeto e 
Organização de 
Computadores: A Interface 
Hardware / Software, 
Tradução da 2a Edição, 
LTC, 2000.
Combina uma 
abordagem fortemente 
baseada em princípios 
com uma visão 
tecnológica
Ponto de vista
arquitetura = organização 
+ ISA
Bibliografia...
TANENBAUM, A.S. 
Organização Estruturada de 
Computadores, Tradução da 
4a Edição, LTC, 2001.
Abordagem clássica da 
organização de 
computadores em 
camadas
Também trata dos 
aspectos de arquitetura 
e organização
Bibliografia...
WEBER, R.F., Fundamentos de 
Arquiteturas de Computadores, 
2ª Edição, Editora Sagra-
Luzzatto, 2001.
Roteiro básico para um curso 
introdutório de arquitetura de 
computadores
Abordagem evolutiva 
baseada em simuladores
Precisa ser complementado 
com textos mais avançados
Bibliografia...
HENNESSY, J.L. and 
PATTERSON, D.A. Arquitetura 
de Computadores: Uma 
Abordagem Quantitativa, 
Tradução da 3ª. Edição, 
1996, Morgan Kaufmann.
Abordagem de projeto guiada 
por análises de desempenho
Visão integrada de arquitetura 
e organização (ênfase em 
aspectos de arquitetura)
Texto mais avançado, voltado 
para projetistas de 
computadores
Avaliações
02 AVALIAÇÕES EM SALA DE AULA:
1ª. Avaliação (A1): 19/04/2005
2ª. Avaliação (A2): 30/06/2005
02 TRABALHOS (Grupos de 2 alunos):
T1: Estudo de arquitetura de computadores 
atuais – entrega: 12/05/2005
T2: Trabalho prático de programação – entrega/ 
demonstração: 28/06 a 05/07/2005 
Composição da nota final
Média(A1,A2) * 0,6 + Média(T1,T2) * 0,4 
Arquitetura Vs. Organização
Arquitetura
conjunto de instruções
conjunto de 
registradores
representação de 
dados
mecanismos de E/S
endereçamento de 
memória
Organização: Especifica 
as unidades operacionais 
e sua interconexão para 
implementação de uma 
determinada arquitetura
estrutura interna do 
processador
barramentos internos
tecnologia de memórias
interface com sistema de 
E/S
(Segundo Semestre)
Arquitetura Vs. Organização
Visões complementares
Arquitetura: independente de implementação
Organização: implementação específica
Escolhas em uma área têm influência na outra
Exemplo: Famílias de arquiteturas
IBM System 360
Intel 80x86
Questão chave: compatibilidade
Implementação (organização) pode ser diferente
Arquitetura vs. Organização
Exemplo atual: Pentium 4 vs. Celeron
Mesma arquitetura
Diferentes recursos de implementação
Cache interna, unidades de execução em paralelo, etc.
Fator custo
Organização Estruturada de 
Computadores
TANENBAUM:
Um modelo de abstração para facilitar o projeto e 
implementação de arquiteturas de computadores
Um computador é dividido em níveis ou camadas
Em cada nível, o computador pode ser programado 
utilizando a linguagem e os recursos daquele nível
Um nível pode ser visto como uma máquina virtual 
para execução de programas escritos no nível 
imediatamente superior
Organização Estruturada: 
Computadores multi-níveis
[Tanenbaum, 1999]
Níveis de representação
High Level Language 
Program
Assembly Language 
Program
Machine Language 
Program
Control Signal 
Specification
Compiler
Assembler
Machine Interpretation
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
lw $15, 0($2)
lw $16, 4($2)
sw $16, 0($2)
sw $15, 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 
°
°
ALUOP[0:3] <= InstReg[9:11] & MASK
O Limite Hardware / Software…
Hardware: circuitos integrados, placas de circuito 
impresso, cabos, fontes de alimentação, memórias, 
dispositivos de entrada e saída (I/O).
Software: algoritmos e sua representação 
computacional (programas).
Equivalência entre hardware e software:
funções tipicamente implementadas por software podem 
ser realizadas diretamente em hardware
funções tipicamente realizadas em hardware podem ser 
implementadas (ou simuladas) por software
➔ custo, velocidade, confiabilidade, freqüência de mudanças.
O Limite Hardware / Software..
SOFTWARESOFTWARE
O Limite Hardware / Software
instruction set
software
hardware
Exemplos de ISAs
Digital Alpha (v1, v3) 1992-97
HP PA-RISC (v1.1, v2.0) 1986-96
Sun Sparc (v8, v9) 1987-95
SGI MIPS (MIPS I, II, III, IV, V) 1986-96
Intel (8086,80286,80386, 1978-96 
80486,Pentium, MMX, ...)
ISA – Um exemplo concreto: 
MIPS R3000 
Categorias de instruções
Load/Store
Computacionais
Desvio
Ponto flutuante
co-processador
Gerenciamento de memória
Especiais
R0 - R31
PC
HI
LO
OP
OP
OP
rs rt rd sa funct
rs rt immediate
jump target
3 Formatos de Instruções: todos com largura de 32 bits
Registradores
Leitura Recomendada
Tanenbaum, Cap. 1
Patterson & Hennessy: Cap. 1

Outros materiais