Sei sulla pagina 1di 30

Arquitetura de Computadores

Prof. Fbio M. Costa Instituto de Informtica UFG


1o. Semestre / 2005

Programa e Introduo

Assunto do curso
Atributos de um sistema [de computao] que so visveis para o programador (...) e que tm impacto direto sobre a execuo lgica de um programa
Tanenbaum, 1999 Stallings, 2001

Arquitetura Vs. Organizao


Arquitetura
conjunto de instrues conjunto de registradores representao de dados mecanismos de E/S endereamento de memria

Organizao: Especifica as unidades operacionais e sua interconexo para implementao de uma determinada arquitetura
estrutura interna do processador barramentos internos tecnologia de memrias interface com sistema de E/S

Roteiro do curso...
Introduo
Arquitetura vs. Organizao de Computadores Organizao estruturada de computadores Interao com outras disciplinas

Roteiro do curso...
Fundamentos
Princpios de funcionamento de computadores Panorama das tecnologias atuais Tendncias tecnolgicas Princpios de projeto de computadores Anlise do desempenho de computadores Perspectiva histrica

Roteiro do curso...
Representao de dados
Nmeros inteiros sinalizados e no-sinalizados Operaes aritimticas Operaes lgicas Nmeros de ponto flutuante

Roteiro do curso...
Arquitetura de conjuntos de instrues
Classificao de conjuntos de instrues Endereamento de memria Tipos de operaes Tipos de dados (operandos) Formatos de instrues Controle de fluxo (procedimentos e sub-rotinas, interrupes)

Roteiro do curso...
Programao em Linguagem de Montagem
Viso geral do modelo de programao Arquiteturas representativas (nfase no 80x86) Exerccios de programao Outors aspectos da programao em Assembly: linkedio e carga de programas, macros, o processo de montagem, relocao de cdigo

Roteiro do curso...
Suporte ao Sistema Operacional
Conceitos bsicos de sistemas operacionais Escalonamento de processos Gerenciamento de memria

Roteiro do curso...
Entrada e Sada
Organizao bsica de entrada e sada Mtodos de transferncia de dados (polling, interrupes, DMA) Dispositivos de E/S

Interao com outras disciplinas


Antes:
Introduo Computao Sistemas Digitais

Depois:
Organizao de Computadores Sistemas Operacionais Compiladores

Disciplina bsica do currculo de Computao

nfase do curso
Entender o projeto de computadores existentes
fundamentao conceitual, perspectiva histrica e atualidades

Dar subsdios para melhor utilizar (programar) a mquina Aprender as tcnicas bsicas de projeto de computadores

Bibliografia
STALLINGS, W. Arquitetura e Organizao de Computadores, Traduo da 5 Edio, Prentice-Hall, 2002.
Trata tanto os aspectos de arquitetura quanto de organizao de computadores, fazendo uma clara distino entre eles Estudos de casos com duas arquiteturas reais: Pentium II e PowerPC

Bibliografia...
PATTERSON, D.A.; HENNESSY, J.L. Projeto e Organizao de Computadores: A Interface Hardware / Software, Traduo da 2a Edio, LTC, 2000.
Combina uma abordagem fortemente baseada em princpios com uma viso tecnolgica Ponto de vista
arquitetura = organizao + ISA

Bibliografia...
TANENBAUM, A.S. Organizao Estruturada de Computadores, Traduo da 4a Edio, LTC, 2001.

Abordagem clssica da organizao de computadores em camadas Tambm trata dos aspectos de arquitetura e organizao

Bibliografia...
WEBER, R.F., Fundamentos de Arquiteturas de Computadores, 2 Edio, Editora SagraLuzzatto, 2001.
Roteiro bsico para um curso introdutrio de arquitetura de computadores Abordagem evolutiva baseada em simuladores Precisa ser complementado com textos mais avanados

Bibliografia...
HENNESSY, J.L. and PATTERSON, D.A. Arquitetura de Computadores: Uma Abordagem Quantitativa, Traduo da 3. Edio, 1996, Morgan Kaufmann.
Abordagem de projeto guiada por anlises de desempenho Viso integrada de arquitetura e organizao (nfase em aspectos de arquitetura) Texto mais avanado, voltado para projetistas de computadores

Avaliaes
02 AVALIAES EM SALA DE AULA:
1. Avaliao (A1): 19/04/2005 2. Avaliao (A2): 30/06/2005

02 TRABALHOS (Grupos de 2 alunos):


T1: Estudo de arquitetura de computadores atuais entrega: 12/05/2005 T2: Trabalho prtico de programao entrega/ demonstrao: 28/06 a 05/07/2005

Composio da nota final


Mdia(A1,A2) * 0,6 + Mdia(T1,T2) * 0,4

Arquitetura Vs. Organizao


Arquitetura
conjunto de instrues conjunto de registradores representao de dados mecanismos de E/S endereamento de memria

Organizao: Especifica as unidades operacionais e sua interconexo para implementao de uma determinada arquitetura
estrutura interna do processador barramentos internos tecnologia de memrias interface com sistema de E/S (Segundo Semestre)

Arquitetura Vs. Organizao


Vises complementares
Arquitetura: independente de implementao Organizao: implementao especfica Escolhas em uma rea tm influncia na outra

Exemplo: Famlias de arquiteturas


IBM System 360 Intel 80x86 Questo chave: compatibilidade Implementao (organizao) pode ser diferente

Arquitetura vs. Organizao

Exemplo atual: Pentium 4 vs. Celeron


Mesma arquitetura Diferentes recursos de implementao
Cache interna, unidades de execuo em paralelo, etc. Fator custo

Organizao Estruturada de Computadores


TANENBAUM: Um modelo de abstrao para facilitar o projeto e implementao de arquiteturas de computadores Um computador dividido em nveis ou camadas Em cada nvel, o computador pode ser programado utilizando a linguagem e os recursos daquele nvel Um nvel pode ser visto como uma mquina virtual para execuo de programas escritos no nvel imediatamente superior

Organizao Estruturada: Computadores multi-nveis

[Tanenbaum, 1999]

Nveis de representao
High Level Language Program Compiler Assembly Language Program Assembler Machine Language Program

temp = v[k]; v[k] = v[k+1]; v[k+1] = temp;

lw $15, lw $16, sw sw
0000 1010 1100 0101 1001 1111 0110 1000

0($2) 4($2) $16, 0($2) $15, 4($2)


0110 1000 1111 1001 1010 0000 0101 1100 1111 1001 1000 0110 0101 1100 0000 1010 1000 0110 1001 1111

1100 0101 1010 0000

Machine Interpretation Control Signal Specification ALUOP[0:3] <= InstReg[9:11] & MASK

O Limite Hardware / Software


Hardware: circuitos integrados, placas de circuito impresso, cabos, fontes de alimentao, memrias, dispositivos de entrada e sada (I/O). Software: algoritmos e sua representao computacional (programas). Equivalncia entre hardware e software:
funes tipicamente implementadas por software podem ser realizadas diretamente em hardware funes tipicamente realizadas em hardware podem ser implementadas (ou simuladas) por software

custo, velocidade, confiabilidade, freqncia de mudanas.

O Limite Hardware / Software..

SOFTWARE

O Limite Hardware / Software

software

instruction set

hardware

Exemplos de ISAs
Digital Alpha HP PA-RISC Sun Sparc SGI MIPS Intel (v1, v3) (v1.1, v2.0) (v8, v9) (MIPS I, II, III, IV, V) (8086,80286,80386, 80486,Pentium, MMX, ...) 1992-97 1986-96 1987-95 1986-96 1978-96

ISA Um exemplo concreto: MIPS R3000


Categorias de instrues
Load/Store Computacionais Desvio Ponto flutuante
co-processador Registradores R0 - R31

Gerenciamento de memria Especiais

PC HI LO

3 Formatos de Instrues: todos com largura de 32 bits OP OP OP rs rs rt rt jump target rd sa immediate funct

Leitura Recomendada
Tanenbaum, Cap. 1 Patterson & Hennessy: Cap. 1

Potrebbero piacerti anche