COMPONENTES DE UM COMPUTADOR
Unidade central do computador
Lembrando
que: Os computadores
· Um computador
digital , e um sistema interconectado de processadores, unidades , memórias e entrada e saída (E/S);
· O
computador processa dados por meio eletronica e pode ser
programado para executar diferentes tarefas;
· É um
sistema integrado com Hardware e Software;
· Hardware: é componentes físico , mas tem outros componentes físicos,
mecânicos, elétricos e eletrônicos;
· Software: São conjunto de programas necessários para fazê-lo funcionar, ou
seja, o computador considerado do ponto de vista de sua estrutura lógica.
· São construídos a partir de pastilhas de circuito integrado
contendo minúsculos elementos de comutação, as portas lógicas. Destas, as mais comuns são :
AND, OR, NAND, NOR
e NOT;
· Os
circuitos mais simples podem ser obtidos combinando diretamente portas
individuais usando pastilhas de pequena escala de integração (SSI),
circuitos mais complexos são construídos usando componentes com média escala de
integração (MSI), como os multiplexadores, demultiplexadores, codificadores,
decodificadores, deslocadores e unidades lógicas e aritméticas. Além disso, funções booleanas arbitrárias
podem ser programadas usando-se arranjos lógicos muito mais eficientes e (as
vezes) mais econômicos;
· As
operações aritméticas de um computador são feitas por somadores. Um somador completo de 1 bit pode ser
construído a partir de dois somadores parciais, enquanto que um somador para
uma palavra multibit pode ser construído, ligando múltiplos somadores completos
de tal maneira que o vai-1 de cada um alimente o vizinho da esquerda;
· Suas memória é (estática) são laches e flip-flops, cada qual podendo
armazenar 1 bit de informação, combinados de diversas formas e usados para
armazenar palavras;
· Os
componentes conecta por barramentos. Muitos, mas não todos os pinos de uma
pastilha microprocessadora típica, acionam diretamente as linhas no barramento;
· Chaves,
luzes, impressoras e muitos outros dispositivos de E/S podem ser interfaceados
com o computador, usando pastilhas de E/S que podem ser configuradas como parte
de espaço de E/S ou o espaço de memória, como for preciso. Elas podem ser decodificadas total ou
parcialmente, dependendo da aplicação.
representamos sua estrutura como básica :Seus componentes vitais indispensáveis para que este execute sua função:
entrada de dados,
memória principal,
saída de dados e a
unidade central de
processamento representada na figura por dois blocos,
Unidade de Controle (UC)
e
Unidade Lógica e Aritmética (ULA).
MEMÓRIA
UNIDADE DE UNIDADE DE UNIDADE DE
ENTRADA CONTROLE SAÍDA
UNIDADE
LÓGICA E
ARITMÉTICA
Estrutura
Básica de um computador digital
Assim,
1-
Deve
haver meios de entrada, pelos quais as informações lhe são fornecidas. Estes meios constituem as unidade de entrada,
tais como controle, fita magnética, discos, que são representadas pelo bloco
Entrada no diagrama da figura.
2-
Deve
haver dispositivos através dos quais os resultados produzidos tornam-se
disponíveis. Estes podem ser uma
impressora, um plotter, uma unidade de disco magnético, etc. O bloco Saída representa estas unidades no
diagrama da figura.
3-
Deve
haver uma unidade onde são efetuadas as operações aritméticas e lógicas
(cálculos e decisões) sobre as informações que entraram, a fim de produzir os
resultados. Tal unidade é denominada
Unidade Lógica e Aritmética (ULA) na figura.
4-
O
computador deve ter a capacidade de reter, armazenar e recuperar informações
sobre as quais serão efetuados os cálculos, resultados parciais produzidos pela
ULA, ou instruções detalhadas para manipular estas informações. O dispositivo com esta capacidade é a Memória
Principal que é representada na figura pelo bloco Memória.
5-
Deve
haver um conjunto de circuitos eletrônicos que administra automaticamente todas
estas partes do computador, fazendo com que ele siga as instruções a fim de que
informações sejam carregadas, manipuladas convenientemente, armazenadas
temporariamente na memória e finalmente transmitidas para o meio de saída. Esta unidade, que recebe o nome de Unidade de
Controle do sistema é representada na figura pelo bloco Controle.
6-
Deve
haver um circuito externo de relógio (CLOK) responsável por gerar e enviar pulsos quadrados periódicos - responsável
pela velocidade com que ocorrem os passos do processamento. Na figura
representado pelo CLOK.
UNIDADE
CENTRAL DE PROCESSAMENTO – CPU
(PROCESSADOR)
A
Unidade central de Processamento ou o processador central desempenha um papel
vital no funcionamento de um sistema de computação, tendo como funções básicas:
a realização de processamento e o controle de todo o sistema computacional durante
a execução de um programa.
Entendemos
aqui, que processamento corresponde:
· Funções
matemática;
· Funções
lógicas;
· Tratamento
de vídeo;
· Tratamento
de áudio;
· Gerenciamento
do armazenamento dos dados;
· Gerenciamento
das comunicações;
· Gerenciamento
do endereçamento dos dados e programas na Memória Principal;
· Controle
direto ou indireto de todos os periféricos integrados e ligados ao computador.
Assim,
a CPU é um conjunto altamente amplo e complexo de circuitos eletrônicos que
executam instruções armazenadas de um programa. Para que um programa seja
efetivamente executado pelo processador deve ser constituído de uma série de
instruções de máquinas guardadas na Memória Principal e nos seus registradores
internos. Todas as instruções de
programa são construídas a partir de seqüências de instruções primitivas, que
são definidas, entendidas e executadas pelo Hardware.
Todos
os computadores, de pequeno e grande porte devem ter pelo menos uma CPU,a qual
consiste de duas partes: a Unidade de Controle (UC) e a Unidade Lógica e
Aritmética (ULA),sendo que cada uma tem uma função específica.
A CPU
interage estreitamente com o armazenamento primário (Memória Principal),
recorrendo a ela tanto para obter instruções como dados. Entretanto, a memória
não faz parte da CPU.
(Lembramos
que a Memória Primária, ou apenas Memória, retém dados apenas por algum tempo,
enquanto um programa estiver trabalhando diretamente com eles, enquanto que o
armazenamento secundário retém os dados permanentes ou semipermanentes em uma
mídia externa (disco) até que o computador precise destes dados processá-los.
Quando isso acontecer, os dados são lidos no disco e transferidos para a
Memória Principal, para só depois serem processados pela CPU).
Unidade de Controle - UC
Contém
circuitos que usam sinais elétricos para coordenar o computador inteiro para
executar instruções armazenadas de um programa. Como um maestro de orquestra, a
UC não executa qualquer instrução, ao contrário ela comanda outras partes do
sistema para isso. A UC deve comunicar-se tanto com a Unidade Lógica e
Aritmética quanto com a Memória.
A Unidade Lógica e Aritmética - ULA
Contém
os circuitos eletrônicos que executam todas as operações lógicas e aritméticas.
A ULA executa quatro tipos de operações ou cálculos matemáticos: adição,
subtração, multiplicação e divisão. Também executa operações lógicas ou
comparações. A Unidade pode comparar números, letras ou caracteres especiais
para verificar as condições requeridas. Assim, executa uma ação levando em
conta se o teste produziu um resultado verdadeiro ou falso. Através da
comparação, um computador pode dizer, por
exemplo, se há lugares vagos em um avião, ou se um cliente de cartão de débito
ultrapassou seu limite de crédito.
As
operações lógicas podem testar três condições:
· Condição de Igualdade: Em um
teste de condição igual a (=), a ULA
compara dois valores para determinar se são iguais. Por exemplo, se o número de
ingressos vendidos for igual ao número de poltronas do auditório, consideram-se
esgotadas as entradas para o concerto.
· Condição Menor que: Para testar a condição menor que (<), a ULA compara dois valores para
determinar se o primeiro é menor que o segundo.Por exemplo, se o número de
multas por excesso de velocidade na ficha de um motorista for menor do que
três, então o preço do seguro será de 425 dólares; caso contrário, será de 500
dólares.
· Condição Maior que: Ao
testar a condição maior que (>),
a ULA determina se o primeiro valor é maior do que o segundo. Por exemplo, se o
número de horas que uma pessoa trabalhou em uma semana for inferior maior que
40, então o programa multiplicará cada hora que ultrapassar 40 por duas vezes o
pagamento por hora usual para computar o pagamento das horas extras.
Além
dessas condições, o computador pode testar um conjunto de condições: maior que ou igual a (≥); menor que ou igual a (≤);
menor que ou maior que (representa não igual a) (≠).
Os
símbolos que os programadores usam para informar ao computador que tipo de
comparação executar são chamados de operadores
relacionais. (= igual; < menor que; >
maior que; não igual a (≠).
Registradores: áreas de armazenamento
temporário
Um REGISTRADOR é um dispositivo capaz de
armazenar informações temporárias de alta velocidade. Semelhante à memória
principal, diverge apenas pela sua localização, pois se encontram fisicamente
localizados dentro do processador, (a memória usualmente está em pastilhas
isoladas). Assim, seu conteúdo pode ser
lido e/ou escrito mais rapidamente do que na memória principal. Máquinas
maiores e mais caras normalmente possuem mais registradores do que as máquinas
menores e mais baratas, que precisam usar a memória principal para armazenar
resultados intermediários. A informação
colocada em um registrador permanece lá até que outra informação a substitua,
ou seja, o processo de leitura não afeta o conteúdo. Um registrador pode ser caracterizado por um
único número: quantos bits ele pode armazenar.
Assim, por exemplo, um registrador de 16 bits pode conter 16 bits de
informação, um de 32 ou 64.
Pense
nos registradores como meio para
guardar dados que estão diretamente relacionados com a operação que está sendo
executada; enquanto que a Memória
Principal (RAM) armazena dados que serão usados em breve e o Armazenamento Secundário (HD) mantém
dados que podem ser necessários posteriormente, na mesma execução do programa
ou talvez em algum momento futuro. Por exemplo, um programa de Folha de
Pagamento usa os três tipos de armazenamento. Suponhamos que o programa esteja
prestes a calcular o pagamento bruto de um funcionário multiplicando as horas
trabalhadas pelo índice do salário em seus respectivos registros. A UC colocou
uma cópia dos dados que representam as horas trabalhadas e os dados
correspondentes ao índice do salário em seus respectivos registradores. Outros
dados relacionados com o cálculo do salário do funcionário ficam aguardando na
Memória Principal, prontos para serem usadas se forem necessário. Quando a ULA encerra os cálculos
correspondentes a esse funcionário, a UC faz com que o resultado seja
transferido para a Memória Principal e em seguida para um arquivo na Memória
Secundária ou HD. Os dados do funcionário seguinte será transferido do HD para
a Memória Principal, e por fim para os registradores da CPU.
Os
registradores são coordenados pela Unidade de Controle (UC) de modo que aceitem
guardem e transfiram instruções ou dados e façam comparações lógicas ou
executem operações aritméticas, tudo em alta velocidade. A UC utiliza um
registrador da mesma forma que um proprietário utiliza a caixa registradora –
como lugar conveniente, temporário,para armazenar aquilo que é usado nas transações.
Os
registradores que servem a propósitos especiais têm funções específicas, como
por exemplo, manter a instrução que está
sendo executada em um determinado instante ou controlar onde a próxima
instrução a ser executada está armazenada. (Cada local de armazenamento na
memória é identificado por um endereço, da mesma forma que cada casa de uma rua
tem seu endereço.) Alguns projetos de CPU incluem registradores de uso geral,
que a unidade de controle pode usar para diferentes tarefas quando necessário.
Dentre
os registradores mais importantes e essenciais que compõem a CPU estão:
* o
Contador de Programa - CP ou PC, que aponta para a próxima
instrução a ser executada;
* o
Registrador de Instrução - RI ou IR, onde é armazenada a instrução que
está sendo executada;
* o
Acumulador - ACC; que pode armazenar dados e resultados
intermediários;
* o
Registrador de Endereço de Memória - REM
ou MAR - armazena o endereço de
memória, ligado ao barramento de endereços;
* o
Registrador de Dados de Memória RDM ou
MDR - armazena os dados de memória,
ligado ao barramento de dados;
* e vários outros registradores que exercem
diferentes funções.
Como a CPU executa instruções de
programa
A CPU
executa a instrução em uma série de pequenos passos seqüenciais. Antes de uma
instrução poder ser executada, instruções e dados do programa devem ser
colocados na memória por meio de um dispositivos de entrada ou de armazenamento
secundário. Assim que os dados e instruções necessários estão na memória
principal, a Unidade Central de Processamento executa as quatro etapas
seguintes para cada instrução:
1.
A Unidade de Controle busca (obtém) a
instrução na memória e a coloca em um registrador (RI).
2.
A UC decodifica a instrução (determina o
que ela significa) e define a localização,na memória, dos dados necessários.
(Essas duas primeiras etapas juntas são chamadas de tempo de instrução ou I-time.
3.
A UC transfere os dados da memória para
os registradores da ULA que executa a instrução lógica ou aritmética, ou seja,
a ULA recebe o controle e executa a operaçõa rela nos dados.
4.
A UC armazena o resultado dessa operação
em um registrador (ACC) ou na memória. As etapas 3 e 4 são chamadas de tempo de
execução ou E-time.
A UC,
por fim, instrui a memória a enviar o resultado a um dispositivo de saída ou a
um dispositivo de armazenamento secundário (HD). A combinação de tempo de
instrução (I-time) e tempo de execução (E-time) denomina-se ciclo de máquina.
Um
Ciclo de Máquina pode ser representado pela figura a seguir:
Suponhamos
que um programa quer encontrar a média de cinco pontuações de exame. Para isso,
deve totalizar as cinco pontuações e depois dividir o resultado por cinco. O
programa inicia fixando o total em 0. Depois adiciona cada um dos cinco números,
um por vez ao total. Suponhamos que as pontuações sejam: 88, 76, 91, 83 e 87.
Nesse cálculo, o total foi fixado em 0 no Acumulador (ACC) e, depois 88, a
primeira pontuação do exame foi adicionada.No ciclo seguinte, o registrador de
armazenamento receberá o valor seguinte, 76 e adiciona este valor ao anterior,
assim, o ACC terá o valor 164, seguindo sempre as quatro etapas do ciclo de
máquina para cada valor: 1- Captar, a UC capta a instrução de programa ADD
(adicionar) da memória. 2-Decodifica, a UC decodifica a instrução ADD. Ela
determina que a adição deve ser efetuada e fornece instruções para que o número
seguinte seja colocado em um registrador para esse propósito. O Total atual já
está no Acumulador (ACC). 3- Executar: o número seguinte, é colocado no
registrador e a ULA faz a adição aumentando o total. 4- Armazenar: Nesse caso a
ULA armazena o resultado no acumulador em vez de na memória, porque ainda é
necessário adicionar mais números a ela, e o novo total substitui o anterior.
Em
resumo:
1 - Busca a próxima instrução da
memória para o registrador de instrução;
2 - Atualiza o contador de programa
para que ele aponte para a instrução seguinte;
3 - Determina o tipo da instrução;
4 - Se a instrução usa dados da
memória, determina onde eles estão;
5 - Busca os dados, se houver
algum, para os registradores internos da CPU;
6 - Executa a instrução;
7 - Armazena os resultados em
locais apropriados;
8 - Volta ao passo 1 para iniciar a execução da próxima
instrução.
Esta
seqüência de passos é comumente referenciada como o ciclo de busca-decodifica-executa
ou ciclo de instrução que é o
centro da operação de todos os computadores e se repete indefinidamente até que
o sistema seja desligado, ocorra algum tipo de erro ou seja encontrada uma instrução
de parada. A capacidade de processamento
de uma CPU, ou seja, a velocidade com que realiza o ciclo de uma instrução é em
grande parte determinada pelo tamanho da palavra que pode processar e pela
freqüência que o clok emite seu pulso na unidade de tempo.
A
organização interna de parte de uma CPU clássica é mostrada no desenho a seguir
e constitui a parte chamada de fluxo de dados.
Consiste num conjunto de registradores (de 1 a 16) e da ULA. Os registradores alimentam os dois
registradores de entrada da ULA, (A
e B) na figura. Esses registradores mantêm as entradas da ULA
enquanto ela está executando a operação.
A REGISTRADORES
B
`
![]() |
U L A
![]() |
As
atividades realizadas pela CPU podem ser divididas conceitualmente em duas
grandes áreas funcionais: a função processamento e a função controle.
Função Processamento
A
função processamento se encarrega de realizar as atividades relacionadas com o
processamento em si, incluindo as operações aritméticas, lógicas, movimento de
dados, alterações na seqüência de execução de instruções e as operações de
entrada e saída de dados. O dispositivo
principal desta área de atividade de uma CPU é a Unidade Aritmética e Lógica
(ULA), os registradores e os barramentos internos responsáveis pela
interligação entre os componentes.
Desde
os primórdios da computação, os projetistas tentam construir máquinas mais
rápidas. Até certo ponto, as máquinas
podem ser aceleradas simplesmente aumentando a velocidade do hardware.
Entretanto, se depararam com vários limites físicos. Para começar, as leis físicas dizem que nada
pode viajar mais rápido que a luz, cuja velocidade é aproximadamente de 30
cm/ns no vácuo, e 20cm/ns em fio de cobre.
Isso significa que para construir um computador com tempo de instrução
de 1 nonossegundo, a distância total que os sinais elétricos podem viajar
dentro da CPU, para a memória, e de volta à CPU não pode ser maior que 20 centímetros . Logo, computadores muito rápidos precisam
ser muito pequenos.
Infelizmente,
computadores rápidos produzem mais calor que os lentos e a montagem do
computador em um volume pequeno torna difícil a dissipação desse calor. Considerando tudo isso, produzir
computadores cada vez mais rápidos está se tornando cada vez mais difícil e
também cada vez mais caro.
O
processamento basicamente pode ser efetuado de duas maneiras: processamento
serial e processamento em paralelo,
dependendo principalmente da arquitetura dos componentes da CPU.
O
processamento em série ou serial é aquele efetuado por máquinas no qual cada
pequena atividade do ciclo de instrução é realizada em seqüência à anterior
(algumas poucas atividades podem ser realizadas simultaneamente). É, sem dúvida, um processo lento e pouco
eficiente.
Entretanto,
existe outra abordagem. Em vez de uma
única CPU de alta velocidade, é possível construir uma máquina com muitas ULAs
mais lentas (e mais baratas) ou mesmo CPUs completas para se obter o mesmo
poder computacional a um custo menor.
Arquiteturas
diferenciadas têm simulando um paralelismo, através do
"pipelining". Este conceito consiste em dividir o processo em
estágios de realização independentes uns dos outros, e uma nova instrução pode
ser iniciada sem que se tenha concluído a anterior. Assim, várias instruções são realizadas
simultaneamente, porém em estágios diferentes.
Ex: CPU
com várias unidades funcionais.
P1 P2
P3 P4 P5
|
|
|
|
|
|
|||
Instrução 1 Instrução 2
Instrução1
Instrução 2
Instrução
3
Instrução
4
Há três
abordagens para as máquinas que visam o paralelismo no processamento:
* SISD : Single Instruction, Single Date
(fluxo único de instrução e de dados);
* SIMD - Single Instruction, Multiple
Data (fluxo único de instrução e múltiplo de dados) que operam com múltiplos
conjuntos de dados em paralelo (ALU vetorial capaz de executar uma única operação entre vetores,
produzindo como saída um vetor resultado);
* MIMD - Multiple Instruction, Multiple
Data (fluxo múltiplo de instruções e dados).
Esta arquitetura consiste em CPUs diferentes executando programas
diferentes podendo ou não compartilhar a mesma memória, o que resulta em um
sistema multiprocessador.
A máquina tradicional de Von
Neumann tem apenas um fluxo de instruções (um programa), executado por uma
única CPU, e uma memória contendo seus dados.
A primeira instrução é buscada da memória e então executada. A seguir, a segunda instrução é buscada e
executada. Entretanto, mesmo com este
modelo seqüencial, pode ser obtida uma limitada quantidade de paralelismo
buscando-se e iniciando-se a próxima instrução antes que a corrente esteja
terminada.
A idéia
por trás deste projeto é que a unidade de controle busca uma instrução e a
entrega para uma das unidades funcionais para execução. Enquanto isso, a unidade de controle busca a
próxima instrução e a entrega para outra unidade funcional. Esse processo continua até não poder mais,
seja porque todas as unidades funcionais do tipo requerido estão ocupadas, ou
porque o operando está ainda sendo processado.
Esta estratégia geral obviamente se baseia no fato de que o tempo para
executar uma operação é muito maior que o tempo para buscá-la, assim ela é
usada nas operações de ponto-flutuante, que são complexas e lentas, em vez das operações
com inteiros, que são rápidas.
As
máquinas SIMDs operam em múltiplos conjuntos de dados em paralelo. Ex : cálculo da temperatura
média, a partir de 24 médias horárias para muitos locais. Para cada local, exatamente o mesmo cálculo
precisa ser feito, porém com dados diferentes.
A
terceira categoria, MIMD, na qual CPUs diferentes executam programas
diferentes, às vezes compartilhando alguma memória comum. Ex: no sistema de reserva de passagens
aéreas, reservas simultâneas prosseguem em paralelo.
A
figura abaixo mostra um sistema multiprocessador, uma máquinas MIMD usando
memória compartilhada. Cada processador
tem acesso à memória compartilhada através do barramento. Entretanto, um grande número de processadores
rápidos tentando constantemente acessar do mesmo barramento, pode resultar em
conflitos.
Para
resolver estes possíveis conflitos, existem outros projetos nos quais cada
processador tem sua própria memória para aqueles dados que não precisam ser
compartilhados. O acesso a esta memória
privada não usa o barramento principal, reduzindo significativamente o tráfego
no barramento.
Outros
sistemas multiprocessadores usam não apenas um barramento, mas vários para
reduzir a carga.
Unidade Lógica e Aritmética - ULA ou ALU
A ULA é
o dispositivo da CPU formada por um conjunto de circuitos lógicos e componentes
eletrônicos simples que integrados executam realmente as operações lógicas e
matemáticas com os dados. Tais
operações podem ser: soma; multiplicação, subtração; operação lógica AND;
operação lógica OR; operação lógica XOR, operação complemento; deslocamento à
direita; deslocamento à esquerda, incremento e decremento.
Qualquer
operação, por mais complexa que seja, pode ser resolvida através de sua redução
às operações elementares, as quais são processadas pela ULA.
Processamento em Série
Uma ULA
que trabalha em série, executa as operações seqüencialmente , bit a bit.
Supondo-se as entradas para o processador em série, dois registros A e B de
quatro bits cada.
A3 A2 A1 A0 B3
B2 B1 B0
O
resultado será armazenado no registrador C
C3 C2
C1 C0
A ULA
realiza operação com A e B. bit a bit, colocando os resultados seqüencialmente
nos bits do registrador C. Cada operação
elementar precisa de um impulso de relógio, e a ULA opera somente sobre um par
de elementos, por isso os processadores em série são mais econômicos, apesar de
serem mais lentos.
Funcionamento
da ULA serial:
1.
opera sobre os bits A0 e B0 e armazena o resultado em C0;
2.
opera sobre os bits A1 e B1 e armazena o resultado em C1;
3.
opera sobre os bits A2 e B2 e armazena o resultado em C2;
4.
opera sobre os bits A3 e B3 e armazena o resultado em C3;
A3 A2 A1 A0
Para
completar uma operação sobre dois registros de 4 bits cada, serão necessários 4
impulsos do relógio.
Processamento em Paralelo
Uma ULA
trabalha em paralelo quando efetua simultaneamente a operação sobre todos os
bits que compõem cada dado.
Supondo
os registradores A, B e C utilizados no
exemplo anterior, será necessário um só impulso de relógio para que o resultado
seja armazenado por completo no registrador C.
![]() |
Um
processador em paralelo trabalha simultaneamente com todos os bits dos
registradores de entrada, sendo que uma operação elementar sobre 2
registradores é executada num único impulso de relógio. Para conseguir isso, o processador paralelo
utilizaria quatro circuitos operacionais elementares, seria portanto mais caro
que o processador em série, porém quatro vezes mais rápido. O processamento consiste de um único passo:
operação com os registradores A e
B armazenando o resultado em C.
Os microprocessadores atuais dispões geralmente de
processadores em paralelo, pois com eles se atinge maior velocidade.
Processadores com dois registradores de
entrada e um registrador de saída
Os dois
registradores de entrada armazenam dos dados com os quais efetuará a
operação. Os três registradores são
independentes entre si e seu funcionamento é análogo ao processamento em
paralelo.
Processadores em paralelo com Acumulador
Neste
caso, tem-se um único registrador de entrada e o segundo dado e o resultado são
incorporados em um mesmo registrador especial chamado Acumulador.
1.
carrega-se no acumulador o primeiro dado, procedente do registrador de entrada;
2.
carrega-se no registrador de entrada o segundo dado, (os dois operandos estão
agora um no acumulador e o outro no registrador de entrada);
Os
microprocessadores atuais trabalham geralmente com ULA desse tipo.
Função Controle
A
função controle é exercida pelos
componentes da CPU que se encarregam das atividades de busca, interpretação e
controle da execução das instruções, bem como o controle dos demais componentes
do sistema de computação e que integram a Unidade de Controle. A área de controle é projetada para entender
o que fazer, como fazer e comandar quem vai fazer no momento adequado. Fazendo-se uma analogia com o ser humano,
podemos dizer que a área de controle é o cérebro que comanda o ato de andar, e
a área de processamento são os músculos que realizam efetivamente os
movimentos.
Assim,
a área de controle de uma CPU realiza as atividades de:
a)
busca da instrução que será executada, armazenando-a em um registrador IR ou
RI;
b)
interpretação das ações a serem executadas com a execução da instrução;
c) geração
de sinais de controle apropriados para ativação das atividades requeridas para
a execução da instrução identificada.
Esses sinais de controle são enviados aos diversos componentes do
sistema, sejam internos (ULA) ou
externos (E/S).
O diagrama de bloco (extraída do livro
introdução à Organização de Computadores de Mário A. Monteiro), destaca os
dispositivos básicos que devem fazer parte da CPU, ou
(UPC) com realce para os elementos que contribuem para a realização da
função controle :
* Unidade de Controle - UC
* Relógio ou "Clock"
* Registrador de Instruções - IR ou RI
* Contador de Instruções - PC ou CI
* Decodificador de Instruções
* Registrador de endereço de Memória -
REM (MAR)
* Registrador de dados da memória - RDM
(MBR)
A
quantidade, a complexidade e a disposição dos componentes que realizam as
funções de controle variam consideravelmente entre cada modelo de equipamento,
entretanto, em síntese, os dispositivos apresentados são essenciais e seu
funcionamento é o mais simples.
Relógio
Os
sinais de controle emitidos pela UC ocorrem em vários instantes durante o
período de realização de um ciclo de instrução e, de modo geral, todos possuem
uma duração fixa e igual, originada em um gerador de sinais usualmente
conhecido como relógio (Clock).
A
duração de cada pulso é chamada de CICLO
, e a quantidade de vezes que este pulso se repete em um segundo é denominado de FREQÜÊNCIA (Hertz, Hz) usada para
definir a velocidade da CPU.
O ciclo
de relógio ou de máquina é portanto o intervalo de tempo entre o início de um
pulso e o início do pulso seguinte.
Este ciclo está relacionado à realização de uma operação elementar
durante um ciclo de uma instrução.
Ocorre, entretanto, que esta operação elementar não se realiza em um só
passo e, por essa razão, costuma-se dividir o ciclo de máquina em subciclos,
defasadas no tempo, de modo que cada um aciona um passo diferente da operação
elementar.
T5
DIAGRAMA DE BLOCO DO CONJUNTO DE
TEMPO DA ÁREA DE CONTROLE
T1
T5
DIAGRAMA
DE TEMPO DO CICLO DO PROCESSADOR T0 E
SEUS 5 SUBCICLOS
Instruções
de Máquina
Uma instrução de máquina é a
especificação de uma operação básica ou primitiva que o hardware é capaz de
realizar diretamente. O projeto de um
processador é centrado no conjunto de instruções de máquina que se deseja que
ele execute, ou seja, todas as possíveis instruções que podem ser interpretadas
e executadas.
Fisicamente falando (do ponto de
vista do hardware), uma instrução de máquina é um grupo de bits que indica ao
processador uma operação ou ação que ele deve realizar.
Um processador possui instruções
capazes de realizar os seguintes tipos de operações:
·
operações matemáticas (aritméticas,
lógicas, complemento, deslocamento);
·
movimentação de dados (memória à CPU e CPU à
memória);
·
entrada e saída (leitura e escrita em
dispositivos de E/S);
·
controle (desvio da seqüência de
execução, parar, etc.);
Podemos separar o grupo de bits
que constitui a instrução em dois campos:
·
um campo (um subgrupo de bits) chama-se código de operação - C.Op;
·
o restante dos bits (se houver) chama-se
campo de operando - Op;
Pode existir um ou mais campos de
operandos na instrução, isto é, se a operação for realizada com mais de um
dado, a instrução poderá conter o endereço de localização de cada um dos dados
referidos nela.
C.Op. Operando 1 Operando
2 Operando 3
O valor binário do campo de
operando pode ter mais de um significado, ou seja, o modo de localizar o dado
pode variar de instrução para instrução, o que é chamado de modo de
endereçamento.
Bibliografia
CAPRON,
H.L. & JOHNSON, J.A. Introdução à
Informática. São Paulo: PEARSON, 2004.
MONTEIRO, Mário A. Introdução
à Organização de Computadores. Rio de Janeiro: LTC, 1995.
PAIXÃO, Renato Rodrigues. Manutenção de Computadores: Guia
Prático. São
Paulo: Érica, 2010.
TANENBAUM, Adrew S. Organização
Estruturada de Computadores. Rio de Janeiro: Prentice-Hall do Brasil, 1992.
TAUB, Herbert. Circuitos
Digitais e Microprocessadores. São Paulo: McGraw-Hill, 1984.



Nenhum comentário:
Postar um comentário