Prezi

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in the manual

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

AOC - Controle Microprogramado

No description
by Tiago Battiva on 29 August 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of AOC - Controle Microprogramado

O que
Controle
MICRO
PROGRAMADO
É uma técnica de implementação de controladores lógicos que tem como objetivo administrar o correto funcionamento das atividades dentro e fora da CPU
O
QUE
É?
?
An
~
O microcódigo é um código de baixo nível que define como um microprocessador deve funcionar quando ele executa instruções em linguagem de máquina
Criado em 1951 por Maurice Wilkes
Como
funciona?
CISC
RISC
vs
Instruction
Fetch
UC lê CI e coloca o endereço no REM;

UC envia um sinal à memória via barramento de controle;

Memória lê o endereço do REM e busca o conteúdo da célula referenciada;

Memória coloca no RDM o conteúdo da célula lida;

Memória envia à UC um sinal de "leitura concluída";

UC transfere o código de operação (RDM) ao RI.
Decodificado o opcode;

Decodificador determina quantas células a instrução ocupa;

UC incrementa o CI para apontar para a próxima instrução: CI = (CI + n), onde n = nº de células que a instrução ocupa.

UC incrementa o REM para apontar para o operando: REM = (REM + 1);
Instruction
Fetch
decodificação
busca op-code
UC envia um sinal à memória;

memória lê o endereço que está no REM e busca o conteúdo da célula referenciada;

memória coloca no RDM o conteúdo da célula lida;

memória envia à UC um sinal de "leitura concluída";

UC transfere o operando (o conteúdo do RDM) ao RI.
Fetch
busca de operandos
Operand
Operando é o próprio dado?
UC coloca no REM o endereço de onde o dado está armazenado;

UC envia um sinal à memória de operação de leitura (memory read), via barramento de controle;

Memória lê o endereço que está no REM e busca o conteúdo da célula referenciada;

Memória coloca no RDM o conteúdo da célula lida;

Memória envia à UC um sinal de "leitura concluída";

UC transfere o dado (o conteúdo do RDM) ao ACC;

Vai para ciclo de execução.
UC transfere o dado (o conteúdo do RDM) ao ACC.

Vai para ciclo de execução
Operando
=
Dado
Operando
Ponteiro
=
ULA executa a instrução
Instruction
Execution
Programa terminou?
STOP
Benefícios da
Microprogramação
Instruções mais complexas e funcionais podem ser implementadas;

Permitiu a criação de máquinas expansíveis e compátiveis;

As instruções ficaram mais eficiêntes, permitindo a implementação de determinadas tarefas com menos instruções;

Maior flexibilidade na construção e adaptação.

Uso mais eficiênte da memória principal
• Uma instrução é buscada da memória principal.

• A instrução é decodificada: o código de controle do microprograma identifica o tipo de operação a ser executada, onde achar os dados no qual executará a operação, e onde pôr o resultado. Se necessário, o processador lê a informação adicional na memória.

• A instrução é executada. O código de controle do microprograma determina o circuito/hardware que executará a operação.

• O resultado é escrito na memória.
CISC
Ideal
Formato de Microinstrução
com campos codificados
AMUX : 0 = latch A; 1 = MBR
COND: 0 = não salta; 1 = salta se N=1;
2 = salta se Z=1; 3 = salta sempre
ALU: 0 = A+B; 1 = A.B; 2 = A; 3 = NOT A
SH: 0 = não desloca; 1 = desloca 1 bit à direita;
2 = desloca 1 bit à esquerda; 3 = x
Para os campos de um bit: 0 = desativado, 1 = ativado.
Via de Dados
de fato acontece?
de fato acontece?
a =
a

+
b
}
ADD
a, b
}
Alto nível
Baixo nível
Após cada execução de uma microinstrução existe sempre a possibilidade de duas sucessoras: a próxima da seqüência ou a do desvio condicional. Sendo a escolha feita através de COND igual a:

0 = Não desvie; a próxima microinstrução sendo MPC +1
1 = Desvie para ADDR se N = 1
2 = Desvie para ADDR se Z = 1
3 = Desvie para ADDR incondicionalmente
Sequenciamento de
Microinstruções
{
{
See the full transcript