Академический Документы
Профессиональный Документы
Культура Документы
www.eletricazine.hpg.ig.com.br
CURSO:
MICROPROCESSADORES
Ano: 2000
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Sumrio
- Histrico
- CPU, Memrias e Dispositivos de Entrada/Sada
- Sistema de Barramentos
- Arquitetura Padro de um Microprocessador
- Execuo de Instrues em Microprocessadores
- Algumas Instrues Importantes
- Capacidade de Interrupo
- Tcnicas de Entrada/Sada
Pgina 2
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 3
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
1972:
1974:
1976:
1977:
1978:
Dcada de 80:
1980:
1981:
1982:
1984:
1985:
1986:
1988:
1989:
Dcada de 90:
1991:
1992:
1993:
1995:
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
1997:
INTEL Pentium II
Tendncias:
Os prximos pargrafos procuram dar uma idia da nomenclatura utilizada no restante deste
documento e introduzir os componentes principais da arquitetura de microcomputadores ou de
circuitos controlados a microprocessador.
HARDWARE: consiste de circuitos eletrnicos responsveis pela execuo direta de instrues em
linguagem de mquina: CIs, placa impressa, cabos, fontes de alimentao, etc.
SOFTWARE: consiste de algoritmos e suas representaes no computador (programas).
FIRMWARE: consiste de um software embutido em circuitos eletrnicos.
comum dizer que qualquer operao feita por software pode tambm ser construda por hardware e
qualquer instruo executada pelo hardware pode tambm ser simulada por software.
Um sistema de microcomputador tpico mostrado na figura 1. Basicamente, so trs os
componentes de qualquer sistema controlado por microprocessador ou mesmo de um sistema de
computao: Unidade Central de Processamento (CPU), Memria e Dispositivos de Entrada/Sada
(E/S).
A CPU tem finalidade bvia, a de controlar o sistema como um todo. A memria serve para
armazenar os dados que sero manipulados e os dispositivos de E/S para a comunicao da
mquina com o mundo exterior (usurio).
Os vrios tipos de Memria so definidos a seguir:
RAM - "Random Access Memory": memria de leitura/escrita, voltil, para armazenamento
temporrio de programas e dados;
RAM Esttica - RAM com menor densidade e mais rpida que a RAM dinmica. No necessita de
circuitos adicionais em um microcomputador.
RAM Dinmica - RAM com maior densidade e mais lenta que a RAM esttica. Necessita de
circuitos adicionais de controle em um microcomputador.
ROM - "Read Only Memory": memria programada quando a pastilha fabricada, no podendo ser
modificada. usada para armazenamento permanente de programas e dados;
PROM - "Programmable ROM": memria programada por um dispositivo programador de PROM.
Programvel uma nica vez;
Pgina 5
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
EPROM - "Erasable PROM": memria que pode ser apagada e reprogramada vrias vezes. Apagvel
pela incidncia de raios ultra-violeta e programvel por um dispositivo programador de EPROM;
EEPROM - "Erasable Electrically PROM": memria EPROM eletricamente modificvel, sem
necessidade de dispositivos externos apagadores ou programadores.
Os Dispositivos de Entrada/Sada so os componentes que viabilizam a interface com o usurio,
tais como: portas seriais, portas paralelas, conversores anlogo-digitais, etc
Estes componentes so ligados atravs de um sistema de barramentos, o qual ser explicado na
prxima seo.
Microprocessador
(CPU)
Memria
RAM
Memria
EPROM
Barramento de Endereos
Barramento de Dados
Barramento de Controle
Interfaces
para
Memria
Secundria
Interfaces de
Interao c/
o Usurio
HD
Imp. Matricial
Monitor
Interfaces de
Controle e
Sensoreamento
CD-ROM R/W
Sensor
Vlvula
Modem
Scanner
Pgina 6
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Um sistema de barramentos definido como um conjunto fsico de linhas de sinal que possuem
funes especficas dentro do sistema.
O sistema de barramentos de um microcomputador composto de 3 barramentos (ver figura 1)
independentes em suas funes eltricas: o barramento de endereos, o barramento de dados e o
barramento de controle.
O Barramento de Endereos apenas de sada (em relao CPU) e define o caminho de
comunicao dentro do sistema.
O Barramento de Dados bidirecional, sendo o meio de comunicao entre os componentes do
sistema. Na sada de dados da CPU, estes so gerados pelo microprocessador (CPU) e enviados
uma unidade que selecionada pelo barramento de endereos. Na entrada de dados, estes so
gerados por uma unidade particular e enviados ao microprocessador.
O Barramento de Controle, como o prprio nome indica, envia e recebe os sinais de controle
necessrios transferncia de dados no sistema. Este barramento composto, basicamente, de 4
tipos de sinais: leitura de memria ativa, escrita de memria ativa, entrada atravs de dispositivo
externo ativo e sada atravs de dispositivo externo ativo.
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Barramento de
Dados
Buffer de
Dados
Acumulador
RI
Cdigo de
Instruo
Informao
Complementar
Decodificador
R1
SP
Apontador
de Pilha
..
.
PC
Contador de
Programa
Rn
Unidade Lgica e
Aritmtica (ALU)
Registradores de
Rascunho
Unidade de
Controle
S
Z
CY
AC
Buffer de Endereo
Sinais de
Controle
P
Flags
Barramento de
Endereos
Nesta seo sero dadas as explicaes bsicas para o entendimento dos microprocessadores
mais comuns do mercado.
Antes de mostrar o procedimento de execuo de instrues necessrio detalhar alguns aspectos:
os flags de condio, o formato das instrues e as operaes bsicas (de leitura e escrita) de um
microprocessador.
Flags de Condio:
Um "flag" "SETADO", forando-se o bit de flag para "1" e "RESETADO", forando-se o bit de flag
para "0". Quando uma instruo afeta um flag este alterado da seguinte maneira:
ZERO: Se o resultado da instruo tem valor 0,
Pgina 8
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
ento Z 1
seno Z 0;
CARRY: Se o resultado da instruo provoca um "carry" (na adio) ou um "borrow" (na subtrao ou
comparao),
ento C 1
seno C 0;
Cada microprocessador tem seus prprios bits de flag. Os flags anteriormente mencionados so os
mais comuns de serem encontrados na maioria dos microprocessadores.
Mostra-se a seguir o formato de instruo, por exemplo, de um microprocessador de 8 bits. A
partir deste entendimento, pode-se por analogia, entender o formato de instrues de outros
microprocessadores. Assim, o formato de instruo do INTEL 8085 utilizado como exemplo bsico.
Formato de Instruo e dado no 8085
1. Instrues de um byte
D7 D6 D5 D4 D3 D2 D1 D0
Cdigo de Operao
Ex.:
Obs.: O endereo do primeiro byte das instrues sempre usado como o endereo de instruo.
2. Instrues de dois bytes
D7 D6 D5 D4 D3 D2 D1 D0
Cdigo de Operao
D7 D6 D5 D4 D3 D2 D1 D0
Info. Complementar
Ex.:
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
D7 D6 D5 D4 D3 D2 D1 D0
Cdigo de Operao
D7 D6 D5 D4 D3 D2 D1 D0
Info. Complementar
D7 D6 D5 D4 D3 D2 D1 D0
Info. Complementar
Operao de Leitura:
Operao de Escrita:
Pgina 10
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
4. ("Descanso").
Obs.: A operao de leitura muito mais freqente que a operao de escrita.
Ciclo de Instruo
Cdigo de Operao
Informao Complementar
CICLO DE INSTRUO:
1. BUSCA
a) Envio de um endereo para a memria e execuo de uma leitura;
b) Incremento do registrador de endereo de instruo;
2. EXECUO
a) Decodificao do cdigo de operao;
b) Execuo da instruo;
3. VOLTA PARA FASE 1
--> Pode haver desvio:
- Incondicional: o valor do registro de endereo de instruo alterado;
- Condicional: se a condio satisfeita, a seqncia linear interrompida.
importante ressaltar que cada ciclo de instruo composto por vrios ciclos de mquina..
A figura 3 procura ilustrar o procedimento de execuo de um pequeno programa, passo-a-passo, j
armazenado na memria e a figura 4 mostra, sob a forma de diagrama de tempo, a execuo da
instruo LDA 0420, com todos os seus ciclos de mquina e perodos de relgio.
Pgina 11
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Porta de
Entrada 01
5
Acumulador
16
Registrador de
Instruo
Microprocessador
1
3
6
8
12
14
Endereo
0100
0101
0102
0103
0104
0105
0106
0107
Contedo
IN
01
STA
00
20
OUT
10
...
2
4
7
9
13
15
Memria de Programa
10
Endereo
2000
2001
2002
2003
Contedo
A
11
Memria de Dados
16
Porta de
Sada 10
16
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
T1 T2 T3 T4 T5
T1 T2 T3 T4 T5 T 1 T2 T3 T4
T5 T1 T2 T 3 T 4 T 5
Fase
Busca
Exec.
Busca
Exec.
Busca
Exec.
Busca
Exec.
Ciclo
Ciclo
M1
Ciclo
M2
Ciclo
M3
Ciclo
M4
Oper.
RI <- LDA
No
Usado
No
Usado
RI <- 20
No
Usado
PC
1001
->1002
1003
1004
Busca do
Cdigo de
Operao da
Instruo e
Transferncia
deste cdigo
para o
Registrador de
Instruo (RI)
RI <- 04
1002
->1003
Busca do
primeirobyte do
endereo e
transferncia
para dentro da
parte de
endereo do RI,
byte demenor
ordem
Busca do
segundobyte
do endereo e
transferncia
para dentro da
parte de
endereo do RI,
byte demaior
ordem
Bar.
A <Dados (0420)
<-(0420)
1004
A parte de
endereo do RI
depositada no
barramento de
endereos
Acumulador
recebe o contedo
da posio de
memria, cujo
endereo 0420
RI
Pgina 13
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
"COMPLEMENTs"
dados
entre
Grupo de Salto
"JUMPs", "CALLs" e "RETs" condicionais ou incondicionais;
Grupo de Instrues de Pilha, E/S e Controle de Mquina
Inclui instrues de manuteno de pilha, leitura escrita na/da memria, "seta" ou l mscaras de
interrupo, seta ou limpa "FLAGs"
Uma das tcnicas de Entrada/Sada de dados mais utilizadas na atualidade a Interrupo. Seu uso
aplica-se tanto em computadores de um modo geral, como tambm no ambiente de automao
industrial.
INTERRUPO (IRQ) um sinal de hardware enviado por um dispositivo perifrico necessitando de
imediata ateno da CPU. A utilizao desta tcnica, forosamente, envolve sinais de hardware.
comum em softwares de apoio tradicionais, como o Norton Utilities, observar a distino entre
Interrupes por Hardware e por Software. Segundo nomenclatura da INTEL, a diferena bsica que
na Interrupo por Hardware , o endereo de salto, para o qual o microprocessador ir desviar o
processamento predefinido pelo hardware do microprocessador, enquanto que na Interrupo por
Software, este endereo de salto pode ser alterado pelo usurio programador Assembly.
Um outro conceito relacionado as interrupes tambm merece ser comentado. o mascaramento
de Interrupes. Existem as Interrupes Mascarveis e as Interrupes No Mascarveis.
Quando as Interrupes so Mascarveis o processador tem a capacidade de no aceitar o pedido
de interrupo do perifrico, deixando-o pendente, de tal forma que possa atend-lo um tempo
depois. J nas Interrupes No Mascarveis, o processador no pode fazer isso, sendo obrigado a
atender imediatamente a solicitao de interrupo do perifrico.
A fim de exemplificar estes conceitos e subsidiar as explicaes sobre o mecanismo de Interrupo,
fornecida a seguir a sintaxe e a semntica de uma instruo bsica para o entendimento deste
mecanismo, a instruo RESTART.
Pgina 14
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
HEXADECIMAL
0000
0008
0010
0018
0020
0024
0028
002C
0030
0034
0038
003C
DECIMAL
0
8
16
24
32
36
40
44
48
52
56
60
RST
0
1
2
3
4
TRAP
5
5.5
6
6.5
7
7.5
Ex.: O 8085 possui 1 entrada e 1 sada que implementa este tipo de interrupo
INTR pino de entrada
INTA pino de sada
Pgina 15
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
NOME
PRIORIDADE
TRAP
0024H
RST 7.5
RST 6.5
RST 5.5
INTR
2
3
4
5
003CH
0034H
002CH
(2)
TIPO DE "TRIGGER"
Pulso Positivo amostrado
at Alto Nvel
Pulso Positivo "Latched"
Sensvel a Nvel (Alto)
Sensvel a Nvel (Alto)
Sensvel a Nvel (Alto)
(1) O processador coloca o contedo do Program Counter sobre a pilha, antes de saltar para o
endereo indicado
(2) - Depende da Instruo fornecida a CPU quando a Interrupo reconhecida
A figura 5 ilustra o mecanismo de Interrupo no 8085. A figura 6 mostra o mesmo para o ZILOG Z80
e a figura 7 exibe os circuitos integrados tpicos dos ambientes INTEL e ZILOG. importante
ressaltar a diferena entre os mecanismos de prioridade de interrupo das duas empresas.
Pgina 16
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
INTEL
8085
INTR
INTA
RST nn
Dispositivo
Perifrico
Ex.: RST 7
3
Endereo
0038
0039
003A
Dado
C3 (JMP)
00
80
1
INTR
6
Pilha
(SP)
02
60
Subrotina de Servio de
Interrupo
8000
...
...
RET
Pgina 17
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
___
INT
____
INTA
1
ZILOG
Z80
Dispositivo
Perifrico
Registrador da CPU
80
80
Pilha
(SP)
60XX
4
1 ___
INT
6
04
40
Subrotina de Servio de
Interrupo
6050
04
...
...
RETI
Tabela de Endereos de
Interrupo
8003
8004
50
8005
60
8006
Pgina 18
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
PIO
DMA
Barramentos
Z80
CPU
Mecanismo
"Daisy Chain"
CTC
SIO
Prioridade Fixa
8274
8253
Barramentos
8085
CPU
8259
(PIC)
8257
8272
Prioridade
Controlada
Pgina 19
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Alm da tcnica de Interrupo detalhada na seo anterior, existem duas outras tcnicas, tambm
muito utilizadas em sistemas de computao de um modo geral. So estas: "Polling" e Acesso
Direto Memria (ou DMA Direct Access Memory).
"POLLING": uma tcnica de Entrada/Sada de dados onde a CPU, explicitamente, consulta o
perifrico com o objetivo de saber se o mesmo possui dados para transmitir ou se est livre para os
receber. Esta tcnica no envolve sinais de hardware e pode ser implementada por software;
ACESSO DIRETO MEMRIA: uma tcnica de Entrada/Sada de dados onde a CPU no
participa do processo de transferncia de dados, exceto no seu incio e aps o seu trmino. Um
outro dispositivo perifrico necessrio, o chamado "Controlador de DMA", para assumir o controle
dos barramentos do sistema e controlar as transferncias de dados.
Na maior parte dos casos, o uso desta tcnica obriga o uso combinado das anteriores para que o
processo de transferncia de dados seja iniciado e terminado corretamente. A figura 8 ilustra passoa-passo o procedimento de transferncia de dados para a ou da memria, sem interferncia da CPU.
Memria
Disp. 0
Disp. 1
Barramentos
s
do
Da
CPU
HOLD
CDMA
3 HOLDA
DRQ
1
Disp. 3
Disp. 2
DACK
4
Driver ptico
1 DRQ Data Request: Solicitao de Acesso Direto Memria feito pelo dispositivo perifrico ao
Controlador de DMA (CDMA);
2 HOLD Hold Request: Solicitao de controle de barramentos feito pelo CDMA ao processador;
3 HLDA Hold Acknowledgement Resposta do processador ao CDMA, avisando que partir
daquele momento, este poder assumir o controle temporrio dos barramentos para a
transferncia de dados;
4 DACK Data Acknowledgement Resposta do CDMA ao dispositivo perifrico, avisando que
assumiu o controle dos barramentos e a transferncia de dados poder se iniciar.
A programao do CDMA consiste basicamente de informar o mesmo sobre o endereo inicial do
bloco de bytes a ser transferido, o sentido da transferncia e o tamanho de bloco ou o endereo final.
Depois que os comandos so fornecidos ao dispositivo perifrico o processo continua, sem
Pgina 20
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 21
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.1.1 Arquitetura
Unidade de Execuo
AH
BH
CH
DH
AL
BL
CL
DL
SP
BP
SI
DI
Unidade de Interface de
Barramento
0000
IP
CS
DS
SS
ES
0000
0000
0000
0000
Unidade de Controle de
Barramento
1
2
3
4
5
6
Status
Fila de Cdigo Objeto
de Instruo
Registrador de Instruo
Pgina 22
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Registradores do 8086/8088
Registrador
AX = AH + AL
BX = BH + BL
CX = CH + CL
DX = DH + DL
SP
BP
SI
DI
IP
Flags H + Flags L
CS
DS
SS
ES
Finalidade
Acumulador
Base (2 acumulador)
Contador (usado em instrues de mltiplas interaes)
Dado (algumas instrues movem dados de uma porta de E/S para a posio
de memria endereada por DX)
Apontador de Pilha
Apontador de Base
ndice Fonte
ndice Destino
Apontador de Instruo
Flags
Segmento de Cdigo
Segmento de Dados
Segmento de Pilha
Segmento Extra
Observaes:
1.
2.
3.
4.
Capacidade de Endereamento:
20 bits de endereamento => 1.0 Megabytes ou 512 Kwords
Operaes com: Bit, Byte, Word e Bloco
Organizao da Memria:
a) Fsica: => 2 x 512 Kbytes. End. mpar (D7 D0)
End. Par (D15-D8)
b) Endereamento relativo base de endereos de Registradores de Segmento: Code (CS),
Data (DS), Stack (SS) e Extra (ES).
Endereo
Registrador
Contedo
IP
CS
(IP+CS) Endereo Final
0MMMM
NNNN0
PPPPM
Pgina 23
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
XX
DS
(XX+DS) Endereo Final
0MMMM
NNNN0
DDDDM
XX
SS
(XX+SS) Endereo Final
0MMMM
NNNN0
SSSSM
XX
ES
(XX+ES) Endereo Final
0MMMM
NNNN0
DDDDM
Observaes:
1.
2.
Cada registrador de segmento (16 bits) identifica o incio de um segmento 64 Kbytes. Como so
4 (quatro) os registradores de segmento, pode-se selecionar apenas um de 4 segmentos de 64
Kbytes de cada vez. Isto significa que de 1 MBytes, tm-se apenas 1 de 16 possveis
segmentos endereveis diretamente (1 MBytes / 64 Kbytes = 16);
XX pode ser um registrador qualquer da CPU, como por exemplo: IP, quantidade de 16 bits, DI ou
SI, BX, BP, etc.
c) Posies de FFFF0-FFFFF (32 Bytes) reservadas para Reset => Aps o Reset, a CPU
executa sempre a instruo contida no endereo FFFFF0, onde normalmente existe um JUMP.
d) Posies de 00000-003FF (1024 Bytes) reservadas para operaes com Interrupo => 256
possveis vetores de interrupo;
Endereamento de Entrada/Sada
- 256 dispositivos diretamente;
- 64 Kbytes indiretamente
Tamanho dos Registradores Internos : 16 bits
Tamanho do Barramento de Dados: 16 bits
Coprocessador matemtico: 8087
IRQ 0
IRQ 1
IRQ 2
...
Pgina 24
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
1a. Instruo
Rotina de Servio
de Interrupo
IRET
Nmero de
Interrupo
003FF
x 4
IP
CS
Tabela de
Vetores de
Interrupo
00000
Pgina 25
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Uma das nicas diferenas entre os dois processadores a de que o barramento de dados no 8088
possui um comprimento de 8 bits (o barramento do 8086 de 16 bits). Este fato possibilitou aos
fabricantes de microcomputadores o aproveitamento quase total dos circuitos perifricos do 8080
(mais conhecidos e mais baratos), reduzindo sobremaneira o custo final da mquina. Como o 8086,
efetivamente, no era utilizado como um microprocessador de 16 bits, propagandeou-se em larga
escala que microcomputadores com CPU 8088 possuam o mesmo desempenho e mais baixo custo
do que mquinas com CPU 8086. A verdade que o momento era de transio para uma CPU mais
poderosa e os fabricantes de placas ainda no haviam tomado uma posio definitiva respeito.
Assim, o 8088 arquiteturalmente (rodava os mesmos programas) igual ao 8086, com a diferena
principal apenas no comprimento do barramento de dados.
2.2 O 80286
Pgina 26
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Registradores do 80286
Registrador
AX = AH + AL
BX = BH + BL
CX = CH + CL
DX = DH + DL
SP
BP
SI
DI
IP
Flags H + Flags L
CS
DS
SS
ES
Finalidade
Acumulador
Base (2 acumulador)
Contador (usado em instrues de mltiplas interaes)
Dado (algumas instrues movem dados de uma porta de E/S e a posio de
memria endereada por DX)
Apontador de Pilha
Apontador de Base
ndice Fonte
ndice Destino
Apontador de Instruo
Flags
Segmento de Cdigo
Segmento de Dados
Segmento de Pilha
Segmento Extra
Capacidade de Endereamento:
24 bits de endereo 16.0 MBytes
Operaes com: byte, word, double word, quad word, BCD, ASCII, apontador e ponto flutuante;
Relgio:
80286-4
80286-6
80286
80286x
Organizao de Memria:
2 x 8.0 MBytes;
a) fsica
b) Endereamento:
31
16 15
Seletor de Segmento
0
Offset
O seletor de segmento (16 bits) especifica um ndice dentro de uma tabela em memria residente
cujo contedo um endereo base de 24 bits. O endereo real de memria obtido com a soma
deste endereo base (24 bits) mais o offset (16 bits), totalizando 24 bits de endereo.
c)
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Endereamento de Entrada/Sada:
- 256 dispositivos diretamente;
- 64 Kbytes indiretamente
Tamanho dos Registradores Internos: 16 bits
Tamanho do Barramento de Dados: 16 bits
Coprocessador matemtico: 80287
Capacidade de Processamento de Instrues: aprox. 1.5 MIPS
(80286 a 8 Mhz)
2.3 - OS 80386
O microprocessador 80386 compatvel em software com o 8086. A INTEL optou por manter esta
compatibilidade para aproveitar toda a enorme base de software escrita para os 8086 e 80286. Sendo
Pgina 28
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
assim, o 386 executa a maioria dos programas escritos para o 8086 e 80286, simplesmente por que
este emula estas CPUs, no fazendo uso de todas as suas capacidades.
Primeiro microprocessador de 32 bits da INTEL, o 80386 trouxe um novo modo de operao, em
adio aos dois modos do 80286 (Real e Protegido), o modo Virtual. O microprocessador abordado
nos prximos pargrafos o 80386 mais potente da famlia, que na literatura chamado de
80386DX, ou 80386 "Full" ou ainda, como a INTEL o denominou, simplesmente, 80386.
A figura 11 mostra os registradores do 80386.
Registradores Gerais de
Endereo e Dados
31
15
7 0
AH
AL
BH
BL
CH
CL
DH
DL
SI
DI
BP
SP
Registradores Seletores
de Segmento
15
EAX
EBX
ECX
EDX
ESI
EDI
EBP
ESP
0
CS
SS
DS
ES
FS
GS
Cdigo
Pilha
Dados
Apontador de Instruo
e Registrador de Flags
IP
FLAGS
EIP
EFlags
No MODO REAL, o 80386 compatvel em software (a nvel de cdigo objeto) com o 8086/8088,
inclusive com a mesma limitao de memria (1.0 MBytes). Sendo a CPU mais evoluda em
hardware (p.e. registradores de 32 bits) e permitindo a utilizao de osciladores a cristal de
freqncias ainda mais altas que os 80286, sem dvida, mquinas com esta CPU possuem
desempenho bem maior que os 286. Assim, neste modo, o mecanismo de endereamento, o
tamanho de memria e a manipulao de interrupes so todos idnticos ao modo real do 80286.
As instrues 80386 tambm podem ser utilizadas neste modo.
No MODO PROTEGIDO, o 80386, se comporta exatamente como no modo de mesmo nome do
80286, sendo que enderear 4.0 Gigabytes de memria real (ao invs dos 16.0 MBytes do 80286)
e 64 Terabytes de memria virtual. Neste modo, o mecanismo de endereamento tambm diferente
daquele utilizado no 80286. Enquanto no 80286 o endereo base de 24 bits (aos quais so
adicionados 16 bits de offset), no 80386 este endereo de 32 bits (aos quais so adicionados 16
ou 32 bits de offset).
Quando operando no modo protegido, o 80386 pode fazer uso de uma tcnica chamada de
SEGMENTAO. Esta tcnica organiza a memria em mdulos lgicos chamados segmentos. Este
modo de gerenciamento de memria provm a base para a proteo de segmentos de memria. Por
Pgina 29
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
exemplo, uma tabela do sistema operacional pode residir em um segmento e, como tal, deve ser
protegido da interferncia de usurios no privilegiados, os quais poderiam "derrubar" o sistema.
Uma outra tcnica til de gerenciamento de memria para sistemas operacionais multitarefa em
memria virtual a tcnica chamada de PAGINAO. Independentemente da segmentao, a qual
modulariza programas e dados em segmentos de comprimento varivel, a paginao divide
programas em pginas uniformes mltiplas. Dessa forma, somente um pequeno nmero de pginas
de cada tarefa precisa estar na memria em um dado instante. A paginao til para o
gerenciamento da memria fsica do sistema.
O 80386 possui 4 nveis de proteo otimizados para suportar as necessidades de sistemas
operacionais multitarefa, os quais devem proteger e isolar programas de usurios, uns dos outros, e
programas do prprio sistema operacional, dos usurios. Tais nveis de proteo se constituem, em
outras palavras, em um sistema de privilgio hierrquico de 4 nveis:
PL=0 (mais privilegiado) - Ncleo do sistema operacional;
PL=1 - Servios do Sistema Operacional;
PL=2 - Extenses do Sistema Operacional e
PL=3 - Aplicaes.
Quando operando no MODO VIRTUAL, o 80386 permite a execuo simultnea de aplicaes 8086,
sistemas operacionais 8086 e suas aplicaes, aplicaes 80286 e, ainda, aplicaes 80386.
Assim, em um computador 386 multiusurio, uma pessoa pode estar rodando uma planilha DOS,
enquanto outra usa o DOS e uma terceira roda mltiplos utilitrios e aplicativos UNIX.
A MEMRIA CACHE um bloco de memria RAM (do tipo esttica) que, tendo tempo de acesso
menor que a memria principal (do tipo dinmica), pode ser lido muito mais rapidamente. Assim,
antes de se executar um programa que est na memria principal, a regio contendo o programa
transferida para a memria cache e s ento o programa executado. Isto reduz drasticamente o
tempo de acesso RAM e aumenta a velocidade de execuo dos programas. No 80386, o uso de
memria cache era opcional, isto , apenas algumas mquinas (dependendo do fabricante) incluam
uma pastilha controladora de memria cache, o 82385 (gerenciavam at 256 Kbytes), e sua incluso
implicava em um aumento da placa me. Esta pastilha s era encontrada nas ltimas verses
micros 386.
Caractersticas Principais:
Capacidade de Endereamento:
32 bits de endereo 4.0 Gigabytes
Operaes com: bit, campos de bit, string de bits, byte, word, double word, quad word, BCD, ASCII,
apontador e ponto flutuante;
Relgio:
80386-12
80386-16
80386x
80386x
Am386-40
12.5 Mhz
16.0 Mhz
20.0 Mhz
33.0 Mhz
40.0 Mhz
Organizao de Memria:
a) Fsica:
2 x 2.0 Gigabytes;
4 x 1.0 Gigawords;
8 x 0.5 Gigalongwords
b) Endereamento:
Pgina 30
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 31
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Fonte: "80386 High Performance Microprocessor with Integrated Memory Management", INTEL
Corporation - Advance Information, october 1985;
Alm das diferenas anteriormente mencionadas, pode-se ainda citar algumas outras:
1.
O tempo de execuo das instrues diferente em vrios casos. Na maior parte, o 386 mais
rpido que o 286;
2.
Existem vrios cdigos indefinidos no 286 que, se executados, provocariam uma falha de cdigo
(INT 6). No 386 a instruo ser executada;
3.
O prefixo LOCK (impede que outros dispositivos acessem a memria do processador) para o
8086 irrestrito, mas para o 386 proibido em vrias instrues. O problema era que o uso
indiscriminado do LOCK resultava em que dispositivos eram inibidos por perodos
inaceitavelmente longos. No ambiente no protegido do 8086, cabia s aplicaes no deixar que
isto ocorresse. No ambiente protegido do 386, apenas algumas instrues podem ser precedidas
deste prefixo, quelas que no interferem com a velocidade de execuo de tarefas.
O 80386SX podia ser interfaceado a circuitos perifricos de 16 bits, mas roda os softwares de 32 bits
escritos para o 386, pois sua arquitetura interna de 32 bits. O seu barramento de dados de 16
bits (a metade dos 32 bits do 80386). Enderea at 16 MBytes de memria real (bem menos que os
4 Gigabytes do 80386). Era comercializado pela INTEL com relgio mximo de 20 Mhz (o 80386 era
encontrado com relgio de 33 Mhz). Sua capacidade de execuo de instrues varia entre 3 e 4
MIPS (menos da metade dos 11,4 MIPS do 80386 a 33 Mhz). O coprocessador utilizado com o
386SX era o 80387SX.
O 80386SL era um microprocessador tambm derivado do 80386 e foi projetado especialmente para
uso em computadores portteis ("Lap Tops"). Esta pastilha foi o resultado da integrao de trs
circuitos: a CPU 386SL, um controlador de barramento e um controlador de vdeo grfico, diminuindo
assim, o tamanho e o peso do equipamento, alm de proporcionar uma caracterstica particular de
economia de energia. A memria real enderevel do 386SL era de 32 MBytes (16 MBytes a mais
que o 386SX), sua freqncia de operao era de 20 Mhz e o barramento de dados de 16 bits (como
no 386SX). A unidade gerenciadora de energia era capaz de baixar a zero a atividade na CPU,
enquanto se l a tela do micro ou no intervalo da digitao. A aplicabilidade do 386SL em "lap Tops"
foi indiscutvel.
Com base nas explicaes fornecidas nos itens anteriores pode-se dizer o seguinte:
A exemplo do que ocorreu com o 80286 em relao ao 8086, sistemas de microcomputador
baseados no 80386, paulatinamente, passaram de servidores a desktops. Uma verso do Netware da
Novell, a verso 3.12, at os dias atuais muito utilizada, usa toda a capacidade deste
microprocessador, uma vez que foi escrita em C e assembly 386.
Pgina 32
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.4 - OS I486
A INTEL, segundo deciso da justia dos EUA, no pode registrar nmeros, 386 e 486 p.e., como
suas marcas. Optou ento, por acrescentar um "i" (i minsculo) na frente dos nmeros. Assim, 486,
80486 ou i486 eram nomes encontrados na literatura para designar o mesmo processador.
Inicialmente ser abordado o i486 e em seguida o i486SX.
A arquitetura interna do i486 foi otimizada em relao ao 80386 ou i386. Isto possibilitou a introduo
na pastilha de algo acima de um milho de transistores (quatro vezes mais que o i386 possui). Os
fabricantes de computadores foram diretamente beneficiados por esta densidade de integrao, uma
vez que a placa me sofreu uma reduo significativa de tamanho e o processo de projeto e
montagem foi simplificado. Tambm o microcdigo de instrues foi otimizado, de forma a manter o
mximo possvel as operaes no interior da pastilha e, consequentemente, eram necessrios
menos ciclos de relgio para executar as mesmas instrues que o i386 j executava. O 486 usa
ambas as bordas do sinal de Relgio para a CPU, enquanto os 286 e 386 usavam apenas uma
borda.
Pode-se dizer que, a grosso modo, o ganho de desempenho veio, essencialmente, da memria
cache e do coprocessador (essencial em ambientes de CAD/CAM). Entretanto, em ambientes de
microinformtica, considerados mais simples, que usam planilhas e bancos de dados, o ganho de
desempenho com o uso do coprocessador foi praticamente nulo.
O i486 incorpora o i386 com as suas instrues, memria cache de 8 Kbytes de RAM esttica (mais
rpida que a dinmica) e gerenciador prprio (80385) e coprocessador aritmtico (80387). Foram
adicionadas ao conjunto de instrues do i386 cinco instrues: trs para gerenciamento da
memria cache e duas, includas a pedido da Microsoft, para tratamento de tarefas concorrentes
pelo OS/2. Como no i386, a pastilha enderea diretamente at 4.0 Gigabytes e indiretamente at 64
Terabytes.
Pgina 33
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Conclui-se destes dados que o cache interno extremamente importante, mesmo sendo muito
menor que o externo. Isto se deve a sua lgica de construo e, obviamente, ao fato de estar dentro
da prpria pastilha de CPU.
Quando se carrega um programa na memria cache e este executado, considera-se que isto um
"acerto" e cada vez que se deve movimentar um bloco da memria principal para a RAM de cache,
considera-se que isto um "erro". Existe, portanto, uma taxa de acertos ("Hit Rate") relacionada
com o tamanho da memria cache. Um cache externo maior, evidentemente, possibilitar uma
melhor taxa de acertos, uma vez que poder conter mais programas. Assim, a velocidade do cache
interno aliada a uma melhor taxa de acertos provida pelo cache externo, possibilitar um melhor
desempenho da mquina como um todo.
Sobre o i486SX
O i486Sx foi lanado pela INTEL para fazer frente a concorrncia acirrada do microprocessador
Am386-40 de 40 Mhz da Advanced Micro Devices (AMD), mais veloz que o seu microprocessador
mais rpido, o i386 33 Mhz. Deve-se entender o "SX" com uma verso desprovida de algo que sua
verso completa, ou "full", ou ainda "DX", continha.
O i486SX possui um barramento de dados de 32 bits, exatamente como o i486. Isto no aconteceu
com o i386SX, o qual possui 16 bits para dados, 16 a menos que i386. Basicamente, o i486SX opera
a uma taxa de relgio de 20 Mhz e possui uma unidade de ponto flutuante interna (como o i486),
mas esta encontra-se desativada. Estes dois fatores levaram a uma diminuio no custo da pastilha
de 60% em relao ao i486. O i486SX, mesmo a 20 Mhz segundo a INTEL, era 45% mais rpido que
o i386 (33 Mhz), com um custo apenas 17 % superior. J o i486 25 Mhz era 20% mais rpido que o
i486SX (20 Mhz) e custava 270% mais caro (custo em maro de 1992). Um quadro exibido pela
revista Micro Sistemas em maro de 1992 mostrava o seguinte:
CPU (clock)
i386 (33)
i486SX(20)
Custo (US$)
MIPs
214
250
11,4
16,5
18,77
15,15
Pgina 34
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
i486 (25)
671
20,0
33,55
Em junho de 1991 a INTEL lanou o i486 50 Mhz e somente em junho de 1992 a revista PC
Magazine americana publicou testes de desempenho sobre as primeiras mquinas fabricadas com
esta CPU. Antes desta CPU, a lder em desempenho da INTEL era o i486 33 Mhz. Segundo a citada
revista, o i486/50 30% mais rpido que i486/33 a um custo (naquele ano) 10 a 20% maior. Uma
observao importante que mquinas equipadas com esta CPU definitivamente no eram baratas,
mas a relao custo beneficio em relao ao i486/33 era atraente. Isto significou, em outras palavras,
que se algum estivesse disposto a pagar o preo de uma mquina 486/33, era melhor que o fizesse
por uma i486/50, em funo da melhor relao custo/benefcio.
Em maro de 1992 a INTEL anunciou as chamadas pastilhas "Speed-Doubler". Tais pastilhas
introduziram opes de preo e desempenho nos i486. Uma dessas opes, o i486DX2/50 que
opera internamente a 50 Mhz, mas comunica-se com os barramentos a 25 Mhz. Isto permite o
projeto de sistemas baseados, externamente, no i486 25 Mhz, facilitando mais uma vez o dia-a-dia
dos fabricantes de micro e minicomputadores. A segunda opo a pastilha "full" i486DX/50. Esta
pastilha 30% mais rpida que a anterior.
Em linhas gerais, pode-se dizer que para mquinas necessitando de uma atividade de Entrada/Sada
intensa, como servidores de arquivos p.e., o i486DX2/50 no seria a primeira escolha. J para
mquinas "stand-alone" em ambientes de CAD/CAM esta seria uma boa escolha.
O i486DX/50 contm basicamente a mesma lgica de processador que o i486DX/33, com
coprocessador, 8 Kbytes de cache e 1,2 milho de transistores, mas houve alguns refinamentos
tcnicos na parte de 50 Mhz, a qual usa um projeto de pastilha de trs camadas e no de duas
camadas como o i486DX/33.
Algumas Observaes:
Os problemas relacionados a estes microprocessadores so a quantidade de calor desprendida, que
precisa ser dissipada, e a emisso de sinais de alta frequncia, podendo tambm sofrer
interferncias do meio ambiente, como o caso das televises que emitem sinais na faixa de 54 a
890 Mhz. A partir dos i486, os fabricantes iniciaram a utilizao de ventiladores acoplados aos
dissipadores, para reduzir os efeitos da alta temperatura. Tambm alguns gabinetes so
comercializados com algum tipo de blindagem interna de modo a minimizar a influncia das
frequncias externas.
Com a crescente demanda do mercado por redes de computadores e, consequentemente, por
equipamentos de gerenciamento e interconexo de tais redes, observou-se que as CPUs de pontes
Pgina 35
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Os Pentium
Essencialmente, o Pentium consiste de dois processadores i486 em paralelo. Logo, mais instrues
so processadas ao mesmo tempo, tipicamente, o dobro. Pode-se destacar algumas caractersticas
importantes.
Pipelines
O microprocessador Pentium construdo em torno de 2 pipelines (ou Pipes) inteiros (U e V),
paralelos, de propsito geral e 1 unidade com pipeline, de ponto flutuante. O pipe U chamado
de Principal e o pipe V chamado de Secundrio. O Pipe U possue algumas limitaes sobre
instrues que executa. Os dois Pipes tem cinco estgios cada um, como mostrado na figura 12.
O Pentium pode buscar at 2 instrues por ciclo. Durante a execuo de uma instruo, as
prximas duas instrues so testadas. Se possvel, a primeira executada no Pipe U e a Segunda
no Pipe V. Se no possvel, uma instruo passada ao Pipe U e nenhuma instruo passada
ao Pipe V. O comportamento funcional das instrues nos dois Pipes exatamente o mesmo de
instrues executadas sequencialmente.
Caches
O Pentium possui um subsistema de cache interno com 2 conjuntos (um para instruo e outro para
dados) de caches associativos de 8 Kbytes. Como o cache de dados disposto em 8 bancos, este
pode ser acessado simultaneamente por ambos os Pipes, desde que as referncias sejam para
bancos diferentes.
Pgina 36
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Prefetch
(PF)
Estgio de
Decodificao 1
(DS1)
Pipe U
Pipe V
Estgio de
Decodificao 2
(DS2)
Estgio de
Decodificao 2
(DS2)
Execuo
Execuo
Writeback
Writeback
Write Buffers
O Pentium possui 2 buffers de escrita, um para cada Pipe (U ou V). A finalidade desses buffers
aumentar o desempenho de escritas consecutivas na memria. Esses buffers de 64 bits so
carregados simultaneamente em um perodo de relgio. Escritas nesses buffers so enviadas para o
barramento externo do processador. Tais operaes de escrita acontecem sempre na ordem em que
ocorrem. No so possveis leituras intermedirias.
Pgina 37
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
X1
Prefetch
(PF)
Estgio de
Decodificao 1
(DS1)
Estgio de
Decodificao 2
(DS2)
X2
WF
Execuo Writeback
Os Pentium MMX
Os microprocessadores Pentium com tecnologia chamada pela INTEL de MMX (algo como
Multimedia Extensions) trouxeram quatro enriquecimentos bsicos de projeto arquitetnico:
1.
2.
3.
4.
Arquitetura SIMD;
4 novos tipos de dados.
8 registradores MMX de 64 bits e
57 novas instrues;
Como a prpria INTEL propagandeia, esta mudana na arquitetura do processador foi a mais
importante desde o 80386, o qual extendeu a arquitetura de 16 para 32 bits e introduziu trs modos
de funcionamento (real, protegido e virtual). Como de fato se verificou, tais mudanas foram
incorporadas a todas as geraes de processadores subsequentes da empresa.
Segundo a INTEL, a definio desta tecnologia foi resultado de trabalho conjunto entre arquitetos de
microprocessadores e desenvolvedores de software. Dentre os softwares analisados, incluiram-se
Grficos, Vdeo MPEG, Sntese de msica, compresso de voz, reconhecimento de voz,
Pgina 38
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Tipos de dados pequenos e inteiros (por exemplo: pixel grfico de 8 bits, amostras de
udio de 16 bits);
Loops pequenos altamente repetitivos;
Multiplicaes e acumulaes frequentes;
Algoritmos de computao intensiva;
Operaes altamente paralelas.
Assim, foi projetado um grupo de instrues novo, com instrues inteiras de propsito geral, visando
a otimizao do processamento de tais aplicaes.
Arquitetura SIMD (Single Instruction Multiple Data)
Tcnicas SIMD foram utilizadas de forma a permitir que mltiplas peas de informao pudessem ser
processadas com uma nica instruo, provendo um certo paralelismo, reduzindo loops de
computao intensiva e, consequentemente, aumentando o desempenho de aplicaes multimdia e
de comunicaes.
Novos Tipos de Dados
O tipo de dado principal da arquitetura MMX um pacote inteiro de ponto fixo, onde mltiplas
palavras inteiras so agrupadas em uma nica quantidade de 64 bits. Estes pacotes so
manipulados por registradores MMX de 64 bits.
Como exemplo de benefcio pode-se citar o pixel, geralmente representado em inteiros de 8 bits, ou
bytes. 8 desses pixels podem ser empacotados em uma nica quantidade de 64 bits e movidos
para um registrador MMX. Uma instruo MMX ao ser executada, busca 8 pixels de uma s vez, faz
as operaes lgicas e aritmticas sobre os oito elementos e escreve o resultado em um outro
registrador MMX.
A figura 14 exibe os novos tipos de dados do Pentium MMX.
Pgina 39
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
31
31
31
Registradores MMX
A figura 15 exibe o layout dos oito novos registradores MMX
Campo
TAG
63
0
MM7
MM0
Pgina 40
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Novas Instrues
As instrues MMX cobrem vrios grupos funcionais, incluindo:
1.
2.
3.
4.
5.
6.
As instrues lgicas e aritmticas so projetadas para suportar diferentes tipos de dados. Tais
instrues possuem um cdigo de operao para cada tipo de dado suportado. Como resultado, as
novas instrues so implementadas com 57 cdigos de operao. Um aspecto importante que
instrues
MMX
no
so
privilegiadas,
podendo
ser
usadas
em
aplicaes,
codificadores/decodificadores, algoritmos e drivers.
Categoria
Aritmtica
Comparao
Converso
Mnemnico
Nr. De Cdigos de
Operao Diferentes
Descrio
PADD [B,W,D]
PADDS [B,W]
PADDUS [B,W]
PSUB [B,W,D]
PSUBS [B,W]
PSUBUS [B,W]
PMULHW
PMULLW
PMADDWD
1
1
1
PCMPEQ
[B,W,D]
PCMPGT
[B,W,D]
PACKUSWB
PACKSS
[WB,DW]
PUNPCKH
[BW,WD,DQ]
3
1
Pgina 41
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Lgicas
PUNPCKL
[BW,WD,DQ]
PAND
PANDN
POR
PXOR
PSLL [W,D,Q]
PSRL [W,D,Q]
PSRA [W,D]
1
1
1
1
6
Shift
4
1
Pipeline Superescalar
Os Pentium MMX adicionam mais estgios ao pipeline. A integrao do Pipe MMX com o Pipe de
inteiros muito similar a do Pipe de Ponto Flutuante. A Figura 16 mostra esta estrutura de pipeline.
Os Pentium MMX adicionam um estgio de pipeline inteiro. Os bytes de instruo so prebuscados
do cache de cdigo no estgio de prebusca PF e passados ao estgio de busca F. Quaisquer
prefixos so decodificados no estgio F.
Pgina 42
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
PF
DS1
DS2
MR/W
Mex
WB
E1
E2
E1
E2
WM/M2
M3
WMul
E3
O estgio F desacoplado da decodificao de instrues por meio de um buffer FIFO (First In,
First Out), o qual est situado entre os estgios F e D1 (Decode 1). Esta FIFO mantm at 4
instrues.
A cada perodo de relgio, 2 instrues so colocadas nesta FIFO. Pares de instruo so
colocados para fora de F e dentro de D1. Uma vez que a taxa mdia de execuo de instrues
menos que duas por clock, a FIFO est normalmente cheia. Quando a FIFO est cheia, esta deve
bufferizar qualquer freio que pode ocorrer durante a busca de instruo. Esta FIFO previne, o
estgio de Execuo do pipe, de um freio na execuo de instrues.
Para ilustrao, o tipo de dado ser uma palavra de 16 bits (word), contudo a maioria das operaes
pode ser realizada para 8 e 32 bits.
A figura 17 mostra uma operao de adio (PADD[W] - Add with wrap-around on [word]). So
realizadas 4 adies de 8 elementos de 16 bits. Cada uma independente da outra e em paralelo.
Neste caso, o resultado mais direta excede o valor mximo representvel em 16 bits e o 17 bit
perdido.
Pgina 43
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
a3
a2
a1
FFFF
b3
b2
b1
8000
A figura 18 mostra uma outra operao de adio (PADDUS[W] - Add unsigned with saturation on
[word]). Neste caso, uma saturao ocorre. Saturao significa que se a adio resulta em
overflow ou a subtrao em underflow, o resultado alterado para o maior ou para o menor valor
representvel, respectivamente. Para uma operao sem sinal, com uma palavra de 16 bits, o maior
e o menor valor so: FFFFh e 0000h. Isto importante para clculos de pixels, onde a perda do 17
bit poderia causar um pixel preto logo aps um pixel branco em um grfico 3D.
a3
a2
a1
FFFF
b3
b2
b1
8000
Pgina 44
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Giro e Escala
Translao
x'
a0
a1
a2
a3
y'
b0
b1
b2
b3
c0
c1
c2
c3
d0
d1
d2
d3
z'
w'
Perspectiva
Os Pentium PRO
Diferentemente dos 5 estgios do Pentium. O Pentium PRO possui um pipeline de 12 estgios,
desacoplado. Isto lhe confere um desempenho 33% superior ao Pentium comum. Sua
microarquitetura superescalar torna possvel a execuo de 2 instrues por clock. A figura 20
detalha este pipeline.
O Pipeline do Processador Pentium PRO possui 3 unidades que se comunicam atravs de um Pool
de Instrues: A Unidade de Busca/Decodificao (ou Front-End), a Unidade de
Despacho/Execuo (ou Core) e a Unidade de Retiro (ou Retire). A figura 21 exibe a ligao entre
estas unidades.
Port
2
BTB
0
BTB
1
IFU0
IFU1
IFU2
ID0
ID1
RAT
ROB
Rd
Port Port
4
3
ROB
Wb
RS
RRF
Port
0 Port
1
Pgina 45
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Unidade de
Busca/
Decodificao
Unidade de
Despacho/
Execuo
Unidade de
Retiro
Pool de
Instrues
Pgina 46
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Barramento
de Sistema
Cache L2
Cache de
Instrues L1
Unidade de
Busca/
Decodificao
Cache de Dados L1
Unidade de
Despacho/
Execuo
Unidade de
Retiro
Pool de
Instrues
Pgina 47
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Arquitetura Superscalar
Arquitetura Superscalar uma microarquitetura capaz de sinmultaneamente buscar, decodificar e
executar mltiplas operaes inteiras por perodo de relgio. Tipicamente o Pentium PRO percebe
entre 20 e 30 instrues na frente do IP (Instruction Pointer).
Pgina 48
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.5.2 Benchmarks
Pgina 49
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 50
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.6 - OS PENTIUM II
Cache interno L1 32 Kbytes (16 K para instrues + 16 K para dados). Cache duas vezes maior
que o do Pentium PRO;
Cache externo L2 de 512 Kbytes em velocidade (half speed), fazendo parte do cartucho de
metal e plstico que inclui o ncleo da CPU;
Tecnologia de Processo de fabricao CMOS de 0,35 microns. A verso de 333 MHz usa o
processo de 0,25 microns;
Encapsulamento em cartucho SEC (Single-Edge Contact) de 242 pinos, diferentemente do
Pentium PRO, o qual usava soquete ZIF (Zero Force Insertion);
Suas primeiras verses, com arquitetura idntica, operam nas velocidades de 233, 266, 300 e
333 MHz. Verses a 350 e 400 MHz, trazem ligeiras diferenas;
Opera na velocidade interna de 66 MHz FSB (Front-Side Bus), exatamente como o Pentium
PRO;
Possui 5 unidades de execuo, como no Pentium PRO;
Alimentao de 2,8 Volts;
Endereamento fsico de at 64 Gigabytes;
7,5 milhes de transistores integrados;
Suporte para at 2 processadores em uma placa, permitindo o multiprocessamento simtrico
(SMP);
Segundo a INTEL, sua arquitetura foi otimizada para aplicaes de 32 bits;
Usa a interface de barramento chamada SLOT 1, diferentemente do Socket 7 do Pentium MMX.
A interface SLOT 1 dever ainda ser usada at o incio do ano 2000 em verses mais avanadas
deste processador, tais como o Katmai 450 e 500 MHZ e o Coppermine 533 a 6xx MHz;
2.6.2 - Benchmarks
A Figura 24 apresenta o iCOMP 2.0 (Benmchmark Multimdia da INTEL) para vrias verses do
Pentium II, excluindo-se a verso de 333 MHz. Em seguida exibida na Figura 25, uma CPU
Pentium II na presena de uma interface de acelerao grfica AGP (Advanced Graphics Port).
Pgina 51
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 52
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 53
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Linha Pentium II
1.
Pentium II - KLAMATH
Pgina 55
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.
Pentium II - DESCHUTES
3.
4.
5.
Pentium II - XEON
Ncleo do DESCHUTES;
Processo de fabricao CMOS de 0,25 microns;
512 KB ou 1 MB de Cache L2, full speed (operando na mesma velocidade do ncleo), fora da
pastilha, em 400 MHz;
100 MHz FSB em SDRAM;
Arquitetura Dual, P6;
4 GB de RAM Principal e 64 GB de RAM enderevel.
6.
Pgina 56
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
7.
Pentium II - CASCADES
Linha CELERON
1.
2.
Pgina 57
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Os barramentos ISA 8 bits e ISA 16 bits foram os barramentos utilizados pelos primeiros
microcomputadores realmente populares do mercado. A sigla ISA significa Industry Standard
Architecture. Os famosos PCs XT utilizavam o ISA 8 bits, que suportava placas de expanso
contendo um nico pente. J o ISA 16 bits suporta placas de expanso contendo dois pentes
separados por uma ranhura. Este barramento tambm conhecido no jargo tcnico como AT. Os
famosos XTs baseava-se em CPUs 8088 ou 8086. J os PCs AT baseavam-se em CPUs 80286,
80386 e at i486.
Na arquitetura ISA, a comunicao com os perifricos gerenciada pelo microprocessador e
realizada atravs de canais de E/S. As transferncias se davam de 16 em 16 bits (tamanho do
barramento de dados) a uma frequncia de apenas 8 MHz, mesmo na presena de um processador
mais rpido, como por exemplo, o 486DX4/100. Isto se tornou um problema com o aumento da
velocidade dos microprocessadores. A taxa de transferncia fica restrita a 1 MBytes/segundo.
Surgiram ento novas propostas de barramento principal para os microcomputadores do mercado,
entre as quais as propostas EISA e MCA.
O Barramento EISA ("Extended Industry Standard Architecture") de 32 bits foi um produto
resultante da formao de um consrcio composto de fabricantes de "clones" ("Gang of Nine") ou a
Gang dos Nove, nominalmente: Wyse, AST Research, Tandy, Compaq, Hewlett-Packard, Zenith,
Olivetti, NEC e Epson, mnemonicamente chamado, "WATCHZONE".
O argumento desses fabricantes era o de que sempre procuraram oferecer aos seus usurios
produtos de mais baixo custo e com ampla disponibilidade de placas de expanso, qualidades que
na poca (e nem hoje) no eram (no so) encontradas na opo pelo barramento MCA.
Para que o barramento EISA fosse compatvel com a maioria das placas (ISA 8 e ISA 16) j
disponveis no mercado, os conectores da placa me (onde se encaixam as placas de expanso)
dos microcomputadores foram mudados para conectores EISA/ISA. Ou seja, tanto placas ISA de 8
ou 16 bits, quanto placas EISA podiam e podem ser inseridas nos slots do sistema.
O artifcio consistiu de dotar o conector de duas linhas de contactos, uma ISA e outra EISA. Placas
ISA penetram at a metade do conector fazendo uso da primeira linha de contatos (compatvel ISA 8
e 16 bits). Placas EISA penetram completamente no conector fazendo uso da segunda linha de
contatos (compatvel EISA). A profundidade de penetrao das placas determinada pelo nmero de
ranhuras das placas. No caso das placas ISA existe somente uma nica ranhura e no das placas
EISA existem 6 ranhuras (uma ranhura maior e cinco menores). Assim, a profundidade dos contatos
do pente das placas de expanso EISA passa dos atuais 0,79 cm para 1,32 cm.
O Barramento MCA ("Micro Channel Architecture"), tambm de 32 bits, embora tenha havido
uma verso de 16 bits, foi o padro de barramento adotado pela IBM para os slots de um micro ou
supermicrocomputador, o qual era incompatvel com os barramentos ISA (8 bits e 16 bits). Mesmo
com a deciso da IBM de abrir o projeto de seu barramento para outros fabricantes de placas de
expanso, o padro ISA/EISA fez parte da maioria dos sistemas 486 disponveis no mercado
americano e brasileiro da poca.
Segundo artigo da revista BYTE americana de novembro de 1989, o barramento EISA permite a taxa
de transferncia mxima de 33 Megabytes/segundo, enquanto no barramento MCA 16 bits esta taxa
Pgina 58
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
cai para 20 MBytes/segundo. Ainda segundo a mesma revista, as placas EISA so mais baratas e
de fabricao mais fcil. Matrias na revista PC Magazine Brasil de agosto de 1992 apontavam o
desempenho de 40 Mbytes/segundo para o barramento MCA de 32 bits numa frequncia de relgio
da ordem de 10 MHz, diferentemente dos 8,0 Mhz utilizados nos ISA e EISA).
Pgina 59
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O resultado foi um barramento mais barato que o EISA e MCA, embora um pouco mais caro que o
VESA.
A diferena bsica entre o PCI e o VL-Bus est no projeto. Mais moderno e com capacidade para
suportar futuras alteraes no hardware dos PCs, o PCI rene caractersticas que o tornaram mais
atraente e mais enxuto que o VESA.
Alm de ter sido projetado prevendo ambientes com mltiplos processadores, o PCI define o uso de
componentes multimdia no barramento local. O bus mastering tambm suportado, junto com uma
linguagem prpria de controle de barramento.
Segundo a Intel, placas desenhadas para serem usadas em barramento PCI funcionam em qualquer
mquina, seja ISA, EISA ou MCA.
Outra caracterstica existente nas especificaes do PCI e ausente do VESA a facilidade de
configurao. As placas PCI so autoconfigurveis, dispensando ajustes por jumpers ou chaves DIP.
Para isso, porm, todas as placas precisam ter 256 registradores, para armazenamento de
informaes, dispostos de uma certa maneira para assegurar a compatibilidade entre diversos
computadores.
O PCI tem como caractersticas o barramento assncrono e a arquitetura multiplexada, possui uma
largura de barramento de 32 ou 64 bits, o que o torna mais apropriado para processadores baseados
no chip Pentium. um barramento do tipo mezzanino, significando que ele independente do
barramento do processador. Alm disso, a especificao do PCI mais precisa do que a do VESA e
isto j resultou em incompatibilidades em adaptadores VESA. Finalmente, o PCI no dedicado a
um processador INTEL x86, mas tambm pode ser usado por processadores Motorola.
O PCI supera, atualmente, tudo o que existe em mteria de barramento de comunicao,
apresentando taxas de transferncia de dados na ordem de 132 MB/s em 32 bits e de at 264 MB/s
em 64 bits. Em relao ao nmero de slots de expanso, o PCI permite o controle de at 10
dispositivos auto-configurveis de alto desempenho.
Na comunicao de vdeo, o PCI supera todas as expectativas, apresentando uma performance 3
vezes superior a uma VGA ISA e 3 vezes a de uma VGA-VESA.
Os dois barramentos locais descritos tm praticamente a mesma velocidade em 32 bits, atingindo
picos de desempenho de 132 MB/s, mas este nmero pode variar muito, se forem considerados os
estados de espera e as operaes do modo burst.
A tabela 1 procura relacionar as vrias velocidades envolvidas nos barramentos mencionados. A
Tabela 2 exibe no s a limitao de 33 MHz do barramento PCI, como a relao entre a velocidade
da mquina e o CHIPSET da mesma.
Barramento
ISA 8
ISA 16
ISA 16
MCA 16
MCA 32
EISA
PCI 32
PCI 32
PCI 32
Relgio PlacaVelocidade no
Me (MHz)
Barramento de Dados
(MHz)
8
8
8
10
8
8
33
25
30
33
Tamanho do
Barramento de
Dados (bits)
Velocidade no
Barramento
(Mbytes/s)
8
16
32
16
32
32
8
16
32
132
20
40
33
Pgina 60
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
PCI 64
64
264
CPU
P60
P66
P75
P90
P100
P120
P133
P150
P166
P200
6X86-120
6X86-133
6X86-150
6X86-166
6X86-200
K6-166
K6-200
K6-233
PPRO 180
PPRO 200
PMMX 166
PMMX 200
PMMX 233
PII 233
PII 266
PII 300
CLK da
Placa-Me
(MHz)
60
66
50
60
66
60
66
60
66
66
50
55
60
66
66
66
66
66
60
66
66
66
66
66
66
66
CLK x
CLKIN da
CPU (MHz)
Chip Set
(CK/2)
1
1
1,5
1,5
1,5
2
2
2,5
2,5
3
2
2
2
2
3
2,5
3
3,5
3
3
2,5
3
3,5
3,5
4
4,5
60
66
75
90
99
120
132
150
165
198
100
110
120
132
198
165
198
231
180
198
165
198
231
231
264
297
30
33
25
30
33
30
33
30
33
33
25
?
30
33
33
33
33
33
30
33
33
33
33
33
33
33
Velocidade no
Barramento de
Dados (Mbps)
30
33
25
30
33
30
33
30
33
33
25
?
30
33
33
33
33
33
30
33
33
33
33
33
33
33
Velocidade
Placa de
Vdeo (Mbps)
15
16,5
12,5
15
16,5
15
16,5
15
16,5
16,5
12,5
?
15
16,5
16,5
16,5
16,5
16,5
15
16,5
16,5
16,5
16,5
16,5
16,5
16,5
O Barramento AGP
O Barramento AGP (Accelerated Graphics Port) uma nova plataforma de especificao de
barramento direcionada para capacidades grficas de alto desempenho, em particular, grficos 3D.
Tais aplicaes requerem grande rea armazenamento de informaes a fim de que a imagem 3D do
monitor possa ser refrescada ou atualizada o mais rpido possvel.
Pgina 61
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
A interface AGP promovida pelo A.G.P. Implementors Forum, o qual prov suporte e facilidades na
adoo da especificao. Fazem parte deste Forum vrios fabricantes de PCs, assim como
fabricantes de componentes grficos.
Esta interface, como conhecida, adiciona novas caractersticas s placas aceleradoras grficas,
tais como: acesso em pipeline dedicado memria principal e taxas de transferncia mais rpidas.
Esta interface no concorrente do barramento PCI, pois foi projetada pela INTEL especialmente
para uso dedicado por controladores grficos e no para substituir o PCI. Este permanece um padro
para um sistema de barramento de I/O, de uma maneira mais geral.
A interface AGP foi projetada para componentes grficos ponto-a-ponto e fisicamente separada do
barramento PCI, usando um conector separado. A AGP permite alocao dinmica da memria
principal, tornando-a mais flexvel.
Esta interface est incorporada maioria das placas-mes de hoje baseadas no processador
Pentium II. A figura 26 mostra um diagrama de blocos da interface AGP, na presena dos
componentes da placa-me.
Pgina 62
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
No artigo mencionado, o autor procura demonstrar que o pico terico para o AGP de 528 MBytes/s
(8 x 66 Mbits/segundo), pois a atual limitao do transporte de dados da CPU para a memria
principal est em 66 MHz do Clock do barramento: Therefore AGP will never be able to get a
throughput of 528 MB/s, since this is the whole bandwidth of main memory and thus it has to
be shared with CPU and others . E mais, esta taxa somente vlida com o uso de memrias
SDRAM, pois em memrias do tipo EDO consideravelmente mais lenta. O autor explica que o que
o AGP realmente necessita que o barramento principal das mquinas suba para 100 MHz
(chegando atualmente ao mercado), quando ento o pico terico seria de 800 Mbytes/s.
Existem propostas concorrentes do AGP da INTEL, as quais colocam nas placas grficas a memria
necessria ao refrescamento do vdeo e no usam a memria principal do sistema que
compartilhada por todos os outros perifricos. A INTEL raciocina que isto pode resultar em um custo
mais elevado do que proposta AGP, em funo do alto custo das memrias.
A figura 28 exibe um benchmark entre uma placa grfica com barramento PCI e uma com
barramento AGP. Enfatiza-se que os barramentos, como mencionado anteriormente, no so
comparveis, uma vez que se destinam a diferentes objetivos. Notar que em resolues normais,
640x480 pixels, no h praticamente diferena de desempenho entre as duas placas testadas.
Pgina 63
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Atributo do Sistema
Processador
Modos da CPU
Slot de Expanso
Tipo de slot
Interrupes
Canais de DMA
RAM mxima
Controlador Disco Flexvel
PC ou XT
8088/8086
Real
8 bits
ISA 8 bits
8 + NMI
4
1 MB
360 KB / 720 KB
PC AT Clssico
286 e maior
Real/Protegido
16 bits
ISA 16 bits
16 + NMI
8
16 MB
1.2 MB / 1.44 MB
Com o avano tecnolgico e o surgimento do INTEL 80386, com um barramento de dados de 32 bits,
a paz nas indstrias terminou e, como j mencionado, surgiu uma briga entre o MCA da IBM e o
EISA da Gang dos Nove, vencida pelo EISA em termos mercadolgicos. A Tabela 4 exibe uma
comparao entre o EISA e o ISA 16 bits.
Atributo do Sistema
Capacidade de Memria
Largura do Bus de Dados
Faixa de DMA
Caminho de dados do DMA
Mxima Taxa de DMA
Arbitrao de Barramento
Caminho de dados do Bus
Master
Clock Sncrono
ISA 16 bits
EISA
16 MB
16 bits
16 MB
8/16 bits
2 Mbytes/s
nica
16
4 GB
32 bits
4 GB
8/16/32 bits
33 Mbytes/s
6 Bus Masters
16/32
8.33 MHz
8.33 MHz
Para finalizar este captulo, vale ressaltar alguns aspectos do barramento PCI.
O PCI considerado um barramento mezzanino, ou seja, nem ligado diretamente CPU, nem
ligado diretamente aos dispositivos de I/O. divorciado da CPU, dando a esta alguma independncia
e a abilidade de competir com mais dispositivos. multiplexado no tempo, significando que linhas de
endereos e linhas de dados compartilham conexes. Possui um modo de rajada prprio, o qual
Pgina 64
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
permite que um ciclo de endereo pode ser seguido por tantos ciclos de dados quanto o overhead
do sistema permitir.
A 33 MHz pode transferir 32 bits por perodo de relgio, implicando numa taxa de 132 MBytes/s (4
bytes x 33 Mbits/s). A especificao 2.1 do PCI inclui um barramento de 64 bits a 66 MHz,
implicando em uma taxa terica mxima de 528 MBytes/s (8 bytes x 66 Mbits/s), conforme exibido
na Figura 27.
Pgina 65
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Dados
Conector
(pinos)
Perifricos
(nmero)
Taxa de Transferncia
(Mbytes/s)
16
40
Pgina 66
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
EIDE
SCSI
Fast SCSI-2
Fast & Wide SCSI-2
Ultra Fast Wide SCSI-2
16
8
8
16
16
40
50
50
68
68
4
8
8
8
32
10
5
10
20
40
Pgina 67
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pilha
64 KB =>
Cdigo
Dados 1
Pilha
Dados
Dados
1.0 MB =>
0000
Pilha
Extra
Cdigo
Cdigo
00000
00000000
COMPILADORES
Mdulo Fonte ou
Programa Fonte
MONTADORES
LIGADORES
Mdulo Objeto ou
Programa Objeto
Mdulo de Carga ou
Programa Executvel
CARREGADORES
Pgina 68
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O formato tpico de uma linha fonte inclui os campos RTULO, MNEMNICO, OPERANDO(S) e
COMENTRIOS, separados por caracteres separadores de campos, tais como ":" e ";".
Tm-se trs tipos de linhas fonte: INSTRUES, DIRETIVAS e CONTROLES (prprios de cada
montador Assembly ou "Assembler").
O montador Assembly do 8080/Z80, a partir de um arquivo ".ASM" gera dois tipos de arquivo, um em
formato hexadecimal, ".HEX" (programa objeto) e outro em formato hexadecimal mais o programa
fonte original, ".PRN" (este ltimo pode ser impresso). O carregador usa como entrada o arquivo em
hexadecimal para gerar um programa executvel, ".COM", como sada.
Existem vrios montadores Assembly para o 8086/8088, entre eles o chamado MASM ("Macro
ASseMbler Programming"). A figura abaixo mostra o processo de gerao de arquivos com o MASM
e demonstra o uso de um depurador Assembly.
C:\>edlin arq.asm
...
C:\>masm arq;
...
C:\>link arq;
...
C:\>debug arq.exe
-A 100
0939:0100 MOV AH,2
0939:0102 MOV DL,21
0939:0104 INT 21
0939:0106 INT 20
0939:0108 <Enter>
==> Assemblar
-U 100 106
Pgina 69
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
0939:0100 B402
0939:0102 B221
0939:0104 CD21
0939:0106 CD20
MOV
MOV
INT
INT
-R
AH,02
DL,21
21
20
==> Mostrar contedo dos Registradores
-T
!
Program terminated normally
-Q
C:\>
Para concluir este item pode-se dizer que qualquer software em linguagem Assembly pode ser
desenvolvido e testado em um microcomputador comum para posterior gravao em memria PROM,
EPROM ou EEPROM, a qual ficaria residente no sistema controlado por microprocessador.
Programadores e apagadores de EPROM esto disponveis no mercado para facilitar o processo de
programao fsica da EPROM e eventual apagamento devido a alteraes no programa residente.
No caso da EEPROM, isto no necessrio, pois este tipo de memria pode ser apagado e
reprogramado (Electricaly Erasable) diretamente no sistema a microprocessador sem desligamento
da mquina.
Pgina 70
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
5.1.1 - Arquitetura
A arquitetura do 68.000 usava a tcnica de "pipeline" para aumentar a taxa de execuo de
instrues. O 8086 tambm fazia uso de "pipeline", utilizando para isso uma fila de 6 bytes para
cdigo objeto.
O 68.000 endereava 16.0 MBytes diretamente, atravs de suas 24 linhas de endereo, e
indiretamente 64 MBytes. O 8086 podia enderear diretamente apenas 64 Kbytes e 1.0 Mbytes,
respectivamente, atravs de seus registradores de segmento.
O 68.000 operava em dois modos: modo Supervisor e modo Usurio. No Modo Supervisor o 68.000
podia executar instrues privilegiadas, no executveis no Modo Usurio. Assim, o 68.000
suportava um sistema operacional multitarefa e multiusurio. O 8086 no possua modos similares,
apenas a partir do 80286 pode-se contar com o suporte a ambientes multitarefa e multiusurio.
Internamente, o 68.000 possua 17 registradores de 32 bits, sendo oito para dados e nove para
endereos (dois desses ltimos reservados para apontadores de pilha). O 8086 tinha somente 4
registradores de 16 bits mais trs registradores de ndice separados. Esta caracterstica trazia
vantagens em desempenho para o 68.000, uma vez que mais operaes podiam ser realizadas no
interior da pastilha, evitando acessos frequentes memria principal, o que significaria atrasos ainda
maiores no processamento.
O 68.000 em seu encapsulamento de 64 pinos possua linhas de dados e endereos separadas. J
o 8086 multiplexava linhas de dados e endereos em seu encapsulamento de 40 pinos, sendo ento
necessria uma lgica de demultiplexao externa a pastilha para recuperar os barramentos de
dados e endereos. Se por um lado a MOTOROLA no economiza espao, ao mesmo tempo elimina
a necessidade de circuitos adicionais na placa-me.
Pgina 71
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O 68.000 era compatvel em hardware com os circuitos perifricos de 8 bits da prpria MOTOROLA.
Uma similaridade encontrada no 8088 da INTEL, tambm compatvel em hardware com os circuitos
perifricos de 8 bits da prpria INTEL. As duas fbricas sempre lanam pastilhas compatveis com
circuitos perifricos de seus antecessores.
Os tipos de dados suportados pelo 68.000 so: bit, nibble (4 bits), byte, word e long-word (32 bits).
Este opera em ponto flutuante to rpido quanto o par 8086/8087. Aqui praticamente no existem
diferenas importantes.
Uma tabela de vetores para processamento de excees fica alocada na memria residente,
contendo 256 possveis vetores para processamento de excees (1024 bytes). No 68.000 h 7
(sete) nveis de prioridade para excees. No 8086 havia 3 (trs) nveis de prioridade de interrupo
(software, no mascarvel e mascarvel, nessa ordem). Isto no chega a ser uma vantagem do
68.000, uma vez que no caso de microcomputadores, tais nveis so largamente suficientes.
A vantagem do 68.000 aqui vinha do fato de que o tratamento de excees possua um esquema
mais direto e simples que no 8086, onde o programador tem mais preocupaes. Vale ressaltar, que
quanto menor o tempo de programao maior a produtividade do programador e mais
rapidamente os produtos so lanados no mercado.
5.2 O 68.010
H pouco a dizer sobre o 68.010, a no ser que este idntico ao 68.000, com algumas ressalvas.
A primeira a de que usa suporte para memria virtual, ou seja, possui os pinos e os sinais
necessrios comunicao com um circuito gerenciador de memria virtual (no disponvel no
68.000). A segunda a de que inclui algumas novas instrues, justamente para gerenciamento
desta memria virtual.
Pgina 72
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
5.3 O 68.020
5.4 O 68.030
O antigo Mac SE/30 (CPU 68.030 a 15,667 Mhz) era 4 (quatro) vezes mais rpido que o Mac SE
(CPU 68.000). A pastilha 68.030 incorpora a unidade de gerenciamento de memria virtual ou PMMU
("Paged Memory Management Unit"). O barramento do Mac SE/30 foi mudado do NuBus (dos Mac
Plus e SE) para o chamado "Direct Slot 030", a fim de se adaptar a capacidade de endereamento
de 32 bits do 68.030. Por isso, este microcomputador no aceitava placas de expanso usadas nas
verses anteriores.
Um outro antigo modelo, o Mac IIcx tambm operava sob controle da CPU 68.030, mas numa
frequncia de relgio de 25 Mhz. Alm disso, incorporava uma pastilha (68.882) de gerenciamento de
memria virtual e um slot adicional para cache.
No se pode comparar a frequncia de relgio de 15,76 Mhz do 68.030 com as frequncias, por
exemplo do i386 33 Mhz. Arquiteturalmente diferentes, os microprocessadores da INTEL usam vrios
perodos de relgio (algumas instrues necessitam de at 236 perodos de relgio) ou vrios ciclos
de mquina para executarem uma instruo, enquanto que os microprocessadores MOTOROLA
usam poucos perodos de relgio (a mais longa instruo tem uma durao de apenas 74 perodos
de relgio). Portanto, as frequncias baixas utilizadas pelos microprocessadores MOTOROLA no
significam baixo desempenho como se poderia precipitadamente concluir.
Um resumo das caracterstica listado a seguir.
5.5 O 68.040
Pgina 73
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
As primeiras verses de Macintosh eram baseadas na CPU 68.000. Verses mais recentes so
baseadas nas CPUs 68.040, 68.060 e Power PC.
O Diagrama em Blocos do 68.040 mostrado na Figura 27.
Duas unidades de memria independentes se comunicam com a IU e a FPU. Cada unidade possui
uma MMU, unidade de gerenciamento de memria virtual, que translaciona endereo lgico para
fsico. Instrues no interior da pastilha e cache de dados operam independentemente e so
acessadoa em paralelo com a translao de endereo. O cache aumenta o desempenho geral. Tanto
a IU como a FPU possuem pipeline e a IU executa concorrentemente com a FPU. O Controlador de
Barramento opera em modo Burst, de forma concorrente com todas as outras unidades funcionais. O
nvel Write-Back de pipeline recebe sempre um resultado prvio da computao que poder ou no
ser escrito em memria externa. Isto aumenta o desempenho, pois o acesso memria externa
sempre mais demorado que o acesso ao cache interno. Assim, o resultado da computao s
escrito em memria externa, aps confirmao do mesmo.
Pgina 74
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O Barramento do Macintosh
Neste ponto, vale comentar brevemente o barramento do principal concorrente do PC.
O padro de barramento do Macintosh, por volta de 1989, era o NuBus, ou ANSI/IEEE 1196-1987,
concebido no MIT no fim dos anos 70, com forte apoio da Western Digital e da Texas Instruments. A
banda passante do NuBus era de 20 MBytes/s e, se utilizado em "modo bloco" podia chegar a
uma taxa de 37,6 MBps. Neste ponto, vale ressaltar as bandas passantes, na poca, do PC XT, 1,0
MBps, e de um PC AT, 2 MBps. Naqueles anos, o nico barramento comparvel era o MCA 16 bits,
utilizado nos PS/2 da IBM, o qual possua a mesma banda passante do NuBus.
Com este barramento os Macintosh aceitavam placas de 8, 16 e 32 bits. J nos PCs/PSs, isto
variava segundo a mquina. O NuBus foi concebido para ser utilizado por qualquer microprocessador,
enquanto que o MCA aceitava somente microprocessadores da INTEL. A implicao disto era que
um Macintosh aceitava uma placa 386 da INTEL, podendo rodar DOS ou OS/2, o inverso no era
verdadeiro, isto , no se podia, em princpio, colocar uma placa da APPLE em um PS/2. O fato
que os antigos barramentos dos XTs e ATs esto definitivamente obsoletos, pela sua banda
passante hoje considerada insuficiente.
Pgina 75
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
5.6 O 68.060
As principais caractersticas do 68.060 so resumidas a seguir.
O mais importante nesta CPU que a unidade de Inteiros, IU, contm um pipeline dual, uma
interface lgica para a FPU e controle lgico para a escrita de dados no cache e MMU. Isto implica
na execuo de mais de uma instruo durante cada ciclo de clock.
Os seis estgios no pipeline de execuo de inteiros so:
1.
2.
3.
4.
5.
6.
Pgina 76
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O Branch Cache na Unidade de Busca permite a deteo antecipada do salto, antes que a mudana
de fluxo afete a unidade inteira.
5.7.1 - Origem
A idia inicial das 3 gigantes da indstria era a de projetar um microprocessador de enorme
desempenho em um nico chip. Isto permitiria um balanceamento entre mximo desempenho,
facilidade de fabricao e baixo custo. A raiz do projeto foi a arquitetura POWER da IBM.
Assim, os projetistas removeram instrues raramente utilizadas e minimizaram caractersticas que
restringiam o paralelismo. Tambm foram includas extenses para prover um suporte adicional
funes freqentemente utilizadas.
Instrues LOAD e STORE
Simplicidade na Implementao. Retirada de update degenerado. Uma instruo de LOAD que
tenta carregar um operando no mesmo registrador usado pelo endereo efetivo resultante dita
degenerada (somente um valor deve ser carregado no registrador alvo). No PowerPC isto foi deixado
em aberto. Esta mudana no reduz a funcionalidade, mas simplifica a implementao.
Excees de Ponto-Fixo
Diminuio do Perodo de Latncia. Instrues de ponto-fixo ou ponto-flutuante atualizam um
registrador de condio baseado no tipo de resultado. Esta atualizao pode aumentar o perodo de
latncia. Mesmo sendo necessrio, tal modo de funcionamento no de uso freqente. No PowerPC
foi acrescentada uma instruo SUBTRACT para completar o conjunto de instrues de ponto-fixo, a
qual no altera ou usa o bit de CARRY.
Computao de Ponto-Fixo
Remoo/Substituio de Instrues. Foram retiradas do conjunto, quatro instrues baseadas em
Diferena ou Zero e Valor absoluto por causa de seu uso no frequente e benefcio limitado de
desempenho. Trs outras instrues que envolviam trs operandos fonte tambm foram removidas
por adicionarem complexidade implementao. Tais instrues foram substitudas por trs ou
quatro outras instrues.
Ponto-Flutuante
A arquitetura POWER provm um modelo computacional de ponto-flutuante que contm um conjunto
completo de instrues LOAD e STORE para operandos de ponto-flutuante de simples e dupla
preciso. Contudo, a computao de preciso simples feita usando operaes de preciso dupla,
em seguida arredondando o resultado para preciso simples. Foi adicionado ao PowerPC um
conjunto completo de operaes aritmticas e de acumulao de preciso simples, de forma a
baixar o custo e aumentar a velocidade de operaes de preciso simples, tornando mais lenta a
computao em preciso dupla. Em sistemas pequenos, isto aumenta o desempenho
significativamente, uma vez que grficos, por exemplo, no necessitam de preciso dupla.
Modelo de Armazenamento
A arquitetura do POWER relegava a tarefa de manter a coerncia do cache ao software e usava um
modelo de consistncia fraco de armazenamento. O PowerPC tambm depende do software para
manter a consistncia de armazenamento de instrues, mas adicionalmente permite ao software
Pgina 77
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
PowerPC 601;
PowerPC 603;
PowerPC 604;
PowerPC 620;
PowerPC 602;
PowerPC 603;
MPC821;
MPC823;
MPC860;
MPC505.
Como no podia deixar de ser, alm dos microprocessadores, a Motorola tambm fabrica circuitos a
serem utilizados como perifricos desses microprocessadores, tais como: MPC105 (Controlador de
cache, ponte PCI e interface de DRAM num nico chip).
A seguir sero fornecidas resumidamente as caractersticas de alguns deles.
PowerPC 620
O PowerPC 620 uma implementao de 64 bits da arquitetura RISC do PowerPC com as seguintes
caractersticas:
Pgina 78
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
PowerPC 750/740
2 unidades de Inteiros
Unidade de Registradores de Sistema
Unidade de Processamento de Saltos
Unidade Load/Store
Unidade de Ponto Flutuante
Projeto de 1,9 a 2,5 Volts (interno) e 3,3 Volts (I/O) com 3 modos de salvamento de potncia;
Cache L1 de 32 Kbytes para instrues e 32 Kbytes para dados, fisicamente separados;
Suporte a Cache L2 on-chip de at 1 MBytes (o PowerPC 740 no possui cache L2 on-chip);
MMU suporta 4 GigaBytes de memria fsica e 1 PetaBytes (2 52 bits) de memria virtual;
Barramento de Dados de 64 bits;
Barramento de Endereos de 32 bits;
6,5 milhes de transistores integrados;
Tecnologia de Processo CMOS esttico de 0,25 ou 0,29 micron;
O PowerPC 750 opera nas velocidades de 200, 233, 266, 300, 333 e 366 MHz;
O PowerPC 740 opera nas velocidades de 200, 233, 266 e 300 MHz;
671 MIPS @ 366 MHz (750) e 550 MIPS @ 300 MHz (740).
Pgina 79
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
ROM Interna
RAM Interna
8051
4 KB
128
8031
128
8751
4 K (EPROM)
128
8052
8K
256
8032
256
83C512B
16 a 32 K
512
CPU de 8 bits;
Oscilador e Circuitos de Relgio Embutidos;
32 linhas de Entrada e Sada;
64 KB para endereos da memria de dados;
64 KB para endereos da memria de programa;
3 contadores/temporizadores de 16 bits;
5 fontes de interrupo (2 externas, 2 internas e 1 da porta serial);
Porta Serial Full-Duplex;
Processador Booleano;
4 modos de funcionamento para os 3 Temporizadores;
4 modos de funcionamento para a Porta Serial.
Pgina 80
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
ROM /
EPROM
(8 KBytes)
3 Contadores/
Temporizadores
(16 bits)
RAM
(256 Bytes)
CPU (8 bits)
8052
Controle de
Expanso de
Barramento
Entrada/Sada
Paralela
Programvel
(32 Linhas)
Entrada/Sada
Serial
Programvel
Para dar uma idia comparativa, em relao a microprocessadores de propsito geral, so listados
abaixo os Registradores Internos do 8052.
A Acumulador
B Reg. Utilizado em operaes de multiplicao, diviso e rascunho
PSW Reg. De Status (CY, ACY, OVF, PARITY, ...)
SP Stack Pointer
DPTR Endereo de 16 bits
P0, P1, P2 e P3 Latches das Portas
SBUFF Buffer para a Porta Serial
TH0, TL0, TH1, TL1, TH2, TL2 Temporizadores de 16 bits
IP, IE, TMOD, TCON, SCON, PCON Reg. de Controle
O acesso memria externa feito com o auxlio dos seguintes sinais: PSEN (Programa Store
Enable) para a memria de programa e RD (Read) e WR (Write) para a memria de dados mais
os endereos correspondentes.
Pgina 81
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
ROM Interna
(8 KBytes)
64
KBytes
RAM Externa
(Dados)
64
KBytes
RAM Externa
(Programas)
128
Bytes
RAM Interna
Registradores
Internos
As interrupes so:
INT 0 e INT 1 Pinos da CPU projetados para receber pedidos externos de interrupo;
Pgina 82
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Esta pastilha a gerao seguinte do MC68360 para aplicaes de redes e comunicao de dados.
Esta pastilha integra 2 blocos de processamento: o primeiro o ncleo do PowerPC e o segundo
o Mdulo Processador de Comunicao (CPM), muito similar ao MC68360. Esta arquitetura dual
provm um consumo mais baixo de potncia do que o tradicional, por que o CPM assume as tarefas
de controle de perifricos do ncleo PowerPC.
As principais caractersticas do MPC860 so:
Pgina 83
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
1.
2.
3.
4.
O objetivo das mquinas RISC era o de aumentar a eficincia da interface entre o compilador e o
hardware e no, diminuir o "gap" entre o usurio e o hardware. Este ltimo tem sido o objetivo das
mquinas consideradas CISC, como os microprocessadores de desktops e alguns servidores.
A compilao em processadores RISC simples e o cdigo gerado eficiente, at mesmo em
funo da prpria filosofia de se ter um conjunto reduzido de instrues. Ao lado disso, com o avano
tecnolgico da integrao VLSI ("Very Large Scale Integration"), tambm tornou-se possvel realizar
o mximo de operaes no interior do circuito integrado, aumentando sobremaneira a velocidade das
operaes.
Pelo fato das instrues serem simples e pouco numerosas, vrias transferncias CPU/Memria e
vice-versa so necessrias. Este problema vem sendo resolvido com a tcnica de "cache", ou seja,
ler um grupo de instrues de uma nica vez, enfileir-las e execut-las em seguida.
Um outro aspecto diz respeito aos numerosos registradores internos a processadores RISC. Pode-se
armazenar nesses registradores uma grande quantidade de dados temporrios, no interior da
pastilha, sem que sejam necessrios vrios acessos memria principal.
A tcnica de "pipeline" em vrios nveis tambm utilizada para aumentar ainda mais a taxa de
execuo de instrues.
Algumas mquinas RISC executam uma instruo por ciclo de relgio, isto para implementar um
pipeline eficiente. As mquinas clssicas utilizam vrios ciclos de mquina, contendo vrios ciclos
de relgio para a execuo de uma nica instruo.
Pgina 84
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 85
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.
3.
4.
5.
6.
7.
Pgina 86
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Demanda de Aplicaes
10 GIPS
1 GIPS
T elephone
Number
Recognition
100 MIPS
200 W ords
Isolated Speech
Recognition
10 MIPS
1 MIPS
Sub-Band
Speech Coding
1980
1985
1,000 W ords
Continuous
Speech
Recognition
ISDN-CD Stereo
Receiver
5,000 Words
Continuous
Speech
Recognition
HDTV Receiver
CIF Video
CELP
Speech Coding
Speaker
Veri cation
1990
1995
Pgina 87
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 88
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Tendncias de Tecnologia
100
Supercomputers
Mainframes
Microprocessors
Minicomputers
1
0.1
1965
1970
1975
1980
1985
1990
1995
1,000
Performance
10
100
10
uu u
i8086 u
u
u
u
u
u
u
u
u
R10000
u
u
u
u
u
u
uuu
uu
uu
u
u
Pentium100
u
u
u
u
u
u
u
u
uuu
uu
uu
u
u
uu
uuu
u
uu u
u
u
u
uu
ui80386
i80286
u
u
i8080
uu
u i8008
i4004
0.1
1970
1975
1980
1985
1990
1995
2000
2005
Pgina 89
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
100,000,000
u
Transistors
10,000,000
u
uu u
u
R10000
u
u
uu Pentium
uu
uu
uu
u
u
u
u
u
uu
u
uuu
u
u u
uu
u
u
u
u
u
i80386
i80286 u u
u u R3000
u
u
R2000
u
1,000,000
100,000
u i8086
10,000
u
u i8080
u
u i8008
i4004
1,000
1970
1980
1990
2000
1975
1985
1995
2005
Pgina 90
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Arquiteturas Vetoriais
Memria centralizada
Componentes especficos
Tecnologia agressiva
Memria compartilhada
Pgina 91
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
2.
3.
4.
Arquiteturas SIMD
Memria distribuda
Tecnologia padro
Memria distribuda
Tecnologia padro
Memria compartilhada
Memria distribuda
Tecnologia padro
Memria distribuda
Pgina 92
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
1.
Alocao de Recursos
2.
3.
Desempenho e escalabilidade
No momento atual, ano 1999, verifica-se uma taxa de 50 a 100% de aumento de desempenho nos
microprocessadores a cada ano. A capacidade das RAMs dinmicas quadruplica a cada 3 anos. A
densidade dos discos magnticos cresce 50% anualmente. Isto fora uma tendncia de se utilizar
microprocessadores padro. Alm disso, o usurio fora uma tendncia de que a potncia dos
sistemas de computador deve aumentar com o nmero de processadores, o que hoje no
corresponde a realidade.
Um outro aspecto verificar os modelos utilizados pelos 500 computadores mais rpidos do mundo.
A figura 39 exibe a tendncia de uso de mquinas Passagem de Mensagens.
Pgina 93
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
350
Number of systems
300 n
313
239
u
250
200
u187
0s
11/93
u MPP
n PVP
s SMP
110
s
n
106
100
50
284
u
n 198
150
319
u
s
63
11/94
11/95
106
n
s
73
11/96
Pgina 94
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Processo
Processo
Processo
Processo
Dados
Dados
Dados
Dados
Processo
Processo
Processo
Processo
Dados
Pgina 95
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 96
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O IBM SP-2
Power 2
CPU
L2 $
Memory bus
4-way
interleaved
DRAM
Memory
controller
MicroChannel bus
NIC
I/O
DMA
i860
NI
DRAM
General interconnection
network formed fr
om
8-port switches
Pgina 97
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O INTEL PARAGON
i860
i860
L1 $
L1 $
Intel
Paragon
node
Mem
ctrl
DMA
Driver
2D grid network
with processing node
attached to every switch
NI
4-way
interleaved
DRAM
8 bits,
175 MHz,
bidirectional
Pgina 98
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
O Cosmic Cube
Entidade bsica: o processo, que envia e recebe mensagens.
Operao: Cada n pode conter vrios processos que so executados concorrentemente, se
entrelaando.
Arquitetura: 64 processadores 8086/8087 5 Mhz. Cada n ligado a 6 outros ns (6-cube) por
canais de comunicao bidirecionais, assncronos e ponto-a-ponto. Ns possuem 128 KB de RAM e
8 KB de ROM (inicializao, boot, refrescamento de memria e programas de diagnstico).
Sistema Operacional: Cada n executa um micro-ncleo. Cada micro-ncleo pode criar e matar
processos sobre seu n, gerenciar carga em memria e tratar interrupes. A cada processo est
associado um nico e global ID (identificador) para endereamento de mensagens. Cada mensagem
possue um cabealho contendo DESTINO, ID do EMISSOR, TIPO DE MENSAGEM e TAMANHO
DA MENSAGEM.
O INTEL Paragon
O Paragon oferece um alto nvel de desempenho, flexibilidade e utilizabilidade em aplicaes
destinadas a supercomputadores, acima dos tradicionais computadores vetoriais.
Arquitetura: Cada n um multiprocessador de memria compartilhada e usa no mnimo 2
processadores i860XP: um ou mais (processadores de aplicao) destinado a executar as
aplicaes e um (processador de mensagens) dedicado comunicao entre ns. Os ns so
distribudos em uma rede 2D com ligaes de 16 bits suportando at 175 Mbytes/s em cada direo.
Isto viabiliza uma largura de banda de at 5,6 Gbytes/s para um modelo XP/s com 76 ns. A
transferncia de blocos de dados da memria para a interface de rede feita atravs de dois canais
de DMA a uma velocidade de 400 Mbytes/s com um sistema de coerncia de cache.
Sistema Operacional: Consiste de UNIX melhorado, totalmente distribudo ao longo dos ns,
eliminando a necessidade de se ter um host ou front-end.
Linguagens: Compiladores Fortran-77, C, C++ e Ada produzem cdigo otimizado para aplicaes
paralelas
O Paragon o resultado de 10 anos de pesquisas e desenvolvimento comeado na Caltech por C.
Seitz, depois no MIT por W. Dally e enfim pelo projeto Touchstone Intel-DARPA.
Pgina 99
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
A J-Machine
Pgina 100
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
Pgina 101
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
BIBLIOGRAFIA
Livros:
1.
2.
RUSSELL, Rector; ALEXY, George: "The 8086 Book", Ed. Osborne/ McGraw-Hill, 1981;
3.
ARTWICK, Bruce A., "Practical Hardware Details for 8080, 8085, Z80 e 6800 Microprocessors
Systems", Prentice-Hall, 1981;
4.
5.
6.
7.
Gerry;
"OSBORNE
16-bit
Microprocessor
Handbook",
Webgrafia
www.lri.fr
www.laas.fr
www.intel.com
http://www-techdoc.intel.com/
http://developer.intel.com/sites/developer/
http://www.cyrix.com/site_index.html
www.amd.com
http://www.tomshardware.com/
www.mot.com
http://www.mcu.motsps.com/index.html
http://www.lri.fr/~fci/goinfreWWW/projets97/fedak/Survey.html
http://ee.stanford.edu/
http://umunhum.stanford.edu/papers.html
Artigos:
1.
"Microprocessors - The First Twelve Years"; Proceedings IEEE, Vol. 71, No. 11, november 1983.
2.
"Microprocessors in Brief"; IBM Journal Research and Development, Vol. 29, No. 2, march 1985.
3.
4.
"A Survey of Advanced Microprocessors and HLL Computer Architectures"; IEEE Computer,
august 1986.
Pgina 102
Eletricazine,
www.eletricazine.hpg.ig.com.br
Microprocessadores
_________________________________________________________________________________________________
____
5.
"An Introduction to GaAs Microprocessor Architecture for VLSI"; IEEE Computer, march 1986.
6.
Artigos diversos das revistas: Byte USA, Byte Brasil, Electronic Design, Exame Informtica,
Computer Design, PC Magazine USA, PC Magazine Brasil, PC World, SVM Macintosh.
7.
Manuais:
1.
2.
INTEL Corporation, "Application Techniques for the intel 8085 Bus", 1978;
3.
4.
5.
6.
INTEL Corporation,"MCS-51 Family of Single Chip Microcomputers User's Manual, july, 1981;
7.
8.
INTEL Corporation,"iAPX 86/88, 186/188 User's Manual" - Programmer's Reference, may 1983;
9.
with
Integrated
Memory
Pgina 103