Download - Circuitos Digitais - facom.ufms.brlianaduenha/sites/default/files/part07a.pdf · Registrador contador Conjunto de registradores ... Construído usando latches Tipos de flip-flops:

Transcript

Circuitos Digitais

• Tipos de circuitos digitais:• Circuitos combinacionais• Circuitos sequenciais

• Circuito combinacional:• Circuito não é capaz de armazenar um valor• Possui portas lógicas conectadas para produzir valor dos sinais de saída• Valor dos sinais de saída depende apenas do valor dos sinais de entrada

• Circuito sequencial:• Circuito capaz de armazenar valores• Possui portas lógicas conectadas para produzir valor dos sinais de saída e

valores a serem armazenados• Valor dos sinais de saída depende do valor dos sinais de entrada e

dos valores armazenados no circuito

1

Circuitos Sequenciais

• Elementos de estado ou elementos de memória

• Exemplos de circuitos sequenciais:• Latch:

• Latch Set-Reset• Latch tipo D• ...

• Flip-flop:• Flip-flop tipo D• Flip-flop tipo T• ...

• Registrador:• Registrador de deslocamento (shift register)• Registrador contador

• Conjunto de registradores• Memória

2

Sinal do Clock (Relogio)• Sinal digital que forma onda periódica

• Determina quando eventos devem acontecer no hardware

• Ciclo do clock dividido em 2 partes: clock em 0 e clock em 1

• Transição (borda) do clock:• Transição de subida: de 0 para 1• Transição de descida: de 1 para 0

• Período do clock ou tempo de ciclo do clock: Duração de 1 ciclo do clock

• Frequência do clock ou taxa do clock: No de ciclos em 1 segundo

tempo

...

0

1

...1 s

perıodo do clock

frequencia do clock = no de ciclos em 1 s

3

Circuitos Sequenciais e Sinal do Clock

• Circuito sequencial possui clock como sinal de entrada:• Para determinar quando estado do circuito deve ser atualizado ⇒

Habilitar escrita (armazenamento) de um valor no circuito

• Sistema síncrono:• Possui sinal de clock• Funcionamento do sistema é temporizado (sincronizado) pelo sinal do clock

• Metodologias de temporização:• Circuito level-triggered :

• Mudanças de estado no circuito ocorrem quando clock tem um determinadovalor (0 ou 1)

• Circuito edge-triggered :• Mudanças de estado no circuito ocorrem em uma transição do clock

(de subida ou descida)

4

Habilitacao de Escrita em Circuitos Sequenciais

• Escrita no circuito sequencial:• Mudança do valor armazenado no circuito

• Circuito que deve ser atualizado a cada ciclo do clock:• Possui clock como sinal de entrada• Escrita no circuito é habilitada por:

• Sinal do clock

• Circuito que deve ser atualizado em determinadas situações:• Possui clock como sinal de entrada• Possui sinal de controle de entrada Write ou Enable• Escrita no circuito é habilitada por:

• Combinação (AND) de sinal do clock com sinal de controle

5

Latches

• Latch:• Elemento de memória mais simples• Capaz de armazenar valor de 1 bit• Saída do circuito é valor armazenado no circuito

• Tipos de latches:• Latch S-R:

• Latch mais simples• Não possui sinal do clock como entrada

• Latch tipo D:• Possui sinal do clock como entrada• Sinal do clock habilita escrita no circuito

• ...

6

Latch Set-Reset (S-R)

• Não possui sinal do clock como entrada

• Composto por: 2 portas NOR (ou 2 portas NAND)

• Entradas:• Sinal S (Set): deve armazenar valor 1• Sinal R (Reset): deve armazenar valor 0

• Saídas:• Sinal Q: valor armazenado no circuito• Sinal Q: complemento de Q

Entradas SaídasFuncionamento

S R Q Q

0 0 Q anterior Q anterior Valor armazenado não muda0 1 0 1 Reset: valor armazenado passa para 01 0 1 0 Set: valor armazenado passa para 11 1 – – Não utilizado

7

Latch Tipo D (Dado)

• Possui sinal de dado de entrada:• Valor armazenado no circuito é valor do dado de entrada

• Possui sinal do clock como entrada

• Circuito level-triggered:• Valor armazenado muda se dado de entrada muda e clock está em 1

• Composto por:• Latch S-R e portas adicionais

• Entradas:• Sinal D: dado a ser armazenado• Sinal C: clock

• Saídas:• Sinal Q: valor armazenado• Sinal Q: complemento de Q

8

Latch Tipo D: Funcionamento

• Sensível ao nível 1 do clock:

• Se C = 0 : Latch está fechado• S = 0 e R = 0 ⇒ Q = Q anterior• Valor armazenado não muda

(é o valor armazenado na última vez que latch esteve aberto)

• Se C = 1 : Latch está aberto• S = D e R = D ⇒ Q = D

• Armazena valor de D

9

Latch Tipo D

• Latch tipo D é transparente:• Sempre que C = 1:

• Valor armazenado e saída Q recebem o valor da entrada D

• Exemplo:• Inicialmente Q = 0• Quando C passa para 1, latch é aberto e Q recebe valor de D

10

Flip-flops

• Flip-flop:• Elemento de memória simples• Capaz de armazenar valor de 1 bit• Saída do circuito é valor armazenado no circuito• Construído usando latches

• Tipos de flip-flops:• Flip-flop tipo D:

• Possui sinal do clock como entrada• Sinal do clock habilita escrita no circuito

• Flip-flop tipo T• Flip-flop JK• ...

11

Latch 6= Flip-flop

• Latch com clock 6= flip-flop com clock:• Diferença: como clock causa atualização do valor armazenado no circuito

• Latch com clock:• Valor armazenado muda se dado de entrada muda e clock está em 1• Latch é level-triggered• Latch é transparente

• Flip-flop com clock:• Valor armazenado muda se dado de entrada muda e

clock está em uma transição• Flip-flop é edge-triggered• Flip-flop não é transparente

12

Flip-flop Tipo D (Dado)

• Possui sinal de dado de entrada:• Valor armazenado no circuito é valor do dado de entrada

• Possui sinal do clock como entrada

• Circuito edge-triggered:• Valor armazenado muda se dado de entrada muda e

clock está em transição de subida (ou descida)

• Entradas:• Sinal D: dado a ser armazenado• Sinal C: clock

• Saídas:• Sinal Q: valor armazenado no circuito• Sinal Q: complemento de Q

• Composto por: 2 latches tipo D e porta NOT

13

Flip-flop Tipo D, Sensıvel a Transicao de Subida do Clock

• Funcionamento:

• Se C = 0 :• Primeito latch está aberto e armazena e gera como saída valor de D

• Quando C passa para 1 (transição de subida):

• Primeiro latch fecha esegundo latch abre e armazena e gera como saída valor de D

14

Flip-flop Tipo D, Sensıvel a Transicao de Descida do Clock

• Funcionamento:

• Se C = 1 :• Primeito latch está aberto e armazena e gera como saída valor de D

• Quando C passa para 0 (transição de descida):

• Primeiro latch fecha esegundo latch abre e armazena e gera como saída valor de D

15

Exemplo

• Latch tipo D,flip-flop tipo D sensível à borda de subida eflip-flop tipo D sensível à borda de descida

16

Flip-flop Tipo D, Sensıvel a Transicao de Subida do Clock

17

Flip-flop Tipo D, Sensıvel a Transicao de Subida do Clock

18

Flip-flop com RESET e PRESET

• RESET ou CLEAR:• Sinal de controle que comanda a escrita de 0 no flip-flop

• PRESET:• Sinal de controle que comanda a escrita de 1 no flip-flop

• Reset e Preset síncronos:• Reset e Preset só ocorrem se estão ativos na transição do clock

• Reset e Preset assíncronos:• Reset e Preset ocorrem quando são ativados,

independente da transição do clock

19

Flip-flop com RESET e PRESET Sıncronos

• Flip-flop tipo D sensível à transição de subida do clock

20

Flip-flop com RESET e PRESET Assıncronos

• Flip-flop tipo D sensível à transição de subida do clock

21

Flip-flop Tipo T (Toggle)

• Entradas:• Sinal T : habilita inversão do valor armazenado• Sinal C: clock

• Saídas:• Sinal Q: valor armazenado no circuito• Sinal Q: complemento de Q

• Circuito edge-triggered:• Valor armazenado é invertido se sinal T está em 1 e

clock está em transição de subida (ou descida)

• Pode ser construído com flip-flop tipo D e portas adicionais

• Aplicação de flip-flops:• Tipo D: Construção de registradores• Tipo T: Construção de circuitos contadores

22

Flip-flop Tipo T, Sensıvel a Transicao de Subida do Clock

• Funcionamento:• Na transição de subida do clock C:

• Se T = 0, então Q = Q anterior• Se T = 1, então Q = Q anterior

23

Flip-flop Tipo T, Sensıvel a Transicao de Subida do Clock

24

Tempo de Setup (Preparacao) e Hold (Manutencao)

• Tempo de Setup: tsetup

• Intervalo de tempo imediatamente antes da borda ativa do clock,em que entradas devem permanecer estáveis,para FF responder de forma confiável

• Tempo de Hold: thold

• Intervalo de tempo imediatamente após a borda ativa do clock,em que entradas devem permanecer estáveis,para FF responder de forma confiável

25