·

Ciência da Computação ·

Organização de Computadores

Send your question to AI and receive an answer instantly

Ask Question

Recommended for you

Preview text

CIRCUITOS LÓGICOS MÁQUINA DE ESTADOS Marco A Zanata Alves CIRCUITOS LÓGICOS 1 Slides baseados nos slides de Marcelo Andrade da Costa Vieira EESCUSP 2016 httpirisseleescuspbrsel414m MÁQUINA DE MOORE As entradas não interferem diretamente na saída somente nos estados futuros As saídas dependem apenas do estado atual CIRCUITOS LÓGICOS 2 Saídas Entradas Externa Elemento de Memória MÁQUINA DE MEALY As entradas interferem nos estados futuros e também na saída As saídas dependem da entrada e do Estado Presente CIRCUITOS LÓGICOS 3 Saídas Entradas Externa Elemento de Memória DIAGRAMA DE ESTADOS MOORE A saída depende exclusivamente do estado Máquina de Moore A entrada só interfere no próximo estado CIRCUITOS LÓGICOS 4 Estado Saída A 𝑍1𝑍0 00 01 Entrada X 1 DIAGRAMA DE ESTADOS MEALY A saída depende do estado presente e da entrada Máquina de Mealy A entrada interfere no próximo estado e na saída CIRCUITOS LÓGICOS 5 Estado A 00 EntradaSaída X𝑍1𝑍0 101 CODIFICAÇÃO DE ESTADOS CIRCUITOS LÓGICOS 6 CODIFICAÇÃO BINÁRIA GRAY CODING Na codificação binária cada estado é representado como um número binário Dessa maneira 𝑘 estados podem ser representado com log2 𝐾 bits Tentamos numerar os estados em ordem crescente binária Podemos também utilizar a codificação gray onde apenas um bit muda por transição A codificação gray no fundo pode se resumir em uma forma diferente de organizar a codificação binária CIRCUITOS LÓGICOS 7 CODIFICAÇÃO ONEHOT Recebe esse nome pois apenas um bit estará TRUE hot em cada instante Por exemplo a codificação onehot para três estados seria 001 010 100 Essa codificação requer mais flipflops para armazenar os estados Entretanto com a codificação onehot a lógica para definer o próximo estado costuma ser mais simples com menos portas lógicas CIRCUITOS LÓGICOS 8 SÍNTESE DE CIRCUITOS CONTADOR UPDOWN CIRCUITOS LÓGICOS 9 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO CONTADOR UPDOWN Descrição Contador binário síncrono UPDOWN Módulo 4 Entradas 1 UP0 DOWN1 Saídas 2 Sequência deve ser a binária Número de estados 4 FF Tipo D FSM Moore CIRCUITOS LÓGICOS 10 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR UPDOWN Entrada Estado Atual Próx Estado 𝑿𝟎 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟎 0 A B 0 B C 0 C D 0 D A 1 A D 1 B A 1 C B 1 D C CIRCUITOS LÓGICOS 11 Tabela de Transição de Estados A 00 B 01 C 10 D 11 0 0 0 0 1 1 1 1 Diagrama de Estados SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR UPDOWN Entrada Estado Atual Próx Estado 𝑿𝟎 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟎 0 0 0 0 1 0 0 1 1 0 0 1 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 0 1 1 1 1 1 0 CIRCUITOS LÓGICOS 12 Tabela de Transição de Estados SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR UPDOWN Entrada Estado Atual Próx Estado FF Saídas 𝑿𝟎 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟎 𝑫𝟏 𝑫𝟎 𝒁𝟏 𝒁𝟎 0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 0 0 0 0 1 1 1 0 0 1 1 1 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 0 1 0 1 1 0 1 1 1 1 0 1 0 1 1 CIRCUITOS LÓGICOS 13 Tabela de Transição de Estados SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR UPDOWN Estado Atual Saídas 𝑸𝟏 𝑸𝟎 𝒁𝟏 𝒁𝟎 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 Saídas ficam idênticas ao estado atual Ou seja 𝑍1 𝑄1 𝑍0 𝑄0 CIRCUITOS LÓGICOS 14 Tabela de Saídas SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR UPDOWN Entrada Estado Atual FF 𝑿𝟎 𝑸𝟏 𝑸𝟎 𝑫𝟏 𝑫𝟎 0 0 0 0 1 0 0 1 1 0 0 1 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 0 1 1 1 1 1 0 𝑫𝟎 𝑿𝑸𝟏𝑸𝟎 00 01 11 10 0 1 1 1 1 1 𝑫𝟏 𝑿𝑸𝟏𝑸𝟎 00 01 11 10 0 1 1 1 1 1 CIRCUITOS LÓGICOS 15 Tabela de Próximos Estados 𝐷0 𝑄0 𝐷1 𝑋𝑄1𝑄0 𝑋𝑄 1𝑄0 𝑋𝑄1𝑄0 𝑋𝑄1𝑄0 SÍNTESE DE CIRCUITOS GRAY CODING CIRCUITOS LÓGICOS 16 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO GRAY CODING Descrição Gerador de código gray de 3 bits Entradas 0 Saídas 3 FF Tipo T toggle FSM Moore CIRCUITOS LÓGICOS 17 Características Excitação T 𝑄 𝑄𝑖1 Comentário 𝑄 𝑄𝑖1 T 0 0 0 Mantém 0 0 0 0 1 1 Mantém 1 1 0 1 0 1 Inverte 0 1 1 1 1 0 Inverte 1 0 1 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO GRAY CODING Para criar uma codificação gray começamos com 1 dígito 0 ou 1 Para cada novo dígito a ser adicionado uma função de espelho é aplicada E em cada parte do espelho adicionase 0s ou 1s 0 0 1 1 0 0 0 1 1 1 1 0 18 Espelho CIRCUITOS LÓGICOS SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO GRAY CODING Para criar uma codificação gray começamos com 1 dígito 0 ou 1 Para cada novo dígito a ser adicionado uma função de espelho é aplicada E em cada parte do espelho adicionase 0s ou 1s 0 0 0 1 1 1 0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 19 CIRCUITOS LÓGICOS Espelho SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO GRAY CODING Estado Atual Próx Estado FFT 𝑸𝟐 𝑸𝟏 𝑸𝟎 𝒀𝟐 𝒀𝟏 𝒀𝟎 𝑻𝟐 𝑻𝟏 𝑻𝟎 0 0 0 0 0 1 0 0 1 0 0 1 0 1 1 0 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 1 1 0 0 1 1 1 1 1 0 1 0 1 0 1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 CIRCUITOS LÓGICOS 20 Tabela de Próximos Estados SÍNTESE DE CIRCUITOS ALARME 111 CIRCUITOS LÓGICOS 21 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO ALARME 111 Descrição Um alarme soa quando houver 3 ou mais peças consecutivas na esteira A esteira não é desligada O alarme é desligado quando não houver um conjunto de 3 peças consecutivas Entrada 1 Não há peça 0 Há nova peça 1 Saída 1 Não soa alarme 0 Soa alarme 1 FF Tipo D FSM Mealy CIRCUITOS LÓGICOS 22 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO ALARME 111 CIRCUITOS LÓGICOS 23 X 0 1 1 0 1 0 1 1 1 0 1 0 1 1 1 1 1 0 0 1 Z 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 A B C 00 10 10 11 00 00 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO ALARME 111 CIRCUITOS LÓGICOS 24 A B C 00 10 10 11 00 00 Entrada Estado Atual Próx Estado Saída 𝑿 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟎 𝒁 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 0 0 0 1 0 1 0 1 1 1 0 1 1 1 1 1 1 Tabela de Transição de Estados SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO ALARME 111 Entrada Estado Atual Saída 𝑿 𝑸𝟏 𝑸𝟎 𝒁 0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 1 1 A saída nesse caso é uma simples função AND da entrada com estado atual 𝑍 𝑋𝑄1𝑄0 CIRCUITOS LÓGICOS 25 Tabela de Saída SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO ALARME 111 Entrada Estado Atual Próx Estado 𝑿 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟎 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 CIRCUITOS LÓGICOS 26 Tabela de Próximos Estados 𝑫𝟎 𝑿𝑸𝟏𝑸𝟎 00 01 11 10 0 X 1 1 1 1 X 𝑫𝟏 𝑿𝑸𝟏𝑸𝟎 00 01 11 10 0 X 1 1 1 X 𝐷0 𝑋 𝐷1 𝑋𝑄0 SÍNTESE DE CIRCUITOS CONTADOR SIMPLESDUPLO CIRCUITOS LÓGICOS 27 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO CONTADOR SIMPLESDUPLO Descrição Um contador módulo 3 Caso a entrada estiver ligada o contador incrementa duas posições Entrada 1 Incremento de um 0 Incremento de dois 1 Saída 3 valor do contador FF Tipo JK FSM Mealy CIRCUITOS LÓGICOS 28 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR SIMPLESDUPLO Entrada Estado Anterior Saídas 𝑿 𝑸𝟏 𝑸𝟎 𝒁𝟏 𝒁𝟎 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 1 1 X X 1 0 0 1 0 1 0 1 0 0 1 1 0 0 1 1 1 1 X X CIRCUITOS LÓGICOS 29 0 1 2 01 02 00 10 12 11 Tabela de Saídas SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO CONTADOR SIMPLESDUPLO Entrada Estado Anterior Próx Estado FFJK FFJK 𝑿 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟎 𝑱𝟏 𝑲𝟏 𝑱𝟎 𝑲𝟎 0 0 0 0 1 0 X 1 X 0 0 1 1 0 1 X X 1 0 1 0 0 0 X 1 0 X 0 1 1 X X X X X X 1 0 0 1 0 1 X 0 X 1 0 1 0 0 0 X X 1 1 1 0 0 1 X 1 1 X 1 1 1 X X X X X X CIRCUITOS LÓGICOS 30 0 1 2 01 02 00 10 12 11 Transição Entradas 𝑸𝒏 𝑸𝒏𝟏 𝑱 𝑲 0 0 0 X 0 1 1 X 1 0 X 1 1 1 X 0 Tabela de Próximos Estados SÍNTESE DE CIRCUITOS SETAS DO CARRO CIRCUITOS LÓGICOS 31 SÍNTESE DE CIRCUITOS SEQUÊNCIAIS PROJETO SETAS DO CARRO CIRCUITOS LÓGICOS 32 FSM com duas entradas LEFT RIGHT Existe também a entrada de emergência HAZ Quando HAZ é acionado todas as luzes piscam SÍNTESE DE CIRCUITOS SEQUÊNCIAIS ½ SOLUÇÃO SETAS DO CARRO CIRCUITOS LÓGICOS 33 Note que a máquina de estados está ambígua pois não sabemos o próximo estado quando dois sinais estão ativos SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO SETAS DO CARRO CIRCUITOS LÓGICOS 34 A máquina não está mais ambígua mas o sinal de HAZ continua sem prioridade SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO SETAS DO CARRO CIRCUITOS LÓGICOS 35 Agora quando o usuário entrar o sinal de emergência daremos prioridade para esse sinal SÍNTESE DE CIRCUITOS SEQUÊNCIAIS SOLUÇÃO SETAS DO CARRO CIRCUITOS LÓGICOS 36 ANÁLISE DE CIRCUITOS CIRCUITOS LÓGICOS 37 ANÁLISE DE CIRCUITOS PROJETO ANÁLISE DA FSM Analise a seguinte máquina de estados e responda FSM Moore ou Mealy Qual a tabela de transições Projete o circuito utilizando FF do tipo T CIRCUITOS LÓGICOS 38 00 01 11 00 10 00 10 11 00 ANÁLISE DE CIRCUITOS SOLUÇÃO ANÁLISE DA FSM Entrada Estado Atual Próx Estado FF 1 FF 2 Saída 𝑿𝟎 𝑸𝟏 𝑸𝟎 𝒀𝟏 𝒀𝟐 𝑻𝟏 𝑻𝟎 𝒁𝟎 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1 CIRCUITOS LÓGICOS 39 Tabela de Transição de Estados ANÁLISE DE CIRCUITOS PROJETO ANÁLISE DO CIRCUITO Analise o circuito e responda FSM Moore ou Mealy Qual o diagrama de estados Qual a tabela de transições Substituir o FF tipo D pelo tipo JK CIRCUITOS LÓGICOS 40 ANÁLISE DE CIRCUITOS SOLUÇÃO ANÁLISE DO CIRCUITO FSM de Mealy CIRCUITOS LÓGICOS 41 0 1 00 10 00 11 ANÁLISE DE CIRCUITOS SOLUÇÃO ANÁLISE DO CIRCUITO CIRCUITOS LÓGICOS 42 0 1 00 10 00 11 Entrada Estado Atual Próx Estado FFJ FFK Saída 0 0 0 0 X 0 0 1 1 X 0 0 1 0 1 1 X 0 1 1 0 X 1 1