Circuitos Combinacionales vs. Secuenciales

¿Qué cambia fundamentalmente cuando aparece la memoria?

Circuito Secuencial

La salida depende de las entradas actuales y del estado interno previo, almacenado en flip-flops que retroalimentan la entrada.

Además aparece una señal de reloj (CLK) que regula el momento en que el circuito puede cambiar de estado.

Salida = f(Entradas, Qactual)

Ejemplos: Contadores, Registros, Máquinas de estado

Analogía: Un semáforo combinacional cambia al instante con el botón. Uno secuencial recuerda en qué fase está (verde → amarillo → rojo) y avanza con cada pulso de reloj.

La señal de reloj (CLK)

Es una onda cuadrada periódica. Los flip-flops sensibles al flanco ascendente ↑ capturan las entradas exactamente en el momento en que CLK pasa de 0 a 1. Entre flancos, Q no cambia.

Diagrama de tiempo CLK con flancos ascendentes
Para recordar: El flanco ↑ es el "instante de decisión". Antes y después, el FF es sordo a sus entradas.
EJERCICIO 1.A

Clasifica cada sistema como combinacional o secuencial y justifica:

  1. Una calculadora que suma dos números de 4 bits.
  2. Un contador de visitas en una tienda.
  3. Un comparador de magnitudes.
  4. Un semáforo con temporizador automático.

Los Cuatro Flip-Flops

SR · D · JK · T — símbolo, tabla de verdad y regla clave

Flip-Flop D — Data / Delay

Símbolo FF-D

Tiene una sola entrada D. Al llegar el flanco ↑ del reloj, copia el valor de D en la salida Q. Elimina la condición prohibida del SR.

D = Q(t+1)
El más usado en la práctica: registros de desplazamiento, captura de datos, memorias RAM.
DQ(t+1)Operación
00Reset
11Set

Diagrama de tiempo

Timing FF-D

Flip-Flop JK

Símbolo FF-JK

Versión mejorada del SR: cuando J=K=1 la salida conmuta (Toggle) en lugar de quedar indeterminada. Sin condición prohibida. El más versátil.

El FF-JK puede implementar a SR, D y T. Es el de mayor capacidad funcional.
JKQ(t+1)Operación
00Q(t)Sin cambio
010Reset
101Set
11Q'(t)Toggle — Complemento

Flip-Flop T — Toggle

Símbolo FF-T

Derivado del JK con J=K=T. Cuando T=1 la salida conmuta en cada flanco. Cuando T=0 se mantiene. Base de los contadores binarios.

T = 0 → mantener  |  T = 1 → conmutar
TQ(t+1)Operación
0Q(t)Sin cambio
1Q'(t)Toggle

Waveform — Contador módulo-4

Timing contador módulo-4
EJERCICIO 2.A — Diagrama de tiempo JK

Completa Q(t+1) para el FF-JK con Q inicial = 0. Flancos en t = 1, 2, 3, 4, 5 ns.

t (ns)JKQ(t+1)
100___
210___
311___
401___
511___

Simulación 1 — FF-D en Logisim

Observa el efecto del CLK en tiempo real

Observa: cuando D cambia entre flancos de reloj, Q NO cambia. Solo se actualiza en el siguiente flanco ↑. Esta es la esencia del comportamiento secuencial síncrono.
[ Insertar captura: osciloscopio Logisim con CLK, D y Q — al menos 4 flancos ascendentes ]
EJERCICIO 3.A

Con tu simulación del FF-D: (a) Registra 6 transiciones consecutivas de reloj variando D libremente. (b) ¿Qué ocurre si conectas Q' de vuelta a D? Describe el comportamiento y pega la captura del osciloscopio.

Tablas de Excitación

La pregunta inversa — de estado deseado a entradas

La tabla de excitación es la herramienta fundamental para el diseño secuencial: parte del comportamiento deseado y determina las ecuaciones de entrada.

FF-SR — Tabla de Excitación

Q(t)Q(t+1)SRInterpretación
000XMantener en 0: R puede ser cualquier valor
0110Pasar a 1: aplicar Set
1001Pasar a 0: aplicar Reset
11X0Mantener en 1: S puede ser cualquier valor

FF-D — Tabla de Excitación

Regla simple: D = Q(t+1). La entrada debe ser exactamente el estado al que se quiere llegar.
Q(t)Q(t+1)D
000
011
100
111

FF-JK — Tabla de Excitación

Q(t)Q(t+1)JK
000X
011X
10X1
11X0

FF-T — Tabla de Excitación

Regla simple: T = Q(t) ⊕ Q(t+1). Si el estado cambia → T=1. Si se mantiene → T=0.
Q(t)Q(t+1)TInterpretación
000Sin cambio: no conmutar
011Conmutar de 0 a 1
101Conmutar de 1 a 0
110Sin cambio: no conmutar
EJERCICIO 4.A

Usando las tablas de excitación, determina los valores de S y R para lograr la secuencia: 0 → 1 → 1 → 0 → 1. Luego responde: ¿por qué el FF-D es más fácil de excitar que el FF-SR?

EJERCICIO 4.B

Para el FF-JK, determina los valores de J y K que producen la secuencia: 0 → 1 → 0 → 0 → 1 → 1. Completa la tabla de excitación correspondiente.

El Puente Crítico

De la especificación al circuito — paso a paso

01 Especificación Definir la secuencia deseada
02 Tabla de Estados Q(t) → Q(t+1)
03 Tabla de Excitación ¿Qué entradas producen cada transición?
04 Ecuaciones Simplificar con Karnaugh o inspección
05 Circuito Compuertas + FF implementados
La dificultad más común es el paso 2→3: pasar de la tabla de estados a la tabla de excitación. El ejemplo guiado a continuación lo resuelve completamente.
EJERCICIO 5.A

Diseña un contador módulo-3 (00 → 01 → 10 → 00) con FF-D. Sigue los pasos: (1) tabla de estados, (2) excitación (D = Q⁺), (3) ecuaciones de D1 y D0, (4) dibuja el circuito.

EJERCICIO 5.B

¿Cuál es la diferencia entre tabla de verdad y tabla de excitación? ¿Por qué necesitamos la segunda para diseñar contadores?

Simulación 2 — Contador Módulo-4 en Logisim

Verificar el diseño derivado en el Bloque 5

Waveform esperado

Timing contador módulo-4
[ Insertar captura: circuito contador módulo-4 en Logisim ]
[ Insertar captura: osciloscopio Logisim — CLK, Q0, Q1 ]
EJERCICIO 6.A

Modifica el contador para que cuente en orden DESCENDENTE: 11 → 10 → 01 → 00 → 11 … ¿Qué cambio debes hacer en las conexiones? Muestra la tabla de estados y pega la captura de Logisim.

EJERCICIO 6.B — RETO

Diseña e implementa en Logisim un contador de secuencia arbitraria: 0 → 2 → 5 → 6 → 0. Usa FF-D. Muestra tabla de estados, ecuaciones de D y circuito final.