Escolar Documentos
Profissional Documentos
Cultura Documentos
Organizao de
Computadores
Notas de Aula
SUMRIO
Lista de Figuras ............................................................................................................................................. 4
Introduo...................................................................................................................................................... 5
1 Conceitos sobre organizao de computadores.......................................................................................... 6
1.1 Funcionamento bsico dos sistemas de computao ____________________________________ 6
1.2 Bits, bytes & Cia. _______________________________________________________________ 7
1.3 Registradores e memria _________________________________________________________ 8
1.4 Barramentos ___________________________________________________________________ 8
1.5 Interface CPU/Memria Principal __________________________________________________ 9
1.6 Clock________________________________________________________________________ 10
1.7 Taxa de transferncia e multiplicador de freqncia ___________________________________ 11
1.8 Barramentos de expanso ________________________________________________________ 12
1.8.1 Barramentos em microcomputadores____________________________________________ 13
2 CPU .......................................................................................................................................................... 16
2.1 Componentes _________________________________________________________________ 17
2.1.1 Funo Processamento _______________________________________________________ 18
2.1.2 Funo de Controle _________________________________________________________ 19
2.1.3 Barramentos Internos ________________________________________________________ 20
2.2 Ciclo de instruo ______________________________________________________________ 20
2.3 Medidas de Desempenho ________________________________________________________ 22
2.4 Mais de uma instruo por ciclo___________________________________________________ 23
2.4.1 Pipeline___________________________________________________________________ 23
2.4.2 Unidades de execuo especializadas ___________________________________________ 25
3 Memria ................................................................................................................................................... 26
3.1 Organizao e hierarquia da memria ______________________________________________ 27
3.2 Tempo e ciclo de acesso _________________________________________________________ 28
3.3 Tecnologias de memria RAM____________________________________________________ 28
3.4 Mdulos de memria ___________________________________________________________ 30
3.5 Memrias do tipo ROM _________________________________________________________ 31
3.6 Memria cache ________________________________________________________________ 32
4 Unidades de discos e discos removveis................................................................................................... 36
4.1 Cabos e configuraes fsicas_____________________________________________________ 36
4.2 Unidade de disquetes ___________________________________________________________ 37
4.3 H.D.s ________________________________________________________________________ 37
4.3.1 Anatomia do H.D. __________________________________________________________ 39
4.3.2 Desempenho _______________________________________________________________ 40
4.3.3 Padres de conexo _________________________________________________________ 41
4.4 Limites em HDs _______________________________________________________________ 42
4.4.1 Limite de 504Mb ___________________________________________________________ 42
4.4.2 Limite de 2Gb______________________________________________________________ 43
4.4.3 Limite de 8Gb______________________________________________________________ 43
4.5 CD-ROM ____________________________________________________________________ 44
5 Entrada e Sada......................................................................................................................................... 45
5.1 Conexes de perifricos de entrada e sada padres____________________________________ 46
5.1.1 Monitor___________________________________________________________________ 47
5.1.2 Teclado ___________________________________________________________________ 47
5.1.3 Porta paralela ______________________________________________________________ 48
5.1.4 Portas seriais_______________________________________________________________ 49
5.2 Formas de comunicao entre CPU/MP e interface de I/O ______________________________ 50
5.3 Endereos de I/O para as portas de comunicao padro________________________________ 50
Organizao de Computadores Notas de aula
Lista de Figuras
Figura 1 Componentes bsicos de um sistema de computao................................................................. 6
Figura 2 Forma geral das instrues ......................................................................................................... 6
Figura 3 Barramentos ................................................................................................................................ 9
Figura 4 Interface CPU/MP..................................................................................................................... 10
Figura 5 Barramentos em um microcomputador..................................................................................... 14
Figura 6 Ciclo bsico de instruo .......................................................................................................... 16
Figura 7 Componentes da CPU............................................................................................................... 17
Figura 8 Ciclo detalhado de instruo..................................................................................................... 21
Figura 9 Algoritmo para execuo de instrues .................................................................................... 21
Figura 10 Linha de montagem ................................................................................................................ 23
Figura 11 Processadores superescalares.................................................................................................. 25
Figura 12 Hierarquia de acesso memria ............................................................................................. 27
Figura 13 Hierarquia de memria ........................................................................................................... 28
Figura 14 EEPROM ................................................................................................................................ 32
Figura 15 Transferncia de dados entre CPU/Cache/MP........................................................................ 33
Figura 16 Controladoras de unidades de disco........................................................................................ 36
Figura 17 Esquema de um HD ................................................................................................................ 37
Figura 18 Posio dos jumpers de configurao..................................................................................... 38
Figura 19 Viso interna de um HD ......................................................................................................... 39
Figura 20 MBR e parties ..................................................................................................................... 40
Figura 21 Transferncia de dados em HDs ............................................................................................. 41
Figura 22 Caractersticas dos principais perifrios de I/O ...................................................................... 45
Figura 23 Conectores de cabos paralelos ................................................................................................ 48
Figura 24 Conectores de cabos seriais .................................................................................................... 49
Figura 25 Conectores min-DIN............................................................................................................... 49
Figura 26 Formas de organizao de memria para comunicao com interface de I/O ....................... 50
Figura 27 Organizao de computadores ................................................................................................ 61
Introduo
Somente os trabalhadores despreparados culpam seus instrumentos de trabalho pelo seu mau
desempenho. Que tipo de trabalhadores no conhece seus instrumentos de trabalho, no sabem como
funcionam e no distingue um bom instrumento de trabalho de um ruim?
Muita gente ainda desconhece a composio e organizao dos componentes que integram um
instrumento vital para o seu trabalho: o computador. Hoje em dia, um bom profissional da rea de
informtica, deve possuir slidos conceitos sobre os componentes e a organizao dos computadores.
Mesmo o profissional que ir se dedicar 100% de seu tempo a trabalhar projetando, construindo, testando,
validando, instalando, treinando ou qualquer outra tarefa em nvel de software, deve, pelo menos,
informar-se sobre o hardware. O trabalho em nvel de software pode ser profundamente influenciado,
pelo hardware, quer seja na produtividade, quer seja em seu planejamento; desta forma, os componentes
fsicos de um sistema computacional no podem ser desconhecidos a um profissional da rea de
informtica.
Saber usar um computador, reconhecer e saber usar seus principais perifricos de entrada e sada
pode ser suficiente para futuros profissionais, mas voc estar subestimando seu potencial e a si prprio,
alm de tornar-se limitado. Sem saber sobre a organizao e o funcionamento de seus principais
componentes no saber se adquiriu ou indicou o computador mais adequado determinada funo, ou,
um equipamento caro incapaz de realizar tarefas nas quais os modelos mais simples se sobressaem.
Perifricos
de entrada
Unidade de
Processamento
CPU
Perifricos
de sada
Dispositivos de
armazenamento
memria
Figura 1 Componentes bsicos de um sistema de computao
Para que um computador trabalhe necessria insero de informaes (entrada). Seguindo as
instrues fornecidas pelos programas, o computador processa os dados oriundos da entrada
(processamento) armazenando-os logo em seguida para posterior utilizao. As informaes produzidas
ficam disponveis para utilizao (sada) e a menos que se deseje as informar e produzir novamente, elas
devem ser armazenadas em um dispositivo de armazenamento estvel.
O esquema geral da figura 1 seguido por praticamente todos os computadores, sendo que os
dados so produzidos atravs de instrues durante a etapa de processamento, realizada pela CPU
(Unidade Central de Processamento - processador). Cada processador tem um conjunto nico de
instrues para processar os dados, porm geralmente utilizam a mesma forma de composio das
instrues. A Figura 2 mostra a forma das instrues comumente utilizada pelos processadores.
OPERAO
OPERANDOS
INSTRUO
Figura 2 Forma geral das instrues
A operao especifica a funo a ser desempenhada, por exemplo, soma, armazene ou desvie,
entre outras. Os operandos fornecem os dados a serem utilizados na operao ou ainda a forma de
alcanar a posio destes dados na memria.
Organizao de Computadores Notas de aula
1.4 Barramentos
Os processadores so circuitos integrados passveis de serem programados para executar uma
tarefa predefinida, basicamente manipulando e processando dados. A CPU manipula dados de acordo
com programas, que devero para isso, estar na memria. Um programa pode ordenar que dados sejam
armazenados de volta na memria ou recuperar programas/dados armazenados em sistemas de memria
de massa (disquetes, H.D.,...). Os caminhos por onde estas informaes circulam em um computador
genericamente conhecido como barramento.
Em outras palavras, os barramentos nada mais so do que um conjunto de condutores (fios,
trilhas) por onde passam os bits. Possuem duas principais caractersticas:
Figura 3 Barramentos
Existem diversos barramentos nos computadores atuais, sendo os principais o barramento local e
de expanso. O barramento local vital para o funcionamento do computador, pois interliga o
processador a memria. Por outro lado, o barramento de expanso interliga os demais componentes, tais
como, perifricos de entrada, de sada e memria de armazenamento estvel (secundria).
C
P
U
R
D
M
R
E
M
Barramento de Dados
Barramento de Endereos
Barramento de Controle
M
E
M
R
I
A
REM - Registrador de Endereo da Memria: Armazena o endereo da clula onde deve ser feita a
prxima operao de leitura ou escrita na memria;
Barramento de Endereos: Liga o REM memria para transferncia do endereo da clula a ser lida
ou escrita. Sua largura em bits deve ser igual ao REM;
RDM - Registrador de Dados da Memria: Armazena os dados que esto sendo transferidos de/para a
memria;
Barramento de Dados: Liga o RDM memria, possuindo a mesma largura deste. o caminho por
onde feita a transferncia do contedo;
Barramento de Controle: Interliga a CPU memria para enviar os comandos de READ e WRITE e
receber WAIT.
1.6 Clock
De todos os sinais de informao que circulam pelo barramento, o mais importante o clock que
um sinal de sincronismo, realizando a sincronizao de todos os circuitos que constituem o micro.
Todos os circuitos trocaro informaes no momento em que o clock permitir, enviando um aviso aos
componentes do micro como que dizendo J.
Como os circuitos eletrnicos so rpidos, a freqncia com que o clock fica ativo alta.
Normalmente esta freqncia, tambm chamada freqncia de operao, est na casa do MegaHertz
(MHz), ou seja, milhes de vezes por segundo.
Todos os componentes do micro utilizam uma freqncia de operao como os barramentos, a
memria, o processador, entre outros, sendo que cada componente do micro trabalha a sua prpria
freqncia. Os processadores atualmente utilizam tcnicas de multiplicao de freqncia aumentando
assim sua freqncia interna de processamento. Geralmente divulgado apenas o clock interno do
processador, ficando subentendido que essa sua freqncia de operao. Resta salientar que a freqncia
de operao NO sinnima de desempenho do micro. Ela apenas um fator que contribui no
desempenho.
10
11
ISA (Industry Standard Architecture): origina-se dos primeiros computadores IBM PC-AT. Os slots
ISA so ligados em paralelo, possibilitando que uma placa seja ligada em qualquer slot. Utiliza
conectores de 62 e 96 pinos. Trabalha com uma largura de barramento de 8 ou 16 bits a uma
freqncia mxima de 8,33MHz;
VLB (VESA Local Bus): desenvolvido pelo grupo Vdeo Eletronics Standard Association, para ser
ligado ao barramento local dos 486. Trabalha na velocidade do processador, porm limitado a 3 slots.
Compatvel com o ISA adaptou-se bem a vdeo e disco rgido, entretanto como era muito direcionado
ao 486, entrou em desuso com o declnio do 486. Utiliza conectores de 168 pinos, largura de
barramento de 32bits a uma freqncia mxima de 50MHz (limitado pelo barramento local);
12
PCI
(Peripheral
Component
Interconnect): desenvolvido pela Intel
para ser seu prprio padro de
barramento, matou o VLB. Diferente
do VLB, no ligado diretamente ao
barramento local, mas atravs de uma
ponte (bridge parte do chipset). No
compatvel com o ISA, porm totalmente independente de processador. Possui conectores menores e
ranhuras mais densamente acondicionadas que as ISA. Em geral, trabalha com slots de 32bits
(existindo verses de slots para 64bits), a uma freqncia de 33MHz (usual) ou 66MHz;
Firewire (IEEE 1394): a idia semelhante a do USB, porm com diferente foco: pretende substituir
o padro SCSI (Small Computer System Interface). Com taxa de transferncia maior que o USB (200
a 400Mbits), poder num futuro prximo ser utilizado na conexo de discos rgidos;
IrDA (Infrared Developers Association): um barramento sem fios, onde a comunicao feita
atravs de luz infravermelha. Pode-se ter at 126 perifricos conversando em uma mesma porta.
Comum em notebooks pode estar diretamente na placa-me ou conectado a porta serial. Existem dois
padres, com taxas de transferncia de 115200bps e 4Mbps;
Junto com a evoluo dos computadores, o desempenho dos barramentos tambm evolui. Novos
barramentos e/ou melhorias nos atuais esto sempre surgindo. Convm lembrar que no desempenho de
um computador o que conta no apenas o desempenho do processador ou o barramento local
(interligao com a memria). Esses so fatores de extrema importncia, porm todos os componentes
auxiliares contribuem para o desempenho gera l.
13
14
15
2 CPU
O processador (CPU) o componente vital de um sistema de computao, responsvel pela
realizao das operaes de processamento (clculos matemticos, entre outros) e de controle durante a
execuo de um programa.
Um programa, para ser efetivamente executado por um processador, deve ser constitudo de uma
srie de instrues (em linguagem de mquina). Estas instrues devem estar armazenadas em posies
sucessivas da memria principal. A execuo seqencial, ou seja, se a instruo executada est na
posio x, a prxima instruo a ser executada dever estar na posio x+1. A seqncia de
funcionamento de uma CPU conhecida como ciclo Busca Decodificao Execuo de Instrues.
A Figura 6 ilustra este ciclo.
INICIO
Buscar a prxima
Instruo
Interpretar a instruo
(decodificar)
Executar a
Instruo
TRMINO
Figura 6 Ciclo bsico de instruo
A seqncia de instrues pode mudar como resultado de uma instruo que direciona um desvio
(tambm chamado de salto, jump). Instrues deste tipo contm no campo operandos o endereo da
prxima instruo a ser executada. Elas causam mudanas no fluxo do programa como resultado das
condies dos dados. O desvio condicional representado por uma instruo de alto nvel IF traduz-se em
algum tipo de instruo de desvio.
As atividades realizadas pela CPU podem ser divididas em duas grandes categorias funcionais:
Funes de processamento; e
Funes de controle.
16
2.1 Componentes
As funes de controle e processamento necessitam de componentes, compostos de circuitos
digitais, para sua realizao. Estes componentes so interligados interna e externamente atravs de
barramentos. A figura abaixo ilustra os principais componentes de um processador atual.
UAL: Unidade Lgica e Aritmtica (ULA) responsvel por efetuar operaes matemticas com os
dados. Estas operaes podem ser, por exemplo, soma, subtrao, multiplicao, diviso, operaes
lgicas AND, OR, XOR, NOT, deslocamento de bits direita e esquerda, incremento e decremento,
comparaes;
ACC: registrador(es) auxiliares onde sobre os quais a ULA realiza suas operaes. Quando nico,
todas as instrues o utilizam, como fonte e destino;
CI (PC): Contador de instrues (Program Counter). Registrador cuja funo especfica armazenar
o endereo da prxima instruo a ser executada;
RDM: Registrador de dados da memria;
REM: Registrador de endereos da memria;
MP: Memria principal. Local onde ficam dados e instrues j/a serem executadas;
17
O principal dispositivo da CPU para a realizao das atividades de processamento a ULA. Ela
utiliza os registradores de propsito gerais (ACC) como auxiliares funo de processamento. A ULA
(UAL) um aglomerado de circuitos lgicos e componentes eletrnicos simples que, integrados, realizam
as funes acima citadas. Ela pode ser uma pequena parte da pastilha do processador, usada em pequenos
sistemas, ou pode compreender um considervel conjunto de componentes lgicos, ocupando mais espao
na pastilha do processador.
A capacidade de processamento de uma CPU em grande parte determinada pelas facilidades
embutidas no hardware da ULA1 para realizar as operaes matemticas projetadas. Um dos elementos
fundamentais a definio do tamanho da palavra. O valor escolhido no projeto de fabricao da CPU ir
determinar o tamanho dos elementos ligados a rea de processamento (ULA, barramentos internos e
registradores).
Um tamanho maior ou menor de palavra acarreta, sem dvida, diferenas fundamentais no
desempenho da CPU, e, por conseguinte, do sistema como um todo. Os seguintes componentes possuem
influncia direta do tamanho da palavra:
Influncia no desempenho devido ao maior ou menor tempo de execuo com operaes matemticas
na ULA;
Influncia no desempenho devido ao tamanho escolhido para o barramento interno e externo da CPU.
Em geral, Obtm-se o mximo de desempenho quando a largura (tamanho em bits) do barramento de
dados , no mnimo, igual ao tamanho da palavra (barramento interno);
18
A rea destinada funo de controle projetada para entender o que fazer, como fazer e
comandar quem vai fazer no momento adequado. Uma analogia pode ser feita com os seres humanos,
imaginando que a rea de controle o crebro que comanda o ato de andar, enquanto a rea de
processamento so os msculos e ossos das pessoas que realizam efetivamente o ato. Os nervos podem
ser relacionados com os barramentos entre os diversos elementos envolvidos.
Os dispositivos bsicos que fazem parte da rea de controle so:
O componente vital para as funes de controle a Unidade de Controle (UC). Ela recebe como
entrada o valor do registrador de instrues e decodifica-o (atravs do decodificador de instrues). Para
cada cdigo de instrues ele gera uma seqncia de sinais diferentes, ativando os circuitos
correspondentes para cada uma das tarefas necessrias para a busca e execuo da instruo a ser
executada.
Cada sinal de controle comanda uma microinstruo (que denota uma tarefa a ser executada
para a execuo de uma operao). Uma microintruo pode ser responsvel pela realizao de uma carga
em um registrador, uma seleo de um dado para entrada em um determinado componente, uma ativao
da memria, a seleo de uma operao da ULA ou a habilitao de um circuito lgico, para citar alguns
exemplos.
Existem vrias formas de implementaes (organizaes) das unidades de controle. As duas
usuais so:
19
20
Inicio
Buscar a prxima
instruo
Incrementar o PC
Decodificao do
Cdigo da Operao
Tem
Operando?
Sim
Clculo de
endereo do
operando
Buscar e
armazenar o
operando
No
Executar a operao
Figura 8 Ciclo detalhado de instruo
Este ciclo de instruo pode ser descrito em LTR (Linguagem de Transferncia entre
Registradores), de modo que possamos acompanhar sua realizao com a movimentao de informaes
entre os componentes da CPU. A Figura 9 ilustra este Algoritmo de funcionamento.
Iniciar
CICLO
RI MEM[PC]
PC PC + 1
Interpretar o Cdigo da Operao
Enquanto houver operandos no carregados
Buscar Operandos
PC PC + 1
Executar a instruo
Ir para CICLO
Fim
21
MIPS; e
FLOPS.
22
2.4.1 Pipeline
O pipeline usa a metodologia de uma linha de montagem, onde a fabricao de um produto
qualquer (carro, bicicleta, ...) subdividida em partes (implementadas em setores), nas quais tarefas
independentes esto sendo desenvolvidas ao mesmo tempo. A Figura 10 exemplifica um pipeline na
produo em serie de bicicletas.
23
Conflitos Estruturais: ocorrem quando dois ou mais estgios do pipeline tentam acessar o mesmo
dispositivo de hardware simultaneamente. O principal exemplo deste tipo o conflito pela memria,
quando os estgios de busca da instruo, busca do operando e armazenamento de resultados podem
tentar acessar a memria no mesmo ciclo de clock. Este caso pode ser minimizado com o uso de
memria separada para dados e instrues. Para outros casos de conflitos uma soluo poderia ser a
duplicao do hardware envolvido, se possvel;
Conflito por Dados: Acontecem quando instrues consecutivas fazem acesso aos mesmos
operandos e a execuo de uma instruo depende da execuo da outra. Um destes problemas,
comum em pipelines, chamado de Dependncia Verdadeira de dados;
Conflitos de Controle: Ocorrem com instrues de desvio, fazendo com que instrues j buscadas
sejam descartadas e bolhas sejam inseridas no pileline. Os incondicionais podem ser trabalhados
atravs da execuo especulativa, enquanto os condicionais devem ser trabalhados atravs de predio
(esttica ou dinmica).]
24
Organizao de Computadores Notas de aula
Execuo de
Inteiros
Ponto Flutuante
Desvios
Armazenamento
do resultado
Busca Operandos
Decodificao
Busca Instrues
25
3 Memria
Uma das partes mais importante do computador a memria. O processador apenas recebe
dados e os processa segundo alguma pr-programao, logo aps devolvendo-os, no importando de onde
vem e para onde vo. Os programas a serem executados e os dados a serem processados (inclusive os que
j o foram) ficam na memria, visto que a rea para armazenamento de dados do processador pequena.
H basicamente dois tipos de memria:
26
Cache
Memria
Principal
Memria
Secundria
27
28
FPM (Fast Page Mode): Ela retm o valor da ltima linha acessada, assim para os acessos realizados
na mesma linha o controlador no necessita enviar o endereo da linha. O resultado que o primeiro
acesso demorar o tempo normal e os seguintes na mesma linha sero mais rpidos. o mais velho e
menos sofisticado tipo de RAM, usada em micros 486 e antigos Pentium, usando barramentos de at
66MHz. Os ciclos de acessos no podem ser menores do que 5-3-3-3 (5 pulsos para o primeiro
elemento e 3 pulsos para cada um dos 3 dados seguintes), na prtica 6-3-3-3;
EDO (Extended Data Output): Retm os dados na sada da memria mesmo quando o sinal de leitura
desabilitado. Por conseqncia, o prximo endereo poder comear a ser enviado enquanto os
dados do endereo anterior ainda esto na sada. Possui ciclo tpico de acessos no menores que 5-2-22 (na prtica 6-2-2-2), sendo teoricamente 20% mais rpida que a FPM. Foram introduzidas com o
Pentium;
BEDO (Burst Extended Data Output): semelhante a EDO, com a diferena de possuir integrado um
contador de endereos. Na prtica, s necessrio enviar os valores de linha e coluna iniciais que ela
devolver tambm os 3 dados seguintes automaticamente. Possui ciclo de acesso desta forma de
5-1-1-1, sendo teoricamente mais rpidas que as FPM (40%) e EDO (25%);
SDRAM (Synchronous Dynamic RAM): Ao contrrio das anteriores, uma memria sncrona,
utilizando o barramento local para comandar os circuitos internos, conseguindo trabalhar com valores
acima de 66MHz. Trabalha em pipeline, disponibilizando um segundo acesso antes do final do
primeiro, por este motivo o ciclo tpico x-1-1-1, onde x varia de acordo com o chipset. A
caracterstica mais importante a sua capacidade de trabalhar com freqncias mais elevadas
mantendo o mesmo desempenho (nas FPM e EDO quando se aumenta a freqncia, deve-se aumentar
o nmero de wait states). Possui diversas modificaes internas, como a presena de 2 matrizes, o que
permite 2 que acessos diferentes sejam iniciados em paralelo. So encontradas com velocidade de 15,
a 7 ns, teoricamente funcionando a 125 MHz, mas na prtica, dificilmente passam de 83 MHz
(conhecidas como PC-66). No sendo adequadas para placas que usam barramento de 100 MHz;
PC-133: O limite terico da memria SDRAM 125MHz. Entretanto, com o avano tecnolgico foi
possvel desenvolver memrias SDRAM que conseguem trabalhar a 133MHz, chamadas PC-133;
DDR-SDRAM (Double Data Rate SDRAM): Um avano sobre a SDRAM que suporta transferncias
de dados duas vezes por pulso (na subida e na descida do pulso), dobrando o desempenho da SDRAM
tradicional. Tambm chamada de SDRAM II;
ESDRAM (Enhanced SDRAM): Consiste de uma SDRAM com uma pequena quantidade de
memria esttica dentro do circuito, criando uma pequena cache. Diminui a latncia permitindo que
trabalhe com freqncias de at 200MHz;
29
SLDRAM (SyncLink DRAM): Assim como a RDRAM baseada em protocolo, porm de arquitetura
aberta. Pode operar a 200MHz, a uma taxa de transferncia de 1,6GB/s, porm pode entregar dados
tanto na subida como na descida do pulso, assim sua taxa pode chegar a 3,2GB/s. mais barata que a
RDRAM, possui melhor desempenho e menor latncia.
30
Para conhecer a capacidade de armazenamento de cada mdulo assim como suas demais
caractersticas deve-se consultar o databook (livro com dados tcnicos) do fabricante. Na prtica, o
monitor mostra o tamanho atravs da contagem de memria, no POST. importante salientar que mdulo
de memria (SIMM, DIMM, RIMM) no tem relao com a tecnologia usada nos circuitos (FPM, EDO,
SDRAM). nos mdulos que os circuitos so soldados. Por exemplo, podemos ter um mdulo SIMM-72
que utiliza circuitos FPM ou EDO.
ROM (pura);
PROM;
EPROM;
EEPROM;
A memria ROM pura (o termo pura serve apenas para diferenciar das demais) conhecida
tecnicamente como programvel por mascara (mask programed), devido ao seu processo de fabricao
e escrita dos bits na memria. Na ROM o conjunto de bits inserido durante o processo de fabricao,
sendo que aps o trmino da fabricao, a pastilha ROM est completa, com o programa armazenado e
nada poder alterar o valor de qualquer de seus bits.
Uma variao deste tipo de memria chama-se PROM (programed read only memory). Na
realidade, no se trata propriamente de ser programvel, porque no possvel sua reutilizao. Nela,
como nas ROM puras, somente possvel gravar os bits desejados um nica vez, porm com a diferena
de que a gravao dos bits posterior a fase de fabricao da pastilha, embora deva ser realizada por um
dispositivo especial.
H outros dois tipos de ROM, desenvolvidos posteriormente, que tm uma particularidade
interessante: ainda que se mantenham somente para leitura de programas aplicativos durante uma
execuo normal, elas podem ser apagadas e regravadas, sendo portanto reutilizveis. A forma para
eliminao dos dados atuais e reprogramao o que diferencia os dois tipos, sendo elas a EPROM
(erasable PROM) e EEPROM (electrically ou electronically EPROM), tambm chamada EAROM
(electrically alterable ROM).
A EPROM pode ser utilizada diversas vezes porque os dados nela armazenados podem ser
apagados ao se iluminar a pastilha com luz ultravioleta. A luz deve incidir sobre uma janela de vidro,
montada na parte superior da pastilha.
Organizao de Computadores Notas de aula
31
Figura 14 EEPROM
Uma vez apagada, a pastilha pode ser reutilizada atravs de um novo processo de queima dos
novos bits. Neste tipo de memria, a janela de vidro costuma ser coberta para evitar a eliminao de
informaes acidental.
A EEPROM ou EAROM, introduz uma caracterstica mais verstil e prtica no processo de
reutilizao das ROM: a programao (escrita dos bits), a eliminao de contedo e a reprogramao so
efetuadas por controle da CPU. Com a EEPROM programada, as instrues nela armazenadas so retidas
indefinidamente at que um sinal para eliminao de contedo seja recebido por um sensor especial.
32
1. Sempre que a CPU vai buscar uma nova informao (instrues ou dados), ela acessa a memria
cache;
2. Se a informao estiver na cache (chama-se cache hit acerto), ela transferida em alta velocidade
(compatvel com a da CPU);
3. Se a informao no estiver na cache (chama-se cache miss falta), ento o sistema est
programado para transferir a informao desejada da MP para a cache. S que esta informao no
somente da instruo ou dado desejado, mas dele e de um grupo subseqente, na pressuposio de que
as instrues/dados do grupo sero requeridas pela CPU em seguida e, portanto, j estaro na cache
quando necessrio.
A Figura 15 ilustra a troca de informaes entre a CPU, Cache e MP.
Localidade Temporal: As posies da memria, uma vez acessadas, tendem a ser acessadas
novamente num futuro prximo. Normalmente ocorrem devido ao uso de laos de instrues,
acessos a pilhas de dados e variveis como ndices, contadores e acumuladores;
Localidade Espacial: Se um programa acessa uma palavra de memria, h uma boa probabilidade
de que o programa acesse num futuro prximo, uma palavra subseqente ou um endereo
adjacente quela palavra que ele acabou de acessar. Em outras palavras, os endereos em acessos
futuros tendem a ser prximos de endereos de acessos anteriores. Ocorre devido ao uso da
organizao seqencial de programas.
33
O tamanho da cache influencia diretamente no desempenho do sistema, uma vez que para existir
um aumento real de desempenho o nmero de acertos deve superar e muito o nmero de faltas. Com uma
cache maior, h maior probabilidade de a informao desejada estar contida nela, porm outros fatores
tambm devem ser levados em conta, como o tempo de acesso da MP, da memria cache e a natureza dos
programas em execuo (principio da localidade).
Um fator que influencia diretamente o desempenho da cache a forma de mapeamento dos
dados da MP nela. Como o tamanho da cache bem menor que MP, apenas uma parte dos dados da MP
pode ser copiada na cache. Existem basicamente trs formas de mapeamento: o associativo, o direto e o
set-associativo.
Mapeamento completamente associativo: A palavra pode ser colocada em qualquer lugar da cache.
Neste caso deve ser armazenado na cache no somente o dado mas tambm o endereo. Para
descobrir se a posio procurada est armazenada na cache, feita a comparao simultnea de todos
os endereos, caso seja localizado (cache hit) o dado devolvido ao processador. Caso o endereo
pesquisado no se encontre na cache (cache miss) a memria principal acessada.
Mapeamento direto: Cada palavra deve ser armazenada em um lugar especfico na cache, o qual que
depende do seu endereo na memria principal. O endereo dividido em duas partes: Tag e ndice.
O ndice usado como endereo na cache. Indica a posio da cache onde pode estar armazenada a
palavra. O tag usado para conferir se a palavra que est na cache a que est sendo procurada, uma
vez que endereos diferentes, com o mesmo ndice sero mapeados sempre para a mesma posio da
cache.
Substituio Aleatria: Neste caso escolhida uma posio qualquer da cache aleatoriamente para
ser substituda. mais simples de implementar mas no leva em conta o princpio da localidade
temporal.
First-in First-out: Remove a linha que est a mais tempo na cache. Exige a implementao de uma
fila em hardware.
LRU - Least Recently Used: Menos recentemente utilizado. Remove-se a linha que a mais tempo
no referenciada. Exige implementao de um contador para cada linha. Quando um hit ocorre na
linha seu contador zerado enquanto todos os demais so incrementados. Quando for necessrio
substituir uma linha, ser retirada aquela cujo contador tiver o valor mais alto.
34
Escrita no retorno (Write-back): As escritas so feitas apenas na cache, mas ela ser escrita na MP
quando for substituda. pode-se escrev-la mesmo se no foi alterada ou somente se tiver sido
modificada.
Com a poltica write -through pode haver uma grande quantidade de escritas desnecessrias na
MP, com natural reduo do desempenho do sistema. J a poltica write -back minimiza esta
desvantagem, porm a MP fica potencialmente desatualizada para utilizao por outros dispositivos a ela
ligados, como mdulos de E/S, o que os obriga a acessar dados na cache.
Uma vez que tanto os dados como as instrues so mantidos na memria principal, ambos tiram
proveito da memria cache. Pode-se adotar cache unificada ou separada para cada tipo de contedo. A
cache separada possui como vantagem possuir uma Cache de instrues somente de leitura, o que
simplifica o circuito e barramento independente ligando cada uma das caches e o processador, o que
permite transferncias simultneas. Alm disso, pode-se adotar estratgias diferentes para cada cache
(tamanho, organizao, etc.). Por outro lado,a abordagem de cache separada apresenta como desvantagem
o fato de que instrues e dados colocados em posies prximas da memria podero estar nas duas
caches.
35
Determinados perifricos assim como a maior parte das placas, incluindo a placa-me, necessitam
de configuraes. As configuraes so realizadas na maioria dos casos atravs de jumpers ou ainda por
DIP-Switches (microchaves) Tanto a microchave como o jumper servem apenas para fazer um contato,
habilitando ou desabilitando alguma funo no perifrico ou placa.
Organizao de Computadores Notas de aula
36
4.3 H.D.s
O disco rgido (H.D.) uma das melhores formas de armazenamento de grandes quantidades de
dados para uso posterior. A idia simples, so vrios discos magnticos (semelhantes a disquetes, porm
mais confiveis e com maior preciso) empilhados um sobre o outro, com vrias unidades de leitura
(geralmente 2 para cada disco). A caixa preta que os envolve compe o H.D. A Figura 17 ilustra um H.D.
Figura 17 Esquema de um HD
Organizao de Computadores Notas de aula
37
Nmero de cabeas (heads): a quantia de faces que o disco possui. Por exemplo, se forem 3 discos
magnticos, sero 6 cabeas (2 para cada face dos discos);
Nmero de trilhas: so crculos concntricos que dividem a rea de armazenamento, em alguns casos
referenciados por nmero de cilindros;
Nmero de setores: so as divises das trilhas. Dentro de cada setor cabem sempre 512 bytes (mesmo
em H.D.s este valor fixo).
Para calcular a capacidade de um disco rgido, utiliza-se a frmula abaixo:
38
Uma unidade de disco rgido o componente que mais trabalha em um micro. Os discos
magnticos que os compem, onde os dados so armazenados, giram a altas velocidades durante todo o
tempo em que o micro est ligado. Cada acesso ao disco rgido, faz com que as cabeas de
leitura/gravao se movimentem, sempre com preciso microscpica, sendo que distncia entre uma
cabea de leitura/gravao e o meio magntico menor do que um fio de cabelo humano. To severas
restries e condies para o correto funcionamento do a impresso de um ambiente sujeito
constantemente a defeitos; mas ao invs disto, o que ocorre so unidades de disco rgido desempenhando
com afinco a funo de fiis depositrios de informao. A Figura 20 ilustra o interior de um HD.
39
Formatao fsica (os discos atuais no podem ser formatados em baixo nvel);
Particionamento;
Formatao lgica.
4.3.2 Desempenho
Apesar do giro rpido e constante de um disco rgido, ele no capaz de enviar instantaneamente
as informaes solicitadas, sempre h um atraso chamado de latncia ou tempo de acesso, medidos em
milissegundos. Esse o tempo gasto para a localizao de um setor especfico, determinado pelo tempo
40
Organizao de Computadores Notas de aula
41
Pode-se tambm deslocar o controle das transferncias de dados do processador para o chipset da
placa-me, habilitando o recurso chamado Bus Mastering. Dessa forma o desempenho do micro aumenta,
pois o processador pode realizar outras tarefas ao mesmo tempo em que os dados esto sendo transferidos
do H.D. para a memria RAM. O Bus Mastering executado pela ponte-sul do chipset, sendo tambm
conhecido como modo DMA Bus Master. Este recurso possui diversos modos de operao e pode atingir
taxas de transferncia de at 33MB/s.
Tabela 6 Taxas de transferncia de HDs
Tecnologia
Modo
Taxa de Transferncia
0
3,3 MB/s
1
5,2 MB/s
2
8,3 MB/s
PIO
3
11,1 MB/s
4
16,6 MB/s
5
22 MB/s
0
4,2 MB/s
1
13,3 MB/s
DMA
2 (UDMA 0)
16,6 MB/s
3 (UDMA 2)
33,3 MB/s
0
16,6 MB/s
1
25 MB/s
UDMA
2
33,3 MB/s
3
44,4 MB/s
4
66,6 MB/s
Padro
ATA
ATA
ATA
ATA-2
ATA-3
ATA-3
ATA
ATA-2
ATA-3
ATA-4
ATA-3
ATA-4
ATA-4
ATA-5
ATA-5
Atualmente, atravs do protocolo UltraDMA, discos rgidos IDE podem atingir taxas de
transferncia de at 66MB/s. Conhecido tambm como UDMA, possibilita taxas de transferncia que s
eram atingidas no passado por discos SCSI. A tabela ao lado ilustra as taxas de transferncias mximas
tericas dos modos de ligaes de H.D. Todavia, no s o modo PIO, DMA ou UDMA que influi no
desempenho do H.D.: o cache do disco e o blockmode tambm interferem.
Para utilizar todo o poder do UDMA, alm do disco suportar esta tecnologia, a placa-me aceitar
este padro e estar configurada, os modos 3 e 4, que utilizam o ATA-5, necessitam de um cabo especial
com 80 fios, porm utilizando o mesmo conector de 40 pinos.
42
43
4.5 CD-ROM
As unidades de CD-ROM quando inicialmente lanadas utilizavam um cabo especfico que era
ligado placa de som. Recentemente a ligao de dados das unidades de CD-ROM foi trocada, passando
a ser utilizada a interface IDE. Dessa forma, uma unidade de CD-ROM ligada ao micro como se fosse
uma unidade de disco rgido, devendo ser configurada para master ou slave, atravs de jumpers, e
tomando cuidado com a correta posio do pino 1 do flat cable.
Apenas os dados trafegam pelo cabo de 40 vias, uma vez que as unidades de CD-ROM possuem
outro cabo, com geralmente 3 vias, para a transmisso do udio, ligado diretamente na placa de som.
Quando s existia CD de udio, desempenho no era problema, uma vez que o udio escutado
a uma velocidade fixa, com a taxa de transferncia do aparelho de CD de udio sendo 176.400 bytes/s. A
taxa de transferncia padro das unidades de CD-ROM no modo 1 (1X) de 153.600 bytes/s, ou
150KB/s. Uma taxa muito baixa se comparadas s taxas de transferncias dos H.D.s, mesmo no padro
ATA inicialmente especificado.
O aumento da taxa de transferncia do
CD-ROM
foi
executado
basicamente
aumentando-se a velocidade de rotao do CD
na unidade. Uma unidade 2X apresenta uma taxa
de transferncia que equivalente ao dobro da
usada na unidade padro (300KB/s). A tabela ao
lado ilustra a taxa de transferncia de algumas
unidades de CD-ROM.
Velocidade
1x
2x
8x
24 x
36 x
44 x
52 x
56 x
60 x
44
5 Entrada e Sada
Para que se possa desfrutar da rapidez e flexibilidade de um computador, no basta saber que ele
pode armazenar na memria os programas e dados que desejamos processar e nem que ele pode executar
mais de um milho de instrues por segundo. preciso que o programa que temos escrito, por exemplo,
em uma folha de papel e os dados a serem manipulados por ele sejam inseridos no sistema, caractere a
caractere, incluindo os espaos em branco, sinais de pontuao e smbolos de operaes matemticas.
Para realizar estas tarefas necessrio um meio qualquer que faa esta comunicao homem-mquina.
Da mesma forma que se necessita de comunicao com a mquina, tambm preciso
comunicao no sentido contrrio (mquina-homem), de modo que o usurio possa entender os resultados
de um processamento. Os dispositivos responsveis pela entrada/sada so tambm denominados de
perifricos (instalados fora do ncleo principal CPU/MP ficam na maioria das vezes prximos, na
periferia).
O funcionamento dos dispositivos de entrada/sada em um computador geralmente
caracterizado pela existncia de diversos elementos que, embora realizem o mesmo tipo de funo,
possuem caractersticas diversas. Desta forma, costuma-se integrar os diversos elementos que cooperam
no processo de entrada e sada num subsistema, parte do sistema de computao. Um subsistema de I/O
deve ser capaz de realizar duas funes:
converter as informaes (de entrada ou de sada) em uma forma inteligvel para a mquina (se estiver
recebendo) ou para o usurio (se estiver enviando).
Os perifricos que compem o subsistema de I/O possuem diferentes caractersticas, como, por
exemplo, velocidade de operao e taxa de transferncia das informaes. Na Figura 22 esto ilustradas
algumas caractersticas dos principais perifricos de I/O.
45
46
5.1.1 Monitor
Todo o micro necessita de um sistema de vdeo para que se possa monitorar sua operao, ver o
que se digita ou carrega, acompanhar o andamento de clculos e verificar os resultados. Os monitores
usados com micros hoje em dia so geralmente coloridos e possuem caractersticas como a resoluo
mxima, freqncia de varredura e o dot pich.
Os monitores so ligados a placas de vdeo, que tm algumas caractersticas bsicas: quantidade
de memria, modelo do chipset (controlador) e tipo de barramento utilizado (ISA, VESA, PCI, AGP, ...).
Algumas placas-me possuem controlador de vdeo integrado (on-board), porm mesmo nestes micros
pode-se instalar outra placa de vdeo.
Independente
de
onde est localizado o
circuito controlador de
vdeo, os computadores
atuais utilizam o padro
super-VGA (Vdeo Graphics Array). A conexo entre o
monitor e o adaptador de vdeo ocorre com um conector de
15 pinos (DB-15), sendo que o cabo que ligado ao monitor
possui uma interface macho e o conector da placa (ou adaptador no caso de on-board) uma interface
fmea.
Com o aumento da utilizao de aplicaes grficas, sentiu-se a necessidade de recursos para a
acelerao de vdeo. Praticamente todas as placas de vdeo, independentes ou no (placas 2D), possuem
estes recursos. Um problema ocorre com aplicaes em 3D, utilizando objetos que demandam muitos
clculos matemticos e consumindo grandes reas de memria. Para solucionar este problema, pode-se
instalar juntamente com uma placa 2D uma (ou mais) placa aceleradora 3D.
5.1.2 Teclado
O teclado ainda o perifrico de entrada mais utilizado. Desde o incio de sua utilizao em
micros, o nmero de teclas vem aumentando, comeando pelo teclado do PC original com 84 teclas at os
dias de hoje com 101teclas ou mais. Utilizam em sua maioria o padro QWERTY US-Internacional,
porm a ABNT j padronizou um layout de teclas (baseado no QWERTY, porm com caracteres a mais
como a cedilha e uma melhor posio dos acentos grficos) para ser usado com palavras da lngua
brasileira.
Para sua ligao a placa-me do micro, utilizam basicamente dois padres: o DIN de 5 pinos e o
mini-DIN com at 6 pinos, introduzido pelo PS/2. Pode-se ainda utilizar adaptadores, caso a placa-me
no possua conector para um tipo especfico de teclado.
47
SPP (Standard Parallel Port): este o modo de operao padro, unidirecional com transferncia
mxima de 150 KB/s;
EPP (Enhanced Parallel Port): introduziu o modo bidirecional e aumentou a taxa de transferncia,
podendo alcanar taxas de transferncia de 2MB/s, porm na prtica alcana 800KB/s. Necessita de
cabo com blindagem especial, conhecido como bidirecional;
ECP (Extended Capabilities Port): possibilita na prtica taxa de 2MB/s, pois utiliza compactao
automtica de dados e utiliza DMA. De maneira semelhante a EPP deve utilizar cabo com blindagem
especial.
Os circuitos de controle tanto da porta paralela, quanto das portas seriais vm atualmente na
placa-me. Dessa forma, pode-se alterar o modo de operao da porta paralela atravs do SETUP. Os
conectores chegam at a parte traseira do micro para conexo atravs de adaptadores, com exceo da
porta paralela em placas super-IDE, que a conexo diretamente na placa.
O uso tpico da porta paralela a conexo do micro com a impressora. Porm, atualmente, est
surgindo um nmero maior de perifricos que podem ser ligados a porta paralela como Zip-drive e
scanners. Estes perifricos foram beneficiados pelos avanos na tecnologia da porta paralela, permitindo a
comunicao bidirecional e modos avanados, com uma taxa de transmisso mais elevada.
48
As portas seriais realizam a comunicao serial, enviando os dados bit a bit ao invs de palavra
por palavra. Isso faz com que a comunicao seja mais lenta e propensa a erros, por outro lado, menos
fios so necessrios para ligar transmissor e receptor e a distncia entre eles pode ser grande.
Existem dois tipos de comunicao serial: sncrona e assncrona. No primeiro tipo h um canal
para transmisso de dados e um para o sincronismo, que mostra ao receptor onde comea e termina cada
conjunto de dados que est sendo transmitido no canal de dados. Na comunicao assncrona, utilizada
nos computadores, o mesmo canal que transmite os dados responsvel pelo sincronismo, enviando
sinais de incio e fim do conjunto de dados.
Na porta serial do micro geralmente conecta-se o mouse, muito embora cada vez surjam mais
aplicaes em que a porta serial utilizada, como conexes micro micro, de agendas eletrnicas, de
cmeras digitais e modem externo. A porta serial mais lenta que a paralela, pois alm de enviar dados
bit a bit, ela necessita de bits extras para o incio e fim do conjunto de dados e ainda bits para os
mecanismos de deteco e correo de erros.
Fisicamente, as interfaces seriais podem apresentar 2 conectores: 9 pinos (DB-9) ou 25 pinos
(DB-25), ambos com conectores macho e fmea. Em geral, o micro tem 2 portas seriais, uma com
conector DB-9 macho, onde se liga geralmente o mouse, que possui um conector DB-9 fmea, e outra
com conector geralmente DB-25 fmea, que fica na maioria dos casos disponvel. A Figura 24 mostra
conectores utilizados em cabos seriais.
49
65535
MP
255
0
E/S
MP
255
0
E/S
Memria Compartilhada
Memria Isolada
Figura 26 Formas de organizao de memria para comunicao com interface de I/O
Com memria compartilhada, basta haver no barramento de controle uma nica linha de leitura
(read) de escrita (write), visto que a memria a mesma e, portanto, somente poder ocorrer em cada
instante uma operao de leitura/escrita para CPU/MP ou uma para CPU/E-S. No caso da memria
isolada necessrio que haja um sinal de identificao no topo de operao, sempre que um endereo for
colocado no barramento, para saber se o mesmo de I/O ou no. Os microprocessadores da famlia Intel e
similares, por exemplo, usam mais comumente a tcnica de memria isolada do que a de memria
compartilhada.
Os endereos de I/O isolados so chamados portas (ports). No caso dos microprocessadores h
em geral uma conveno que os endereos de I/O podem ter 8 ou 16 bits. Com 8 bits so endereados
dispositivos localizados na prpria placa principal (me), como controlador de tempo (timer) e o
interface de teclado. Com 16 bits so endereados os dispositivos externos, como vdeo e controladores
de disco.
O mtodo de I/O isolada tem a vantagem de no utilizar espao da memria principal,
deixando-a toda para outras aplicaes, mas tem a desvantagem de s ser utilizado com instrues
especiais de I/O (no caso dos microprocessadores Intel, so usadas apenas as instrues IN, INS, OUT e
OUTS). Alm disso, tambm foram desenvolvidos sinais especiais de controle para o espao de I/O. Por
outro lado, o mtodo de memria compartilhada tem a vantagem de no necessitar de qualquer instruo
especial, ou seja, qualquer instruo que utilize a memria principal se aplica tambm a I/O. Mas tem a
desvantagem de ocupar parte do espao de memria principal para o uso de entrada/sada.
50
de
do
ao
da
51
5.4.2 Interrupes
Na utilizao de I/O por interrupo a CPU no fica continuamente interrogando sobre o estado
de um dispositivo; ao invs disso, funciona da seguinte forma:
a) A CPU emite uma instruo de I/O para a interface e, como no dever receber uma resposta
imediata, em vez de ficar continuamente verificando o estado do perifrico, a CPU desvia-se para
realizar outra atividade (provavelmente executar um outro programa), suspendendo a execuo do
programa que requer I/O;
b) Quando a interface estiver pronta para enviar os dados do perifrico a CPU, ela avisa a CPU atravs
de um sinal de interrupo. Chama-se interrupo porque realmente o sinal interrompe a atividade
corrente da CPU para que esta d ateno ao dispositivo que a interrompeu;
c) A CPU inicia ento as rotinas de I/O requisitadas.
Uma interrupo consiste em uma srie de procedimentos que suspendem o funcionamento
corrente da CPU, desviando sua ateno para outra atividade. Quando esta outra atividade concluda, a
CPU retorna execuo do ponto que estava antes de ser interrompida.
Existem basicamente dois tipos de interrupo:
Internas: Geradas pela execuo de uma instruo, como por exemplo uma diviso por zero,
overflow, cdigo de operao invlido, tentativa de acesso a uma rea de memria protegida ou
inexistente, etc.
Externas: Causadas por um sinal externo CPU. Geralmente ativada devido a uma interface de E/S
que est avisando que um determinado perifrico deseja a ateno para transferir dados.
A deteco de uma interrupo faz com que o processador transfira o controle para uma rotina de
tratamento de interrupo ("interrupt handler"). A rotina de tratamento de interrupes faz o processador
executar as seguintes aes:
52
53
54
55
6 Arquiteturas de computadores
Desde o desenvolvimento do primeiro computador com programa armazenado na memria, por
volta de 1950, houve poucas inovaes significativas nas reas de arquitetura e organizao de
computadores. Alguns dos maiores avanos desde o nascimento do computador foram:
Unidade de controle microprogramada: sugerida por Wilkes, em 1951, e introduzida pela IBM na
linha S/360 em 1964. A microprogramao facilita a tarefa de projetar e implementar a unidade de
controle e oferece suporte para o conceito da famlia de computadores.
Memria cache: introduzida comercialmente no IBM S/360 modelo 85, em 1968. A adio desse
componente na hierarquia de memria melhorou sensivelmente o desempenho.
Mltiplos processadores: essa categoria abrange grande nmero de organizaes diferentes, com
distintos objetivos.
A essa lista deve ser ainda adicionada uma das inovaes mais interessantes e, potencialmente,
mais importantes: a arquitetura com um conjunto reduzido de instrues (RISC).
6.1 CISC
Os processadores construdos segundo a arquitetura CISC (Complex Instruction Set Computer)
possuem uma grande quantidade de complexas instrues, vrios modos de endereamento (a memria),
poucos registradores de dados (propsito geral) e processamento controlado por microprograma. A
filosofia que o hardware mais rpido que o software, ento um conjunto poderoso de instrues
produziria programas executveis pequenos, ou seja, com poucas instrues.
Foram propostas e implementadas unidades lgica e aritmtica complexas, unidades de
multiplicao, unidades de diviso, unidades de processamento numrico com suporte representao
numrica em ponto flutuante e clculo de funes matemticas como trigonometria e logaritmos. Quanto
movimentao de dados, verificou-se o surgimento de inmeros tipos de endereamento de memria,
instrues que permitiram a movimentao de blocos de dados e instrues para tratamento de vetores e
matrizes.
Todo este desenvolvimento acarretou em um problema: a dificuldade em aumentar a freqncia
de operao. Devido complexidade envolvida, os circuitos se tornaram muito grandes, ocupando uma
rea considervel em silcio. Este fato dificulta a reduo do ciclo de operao.
56
6.2 RISC
Estudos do comportamento de execuo de programas de linguagens de alto nvel foram a base
para o surgimento de uma nova arquitetura de processadores: o Reduced Instruction Set Computer
(RISC). A predominncia de atribuies sugeria que a movimentao de dados simples deveria ser
otimizada. Existiam tambm muitas instrues condicionais e loops, sugerindo que o mecanismo de
controle seqencial deveria ser otimizado. E, finalmente, o padro de referncias de operandos sugeria a
possibilidade de melhorar o desempenho mantendo um moderado nmero de operandos em registradores.
As mquinas RISC apareceram no incio dos anos 80 em laboratrios de empresas (p.e. IBM),
como o IBM 801, e em instituies de pesquisa: RISC I e RISC II na Universidade da
Califrnia/Berkeley e MIPS na Universidade de Stanford. Em 1985, todas as trs estavam operacionais.
Estes projetos no tinham a inteno de revolucionar o projeto de processadores. Principalmente os
projetos de Berkeley e Stanford, tinham como foco o projeto de mquinas eficientes, mas simples o
suficiente para poderem ser implementados em ambiente universitrio.
As caractersticas principais de uma mquina RISC so:
57
6.3.1 Superescalares
O projeto superescalar apareceu logo depois dos projetos de arquitetura RISC. Embora as
tcnicas de arquitetura superescalar possam ser aplicadas mais diretamente a uma arquitetura RISC com
conjunto simplificado de instrues, a abordagem superescalar tambm pode ser usada em arquiteturas
CISC.
Inicialmente surgiram as implementaes superescalares, tendo em geral pares de pipelines,
permitindo que duas instrues pudessem ser executadas simultaneamente. Em geral, em caso de
Organizao de Computadores Notas de aula
58
59
6.5 Paralelas
Tradicionalmente, o computador tem sido visto como uma mquina seqencial. A maioria das
linguagens de programao requer que o programador especifique um algoritmo como uma seqncia de
instrues. Os processadores executam programas por meio da execuo seqencial de instrues de
mquina. Cada instruo executada como uma seqncia de operaes (busca de instruo, busca de
operandos, execuo da operao, armazenamento dos resultados).
Essa viso do computador nunca foi totalmente verdadeira. No nvel de microoperaes, vrios
sinais de controle so gerados ao mesmo tempo. A tcnica de pipeline de instrues tem sido usada a
muito tempo, estendendo esta sobreposio pelo menos para as operaes de busca e execuo de
instrues. Esses so dois exemplos de execuo de funes em paralelo. Esta abordagem levada mais
adiante em uma organizao superescalar, que explora o paralelismo em nvel de instruo. Nas mquinas
superescalares, existem diversas unidades de execuo em um mesmo processador, que podem assim
executar vrias instrues de um mesmo programa em paralelo.
A medida que a tecnologia evoluiu e o custo do hardware do computador tornou-se mais baixo,
os projetistas de computadores tm buscado outras oportunidades de explorao do paralelismo,
usualmente para melhorar o desempenho e, em alguns casos, para aumentar a disponibilidade do sistema.
Podem ser encontradas diversas formas de organizao paralela. A figura 27 ilustra os principais
tipos.
60
Organizao de computadores
nica Instruo,
nico dado (SISD)
nica Instruo,
mltiplos dados (SIMD)
Mltiplas Instrues,
nico dado (MISD)
Mltiplas Instrues,
mltiplos dados (MIMD
Uniprocessador
Processadores
vetoriais
Processadores
matriciais
Memria compartilhada
(fortemente acoplados)
Memria no compartilhada
(fracamente acoplados)
Cluster
Multiprocessador
simtrico
61
Bibliografia
MONTEIRO, Mrio A. Introduo organizao de computadores. Rio de Janeiro : LTC , 2001.
397p.
BRUSSO, Marcos Jos. Arquitetura e Organizao de Computadores I: notas de aula. Disponvel
por WWW em <http://vitoria.upf.tche.br/~brusso/arq1/download.html>
Weber, Raul Fernando. Arquitetura de computadores pessoais. Porto Alegre: Sagra Luzzatto , 2001.
271 p.
Weber, Raul Fernando. Fundamentos de arquitetura de computadores. Porto Alegre : Sagra Luzzatto ,
2000. 262 p.
MEYER, Marilyn et. al. Nosso futuro e o computador. Porto Alegre : Bookman , 2000. 599 p.
HENNESSY John L., PATTERSON, David A.. Computer organization and design: the hardware,
software interface. California : Morgan Kaufmann , 1998. 758 p.
62