CIRCUITOS SECUENCIALES E.U.I.T. Informática de Gijón Lección 6 CIRCUITOS SECUENCIALES ELECTRÓNICA DIGITAL 1er curso I.T. Telemática E.U.I.T. Informática de Gijón
CIRCUITO SECUENCIAL: la salida depende en cada instante no sólo del valor de las entradas sino también de los estados anteriores del circuito CIRCUITO COMBINACIONAL MEMORIA ET QT-ΔT QT ST=f(ET,QT-ΔT) Variables de estado interno ESTADO: Conjunto de variables binarias, finito, que en cualquier momento contienen la información precisa acerca del “pasado”, necesarias para explicar el funcionamiento del circuito Unidad básica de memoria: biestables
Biestable RS asíncrono Q S (SET): pone a 1 R (RESET): pone a 0 Tabla de verdad para R y S activas por nivel alto 0: borrado prioritario 1: inscripción prioritaria
Biestable RS síncrono Circuito de sincronización por nivel: Si CLK=1 la entrada pasa Si CLK=0 la entrada no pasa Entradas asíncronas: Actuan instantaneamente PRESET(pone a 1) CLEAR (pone a 0) RS SS Q CLK S R Preset Clear Entradas síncronas: Actúan cuando lo permite la señal de reloj SET (pone a 1) RESET (pone a 0)
Otros circuitos de sincronización RS SS CLK S R sin RS SS CLK S R sin CLK sin CLK sin Pequeños pulsos de nivel alto coincidiendo con el flanco de subida de CLK Pequeños pulsos de nivel alto coincidiendo con el flanco de bajada de CLK CLK CLK
Biestable JK Biestable SÍNCRONO POR FLANCO Entradas asínronas Preset y Clear J: equivalente a SS K: equivalente a RS Resuelve la indeterminación ante dos entradas síncronas activas Pr J Q CLK K Q Clr
Biestable D La salida sigue a la entrada (la mantiene durante un pulso de reloj) Pr CLK D Q D Q CLK Q Clr K J Q CLK D A partir de un JK
Biestable T La salida cambia con los flancos activos de la señal de reloj LA ÚNICA ENTRADA ES LA SEÑAL DE RELOJ Pr Q CLK Clr CLK Q “1” J Q A partir de un JK CLK K Q
Biestable LATCH La salida sigue a la entrada mientras la señal de control esté activa: equivalente a un biestable D activo por nivel Ctrl E S E S Ctrl
Registros de desplazamiento (I) Permiten almacenar información de varios bits y tenerla accesible en serie y en paralelo Entrada paralelo Entrada serie Salida serie Salida paralelo
Registros de desplazamiento (II) ENTRADA PARALELO Control de carga paralelo D3 D2 D1 D0 Pr Clr Pr Clr Pr Clr Pr Clr Salida serie Entrada serie D Q D Q D Q D Q Q Q Q Q CLK Q3 Q2 Q1 Q0 SALIDA PARALELO
Contadores Cuentan el número de pulsos que han llegado por la señal de reloj T T T T Q Q Q Q CLK QA QB QC QD CUENTA ASCENDENTE Salidas Qi en biestables activos por flanco de bajada encadenados por la salida Q Salidas Qi en biestables activos por flanco de subida encadenados por la salida Q CUENTA DESCENDENTE Salidas Qi en biestables activos por flanco de bajada encadenados por la salida Q Salidas Qi en biestables activos por flanco de subida encadenados por la salida Q
Contador ascendente (I) Q Q Q Q CLK QA QB QC QD CLK QA QB QC QD
Contador descendente (I) Q Q Q Q CLK QA QB QC QD CLK QA QB QC QD
Contador ascendente (II) Q Q Q Q CLK QAN QBN QCN QDN CLK QA QB QC QD QAN QBN QCN QDN
Contador descendente (II) Q Q Q Q CLK QAN QBN QCN QDN CLK QA QB QC QD QAN QBN QCN QDN
Contador ascendente (III)
Contador descendente (III)
Aplicaciones de contadores Divisor de frecuencias fQi=fCLK/2i (frecuencia de la salida Qi) Si quiero dividir la frecuencia por una cantidad que no sea potencia de 2, reseteo el contador tras un cierto número de pulsos: reseteo tras n pulsos para dividir por n la frecuencia Temporizador: tQi=TCLK∙2i (tiempo que tarda Qi en ponerse a 1) Para temporizar un tiempo que no sea potencia de 2, se detectará con un circuito lógico la combinación necesaria
Contador BCD ascendente (I) CLK QA QB QC QD CLK QA QB QC QD RESET RESET ¡¡¡MAL!!!
Contador BCD ascendente (II) CLK QA QB QC QD CLK QA QB QC QD RESET RESET OK
Contador BCD ascendente (III) CLK QA QB QC QD RESET CLK QA QB QC QD RESET ¡¡¡MAL!!!
Contador BCD ascendente (IV) CLK QA QB QC QD RESET CLK QA QB QC QD RESET OK
Contador de Johnson nº estados diferentes = 2 x nº de biestables Inicialización: 0000 CLK QA QB QC QD nº estados diferentes = 2 x nº de biestables
Contador de anillo Estados diferentes = nº de biestables INI CLK QA QB QC QD INI Inicialización: 0001 Estados diferentes = nº de biestables
Contador binario modificado La salida de un biestable cambia si en el instante en el que llega el flanco activo de la señal de reloj las salidas anteriores son “1” Contador de n bits: n-2 puertas AND CLK QA QB QC QD
Método general de diseño de contadores síncronos Idea general: ¿Qué tenemos que poner en las entradas J y K de un biestable para que tenga una transición determinada? Tabla de verdad Tabla de transiciones
Contador síncrono de 4 bits CLK K J Q CIRCUITO COMBINACIONAL Q0T+ΔT Q1T+ΔT Q2T+ΔT Q3T+ΔT Q0T Q1T Q2T Q3T
Ejemplo: contador BCD síncrono (I) Instante T Instante T+ΔT Entradas Funciones: J0(Q0T, Q1T, Q2T, Q3T) K0(Q0T, Q1T, Q2T, Q3T) J1(Q0T, Q1T, Q2T, Q3T) K1(Q0T, Q1T, Q2T, Q3T) J2(Q0T, Q1T, Q2T, Q3T) K2(Q0T, Q1T, Q2T, Q3T) J3(Q0T, Q1T, Q2T, Q3T) K3(Q0T, Q1T, Q2T, Q3T)
Ejemplo: contador BCD síncrono (II)
Ejemplo: contador BCD síncrono (III) CLK QA QB QC QD
Contadores síncronos con biestables D Idea general: En el instante T tengo que tener en la entrada del biestable lo que quiera que aparezca en la salida después de la llegada del flanco activo de la señal de reloj (instante T+ΔT) CLK D Q CIRCUITO COMBINACIONAL Q0T+ΔT Q1T+ΔT Q2T+ΔT Q3T+ΔT Q0T Q1T Q2T Q3T
Ejemplo: contador BCD síncrono (IV) Funciones: DT = Q0T+ΔT = f(Q0T, Q1T, Q2T, Q3T) DT = Q1T+ΔT = f(Q0T, Q1T, Q2T, Q3T) DT = Q2T+ΔT = f(Q0T, Q1T, Q2T, Q3T) DT = Q3T+ΔT = f(Q0T, Q1T, Q2T, Q3T)
Ejemplo: contador BCD síncrono (V) Q3T+ΔT Q2T+ΔT Q1T+ΔT Q0T+ΔT Con biestables D tenemos que diseñar menos funciones, pero éstas son más complejas
Contador síncrono ascendente/descendente: 74192 (BCD) y 74193 (binario)
Contador síncrono ascendente/descendente binario/BCD: 4029 De características similares pero exclusivamente BCD o binario, el 74190 (BCD) o el 74191 (binario)