Tema 5: Circuitos Secuenciales
Circuitos Secuenciales ATTACH
En los sistemas combinacionales las salidas dependen de las entradas:
Mientras que en los sistemas secuenciales las salidas dependen de las entradas y de los valores anteriores de esas salidas:
Circuito Biestable ATTACH
Es un bloque componente fundamental de otros elementos del estado. Tiene unicamente dos salidas: \(Q, \overline{Q}\). No tiene entradas:
Estos circuitos consideran los dos casos posibles:
-
\(\textbf{Q = 0}\): Entonces \(Q = 0, \overline{Q} = 1\) (consistente).
-
\(\textbf{Q = 1}:\) Entonces \(Q = 1, \overline{Q} = 0\) (consistente).
Este almacena 1 bit de estado en la variable, \(Q\) o \(\overline{Q}\), pero no hay entradas que controlen el estado.
Cerrojo SR (Set/Reset) ATTACH
Considera los cuatro casos posibles:
- \(\textbf{S = 1, R = 0}\)
- \(\textbf{S = 0, R = 1}\)
- \(\textbf{S = 0, R = 0}\)
- \(\textbf{S = 1, R = 1}\)
\(Y = \overline{A + B}\)
| A | B | Y |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 0 |
-
\(\textbf{S = 1, R=0}\): Entonces \(Q = 1\), y \(\overline{Q} = 0\). Set: pone la salida a 1:
-
\(\textbf{S = 0, R = 1}\): Entonces \(Q = 0\) y \(\overline{Q} = 1\). Reset: Pone la salida a 0:
-
\(\textbf{S = 0, R = 0}\): Entonces \(Q = Q_{prev}\):
-
\(\textbf{S = 1, R = 1}\): Entonces \(Q = 0, \overline{Q} = 0\). Estado invalido. \(Q \ne \overline{Q}\):
Tablas de estados: Salidas que se producen para cualquier combinacion entrada (tabla verdad):
| S | R | Q^t | Q’t | |
|---|---|---|---|---|
| 0 | 0 | Q | Q’ | Estado anterior |
| 0 | 1 | 0 | 1 | Puesta a 0 |
| 1 | 0 | 1 | 0 | Puesta a 1 |
| 1 | 1 | - | - | No se usa |
Tabla de excitacion: Entradas que hay que proporcionar para obtener un cambio de estado:
| Q^t | Qt + 1 | S | R |
|---|---|---|---|
| 0 | 0 | 0 | × |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 |
| 1 | 1 | × | 0 |
Cerrojo D Sincrono ATTACH
Tiene dos entradas: CLK, D.
- CLK: Controla cuando varia la salida.
- D (entrada de datos): controla que valor poner a la salida.
Funcionamiento:
- Cuando CLK = 1:
- D pasa su valor a Q (transparente)
- Cuando CLK = 0:
- Q mantiene su valor previo (opaco)
Este evita el caso invalido en el que \(Q \ne \overline{Q}\).
| CLK | D | D_ | S | R | Q | Q_ |
|---|---|---|---|---|---|---|
| 0 | X | X | 0 | 0 | Q | \(\overline{Q}\) |
| 1 | 0 | 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 0 | 1 | 0 | 1 | 0 |
Tabla de estados:
| D | Q^* | Q’* | |
|---|---|---|---|
| 0 | 0 | 1 | Puesta a 0 |
| 1 | 1 | 0 | Puesta 1 |
Tabla de excitacion:
| Q | Q^* | D | |
|---|---|---|---|
| 0 | 0 | 0 | |
| 0 | 1 | 1 | Puesta a 0 |
| 1 | 0 | 0 | Puesta 1 |
| 1 | 1 | 1 |
Flip-Flop D (Disparado por Flanco) ATTACH
Entradas: CLK, D
Funcion:
- Muestresa D en el flanco de subida de CLK.
- Cuando CLK pasa de 0 a 1, D pasa a Q
- En otro caso, Q mantiene el valor previo
- Q cambia solo en los flancos de subida de CLK.
Se llama disparado por flanco. Se activa en el flanco del reloj.
Flip-Flop D (Circuito Interno) ATTACH
Son dos cerrojos D dispuestos en serie (L1 y L2) controlados por relojes complementarios.
- Cuando CLK = 0
- L1 es transparente (\(Q1 = D1 = D\))
- L2 es opaco (\(Q2 = Q2_{prev}\))
- D pasa a N1 (\(D2 = D\))
- Cuando CLK = 1
- L2 es transparente (\(Q2 = D2 = D\))
- L1 es opaco (\(Q1 = Q1_{prev} = D\))
- N1 pasa a Q (\(Q = Q2 = D\))
- Asi, en el flanco de clock (cuando CLK pasa de \(0 \rightarrow 1\))
- D pasa a Q
Otros Flip Flops
Flip-Flop JK ATTACH
Es similar a SR: \(J \sim S, K \sim R\). Es una funcion de cambio de estado (toggle) para \(J=K=1\) (\(Q = \overline{Q}_{prev}, \overline{Q} = Q_{prev}\)).
Flip-Flop T ATTACH
Una unica entrada que permite complementar el estado:
\(Q = \overline{Q}_{prev}, \overline{Q} = Q_{prev}\)
Contadores ATTACH
Los contadores son unos circuitos especificos que realizan una cuenta o secuencia fija de salida, pasando de un elemento a otro de la cuenta en cada ciclo de reloj. Cuando la secuencia llega a su final, el circuito vuelve a su valor inicial en el siguiente ciclo de reloj.
Los contadores se dividen en:
- Sincronos.
- Asincronos.
Por ejemplo, para realizar un contador asincrono binario de 2 bits se utilizan dos biestables J-K. La senal del reloj debe aplicarse en el primer biestable y la salida de este debe ser la entrada del segundo biestable.
Registros de Desplazamiento
Los registros de desplazamiento, al igual que los contadores, son circuitos secuenciales de aplicacion general. Estan construidos por una serie de biestables conectados en cascada. Los registros son capaces de almacenar una palabra binaria formada por tantos bits como biestables contenga. Ademas de almacenar informacion, los registros tambien tienen capacidad para transmitir o recibir datos en serie.
Un registro es un elemento logico que carga y almacena datos.
Con las operaciones de desplazamiento se pueden realizar operaciones aritmeticas: multiplicar por 2^N es desplazar una posicion a la izquierda (anadiendo 0 al bit menos significativo), dividir de forma entera por 2^N es desplazar N posiciones a la derecha. Tambien se puede desarollar contadores divide por N o por 2^N en registros de N bits.