Você está na página 1de 4

04/12/2017 2.2.

Estrutura de uma CPU

2.2. Estrutura de uma CPU


Toda CPU formada por duas unidades, como podem ser vistas na Figura 2.1, Estrutura
de uma CPU:

Unidade de Controle (UC)


Unidade de Ciclo de Dados (UCD)

Figura 2.1. Estrutura de uma CPU

A Unidade de Controle responsvel por receber instrues pelo Barramento de


Instrues. As instrues vm da memria de acordo com o endereo enviado pela UC para
a memria atravs do Barramento de Endereo das Instrues ( esquerda da UC na
Figura 2.1, Estrutura de uma CPU). J Unidade de Ciclo de Dados, como o prprio nome
deixa entender, responsvel por tratar os dados propriamente ditos. A Unidade de
Controle no executa as instrues. Ela as l, decodifica e passa os comandos para a UCD
determinando como as instrues devem ser executadas e com quais dados. Baseada nesses
comandos, a UCD pode ir buscar os dados necessrios na memria, executar as devidas
operaes e enviar o resultado de volta para a memria para ser armazenado. Tudo
controlado de acordo com os comandos internos enviados pela Unidade de Controle, que
por sua vez se baseia na instruo decodificada. Os dados lidos, ou enviados para a
memria, so transmitidos atravs do Barramento de Dados. Os endereos so enviados
para a memria atravs do Barramento de Endereo.

Tudo isso controlado por um sinal sncrono de relgio (clock, do ingls). A cada batida do
relgio a unidade sabe que deve executar um passo, passar os dados para quem deve, e se
preparar para o prximo passo. Quanto mais rpido o relgio mais operaes por
segundo o processador consegue executar e mais rpido pode se tornar. A velocidade do
relgio medida em frequncia, utilizando a unidade Herz (abreviatura Hz). Um Herz
significa um passo por segundo. Os processadores atuais trabalham na faixa dos poucos
GHz (leia-se Giga Herz), entre 1 GHz e 5 GHz. Um Giga Herz significa um bilho de passos
por segundo. por isso que os computadores so to incrveis. Eles no executam
operaes extraordinrias. Pelo contrrio. Executam operaes extremamente simples,
como somas, subtraes e multiplicaes, mas fazem isso numa velocidade incrvel.

2.2.1. Os papis dos barramentos e da memria


Saindo um pouco de dentro da CPU, podemos enxergar os barramentos e a Memria
Principal, como apresentado na Figura 2.2, Estrutura de uma CPU com barramentos.
Para facilitar a visualizao, os Barramentos de Dados e de Endereo so apresentados
replicados, tanto do lado esquerdo, quanto do direito da figura.

http://producao.virtual.ufpb.br/books/edusantana/old-arq/livro/livro.chunked/ch02s02.html 1/4
04/12/2017 2.2. Estrutura de uma CPU

Figura 2.2. Estrutura de uma CPU com barramentos

A comunicao da Unidade de Controle e da Unidade de Ciclo de Dados feita sempre com


a Memria Principal atravs dos barramentos. Os endereos so transmitidos sempre via
Barramento de Endereos para a memria, sempre de forma unidirecional da CPU para a
memria. Quando as instrues so transmitidas da memria para a Unidade de Controle,
elas utilizam o Barramento de Dados. Isso porque as instrues so tratadas pela memria
como um contedo como um outro qualquer. Ela no faz distino entre dados e
instrues. O mesmo Barramento de Dados utilizado pela Unidade de Ciclo de Dados
para receber os operandos das operaes a serem realizadas e para enviar os resultados de
volta para a memria.

Fica claro ento a importncia da Memria Principal. Todo e qualquer programa s poder
ser executado a partir dela. Quando voc, por exemplo, deseja executar um programa de
um pendrive conectado pela USB do computador, ele antes precisa ser copiado para a
Memria Principal. S ento ele ser executado. A memria precisa ser grande o bastante
para armazenar a maior quantidade possvel de programas, e tambm precisa ser rpida o
suficiente para buscar os dados e envi-los o mais rapidamente possvel CPU, e tambm
salv-los no menor tempo possvel. A velocidade das memrias determinada
essencialmente pela tecnologia de transistores utilizada. Essa tecnologia relacionada ao
preo. Quanto mais rpidas, mais caras elas so.

2.2.2. Os registradores
Os registradores so memrias elaboradas com o mnimo de transistores possvel,
utilizando o que h de mais moderno em tecnologia de armazenamento. Elas so as
memrias mais rpidas que podem ser construdas e por isso so tambm as mais caras.
Por essa razo, elas aparecem numa quantidade muito pequena em um computador, na
casa de alguns Kilo Bytes. Eles podem ser divididos em dois grupos. Os registradores de
propsito geral, e os de propsito especfico. Como o prprio nome diz, os primeiros podem
ser utilizados pelos programas para quaisquer objetivos, j os segundos so especficos
para algumas tarefas. Por exemplo, h um registrador na CPU para controlar se o
processador deve continuar em execuo, ou entrar em modo de espera por nova ordem. Se
esse registrador receber um valor diferente de zero, o processador entrar em modo de
espera, at que receba a ordem de modificar esse valor. Na Figura 2.3, Estrutura de uma
CPU com registradores os registradores de propsito especfico apresentados so:

Program Counter (PC): Contador de Programas


Instruction Register (IR): Registrador de Instruo
Memory Address Register (MAR): Registrador de Endereo
Memory Buffer Register (MBR): Registrador de Dados

Figura 2.3. Estrutura de uma CPU com registradores

http://producao.virtual.ufpb.br/books/edusantana/old-arq/livro/livro.chunked/ch02s02.html 2/4
04/12/2017 2.2. Estrutura de uma CPU

O PC contm o endereo de memria que ser utilizado para buscar a prxima instruo a
ser executada pela CPU. Antes de executar qualquer instruo, a CPU envia o contedo de
PC para a memria atravs do Barramento de Endereo, a memria envia o contedo da
memria nesse endereo atravs do Barramento de Dados. Esse contedo ento
armazenado no IR. J o IR, que recebeu a instruo que veio da memria, tem o objetivo de
guardar a instruo e pass-la para a Unidade de Controle, que quem vai l-la e tomar as
decises necessrias para para que ela seja executada pela Unidade de Ciclo de Dados. Por
se tratarem do processo de busca de instrues, o PC e o IR ficam instalados na Unidade de
Controle. O PC possui conexo direta com o Barramento de Endereos, e o IR com o
Barramento de Instrues.

Com relao ao MAR e ao MBR, eles possuem funes anlogas ao PC e IR,


respectivamente, mas referentes a dados e no a instrues. Quando uma operao precisa
ser realizada com algum dado que est na memria (e no em um registrador), o endereo
desse dado passado para o MAR. A CPU ento passa o contedo de MAR para a memria
atravs do Barramento de Endereo, que retornar o contedo da memria nesse endereo
atravs do Barramento de Dados. O contedo trazido pela memria ser armazenado em
MBR. S ento o dado poder ser utilizado para o processamento inicialmente planejado. O
MBR e MAR possuem, respectivamente, conexes diretas com os Barramentos de Dados e
de Endereos. Ambos so situados na Unidade de Ciclo de Dados, por serem utilizados nas
fases de processamento das instrues.

O tamanho e quantidade dos registradores de uma CPU uma das principais decises de
projeto. Se forem grandes demais, ou em quantidade maior do que a necessria, podem
resultar em desperdcio e aumento desnecessrio no preo do processador. J se forem
pequenos, ou em pouca quantidade, com certeza vo tornar o computador muito mais lento
do que o desejado. Encontrar o tamanho e quantidade ideais trabalhoso e geralmente
feito atravs de simuladores e de muito testes e anos de experincia.

Os registradores de propsito geral so utilizados para guardar as variveis dos programas.


Como eles esto presentes em quantidades muito pequenas, so poucas as variveis que
ficam armazenadas em registradores. As demais ficam na Memria Principal. Quando uma
operao precisa ser realizada e seus dados esto nos Registradores de Propsito Geral, a
CPU no precisa busc-los na memria e o processamento torna-se muito mais rpido.

Lembre-se que as memrias so muito mais lentas do que os


processadores!

A CPU tenta ao mximo manter as variveis mais utilizadas nos registradores. Ela faz isso
guardando aquelas mais usadas nas ltimas operaes. Nem sempre isso funciona, mas no
geral, a melhor soluo.

http://producao.virtual.ufpb.br/books/edusantana/old-arq/livro/livro.chunked/ch02s02.html 3/4
04/12/2017 2.2. Estrutura de uma CPU

Faa suas variveis mais importantes serem bastante utilizadas. Usando-


as em repeties, por exemplo. Isso aumentar as chances delas serem
armazenadas em registradores, podendo acelerar a execuo dos seus
programas.

2.2.3. Unidade Lgica e Aritmtica (ULA)


A Unidade Lgica e Aritmtica, ou ULA, se assemelha muito com uma calculadora
convencional. Ela executa operaes lgicas e aritmticas. As ULAs modernas executam
operaes tanto com inteiros, como com nmeros reais. A ULA recebe como entrada dois
diferentes dados que so trazidos para ela dos registradores (de propsito geral, ou
especficos) (veja a Figura 2.3, Estrutura de uma CPU com registradores). Quem decide
que registradores passaro seus dados para a ULA a Unidade de Controle baseada no tipo
da instruo que est sendo executada. A Unidade de Controle tambm envia para a ULA
qual operao ser realizada (soma, multiplicao, diviso, AND, OR etc.). Assim que isso
feito, a ULA executa a operao e gera um resultado na sua sada. Esse resultado tambm
passado para um registrador escolhido pela Unidade de Controle, baseando-se na instruo
em execuo.

2.2.4. Unidade de Controle (UC)


A Unidade de Controle, ao receber a instruo que est armazenada em IR, a decodifica e
envia os sinais de controle para onde for necessrio. Decodificar nada mais do que ler um
cdigo em binrio e interpretar a operao relativa a esse cdigo. Dependendo da operao,
os sinais de controle podem ser internos, por exemplo, para a ULA executar uma soma, ou
para o contedo de um registrador ser transferido para a ULA. Ou pode ser externo, para
um dispositivo de entrada e sada, por exemplo, ou mesmo para a Memria Principal. Tudo
isso depende da instruo a ser executada.

Na prxima seo ser apresentada a execuo de instrues em mais detalhes, o que


facilitar o entendimento do funcionamento das CPUs.

http://producao.virtual.ufpb.br/books/edusantana/old-arq/livro/livro.chunked/ch02s02.html 4/4