Operação do microprocessador SAP-1

microprocessador SAP-1 microprocessador básico
Este post faz parte da série Um microprocessador tão simples quanto possível. Leia também os outros posts da série:

Toda operação do microprocessador SAP-1 é coordenada pelo módulo controlador/sequencializador. Basicamente, essa unidade de controle gera as palavras de controle necessárias para buscar uma instrução na memória e executá-la. Todas as operações realizadas pela unidade de controle são representadas pela palavra de controle CON. Essa palavra representa, em cada bit, a ação da unidade de controle em um determinado elemento do sistema.

Arquitetura do SAP-1
Figura 1: Arquitetura do SAP-1 [1].

Para que esse ciclo seja executado, a unidade de controle realiza uma série de operações coordenadas a fim de manipular os elementos dos sistema. Esse processo é denominado ciclo máquina e no SAP-1 é dividido em 6 estágios. O modo como esses estados são gerados será apresentado na construção do projeto. No entanto, cabe ressaltar que a transição entre os estados é dado pelo sinal de clock do processador. Isso é mostrado na Figura 2.

Estados do ciclo de máquina
Figura 2: Estados do ciclo de máquina [1].

De modo geral, todas as instruções do SAP-1 levam 1 ciclo de máquina para serem buscadas e executadas. Portanto, conforme a Figura 3 o ciclo de instrução é equivalente a 1 ciclo de máquina.

Ciclo de instrução/máquina
Figura 3: Ciclo de instrução/máquina [1].

No ciclo de máquina, os três estados atuais realizam a leitura da instrução na memória, enquanto os últimos 3 determinam sua execução.

Ciclo de Instrução

Basicamente, para cada estado da unidade de controle uma palavra de controle é determinada. Parte da execução das instruções apresenta a mesma palavra de controle. Isso ocorre durante o processo de busca da instrução na memória. No entanto, a etapa de execução é dependente do tipo de operação. Diante disso, cada instrução apresentará uma palavra de controle específica para cada estágio de operação. O formato da palavra de controle é mostrado na Figura 4.

Palavra de Controle.
Figura 4: Palavra de Controle.

O Ciclo de Busca

  • O estado T1, mostrador na Figura 5, é chamado de estado de endereço pois o conteúdo do contador de programa é transferido para o registrador de endereços de memória.
Elementos utilizados no estado T1.
Figura 5: Elementos utilizados no estado T1.

Durante esse estado somente os sinais Ep e !LM são ativados.

Palavra de controle no estado T1.
Figura 6: Palavra de controle no estado T1.
  • O estado T2 é, mostrado na figura 7, chamado de estado de incremento pois o contador de programa é alterado para apontar para o próximo endereço de memória. 
Elementos utilizados no estado T2.
Figura 7: Elementos utilizados no estado T2.

Somente o sinal Cp é ativado.

Palavra de controle no estado T2.
Figura 8: Palavra de controle no estado T2.
  • O ultimo estágio de busca é representado pelo estado T3, denominado estado de memória. Nesse estado, o conteúdo da RAM endereço por REM é transferido para o registrador de instruções.
Elementos utilizados no estado T3.
Figura 9: Elementos utilizados no estado T3.

Para isso, os únicos sinais ativados são !CE e !LI.

Palavra de controle no estado T3.
Figura 10: Palavra de controle no estado T3.

O Ciclo de Execução

Do mesmo modo mostra nas figuras acima, o ciclo de execução fará com que apenas os elementos necessários sejam acionados. Esse é o papel fundamental da unidade de controle, isto é, coordenar as ações!

Instrução LDA:

  • T4: A instrução é decodificada e o operando é carregado no REM. Os sinais ativados são !Ei e !Lm;
  • T5: O conteúdo da RAM é transferido para o acumulador. Os sinais ativados são !CE e !La;
  • T6: Sem operações.

Instrução ADD:

  • T4: A instrução é decodificada e o operando é carregado no REM. Os sinais ativados são !Ei !Lm;
  • T5: O conteúdo da RAM é transferido para o registrador B. Os sinais ativados são !CE e !Lb;
  • T6: A operação de adição (Su = 0) é realizada e o resultado é armazenado no registrador acumulador. Os sinais Eu e !La são ativados.

Instrução SUB:

  • T4: A instrução é decodificada e o operando é carregado no REM. Os sinais ativados são !Ei e !Lm;
  • T5: O conteúdo da RAM é transferido para o registrador B. Os sinais ativados são !CE e !Lb;
  • T6: A operação de subtração (Su = 1) é realizada e o resultado é armazenado no registrador acumulador. Os sinais !La, Eu e Su são ativados.

Instrução OUT:

  • T4: A instrução é decodificada e o valor do acumulador é transferido para o registrador de saída. Os sinais Ea e !Lo são ativados;
  • T5: Sem operações;
  • T6: Sem operações.

Instrução HLT:

  • T4: A instrução é decodificada e não requer sinais de controle, pois o processamento é encerrado;

Na Figura 11, as palavras de controle (em hexadecimal) para cada estado das instruções são apresentadas, indicando os sinais ativos.

macr
Figura 11: Palavras de controle para a execução das instruções.

Referências

  • [1] MALVINO, A.P. Microcomputadores e Microprocessadores. McGRAW-HILL do Brasil, 1985.
  • Crédito da imagem destacada.

Outros artigos da série

<< Introdução ao microprocessador básicoProjeto do SAP-1 construído no simulador >>
Este post faz da série Um microprocessador tão simples quanto possível. Leia também os outros posts da série:
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Hardware » Sistemas Digitais » Operação do microprocessador SAP-1
Talvez você goste:
Comentários:

3
Deixe um comentário

avatar
1 Comentários
2 Respostas
0 Seguidores
 
Discussão de maior alcance
Discussão mais quente
2 Autores de comentários
Fernando Deluno GarciaSouza Comentários recentes
  Notificações  
recentes antigos mais votados
Notificar
Souza
Visitante
Souza

Fernando Deluno Garcia, ocorreu uma pequena confusão:

Instrução SUB:
T4: A instrução é decodificada e o operando é carregado no REM. Os sinais ativados são !Ei e !Lm;
T5: O conteúdo da RAM é transferido para o registrador B. Os sinais ativados são !CE e !Lb;
T6: A operação de adição é realizada e o resultado é armazenado no registrador acumulador. Somente o sinal !La é ativado.

Você descreveu o procedimento para a instrução ADD, mas nessa parte é para a instrução SUB. Faltou o bit "Su". Alias, melhor refazer, pois tem a palavra: La, Su e Eu.

Fernando Deluno Garcia
Visitante
Fernando Deluno Garcia

Olá, Souza. Obrigado pelo retorno.

Realmente, faltou citar a função do sinal Su para determinar a operação de adição/subtração.

Souza
Visitante
Souza

Ok! Estou bem empolgado com o assunto.
Já "brinco" no Logisim, mas é um hobby. Nas horas de descanso é a minha diversão. Tenho muito, muito a aprender.

Séries



Outros da Série

Menu