20
11/12/10 1 Mário Serafim Nunes Guilherme Silva Arroz Registos Mário Serafim Nunes Guilherme Silva Arroz Registos básicos Sinais de controlo de registos Registos de deslocamento Sinais de estado de registos Interligação de registos Usando multiplexadores Usando Barramentos tri-state 2010/2011 Sistemas Digitais - Taguspark 2

SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

Embed Size (px)

Citation preview

Page 1: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

1  

Mário Serafim Nunes Guilherme Silva Arroz

Registos

Mário Serafim Nunes Guilherme Silva Arroz

  Registos básicos   Sinais de controlo de registos   Registos de deslocamento   Sinais de estado de registos   Interligação de registos

  Usando multiplexadores   Usando Barramentos tri-state

2010/2011

Sistemas Digitais - Taguspark

2

Page 2: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

2  

Mário Serafim Nunes Guilherme Silva Arroz

  Tal como uma báscula permite memorizar 1 bit, um registo básico é um circuito sequencial síncrono que permite memorizar n bits, usando n básculas.

  O registo permite tratar esse conjunto de bits como um todo e não apenas bit a bit

  Torna-se possível manipular a informação constituída por um determinado número (fixo) de bits, isto é, de uma palavra que é tratada como uma unidade básica de informação

2010/2011

Sistemas Digitais - Taguspark

3

Mário Serafim Nunes Guilherme Silva Arroz

  As básculas que constituem um registo podem ser de qualquer tipo.

  É, no entanto, comum construir os registos com flip-flops D ou, por vezes com latches D.

2010/2011

Sistemas Digitais - Taguspark

4

Flip-flops D edge-triggered

Page 3: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

3  

Mário Serafim Nunes Guilherme Silva Arroz

  Símbolos do circuito anterior

2010/2011

Sistemas Digitais - Taguspark

5

Mário Serafim Nunes Guilherme Silva Arroz

  Como se referiu este tipo de registos – os mais básicos – podem ser realizados, quer com flip-flops, quer com latches.

  Há que ter em conta que o comportamento é diferente e, naturalmente, as aplicações também.

  Os registos com latches exibem o fenómeno da transparência.

  Nos registos mais complexos já não é possível usar latches.

2010/2011

Sistemas Digitais - Taguspark

6

Page 4: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

4  

Mário Serafim Nunes Guilherme Silva Arroz

  É interessante observar um diagrama temporal que ilustra o funcionamento do registo em resposta a uma sequência de entradas.

  No próximo slide ilustra-se um diagrama temporal clássico e um em que se prescinde da análise detalhada linha a linha para melhorar a compreensão global, ilustrando directamente os barramentos.

2010/2011

Sistemas Digitais - Taguspark

7

Mário Serafim Nunes Guilherme Silva Arroz 2010/2011

Sistemas Digitais - Taguspark

8

Diagrama temporal exemplificativo

Page 5: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

5  

Mário Serafim Nunes Guilherme Silva Arroz 2010/2011

Sistemas Digitais - Taguspark

9

Diagrama temporal exemplificativo usando agora uma representação mais condensada, pela utilização explícita dos barramentos

Mário Serafim Nunes Guilherme Silva Arroz

  Uma hipótese interessante é a inclusão de uma linha de controlo que permite, recebido um impulso de relógio (CLK) que o registo memorize as suas entradas ou mantenha o seu conteúdo.

2010/2011

Sistemas Digitais - Taguspark

10

Page 6: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

6  

Mário Serafim Nunes Guilherme Silva Arroz

  O “truque” como se vê é a inclusão de um multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual do flip-flop.

  Símbolo de um registo deste tipo

2010/2011

Sistemas Digitais - Taguspark

11

Mário Serafim Nunes Guilherme Silva Arroz

  Uma outra variante comum deste tipo de registos é a inclusão de uma linha de Clear que “limpa” o registo, isto é o coloca com conteúdo 0. Neste caso a linha é síncrona.

2010/2011

Sistemas Digitais - Taguspark

12

Page 7: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

7  

Mário Serafim Nunes Guilherme Silva Arroz

  A linha de Clear pode também ser assíncrona se utilizar as entradas directas dos flip-flops.

  Claro que estas diversas linhas podem ser incluídas no mesmo registo.

2010/2011

Sistemas Digitais - Taguspark

13

Mário Serafim Nunes Guilherme Silva Arroz

  O registo de deslocamento, na sua versão mais básica, trata-se de um registo cuja entrada de dados é feita por uma entrada série, bit a bit, em vez de ser feita em paralelo.

  Para carregar o registo, os bits têm que ser sucessivamente carregados e deslocados dentro do circuito até chegarem à “posição pretendida”.

2010/2011

Sistemas Digitais - Taguspark

14

Page 8: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

8  

Mário Serafim Nunes Guilherme Silva Arroz

  Exemplo básico

  Note-se que aqui já não é possível usar latches. Porquê?

2010/2011

Sistemas Digitais - Taguspark

15

Mário Serafim Nunes Guilherme Silva Arroz

  Símbolos

2010/2011

Sistemas Digitais - Taguspark

16

Page 9: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

9  

Mário Serafim Nunes Guilherme Silva Arroz

  Os registos de deslocamento têm inúmeras aplicações

  Basta, por exemplo, lembrar que   um deslocamento para a direita equivale à divisão

inteira por 2 de um número   um deslocamento para a esquerda equivale a

multiplicar por 2 um número   Em ambos os casos há que ter cuidado nos

detalhes se o número for um número com sinal.   Outras aplicações estão ligadas ao facto de a

informação ser, em geral, transmitida em série.

2010/2011

Sistemas Digitais - Taguspark

17

Mário Serafim Nunes Guilherme Silva Arroz

  Claro que é possível combinar as funcionalidades de um registo de deslocamento com as de um registo de carregamento paralelo, conduzindo a registos com mais funcionalidades.

  Um exemplo clássico é o do chamado registo de deslocamento universal com 4 modos:   mantém o conteúdo   desloca para a direita   desloca para a esquerda   carrega em paralelo

2010/2011

Sistemas Digitais - Taguspark

18

Page 10: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

10  

Mário Serafim Nunes Guilherme Silva Arroz

  O circuito, que tem alguma complexidade, é o seguinte

2010/2011

Sistemas Digitais - Taguspark

19

Mário Serafim Nunes Guilherme Silva Arroz

  Repare-se no detalhe que:   S1S0=00 – mantém-se o

estado (carrega-se o próprio)   S1S0=01 – deslocamento à

esquerda (carrega-se o estado da báscula à direita)

  S1S0=10 – deslocamento à direita (carrega-se o estado da báscula à esquerda)

  S1S0=11 – carregamento paralelo (carrega-se a entrada exterior)

2010/2011

Sistemas Digitais - Taguspark

20

Da báscula à direita

S1S0

Page 11: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

11  

Mário Serafim Nunes Guilherme Silva Arroz

  Símbolo geral e símbolos do 74HCT194

2010/2011

Sistemas Digitais - Taguspark

21

Mário Serafim Nunes Guilherme Silva Arroz

  Um aspecto que convém ter em conta é o de que um contador pode ser visto como um registo com algumas funcionalidades suplementares.

  Ter essa visão dá a capacidade de integrar os dois tipos de circuito à medida das necessidades de um dado projecto.

  E permite ter uma melhor compreensão de algumas características específicas de cada circuito concreto.

2010/2011

Sistemas Digitais - Taguspark

22

Page 12: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

12  

Mário Serafim Nunes Guilherme Silva Arroz

  É útil, por vezes, em registos e contadores ter saídas que dão informação sobre o estado do registo ou do contador.

  Como se verá em Arquitectura de Computadores, esse tipo de sinais é extremamente útil para o controlo de execução de tarefas.

  Um exemplo visto na aula de contadores é o detector de estado final de contagem.

  Outro exemplo interessante é a detecção que o conteúdo de um registo é 0.

2010/2011

Sistemas Digitais - Taguspark

23

Mário Serafim Nunes Guilherme Silva Arroz

  O circuito seguinte ilustra precisamente um registo com uma saída detectora de 0. Claro que uma solução idêntica podia ser implementada num contador.

2010/2011

Sistemas Digitais - Taguspark

24

Page 13: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

13  

Mário Serafim Nunes Guilherme Silva Arroz

  A transferência de informação entre registos é uma das operações mais comuns nos processadores.

  Como tal, a arquitectura da interligação entre registos torna-se crucial para garantir simultaneamente soluções eficazes e simples.

  Apenas se irá considerar a cópia de valores entre registos. Em geral, haverá algum tipo de processamento destes valores antes de estes serem de novo guardados em registos.

2010/2011

Sistemas Digitais - Taguspark

25

Mário Serafim Nunes Guilherme Silva Arroz

  Estudar-se-ão duas arquitecturas distintas com características opostas. Há muitas soluções concretas que combinam características das duas arquitecturas.

  Interligação usando multiplexadores   Interliçação usando barramentos tri-state

2010/2011

Sistemas Digitais - Taguspark

26

Page 14: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

14  

Mário Serafim Nunes Guilherme Silva Arroz

  Assume-se a existência de r registos de n bits.   Objectivo: conseguir trocar informação entre

vários registos simultaneamente.   Em cada impulso de relógio, cada registo pode

receber informação de qualquer outro registo.   Um modo de seleccionar o valor a carregar

para um registo é utilizar n multiplexadores à entrada de cada registo com r entradas ligados aos outros registos (incluindo eventualmente a si próprio)

2010/2011

Sistemas Digitais - Taguspark

27

Mário Serafim Nunes Guilherme Silva Arroz

  Veja-se o circuito para três registos sem possibilidade de auto-carregamento.

2010/2011

Sistemas Digitais - Taguspark

28

Page 15: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

15  

Mário Serafim Nunes Guilherme Silva Arroz

  Repare-se nas vantagens: Há capacidade para se verificarem tantas transferências simultâneas quantos os registos presentes. Há, portanto, grande flexibilidade.

  E nos inconvenientes: Usa-se muito material. Se se aumentar o número de registos ou o número de bits por registo, a solução pode rapidamente ser inviável.

2010/2011

Sistemas Digitais - Taguspark

29

Mário Serafim Nunes Guilherme Silva Arroz

  Uma primeira forma de simplificar este sistema é usar apenas um barramento que pode ser alimentado por qualquer registo mas que alimenta todos os outros:

2010/2011

Sistemas Digitais - Taguspark

30

Page 16: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

16  

Mário Serafim Nunes Guilherme Silva Arroz

  Esta solução perde flexibilidade porque agora já só se consegue fazer uma transferência de cada vez mas torna o circuito muito mais simples.

2010/2011

Sistemas Digitais - Taguspark

31

Mário Serafim Nunes Guilherme Silva Arroz

  Antes de avançar com outra solução estudemos um novo componente: O buffer tri-state.

2010/2011

Sistemas Digitais - Taguspark

32

Símbolo de saída tri-state

Page 17: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

17  

Mário Serafim Nunes Guilherme Silva Arroz

  Há duas aplicações fundamentais para os buffers tri-state: Por um lado, permitem interligar um de vários sinais a uma dada linha, isto é fazer uma multiplexagem e por outro potenciam a utilização de linhas bidireccionais.

2010/2011

Sistemas Digitais - Taguspark

33

Mário Serafim Nunes Guilherme Silva Arroz

  Como é fácil de observar na figura, quando Sel = 0, a saída O = I0. No caso em que Sel = 1, vem O = I1.

  Estamos perante um multiplexador que pode ser alargado a mais entradas.

2010/2011

Sistemas Digitais - Taguspark

34

Page 18: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

18  

Mário Serafim Nunes Guilherme Silva Arroz

  Neste logigrama é possível observar que existem duas linhas que ligam duas entidades que se encontram, uma, à direita e, outra, à esquerda.

2010/2011

Sistemas Digitais - Taguspark

35

Mário Serafim Nunes Guilherme Silva Arroz

  Se DIR = 1 há um caminho aberto de Oe até Id.

2010/2011

Sistemas Digitais - Taguspark

36

1 0

Page 19: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

19  

Mário Serafim Nunes Guilherme Silva Arroz

  Se DIR = 0 há um caminho aberto de Od até Ie.   Em aplicações típicas o número de linhas de

dados é muito maior. Um barramento deste tipo é um barramento bidireccional ou tri-state.

2010/2011

Sistemas Digitais - Taguspark

37

0 1

Mário Serafim Nunes Guilherme Silva Arroz

  É agora fácil, partindo de registos com saídas tri-state, uma arquitectura de interligação de registos de grande simplicidade.

  Repare-se que se podem acrescentar mais registos sem adicionar complexidade.

2010/2011

Sistemas Digitais - Taguspark

38

Tipicamente estas linhas vêm de um descodificador de origem e outro de destino

Page 20: SD 14 - Registos - Autenticação 14... · Usando multiplexadores ... multiplexador à entrada D de cada flip-flop que permite seleccionar a entrada a memorizar ou o estado actual

11/12/10  

20  

Mário Serafim Nunes Guilherme Silva Arroz

  Como se disse estamos perante duas soluções extremas. A interligação com multiplexadores é a mais flexível funcionalmente mas a mais complexa de implementar.

  A solução usando um barramento bidireccional limita o número de trocas a uma, comprometendo a flexibilidade do circuito mas é de extrema simplicidade.

  Há soluções intermédias que podem ser usadas na resolução de casos concretos.

2010/2011

Sistemas Digitais - Taguspark

39

Mário Serafim Nunes Guilherme Silva Arroz

  Livro recomendado, Secções 6.5 e 6.7   Existem muitos livros com capítulos sobre o

assunto.   A Internet é, como de costume, uma fonte que,

explorada com espírito crítico, tem muito para dar.

2010/2011

Sistemas Digitais - Taguspark

40