Eletrônica Digital Circuitos Lógicos Sequenciais PROF. EDUARDO G. BERTOGNA UTFPR / DAELN
Circuitos Sequenciais vs Combinacionais Os circuitos lógicos combinacionais são aqueles em que suas saídas a qualquer momento dependem apenas dos estados das entradas naquele mesmo instante de tempo, e valores anteriores das entradas não tem influência nas saídas. Portanto, o circuito combinacional não possui elementos de memória. Os circuitos sequenciais incorporam elementos de memória, e portanto as saídas dependem não só dos valores presentes nas entradas naquele determinado instante de tempo, mas também de estados em instantes de tempo anteriores.
Diagrama em Blocos Geral de um Circuito Digital
Elemento de Memória Básico: Flip-Flop (FF) O Flip-Flop pode ser dos tipos: R-S J-K D Também conhecido: Latch usado para alguns tipos de FFs; Multivibrador Biestável denominação técnica.
Elemento de Memória Básico: Flip-Flop (FF) O Flip-Flop mais simples é um circuito baseado em duas portas NAND ou 2 portas NOR; Tem duas saídas saídas Q e ഥQ; Em condições normais as saídas Q e ഥQ sempre serão de níveis lógicos opostos; As entradas poderão ser: S, R, J, K, D, CLK, PRE,CLR dependendo do tipo de FF.
Latch ou Flip-Flop S-R (FF) com portas NAND
Flip-Flop S-R Estados de Repouso quando SET = RESET = 1 O estado SET = RESET = 1 tem 2 estados prováveis para suas saídas Q e ഥQ: Q=1, ഥQ=0, e Q=0, ഥQ=1; O estado SET = RESET = 0 não é permitido pois resulta Q=ഥQ=1, e se entradas ao retornarem a 1 simultaneamente o resultado será imprevisível.
Pulsando a entrada SET do Flip-Flop (FF) => Levando Q=1 e ഥQ=0;
Pulsando a entrada RESET do Flip-Flop (FF) => Levando Q=0 e ഥQ=1;
Exemplo do funcionamento de um FF com NAND
Exemplo de uso do FF S-R com NANDs para debouncing de uma chave mecânica:
Latch ou Flip-Flop S-R (FF) com portas NOR
Exemplo de uso do FF S-R com NOR para disparo de alarme ativado por interrupção de feixe de luz:
Exemplo de uso de um FF S-R na multiplexação de sinal de clock:
Pulsos Digitais t f t r = Tempo de descida (fall time) = Tempo de subida (rise time) t w = Tempo de largura de pulso (width time)
Sinais de Temporização de FFs: Gatilho ou Clock
Flip-Flop tipo S-R com clock na borda de subida
Flip-Flop tipo S-R com clock na borda de descida
Circuitos Detectores de Bordas
Flip-Flop tipo J-K A ambiguidade existente no S-R não existe no FF J-K
Flip-Flop tipo J-K com clock na borda de subida
Flip-Flop tipo D
Flip-Flop tipo D a partir de um J-K
Latch tipo D Transparente No Latch tipo D não há detector de borda, mas um sinal de Habilitação (enable - EN) e funciona assim: Entrada EN=1, saída Q segue a entrada D; Entrada EN=0, saída Q mantém o estado anterior.
Exemplo do funcionamento do Latch D Transparente
Entradas Assíncronas PRESET e CLEAR As entradas vistas até agora: S, R, J, K e D são chamadas de síncronas pois seus efeitos são sincronizados com o clock. As entradas assíncronas operam independents do clock, são elas: PRESET que leva a saída Q a 1, e CLEAR que leva a saída Q a 0.
Resposta às Entradas Assíncronas PRE e CLR
Temporização de FFs Tempo de atraso de Low-to-High: t PLH Tempo de atraso de High-to-Low: t PHL
Temporização de FFs Tempo de preparo (setup time) e tempo de manutenção (hold-time), e tempos de duração de pulsos.
Parâmetros de temporização de FFs (em ns) Parâmetro Descrição TTL 7474 74LS11 2 74C74 CMOS 74HC11 2 t S Setup Time 20 20 60 25 t H Hold Time 5 0 0 0 t PHL de CLK p/ Q 40 24 200 31 t PLH de CLK p/ Q 25 16 200 31 t PHL de CLR p/ Q 40 24 225 41 t PLH de PRE p/ Q 25 16 225 41 t W (L) CLK em 0 37 15 100 25 t w (H) CLK em 1 30 20 100 25 t w (L) PRE ou CLR 30 15 60 25 f max em MHz 15 30 5 20
Resposta de um FF considerando o tempo de hold
Contador Assíncrono
Contador Assíncrono como Divisor de Frequência
Efeito do Atraso de Propagação no Contador Assíncrono Máxima frequência de operação de um Contador Assíncrono: T clk N. tpd, ou: f máx = 1 N..tpd
FF tipo D como Divisor de Frequência
Módulo (MOD number) de um Contador O módulo de um Contador significa quantos diferentes estados este assume em um ciclo completo, antes de reiniciar o ciclo. Um Contador com 4 FFs será de módulo 16, ou seja: MOD = 2 4, portanto: MOD = 2 N, onde N = nr. De FFs. O fator de divisão de um sinal de clock presente no MSB do Contador será igual a frequência do clock/mod. Exemplo: Qual o módulo de um Contador tal que este seja capaz de contar 1000 peças que passam por uma esteira? Solução trivial: MOD = 2 N 1000 Logo, para N=10 => MOD=1024 e para N=9 => MOD=512, então o Contador deverá ser de MOD=1024, com N=10, ou seja deverá ter 10 FFs.
Contadores com Módulos < 2 N O Contador básico mostrado até aqui sempre terá como módulo o valor: MOD = 2 N ; Pode-se, a partir do contador básico construir contadores de módulo MOD < 2 N, agregando para um isso circuito de reset adicional; Esse circuito de Reset leva a contagem a zero quando o valor MOD-1 (valor máximo desejado) na contagem é atingido; Desse modo o Contador ciclicamente conta de 0 a MOD-1.
Contador Assíncrono de Módulo 12: Contador básico + circuito de reset quando a contagem alcança o valor 12 (contagem de 0 a 11 => 12 estados em um ciclo).
Contadores Síncronos No Contador Síncrono, o sinal de clock é simultâneo em todos os FFs, e o atraso de propagação não acumula de um para o outro. No Contador Síncrono MOD 8 abaixo, a saída A muda de estado na borda de descida do clock, logo J e K são ligados juntos. Já a saída B muda de estado se A=1 e ocorre a transição clock, logo J=K=A. Finalmente, C deve mudar de estado se A=B=1, logo J e K são conectados a A.B. do
Contador Síncrono MOD 16 No Contador Síncrono MOD 16, além das conexões usadas no Contador MOD 8, deve ligar as saídas A, B e C a uma AND de 3 entradas, sendo sua saída ligada a J e K do ultimo FF.
Contador Síncrono MOD6 No Contador Síncrono MOD 6, quando o valor em ABC for 6 o contador deve ser resetado, o que ocorre quando A=0, B=C=1. Então, se B=C=1 => B. C=0 => CLR=0 em todos os FFs, sendo resetados, e levando a contagem a zero no valor 6.
Contador Síncrono MOD 14 No Contador Síncrono MOD 14, quando o valor em ABCD for 14 o contador deve ser resetado, o que ocorre quando A=0, B=C=D=1. Então, se B=C=D=1 => B. C. D=0 e CLR=0 em todos os FFs, levando a contagem nas saídas ABC a zero no valor 14.
Contador Síncrono MOD 10 ou de Década No Contador Síncrono MOD 10, quando o valor em ABCD for 10 o contador deve ser resetado, o que ocorre quando A=C=0, B=D=1. Então, se B=D=1, conectando B. D aos pinos de CLR de todos os FFs a contagem nas saídas ABC é levada a zero no valor 6.
Contador Síncrono MOD 60 No Contador Síncrono MOD 60, quando o valor em Q0..5 for 60 o contador deve ser resetado, o que ocorre se Q0..1=0, e Q2..5=1. Então, se Q2..5=1 => Q2. Q3. Q4. Q5=0 e CLR=0 em todos os FFs, e a contagem nas saídas Q0..5 é resetada no valor 60.
Contador Síncrono Decrescente MOD 16 No Contador Síncrono Decrescente MOD 16, deve ter as saídas ഥA, ഥB, തC, ഥD, conectadas as ANDs com as saídas destas em J e K dos FFs para a contagem acontecer de 15 a 0. A saída B comuta se: A=0 e CLK, ou se ഥA=1 em J e K e CLK ; A saída C comuta se: A=B=0 e CLK, ou ഥA. ഥB=1 em J e K e CLK ; A saída D comuta se: A=B=C=0, ou se: ഥA. ഥB. തC=1 em J e K e CLK
Contador Síncrono Crescente/Decrescente Neste caso um sinal UP/DOWN, comuta entre as composições de A, B, C, D, ou ഥA, ഥB, തC, ഥD, nas portas AND.
Contador Síncrono c/ Carga Paralela Assíncrona Neste caso um sinal Parallel Load - PL, promove a carga de P0..3 nas saídas dos FFs como mostrado abaixo.
Contadores Síncronos Crescentes Comerciais 74LS160/1/2/3 No 74160/2 o módulo é 10; No 74161/3 o módulo é 16; No 74160/1 o clear é assíncrono; Nos 74162/3 o clear é síncrono; A saída RCO indica o final da contagem, e ENT deve estar ativa para RCO indicá-la. Para a contagem ocorrer as entradas ENP e ENT devem estar ativas assim como LOAD.
Contador Síncrono Comercial 74LS163
Contador Síncrono Comercial 74LS160
Contador Síncrono Comercial 74LS190-191 No 74190 o modulo é 10; No 74191 o modulo é 16; Em ambos a carga é assíncrona através de LOAD; Para a contagem ocorrer de modo crescent D/ഥU deve ser setado, e resetado para contagem decrescente, e em ambos os casosa entrada LOAD deve estar desativada e a de habilitação de contagem CTEN ativada RCO indicará o final de contagem enquanto CLK estiver em 0. Max/Min indicará os valores de contagem máximo (9 ou 15) em contagem crescente e mínimo (0) em contagem decrescente.
Contador Síncrono Comercial 74LS190
Efeitos do Load Síncrono e Assíncrono O 74LS163 tem Load síncrono; O 74LS191 tem Load assíncrono; No 74LS163 a carga de 0001 quando LOAD=0 sendo síncrona ocorre somente com o Clk. No 74LS191 a carga de 0001 sendo assíncrona ocorre imediatamente e o estado 1100 se torna um estado temporário que ocorre por pequeno período de tempo.
Contador de Múltiplos Estágios ou em Cascata Quando se deseja estender o intervalo de contagem máximo pode-se conectar 2 ou mais contadores configurando assim um Contador de múltiplos estágios. No exemplo abaixo dois 74163 são associados tal que, seus sinais de load LD, CLR, e CLK são ligados juntos, mas a saída RCO de final de contagem habilita a contagem do sempre que o fim de contagem ocorre no primeiro Contador, contando de 0 a 255, ou MOD 256.
Geração de Sinais de Controle Quando se deseja gerar um sinal de controle a partir das saídas de um Contador pode-se usar um esquema como o baixo onde entre o valor 8 e 14 o pulso X é gerado.
Contador BCD Comercial 4029 e Decoder BCD
Contador BCD Comercial 74190 e Decoder BCD
Alterando a sequência de contagem do Contador Comercial 74HC190 e 74HC191 Contador binário 74LS191 em contagem decrescente com a carga do valor 1010 ao ocorrer o valor de contagem Mín=0000. Contagem portanto, de 1010 a 0000. Contador BCD 74LS190, contagem crescente com carga de 0000 após START=0; No valor Máx=FFFF ocorre o final da contagem, sendo necessário um novo comando de START=0.
Alterando a sequência de contagem do Contador Comercial 74HC161 e 74HC163 Contador binário crescente 74LS163 com o reinício de contagem no 0000 sempre o valor 1011 ocorre. Contagem: de 0000 a 1011, ou de módulo 12. Contador binário crescente 74LS161, com carga síncrona de 9=1001 ao ocorrer o valor 6=0110 e CLK ; ou carga do valor 0001 ao ocorrer o valor 14=1110; Contagem: de 0 a 6, de 9 a 14 e então para 1, e repetindo: módulo 14.
Registradores de Deslocamento 74HC164 Entrada Serial e Saída Paralela
Reg. de Desloc. 74HC595 Serial-in Tristate 8-Bit Parallel-out Reg. tipo latch na saída e clock separado (RCLK) do shift reg. de entrada (SRCLK); Possui clear p/ o shift reg. (SRCLR) e saída serial para cascateamento (QH ); Saídas podem ser levadas ao Tri-state através de sinal outout-enable (OE). OBS: 74HC594 = 74HC595 exceto pela ausência da saída tri-state.
Registradores de Deslocamento 74HC165 Entrada Paralela e Saída Serial