Controladores


Os controladores são sistemas seqüênciais que fornecem níveis lógicos adequados, em tempos apropriados, para controlar uma seqüência de operações lógicas simples, que, juntas, executam uma operação complicada. Estas operações simples, em geral, são executadas por registradores.Os controladores são um tipo de sistema seqüêncial que tem uma faixa de aplicabilidade mais ampla que detetores de seqüências e contadores.

Um controlador é um sistema de estados finitos que quando estes estados são percorridos , o sistema fornece na saída sinais de controle que ativam outras partes do sistema para que determinadas ações sejam executadas.Por ser uma máquina de estados finitos(FSM, Finite States Machine), os controladores podem ser descritos pelas ferramentas usadas com os contadores e detetores de seqüências.

Os controladores podem ser classificados como:

As operações simples habilitadas pelos sinais de controles de um controlador geralmente são realizadas por circuitos lógicos/aritméticos e registradores.


Transferências de Registradores
As operações básicas, lógicas ou aritméticas, que podem ser feitas sobre palavras lógicas são muito simples e podem ser realizadas com registradores e alguma lógica de suporte.Uma das operações básicas mais importante e usada, consiste na transferência de conteúdo de um registrador para outro.

 

fig1

 

A figura ao lado mostra como transferir o conteúdo do registrador A para o registrador B, ambos com um número muito grande  de seções e representados aqui pela i-ésima seção.
A colocação do terminal de controle "Move A para B" em seu nível ativo(ALTO) gera um comando ao qual o circuito responde, fazendo a transferência do conteúdo do registrador A para o registrador B.O circuito mostrado na Fig.1(a) faz uma transferência assíncrona. A lógica mostrada na Fig.1(b) pode ser colocada entre os dois registradores para que a transferência seja síncrona, isto é, em sincronismo com o relógio. A Fig.1(c) mostra as formas-de-onda para uma transferência síncrona.

Fig.1

 

Em geral, temos vários registradores que devem trocar dados entre si. Em tal caso, deve-se usar multiplexação de um barramento de dados comum. Na Fig.2 temos quatro registradores A, B, C, e D compartilhando um barramento de dados Bus, representado pela i-ésima linha de dados.Colocando uma linha de controle de entrada "Move Bus para A( B, C ou D)" no nível lógico 1(ALTO) e um controle de saída "Move A(B, C ou D) para Bus" ativa de cada vez, a transferência entre quaisquer registradores pode ser feita.

 

fig2
Fig.2

 

Mover o conteúdo do registrador para o barramento é uma operação assíncrona(leitura) enquanto transferir o 'conteúdo' do bus para um registrador será uma operação síncrona chamada escrita.


Complementação

fig3

A transferência síncrona é obtida colocando os terminais Complementa, Move A para B no nível lógico 1 e o Relógio no nível alto, então na borda de gatilhamento ocorre a transferência.

Fig.3

 

Deslocamento

fig4
Fig.4

 

Incrementação e Decrementação
As operações de Incrementação e Decrementação consistem em alterar o valor do conteúdo de um registrador de +1, ou -1, respectivamente. Estas operações podem ser realizadas configurando o registrador como um contador incrementador/decrementado síncrono ou assíncrono.A figura seguinte mostra o diagrama de blocos de um circuito deste tipo.

 

fig5
Fig.5

 

Ajuste e Reajuste(Setting e Resetting)
Algumas vezes é necessário limpar(reajustar) determinado registrador, isto é, colocar todas as saídas Q de cada flip-flop em Q=0, ou fazer todas as saídas Q=1(ajustar).A figura abaixo mostra um circuito que possibilita implementar estas operações.

 

fig6
Fig.6

 

fig7 J=1, K=0, na borda de gatilho Q=1(Ajuste)
 
 
fig8 J=0, K=1, na borda de gatilho Q=0(Reajuste)

 

Registrador Sensível a Comandos Múltiplos
Para um comando ser realizado em um registrador é necessário colocar o terminal de controle no nível lógico que habilita uma porta ou conjunto de portas.Se fôr preciso comandar várias operações em certo sistema digital, então existem duas alternativas.Podemos efetuar operações individuais em registradores separados ou implementar um registrador com capacidade de responder a diversos comandos diferentes.A primeira alternativa é mais flexível mas requer mais circuitos;a segunda alternativa precisa de menos registradores, porém os circuitos lógicos de suporte serão mais complexos.

A figura abaixo mostra os cinco comandos possíveis de serem implementados sobre um registrador sensível a comandos múltiplos. Observe que todos os comandos foram vistos anteriormente e podem ser feitos com circuitos digitais simples.

 

fig9
Fig.7

 

O registrador para suportar os comandos listados na tabela acima deve ter 5(cinco) terminais de controle: W, R, I, C, Z e, em qualquer instante, apenas um terminal de controle deve estar ativo, no nível lógico 1.O registrador pode ser constituído de n flip-flops tipo JK, o barramento de dados pode ter n linhas de dados e a figura abaixo mostra apenas a seção e a linha i-ésima Bi com a lógica associada.

 

fig10
Fig.8

 

(a)Escrever a palavra do bus Bino registrador FFi(W): W=1, R=I=C=Z=0

Ji=BiW e  Ki=(~Bi)W

(b)Ler o conteúdo do registrador FFi para o bus Bi(R): R=1,  W=I=C=Z=0

Bi=QiR

A leitura ocorre quando R=1 e a sincronização da transferência não depende do sinal de relógio.

(c)Incrementar o registrador( I ): I=1, W=R=C=Z=0

Ji=Ki=Gi-1I
J0=K0=1

O registrador deve ser configurado como um contador crescente(up) por pulsação(síncrono).

(d)Complementar o registrador(C): C=1,  W=R=I=Z=0

Ji=Ki=C

O flip-flop deve complementar o conteúdo, isto é, chavear quando C=1.

(e)Limpar o registrador(Z): Z=1 W=R=I=C=0

Ki=Z  Ji=0

Como apenas uma variável de controle W, R, I, C, Z está ativa em nível lógico 1 em qualquer instante, então o registrador sensível a comandos múltiplos pode ser descrito pelo conjunto de equações lógicas abaixo.

Ji=BiW+Gi-1I+C
Ki=(~Bi)W+Gi-1I+C+Z
Bi=QiR
J0=K0=I.1=I, i=0

Um diagrama de blocos do registrador com suas ligações ao bus, as cinco linhas de controle, e a entrada de sincronismo está mostrado na figura abaixo.

 

fif11
Fig.9

 

 

 

comp144
Questões para Revisão
Resolva  on-line o teste sobre registradores e controladorers.

 

 

 

Atualizada em 22/03/23

mac logo

Free Web Hosting