MC 542 Organizao de Computadores Teoria e Prtica

  • Slides: 54
Download presentation
MC 542 Organização de Computadores Teoria e Prática 2007 Prof. Paulo Cesar Centoducatte@ic. unicamp.

MC 542 Organização de Computadores Teoria e Prática 2007 Prof. Paulo Cesar Centoducatte@ic. unicamp. br www. ic. unicamp. br/~ducatte MC 542 4. 1

MC 542 Circuitos Lógicos Projeto de Circuitos Seqüenciais “DDCA” - (Capítulo 3) “FDL” -

MC 542 Circuitos Lógicos Projeto de Circuitos Seqüenciais “DDCA” - (Capítulo 3) “FDL” - (Capítulo 7) MC 542 4. 2

Projeto de Circuitos Seqüenciais Sumário • • Introdução Latches e Flip-Flops Projeto de Circuitos

Projeto de Circuitos Seqüenciais Sumário • • Introdução Latches e Flip-Flops Projeto de Circuitos Síncronos Registradores • • Registradores de Deslocamento Contadores – Uso de Registradores com Barramento – Assíncronos – Síncronos MC 542 4. 3

Introdução • As saídas de um circuito seqüencial dependem dos valores presente e passados

Introdução • As saídas de um circuito seqüencial dependem dos valores presente e passados de suas entradas. • Lógica seqüencial possue memória. • Algumas definições: – Estado (State): conjunto de informações a cerca do circuito necessárias para se prever o seu comportamento futuro. – Latches e flip-flops: elementos de estado que armazenam um bit – Circuitos seqüencias Síncronos: circuito combinacional seguido de um banco de flip-flops MC 542 4. 4

Elementos de Estados • O estado de um circuito determina o seu comportamento futuro

Elementos de Estados • O estado de um circuito determina o seu comportamento futuro • Elementos de Estado armazenam o estado – – Circuito bi-estável Latch SR Latch D Flip-flop D » Outros tipos de flip-flops • JK • T • SR MC 542 4. 5

Circuito Bi-estável • Bloco Fundamental para a construção dos outros elementos de estado •

Circuito Bi-estável • Bloco Fundamental para a construção dos outros elementos de estado • Duas saídas: Q, Q • Sem entradas. MC 542 4. 6

Circuito Bi-estável: Comportamento • Considere os dois casos abaixo: – Q = 0: então

Circuito Bi-estável: Comportamento • Considere os dois casos abaixo: – Q = 0: então Q = 1 e Q = 0 – Q = 1: então Q = 0 e Q = 1 • O circuito bi-estável armazena 1 bit do estado na variável, Q (ou Q ) • Porém não há entrada para controle do estado MC 542 4. 7

Elemento de Memória com Controle Load A Data B Output TG 1 TG 2

Elemento de Memória com Controle Load A Data B Output TG 1 TG 2 MC 542 4. 8

SR Latch • Latch Set/Reset (Latch SR) • Definições – Set: Saída igual a

SR Latch • Latch Set/Reset (Latch SR) • Definições – Set: Saída igual a 1 – Reset: saída igual a 0 • Quando a entrada set, S, é 1 (e R = 0), Q = 1 • Quando a entrada reset, R, é 1 (e S = 0), Q = 0 R S • Qual a tabela verdade? Q MC 542 4. 9

SR Latch • Considere os quatro casos possíveis: • S = 1, R =

SR Latch • Considere os quatro casos possíveis: • S = 1, R = 0 • S = 0, R = 1 • S = 0, R = 0 • S = 1, R = 1 MC 542 4. 10

SR Latch • S = 1, R = 0: then Q = 1 and

SR Latch • S = 1, R = 0: then Q = 1 and Q = 0 • S = 0, R = 1: then Q = 0 and Q = 1 MC 542 4. 11

SR Latch • S = 0, R = 0: então Q = Qprev e

SR Latch • S = 0, R = 0: então Q = Qprev e Q = Qprev (memória!) • S = 1, R = 1: então Q = 0 e Q = 0 (estado invalido: Q ≠ NOT Q) MC 542 4. 12

SR Latch R S Q a Q b Q S R Q 0 0

SR Latch R S Q a Q b Q S R Q 0 0 0/1 1/0 0 1 0 1 1 0 0 a b (no change) MC 542 4. 13

SR Latch SR R Q S Q t 1 t 2 R S Qa

SR Latch SR R Q S Q t 1 t 2 R S Qa Qb t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 10 1 0 1 0 ? ? Time MC 542 4. 14

Latch SR com Enable R S R Q(t + 1) 0 x x Q(t)

Latch SR com Enable R S R Q(t + 1) 0 x x Q(t) (no change) 1 0 0 Q(t) (no change) 1 0 1 1 x R¢ Q En Q S En S¢ MC 542 4. 15

Latch SR com Enable 1 Clk 0 1 R 0 1 S 0 1

Latch SR com Enable 1 Clk 0 1 R 0 1 S 0 1 ? Q 0 Time S Q Clk R Q MC 542 4. 16

Latch SR com Nand S Q En Q R Qual a tabela verdade? MC

Latch SR com Nand S Q En Q R Qual a tabela verdade? MC 542 4. 17

Latch D S D (Data) Q En Q R En D D R S

Latch D S D (Data) Q En Q R En D D R S Q Q En D Q(t + 1) 0 x Q ( t) 1 0 0 1 1 1 D Q En Q Q Q MC 542 4. 18

Latch D t 1 t 2 t 3 t 4 En D Q Time

Latch D t 1 t 2 t 3 t 4 En D Q Time MC 542 4. 19

Flip-Flop D • • Duas entradas: CLK, D Q só muda na borda (subida

Flip-Flop D • • Duas entradas: CLK, D Q só muda na borda (subida ou decida) do CLK O flip-flop “samples” D na borda do CLK O flip-flop é chamado de dispositivo edge-triggered devido a ser ativo na borda do clock Flip-Flop D D Q Q MC 542 4. 20

Flip-Flop D Mestre-Escravo Master D Clock D Q Clk Q Slave Q m D

Flip-Flop D Mestre-Escravo Master D Clock D Q Clk Q Slave Q m D Q Clk Q Q s Q Q CLK D D Q L 1 Q Q CLK N 1 D Q Q L 2 Q Q MC 542 4. 21

Flip-Flop D Mestre-Escravo Clock D Q m Q = Q s MC 542 4.

Flip-Flop D Mestre-Escravo Clock D Q m Q = Q s MC 542 4. 22

Flip-Flop D vs. Latch D CLK D Q (latch) Q (flop) MC 542 4.

Flip-Flop D vs. Latch D CLK D Q (latch) Q (flop) MC 542 4. 23

Flip-Flop D vs. Latch D CLK D Q (latch) Q (flop) MC 542 4.

Flip-Flop D vs. Latch D CLK D Q (latch) Q (flop) MC 542 4. 24

Flip-Flop D Q Qa Clk Q Qa Q Qb Q Qc D Clock D

Flip-Flop D Q Qa Clk Q Qa Q Qb Q Qc D Clock D Qa Qb Qc MC 542 4. 25

Flip-Flop D Sensível à Borda de Subida 1 2 P 3 P 1 5

Flip-Flop D Sensível à Borda de Subida 1 2 P 3 P 1 5 Q 6 Q Clock 3 D 4 P 2 P 4 D Clock Q Q MC 542 4. 26

FF D Mestre-Escravo com Preste e Clear Assíncronos Preset D Q Clock Q Clear

FF D Mestre-Escravo com Preste e Clear Assíncronos Preset D Q Clock Q Clear Preset D Q Q Clear MC 542 4. 27

FF D Sensível à Borda com Preste e Clear Assíncrono Preset Q Preset D

FF D Sensível à Borda com Preste e Clear Assíncrono Preset Q Preset D Clock Q Q Q Clear D Clear MC 542 4. 28

FF D Com Reset Síncrono CLK D Reset D Q Q MC 542 4.

FF D Com Reset Síncrono CLK D Reset D Q Q MC 542 4. 29

Flip-Flop Tipo T D T Q Q Clock T Q( t + 1 )

Flip-Flop Tipo T D T Q Q Clock T Q( t + 1 ) 0 Q( t ) 1 Q( t ) T Q Q MC 542 4. 30

Flip-Flop Tipo JK J D K Q Q Clock J K Q ( t

Flip-Flop Tipo JK J D K Q Q Clock J K Q ( t + 1) 0 0 1 1 0 1 Q ( t) 0 1 Q (t) J Q K Q MC 542 4. 31

Registradores • Conjunto de elementos de memória (flip-flops) utilizados para armazenar n bits. •

Registradores • Conjunto de elementos de memória (flip-flops) utilizados para armazenar n bits. • Utilizam em comum os sinais de clock e controle MC 542 4. 32

Shift Register Apresenta o seuinte comportamento: In Q 1 Q 2 Q 3 Q

Shift Register Apresenta o seuinte comportamento: In Q 1 Q 2 Q 3 Q 4 = Out t 0 1 0 0 t 1 0 0 0 t 2 1 0 0 t 3 1 1 0 t 4 1 1 1 0 1 t 5 0 1 1 1 0 t 6 0 0 1 1 1 t 7 0 0 0 1 1 MC 542 4. 33

Shift Register In Clock D Q Q Q 1 D Q Q Q 2

Shift Register In Clock D Q Q Q 1 D Q Q Q 2 D Q Q Q 3 D Q Q 4 Out Q MC 542 4. 34

Shift Register com Carga Paralela Parallel output Q 3 D Q Q Serial input

Shift Register com Carga Paralela Parallel output Q 3 D Q Q Serial input Shift/Load Q 2 D Q Q Parallel input Q 1 D Q Q Q 0 D Q Q Clock MC 542 4. 35

Shift Register Universal • Entrada Serial – Deslocamento a Esquerda – Deslocamento a Direita

Shift Register Universal • Entrada Serial – Deslocamento a Esquerda – Deslocamento a Direita • Carga Paralela • Saída Paralela • Exercício: Desenhe o Diagrama do Shift Register Universal de 4 bits. MC 542 4. 36

Registradores em um Barramento Data Extern Bus Clock R 1 in Function R 1

Registradores em um Barramento Data Extern Bus Clock R 1 in Function R 1 out R 2 in R 2 out Rk Rkin Rkout Control circuit MC 542 4. 37

Registradores em um Barramento MC 542 4. 38

Registradores em um Barramento MC 542 4. 38

Contadores • Assíncronos • Síncronos MC 542 4. 39

Contadores • Assíncronos • Síncronos MC 542 4. 39

Contadores Contador Binário Q 2 Q 1 Q 0 t 0 0 t 1

Contadores Contador Binário Q 2 Q 1 Q 0 t 0 0 t 1 0 0 1 t 2 0 1 0 t 3 0 1 1 t 4 1 0 0 t 5 1 0 1 t 6 1 1 0 t 7 1 1 1 clk MC 542 4. 40

Contador Binário – FF Tipo T Clock Q 0 Q 1 Q 2 Count

Contador Binário – FF Tipo T Clock Q 0 Q 1 Q 2 Count 0 1 2 3 4 5 6 7 0 MC 542 4. 41

Contador Binário – FF Tipo T 1 Clock T Q Q 0 Q Q

Contador Binário – FF Tipo T 1 Clock T Q Q 0 Q Q Q 1 Q 2 Contador Binário Assíncrono (up-counter) MC 542 4. 42

Contador Binário – FF Tipo T (Down-Counter) Clock Q 0 Q 1 Q 2

Contador Binário – FF Tipo T (Down-Counter) Clock Q 0 Q 1 Q 2 Count 0 7 6 5 4 3 2 1 0 MC 542 4. 43

Contador Binário – FF Tipo T (Down-Counter) 1 Clock T Q Q 0 Q

Contador Binário – FF Tipo T (Down-Counter) 1 Clock T Q Q 0 Q Q Q 1 Q 2 Contador Binário Assíncrono (down-counter) MC 542 4. 44

Contadores Síncronos Clock cycle Q 2 Q 1 Q 0 0 0 1 2

Contadores Síncronos Clock cycle Q 2 Q 1 Q 0 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 8 0 0 0 Q 1 changes Q 2 changes MC 542 4. 45

Contador Binário Síncrono Clock Q 0 Q 1 Q 2 Q 3 Count 0

Contador Binário Síncrono Clock Q 0 Q 1 Q 2 Q 3 Count 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 MC 542 4. 46

Contador Binário Síncrono 1 T Q Q 0 Clock Q T Q Q 1

Contador Binário Síncrono 1 T Q Q 0 Clock Q T Q Q 1 Q T Q Q 2 Q Q 3 Q MC 542 4. 47

Contador Binário Síncrono com Enable e Clear Enable Clock T Q Q Clear MC

Contador Binário Síncrono com Enable e Clear Enable Clock T Q Q Clear MC 542 4. 48

Contador de 4 bits com FF D Enable D Q Q 0 Q D

Contador de 4 bits com FF D Enable D Q Q 0 Q D Como determinar as funções de exitação de cada FF? 1. Projeto por Inspeção 2. Projeto de Máquina de Estados Finitos (FSM) Clock Q Q 1 Q D Q Q 2 Q D Q Q 3 Q Output carry MC 542 4. 49

Contador de 4 bits com FF D com Carga Paralela Enable D 0 0

Contador de 4 bits com FF D com Carga Paralela Enable D 0 0 1 D 1 0 1 D 2 0 1 D 3 0 1 Load Clock D Q Q 0 Q D Q Q 1 Q D Q Q 2 Q D Q Q 3 Q Output carry MC 542 4. 50

Contador Módulo (exemplo: . Módulo 6) Clock Q Q Q 0 1 2 Count

Contador Módulo (exemplo: . Módulo 6) Clock Q Q Q 0 1 2 Count 0 1 2 3 4 5 0 1 MC 542 4. 51

Contador Módulo (exemplo: Módulo 6) 1 Enable 0 D 0 D 0 1 2

Contador Módulo (exemplo: Módulo 6) 1 Enable 0 D 0 D 0 1 2 Load Q 0 Q 1 Q 2 Clock MC 542 4. 52

Contador Módulo 6 com Reset Assíncrono 1 T Q Q 0 Clock Q T

Contador Módulo 6 com Reset Assíncrono 1 T Q Q 0 Clock Q T Q Q 1 Q Q 2 Q MC 542 4. 53

Contador Módulo 6 com Reset Assíncrono Clock Q 0 Q 1 Q 2 Count

Contador Módulo 6 com Reset Assíncrono Clock Q 0 Q 1 Q 2 Count 0 1 2 3 4 5 0 1 2 MC 542 4. 54