• Nenhum resultado encontrado

Circuitos Lógicos

N/A
N/A
Protected

Academic year: 2022

Share "Circuitos Lógicos"

Copied!
52
0
0

Texto

(1)

Poli –Dept. de Eng. Eletrônica e de Computação Universidade Federal do Rio de Janeiro

Circuitos Lógicos

Aula 20

[email protected] http://gta.ufrj.br/~cruz

(2)

Na última aula

■ Exercícios

(3)

Hoje

■ Exercícios de lógica sequencial

(4)

Projeto de circuitos

sequenciais

(5)

Circuitos sequenciais

■ Unidade de memória armazena estado atual

■ Lógica de próximo estado define qual o próximo estado e carrega na memória

□ Estado atual

□ Variáveis de entrada

■ Lógica de saída define as saídas do circuito

□ Estado atual

□ Variáveis de entrada (Máquina de Mealy)

(6)

Etapas de projeto

■ Definição de estados

□ Construção do diagrama de estados e tabela de transição de estados

□ Redução do número de estados

■ Escolha da codificação dos estados

■ Escolha do tipo de FF a ser usado

■ Projeto da lógica combinacional

□ Projeto dos circuitos de excitação

□ Projeto dos circuitos de saída

(7)

Problema proposto

(8)

Comunicação

■ Dois dispositivos desejam se comunicar

□ E1 envia 4 bits para E2

■ E1

□ Entradas b0 .. b4

□ Saída Tx1

■ E2

□ Entrada Rx2

□ Saídas b0 ... b4

E1 E2

b0 b1 b2 b3

b0 b1 b2 b3

Tx1 Rx2

(9)

Protocolo

■ E1

□ Envia pulso 101

□ Envia b0 ... b3

□ Envia bit de paridade

■ E2

□ Recebe tudo

□ Verifica paridade

▪ Se ok, exibe saída

▪ Se não, exibe 1111

E1 E2

b0 b1 b2 b3

b0 b1 b2 b3

Tx1 Rx2

(10)

Estratégia

■ Projetar os dois dispositivos separadamente

E1 E2

b0 b1 b2 b3

b0 b1 b2 b3

Tx1 Rx2

(11)

E1

(12)

Protocolo

■ E1

□ Envia pulso 101

□ Envia b0 ... b3

□ Envia bit de paridade

E1

b0 b1 b2 b3

Tx1

(13)

Entradas, saídas e estados

■ Entradas?

■ Saídas?

■ Estados? E1

b0 b1 b2 b3

Tx1

(14)

Entradas, saídas e estados

■ Entradas?

□ b0 ... b3

■ Saídas?

□ Tx1

■ Estados?

□ Cada bit enviado

▪ Sincronização

▪ Dados

▪ Paridade

E1

b0 b1 b2 b3

Tx1

(15)

Máquina de Mealy ou de Moore?

■ Saídas

□ São ligadas diretamente ao estado?

■ Entrada

□ Influencia apenas o estado ou influencia também a saída?

(16)

Diagrama de estados

■ Vértices (bolinhas)

□ Representam um estado

■ Arestas (setinhas)

□ Representam troca de estado

■ Rótulos das arestas

□ Representam entrada

▪ 1 e 0 -> botão apertado/não apertado

(17)

Diagrama de estados

■ Vértices (bolinhas)

□ Representam um estado

■ Arestas (setinhas)

□ Representam troca de estado

■ Rótulos das arestas

□ Representam entrada

▪ 1 e 0 -> botão apertado/não apertado

O próximo estado depende das entradas?

(18)

Diagrama de estados

A 1

x B

0

C 1

D b0

E b1

F b2

G b3

H P

x x x x x x

(19)

Tabela de transição de estados

Estado atual Próximo estado Tx1

A B 1

B C 0

C D 1

D E b0

E F b1

F G b2

G H b3

H A P

(20)

Simplificando a tabela

■ Dois estados são equivalentes se, para todas as entradas:

□ Possuem as mesmas saídas

□ Possuem o mesmo próximo estado

■ Dois estados X e Y equivalentes podem ser simplificados em apenas um estado

□ Elimina-se o estado Y

□ Configurações que possuam Y como próximo estado agora devem possuir X como próximo estado

Pode haver mais simplificações – ciclos escondem melhorias

(21)

Tabela de transição de estados

Estado atual Próximo estado Tx1

A B 1

B C 0

C D 1

D E b0

E F b1

F G b2

G H b3

H A P

Não há o que simplificar!

(22)

Decidindo quais FFs utilizar

■ Vamos utilizar FFs D

(23)

Número de FFs

■ Temos 17 estados

□ Quantos FFs são necessários?

■ 1 FF codifica até 2 estados

■ 2 FFs codificam até 4 estados

■ 3 FFs codificam até 8 estados

■ n FFs codificam até 2nestados

Para codificar n estados, são necessários log2(𝑛) FFs!

(24)

Número de FFs

■ Temos 17 estados

□ Quantos FFs são necessários?

■ 1 FF codifica até 2 estados

■ 2 FFs codificam até 4 estados

■ 3 FFs codificam até 8 estados

■ n FFs codificam até 2nestados

Para codificar n estados, são necessários log2(𝑛) FFs!

Teremos FF0, FF1, FF2

(25)

Atribuição de códigos aos estados

■ Não existe fórmula mágica

□ Solução ótima requer testar todas as opções

▪ Fazer o projeto até o fim com cada uma das n! possibilidades

■ Soluções práticas utilizam heurísticas

Estado

A B C D E

Código

000 001 010 011 100

(26)

Heurísticas de atribuição de estados

■ Estado inicial deve ser fácil de ser

“resetado”

■ Estados consecutivos devem ter apenas uma troca de bit

■ Estados “próximos” devem ter códigos “próximos”

Estado

A B C D E

Código

000 001 010 011 100

(27)

Heurísticas de atribuição de estados

■ Estado inicial deve ser fácil de ser “resetado”

■ Estados consecutivos devem ter apenas uma troca de bit

■ Estados “próximos” devem ter códigos “próximos”

(28)

Códigos dos estados

■ Código de Grey

Estado Q2 Q1 Q0

A 0 0 0

B 0 0 1

C 0 1 1

D 0 1 0

E 1 1 0

F 1 1 1

G 1 0 1

H 1 0 0

(29)

Tabelas de Excitação

Estado Q2 Q1 Q0 Próx.

Estado

Próx.

Q2

Próx.

Q1

Próx.

Q0 D2 D1 D0

A 0 0 0

B 0 0 1

C 0 1 1

D 0 1 0

E 1 1 0

F 1 1 1

G 1 0 1

H 1 0 0

(30)

Tabelas de Excitação

Estado Q2 Q1 Q0 Próx.

Estado

Próx.

Q2

Próx.

Q1

Próx.

Q0 D2 D1 D0

A 0 0 0 B 0 0 1 0 0 1

B 0 0 1 C 0 1 1 0 1 1

C 0 1 1 D 0 1 0 0 1 0

D 0 1 0 E 1 1 0 1 1 0

E 1 1 0 F 1 1 1 1 1 1

F 1 1 1 G 1 0 1 1 0 1

G 1 0 1 H 1 0 0 1 0 0

H 1 0 0 A 0 0 0 0 0 0

(31)

Excitação do FF D

■ Como funciona o FF D mesmo?

D Q Próx. Q

0 0

0 1

1 0

1 1

Imagem retirada da wikipedia

(32)

Nosso mapa de Karnaugh

■ Variáveis de entrada: Q0, Q1, Q2

■ Ordem das variáveis: Código de Gray

■ Necessário renumerar o mapa? 𝑄0 𝑄0 𝑄0

𝑄2 0 1 3 2

𝑄2 4 5 7 6

𝑄1 𝑄1

Estado Q2 Q1 Q0 D0

A 0 0 0 1

B 0 0 1 1

C 0 1 1 0

D 0 1 0 0

E 1 1 0 1

F 1 1 1 1

G 1 0 1 0

H 1 0 0 0

(33)

Nosso mapa de Karnaugh

■ Variáveis de entrada: Q0, Q1, Q2

■ Ordem das variáveis: Código de Gray

■ Necessário renumerar o mapa? 𝑄0 𝑄0 𝑄0

𝑄2 A B C D

𝑄2 H G F E

𝑄1 𝑄1

Estado Q2 Q1 Q0 D0

A 0 0 0 1

B 0 0 1 1

C 0 1 1 0

D 0 1 0 0

E 1 1 0 1

F 1 1 1 1

G 1 0 1 0

H 1 0 0 0

(34)

Excitação FF 0

𝐷0 = ?

Estado Q2 Q1 Q0 D0

A 0 0 0 1

B 0 0 1 1

C 0 1 1 0

D 0 1 0 0

E 1 1 0 1

F 1 1 1 1

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A B C D

𝑄2 H G F E

𝑄1 𝑄1

(35)

Excitação FF 0

𝐷0 = ?

Estado Q2 Q1 Q0 D0

A 0 0 0 1

B 0 0 1 1

C 0 1 1 0

D 0 1 0 0

E 1 1 0 1

F 1 1 1 1

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 1 B 1 C 0 D 0 𝑄2 H 0 G 0 F 1 E 1

𝑄1 𝑄1

(36)

Excitação FF 0

𝐷0 = 𝑄1 ∙ 𝑄2 + (𝑄1 ∙ 𝑄2)

Estado Q2 Q1 Q0 D0

A 0 0 0 1

B 0 0 1 1

C 0 1 1 0

D 0 1 0 0

E 1 1 0 1

F 1 1 1 1

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 1 B 1 C 0 D 0 𝑄2 H 0 G 0 F 1 E 1

𝑄1 𝑄1

(37)

Excitação FF 0

𝐷0 = 𝑄1 ∙ 𝑄2 + 𝑄1 ∙ 𝑄2

= 𝑄1 ⊕𝑄2 Estado Q2 Q1 Q0 D0

A 0 0 0 1

B 0 0 1 1

C 0 1 1 0

D 0 1 0 0

E 1 1 0 1

F 1 1 1 1

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 1 B 1 C 0 D 0 𝑄2 H 0 G 0 F 1 E 1

𝑄1 𝑄1

(38)

Excitação FF 1

𝐷1 = ?

Estado Q2 Q1 Q0 D1

A 0 0 0 0

B 0 0 1 1

C 0 1 1 1

D 0 1 0 1

E 1 1 0 1

F 1 1 1 0

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A B C D

𝑄2 H G F E

𝑄1 𝑄1

(39)

Excitação FF 1

𝐷1 = ?

Estado Q2 Q1 Q0 D1

A 0 0 0 0

B 0 0 1 1

C 0 1 1 1

D 0 1 0 1

E 1 1 0 1

F 1 1 1 0

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 0 B 1 C 1 D 1 𝑄2 H 0 G 0 F 0 E 1

𝑄1 𝑄1

(40)

Excitação FF 1

𝐷1 = 𝑄0 ∙ 𝑄2 + 𝑄0 ∙ 𝑄1

Estado Q2 Q1 Q0 D1

A 0 0 0 0

B 0 0 1 1

C 0 1 1 1

D 0 1 0 1

E 1 1 0 1

F 1 1 1 0

G 1 0 1 0

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 0 B 1 C 1 D 1 𝑄2 H 0 G 0 F 0 E 1

𝑄1 𝑄1

(41)

Excitação FF 2

𝐷2 = ?

Estado Q2 Q1 Q0 D2

A 0 0 0 0

B 0 0 1 0

C 0 1 1 0

D 0 1 0 1

E 1 1 0 1

F 1 1 1 1

G 1 0 1 1

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A B C D

𝑄2 H G F E

𝑄1 𝑄1

(42)

Excitação FF 2

𝐷2 = ?

Estado Q2 Q1 Q0 D2

A 0 0 0 0

B 0 0 1 0

C 0 1 1 0

D 0 1 0 1

E 1 1 0 1

F 1 1 1 1

G 1 0 1 1

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 0 B 0 C 0 D 1 𝑄2 H 0 G 1 F 1 E 1

𝑄1 𝑄1

(43)

Excitação FF 2

𝐷2 = 𝑄0 ∙ 𝑄2 + 𝑄0 ∙ 𝑄1

Estado Q2 Q1 Q0 D2

A 0 0 0 0

B 0 0 1 0

C 0 1 1 0

D 0 1 0 1

E 1 1 0 1

F 1 1 1 1

G 1 0 1 1

H 1 0 0 0

𝑄0 𝑄0 𝑄0

𝑄2 A 0 B 0 C 0 D 1 𝑄2 H 0 G 1 F 1 E 1

𝑄1 𝑄1

(44)

Circuitos de excitação

(45)

Equações de excitação

𝐷0 = 𝑄1 ∙ 𝑄2 + 𝑄1 ∙ 𝑄2 = 𝑄1 ⊕𝑄2

𝐷1 = 𝑄0 ∙ 𝑄2 + 𝑄0 ∙ 𝑄1

𝐷2 = 𝑄0 ∙ 𝑄2 + 𝑄0 ∙ 𝑄1

(46)

Circuitos de excitação

(47)

Saída

(48)

Tx 1

■ Saída deve se comportar como um multiplexador

□ No estado A -> 1

□ No estado B -> 0

□ No estado C -> 1

□ No estado D -> b0

□ No estado E -> b1

□ No estado F -> b2

□ No estado G -> b3

□ No estado H -> P

É necessário gerar paridade!

Estado Q2 Q1 Q0 Tx1

A 0 0 0 1

B 0 0 1 0

C 0 1 1 1

D 0 1 0 b0

E 1 1 0 b1

F 1 1 1 b2

G 1 0 1 b3

H 1 0 0 P

(49)

Tx 1

𝑇𝑥1

= 𝐴 ∙ 1 + 𝐵 ∙ 0 + 𝐶 ∙ 1 + 𝐷 ∙ 𝑏0 + 𝐸 ∙ 𝑏1 + 𝐹 ∙ 𝑏2 + 𝐺 ∙ 𝑏3 + 𝐻 ∙ 𝑃

Estado Q2 Q1 Q0 Tx1

A 0 0 0 1

B 0 0 1 0

C 0 1 1 1

D 0 1 0 b0

E 1 1 0 b1

F 1 1 1 b2

G 1 0 1 b3

H 1 0 0 P

(50)

Tx 1

𝑇𝑥1

= 𝐴 + 𝐶 + 𝐷 ∙ 𝑏0 + 𝐸 ∙ 𝑏1 + 𝐹 ∙ 𝑏2 + 𝐺 ∙ 𝑏3 + 𝐻 ∙ 𝑃

Estado Q2 Q1 Q0 Tx1

A 0 0 0 1

B 0 0 1 0

C 0 1 1 1

D 0 1 0 b0

E 1 1 0 b1

F 1 1 1 b2

G 1 0 1 b3

H 1 0 0 P

(51)

Próxima lista

■ Fazer o receptor

□ Deve indicar se houve erro na mensagem

(52)

www.gta.ufrj.br

Referências

Documentos relacionados

Com a criação e desenvolvimento dos Juizados Especiais dentro do sistema judiciário brasileiro suportado pela Lei 9.099/95, procurou-se simplificar o processo judiciário para ações

No entanto, após 30 dias de armazenagem, o teor de fármaco nas suspensões decaiu para valores próximos a 50 % nas formulações que continham 3 mg/mL de diclofenaco e núcleo

O maior desenvolvimento do processo medial da mandí- bula é encontrado na maioria dos Coraciiformes, como em Momotidae, Todidae, Meropidae, Coraciidae, Phoeniculidae

9º, §1º da Lei nº 12.513/2011, as atividades dos servidores ativos nos cursos não poderão prejudicar a carga horária regular de atuação e o atendimento do plano de metas do

O/A discente que, após as três Avaliações Regulares, alcançar nota média final inferior a sete e igual ou superior a cinco, será submetido a uma Avaliação Final que

O presente trabalho tem como objetivo realizar um estudo comparativo entre as cargas de colapso obtidas experimentalmente e a determinada analiticamente pelo método da

d) Esta prova deverá ser realizada sempre por uma equipa de três elementos, sendo que um deles é o OF. Nenhum destes dois elementos deverá ter internos no ano

introduzido por seus orifícios e daí se descarrega no difusor secundário e depois no difusor principal, e a seguir para o coletor de admissão e cilindros... 8-C