Você está na página 1de 34

1

UNIVERSIDADE DE CUIAB
Centro de Cincias Exatas e Tecnolgicas
Departamento de Informtica

MICROPROCESSADORES

Autores:
Amarildo Arruda
Eleduardo Max
Luciano Rigolin de Almeida
Ricardo Ribeiro do Santos

Responsvel: Prof. Dr. Nivaldi Calonego Junior

Cuiab MT
Maro de 1999

2
NDICE ANALTICO
RESUMO

01

ABSTRACT

02

INTRODUO

03

1. Introduo Sobre Microprocessadores

04

1.1 Unidade de Aritmtica e Lgica UAL

05

1.2 Registradores

05

1.3 Unidade de Controle

05

1.4 Relgio

05

1.5 Registrador de Instruo (RI)

06

1.6 Contador de Instruo

06

1.7 Decodificador de Instruo

06

1.8 Registrador de Dados de Memria RDM e Registrador de Endereos de


Memria - REM
06
1.9 Termos utilizados para definir alguns conceitos sobre microprocessadores
07
1.10 Interrupes

08

1.11 Bits internos e externos

08

1.12 Metodologia de linha de montagem ou PIPELINE

09

1.13 Execuo paralela de instrues

10

2. Categorias de Microprocessadores

12

2.1 8086

12

2.2 8088

12

2.3 80286

12

2.4 80386

13

2.5 80486

15

3
2.6 Pentium

17

2.7 AMD

19

2.8 Cyrix

19

3. CISC X RISC

21

3.1 Princpios tcnicos de mquinas RISC

22

3.2 Uma Instruo por Ciclo da Via de Dados

23

3.3 Arquitetura LOAD/STORE

23

3.4 Pipelining

24

3.5 Uso de Registrador

24

3.6 Por que processadores RISC no decolaram?

24

3.7 Algumas informaes tcnicas sobre processadores RISC

25

3.7.1 Digital Equipment

25

3.7.2 MIPS

25

3.7.3 Sun Microsystems

26

3.7.4 Hewlett Packard (HP)

26

4. Consideraes Finais

27

5. Bibliografia

28

4
LISTA DE FIGURAS
Fig. 2.1: Microprocessador 80386

13

Fig. 2.2: Processador 80386SX

14

Fig. 2.3: Microprocessador 80486

15

Fig. 2.4: 5x86 da AMD

16

Fig. 2.5: 5x86 da Cyrix

16

5
LISTA DE TABELAS
Tab. 2.1 Diferenas entre 8086, 8088, 8286

13

Tab. 2.2: Freqncia da Placa Me

17

Tab. 2.3: Processador de 150 MHz com desempenho superior ao Pentium 200

20

Tab. 3.1: Comparao entre trs mquinas CISC tpicas com as trs primeiras mquinas
RISC
22
Tab. 3.2 - Caractersticas das mquinas RISC e CISC

23

Tab. 3.3: Uma mquina RISC com pipeline contendo LOAD (L) e STORE (L) atrasados
24

6
RESUMO
O presente trabalho visa fornecer informaes conceituais e prticas sobre
microprocessadores. O microprocessador tambm conhecido como CPU ou UCP um
chip que mantm as funes de processamento e controle de instrues, est localizado
sobre a placa me do computador. Esse chip sofreu transformaes tecnolgicas ao
longo dos anos, proporcionando aos computadores um aumento considervel em seu
poder computacional e na sua flexibilidade de uso. Paralelamente evoluo das CPUs,
os computadores passaram a ser utilizados por um nmero cada vez maior de pessoas,
pois a medida em que as mquinas passaram a ter uma alta demanda o preo sofreu
considervel reduo, sendo essa uma tendncia seguida at os dias atuais. Dessa forma,
os microprocessadores tem conduzido a evoluo tecnolgica da computao, pois
assim que novos chips so lanados no mercado, so tambm lanados softwares e
dispositivos mais poderosos, com o intuito de proporcionar maior rapidez, flexibilidade
e confiabilidade na execuo de tarefas.

7
ABSTRACT

The present work provider concepts and pratics informations about


microprocessors. The microprocessor knowledgeable too as CPU or UCP is a chip that
support the functions processing and control of instructions, is located on the mother
board of the computer. This chip suffered tecnologics transformations of long in the
years, providing in the computers a increase considerable in your power
computacionable and your use flexible. Paraleling the CPUs evolution, the computers
were used for the number gradualing

greatter of the peoples, so while machines

spending to have a high demand the price suffered considerable reduction, like this a
tendency continuous until the current days. So, the microprocessors have to leaded the
computacions evolution tecnology, so that new chips are lanced in the marketing, are
too lanced softwares and peripherals powerfull, with the aim to provide greater speed,
flexibility and entrustable in the jobs execution.

8
INTRODUO
Neste trabalho iremos abordar um vasto assunto relacionado aos
microprocessadores, pois estes podem ser considerados o crebro ou at mesmo o
corao de um microcomputador. nele que feito o gerenciamento de todos os
recurso disponveis no sistema. Seu funcionamento baseado em programas e
procedimentos, tudo que acontece em um computador provm da CPU ou UCP, ou seja,
Unidade Central de Processamento, tambm poder ser chamada e referenciada como
processador ou microprocessador, no qual o nosso assunto que iremos ver de agora em
diante.
No captulo 1, poderemos saber quais so os dispositivos que fazem parte de um
microprocessador. Com definies claras e objetivas poderemos saber e assimilar o que
uma UAL, um registrador, uma unidade de controle, os termos utilizados para definir
conceitos sobre microprocessadores, bem como sua metodologia de linha de montagem,
que chamada Pipeline, que nada mais que um composto de vrias etapas de
instrues do microprocessador, de forma seqncial (Cap. 1.10).
No captulo 2, veremos as categorias dos microprocessadores, como os
fabricantes comearam a desenvolver essa tecnologia, que at nos dias atuais vem sendo
modificada a cada dia.
Em meados de 1978 a Intel fabricante de microprocessadores lana o 8086 um
microprocessador duas vezes mais rpido que seu antecessor o 8080, que tinha vrias
vantagens em relao ao seu antecessor (Cap. 2.5). Desse ponto em diante, comea a
evoluo dos microprocessadores, de acordo com o surgimento de novas idias e
utilizaes a Intel acrescentava nova tecnologia em seu 8086, passando para um
processador com vantagens elevadas acima dele. Dessa forma ela vem chegando ao
auge, sempre inovando o mundo dos microprocessadores.
Em 1991 foi um ano bastante confuso para os usurios que estavam prestes a
adquirir um microcomputador, foi o ano em que a Intel, fabricantes dos processadores
Pentium atuais, dava continuidade na sua famlia de microprocessadores 80x486 (Cap.
2.5) que oferecia na poca duas verses, na qual era o 486 SX e o 486 DX que vieram
com um desempenho fantstico em relao aos seus antecessores. Na mesma poca em
que os microprocessadores da Intel reinava absolutamente o domnio da tecnologia de
processamento, surgiu os concorrentes AMD e Cyrix, com verses que viriam baratiar
os preos, e dar vantagens para ns usurios.
Nos dias atuais os fabricantes esto se inovando a cada dia, tanto a Intel, AMD,
Cyrix e a Celeron, uma famlia de novos processadores da prpria Intel (Cap. 2.6) que
uma verso simplificada de um dos microprocessadores da Intel.
Para fechar o nosso assunto, veremos os microprocessadores fabricados e
destinados exclusivamente a servidores, mquina de grande porte. Esse
microprocessador possui uma tecnologia a qual chamamos de RISC (Cap. 3). Que mais
adiante veremos as definies CISC x RISC, bem como seu surgimento, princpios
tcnicos, arquiteturas e desempenhos.

9
1. Introduo Sobre Microprocessadores
A primeira caracterstica a considerar num computador sua unidade central de
processamento, que poder fornecer uma srie de indicaes sobre o equipamento. A
UCP ou CPU (Central Processing Unit), tambm pode ser chamada de processador ou
microprocessador, os quatro termos so equivalentes. Tudo o que acontece num
computador provm da UCP, que gerncia todos os recursos disponveis no sistema. Seu
funcionamento coordenado pelos programas, que indicam o que deve ser feito e
quando. Basicamente, a UCP executa clculos muito simples como somas e
comparaes entre nmeros, mas com uma caracterstica muito especial: uma
velocidade extremamente elevada.
A funo das UCPs sempre a mesma. O que as diferenciam sua estrutura
interna e, o mais importante, o fato de cada uma ter seu conjunto de instrues prprio.
Ou seja, um programa escrito para uma UCP dificilmente poder ser executado
diretamente em outra - esse um dos principais motivos da incompatibilidade entre os
computadores.
A UCP trabalha diretamente com a memria principal. O contedo da memria
principal uma combinao de informaes e instrues. As instrues que o
processador central pode executar diretamente esto na linguagem de mquina da UCP.
O processamento feito pela Unidade Central de Processamento utilizando o
ciclo busca-execuo regulado pelo clock (relgio). A seqncia desse ciclo :

Buscar (cpia) instruo na memria principal;


Executar aquela instruo;
Buscar a instruo seguinte;
Executar a instruo seguinte;
E assim por diante (milhes de vezes por segundo).
As instrues em linguagem de mquina so muito primitivas. Por exemplo:
Ler (copiar) contedo de um endereo de memria no registrador do processador
central;
Comparar duas informaes;
Adicionar, subtrair dois nmeros;
Escrever palavra na memria ou dispositivo de sada.

Estas etapas compem o que se denomina ciclo de instruo. Este ciclo se


repete indefinidamente at que o sistema seja desligado, ou ocorra algum tipo de erro,
ou seja encontrada uma instruo de parada.
As atividades realizadas pela UCP podem ser divididas em duas grandes
categorias funcionais (Monteiro (1995)):

Funo processamento: Se encarrega de realizar as atividades relacionadas com


a efetiva execuo de uma operao, ou seja, processar. O dispositivo principal
desta rea de atividades de uma UCP chamado de UAL - Unidade de
Aritmtica e Lgica. Os demais componentes relacionados com a funo
processamento so os registradores, que servem para armazenar dados a serem
usados pela UAL. A interligao entre estes componentes efetuada pelo
barramento interno da UCP.
Funo Controle: exercida pelos componentes da UCP que se encarregam das
atividades de busca, interpretao e controle da execuo das instrues, bem

10
como do controle da ao dos demais componentes do sistema de computao. A
rea de controle projetada para entender o que fazer, como fazer e comandar
quem vai fazer no momento adequado. Os dispositivos bsicos que devem fazer
parte daquela rea funcional so: unidade de controle, decodificador, registrador
de instruo, contador de instruo, relgio ou "clock" e os registradores de
endereo de memria e de dados da memria.
1.1 Unidade de Aritmtica e Lgica - UAL
A UAL o dispositivo da UCP que executa realmente as operaes
matemticas com os dados.
A UAL um aglomerado de circuitos lgicos e componentes eletrnicos
simples que, integrados, realizam as operaes j mencionadas. Ela pode ser uma parte
pequena da pastilha do processador, usada em pequenos sistemas, ou pode compreender
um considervel conjunto de componentes lgicos de alta velocidade. A despeito da
grande variao de velocidade, tamanho e complexidade, as operaes aritmticas e
lgicas realizadas por uma UAL seguem sempre os mesmos princpios fundamentais.
1.2 Registradores
Para que um dado possa ser transferido para a UAL, necessrio que ele
permanea, mesmo que por um breve instante, armazenado em um registrador. Alm
disso, o resultado de uma operao aritmtica ou lgica realizada na UAL deve ser
armazenado temporariamente, de modo que possa ser utilizado mais adiante ou apenas
para ser, em seguida, transferido para a memria.
Para entender a estes propsitos, a UCP fabricada com uma certa quantidade
de registradores, destinados ao armazenamento de dados. Servem, pois, de memria
auxiliar da UAL. H sistemas nos quais um desses registradores, denominados
acumulador, alm de armazenar dados, serve de elemento de ligao da UAL com os
restantes dispositivos da UCP.
1.3 Unidade de Controle
o dispositivo mais complexo da UCP. Alm de possuir a lgica necessria
para realizar a movimentao de dados e instrues de e para a UCP, atravs dos sinais
de controle que emite em instantes de tempo programados, esse dispositivo controla a
ao da UAL. Os sinais de controle emitidos pela UC ocorrem em vrios instantes
durante o perodo de realizao de um ciclo de instruo e, de modo geral, todos
possuem uma durao fixa e igual, originada em um gerador de sinais usualmente
conhecido como relgio.
Ao contrrio de circuitos integrados mais comuns, cuja funo limitada pelo
hardware, a unidade de controle mais flexvel. Ela recebe instrues da unidade de
E/S, as converte em um formato que pode ser entendido pela unidade de aritmtica e
lgica, e controla qual etapa do programa est sendo executado.
1.4 Relgio
o dispositivo gerador de pulsos cuja durao chamada de ciclo. A
quantidade de vezes em que este pulso bsico se repete em um segundo define a

11
unidade de medida do relgio, denominada freqncia, a qual tambm usamos para
definir velocidade na UCP.
A unidade de medida usual para a freqncia dos relgios de UCP o Hertz
(Hz), que significa 1 ciclo por segundo. Como se trata de freqncias elevadas,
abreviam-se os valores usando-se milhes de Hertz, ou de ciclos por segundo
(MegaHertz ou simplesmente, MHz). Assim, por exemplo, se um determinado
processador funciona como seu relgio oscilando 25 milhes de vezes por segundo, sua
freqncia de operao de 25 MHz. E como a durao de um ciclo, seu perodo, o
inverso da freqncia, ento cada ciclo, neste exemplo, ser igual ao inverso de
25.000.000 ou 1/25.000.000=0,00000004 ou 40 nanossegundos.
1.5 Registrador de Instruo (RI)
o registrador que tem a funo especfica de armazenar a instruo a ser
executada pela UCP. Ao se iniciar um ciclo de instruo, a UC emite o sinal de controle
que acarretar a realizao de um ciclo de leitura para buscar a instruo na memria, e
que, via barramento de dados e RDM, ser armazenada no RI.
1.6 Contador de Instruo
o registrador cuja funo especfica armazenar o endereo da prxima
instruo a ser 0executada. To logo a instruo que vai ser executada seja buscada
(lida) da memria para a UCP, o sistema providencia a modificao do contedo do CI
de modo que ele passe a armazenar o endereo da prxima instruo na seqncia. Por
isso, comum definir a funo do CI como sendo a de "armazenar o endereo da
prxima instruo", que o que realmente ele faz durante a maior parte da realizao de
um ciclo de instruo.
1.7 Decodificador de Instruo
um dispositivo utilizado para identificar as operaes a serem realizadas, que
esto correlacionadas instruo em execuo. Em outras palavras, cada instruo
uma ordem para que a UCP realize uma determinada operao. Como so muitas
instrues, necessrio que cada uma possua uma identificao prpria e nica. A
unidade de controle est, por sua vez, preparada para sinalizar adequadamente aos
diversos dispositivos da UCP, conforme ela tenha identificado a instruo a ser
executada.
O decodificador recebe na entrada um conjunto de bits previamente escolhido e
especfico para identificar uma instruo de mquina e possui 2N sadas, sendo N a
quantidade de algarismos binrios do valor de entrada.
1.8 Registrador de Dados de Memria - RDM e Registrador de Endereos de
Memria - REM
So os registradores utilizados pela UCP e memria para comunicao e
transferncia de informaes. Em geral o RDM possui um tamanho igual ao da palavra
do barramento de dados, enquanto o REM possui um tamanho igual ao dos endereos
da memria.

12

1.9 Termos utilizados para definir alguns conceitos sobre microprocessadores


Palavra- Quantidade de bits que tratada em cada ciclo do processador. No confundir
com BYTE, que de 8 bits para todos da tabela. Fisicamente, corresponde quantidade
de "fios" da via de dados do processador.
Via de E/S - Quantidade bits acessados a cada ciclo de interao com um dispositivo de
E/S (entrada/sada). Via de regra, igual a uma palavra, mas existem casos em que
igual a palavra, como o do 8088, e outros que igual ao dobro do palavra para
determinadas operaes como num Pentium. Fisicamente, corresponde a quantidade de
"fios" da via de E/S do computador.
A unidade de E/S liga o microprocessador aos outros circuitos do computador,
transmitindo informaes de programa e de dados para os registradores da unidade de
controle e da unidade de aritmtica e lgica. A unidade de E/S faz uma correspondncia
entre os nveis de sinal e a sincronizao dos circuitos internos de estado slido do
microprocessador com os outros componentes contidos no PC. Por exemplo, os
circuitos internos de um microprocessador so projetados para serem econmicos com a
eletricidade, de modo a operar mais rpido e gerar menos calor. Esses delicados
circuitos internos no so capazes de lidar com as correntes mais altas necessrias para
ligao com componentes externos. Consequentemente, cada sinal que sai do
microprocessador passa por um buffer de sinal da unidade de I/O, que eleva sua
capacidade de lidar com correntes.
A unidade de E/S pode ter apenas alguns poucos buffers ou pode envolver
muitas funes complexas. Nos microprocessadores Intel usados mais recentemente em
PCs com grande capacidade de processamento, a unidade de E/S inclui o cache de
memria e a lgica de duplicao de clock para adequar a alta velocidade operacional
do microprocessador a memria externa mais lenta.
Via de endereos- Quantidade de bits que podem ser enviados para representar um
endereo de uma posio na memria. Fisicamente, corresponde ao nmero de "fios" da
via de endereos.
Memria RAM - conseqncia direta da via de endereo. A memria RAM mxima
igual a 2 elevado ao nmero de bits (fios) da via de endereo. Note que entre o 68020
e o 486 h estruturas com as trs caractersticas de 32 bits, palavra, entrada/sada e
endereamento.
Clock - Velocidade dos ciclos por segundo que regulam o funcionamento da UCP.
Computadores trabalham de acordo com um padro de tempo, com o qual podem
gerenciar as transmisses de informaes entre os vrios dispositivos do sistema, uma
vez que as informaes so convertidas em sinais eltricos. Sem um padro de tempo
seria difcil diferente uma informao de outra. Esse padro de tempo indicado pela
freqncia do clock em MHz - Milhes de ciclos por segundo. Os microprocessadores
at o 486 realizavam uma operao bsica por ciclo; No Pentium j podem ser at 2 e
no PowerPC MPC601 at 3. O clock s uma indicao precisa da capacidade de
processamento quando se compara UCPs iguais ou semelhantes.

13
MIPS - Milhes de instrues por segundo. At o incio da dcada era a unidade mais
utilizada para indicar capacidade do processamento da UCP. Apesar de criticada, ainda
usada para sistemas. Para os de maior porte, a unidade passou a ser o Mega-flops. A
tendncia utilizar outros ndices mais complexos.
A capacidade de processamento funo direta do conjunto dessas
caractersticas: Palavra, barramento (via ou bus), memria, velocidade do clock,
capacidade (MIPS ou outro ndice), e tambm de outros fatores como arquitetura do
microprocessador, seu conjunto de instrues bsica, arquitetura do Sistema e, em
especial, como esse conjunto se comporta em cada tipo de aplicao.
comum durante a vida de um modelo de microprocessador que a sua
velocidade seja aumentada com novos modelos; Um exemplo o 8086, cujos primeiros
modelos operam com um clock de 4,77 MHz e alguns anos depois vrios fabricantes j
o utilizavam com um clock de 8 MHz e depois de 10 MHz. A velocidade do
microprocessador comea com o valor recomendado que , na realidade, o valor
mnimo garantido, pela estrutura de projeto do Chip. Com o passar do tempo, novos
modelos aumentam esse valor; O 486 tem modelos de 16, 25, 33, 40, 50 e 66 MHz.
1.10 Interrupes
O barramento de controle forma juntamente com o barramento de dados e de
endereo o conjunto de barramentos do microprocessador. O barramento de controle
armazena uma miscelnea de sinais digitais com diversas finalidades. Alguns exemplos
de sinais digitais desse barramento so:

Int: uma entrada que serve para que dispositivos externos possam interromper
o microprocessador para que seja realizada uma tarefa que no pode esperar.
Como existe apenas uma entrada INT, o microprocessador opera em conjunto
com um chip chamado Controlador de Interrupes. Esse chip encarregado de
receber requisies de interrupo de vrios dispositivos e envi-las ao
microprocessador, de forma ordenada, atravs do sinal INT.
NMI: um sinal de interrupo especial para ser usado em emergncias.
Significa Interrupo no mascarvel, ou seja, essa interrupo deve ser atendida
imediatamente. Ao contrrio do sinal INT, que pode ser ignorado pelo
microprocessador durante pequenos intervalos de tempo, o sinal NMI uma
interrupo no mascarvel. Nos PCs, o NMI usado para informar erros de
paridade na memria.
INTA: Significa reconhecimento de interrupo (Interrupt Acknowledge).
utilizada para que o microprocessador indique que aceitou uma interrupo, e
que est aguardando que o dispositivo que gerou a interrupo identifique-se,
para que seja realizado o atendimento adequado.

1.11 Bits internos e externos


Dentro de um microprocessador, existem vrios circuitos que armazenam,
transportam e processam dados. Nos microprocessadores 386 e 486, tais circuitos
operam com 32 bits de cada vez.
Quanto maior o nmero de bits internos de um microprocessador, mais veloz
poder realizar clculos e processamento de instrues em geral. Abaixo so
apresentados os limites de nmeros inteiros positivos que podem ser manipulados com
8, 16 e 32 bits:
8 bits
0 a 255

14
16 bits
32 bits

0 a 65.535
0 a 4.294.967.296
Para que um microprocessador seja rpido, preciso que ele seja capaz de
manipular instrues em alta velocidade. Essas instrues so armazenadas na memria,
e portanto, preciso que a memria seja acessada em alta velocidade. Em conjunto com
a execuo de instrues, o microprocessador tambm l e armazena dados na memria,
o que mais uma razo para que a memria seja rpida. A quantidade de bits que o
microprocessador consegue transferir e recuperar da memria est diretamente
relacionada com o nmero de bits externos. Por exemplo, o microprocessador 8088,
usado nos primeiros PCs, operava internamente com 16 bits, e externamente com
apenas 8. J com o Pentium, ocorre o inverso: opera internamente com 32 bits e
externamente com 64.
1.12 METODOLOGIA DE LINHA DE MONTAGEM OU PIPELINE
Ao descrever o funcionamento da UCP, na realizao de seus ciclos de
instruo observa-se que, embora o ciclo de instruo seja composto de vrias etapas,
ele realizado basicamente de forma seqencial, isto , uma etapa se inicia aps a
concluso da anterior.
UCPs deste tipo vm sendo usadas desde as primeiras geraes de
computadores, e muitos aperfeioamentos tecnolgicos foram introduzidos para reduzir
o tempo de processamento de uma instruo, entre os quais o aumento tecnolgico do
relgio e a tecnologia de semicondutor, com seus sucessivos melhoramentos em
fabricao e miniaturizao.
Uma outra metodologia, usada h muito tempo pelas fbricas de automvel e
por inmeras outras indstrias, consiste em dividir o processo de fabricao em estgios
independentes, que, por isso, podem se superpor uns aos outros, no tempo. Denomina-se
linha de montagem ou pipeline. Em computao, a metodologia de construo da UCP
composta de estgios permitiu que, tambm nestes sistemas, se adotasse esta tcnica.
A caracterstica principal do processo de "pipelining" reside em duas premissas
bsicas:
a) a diviso do processo (seja o de fabricao de um automvel, de uma TV ou ciclo de
uma instruo na UCP) em estgios de realizao independentes um do outro; e
b) um novo produto inicia seu processo de fabricao ou execuo depois de o anterior
concluir seu processo.
Suponhamos que o processo de realizao do ciclo de uma instruo seja
dividido em dois estgios: o da leitura da instruo e o da execuo da instruo lida.
Para ler uma instruo, necessrio um acesso memria, mas para executar a
instruo nem sempre necessrio acessar a memria (na decodificao e na execuo
da operao no h acessos memria). Portanto, possvel ler uma instruo,
utilizando-se dos circuitos de um estgio, e transferir esta instruo para o estgio de
execuo. E, durante o perodo em que, neste estgio, no h atividade com a memria,
pode-se ativar o estgio de leitura para buscar uma nova instruo e continuar o
processo com novas instrues.
Na realidade, pode no haver muita produtividade em um sistema destes
("pipelining" com 2 estgios), porque:
a) o tempo de realizao do estgio L no igual ao do estgio E. Em geral, a
execuo consome mais tempo, devido principalmente etapa de busca de

15
operando. E, portanto, na maioria do tempo de execuo (E) pode no ser possvel
haver outra busca de instruo.
b) Pode no ser possvel buscar nova instruo antes da execuo completa da anterior.
Em uma instruo de desvio, o endereo de desvio s conhecido aps a execuo
da operao e, nesse caso, no h como "buscar" uma nova instruo durante o
estgio de execuo. Assim, o estgio de busca no foi superposto ao de execuo, e
o de execuo da instruo seguinte tambm vai acontecer somente aps sua busca.
Ou seja, nada se ganhou em termos de tempo.
Para obter produtividade e rapidez do sistema, deve-se construir a UCP com
mais estgios. Quanto maior a quantidade de estgios, mais superposio e aumento de
velocidade. importante ressaltar que o tempo de durao de cada estgio deve ser o
mais semelhante possvel, de modo que um estgio, no espere o trmino do outro para
iniciar a execuo seguinte.
1.13 EXECUO PARALELA DE INSTRUES
Desde os primrdios da computao, os projetistas tentam construir mquinas
mais rpidas. At certo ponto, as mquinas podem ser aceleradas simplesmente
aumentando a velocidade do hardware. Infelizmente computadores rpidos produzem
mais calor que os lentos e a montagem do computador em um volume pequeno torna
difcil a dissipao desse calor. Os supercomputadores so, muitas vezes, submersos em
fron lquido, um refrigerante, para retirar o calor o mais rpido possvel. Considerando
tudo isso, produzir computadores cada vez mais rpidos est-se tornando cada vez mais
difcil, e tambm cada vez mais caro.
Entretanto, existe outra abordagem. Em vez de uma nica CPU de alta
velocidade, possvel construir uma mquina com muitas ALUs mais lentas (e mais
baratas) ou mesmo CPUs completas para se obter o mesmo poder computacional a um
custo menor.
As mquinas paralelas podem ser divididas em trs categorias (Flynn IN:
Monteiro (1995)), baseando-se no nmero de fluxos de instrues e de dados que elas
tm:
1. SISD - Single Instruction, Single Data
Fluxo nico de instrues e de dados.
2. SIMD - Single Instruction, Multiple Data
Fluxo nico de instrues e mltiplo de dados.
3. MIMD - Multiple Instruction, Multiple Data
Fluxo mltiplo de instrues e de dados.
A mquina tradicional de von Neumman SISD. Ela tem apenas um fluxo de
instrues (i. , um programa), executado por uma nica CPU, e uma memria
conectando seus dados. A primeira instruo buscada da memria e ento executada. A
seguir, a Segunda instruo buscada e executada.
Mquinas SIMD, ao contrrio, operam um mltiplos conjuntos de dados em
paralelo. Uma aplicao tpica para uma mquina SIMD a previso do tempo. Imagine
o clculo da temperatura mdia diria a partir de 24 mdias horrias para muitos locais.
Para cada local, exatamente o mesmo clculo precisa ser feito, porm com dados
diferentes.
A terceira categoria de Flynn a MIMD, na qual CPUs diferentes executam
programas diferentes, s vezes compartilhando alguma memria em comum. Por

16
exemplo, no sistema de reserva de passagens areas, reservas simultneas mltiplas no
prosseguem em paralelo, instruo por instruo, e assim temos fluxo mltiplo de
instruo e fluxo mltiplo de dados.
Outros sistemas multiprocessadores usam no apenas um barramento, mas
vrios para reduzir a carga. Outros usam ainda uma tcnica chamada cache, que
consiste em manter as palavras de memria freqentemente referidas dentro de cada
processador.

17

2.0 Categorias de Microprocessadores:


2.1 8086
Lanado pela Intel em 1978, o 8086 tinha um desempenho dez vezes melhor
que seu antecessor o 8080. Seus registradores tinham a largura de 16 bits, o barramento
de dados passou de 8 para 16 bits e o barramento de endereos se tornou maior com 20
bits de largura, permitindo assim que fosse controlado mais de 1 milho de bytes de
memria. A memria passou a ser tratada de maneira diferente pois esse processador
tratava a mesma como se fosse dividida em at 16 segmentos contendo 64 kilobytes
cada, e no permitia que nenhuma estrutura de dados ultrapassasse a barreira entre os
segmentos.
2.2 8088
O 8088 surgiu da necessidade em se criar um processador com caractersticas
parecidas com as do 8086 mas que tivesse um custo menor. Dessa forma, a Intel
colocou no mercado um chip que s se diferenciava do 8086 pelo fato de Ter um
barramento de dados de 8 bits. Em virtude de sua concepo menos avanada e do baixo
custo de produo o 8088 foi escolhido pela IBM, para o projeto de seu computador
pessoal, pois, alm de possuir o projeto interno de 16 bits tambm pertencia mesma
linhagem do 8080.
2.3 80286
Comparado com seu antecessor imediato (o 8086), o 80286 apresentava
diversas caractersticas particularmente adequadas aos computadores pessoais. Seu bus
de dados possui 16 bits reais, o mesmo acontecendo com os registradores internos. E
ainda foi projetado para trabalhar com maior velocidade, inicialmente 6 MHz, logo
ampliados par 8 e, em seguida para 10. Com o tempo, verses deste microprocessador
com velocidades de 12,5, 16 e at 20 MHz foram introduzidas pela Intel.
Um dos aspectos mais importantes acabou sendo a maior capacidade de
memria do 80286. Ao invs de 20 linhas de endereamento, o 80286 possua 24. As
quatro linhas adicionais aumentam a quantidade mxima de memria que o chip capaz
de enderear em 15 megabytes, elevando o total para 16 megabytes.
O 80286 tambm permitia o uso da memria virtual. Que ao contrrio do que
se pensa, no se compe de chips de memria. Ao contrrio, as informaes ficam
armazenadas em outro meio de memria de massa, podendo ser transferidas para a
memria fsica sempre que forem necessrias. Em conseqncia disso, o 80286 capaz
de controlar at 1 gigabyte (1024 Megabytes) de memria total, 16 megabytes fsicos, e
1008 megabytes virtuais (Rosch (1993)).
Para manter a compatibilidade com os chips mais antigos, os engenheiros da
Intel dotaram o 80286 de dois modos operacionais. O Modo Real reproduzia quase que
exatamente o esquema de operao do 8086. A cpia foi to perfeita que o modo real
herdou todas as limitaes do 8086, inclusive a barreira de 1 megabyte de memria.
Essa restrio era obrigatria para que o 80286 identificasse os endereos de memria
da mesma maneira que o 8086.
Para tirar partido dos maiores recursos do tratamento de memria da
arquitetura 286, foi criado o Modo Protegido. Embora no fosse compatvel com os

18
programas existentes para o 8086, o modo protegido permitia o uso de todos os 16
megabytes de memria real, alm de 1 gigabyte de memria virtual, por qualquer
programa que fosse escrito especificamente para utilizar esses recursos. No entanto,
embora permitisse o uso de mais memria, ele continuava operando com segmentos de
memria de 64 kilobytes.
A utilizao da palavra "protegido" no nome do modo sugere que ele prov
alguma proteo. Isso correto, pois possvel inicializar as tabelas de segmentos de tal
maneira que quando o 80286 utilizado para um sistema de multiprogramao, cada
processo pode ser impedido de acessar segmentos pertencentes a outro processo.
A tabela abaixo, exibe algumas diferenas entre os processadores 8086, 8088 e
80286:
Processador
8086
8088
80286

Largura Registradores (bits)


16
16
16

Endereamento
(bits)

Barramento (bits)
16
8
16

20
20
24

Tab. 2.1 Diferenas entre 8086, 8088, 8286

2.4 80386
A grande evoluo nos micros PC se deu na introduo do processador 80386,
com ele os fabricantes de processadores, como a Intel tiveram base para seus projetos
futuros. No entanto, hoje todos os processadores disponveis no mercado possuem o
funcionamento compatvel com o processador 386 [TOR98].
Trs caractersticas, inovaes tcnicas, formaram a base para o projeto do
processador 386. A primeira delas que h tantas instrues para ir do modo protegido
quanto para voltar ao modo real; a segunda delas a criao do modo virtual 8086,
programas escritos no modo real pudessem ser utilizados diretamente dentro do modo
protegido; e por sua vez a terceira caracterstica que se baseia na manipulao de dados
a 32 bits o dobro da plataforma anterior. Alm disso, estando no modo protegido, o
80386 consegue acessar at 4 GB de memria (RAM) muito mais que qualquer micro
necessita. Isto ocorreu em meados dos anos 80, mas somente por volta de 1990
tornaram-se comuns nos PCs que utilizavam este microprocessador.

Fig. 2.1: Microprocessador 80386. O da esquerda


produzido pela AMD e o da direita, pela Intel.

Vamos descrever alguns recursos importantes do modo protegido do 80386


segundo [TOR98]:

Memria Virtual: com essa maneira de gerenciar, podemos simular um


computador com mais memria RAM do que ele possui. Ou seja, uma tcnica que

19
se baseia no ato de conseguir um arquivo do disco rgido de tamanho qualquer para
utilizar como uma memria extra, chamado arquivo de troca (swap file).
Proteo de Memria: como o processador acessa muita a memria, podemos
carregar diversos programas simultaneamente. Atravs da proteo da memria, o
processador capaz de isolar cada programa em uma rea de memria bem definida,
de modo que um programa no invada a rea de memria que esteja sendo utilizada
por outro programa.
Multitarefa: graas proteo de memria, o processador capaz de saber
exatamente onde se encontra cada programa carregado na memria. Dessa forma,
ele pode executar automaticamente uma instruo de cada programa, parecendo que
os programas esto sendo executados simultaneamente.
Modo Virtual 8086: o modo protegido , a rigor, incompatvel com o modo real.
Como poderamos executar programas de modo real em modo protegido? Atravs
do modo virtual 8086, o processador pode trabalhar como se fosse vrios
processadores 8086 com 1 MB de memria (ou seja, um XT) simultaneamente. isso
significa que voc pode ter, ao mesmo tempo, um ou mais programas de modo real
rodando dentro do modo protegido simultaneamente, cada programa achando que
est trabalhando em um processador 8086 puro e completamente limpo.
O encaixe o processador 80386SX tem um packaging inteiramente diferente do
80286, e os dois chips no se encaixam no mesmo soquete. Com isso, alguns PCs
utilizaram uma placa adaptadora com circuitos auxiliares de multiplexao para poder
fazer com que o 80386SX se encaixe no soquete de um 80286.
Alm da Intel, vrios outros fabricantes produziram microprocessadores 386SX
e 386DX. O principal deles foi a AMD. Foram lanadas verses de 16, 20, 25, 33 e 40
MHz.
A velocidade desses processadores se originou-se de um funcionamento de 16
MHz, embora a primeira possibilidade tenha sido solenemente esnobada pelos
projetistas de computadores, para as quais a velocidade nunca suficiente. Logo aps,
uma verso de 20 MHz foi colocada no mercado. Em 1988, o limite chegou aos 25
MHz, e logo depois passou para 33 MHz. Atualmente, algumas empresas produzem
chips que operam a 40 a 50 MHz. [ROS93]
A Intel lanou o 80386SX como irmo menor do 80386. Internamente, o
80386SX praticamente idntico as 80386, com registradores de 32 bits reais e todos os
mesmos modos operacionais. Apenas uma diferena significativa separam o 80386 do
80386SX. Em vez de interfacear com um bus de memria de 32 bits, o 80386SX foi
projetado para um bus de 16 bits. Seus registradores de 32 bits tm que ser preenchidos
e duas etapas a partir de um canal de I/O de 16 bits. Com isso, o 386SX mais barato
para o fabricante, embora no mercado daquela poca o seu preo no era to baixo.
Sempre que citarmos o processador 80386, estamos nos referindo ao modelo
80386DX que o seu sufixo significa double word (32 bits), ao contrrio do modelo
anterior SX representando single word (16 bits)

Fig. 2.2: Processador 80386SX,

20
um 80386 de baixo custo.

2.5 80486
O processador 80486 foi o sucessor para aplicaes mais pesadas, sendo
possvel encontra-lo nos PCs no ano de 1991. Com uma verso inicial que operava com
um clock de 25 MHz. Dessa maneira, a Intel criou o 486 que na realidade supera muito
o desempenho de um 80386DX-25 em duas vezes, apesar de ter apenas seis instrues a
mais, mas para que esse desempenho fosse justificado, o processador foi incorporado
com circuitos em seu interior como:
Coprocessador matemtico;
Memria cache interna de 8 KB.
Estando integrados diretamente dentro do microprocessador, esses
componentes fizeram com que o desempenho geral do PC subisse muito - um circuito
externo mais lento, pois os dados demoram a ir e vir na placa de circuito impresso.
O cache de memria, a partir do 80486 passou a possuir dois caches de memria; um
dentro do processador, chamado cache de memria interno de 8 KB; e um na placa-me
do micro, chamado de cache de memria externo que hoje varia na ordem de 256 KB e
512 KB. [TOR98]

Fig. 2.3: Microprocessador 80486

O processador mais barato da famlia o 80486SX, disponveis nas verses de


25 e 33 MHz seguindo a mesma linha que seu processador antecessor. Este
microprocessador uma verso de custo mais acessvel, sendo assim, no era dotado do
coprocessador matemtico interno. Para no haver confuso e manter a padronizao,
foram usados os mesmos diferenciadores, DX para a verso standard e SX para a
verso econmica, que no tinha coprocessador matemtico interno. Portanto, quando
citamos a nomenclatura 80486 estamos nos referindo ao 80486DX trabalhando a 32
bits. Um usurio interessado em acrescentar um coprocessador matemtico ao 486SX
poderia perfeitamente faz-lo. Bastava adquirir um 487SX, que para todos os efeitos,
era o coprocessador aritmtico do 486SX. As placas de CPU baseadas no 486SX em
geral possuam um soquete pronto para a instalao deste chip. Entretanto, este tipo de
instalao no era nada vantajosa do ponto de vista financeiro. Era mais barato adquirir
uma placa de CPU equipada com o 486DX. O 486SX tanto foi considerado um erro,
que os concorrentes da Intel (AMD e Cyrix) no lanaram microprocessadores
equivalentes.
Surgiram o:

80486DX-50 ou 80486DX2; que se estabeleceu pelo aumento da freqncia de


operao em que o processador capaz de trabalhar, ou seja, 50 MHz processador

21
resultante da multiplicao do clock, que trabalha internamente com o dobro da
freqncia de operao da placa-me, ou seja, ele multiplica a freqncia de
operao da placa-me por 2. Acarretando problemas com as suscetveis
interferncias eletromagnticas. Logo depois, a Intel lanou o 486DX2-66.
Campeo de velocidade de sua poca, este microprocessador foi o mais vendido
durante 1994. Este aumento de vendas ocorreu quando os preos caam em virtude
do lanamento de microprocessadores equivalentes pela AMD e Cyrix. Veja os
processadores da poca:

Intel: 486DX2-50 e 486DX2-66;


AMD: Am486DX2-50, Am486DX2-66 e Am486DX2-80;
Cyrix: Cx486DX2-50, Cx486DX2-66 e Cx486DX2-80.

80486DX4; um processador que trabalha com multiplicao do clock por 3.


Assim, um 80486DX4-75 trabalha, externamente, com 25 MHz e, internamente,
com 75 MHz; o 80486DX4-100 trabalha, externamente, com 33 MHz e
internamente, com 99 MHz. Sendo este mais rpido que os concorrentes por possuir
16 KB de memria interna. Pouco depois da Intel, a AMD e a Cyrix tambm
lanaram seus microprocessadores 486DX4. So o Am486DX4 e o Cx486DX4. A
AMD criou verses de 100 e 120 MHz. A Cyrix lanou apenas o modelo 100 MHz.

A Intel lanou tambm uma srie paralela, a SL, que permite o gerenciamento avanado de
consumo eltrico alimentado por 5V, exceto o 486DX4 que alimentado por 3V. [TOR98]

O AMD Am 5x86

Fig. 2.4: 5x86 da AMD um 486DX5

Esse processador na verdade, um 486DX5, um 486 com quadruplicao de


clock. Tem cache de memria interno de 16 KB e alimentado por 3,3 V.
Cyrix Cx 5x86

Fig. 2.5: 5x86 da Cyrix um 486DX4 turbinado

22

Esse processador uma verso do processador 6x86 para placas-me 486 e por
esse motivo, consegue ser mais rpido que o 486DX4, ainda que utilize o mesmo
esquema de multiplicao de clock desse processador (triplicao de clock). Tem um
cache de memria interno de 16 KB e alimentado por 3,5 V. Esse processador um
486DX4 turbinado.
2.6 PENTIUM

Pentium (Chipset P54c)

Tambm chamada de Pentium Classic, o Pentium o primeiro microprocessador


considerado de 5 gerao. Fabricado pela Intel, foi lanado em 1993, nas verses de 60
e 66 MHz.
Os microprocessadores Pentium contm mais de trs milhes de transistores e j
incluem co-processador matemtico e memria cache. Operava com 5 volts, e
apresentava muito aquecimento, mas com melhorias no projeto, a Intel permitiu a
operao com 3,5 volts, resultando num aquecimento bem menor. Novas verses foram
lanadas como a de 75, 90, 100, 120, 133, 155, 166 e 200 MHz. O Pentium um
microprocessador de 32 bits, mas com vrias caractersticas de 64 bits. Por exemplo: o
seu barramento de dados, que d acesso a memria feito a 64 bits por vez, o que
significa uma maior velocidade, ele transporta simultaneamente dois dados de 32 bits.
Ao inverso do 486 que era de 32 bits por vez. A freqncia de operao da placa me a
seguinte:
Processador
Pentium 75 MHz
Pentium 60, 90, 120,155 MHz
Pentium 60, 100, 133, 166 e 200 MHz

Freqncia de Operao Placa-me


50 MHz
60 MHz
66 MHz

Tab. 2 2: Freqncia da Placa Me

A memria cache interna do Pentium(L1) de 16 KB, sendo dividida em duas, uma de


8 KB para armazenamento de dados e outra de 8 KB para instrues.
A arquitetura superescalar em dupla canalizao, ou seja o Pentium funciona
internamente como se fosse dois processadores 486, trabalhando em paralelo. Dessa
forma, ele capaz de processar (2)duas instrues simultaneamente. Os processadores
Pentium pode trabalhar em placas-me com mais de um processador diretamente,
utilizando como conexo o soquete 7.

Pentium Pr (P6)

O Pentium Pro foi criado para ser o sucessor do Pentium, sendo considerado
como sexta gerao.
Inicialmente foi lanado nas verses 150, 180 e 200 MHz. Opera com 32 bits e
utiliza memria de 64 bits, da mesma forma como ocorre com o Pentium. Seu projeto
foi otimizado para realizar processamento de 32 bits, sendo neste tipo de aplicao mais
rpido que o Pentium comum, s que ao realizar processamento de 16 bits perde para o
Pentium comum.

23
O Pentium Pro possui uma memria cache secundria dentro do prprio
processador. Com isso, aumenta-se o desempenho do processador, ou seja, a freqncia
usada ser a mesma de operao interna do processador.
A arquitetura do Pentium Pro superescalar em tripla canalizao, capaz de
executar (3)trs instrues simultaneamente.
O ncleo do Pentium Pro RISC, s que para ele ser compatvel com programas
existentes, foi adicionado um decodificador CISC na sua entrada. Dessa forma, ele
aceita programa CISC, porm os processa em seu ncleo RISC. O Processador do
Pentium Pro pode ser utilizado em placas-me com dois ou quatro processadores.
Para seu melhor desempenho usado quantidades elevadas de memria, fazendo
que seu uso fosse direcionado para servidores, ao invs de computadores domsticos ou
de escritrios.
A conexo utilizada pelo processador chamada de soquete 8. Esse soquete
bem maior que o soquete 7 utilizado no Pentium Clssico(Pentium Comum).

Pentium MMX (P55c)

Verses: 166 MMX, 200 MMX, 233 MMX MHz;


Visando aumentar o desempenho de programas que fazem processamento de
grficos, imagens e sons, a Intel adicionou ao microprocessador Pentium, 57 novas
instrues especficas para a execuo rpida deste tipo de processamento, elas so
chamadas de instrues MMX (MMX= Multimedia Extensions). Uma nica instruo
MMX realiza o processamento equivalente ao de vrias instrues comuns. Essas
instrues realizam clculos que aparecem nos processamentos de sons e imagens.
As instrues MMX no aumenta a velocidade de execuo dos programas, mas
possibilita que os fabricante de software criem novos programas, aproveitando este
recurso para que o processamento de udio e vdeo fique mais rpido. Segundo
testes( INFO/Fev/97), o ganho de velocidade nessas operaes pode chegar a 400%.
O Pentium MMX possui uma memria cache interna de 32 KB e trabalha com nveis
duplos de voltagem: externamente a 3,3 volts enquanto o ncleo do processador opera a
2,8 volts. A conexo feita atravs do Soquete 7, ou seja, possui o mesmo conjunto de
sinais digitais que o Pentium comum.
A freqncia de operao na placa me de 66 MHz.

Pentium II (i440Bx)

Sucessor do Pentium MMX, com velocidades de 300, 333, 350, 400 MHz.
Possui barramento de 100 MHz, e encapsulado em um envlucro(cartucho) que
engloba o processador e a cache externa(L2), este envlucro metlico facilita a
dissipao do calor.
A memria cache primria(L1) continua sendo 32 KB igual ao Pentium MMX, sendo
que a memria secundria(L2) no est mais dentro do processador e sim no prprio
cartucho, ao lado do processador.
O Pentium II permite o multiprocessamento de dois processadores. Sua conexo
na placa-me feita atravs do seu conector prprio, chamado de slot 1.

CELERON

24
Celeron 233, 266, 300, 330 MHz
A Intel lanou em abril/98, uma verso especial do Pentium II, chamada de Celeron.
Este processador pode ser instalado nas mesmas placas de CPU projetadas para o
Pentium II. Nas suas primeiras verses, operava com clock externo de 233 MHz, e
clock interno de 66 MHz, e no possua memria cache secundria(cache de nvel 2).
Com isto o processador tinha o preo baixo em relao aos concorrentes. O
encapsulamento usado em todos os processadores Celeron e do tipo SEPP (Single Edge
Processor Package), um novo mecanismo para dissipao do calor, similar ao SEC
(Single Edge Contact) s que vem sem o invlucro(cartucho). Sua conexo feita
atravs do soquete 7.
Hoje j encontramos o microprocessador Celeron de 300 e 330 MHz que so dotados de
128 KB de memria cache secundria(L2) .
O Celeron pode ser considerado um Pentium II Light. O chipset (conjunto de
chips que complementam o processador 440EX) criado para ele, uma verso
simplificada dos modelos Pentium II. Sua principal limitao est na capacidade para
expanso, micros com esse processador podem ter apenas trs conectores PCI e dois
conectores para memria. Em compensao, o processador Celeron suporta vdeo AGP,
memria do tipo SDRAM e discos UltraATA.

Pentium III (440Bx)

Projetado para a Internet, o processador Pentium III vem com clock de 450 e 500
MHz, e com 70 novas instrues que habilita aplicativos de processamento avanados
de imagens, 3D, udio e vdeo, e reconhecimento de voz. Seu barramento de 100
MHz, com memria cache secundria de 512 KB.
(Obs.: PCs baseados no novo processador Pentium III estaro disponveis a partir deste
ms).
2.7 AMD

AMD X5 - conhecido como AMD 5x86 com velocidade de 133 MHz, foi projetado
para competir com o Pentium de 60 e 66 MHz, e possua um desempenho similar ao
de um Pentium 75.
AMD K5 - de 133 MHz foi o primeiro microprocessador compatvel com o Pentium
lanado pela AMD. Apesar de veloz, inteiramente compatvel com o Pentium e bem
mais barato, demorou muito a chegar ao mercado. A Intel j tinha lanado o Pentium
200 MMX.
AMD K6 - este chip o mais recente da famlia AMD, muito mais rpido que o
K5, vem com instrues MMX, mais barato e mais rpido que um Pentium MMX
do mesmo clock..

2.8 CYRIX
A primeira verso de processadores da Cyrix foi o Cx 5x86, concorrente do 486,
e possua desempenho equivalente ao de um Pentium 90 MHz. Com a chegada do 6x86P200+, a Cyrix comeou competir com o Pentium. Por exemplo, na poca em que o
Pentium mais veloz era o 166 MHz, a Cyrix j produzia o seu 6x86 P200+, com
desempenho superior ao de um Pentium 200 MHz.
O prximo processador da Cyrix foi o 6x86 MX-P200+ que se comporta de
forma idntica a um Pentium, possui compatibilidade total, pino a pino, o que significa

25
que podemos instal-lo em placas de CPU Pentium. Portanto, possui caractersticas
semelhantes em relao ao barramento de dados e de endereos, alm da memria cache
interna e do coprocessador matemtico.
Verses dos processadores Cyrix:
Verses
6x86-P120+
6x86-P133+
6x86-P150+
6x86-P166+
6x86-P200+

Clock Interno
100 MHz
110 MHz
120 MHz
133 MHz
150 MHz

Tab. 2.3: Processador de 150 MHz com desempenho superior ao Pentium 200

26

3. CISC x RISC
O conceito dos processadores RISC utilizar um conjunto reduzido de
instrues de linguagem de mquina (computador com conjunto de instrues reduzido)
em contraste com os processadores CISC (computador com conjunto de instrues
complexo).
Os primeiros processadores projetados tinham um grande problema que era a
produo de software que pudessem rodar nestas mquinas. Era necessrio que o
programador tivesse conhecimentos profundos sobre o processador que ele ia
desenvolver, pois ele tinha que escrever programas em linguagem de mquina pura.
Visto essa dificuldade, os projetistas de hardware desenvolveram uma nova
tcnica, chamada microprogramao (instrues). Microprogramao nada mais do
que criar novas funes que so adicionadas diretamente no hardware, facilitando
assim o trabalho do programador. Novas instrues foram criadas, como por exemplo
para tratar de comandos case e multiplicaes. Conforme eram percebido novas
necessidades, os projetistas criavam novas instrues e o adicionavam ao processador.
Foi-se ento sobrecarregando os processador com inmeras instrues, tornando-o
complexo, surgindo assim o termo CISC.
A adio de novos microcdigos acaba tornando o processador mais lento.
Ento os projetistas criavam um modo de aumentar a velocidade do processador para
compensar a lentido resultante dos microcdigos. Mas, est chegando o dia onde no
mais possvel aumentar a velocidade dos processadores sem aumentar o tamanho
fsico.
Um das formas para solucionar problemas era utilizar microcdigos. Havia um
outro modo de solucionar esses problemas: a criao de software que pudessem
substituir esses microcdigos. Mas, para que isso fosse colocado em prtica era
necessrio a reduo da diferena de velocidade entre a memria principal e a CPU, o
que tornava inutilizvel essa segunda opo.
Em exames feitos em programas que rodam em processadores CISC, foi
descoberto que 85 % do programa consiste em apenas trs instrues: assinalamentos,
comandos if e chamadas de procedimentos. Conclui-se ento que desnecessrio a
adio de microprogramas que quase ou nunca so utilizados.
Porm, com o tempo, houve um aumento significativo da velocidade das
memrias, possibilitando assim a utilizao de software em substituio dos
microprogramas. Mas existe uma curiosidade, antes da inveno dos microprogramas
todos os processadores eram processadores RISC, com instrues simples executadas
diretamente no hardware. Depois que a microprogramao tomou conta, os
computadores se tornaram mais complexos e menos eficientes. Agora a industria est
voltando s suas razes, e construindo mquinas rpidas e simples novamente.
A descoberta crtica que tornou as mquinas RISC viveis foi, o que bastante
interessante, uma avano de software, e no de hardware. Foi o aprimoramento da
tecnologia de otimizao de compilao que tornou possvel gerar microcdigos pelo
menos to bom quanto, se no for melhor, que o microcdigo manuscrito.
Mas, como tudo na vida tem problemas, os processadores RISC tambm tem as
suas desvantagens. Uma delas na execuo de uma multiplicao, em processadores

27
RISC necessrio sintetizar uma srie de formas, dependendo dos operandos. Outra
desvantagem , que sem ajuda de hardware especial, mquinas RISC no so boas para
clculos em ponto flutuante.
A primeira mquina RISC moderna foi o minicomputador 801 construdo pela
IBM, comeando em 1975, Entretanto, a IBM no publicou nada a seu respeito at
1982. Em 1980, um grupo em Berkeley, liderado por David Patterson e Carlo Squin,
comeou a projetar pastilhas RISC VLSI. Eles criaram o termo RISC e batizaram sua
pastilha de CPU de RISC I, seguida de perto pela RISC II. Um pouco mais tarde, em
1981, do outro lado da baa de So Francisco, em Stanfor, John Hennessy projetou e
fabricou uma pastilha RISC um pouco diferente, que ele chamou de MIPS.
Esta trs mquinas RISC so comparadas a trs mquinas CISC na Tab. 3.1.
Cada uma delas levou diretamente a importantes produtos comerciais. O 801 foi o
ancestral do IBM PC/RT, o RISC I foi a inspirao do projeto SPARC da Sun
Microsystems, e a pastilha MIPS de Stanford levou formao da MIPS Computer
Systems.
Modelo
Ano em que
ficou pronto
Instrues
Tamanho do
Microcdigo
Tamanho da
Instruo
Modelo de
Execuo

IBM
370/168
1973

CISC
VAX
11/780
1978

Xerox
Dorado
1978

IBM 801

208
54K

303
61K

2-6

2-57

Reg-reg
Reg-reg
Reg-mem Reg-mem
Mem-mem Mem-mem

1980

RISC
Berkeley
RISC I
1981

Stanford
MIPS
1983

270
17K

120
0

3
0

55
0

1-3

Pilha

Reg-reg

Reg-reg

Reg-reg

Tab. 3.1: Comparao entre trs mquinas CISC tpicas com as trs primeiras mquinas RISC. Os
tamanhos de instruo e de microcdigo esto bytes

3.1 Princpios tcnicos de mquinas RISC


Vamos primeiro apresentar uma breve descrio da filosofia bsica de projeto
RISC. Projetar uma mquina RISC tem cinco passos bsicos:

Analisar as aplicaes para encontrar as operaes-chave;


Projetar uma via de dados que seja tima para as operaes-chave;
Projetar instrues que executem as operaes-chaves utilizando a via de dados;
Adicionar novas instrues somente se elas no diminurem a velocidade da
mquina;
Repetir este processo para outros recursos.

O corao de qualquer computador a sua via de dados, que contm os


registradores, a ALU e os barramentos que os conectam. Este circuito deve ser
otimizado para a linguagem ou aplicaes em questo. O tempo requerido para buscar
os operandos a partir de seus registradores, execut-los atravs da ALU e armazenar o
resultado de volta em um registrador, chamado de tempo de ciclo da via de dados,
deve ser o mais curto possvel.

28
O prximo passo projetar as instrues de mquina que faam bom uso da via
de dados. Apenas algumas instrues e modos de endereamento so tipicamente so
tipicamente necessrios. Instrues adicionais devem apenas ser adicionadas se elas
forem freqentemente utilizadas e no reduzirem o desempenho das mais importantes.
A Regra de Ouro nmero 1 diz:
Sacrifique tudo para reduzir o tempo de ciclo da via de dados
Sempre que se resolver adicionar uma nova instruo ao processador, ela deve
ser examinada sob esta luz: como ela afeta o tempo de ciclo da via de dados? Se ela
aumentar o tempo de ciclo, provavelmente no vale a pena t-la.
Finalmente, o mesmo processo deve ser repetido para todos os outros recursos
dentro da CPU, tais como memria cache, gerenciamento de memria, coprocessadores de ponto flutuante, e assim por diante.
Mquinas RISC podem diferir de suas concorrente CISC de oito formas crticas,
como listado na Tab. 3.2.
1
2

RISC
Instrues simples levando 1 ciclo

3
4

Apenas LOADs/STOREs referenciam a


memria
Altamente pipelined
Instrues executadas pelo hardware

5
6
7
8

Instrues com formato fixo


Poucas instrues e modos
A complexidade est no compilador
Mltiplos conjuntos de registradores

CISC
Instrues complexas levando mltiplos
ciclos
Qualquer Instruo pode referenciar a
memria
No tem pipeline, ou tem pouco
Instrues executadas pelo
microprograma
Instrues de vrios formatos
Muitas instrues e modos
A complexidade est no microprograma
Conjunto nico de registradores

Tab. 3.2 - Caractersticas das mquinas RISC e CISC

3.2 Uma Instruo por Ciclo da Via de Dados


Em certo sentido, nome Reduced Instruction Set Computer, no um bom
nome. Enquanto verdade que a maioria das mquinas RISC tm relativamente poucas
instrues, a caracterstica nica mais importante que as distingue das mquinas CISC
que as instrues RISC so completadas em um nico ciclo da via de dados.
Uma conseqncia do princpio de que toda instruo RISC deve gastar um ciclo
que qualquer operao que no possa ser completada em um ciclo no pode ser
includa no conjunto de instrues Assim, muitas mquinas RISC no possuem
instrues para multiplicao ou diviso. Na prtica, a maioria das multiplicaes so
formadas por pequenas constantes conhecidas em tempo de compilao, de modo que
elas podem ser simuladas por seqncias de somas e deslocamentos. Instrues de
ponto flutuante so executadas por um co-processador.
3.3 Arquitetura LOAD/STORE
Dado o desejo de ter toda instruo gastando um ciclo de relgio, claro que as
instrues que referenciam a memria vo ser um problema. Instrues que buscam
seus operandos de registradores e armazenam seus resultados em registradores podem
ser manipuladas em um ciclo, mas instrues que carregam a partir de ou armazenam

29
em memria levam muito tempo. Aumentar o ciclo de relgio por um fator de dois ou
trs para acomodar cargas e armazenamentos a viola a Regra de Ouro 1 do projeto
RISC.
Como algumas instrues tm que referenciar memria, instrues especiais
LOAD e STORE so adicionadas arquitetura. Apenas estas instrues podem
referenciar a memria.
3.4 Pipelining
claro que proibir que as instrues comuns acessem a memria no resolve o
problema de como fazer com que LOADs e STOREs operem em um ciclo. A soluo
est em um pouco de truque. Vamos agora relaxar nosso objetivos ligeiramente. Em
vez de requerer que toda instruo deva ser executada em um ciclo, vamos meramente
insistir que seremos capazes de comear uma instruo a cada ciclo, sem levar em
considerao quando que ela termina. Se, em n ciclos, conseguirmos iniciar n
instrues, na mdia teremos atingido uma instruo por ciclo, o que
suficientemente bom.
Para atingir este objetivo modificado, todas as mquinas RISC tm pipeline. A
CPU contm diversas unidades independentes que trabalham em paralelo. Uma delas
busca as instrues, e outras as decodificam e executam. A qualquer instante, diversas
instrues esto em vrios estgios de processamento.
Uma instruo comum utiliza duas unidades pipeline, uma para busca e outra
para execuo. Num instante de tempo uma instruo iniciada. No outro instante, a
instruo iniciada muda de unidade e executada. Na unidade que ficou livre iniciado
uma nova instruo. Assim mantemos a mdia, que iniciar uma instruo a cada ciclo.
Porm instrues LOADs e STOREs requer uma terceira unidade, para referenciar a
memria. Ento, em vez de finalizar a execuo em duas unidades, finalizam em trs
unidades. Na Tab. 3.3, exemplo de uma pipeline em execuo.
Ciclo

Busca de instruo
Execuo de instruo
Referncia memria

1
1

2
2
1

3
L
2

4
4
L

5
5
4
L

6
6
5

7
S
6

8
8
S

9
9
8
S

10
10
9

Tab. 3.3: Uma mquina RISC com pipeline contendo LOAD (L) e STORE (L) atrasados

3.5 Uso de Registrador


O objetivo de toda mquina RISC executar uma instruo por ciclo, na mdia.
Uma vez que LOAD e STORE tipicamente requerem dois ciclos, est mdia s pode
ser atingida se o compilador tiver sucesso no preenchimento de 100 % dos buracos de
atraso depois de cada um deles. Isto leva a raciocinar que, quanto menos LOADs e
STOREs existirem, menos sero desperdiados devido inabilidade do compilador em
preench-los com alguma coisa til.
Por est razo, compiladores para mquinas RISC fazem uso intenso de
registradores, para reduzir o trfego de memria (isto , o nmero de LOADs e
STOREs). As mquinas RISC possuem substancialmente mais registradores do que
mquinas CISC.

30
3.6 Por que processadores RISC no decolaram?
"Nos anos, alguns engenheiros de RISC ridicularizaram o CISC e predisseram o
fim da famlia x86. Infelizmente para eles, a penalidade por menosprezar os
fabricantes (principalmente a Intel) at maior que a penalidade para no prever
corretamente os desvios. Negcios e tecnologia so duas coisas diferentes. o RISC
poderia ser tecnicamente superior ao CISC, mas vastos recursos da Intel e o embalo do
DOS e do Windows fizeram com que os x86 continuassem competitivos. Agora, a Intel
diz que est acabando o combustvel do RISC. Ser que a Intel poderia estar cometendo
o mesmo erro que os fs de RISC fizeram nos anos oitenta?
muito cedo para diz-lo. Porm, duvidoso que os fabricantes de RISC
possam conseguir a mesma quantidade de recursos como os que mantm os x86 vivos.
A arquitetura RISC mais popular (no contando aplicaes embutidas) o PowerPC. E
o nico usurio em grande quantidade do PowerPC a Apple, uma companhia que luta
para sobreviver. Sem mais usurios, por quanto mais tempo os fabricantes de RISC
podem justificar a pesquisa e desenvolvimento caros que so necessrios para combater
a Intel?" (Halfhill, 1997).
3.7 Algumas informaes tcnicas sobre processadores RISC
3.7.1 Digital Equipment
O Alpha adota mais de perto a filosofia RISC do que seus concorrentes, ao
cortar cada grama de gordura do hardware e do conjunto de instrues em favor do
caminho mais veloz possvel para os dados. Os projetistas do Alpha acreditam que um
clock mais rpido conseguir o que os outros chips obtm atravs de hardware
sofisticado. O princpio parece funcionar: lanaram um microprocessador de chip
nico mais veloz do mundo, com performance com inteiros iguais a trs vezes do
Pentium e de FPU superior do conjunto de chips de supercomputador MIPS.
A famlia Alpha evita a execuo fora de ordem, dependendo, ao invs disso,
de compiladores inteligentes capazes de seqenciar o cdigo de forma a minimizar as
paradas na linha de canalizao. A famlia tem quatro unidades de execuo (duas de
inteiros e duas de ponto flutuante) e pode emitir duas instrues de cada tipo por ciclo.
Tem linha de canalizao de instrues de quatro estgios que alimenta canais separados
para inteiros, ponto flutuante e execuo-memria. Comparado com outros chips
RISC, o Alpha tem linhas de canalizao que so relativamente profundas e simples,
para propiciar altas velocidades de clock.
3.7.2 MIPS
O MIPS dirigido para aplicaes mais comuns. A adoo de agendamento
dinmico de instrues, o que reduz a necessidade de recompilar software escrito para
processadores de geraes mais antigas, particularmente benfica para uma parceria
da MIPS, a Silicon Graphics, que tem um catlogo de aplicativos grfico grandes e
complexos.
Os processadores MIPS destacam-se pela previso dinmica de ramificaes
para minimizar paradas na linha de canalizao, com at quatro nveis de execuo
especulativa, utilizando renomeao de registradores para assegurar que nenhum
resultado seja escrito nos registradores verdadeiros at que a ramificao seja resolvida.
O chip mantm um "mapa sombra" de seus mapeamentos de renomeao de

31
registradores. Na eventualidade de uma ramificao ser prevista erroneamente, ele
simplesmente restaura esse mapa, em vez de apagar registradores e esvaziar buffers.
O processador apresenta tambm um radical esquema de execuo fora de
ordem. As instrues permanecem na ordem de programa durante os trs primeiros
estgios da linha de canalizao, mas depois disso elas so dispersas para uma entre
trs filas (que esperam pelas ALUs de inteiros, as FPUs ou a unidade de
carga/armazenagem). Essas filas so atendidas em qualquer ordem em que seus recurso
fiquem livres.
A ordem de programa finalmente restaurada pela "graduao" (que jargo da
MIPS para a retirada) da instruo mais antiga. Isso assegura tambm um preciso relato
de excees. Esse reordenamento de instrues auxiliado por hardware oferece uma
grande vantagem para os usurio finais porque o cdigo escrito para as CPUs escalares
mais antigas da MIPS ganharo o beneficio quase total de velocidade sem necessidade
de recompilao.
O MIPS tem potencial para emitir cinco instrues por ciclo, mas pode trazer e
retirar somente quatro; uma quinta no pode ser completada no mesmo ciclo.
Entretanto, esse excesso de largura de faixa de despacho oferece oportunidades mais
flexveis para o agendamento de instrues.
3.7.3 Sun Microsystems
Pioneira na adoo da tecnologia RISC, a Sun especificou o SPARC como uma
arquitetura escalvel. Contm nove unidades de execuo: duas ALUs de inteiros,
cinco FPUs (duas para adio em ponto flutuante, duas para multiplicao de ponto
flutuante e uma para diviso/raiz quadrada em ponto flutuante), uma unidade de
processamento de ramificaes e uma unidade de carga/armazenagem. Tem previso
dinmica de ramificaes previstas, mas no pode emitir instrues fora de ordem.
Depende de compiladores otimizados para orden-las bem.
3.7.4 Hewlett Packard (HP)
A HP foi das primeiras a entrar no mercado RISC, lanando o seu primeiro
processador PA-RISC de 32 bits em 1986.
Os chips da HP possuem 10 unidades funcionais: duas ALUs de inteiros, duas
unidades de deslocamentos/mescla, duas unidades multiplicar/acumular (MAC) de
ponto flutuante, duas unidades de diviso/raiz quadrada em ponto flutuante e duas
unidades de carga/armazenagem. As unidades MAC tm latncia de trs ciclos e so
totalmente canalizadas para processamento em preciso simples para proporcionar at 4
FLOPS por ciclo. As unidades de diviso tem latncia de 17 e no so canalizadas,
mas podem funcionar concorrentemente com as MACs.

32

4. CONSIDERAES FINAIS
Chegamos a uma concluso que os microprocessadores evoluram de uma
maneira to rpida que a Informtica se firma como uma cincia mutante, sofrendo
constantes alteraes. Essas mudanas freqentes tornam a Informtica muito dinmica.
Com essa velocidade de alteraes os fabricantes de software e hardware
desenvolveram produtos para utilizarem os recursos que esses processadores fornecem
associado ao lado do o processador ser a pea mais importante em um computador.
Esses processadores evoluram de tal maneira que bits que eram trafegados em
barramentos de 8 bits hoje trafegam em velocidades bem superiores o mesmo
acontecendo com os registradores internos que tinham 16 bits, clocks e memria cache
que a principio os primeiros processadores no possuram. Isso sem frisar muito a
velocidade de clock que tornam a execuo de programas mais rpida junto com
memrias apropriadas.
Com toda essa pesquisa feita, chegamos a um ponto comum que a tecnologia de
processadores o carro chefe da Informtica e as empresas e os usurios finais ainda
vo usufruir muito de uma tecnologia que o homem est sempre superando. Para cada
vez executar programas no menor espao de tempo.

33

5. BIBLIOGRAFIA
BADGETT, Tom. SANDLER, Corey. STALLINGS, Wade. Projetando
Montando e personalizando o seu PC: Co-Processador Aritmtico. Trad.
Pietro Marques Torres. Rio de Janeiro: Berkeley, 1991, p. 171-182
GREGO, Maurcio. Ateno! Sua vida vai mudar. Informtica Exame. So
Paulo, v. 12, n. 131, p. 50-55, fev/1997.
MEIRELLES, Fernando de Souza. Informtica Novas aplicaes com
microcomputadores: Estruturas de Processamento e Microcomputadores.
2 ed. So Paulo: Makron Books, 1994, p. 182-200
MONTEIRO, Mrio A. Introduo organizao de computadores:
Unidade Central de Processamento. 2 ed. Rio de Janeiro: LTC,
1995, p. 130-184
SILVA, Cssio Roque da. Escolha sua prxima CPU. Byte. So Paulo, v. 06,
n. 05, p. 66-69, mai/1997.
SILVA, Cssio Roque da. O frmula 1 do mercado. Byte. So Paulo, v. 07,
n. 79, p. 50-57, abr/1998.
HALLIDAY, Caroline M. Segredos do PC. Traduo Pedro Conti, edi. Berkeley Brasil,
So Paulo, p. 119-121.
VASCONCELOS, Lercio. Processamentos Modernos.(http://www.laercio.com.br),
1999.
VASCONCELOS, Lercio. Novos Processadores e o Barramento de 100 MHz. Jornal
A GAZETA, Esprito Santo, Abril/98,(http://www.laercio.com.br), 1999.
GREGO, Maurcio. Ateno! A sua vida vai mudar. Reportagem de Capa, Informtica
Exame, So Paulo, ano 12, n 131, p. 50-55, Fevereiro/1997.
GREGO, Maurcio. Chegou a hora do consumidor. Reportagem de Capa, Informtica
Exame, So Paulo, ano 11, n 125, p. 52-58, Agosto/1996.
GREGO, Maurcio. D um banho de loja no seu micro.Reportagem da Capa,
Informtica Exame, So Paulo, ano 11, n 129, p. 50-58, Dezembro/1996.
INTEL. Destaques e Especificaes do Processador Pentium III da Intel.
(http://www.intel.com), 1999.

34
Redao. O Pentium vira o jogo. Hardware Micros, Informtica Exame, So Paulo, ano
10, n 118, p. 52-55, Novembro/1995.
Redao. A Intel mostra as suas garras. Especial, Informtica Exame, So Paulo, ano
12, n 113, p. 66-70, Julho/1995
TORRES, Gabriel. Hardware: Curso Completo. Axcel, 2 ed., Rio de Janeiro, p. 894,
1998.
ROSCH, Winn L. Desvendando O Hardware do PC: microprocessadores, 2 ed. Rio
de Janeiro: Campus, 1993. 59-77 pgs.
TANENBAUM, Andrew S. Organizao Estruturada de Computadores. 3 ed. Rio de
Janeiro. Prentice-Hall do Brasil LTDA, 1992.
HALFHILL, Tom R., MONTGOMERY, John. Adrenalina Pura, Revista Byte Rio
de Janeiro, p. 19-38 , Novembro 1995.

Você também pode gostar