Circuitos Sequenciais • Os circuitos lógicos podem ser classificados em combinacionais ou sequenciais. • Um circuito combinacional é aquele em que as saídas só dependem das entradas atuais. Exemplo: comando com botão para escolher o canal da TV. • Um circuito sequencial é aquele em que as saídas dependem das entradas atuais, mas também de valores anteriores por que passaram as saídas. • Exemplo: comando para escolher o canal da TV com um botão para ir para o canal próximo/anterior (botão “+/-”). Circuitos Sequenciais • Não é possível descrever o comportamento de um circuito sequencial simplesmente através de uma tabela que relacione as entradas com as saídas • Para saber para onde vai evoluir um circuito sequencial, é preciso conhecer em que situação ele se encontra atualmente. Ou seja, o estado desse circuito deve ser memorizado. Decodificador 3 para 8 (3 : 8)/Circuito Combinacional As saídas em um instante t dependem só dos valores das entradas no instante t Decodificador 3 : 8 Multiplexador 4 : 1/Circuito Combinacional A1 A0 S 0 0 E0 0 1 E1 1 0 E2 1 1 E3 E0.A0’.A1’ E1.A0.A1’ S = E0.A0’.A1’ + E1.A0.A1’ + E2.A0’.A1 + E3.A0.A1 E2.A0’.A1 E3.A0.A1 Circuitos Sequenciais • O circuito sequencial mais simples de todos é um circuito sem entradas e construído com um par de inversors interligados de modo a estabelecer um ciclo com feedback. Circuitos Sequenciais • Quando Q está no nível ALTO, o inversor inferior tem a saída no nível BAIXO, forçando deste modo o inversor superior a colocar a sua saída no nível ALTO (como se assumiu inicialmente). • Quando Q está no nível BAIXO, o inversor inferior tem a saída no nível ALTO, forçando deste modo o inversor superior a colocar a sua saída no nível BAIXO (como se assumiu inicialmente). Circuitos Sequenciais • A este circuito dá-se o nome de bi-estável porque possui dois estados (situações) estáveis: • Pode usar-se uma única variável de estado (sinal Q) para definir o estado do circuito. • Logo,há 2 estados possíveis: Q=0 e Q=1. Circuitos Sequenciais • As latches e os flips-flops são os blocos elementares com os quais se constrói a maior parte dos circuitos sequenciais. • Um flip-flop é um dispositivo sequencial que amostra as suas entradas e que altera as suas saídas apenas em instantes determinados por um sinal de relógio. • Uma latch é um dispositivo sequencial que observa todas as suas entradas continuamente e altera as suas saídas em qualquer momento, independentemente de qualquer sinal de relógio. O Bloco elementar latch • Uma latch é um dispositivo sequencial que observa todas as suas entradas continuamente e altera as suas saídas em qualquer momento, independentemente de qualquer sinal de relógio. • O latch RS S=set, R=reset) O latch RS TABELA VERDADE S R QN+1 (QN+1)inv ESTADO QN – Estado atual 0 0 QN (QN)inv Mantém QN+1 – Próximo estado 0 1 0 1 Reset 1 0 1 0 Set 1 1 0 0 Não usado Simulação/Latch RS INDEFINIDO RESET RESET SET MANTÉM MANTÉM MANTÉM Descrição Verilog/Latch RS module latch_rs (output reg q, qinv, input r, s); always @(*) begin Símbolo do LATCH RS if (r == 1 & s == 0) begin // reseta q = 0; qinv = 1; end else if (r == 0 & s == 1) begin // seta q = 1; qinv = 0; end end endmodule O latch RS/Exemplo •Circuito para controle de LED Para ligar o LED pressiona-se o botão LIGA O Latch RS passa para o estado de “SET” R = ‘0’ e S = ‘1’ => Q = ‘1’ Vcc LIGA Vcc DESLIGA X LED R2 R1 O latch RS/Exemplo •Circuito para controle de LED Para desligar o LED pressiona-se o botão DESLIGA O Latch RS passa para o estado de “RESET” R = ‘1’ e S = ‘0’ => Q = ‘0’ Vcc LIGA Vcc DESLIGA X LED R2 R1