Você está na página 1de 46

Aula 10 Processadores de Propsito

Geral
Anderson L. S. Moreira
anderson.moreira@recife.ifpe.edu.br

http://dase.ifpe.edu.br/~alsm

Anderson Moreira

Arquitetura de Computadores

O que fazer com essa apresentao

Anderson Moreira

Arquitetura de Computadores

O que um microprocessador?
Mquina completa de computao embutida em um
nico chip
Primeiro microprocessador foi
o Intel 4004 (1971). O 4004
no era muito poderoso, j
que ele s podia somar e
subtrair 4 bits por vez.
Mesmo assim, era incrvel ver
tudo isso em um nico chip
naquela poca.

Anderson Moreira

Arquitetura de Computadores

Introduo

Computadores do tipo IBM-PC so os mais populares e mais


difundidos mundialmente;

So usados preferencialmente no estudo de arquitetura de


computadores;

Intel 8086:
Lanado em 78 foi o primeiro a utilizar 16 bits de largura;

Anderson Moreira

Arquitetura de Computadores

Microprocessador
Primeiro microprocessador de um computador
pessoal foi o Intel 8080;
Era um computador de 8 bits completo dentro de
um chip (1974);
Primeiro microprocessador que se tornou
realmente popular foi o Intel 8088 (1979) e
incorporado em um PC IBM - que apareceu em
1982.

Anderson Moreira

Arquitetura de Computadores

Arquiteturas

Anderson Moreira

Arquitetura de Computadores

Arquiteturas

Anderson Moreira

Arquitetura de Computadores

Arquiteturas - CISC

Anderson Moreira

Arquitetura de Computadores

Arquiteturas - RISC

Anderson Moreira

Arquitetura de Computadores

Arquiteturas - RISC

Anderson Moreira

Arquitetura de Computadores

Arquitetura do Pentium

Anderson Moreira

Arquitetura de Computadores

Arquitetura do Pentium

Anderson Moreira

Arquitetura de Computadores

Registradores do 8086/8088

Possuem 8 registradores de uso geral:


4 de dados: AX, BX, CX, DX;
4 registradores de endereos: SP, BP, SI, DI;

4 registradores de segmentos:
CS, DS, SS, ES.

1 apontador de instrues (IP);

1 registrado de flags (F).

Anderson Moreira

Arquitetura de Computadores

Registradores do 8086/8088
15

8 7

AX
BX

AH

AL

CX

BH

BL

CH

CL

DH

DL

DX

acumulador
base
contador
dado

SP
BP

ponteiro para pilha


ponteiro base

SI

ndice fonte

DI

ndice destino
apontador de instrues
flags

IP
Flags
CS
DS

segmento de cdigo
segmento de dados

SS

segmento de pilha

ES

segmento extra

Anderson Moreira

Arquitetura de Computadores

Registradores de dados

Os quatro registradores de dados so denominados A, B, C, D:


A = acumulador
B = base
C = contador
D = dados

Quando usados como registradores de 16 bits acrescenta o X


Quando usados para 8 bits ganha o H (High) e o L (Low)
para indicar o byte dentro da palavra;

Anderson Moreira

Arquitetura de Computadores

Registradores de endereo

Acessam operandos da memria:


SP ponteiro da pilha (stack pointer)
BP ponteiro base (base pointer)
SI ndice de operando fonte (source index)
DI ndice de operando destino (destination
index)

Registradores SP e BP so usados para operaes na


pilha

Anderson Moreira

Arquitetura de Computadores

Registradores de segmentos

A memria do 8086 dividida em unidades lgicas chamadas


segmentos;
Cada segmento tem 64 Kbytes de comprimento;
Processador acessa 4 segmentos de cada vez atravs de 4
registradores de segmentos;
Os registradores armazenam os 16 bits mais significativos do
endereo de 20 bits;
Endereo base sempre mltiplo de 16;

Anderson Moreira

Arquitetura de Computadores

Evoluo dos microprocessadores - Intel


Nome

Data

Transistores

Mcron
s

Velocidade do
clock

Largura de
dados

MIPS

8080

1974

6.000

2 MHz

8 bits

0,64

8088

1979

29.000

5 MHz

16 bits
8-bit bus

0,33

80286

1982

134.000

1,5

6 MHz

16 bits

80386

1985

275.000

1,5

16 MHz

32 bits

80486

1989

1.200.000

25 MHz

32 bits

20

Pentium

1993

3.100.000

0,8

60 MHz

32 bits
64-bit bus

100

Pentium II

1997

7.500.000

0,35

233 MHz

32 bits
64-bit bus

~300

Pentium III

1999

9.500.000

0,25

450 MHz

32 bits
64-bit bus

~510

Pentium 4

2000

42.000.000

0,18

1,5 GHz

32 bits
64-bit bus

~1,700

Pentium 4
"Prescott"

2004

125.000.000

0,09

3,6 GHz

32 bits
64-bit bus

~7,000

Anderson Moreira

Arquitetura de Computadores

Dentro de um Microprocessador
Para entender o
funcionamento de um
microprocessador, temos de
entender a lgica utilizada
para se criar um;
Neste processo, vamos
aprender um pouco de
linguagem assembly (a lngua
nativa de um
microprocessador).

Anderson Moreira

Arquitetura de Computadores

Funcionamento
Um microprocessador executa uma srie de
instrues de mquina que dizem a ele o que fazer.
As trs funes bsicas de um processador so:
Utilizando ULA, o microprocessador pode
executar operaes matemticas como adio,
subtrao, multiplicao e diviso;
Um microprocessador pode mover dados de um
endereo de memria para outro;
Pode tomar decises e desviar para um outro
conjunto de instrues baseado nestas decises.

Anderson Moreira

Arquitetura de Computadores

Diagrama de Funcionamento

Anderson Moreira

Arquitetura de Computadores

Modos de endereamento 8086


Modo

Significado

Imediato

Operando na instruo

Registrador

Operando em registrador

Direto

Operando na memria, endereado por


deslocamento contido na instruo

Registrador
indireto

Operando na memria, endereado por


deslocamento contido em registrador

Indexado (ou
base)

Operando na memria, endereado pela


soma do registrador de ndice (ou base) com
o deslocamento contido na instruo

Base e
indexado com
deslocamento

Operando na memria, endereado pela


soma do registrador de ndice com o
contedo do registrador base e com o
deslocamento contido na instruo.

Anderson Moreira

Arquitetura de Computadores

Modos de endereamento 8086

O endereo final de um operando formado pela soma do


registrador de segmento (estendido para 20 bits) com o endereo
efetivo fornecido pelo modo de endereamento;
Exemplo com instruo ADD (soma) primeiro operando = primeiro
operando + segundo operando;
Imediato:
ADD CH, 5F
Registrador:
ADD BX, DX
Direto:
ADD WVAR, BX

Anderson Moreira

Arquitetura de Computadores

Modos de endereamento 8086

Registrador indireto:
ADD CX, [BX]
Indexado:
ADD [SI+6], AL
Base e indexado com deslocamento
ADD [BX+DI+5], DX

Anderson Moreira

Arquitetura de Computadores

Modos de Endereamento

Anderson Moreira

Arquitetura de Computadores

Modos de Endereamento

Anderson Moreira

Arquitetura de Computadores

Modos de Endereamento

Anderson Moreira

Arquitetura de Computadores

Modos de Endereamento

Anderson Moreira

Arquitetura de Computadores

Modos de Endereamento

Anderson Moreira

Arquitetura de Computadores

Detalhes
Microprocessadores Intel

Anderson Moreira

Arquitetura de Computadores

Intel 80286

Primeiros modelos operavam a 6 MHz, depois passaram para 8, 10,


12,5 e 16 MHz;
Internamente possui 4 unidades de processamento separadas
operando em paralelo;
EU unidade de execuo de instrues
BU unidade de acesso e controle do barramento (dados e
instrues)
IU unidade de decodificaes de instrues
AU unidade de formao de endereos (clculo de endereo
fsico)
286 a 6 MHz = 5X 8086 a 4,77 Mhz
Capacidade de gerenciar at 1GB de memria virtual;
Dois modos de operao modo real e modo protegido.

Anderson Moreira

Arquitetura de Computadores

Intel 80386

Apresenta caractersticas de mainframes em computadores pessoais:


Memria virtual, multiprogramao e multitarefa.
Vantagem: poder executar programas do 8086 sem sair do modo
protegido;
Arquitetura de 32 bits (registradores de 32 bits);
Barramento externo de endereo: 30 bits;
Barramento externo de dados: 32 bits configurveis para 16 bits;
Suporte de at 64 Tbytes de memria virtual;
Proteo de memria.

Anderson Moreira

Arquitetura de Computadores

Intel 80386

Apresenta 6 unidades de processamento:


EU unidade de execuo
BU unidade de acesso e controle do barramento
IU unidade de decodificaes de instrues
PU unidade de pr-busca
PgU unidade de formao de endereos (paginao)
SU unidade de formao de endereos (segmentos)

Duas ltimas responsveis pelo gerenciamento de memria virtual

Anderson Moreira

Arquitetura de Computadores

Intel 80486

Cache interna de 8 Kbytes;


FPU com as mesmas funes de um coprocessador 8087;
Acesso memria em modo rajada (simultnea);
Processador disponvel em 4 modelos bsicos:
DX
SX
DX2
DX4

Anderson Moreira

Arquitetura de Computadores

Pentium

Primeiro com barramento de 64 bits;


Suporta implementao de protocolo de coerncia
de cache em ambiente multiprocessado;
Dois pipelines para processamento de inteiros;
Um pipeline para processamento FPU;
Operaes em paralelo.

Anderson Moreira

Arquitetura de Computadores

Anlise Operacional

Anlise de uso de determinados recursos de mquina;

Aplicvel principalmente em CPU;

Pode ser usada em outras medies, clculo de estimativa de


rede;

Anderson Moreira

Arquitetura de Computadores

Anlise Operacional

Variveis operacionais para um determinado sistema (S)


T: Perodo de observao
K: Nmero de recursos do sistema
Bi: Tempo de ocupao do recurso i no perodo T.
Ai: Nmero total de solicitaes (ex:.chegadas) do recurso i no
perodo T.
A0: Nmero total de solicitaes (ex:.chegadas) ao sistema no
perodo T.
Ci: Nmero total de servios finalizados pelo recurso i no perodo
T.
C0: Nmero total de servios finalizados pelo sistema no perodo
T.

Anderson Moreira

Arquitetura de Computadores

Anlise Operacional

S
A0

K1
K4

K2
K5

K3
Kn

T
Anderson Moreira

Arquitetura de Computadores

C0

Anlise Operacional

Mtricas derivadas (derived measures)


Si: Tempo mdio de servio por finalizao relativa ao
recurso i; Si = Bi/Ci
Xi: throughput (ex.: finalizaes por unidade de tempo) do
recurso i; Xi = Ci/T

i: taxa de chegada (ex.: chegadas por unidade de tempo) ao


recurso i; i = Ai/T
X0: throughput do sistema; X0 = C0/T
Vi: Nmero mdio de visitas ao recurso i por solicitao; Vi =
Ci/C0

Anderson Moreira

Arquitetura de Computadores

Anlise Operacional

Leis Operacionais (derived measures)

Anderson Moreira

Arquitetura de Computadores

Anlise Operacional

Exerccios resolvidos
Suponha que ao se monitorar uma processador por um perodo
de 1 min, verificou-se que o recurso esteve ocupado por 36s. O
nmero total de transaes que chegaram ao sistema 1800. O
sistema tambm finalizou a execuo de 1800 transaes no
mesmo perodo.

1. Qual a taxa de chegada ao sistema (0)?


2. Qual o throughput do sistema (X0)?
3. Qual a utilizao da CPU(UCPU)?
4. Qual o tempo mdio por transaes finalizadas
pelo sistema (S0)?

Anderson Moreira

Arquitetura de Computadores

Anlise Operacional
CPU:

K=1

UCPU = BCPU/T = 36/60 = 0,6 = 60%


T = 1 min
A0 = 1800 transaes
C0 = 1800 transaes
BCPU = 36 s

S0 = Si = BCPU / CCPU = 36/1800 = 0,02 s

Obs.: Considerando
S0 = Si = SCPU
U0 = Ui = UCPU

0 = i = CPU

A0 = A1
B0 = B1

X0 = X1 = XCPU

0 = 1 = 1800/60 = 30

trs/s
X0 = X1 = 1800/60 = 30
trs/s

Anderson Moreira

Arquitetura de Computadores

Exerccios

A banda passante de um link de comunicao 56000 bps. Pacotes


de 1500 bytes so transmitidos ao link a uma taxa de 3 pacotes por
segundo. Qual a utilizao do link?
Para ilustrar o conceito de Service Demand considere o caso em que
6 transaes fazem 3 acessos (cada uma) a uma unidade de disco. Os
tempos de cada acesso so apresentados em ms.

Qual a Service Demand do sistema?

Anderson Moreira

Arquitetura de Computadores

Exerccios

Considere que um Web Server foi monitorado por 10 min e que a CPU
esteve ocupada por 90%. O log do Web Server registrou 30.000
solicitaes processadas. Qual a CPU Service Demand (DCPU) relativa
as solicitaes ao Web Server?

Procure informaes sobre a Arquitetura do Pentium:


Operaes em paralelo;
Cache;
BTB Branch Target Buffer;
FPU;
Otimizao;

Anderson Moreira

Arquitetura de Computadores

Bibliografia

Arquitetura de Computadores Pessoais, Raul Weber, 2 edio;


Arquitetura de Computadores, Andrew S. Tannembaum, 8
edio;
Fundamentos de Arquitetura de Computadores, Saib e Weber,
4 edio;

Anderson Moreira

Arquitetura de Computadores

Dvidas

Anderson Moreira

Arquitetura de Computadores

46

Você também pode gostar