Вы находитесь на странице: 1из 155

MAESTRO: HERIBERTO VARGAS RADILLO

INDICE

MULTIVIBRADORES .......................................................5
CARACTERÍSTICAS DE LOS MULTIVIBRADORES SÍNCRONOS: .................................................. 7
MULTIVIBRADOR tipo S-R...............................................................................8
S-R ASÍNCRONO CON COMPUERTAS NOR. .............................................................................. 8
S-R SÍNCRONO...................................................................................................................... 10
MULTIVIBRADOR tipo J-K.............................................................................13
MULTIVIBRADOR TIPO D .............................................................................15
COMPORTAMIENTO DEL MULTIVIBRADOR TIPO D:............................................................... 16
MULTIVIBRADOR DISPARADO POR FLANCO ......................................................................... 16
MULTIVIBRADOR TIPO T .............................................................................19
MULTIVIBRADOR MAESTRO / ESCLAVO .................................................21
PREINICIO Y BORRADO. ........................................................................................................ 22
SINCRONIZACIÓN DE MULTIVIBRADORES.............................................................................. 22
CONVERSIÓN ENTRE MULTIVIBRADORES .............................................23
J-K A PARTIR DEL MULTIVIBRADOR TIPO D.......................................................................... 23
J-K A PARTIR DEL MULTIVIBRADOR TIPO T.......................................................................... 25
D A PARTIR DEL MULTIVIBRADOR TIPO J-K.......................................................................... 27
EJERCICIOS........................................................................................................................... 28
CIRCUITOS BÁSICOS CON MVB................................................................................... 29
CONTADORES ................................................................................................................. 29
CONTADOR BINARIO ASCENDENTE DE n-BITS........................................................... 29
EJEMPLO 1:..................................................................................................................... 29
CONTADOR BINARIO DESCENDENTE DE n-BITS ........................................................ 30
EJEMPLO 2:..................................................................................................................... 30
EJEMPLO 3:..................................................................................................................... 31
CONTADORES SÍNCRONOS ..........................................................................33
ALGORITMO PARA EL DISEÑO DE CONTADORES SÍNCRONOS ................................................. 33
EJEMPLO 4:..................................................................................................................... 33
EJEMPLO 5:..................................................................................................................... 36
EJEMPLO 6:..................................................................................................................... 37
EJEMPLO 7:..................................................................................................................... 40
EJEMPLO 8:..................................................................................................................... 42
EJEMPLO 9:..................................................................................................................... 44
EJERCICIOS ...................................................................................................................... 47
REGISTROS DE CORRIMIENTO, S-R ...................................................................................... 48
Registro de corrimiento ES-SS........................................................................................... 49
Registro de corrimiento ES-SP .......................................................................................... 50
Registro de corrimiento EP-SS .......................................................................................... 50
Registro de corrimiento EP-SP .......................................................................................... 51
EJEMPLO 1:..................................................................................................................... 51
EJEMPLO 2:..................................................................................................................... 52
EJEMPLO 3:..................................................................................................................... 52
EJEMPLO 4:..................................................................................................................... 53
EJEMPLO 5:..................................................................................................................... 53
EJERCICIOS ...................................................................................................................... 54

CIRCUITOS SECUENCIALES
SÍNCRONOS ...................................................................................55
Ejemplo de análisis: .......................................................................................................... 57
Ejemplo 1 de Diseño.......................................................................................................... 60
Ejemplo 2 de Diseño.......................................................................................................... 68
EJERCICIOS. ....................................................................................................................... 73
REDUCCIÓN DE TABLAS DE ESTADO........................................................74
MÉTODO DE REDUCCIÓN POR PARTICIONES.......................................................................... 75
EJEMPLO. ........................................................................................................................ 75
EJEMPLO 1. ..................................................................................................................... 77
EJEMPLO 2. ..................................................................................................................... 78
EJEMPLO 3. ..................................................................................................................... 80
EJEMPLO 4. ..................................................................................................................... 81
EJEMPLO 5. ..................................................................................................................... 82
MÉTODO DE REDUCCIÓN POR TABLAS DE IMPLICACIÓN ....................................................... 85
EJEMPLO 1. ..................................................................................................................... 85
EJEMPLO 2. ..................................................................................................................... 86
EJEMPLO 3. ..................................................................................................................... 87
EJEMPLO 4. ..................................................................................................................... 88
EJEMPLO 5. ..................................................................................................................... 90
EJEMPLO:........................................................................................................................ 92
EJERCICIOS........................................................................................................................... 95
ASIGNACIÓN DE ESTADOS ..................................................................................................... 96
CRITERIOS PARA LA ASIGNACIÓN DE ESTADOS: .................................................................... 97
Ejemplo:............................................................................................................................ 97

CIRCUITOS SECUENCIALES
ASÍNCRONOS............................................................................104
MODALIDAD DE PULSO...............................................................................105
Ejemplo de análisis: ........................................................................................................ 108
EJEMPLO2 ..................................................................................................................... 111
SÍNTESIS DE CIRCUITOS SECUENCIALES DE MODO POR PULSOS.113
EJEMPLO 1 .................................................................................................................... 113
EJEMPLO 2 .................................................................................................................... 117
EJEMPLO 3 .................................................................................................................... 120
EJEMPLO 4 .................................................................................................................... 121
MODO FUNDAMENTAL................................................................................126
ANÁLISIS DE CIRCUITOS SECUENCIALES DE MODO FUNDAMENTAL.................................... 128
EJEMPLO de análisis...................................................................................................... 130
SÍNTESIS DE CIRCUITOS SECUENCIALES DE MODO FUNDAMENTAL
............................................................................................................................131
EJEMPLO 1 .................................................................................................................... 136
EJEMPLO 2 .................................................................................................................... 139
EJEMPLO 3 .................................................................................................................... 144
EJEMPLO 4 .................................................................................................................... 148
EJERCICIOS .................................................................................................................... 152
MULTIVIBRADORES
En los circuitos lógicos combinatorios los niveles de salida, en cualquier instante,
dependen de los valores de las entradas en ese momento. Cualquier condición anterior
al nivel de entrada no afecta a las salidas, porque los circuitos combinatorios no
tienen memoria.
La figura siguiente, ilustra un diagrama a bloques de un circuito secuencial digital
que conjuga compuertas lógicas combinatorias con dispositivos de memoria. La porción

combinatoria acepta señales lógicas de entrada externas y de las salidas de los


elementos de memoria. El circuito combinatorio opera sobre esas señales a fin de
producir diversas salidas, algunas de las cuales se utilizan para determinar los valores
binarios que se almacenarán en los elementos de memoria. Las salidas de algunos
elementos de memoria, a su vez, se dirigen hacia las entradas de las compuertas
lógicas en los circuitos combinatorios. Este proceso indica que las salidas externas de
un sistema digital son una función de sus entradas externas y de la información
almacenas en los elementos de memoria.
De la figura se tienen las siguientes definiciones:

ESTADOS PRESENTES: Son los valores que toman las variables secundarias (y1,
y2, ..., ym) debidos a los estados siguientes y a las transiciones.
ESTADOS SIGUIENTES: Son los valores que toman las variables de excitación (Y1,
Y2, ..., Ym) debido a los estados presentes.
La siguiente tabla muestra la relación entre los estados presentes y los estados
siguientes:

ESTADOS ESTADOS
PRESENTES SIGUIENTES
y Y
Q Q*
qv qv+1
qt qt+1

Los sistemas digitales pueden operar en forma


síncrona o asíncrona. En los sistemas asíncronos
las salidas de los circuitos lógicos pueden cambiar de
estado en el momento en que una o más de las
entradas cambien. En los sistemas síncronos los
tiempos exactos en que una salida puede cambiar de
estado se determinan por medio de una señal que
comúnmente se le denomina señal de reloj. Esta
señal es una serie de pulsos rectangulares o
cuadrados y se distribuye a todas las partes del
sistema y algunas de sus salidas cambian de estado sólo cuando la señal de reloj hace
una transición. Cuando la señal de reloj cambia de 0 a 1, se le denomina Transición de
Pendiente Positiva (TPP), cuando pasa de 1 a 0 se le conoce como Transición de
Pendiente Negativa (TPN).

La Figura 2, muestra el símbolo general empleado para un multivibrador (MVB). El


símbolo indica que el MVB tiene dos salidas Q y Q' inversas entre sí. Q recibe el nombre
de salida normal del MVB, mientras que Q' es la salida negada o invertida. Siempre que
se haga referencia al estado del MVB, éste será el de su estado normal y se entiende
que Q' se encontrará en estado opuesto.
Características de los multivibradores síncronos:
1. Los MVB síncronos tienen una entrada de reloj designada CLK (Clock-reloj). Esta
entrada se dispara por flanco, lo que significa que es activada por una transición de
señal; esto se especifica por la presencia de un triángulo en la entrada del reloj.
Posteriormente, se explican detalladamente los MVB disparados por flanco.
2. Los MVB síncronos también poseen una o más entradas de control que pueden
tener varios nombres, lo que depende de su operación; su efecto está sincronizado con
la señal aplicada en la entrada CLK. Por esta razón se les llama entradas
sincronizadas de reloj.
3. Las entradas de control hacen que la salidas del MVB estén listas para cambiar,
mientras que la transición activa en la entrada CLK es la que dispara un cambio.
MULTIVIBRADOR tipo S-R
(SET-RESET)

S-R asíncrono con compuertas NOR.

El multivibrador biestable S-R, basado en compuertas NOR, tiene dos entradas S y


R y dos salidas Q y Q', donde Q' es el complemento de Q. Con el circuito, figura
adjunta, y la tabla de verdad se facilita la explicación de su funcionamiento.

La tabla de excitación se utiliza para el proceso de síntesis o diseño y la x significa


que es un término indiferente, es decir, puede tomar el valor de 1 o 0; la ecuación de
estados se utiliza para realizar el proceso de análisis.

Como recordatorio, se presenta la tabla funcional de la compuerta NOR.


A B OR NOR
0 0 0 1
0 1 1 0
1 0 1 0
1 1 1 0

En base al circuito de la figura anterior y la tabla funcional de la compuerta NOR, se


obtiene la tabla funcional del multivibrador:
S R Q Q'
1 0 1 0
Después de S = 1 y R = 0
0 0 1 0
0 1 0 1
Después de S = 0 y R = 1
0 0 0 1
1 1 x x estados prohibidos
A continuación se presenta la tabla de estados, en donde Q* es el estado siguiente:
TABLA DE ESTADOS
S R Q Q* FUNCIÓN
0 0 0 0
Memoria
0 0 1 1
0 1 0 0
RESET
0 1 1 0
1 0 0 1
SET
1 0 1 1
1 1 0 X CONDICIÓN
1 1 1 X PROHIBIDA

De la tabla de estados, se observa que cuando S = R = 0, Q* = Q; cuando S = 0 y R =


1, Q* = 0; cuando S = 1 y R = 0, Q* = 1 y cuando S = R = 1, Q* = x, o sea se presentan
los estados prohibidos. La siguiente tabla, llamada característica, resume las
observaciones anteriores:
TABLA
CARACTERISTICA
S R Q*
0 0 Q
0 1 0
1 0 1
1 1 X

De la misma tabla de estados, se observa que cuando Q = Q* = 0, S = 0 y R puede ser


0 o 1, o sea indiferente; cuando Q = 0 y Q* = 1, S = 1 y R = 0; cuando Q = 1 y Q* = 0, S
= 0 y R = 1 y cuando Q = Q* = 1, S es indiferente, y R = 0. La tabla de excitación
muestra estas observaciones:
Q Q* S R
0 0 0 X
0 1 1 0
1 0 0 1
1 1 X 0

Nuevamente, de la tabla de estados se determina la función canónica para Q*:


Q* (S,R,Q) = Σ mintérminos (1,4,5) + Σ indiferentes (6,7)
Se simplifica por mapas de Karnaugh, como se muestra en la figura adjunta, y se
obtiene la ecuación de estados, dada por:
Q* = S + R’Q Finalmente, el diagrama a bloques del
MVB es:

S-R Síncrono.

A continuación se presentan las


tablas y diagramas correspondientes a
este tipo de multivibrador, cuyo
diagrama lógico se presenta en la figura.

TABLA DE ESTADOS
S R Q Q* FUNCIÓN
0 0 0 0
Memoria
0 0 1 1
0 1 0 0
RESET
0 1 1 0
1 0 0 1
SET
1 0 1 1
1 1 0 X CONDICIÓN
1 1 1 X PROHIBIDA

De la tabla de estados, se observa que cuando S = 0, R = 0, Q* se comporta como


memoria; cuando S = 0, R = 1, Q* se pone a ceros; cuando S = 1, R = 0, Q* se pone a
unos; finalmente, cuando S = R = 1 presentan los estados prohibidos.
La tabla característica se obtiene a partir de la tabla de estados, en esta tabla se
incluye la señal de reloj (CLK), las entradas S y R y el estado siguiente Q*.
TABLA CARACTERÍSTICA
CLK S R Q*
0 X X Q
1 0 0 Q
1 0 1 0
1 1 0 1
1 1 1 X

La tabla de excitación se obtiene a partir de la tabla de estados:

Q Q+ S R
0 0 0 x
0 1 1 0
1 0 0 1
1 1 x 0

Para determinar la ecuación de estados, se debe tener una tabla ampliada de la tabla
de estados, cuyas entradas sean CLK, S, R, Q y tenga como salida el estado siguiente
Q+. Los valores funcionales de Q+ se obtienen de la tabla característica:

CLK S R Q Q*
0 0 0 0 0
0 0 0 1 1
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 0
1 0 1 1 0
1 1 0 0 1
1 1 0 1 1
1 1 1 0 X
1 1 1 1 X

Obsérvese que cuando CLK = 0, Q* = Q, por tanto Q* = 1 para las combinaciones 1, 3,


5 y 7; para CLK = 1, combinaciones 8-15, se tiene que para cuando S = R = 0, Q* = Q,
lo que ocurre para las combinaciones de entrada 8 y 9, siendo Q* = 1 para la
combinación de entrada 9; finalmente, cuando S = 1 y R = 0, Q* = 1, cumpliéndose para
las combinaciones 12 y 13.
La figura siguiente, muestra la función de conmutación de Q*, el mapa de Karnaugh
para reducir dicha función y la función reducida para Q*, que es la función de estados.
Cronograma del multivibrador S-R síncrono con TPP
MULTIVIBRADOR tipo J-K
El multivibrador J-K es similar al S-R, en donde J corresponde
a S y K a R, pero existe una diferencia principal; si J = K = 1
no genera una salida ambigua y si CLK = 1, el valor del
estado siguiente es el complemento del estado presente. Esto
indica que no existen los estados prohibidos.
La figura adjunta muestra el diagrama a bloques del
multivibrador J-K:
La tabla de estados del MVB J-K se presenta a
continuación:
TABLA DE ESTADOS
J K Q Q* FUNCIÓN
0 0 0 0
Memoria
0 0 1 1
0 1 0 0
RESET
0 1 1 0
1 0 0 1
SET
1 0 1 1
1 1 0 1 COMPLEMENTO
1 1 1 0 DE Q

De la tabla de estados se observan cuatro situaciones: Cuando J = K = 0, Q* = Q (actúa


como memoria); cuando J = 0, K = 1, Q* = 0, es decir RESET; cuando J = 1, K = 0, Q*
= 1 (SET), finalmente cuando J = K = 1, Q* = Q', o sea se obtiene el complemento de Q.
Las observaciones anteriores, se resumen en la tabla característica, la cual relaciona
las variables de entrada con el estado siguiente:

TABLA CARACTERÍSTICA
J K Q* FUNCIÓN
0 0 Q MEMORIA
0 1 0 RESET
1 0 1 SET
1 1 Q’ COMPLEMETO
Finamente, de las tablas de estado y característica, se obtiene la tabla de excitación
que relaciona los estados presente (Q) y siguiente (Q*) con las entradas que los
producen (J y K):
TABLA DE EXCITACIÓN
Q Q* J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 x 0

La figura anterior, muestra la función


canónica para Q*, que se obtiene de la
tabla de estados, el mapa de Karnaugh
para minimizarla y la función reducida,
que corresponde a la ecuación de
estados.
La figura adjunta, muestra el del
cronograma MVB J-K sincronizado por
reloj con TPP:
MULTIVIBRADOR TIPO D
A diferencia de los multivibradores tipos S-R y J-K, el MVB
tipo D (date-dato), figura adjunta, sólo tiene una entrada
síncrona de control, D, letra que proviene de dato. Su
operación es de retardo y muy sencilla. Q va desde el
mismo estado en que se encuentra la entrada D cuando
CLK = 1; esto es, el nivel presente D será almacenado en
el multivibrador en el momento en que se presente una
transición de pendiente positiva (TPP).
La siguiente tabla corresponde a la tabla de estados:

TABLA DE
ESTADOS
D Q Q*
0 0 0
0 1 0
1 0 1
1 1 1

Obsérvese que en todos los casos Q* = D, siendo la ecuación de estados. La ecuación


característica relaciona la variable de entrada D con el estado siguiente Q+:
TABLA
CARACTERÍSTICA
D Q*
0 0
1 1
La tabla de excitación, relaciona a los estados presente y siguiente, Q y Q+, con la
variable, D, que los produce:
TABLA DE
EXCITACIÓN
Q Q* D
0 0 0
0 1 1
1 0 0
1 1 1
La siguiente figura, presenta la carta de tiempo del multivibrador tipo D
sincronizado por reloj con TPP
Comportamiento del multivibrador tipo D:
Q va hacia el mismo estado en que se encuentra D, cuando ocurre una TPP en CLK.
Esto es, el nivel presente en D será almacenado en el MVB en el momento que se
presente una TPP

Multivibrador Disparado por Flanco


Un tipo más común de multivibrador, para sincronizar el cambio de estado durante una
transición de pulso de reloj, es el multivibrador disparado por flanco, en el cual las
transiciones de salida ocurren en un nivel específico del pulso de reloj. Cuando el nivel
de entrada excede este umbral, se cierran las entradas y el multivibrador se hace
inactivo a cambios posteriores en las entradas hasta que el pulso de reloj regresa a
cero y ocurre otro pulso.
Las figuras siguientes, corresponden al diagrama a bloques de un multivibrador tipo
D disparado por flanco positivo y el cronograma. El valor de entrada D se transfiere a la
salida Q cuando CLK tiene una transición de pendiente positiva (TPP).
La transición de reloj positiva efectiva incluye un tiempo mínimo llamado tiempo de
establecimiento, en el cual la entrada D debe permanecer en un valor constante antes
de la transición y un tiempo definido llamado tiempo de retención, donde la entrada D
no debe cambiar después de la transición positiva. La transición de reloj positiva
efectiva es por lo general una fracción muy pequeña del período total del pulso de reloj.

Las figuras siguientes corresponden a un multivibrador tipo D disparado por flanco


negativo, en el cual el símbolo gráfico incluye un círculo de negación enfrente de CLK,
indicando que fue disparado por flanco negativo. En este caso el multivibrador
corresponde a la transición de la señal de reloj de nivel 1 al nivel 0.

Otra forma de presentar los diagramas a bloques es:


MULTIVIBRADOR TIPO T
En el multivibrador tipo T (Toggle, variar o cambiar de
estado)., su diagrama a bloques se muestra en la figura
adjunta, la señal de reloj es la única existente, cuando
pulsa la entrada T el biestable cambia de estado. En otras
palabras, el nombre del MVB se deriva de la habilidad de
variar o cambiar de estado. Independientemente del
estado presente del multivibrador, éste asume el estado
de complemento cuando ocurre el pulso de reloj, siempre
y cuando el estado lógico de T esté a nivel alto.

La tabla de estados correspondiente a este MVB se presenta a continuación:

TABLA DE
ESTADOS
T Q Q*
0 0 0
0 1 1
1 0 1
1 1 0

De la tabla, se observa claramente que cuando T = 0, Q* = Q y cuando T = 1, Q* = Q'.


A partir de esta tabla, se obtiene la tabla característica, cuya variable de entrada es T y
la de salida el estado siguiente Q*:

TABLA
CARACTERÍSTICA
D Q+
0 Q
1 Q’

Finalmente, la tabla de excitación presenta como entradas a las variables de estado


presente y siguiente, Q y Q*, y como salida a la variable T que las produce:

TABLA DE
EXCITACIÓN
Q Q* T
0 0 0
0 1 1
1 0 1
1 1 0
La ecuación de estados, Q*(T, Q), se deduce de la tabla de estados, en la cual se
observa que dicha función es igual a la XOR de T y Q; es decir:
Q*(T, Q) = T XOR Q

A continuación se presenta la carta de tiempo del multivibrador tipo T sincronizado


por reloj con TPP.
MULTIVIBRADOR MAESTRO / ESCLAVO
En el caso de circuitos integrados (CI), un multivibrador maestro / esclavo, ya es
obsoleto, aunque puede encontrarse en equipos viejos, algunos estándares en la
familia TTL son 7473, 7476 y 74107; las tecnologías, tales como 74LS, 74AS, 74ALS y
74HCT, no incluyen ningún multivibrador maestro / esclavo dentro de sus series.
En el multivibrador maestro / esclavo durante la transición de pendiente positiva
(TPP) de la señal de reloj, los niveles presentes de las entradas de control (CLK, S, R)
se emplean para determinar la salida del multivibrador maestro. Cuando existe un
cambio de TPP, los estados del maestro se transfieren al esclavo, cuyas salidas son Q
y Q'. Por tanto, ambas cambian sólo después de cada TPN del reloj. En conclusión, el
multivibrador maestro / esclavo debe mantener estables las entradas de control,
mientras que CLK se encuentre en estado ALTO, de lo contrario puede ocurrir una
operación no previsible.
Las siguientes figuras muestran el diagrama a bloques de un multivibrador maestro /
esclavo sincronizado por reloj, así como su cronograma.
Preinicio y Borrado.
(PRESET / CLEAR)
Los multivibradores disponibles en CI proporcionan a veces terminales de entrada
para iniciar o borrar el multivibrador en forma asíncrona. Estas entradas, por lo
general, se llaman preinicio (preset) y borrado (clear) y afectan al multivibrador
en el nivel negativo de la señal de entrada sin necesidad de un pulso de reloj.
Estas entradas son útiles para llevar a los multivibradores a un estado inicial antes
de su operación cronometrada.

Sincronización de multivibradores.

La mayoría de los sistemas digitales son síncronos en su operación, pues la


generalidad de las señales cambiarán estados de sincronización con las
transmisiones del reloj. En algunos casos, existirá una señal interna que no esté
sincronizada por el reloj, por lo que será una señal asíncrona. Las señales
asíncronas ocurren a menudo como resultado de una señal interruptora al azar, en
relación con la señal de reloj. Esta selección no programada puede producir
resultados impredecibles.
CONVERSIÓN ENTRE MULTIVIBRADORES
J-K a partir del multivibrador tipo D
1. Obtener un multivibrador J-K a partir del multivibrador tipo D, como se muestra
en el diagrama de bloques.

Pasos a seguir:
Obtener la tabla de estados del multivibrador que
se desea.

TABLA DE ESTADOS
J K Q Q*
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 0

Utilizar la tabla de excitación del multivibrador que se dispone.

TABLA DE EXCITACIÓN
Q Q* D
0 0 0
0 1 1
1 0 0
1 1 1

La entrada del multivibrador D, representa la salida del circuito de excitación


(marcado con ? en la figura), la cual se obtiene de la tabla de estados del inciso
a), es decir:
D =Q*(J,K,Q) = Σ mintérminos (1,4,5,6)
Reduciendo la función por mapas de Karnaugh:
Y realizando el diagrama lógico, se obtiene:

Obsérvese que el diagrama lógico se obtuvo con compuertas NAND, lo cual se


logra complementando dos veces la función y aplicando uno de los complementos,
como se muestra en el mapa de Karnaugh.
J-K a partir del multivibrador tipo T
2. Obtener un multivibrador J-K a partir del
multivibrador tipo T, como se muestra en el
diagrama a bloques adjunto.
Se siguen los pasos indicados en el ejemplo
anterior.

Obtención de la tabla de estados del


multivibrador que se desea alcanzar:

TABLA DE ESTADOS
J K Q Q*
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 0

Utilizar la tabla de excitación del multivibrador que se dispone:

TABLA DE
EXCITACIÓN
Q Q* T
0 0 0
0 1 1
1 0 1
1 1 0

Para determinar a T en función de J, K y Q, se agrega una columna extra a la


tabla de estados y los valores de T se determinan en base a la tabla de excitación
del multivibrador tipo T. Así, cuando Q y Q* tengan el mismo valor de verdad T = 0
y cuando Q y Q* tengan distinto valor de verdad T = 1, como se muestra en la
siguiente tabla:
J K Q Q* T
0 0 0 0 0
0 0 1 1 0
0 1 0 0 0
0 1 1 0 1
1 0 0 1 1
1 0 1 1 0
1 1 0 1 1
1 1 1 0 1

Obsérvese que para las combinaciones 0, 1, 2 y 5, Q y Q*


tienen el mismo valor de verdad, por tanto T = 0; para las combinaciones 3, 4, 6 y
7, Q y Q* tienen distinto valor de verdad, por tanto T = 1. Expresando a T en
función de J, K y Q, se tiene la siguiente función canónica:
T(J,K,Q) = Σ mintérminos (3,4,6,7)

Reduciendo por mapas de Karnaugh El diagrama lógico es el siguiente


D a partir del multivibrador tipo J-K
3. Obtener el multivibrador tipo D a partir del multivibrador tipo J-K.
Obtención de la tabla de estados del multivibrador tipo D:

TABLA DE
ESTADOS
D Q Q*
0 0 0
0 1 0
1 0 1
1 1 1

Se obtiene la tabla de excitación del multivibrador J-K:

TABLA DE EXCITACIÓN
Q Q* J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 x 0

Se genera una tercera tabla para relacionar a D y Q con J y K. Esto se logra


agregando tres columnas a la tabla de estados del MVB tipo D; una a su izquierda
que muestra los decimales asociados a las combinaciones de D y Q; y dos a la
derecha correspondientes a J y K. Los valores de J y K se obtienen de la tabla de
excitación del multivibrador J-K; es decir, cuando Q = Q* = 0, J = 0 y K = X;
cuando Q = 0 y Q* = 1, entonces J = 1 y K = X y así sucesivamente, como se
muestra a continuación:

TABLA DE ESTADOS
D Q Q* J K
0 0 0 0 X
0 1 0 1 X
1 0 1 X 1
1 1 1 x 0

Ahora si podemos encontrar a J y K en función de D y Q, como se muestra a


continuación:
J(D,Q) = Σ mintérminos (2) + Σ indiferentes (1,3)
K(D,Q) = Σ mintérminos (1) + Σ indiferentes (0,2)

Reduciendo por mapas de Karnaugh las funciones anteriores y realizando el


diagrama lógico se tiene:

Ejercicios
1. Obtener un multivibrador tipo T a partir de un multivibrador tipo J-K.

2. Obtener un multivibrador tipo D a partir de un multivibrador tipo S-R.

3. Obtener un multivibrador tipo T a partir de un multivibrador tipo S-R.

4. Obtener un multivibrador tipo J-K a partir de un multivibrador tipo S-R.

5. Obtener un multivibrador tipo S-R a partir de un multivibrador tipo J-K.

6. Obtener un multivibrador tipo T a partir de un multivibrador tipo D.

7. Obtener un multivibrador tipo D a partir de un multivibrador tipo T.


CIRCUITOS BÁSICOS CON MVB

CONTADORES
El contador es un circuito secuencial que tiene capacidad para recordar el
número de pulsos que han sido aplicados en su entrada. Los multivibradores tipo
J-K tienen la habilidad de cambiar con cada pulso de entrada. Esta característica
es útil en contadores binarios.
Existen dos tipos de contadores los asíncronos y los síncronos.
Los contadores asíncronos son más comúnmente conocidos como ripple
through. La característica de este tipo de contadores es que los estados de los
biestables no cambian simultáneamente.
En los contadores síncronos los estados de los MVB cambian simultáneamente
bajo el control de un pulso de reloj.
El diseño de contadores asíncronos es el más fácil de los dos tipos; su
desventaja principal con respecto a los síncronos es su velocidad.

CONTADOR BINARIO ASCENDENTE DE n-BITS


Un contador binario de n bits tiene un ciclo de conteo N, que satisface la relación:
2n-1 ≤ N ≤ 2n
Donde: n = número de biestables

EJEMPLO 1:

Si n = 3 y los MVB son tipo J-K disparados por flanco negativo, entonces:
N ≤ 8 (0,1,2,3,4,5,6,7)
El diagrama lógico se muestra en la figura.

NOTA: Esta configuración de conexión funcionará como contador descendente si utilizamos


los multivibradores disparados por flanco positivo.
El cronograma de la señal de entrada y salidas de los MVB es:
Nótese que además de ser un contador ascendente, el MVB QA divide entre 2 la
frecuencia de entrada, QB la divide entre 4 y QC entre 8.

CONTADOR BINARIO DESCENDENTE DE n-BITS

Si en lugar de introducir Qn a la entrada de reloj de la etapa más significativa,


introducimos Q' n, el contador será descendente. El siguiente ejemplo muestra
esta aplicación.

EJEMPLO 2:
Contador binario descendente de modulo 23
El diagrama lógico se muestra en la figura adjunta:
El cronograma de la señal de
entrada y salida de los MVB se
presenta en la siguiente figura.
NOTA: Si los MVB usados en la
configuración lógica son disparados
por flanco positivo, el contador será
ascendente.

NOTA: Cuando se codifican los


estados de un contador ripple,
ocurren spikes en las salidas de la
matriz de codificación conforme los
MVB del contador cambian de estado.
El retardo de propagación de los
MVB crea esos estados falsos por un
tiempo muy corto. La decodificación
de spikes es posible en cualquier
contador excepto aquellos en que
todos los MVB cambian de estado
simultáneamente o aquellos en que
sólo un MVB cambia de estado para
cualquier pulso de reloj.

Para eliminar los spikes de las salidas de la matriz decodificadora, se usa una
entrada de control strobe en dicha matriz. Con ésta, la decodificación ocurre
después de que todos los MVB en el contador están en estado estable.
La frecuencia máxima de los contadores vistos anteriormente es:
1 / F ≤ n(TP) + TS
Donde:
n = número de biestables
TP = retardo de propagación de un MVB
TS = tiempo real del strobe

EJEMPLO 3:
Obtener el diagrama lógico de un contador ascendente / descendente cuya
máxima capacidad de cuenta es 7.
SOLUCIÓN:
Como: 7 ≤ 2n, entonces, n = 3 biestables y sea X una señal de control, tal que
cuando:
X = 0 cuenta ascendente, y X = 1 cuenta descendente
De los ejemplos anteriores y utilizando 2 multiplexores de 2x1, se obtiene el
diagrama lógico de la figura adjunta.

Algoritmo para contadores cuyo módulo de conteo no es múltiplo de 2n

1. Determinar el número de MVB (multivibradores) que requiere el circuito,


empleando la expresión:
2n-1 ≤ N ≤ 2n
N = longitud de conteo (si N no es una potencia de 2, utilizar la inmediata
superior)
2. Conectar todos los MVB como contador ripple.
3. Calcular el número binario n-1.
4. Conectar las salidas de los MVB que almacenan 1 en la cuenta N-1 a una
compuerta NAND si preset es activo a nivel bajo o a una compuerta AND si es
activo a nivel alto.
5. Conectar las salidas de la a las entradas preset de todos los multivibradores
para los cuales Qn = 0 en la cuenta N-1.
En muchos circuitos integrados, la línea preset no existe, únicamente cuentan
con una línea de borrado común a todos los MVB. Para estos casos, utilice el
siguiente procedimiento para el diseño de contadores asíncronos:
1. Determinar el número de MVB que requiere el circuito:
2n-1 ≤ N ≤ 2n
N = longitud de conteo (si N no es una potencia de 2, utilizar la inmediata
superior)
2. Conectar los MVB como un contador ripple.
3. Calcular el equivalente binario de N.
4. Conectar las salidas de los MVB que almacenan 1, cuando la cuenta es N, a
las entradas de la compuerta NAND, si clear es activo a nivel bajo, o a una
compuerta AND si clear es activo a nivel alto. Conectar las salidas de la
compuerta a la entrada clear común de los biestables.
Cuando el contador llega al eneavo estado, la salida de la compuerta desactiva
a todos los multivibradores.
CONTADORES SÍNCRONOS
La ventaja de éstos contra los asíncronos es que todos los MVB son gobernados
por un pulso de reloj.

Algoritmo para el diseño de contadores síncronos


1. Determinar el módulo de conteo M
2. Obtener el número de MVB y determinar el tipo, considerando que:
2n ≤ Módulo
Donde:
n = número de multivibradores
3. Generar la tabla de transición
4. Establecer las ecuaciones lógicas que rigen a los multivibradores
5. Dibujar el diagrama lógico

EJEMPLO 4:

Obtener el diagrama lógico de un contador síncrono cuyo módulo de conteo M sea


10 (década), utilizando MVB tipo T.

SOLUCIÓN:
1. Módulo = 10 (0,1,2,3,4,5,6,7,8,9)
2. Número de MVB que requiere el circuito:
2n ≤ 10
Con n = 3 se satisface la condición, pero es menor a M, por tanto debemos elegir el inmediato
superior, o sea: n = 4 multivibradores

Tabla de transición:
Reduciendo por mapas K:

Las funciones reducidas, las cuales rigen a los multivibradores son:

T3(Q3,Q2,Q1,Q0) = Q3Q0 + Q2Q1Q0


T2(Q3,Q2,Q1,Q0) = Q1Q0
T1(Q3,Q2,Q1,Q0) = Q3'Q0
T0(Q3,Q2,Q1,Q0) = 1

El circuito lógico, se presenta en la siguiente figura:


EJEMPLO 5:
OBTENER EL DIAGRAMA LÓGICO DE UN CONTADOR ASCENDENTE /
DESCENDENTE, MÓDULO = 8 (0, 1, 2, 3, 4, 5, 6, 7, 6, 5, 4, 3, 2, 1, 0). UTILIZAR
MULTIVIBRADORES TIPO T Y UNA VARIABLE DE CONTROL M = MODO PARA
CONTROLAR EL SENTIDO DEL CONTEO.
M = 0 ascendente, M = 1 descendente

SOLUCIÓN
1. Módulo de conteo: M = 8 (0,1,2,3,4,5,6,7,...
2. Número de multivibradores que requiere el circuito:
2n ≤ M
Por tanto: n = 3 multivibradores

3. Tabla de transición:

4. Reduciendo por mapas K, figura adjunta, se obtienen


las ecuaciones que rigen a los MVB.
T2 = M Q1' Q0'
T1 = M' Q0 + M Q0'
T0 = 1 (por inspección de la tabla)

El diagrama lógico se presenta en la figura siguiente:


EJEMPLO 6:
Obtener el diagrama lógico de un contador,
cuya secuencia de conteo sea: 0, 3, 5, 7, 11,
13, 15. Utilizar 2 multivibradores tipo J-K, para
los bits más significativos, y 2 tipo D para los
menos significativos. El diagrama a bloques
del ejemplo se muestra en la figura adjunta:

SOLUCIÓN:
1. Módulo de conteo = 16
2. Número de multivibradores que requiere
el circuito:
2n ≤ M.
Por tanto: n = 4 MVB
3. Tabla de transición:
De la tabla de transición se obtienen las siguientes funciones, sin minimizar, que
rigen el comportamiento de los multivibradores:

JD(QD,QC,QB,QA) = Σ mintérminos (7) + Σ indiferentes (1,2,4,8-15)


KD(QD,QC,QB,QA) = Σ mintérminos (15) + Σ indiferentes (0-8,10,12)
JC(QD,QC,QB,QA) = Σ mintérminos (3,11) + Σ indiferentes (1,2,4-8,10,12-15)
KC(QD,QC,QB,QA) = Σ mintérminos (7,15) + Σ indiferentes (0-4,6,8-12)
DB(QD,QC,QB,QA) = Σ mintérminos (0,5,9,13,14) + Σ indiferentes (1,2,4,6,8,10,12)
DA(QD,QC,QB,QA) = Σ mintérminos (0,3,5,7,9,11,14)+Σ Σ indiferentes (1,2,4,6,8,10,12)

4. Minimizando por mapas K las funciones lógicas anteriores, se obtiene:


De los mapas se obtienen las siguientes funciones reducidas, correspondientes a
cada multivibrador:

J D = QC QB
KD = QC QB QA
J C = QB
KC = QB QA
DB = QB' + QA' = (QB QA)'
DA = QD' + QC' QA = (QD QC QA)'
La siguiente figura muestra el diagrama lógico del circuito:

EJEMPLO 7:
Diseñar un circuito contador módulo 8 que siga al código binario, utilizando 3
multivibradores S-R síncronos.

SOLUCIÓN:

A continuación se presenta el diagrama


de estados:
La tabla de estados relaciona los estados
presentes, los estados siguientes, así como
las entradas de los multivibradores S-R,
correspondientes a cada variable de salida:

Estados Estados
MVB2 MVB1 MVB0
PRESENTES SIGUIENTES
y2 y1 y0 Y2 Y1 Y0 S2 R2 S1 R1 S0 R0
0 0 0 0 0 1 0 x 0 x 1 0
0 0 1 0 1 0 0 x 1 0 0 1
0 1 0 0 1 1 0 x x 0 1 0
0 1 1 1 0 0 1 0 0 1 0 1
1 0 0 1 0 1 x 0 0 x 1 0
1 0 1 1 1 0 x 0 1 0 0 1
1 1 0 1 1 1 x 0 x 0 1 0
1 1 1 0 0 0 0 1 0 1 0 1

Para determinar los valores funcionales de Si y Ri (i = 2,1,0), se hace referencia a


la tabla de excitación del multivibrador S-R, donde yi corresponde a Q y Yi a Q*.
Por ejemplo: para y2 = Y2 = 0, S2 = 0 y R2 = X, para y2 = 0 y Y2 = 1, S2 = 1 y R2 = 0,
y así sucesivamente para las demás combinaciones y multivibradores. De tabla de
estados, se determinan las funciones canónicas de entrada a los multivibradores:

S2(y2,y1,y0) = Σ mintérminos (3) + Σ indiferentes (4,5,6)


R2(y2,y1,y0) = Σ mintérminos (7) + Σ indiferentes (0,1,2)
S1(y2,y1,y0) = Σ mintérminos (1,5) + Σ indiferentes (2,6)
R1(y2,y1,y0) = Σ mintérminos (3,7) + Σ indiferentes (0,4)
S0(y2,y1,y0) = Σ mintérminos (0,2,4,6)
R0(y2,y1,y0) = Σ mintérminos (1,3,5,7)

La siguiente figura, muestra la reducción por mapas K y las funciones reducidas:


El diagrama lógico correspondiente es el siguiente:

EJEMPLO 8:
Diseñar un contador ascendente módulo 8 que siga al código Gray, utilizando
multivibradores tipo J-K.

SOLUCIÓN:
La siguiente figura muestra el diagrama de estados:

Del diagrama se observa que se parte del estado inicial 000, sigue al 001,
después al 011 y así sucesivamente, siempre siguiendo al código de Gray. A
continuación, se presenta la tabla de estados, que relaciona Q, Q* y los valores
funcionales de los 3 multivibradores, uno para cada variable de entrada. Para
determinar estos valores funcionales, se toma como referencia la tabla de
excitación del multivibrador J-K.

Estados Estados
MVB2 MVB1 MVB0
PRESENTES SIGUIENTES
y2 y1 y0 Y2 Y1 Y0 J2 K2 J1 K1 J0 K0
0 0 0 0 0 1 0 x 0 x 1 x
0 0 1 0 1 1 0 x 1 x x 0
0 1 1 0 1 0 0 x x 0 x 1
0 1 0 1 1 0 1 x x 0 0 x
1 1 0 1 1 1 x 0 x 0 1 x
1 1 1 1 0 1 x 0 x 1 x 0
1 0 1 1 0 0 x 0 0 x x 1
1 0 0 0 0 0 x 1 0 x 0 x

De la tabla de estados, se obtienen las siguientes funciones canónicas de entrada


de los multivibradores:

J2(y2,y1,y0) = Σ mintérminos (2) + Σ indiferentes (4,5,6,7)


K2(y2,y1,y0) = Σ mintérminos (4) + Σ indiferentes (0,1,2,3)
J1(y2,y1,y0) = Σ mintérminos (1) + Σ indiferentes (2,3,6,7)
K1(y2,y1,y0) = Σ mintérminos (7) + Σ indiferentes (0,1,4,5)
J0(y2,y1,y0) = Σ mintérminos (0,6) + Σ indiferentes (1,3,5,7)
K0(y2,y1,y0) = Σ mintérminos (3) + Σ indiferentes (0,2,4,6)

Las siguiente figura, muestran la reducción de las funciones anteriores por mapas
K y las funciones reducidas:
El diagrama lógico correspondiente, se presenta a continuación:

EJEMPLO 9:
Diseñar un contador descendente que siga al código BCD exceso 3. Utilizando
multivibradores tipo D.

SOLUCIÓN
En la siguiente figura, se muestra el diagrama de estados:

A continuación se muestra la tabla de estados, en donde se relacionan el código


BCD, el código EXCESO 3, los estados presentes y los estados siguientes.
Obsérvese que los estados siguientes Yi (i = 3,2,1,0), Q*, corresponden a las
entradas de los multivibradores.
Tabla de ESTADOS

Estados PRESENTES Estados SIGUIENTES


DEC EXCESO 3

y3 y2 y1 y0 Y3 Y2 Y1 Y0
0 3 0 0 1 1 1 1 0 0
9 12 1 1 0 0 1 0 1 1
8 11 1 0 1 1 1 0 1 0
7 10 1 0 1 0 1 0 0 1
6 9 1 0 0 1 1 0 0 0
5 8 1 0 0 0 0 1 1 1
4 7 0 1 1 1 0 1 1 0
3 6 0 1 1 0 0 1 0 1
2 5 0 1 0 1 0 1 0 0
1 4 0 1 0 0 0 0 1 1

De la tabla de estados, se obtienen las siguientes ecuaciones de estado en


forma canónica:

D3 = Y3(y3,y2,y1,y0) = Σ mintérminos (3,9,10,11,12) + Σ indiferentes (0-2,13-15)


D2 = Y2(y3,y2,y1,y0) = Σ mintérminos (3,5,6,7,8) + Σ indiferentes (0-2,13-15)
D2 = Y2(y3,y2,y1,y0) = Σ mintérminos (4,7,8,11,12) + Σ indiferentes (0-2,13-15)
D0 = Y0(y3,y2,y1,y0) = Σ mintérminos (4,6,8,10,12) + Σ indiferentes (0-2,13-15)

Las siguientes figuras, muestran la reducción por mapas K de las funciones de


estado, así como las funciones reducidas correspondiente:
El diagrama lógico final es:
EJERCICIOS
1. Diseñar un circuito contador ascendente módulo 8 que siga al código GRAY,
utilizando multivibradores S-R.

2. Diseñar un circuito contador descendente módulo 8 que siga al código GRAY,


utilizando multivibradores S-R.

3. Diseñar un circuito contador descendente módulo 8 que siga al código binario,


utilizando multivibradores S-R.

4. Diseñar un circuito contador ascendente módulo 8 que siga al código binario,


utilizando multivibradores J-K.

5. Diseñar un circuito contador descendente módulo 8 que siga al código GRAY,


utilizando multivibradores J-K.

6. Diseñar un circuito contador descendente que siga al código BCD exceso 3,


utilizando multivibradores S-R.

7. Diseñar un circuito contador descendente que siga al código BCD exceso 3,


utilizando multivibradores J-K.

8. Diseñar un circuito contador ascendente que siga al código BCD exceso 3,


utilizando multivibradores T.
Registros de Corrimiento, S-R
(por sus siglas en inglés, Shieft-Register)

Un registro de corrimiento (S-R) es un conjunto de multivibradores conectados


síncronamente y en cascada (la salida de cada multivibrador se conecta a la
entrada del siguiente).
La entrada de un S-R puede ser uno o dos canales dependiendo del tipo de
MVB que se encuentra en la cadena. La siguiente figura muestra 3 diagramas de
registros de corrimiento; los dos primeros de 2 canales a base de MVB tipos J-K y
S-R, respectivamente. El tercero es de un canal con MVB tipo D.

De acuerdo a la forma en que se introduce y obtiene la información en los


registros de corrimiento, éstos se clasifican en:

A Entrada serie - salida serie (ES-SS)


B Entrada serie - salida paralela (ES-SP)
C Entrada paralela - salida serie (EP-SS)
D Entrada paralela - salida paralela (EP-SP)

También en un registro de corrimiento, la información puede recorrerse de


izquierda a derecha o de derecha a izquierda.
A un registro de corrimiento se le conoce y denomina por su capacidad de
almacenamiento. Como cada MVB almacena un bit, entonces a un registro de
corrimiento que tiene 8 biestables se le conoce como REGISTRO DE CORRIMIENTO
DE 8 BITS.
Registro de corrimiento ES-SS

La figura adjunta muestra el arreglo para n bits.


Los datos entran al primer MVB y se recorren a lo largo de la cadena de
multivibradores, cada vez que se aplique un pulso de reloj.

El primer dato que se obtiene a la salida es el primero que se introdujo al registro


de corrimiento. El último dato que se obtiene es el último que se introdujo al
registro.
Este tipo de registro de corrimiento puede tener un número infinito de
multivibradores, ya que en un circuito integrado se requieren únicamente 5 patas
para contenerlo. Pero en la realidad, cada MVB disipa energía y esto limita el
número de multivibradores que puede contener un circuito integrado.

Operación del circuito:


Activar la energía.
Aplicar el pulso de borrado.
Activar la entrada de control preset.
Introducir los datos (activar las entradas paralelas)
Desactivar preset.
Aplicar los pulsos de reloj para obtener el corrimiento de la información.
Registro de corrimiento ES-SP

Si agregamos conexiones a las salidas Qn del registro de corrimiento ES-SS, la


información se puede leer en forma paralela, como lo muestra el diagrama
siguiente:

Registro de corrimiento EP-SS


Si agregamos entradas asíncronas a cada uno de los biestables del registro de
corrimiento ES-SP, la información podemos introducirla en forma paralela, como
se muestra en la siguiente figura:
Registro de corrimiento EP-SP

Si agregamos conexiones a las salidas de cada biestable del inciso anterior, los
datos pueden leerse en forma paralela, como se ilustra en el siguiente diagrama:

A los registros de corrimiento que pueden recorrer la información de derecha a


izquierda o de izquierda a derecha, se les conoce como REGISTROS UNIVERSALES.

EJEMPLO 1:

Registro de corrimiento
universal.

Obtener el diagrama
lógico de registro de
corrimiento universal de 4
bits. Usar una entrada de
control (modo) para la
dirección del corrimiento
de datos.
Solución:
La figura adjunta
muestra el arreglo usando
multivibradores tipo D y multiplexores (MUX).
NOTA: A los registros de corrimiento que son usados entre dos sistemas donde existen
variaciones de tiempo y/o del modo, se les conoce como REGISTROS BUFFER.

EJEMPLO 2:

Recirculación.

En un registro de
corrimiento de muchos
bits, figura adjunta, los
datos almacenados se
deben recorrer con el fin
de leerlos o transferirlos,
ya que no es práctico
agregar salidas paralelas
cuando se usan muchos
MVB. Conforme el dato es
recorrido, aparece a la
salida (un bit por cada
pulso de reloj).
La salida del registro de
corrimiento se conecta a
la entrada en forma tal que el dato es recirculado y como resultado, es
restaurado. Si esto no se hace, el dato se pierde.

Operación:
1. Aplicar el pulso de borrado
2. Activar el modo en forma tal que permita la entrada (MODO=1)
3. Introducir datos y pulsos de reloj hasta que el registro esté lleno
4. Si se desea obtener información intermedia, activar el MODO en forma tal que
permita conectar la SALIDA del registro de corrimiento con A (MODO = 0)
5. Aplicar los pulsos de reloj hasta
que los datos sean completamente
recirculados a través del registro de
corrimiento.

EJEMPLO 3:
Transformar información serie a
paralelo.
Suponiendo que se tiene un circuito convertidor de BCD a GRAY. Y suponiendo
que los datos BCD de que se dispone provienen de una fuente que los entrega
seriados.
La única forma de introducir los datos derivados del código BCD a la entrada del
circuito decodificador es usando un registro de corrimiento de 4 bits, con entrada
serie-salida paralela.
Estas tres situaciones se muestran en la figura adjunta.

EJEMPLO 4:
Decodificación a distancia
Supóngase que los datos de salida del circuito decodificador serán enviados a
considerable distancia.
Si enviamos las 4 líneas de salida,
el costo del cable será alto, pero la
transmisión será rápida (ver Figura
A). Si introducimos un registro de
corrimiento EP-SS, únicamente
necesitaremos dos líneas, una de
datos y la otra para sincronización;
pero la transmisión será más lenta
(ver Figura B) que en el arreglo
anterior.

EJEMPLO 5:
Sumador tipo serie.
Puede usarse un sumador completo S-C o F-A (por sus siglas en inglés) para
sumar números multibit.
Las entradas al S-C son dos
registros. La suma se almacena en
un tercer registro (como se ilustra
en la figura adjunta). El acarreo
(carry) se almacena en un
multivibrador.
La suma se realiza primero sobre
los dos dígitos menos
significativos. Cuando ocurre un
pulso de reloj, la suma se
almacena en el registro SUMA y si
se genera un acarreo se almacena
en el biestable. Simultáneamente,
los registros A y B recorren todos los bits una posición a la derecha.
Este proceso continúa hasta que sean sumados todos los bits de los registros.
Algunas veces es preferible almacenar la SUMA en el registro A (ver figura
anterior). En este caso el registro A funciona como acumulador.
Los datos almacenados en el registro B, se suman a la suma acumulada en el
registro A. Este procedimiento simplifica el proceso aritmético cuando se realiza
funciones complejas.
NOTA: La adición serie utiliza un mínimo de circuitos; sin embargo, el proceso es lento
comparado con la adición paralela que requiere más circuitos.

EJERCICIOS
1. Investigar los manuales TTL/CMOS de registros de corrimiento de 4, 8, 16, 32
y 64 bits.
Interconexión
Modos de operación

2. Contadores de anillo.

3. Contadores Johnson.

4. Contadores de registro de corrimiento con retroalimentación lineal.


CIRCUITOS SECUENCIALES
SÍNCRONOS
El comportamiento de los circuitos secuenciales se determina de las entradas,
las salidas y los estados de los multivibradores (MVB). Ambas entradas y el estado
siguiente son una función de las entradas y del estado presente. El análisis de los
circuitos secuenciales consiste en obtener una tabla o un diagrama de la
secuencia de tiempos de las entradas, salidas y estados internos. Es posible
escribir expresiones booleanas que describan el comportamiento de los circuitos
secuenciales. Sin embargo, estas expresiones deben incluir la secuencia de
tiempos necesaria directa o indirectamente.
Un diagrama lógico secuencial se reconoce como un circuito si éste incluye
multivibradores. Los MVB pueden ser de cualquier tipo y el diagrama lógico puede
o no incluir compuertas combinacionales. Muchos circuitos lógicos contienen
multivibradores biestables, monoestables, aestables y ocurrircompuertas lógicas
que se conectan para realizar una operación específica. Con frecuencia se usa
una señal de reloj primaria para ocasionar que los niveles lógicos del circuito
pasen a través de una determinada secuencia de estados. En términos generales,
los circuitos secuenciales se analizan siguiendo el procedimiento que se describe
a continuación:

1. Examinar el diagrama del circuito y buscar estructuras como contadores o


registros de corrimiento para su simplificación.

2. Determinar los niveles lógicos que


estén presentes en las entradas de
cada multivibrador antes de la
incidencia del primer pulso del reloj.

3. Utilizar estos niveles para


determinar la forma en que cada
multivibrador cambiará en respuesta
al primer pulso de reloj.

4. Repetir los pasos 2 y 3 para cada


pulso sucesivo de reloj.

En la Figura 1, se muestra un
circuito secuencial utilizando
multivibradores J-K con reloj.
Obsérvese que el diagrama contiene multivibradores y compuertas lógi

CIRCUITOS SECUENCIALES SÍNCRONOS


(Modalidad de reloj)

El diagrama adjunto muestra el algoritmo de diseño y análisis de los circuitos


secuenciales síncronos en la modalidad de reloj:
Obsérvese que en el caso de diseño, se parte de la definición del problema,
después el diagrama de estados y su tabla de estados, se continua con la
reducción de la tabla de estados, la asignación de estados, la selección de los
multivibradores y finalmente, el circuito lógico.
El proceso de análisis es en sentido contrario: se inicia con el circuito y se
recorren los pasos previos en sentido contrario hasta llegar a especificar el
problema.
A continuación se presentan tres ejemplos: uno de análisis y dos de diseño.
Ejemplo de análisis:
Deducir la función del circuito adjunto:

La ecuación de estados, vista previa- mente, para el MVB J-K es:

Q+(J,K,Q) = Q K' + Q' J........................(I)

Aplicando la ecuación anterior a los MVB 1 y 0 del circuito, se tiene:

Q+1(J1,K1,Q1) = Q1K'1 + Q'1J1...........(II)


Q+0(J0,K0,Q0) = Q0K'0 + Q'0J0..........(III)

Del circuito, se obtienen las siguientes expresiones, considerando que Q1=Y1 y


Q0=Y0:

J1 = x y0.........................................................(1)
K1 = x' y'0......................................................(2)
J0 = x..............................................................(3)
K0 = y'1..........................................................(4)
Sustituyendo (1) y (2) en (II):

Q+1 = y1(x' y'0)' + y'1(x y0) = y1(x + y0) + y'1 y0 x = y1 x + y1 y0 + y'1 y0 x =


Y1................(5)

Sustituyendo (3) y (4) en (III):

Q+0 = y0 y''1 + y'0 x = y1 y0 + y'0 x =..................................................(6)


z = y1 y'0 x.........................................................................................(7)

De las ecuaciones (5), (6) y (7), se obtienen las mascarillas para las tablas de
estados. Para esto se utilizan mapas de Karnaugh:

Tabla de asignación de estados (asignando: 0 0=q0, 0 1=q1, 1 1=q2, 1 0=q3):

Tabla 1 Tabla 2 Tabla 3


Estados Siguientes Transición

y1 y0 x=0 x=1 qv x=0 x=1 qv x=0 x=1


0 0 0 0 0 1 q0 q0 q1 q0 q0,0 q1,0
0 1 0 0 1 0 q1 q0 q3 q1 q0,0 q3,0
1 1 1 1 1 1 q2 q2 q2 q2 q2,0 q2,0
1 0 0 0 1 1 q3 q0 q2 q3 q0,0 q2,1
Para construir las tablas anteriores, se toma en cuenta lo siguiente: Para la tabla
1: la combinación y secuencia de valores para y1 y y0, corresponden a los que
dichas variables toman en los mapas de Karnaugh de la figura anterior. Para x=0:
los valores de la primera columna, corresponden a la columna 1 del mapa de Q1+ y
los de la segunda columna, a los valores de la columna 2 del mapa de Q0+. Para
x=1: los valores de la primera columna, corresponden a la columna 2 del mapa de
Q1+ y los de la segunda columna, a los valores de la columna 2 del mapa de Q0+.

En la tabla 2 de estados siguientes, se sustituyen los valores binarios por el


estado correspondiente, de acuerdo a la definición anterior; es decir: 00 por q0, 01
por q1, 11 por q2 y 10 por q3, para cada par de columnas de la tabla 1.

Para la tabla 3 de transición, los valores de qestado,salida, los valores de los


estados corresponden a la tabla de estados siguientes y los valores de z se
determinan de su ecuación obtenida en el mapa de Karnaugh correspondiente, o
sea: z=y1y'0x. Cuando x=0, todos los valores de z son cero; cuando x=1, sólo
cuando y1=1, y0=0 y x=1, z toma el valor de 1, o sea en la última combinación,
para las otras combinaciones z=0.

De la tabla anterior, se obtienen el diagrama de estados y la carta de tiempos.


Ejemplo 1 de Diseño.
Definición del problema: Se
debe diseñar un circuito
secuencial en la modalidad de
reloj (sincrono), cuyo diagrama a
bloques aparece en la figura
adjunta, que disponga de un
mecanismo externo de
restauración que, cuando sea
necesario, restaure al circuito al
estado inicial. Determinar el
diagrama de estados del circuito,
de tal manera que genere una
salida 1 para un período de reloj
que coincida sólo con la segunda
entrada de 0 de una secuencia que se compone exactamente de 2 UNOS (no más
de dos) seguidos por 2 CEROS. Cuando la salida ha sido 1 durante el período de
reloj, la salida se mantendrá en 0 hasta que el circuito se restaure externamente.
De la figura se observa que Z=1 si X tiene la secuencia 1100, el cualquier otro
caso Z=0.
Con estos datos se puede construir la carta de tiempo, como se muestra en la
siguiente figura:

Claramente se observa que durante 2 ciclos de reloj, X=1 y Z=0, que en los
siguientes 2 ciclos X=0, cumpliéndose las condiciones del enunciado, por lo que
Z=1 a partir del cuarto ciclo de reloj y permanece en ese valor.
Otra forma de visualización es por medio del diagrama de estados, que es
equivalente a la carta de tiempo.

Se parte de un estado inicial q0, después se analiza ese valor de la entrada y la


salida; si la entrada es 1 y la salida 0, se pasa al estado q1 (1/0 sobre la flecha),
pero si la entrada es 0 y la salida 0, permanece en el estado q0 (0/0 sobre la
flecha); del estado q1 se tienen dos posibilidades: si la entrada es 1 se pasa al
estado q2 y si es 0 al estado q5 (1/0 y 0/0 sobre las flechas, respectivamente); del
estado q2 se pasa al estado q3 si la entrada es igual a 0 y al estado q5 si la
entrada es igual a 1, en ambos casos la salida es 0 (0/0 y 1/0 sobre las flechas,
respectivamente); del estado q3 se pasa al estado q4 si la entrada es 0 y la salida
1 (se cumple la secuencia que establece el enunciado), si la entrada es 1 y la
salida 0 se pasa al estado q5 (0/1 y 1/0 sobre las flechas, respectivamente); el
estado q4 se mantiene en 0, independientemente de que la entrada cambie a 0 o
1; finalmente, el estado q5 se mantiene mientras la entrada sea 0 y pasará al
estado q1 si la entrada es 1, en ambos casos la salida es 0.
El diagama de estados se resume en la tabla de estados, en donde los valores
para las columnas x=0 y x=1, corresponden a los estados siguientes:

Estado Estados
presente siguientes
qv x=0 x=1
q0 q0,0 q1,0
q1 q5,0 q2,0
q2 q3,0 q5,0
q3 q4,1 q5,0
q4 q4,0 q4,0
q5 q5,0 q1,0

En la tabla de estados se tiene la siguiente notación para los estados siguientes:


qestado siguiente,salida

El siguiente paso consiste en la reducción de la tabla de estados, siendo el


método de inspección. En este método se establece que dos estados son
equivalentes si:
Son circuitos completamente especificados. Se dice que un circuito es
completamente especificado, si partiendo de un estado se conoce a donde llegar
(estado siguiente) y se sabe el valor de la señal de salida con un determinado
vector de entrada.

Si L(q,x) = L(p,x)
donde:
L = función de salida
p,q = estados presentes
x = vector de entrada
entonces: q = p

De la tabla de estados, se
observa que q0 y q5 son
equivalentes; por tanto, si
cumplen con esta regla se puede
anular a cualesquiera de los dos.
En este ejemplo se eliminará q5,
sustituyen- dolo en todos los
casos por q0. Haciendo lo
anterior, se llega a la tabla (a) y
al diagrama de estados reducido:
(a)
Tabla de estados
Reducida
qv x=0 x=1
Q0 q0,0 q1,0
Q1 q0,0 q2,0
q2 q3.0 q0.0
q3 q4,1 q0,1
q4 q4,0 q4,0

El siguiente paso consiste en la asignación de estados, que depende del número


de estados, las variables de estado requeridas para generar dichos estados y el
número de multivibradores para obtener las variables de estado. Su relación está
dada por:
m = número de estados = 5
r = número de variables de estado = 2r > m
r = número de multivibradores = 23 > 5

Como 8 > 5, entonces se tienen 3


variables de estado: y2, y1 y y0, y tres
estados no válidos. Es decir, se
requerirán 3 multivibradores, como se
muestra en la figura adjunta, en la cual no
se indica el tipo de multivibrador, ya que
aún no se han establecido, lo que
significa que podrían ser de cualquier
tipo.
En base a lo anterior, se construye la
tabla de asignación de estados, en la que
se muestran 4 posibles asignaciones q1v,
q2v, q3v y q4v, siendo q1v la primera
asignación, q2v la segunda, y así
sucesivamente.
Tablas de
Asignación de Estados
y2 y1 y0 q1v q2v q3v q4v
0 0 0 q0 x x x
0 0 1 q1 q0 x x
0 1 0 q2 q1 q0 x
0 1 1 q3 q2 q1 q0
1 0 0 q4 q3 q2 q1
1 0 1 x q4 q3 q2
1 1 0 x x q4 q3
1 1 1 x x x q4

Tomando en cuenta la primera asignación (q1v), se obtiene la tabla (b), que toma
como referencia la tabla (a):

(b)

Primera asignación q1v


qv y2 y1 y0 x=0 x=1
q0 0 0 0 000,0 001,0
q1 0 0 1 000,0 011,0
q2 0 1 1 010,0 000,0
q3 0 1 0 110,1 000,0
q4 1 1 0 110,0 110,0
x 1 1 1 xxx,x xxx,x
x 1 0 1 xxx,x xxx,x
x 1 0 0 xxx,x xxx,x

En la tabla (b), se observa que en las columnas para x=0 y x=1 hay 4 dígitos,
los cuales corresponden a los estados siguientes de los tres multivibradores y la
salida, o sea: y2+y1+y0+,z. Así, los valores para y2+ corresponden a la primera
columna, para y1+ la segunda columna, para y0+ la tercer columna y para z la
cuarta columna. Los valores de excitación dependerán del tipo de multivibrador a
usar.

Utilizando multivibradores tipo J-K, cuya tabla de excitación es:


Tabla de
EXCITACIÓN
Q Q+ J K
0 0 0 X
0 1 1 X
1 0 x 1
1 1 x 0

Para obtener los mapas de Karnaugh, se combinan las dos tablas anteriores, en
las siguientes tablas:

x=0
Estado
presente Estado
MB2 MB1 MB0
siguiente z
y2 y1 y0 y2+ y1+ y0+ J2 K2 J1 K1 J0 K0
0 0 0 0 0 0 0 x 0 x 0 x 0
0 0 1 0 0 0 0 x 0 x x 1 0
0 1 1 0 1 0 0 x x 0 x 1 0
0 1 0 1 1 0 1 x x 0 0 x 1
1 1 0 1 1 0 x 0 x 0 0 x 0
1 1 1 x x x x x x x x x x
1 0 1 x x x x x x x x x x
1 0 0 x x x x x x x x x x

x=1
Estado
presente Estado
MB2 MB1 MB0
siguiente z
y2 y1 y0 y2+ y1+ y0+ J2 K2 J1 K1 J0 K0
0 0 0 0 0 1 0 x 0 x 1 x 0
0 0 1 0 1 1 0 x 1 x x 0 0
0 1 1 0 0 0 0 x x 1 x 1 0
0 1 0 0 0 0 0 x x 1 0 x 0
1 1 0 1 1 0 x 0 x 0 0 x 0
1 1 1 x x x x x x x x x x
1 0 1 x x x x x x x x x x
1 0 0 x x x x x x x x x x
Obtención de los mapas de Karnaugh para cada una de las entradas de los
multivibradores J-K y la salida z. Para J2, se copia la información en el mapa de la
columnas para x=0 y x=1, sin incluir los ceros, de las tablas anteriores. Lo mismo
se hace para las otras entradas de los multivibradores y la salida z.
El logigrama queda:

Ejemplo 2 de Diseño.

Se desea diseñar un circuito secuencial de dos líneas de entrada x1 y x2 y una


sola salida z. Si un pulso de reloj llega cuando x1=0 y x2=0 (00), el circuito debe
asumir un estado de restauración o inicial que se puede representar con Q0.
Suponer que los siguientes 6 pulsos de reloj, después de un pulso de
restauración, coinciden con la siguiente secuencia de combinaciones de entrada.
Las entradas, representadas por x1 y x2, son 01, 10, 11, 01, 10 y 11. La salida z=1
coincidiendo con el sexto pulso de esta secuencia de 6 pulsos de reloj, pero z=0
en todos los otros momentos. El circuito no puede restaurar o regresar a Q0
excepto mediante la entrada 00. Definir un estado especial al que puede pasar el
circuito una vez que sea imposible que se produzca una secuencia que origine
una salida. Por lo tanto, el circuito deberá esperar en ese estado hasta que se
restaure.
Secuencia: 01 10 11 01 10 11

Carta de tiempos:

Diagrama de estados:
Del diagrama de estados se obtiene la tabla de estados:

Tabla de ESTADOS Tabla REDUCIDA (q6=q7)


x1 x2 x1 x2 x1 x2 x1 x2 x1 x2 x1 x2 x1 x2 x1 x2
qv qv
0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0
q0 q0,0 q1,0 q7,0 q7,0 q0 q0,0 q1,0 q6,0 q6,0
q1 q0,0 q7,0 q7,0 q2,0 q1 q0,0 q6,0 q6,0 q2,0
q2 q0,0 q7,0 q3,0 q7,0 q2 q0,0 q6,0 q3,0 q6,0
q3 q0,0 q4,0 q7,0 q7,0 q3 q0,0 q4,0 q6,0 q6,0
q4 q0,0 q7,0 q7,0 q5,0 q4 q0,0 q6,0 q6,0 q5,0
q5 q0,0 q7,0 q6,1 q7,0 q5 q0,0 q6,0 q6,1 q6,0
q6 q0,0 q7,0 q7,0 q7,0 q6 q0,0 q6,0 q6,0 q6,0
q7 q0,0 q7,0 q7,0 q7,0

Diagrama de estados reducido:

Uno de los criterios de asignación, es considerar al circuito de salida de tal manera


que sea éste el más sencillo. Para conseguir esto, se mueve el estado q5 (en este
caso) que contenga la señal de salida igual a 1, a una posición tal que sea fácil de
hacer enlaces con los estados opcionales.
x1 x2 x1 x2 x1 x2 x1 x2
qv
0 0 0 1 1 1 1 0
q0 q0,0 q1,0 q6,0 q6,0
q1 q0,0 q6,0 q6,0 q2,0
q2 q0,0 q6,0 q3,0 q6,0
q3 q0,0 q4,0 q6,0 q6,0
q4 q0,0 q6,0 q6,0 q5,0
q6 q0,0 q6,0 q6,0 q6,0
q5 q0,0 q6,0 q6,1 q6,0
qx qx,x qx,x qx,x qx,x

Utilizando multivibradores tipo D, se pasa a la siguiente tabla:

Estado Presente x1x2 x1x2 x1x2 x1x2


v
q 00 01 11 10
y2 y1 y0 + + + + + + + + +
y2 y1 y0 y2 y1 y0 y2 y1 y0 y2 y1 y0
q0 0 0 0 0 0 0 0 0 11 1 11 1 1
q1 0 0 1 0 0 0 1 1 11 1 10 1 1
q3 0 1 1 0 0 0 1 1 10 1 01 1 1
q2 0 1 0 0 0 0 1 1 01 1 11 1 1
q4 1 1 0 0 0 0 1 1 11 1 11 0 1
q6 1 1 1 0 0 0 1 1 11 1 11 1 1
q5 1 0 1 0 0 0 1 1 11 1 11 1 1
qx 1 0 0 x x x x x xX x xx x x

La tabla de excitación del multivibrador tipo D es:

Tabla de
EXCITACIÓN
Q Q+ D
0 0 0
0 1 1
1 0 0
1 1 1
Se obtienen tres mapas de Karnaugh, uno para cada multivibrador; Así para
D2, se toman los valores indicados en la columna y2+ , considerando los valores de
x1 y x2. Así, para x1=x2=0, los valores corresponden a la primera columna de
mapa K; para x1=0 y x2=1, a los de la segunda columna de mapa y así
sucesivamente. Para D1 se sigue el mismo procedimiento pero tomando los
valores de la columna y1+. Finalmente para D0, se consideran los valores de la
columna y0+. Obsérvese que z=1, cuando x1=x2=0 , y2=1 y y1=y0=0.
El logigrama correspondiente es:

EJERCICIOS.
1. Determinar el diagrama y la tabla de estados de un circuito detector de
secuencia que detecte 101. La salida debe ser 1 cuando ocurra el último pulso de
la secuencia. La salida Z deberá restablecerse a 0 para el siguiente pulso. La
secuencia deberá presentar traslape (el último uno de la secuencia se puede
tomar como el inicio de una secuencia siguiente).
x = 010101101

2. Obtener el diagrama y la tabla de estados para un circuito detector de


secuencia de tal manera que Z=1 en el segundo bit de 2 unos consecutivos. El
circuito debe diseñarse con traslape siempre y cuando se siga la siguiente
secuencia: (el último uno de la secuencia se puede tomar como el inicio de una
secuencia siguiente).
x = 01100111110

3. Obtener el diagrama y la tabla de estados tal que Z=1 cuando ocurra el


segundo bit de la secuencia 01.
x = 010100100

4. Obtener la tabla y el diagrama de estados tal que Z=1 cuando la secuencia sea
1010.
x = 00101001010101110

5. En una intersección de dos


calles, una en la dirección
norte-sur (N-S) y otra en la
dirección este-oeste (E-O). Se
instalan semáforos con
indicaciones de rojo, ámbar y
verde. Diseñar un circuito
mostrando la secuencia de
estados que recorrerán las
luces. Suponer que el sistema
está controlado por un reloj
cuyo período es de 5
segundos. En cada dirección
se permite tráfico durante 20
segundos y la luz ámbar dura
20 segundos.

REDUCCIÓN DE TABLAS DE ESTADO


Existen 3 métodos: Por inspección, por particiones y por tablas de implicación.
COMENTAR EL MÉTODO DE INSPECCIÓN
Método de reducción por particiones.
Empezaremos a desarrollar este método, estableciendo algunas definiciones
importantes:

Relación de equivalencia.
Cuando un par de ordenadas de elementos x e y posee una propiedad que los
relaciona, se dice que x está relacionado con y; se expresa en la forma:
xRy
Para que se cumpla la expresión anterior, se requiere:
1. x R y entonces x = x propiedad reflexiva
2. x R y entonces x = y propiedad simétrica
3. x R y y y R z entonces x = y y y = z, por tanto: x = z propiedad transitiva

Estados equivalentes.
La condición para que existan estados equivalentes, es que el circuito esté
completamente especificado. Se dice que un circuito está completamente
especificado si las salidas y los estados siguientes son conocidos para cada
combinación de estados presentes y de entrada.
La función de estado siguiente se denota por el símbolo D (delta) y la función de
salida por L (lamda). Se empleará la siguiente notación:

D = D(estado presente, vector de entrada) = qv+1


L = L (estado siguiente, vector de salida) = z

EJEMPLO.
Sea la siguiente tabla y el vector x = 023001:

Estado x (condiciones de entrada)


presente 00 01 11 10
q 0 1 3 2
q1 q3,0
q1,0
q 2,0
q2,0
q2 q3,0 q3,0 q4,0 q4,0
q3 q3,0 q1,1 q1,3 q1,2
q4 q4,0 q4,0 q2,0 q2,0
qestado siguiente,salida
De la tabla anterior, se determinan los estados presente y siguiente:

Donde: D(qen1,0) = q3 indica: D(qestado presente,entrada)=qestado siguiente; L(q1,0) = 0

D(q1,0) = q3 L(q1,0) = 0 = 00
D(q3,2) = q1 L(q3,2) = 2 = 10
D(q1,3) = q2 L(q1,3) = 0 = 00
D(q2,0) = q3 L(q2,0) = 0 = 00
D(q3,0) = q3 L(q3,0) = 0 = 00
D(q3,1) = q1 L(q3,0) = 1 = 01

indica: L(qestado presente,entrada)= salida (en decimal y binario), para el primer renglón
y en forma similar para los siguientes renglones.

Con los resultados anteriores, se pueden establecer las siguientes definiciones:

Definición 1: Sean A y B dos circuitos completamente especificados sujetos a


las mismas condiciones de entrada posibles; sea x1, x2,..., xm una secuencia de
valores posibles del conjunto de entrada x de una longitud arbitraria. Los estados
p, pertenecen a B, y los q, pertenecen a A, son equivalentes, lo cual se expresa
como p = q, si y sólo si:

DA (q, x1, x1, x1,...., x1) = LB (p, x1, x1, x1,...., x1)

Definición 2: Se dice que los circuitos secuenciales A y B son equivalentes, lo


cual se expresa A = B, si para cada estado q de A, existe una tabla de estado p
de B, tal que p = q, e inversamente para cada estado p de B existe un estado q
de A, tal que q = p.

Conclusión: Dada una tabla de estados, el objetivo es obtener una tabla de


estados con el menor número posible de ellos, porque esto podría implicar utilizar
un número menor de elementos de memoria (multivibradores).

Definición 3: Se hará que los estados de un circuito secuencial se dividan en


clases separadas. p = q denota que los estados p y q quedan dentro de la misma
clase en la partición. Esta partición se compone de clases de equivalencia de
estados indistinguibles (2 estados indistinguibles deben estar en la misma clase),
si y sólo si se satisfacen las dos condiciones siguientes para cada par de estados
p y q en la misma clase (p = q) y cada entrada individual x:

1. L (p, x) = L (q, x) indica que las salidas son iguales.


2. D(p, x) = D(q, x) significa que quedan dentro de la misma clase.
Definición: Los estados S1,S2,...,Sj de un circuito secuencial son de
equivalencia, si y sólo si, para cada secuencia posible Ip se producirá la misma
secuencia de salida, sin importar que S1,S2,...,Sj sean los estados iniciales.
Esta definición puede plantearse de otra forma, por la condición de pares
siguientes: Considerar que Sk y Sl sean los estados siguientes del circuito
secuencial, al aplicarse la entrada Ip en los estados Si y Sj, respectivamente.
Se dice entonces que Si y Sj son equivalentes si y sólo si para cada entrada
posible Ip:
La salida producida por el estado Si es igual a la producida por Sj.
Los estados siguientes Sk y Sl son equivalentes.

EJEMPLO 1.
Obtener una tabla de estados mínima y equivalente de la siguiente tabla:

Estado Entrada
presente x=0 x=1
A C/1 B/0
B C/1 E/0
C B/1 E/0
D D/0 B/1
E E/0 A/1
estado siguiente/salida

(A B C D E) Conjunto universal
x=0 11100 Primero salidas. Formamos subconjuntos, de acuerdo a la tabla
x=1 00011 anterior
1ra. PARTICIÓN
(A B C)(D E) Formamos subconjuntos
x=0 CCB DE Analizamos sobre puros estados siguientes. CCB van al mismo
subconjunto con x=0
x=1 BEE BA BEE van a distinto subconjunto con x=1, por lo que debe particionarse
2a. PARTICIÓN
(A)(B C)(D E)
x=0 CB DE DE van al mismo subconjunto con x=0
x=1 EE BA BA van a distinto subconjunto con x=1
3a. PARTICIÓN
(A)(B C)(D)(E)
x=0 CB
Así queda, ya que no es posible dividir en más subconjuntos
x=1 EE
a b d e a=(A), b=(BC), d=(D) y e=(E)
La Tabla equivalente mínima y el diagrama de estados mínimo, se presentan a
continuación:

Estado Entrada x
presente x=0 x=1
a b/1 b/0
b b/1 e/0
d d/0 b/1
e e/0 a/1

EJEMPLO 2.
Dada la siguiente tabla, obtener una tabla de estados mínima y equivalente:

TABLA 1
Estado Entrada
presente x=0 x=1
A A/1 E/0
B A/0 E/0
C B/0 F/0
D B/0 F/0
E C/0 G/1
F C/0 G/1
G D/0 H/1
H D/0 H/1
estado siguiente/salida
(A B C D E F G H) Conjunto universal
1ra. PARTICIÓN
x=0 1 0 0 00000
De acuerdo a salidas
x=1 0 0 0 01111
2a. PARTICIÓN
(A)(B C D)(E F G H)
x=0 A A B B C C D D
ABB van a distinto subconjunto, por lo que particionamos
x=1 E E F F G G H H
3a. PARTICIÓN
(A)(B)(C D)(E F G H)
x=0 BB CCDD
Van a los mismos subconjuntos
x=1 FF GGHH
a b c d a=(A), b=(B), c=(CD) d=(EFGH)

Tomando en cuenta la Tabla 1 inicial, se obtiene la Tabla equivalente mínima y el


diagrama de estados mínimo, presentados a continuación:

Estado Entrada x
presente x=0 x=1
a a/1 d/0
b a/0 d/0
c b/0 d/0
d c/0 d/1
EJEMPLO 3.
Dada la siguiente tabla, obtener una tabla de estados mínima y equivalente:
TABLA 1
Estado Entrada
presente x=0 x=1
A E/0 D/0
B A/1 F/0
C C/0 A/1
D B/0 A/0
E D/1 C/0
F C/0 D/1
G H/1 G/1
H C/1 B/1
estado siguiente/salida

ABCDEFGH Conjunto universal


1
1ra. PARTICIÓN
x=0 01 0 01 01 1
De acuerdo a salidas
x=1 00 1 00 11 1
2a. PARTICIÓN
(A D C F B E G H)
x=0 00 00 11 1 1
Arreglamos de acuerdo a salidas iguales
x=1 00 11 00 1 1
(A D)(C F)(B E)(G H)
3a. PARTICIÓN
2 (A D)(C F)(B E)(G H) Ahora de acuerdo a estados siguientes
x=0 E B CC A D H C
HC Van a distinto subconjunto
x=1 DA AD FC GB
3a. PARTICIÓN
(A D)(C F)(B E)(G)(H)
x=0 EB CC AD H C
Ya no es posible formar mas subconjuntos
x=1 DA AD FCGB
Renombrando los subconjuntos:
(A D)(C F)(B E)(G)(H)
a b c d e a=(AD), b=(CF), c=(BE), d=(G) y e=(H)
Tomando en cuenta la Tabla 1 inicial, obtenemos la Tabla equivalente mínima y el
diagrama de estados mínimo, presentados a continuación:

Estado Entrada x
presente x=0 x=1
a c/0 a/0
b b/0 a/1
c a/1 b/0
d e/1 d/1
e b/1 c/1

EJEMPLO 4.
Dada la siguiente tabla, obtener una tabla de estados mínima y equivalente:

Estado Entrada
presente x=0 x=1
A A/0 B/0
B A/0 C/0
C A/0 D/0
D A/0 D/1
estado siguiente/salida
EJEMPLO 5.
Dada la siguiente tabla, reducirla por el método de particiones:

TABLA A
Estado Entrada
presente x=0 x=1
1 1/0 1/0
2 1/1 6/1
3 4/0 5/0
4 1/1 7/0
5 2/0 3/0
6 4/0 5/0
7 2/0 3/0
estado siguiente/ salida

(A B C D) Conjunto universal
1ra. PARTICIÓN
x=0 0 0 0 0 De acuerdo a salidas
x=1 0 0 0 1
2a. PARTICIÓN
(A B C)(D)
x=0 AAA A
De acuerdo a estados siguientes
x=1 BCD D
3a. PARTICIÓN
(A B)(C)(D)
x=0 AA A A
De acuerdo a estados siguientes
x=1 BC D D
(A)(B)(C)(D) No es posible simplificarla
Estado presente
1 2 3 45 6 7 Conjunto universal
x=0 0 1 0 1 0 0 0
De acuerdo a salidas
x=1 0 1 0 0 0 0 0
(1 3 5 6 7) (4) (2)
x=0 0 0 0 0 0 1 1
Primero agrupamos de acuerdo a salidas
x=1 0 0 0 0 0 0 1
1ra. PARTICIÓN
(1 3 5 6 7) (4) (2)
x=0 1 4 2 4 2 1 1
Considerando estados siguientes
x=1 1 5 3 5 3 7 6
2a. PARTICIÓN
(1) (3 5 6 7) (4) (2)
x=0 1 4 2 4 2 1 1 Por inspección 3 y 6 forman un subconjunto
x=1 1 5 3 5 3 7 6 Por inspección 5 y 7 forman un subconjunto
Renombrando los subconjuntos
(1) (3 6) (5 7) (4) (2)
a d e c b

Considerando la tabla inicial A y los resultados anteriores, se obtiene la tabla de


estados reducida:

Estado Entrada x
presente x=0 x=1
a a/0 a/0
b a/1 d/1
c a/0 e/0
d c/1 e/0
e b/0 d/0
EJERCICIOS.

Dadas las siguientes tablas, reducirlas por el método de particiones

TABLA 1 TABLA 2 TABLA 3


v v v
q x=0 x=1 q x=0 x=1 q x=0 x=1
1 1,0 1,1 q0 q0,1 q0,0 q0 q1,0 q0,1
2 1,0 6,1 q1 q0,0 q4,0 q1 q0,1 q3,1
3 4,1 5,1 q2 q1,0 q5,0 q2 q2,0 q4,0
4 2,0 6,0 q3 q1,0 q5,0 q3 q5,0 q2,1
5 1,0 3,1 q4 q2,0 q6,1 q4 q1,1 q6,0
6 3,1 4,0 q5 q2,0 q6,1 q5 q3,1 q5,0
7 2,0 3,0 q6 q3,0 q7,1 q6 q2,1 q7,0
q7 q3,0 q7,1 q7 q2,1 q7,0
Método de reducción por tablas de implicación
(Método de Implicantes).

Este método se utiliza para determinar la equivalencia de estados. El


procedimiento se realiza mediante los siguientes pasos:

1. a) Se forma una tabla anotando verticalmente las variables de estado presente,


menos la primera; y b) horizontalmente todos los estados a excepción del último.
De esta tabla se obtienen todas las posibles combinaciones por pares de estados.

2. Como únicamente los estados siguientes con salidas idénticas pueden ser
equivalentes, se coloca una cruz en las celdas correspondientes de aquellos pares
de estados cuyas salidas no son iguales para cada entrada.
3. Por la condición de pares de estado, deben completarse todas las celdas
vacantes, escribiéndose sobre cada celda todos los pares siguientes, cuya
equivalencia está implicada por la intersección de los estados que definen cada
celda.
Si los pares implicados contienen únicamente los mismos estados que lo definen,
o bien, si los estados equivalentes son iguales para una entrada dada, se coloca el
símbolo que indica que estos estados son equivalentes por inspección e
independientes de otros pares implicados.

4. Una vez completada la tabla deben realizarse pasos sucesivos para determinar
si otras celdas deben cruzarse además de las indicadas en el paso

5. Una celda debe cruzarse si contiene al menos un par implicado definido en otra
celda que haya sido cruzada anteriormente.

6. Se realiza un listado a una columna por los definidos en la línea horizontal, se


examina la tabla columna por columna para localizar celdas no cruzadas, siendo
estos los pares de estados equivalentes, para aplicar enseguida la propiedad de
transitividad (absorción).
(Si, Sj)(Sj, Sk) => (Si, Sj, Sk)

EJEMPLO 1.
Reducir al mínimo la
siguiente tabla de
estados por el método de
implicantes.
Estado x
presente 0 1
A C/1 E/0
B C/1 E/0
C B/1 E/0
D D/0 B/1
E E/0 A/1
estado siguiente/salida

De la Tabla de implicantes, se obtiene la siguiente tabla reducida:

Estado x
presente 0 1
a a/1 b/0
b b/0 a/1
estado siguiente/salida

EJEMPLO 2.
Reducir al mínimo la siguiente tabla de estados por el método de implicantes.
Estado x
presente 0 1
A E/0 D/0
B A/1 F/0
C C/0 A/1
D B/0 A/0
E D/1 C/0
F C/0 D/1
G H/1 G/1
H C/1 B/1
ESTADO SIGUIENTE/SALIDA

EJEMPLO 3.
Reducir al mínimo la siguiente tabla de estados por el método de implicantes.
Estado x
presente 0 1
A C/1 B/0
B C/1 E/0
C B/1 E/0
D D/0 B/1
E E/0 A/1
ESTADO SIGUIENTE/SALIDA

EJEMPLO 4.
Reducir al minimo la siguiente tabla de estados por el método de implicantes.
Estado x
presente 0 1
A A/1 E/0
B A/0 E/0
C B/0 F/0
D B/0 F/0
E C/0 G/1
F C/0 G/1
G D/0 H/1
H D/0 H/1
ESTADO SIGUIENTE/SALIDA
EJEMPLO 5.
Dada la siguiente tabla, reducirla por el método de tablas de implicación:
qv x=0 x=1
1 2/0 3/0
2 4/0 5/0
3 6/0 7/0
4 8/0 9/0
5 10/0 1/0
6 4/0 12/0
7 10/0 12/0
8 8/0 1/0
9 10/1 1/0
10 4/0 1/0
11 2/0 1/0
12 2/0 1/0
estado
siguiente/salida

qv 0 1 2 3
1 3 4 2 4
2 4 4 3 4
3 1 1 3 4
4 1 2 1 4
Pasos eliminados:

Primer paso:
1-9 2-9 3-9 4-9 5-9 6-9 7-9 8-9 9-10 9-11 9-12

Segundo paso: Para este paso, se eliminan todos los que tengan implicados los
de primer paso.
1-4 2-4 3-4 4-5 4-6 4-7 4-8 4-10 4-11 4-12

Tercer paso:
1-2 1-6 1-10 2-3 2-5 2-7 2-8 2-11 3-6 3-10 5-6 5-10 6-7 6-8 6-11 6-12 7-10 8-10 10-11 10-12

Cuarto paso:
1-8 3-8 5-8 7-8 8-11 8-12

Búsqueda de pares equivalentes:


11-
11
12
11-
10
12
11-
9
12
11-
8
12
11-
7 7-11 7-12
12
11-
6 7-11 7-12 6-10
12
11-
5 7-11 7-12 6-10 5-7 5-11 5-12
12
11-
4 7-11 7-12 6-10 5-7 5-11 5-12
12
11-
3 7-11 7-12 6-10 5-7 5-11 5-12 3-5 3-7 3-11 3-12
12
11-
2 7-11 7-12 6-10 5-7 5-11 5-12 3-5 3-7 3-11 3-12 2-6 2-10
12
11-
1 7-11 7-12 6-10 5-7 5-11 5-12 3-5 3-7 3-11 3-12 2-6 2-10 1-3 1-5 1-7 1-11 1-12 4 8 9
12
Diagrama de Merger:

Tabla reducida
v
q x=0 x=1
1 2,0 1,0
2 4,0 1,0
4 8,0 9,0
8 8,0 1,0
9 2,1 1,0
estado siguiente/salida

Explicación de circuitos no especificados completamente (diagrama de Merger)

EJEMPLO:
Estado x
presente 0 1
A A/- -/-
B C/- B/0
C D/0 -/-
D -/- B/-
E A/0 C/-
estado siguiente/salida
x x
0 1 0 1
A'=ABD AC/1 B/0 A' A'B'/1 A'/0
B'=EC DA/0 C/1 B' A'/0 B'/1
se llena con la se llena con la
primera tabla tabla adjunta

x x
0 1 0 1
A'=ACD AD/0 B/1 A' A'/0 B'/1
B'=B C/1 B/0 B' A'/1 B'/0
C'=E A/0 C/- C' A'/0 A'/-
x x
0 1 0 1
A'=ACE AD/0 C/1 A' A',B'/0 A'/1
B'=BD C/1 B/0 B' A'/1 B'/0

NOTA: Los incompatibles:

U=MÍN {NSMC , NSOC}


No. de compatibles
Estados originales
máximo de
del circuito
conjuntos
2 5

L=MÁX {NSMI1 , NSMI2 , NSMI3}


2 2 2
No. de estados del iésimo grupo
del conjunto de incompatibles máximo

L <= K <= U
Ejercicios
Reducir por medio de tablas de implicación, los siguientes problemas:
1. 2.
00 01 10 11 00 01 10 11 00 01 10 11
qv qv
0 1 2 3 0 1 2 3 0 1 2 3
1 6 2 1 1 0 0 0 0 A E,1 C,0 B,1 E,1
2 6 3 1 1 0 0 0 0 B C,0 F,1 E,1 B,0
3 6 9 4 1 0 0 1 0 C B,1 A,0 D,1 F,1
4 5 6 7 8 1 0 1 0 D G,0 F,1 E,1 B,0
5 5 9 7 1 1 0 1 0 E C,0 F,1 D,1 E,0
6 6 6 1 1 0 0 0 0 F C,1 F,1 D,0 H,0
7 5 10 7 1 1 0 1 0 G D,1 A,0 B,1 F,1
8 6 2 1 8 0 0 0 0 H B,1 C,0 E,1 F,1
9 9 9 1 1 0 0 0 0
10 6 11 1 1 0 0 0 0
11 6 9 4 1 0 0 1 0
Asignación de estados

El número total de elementos de memoria NFF = r = variables de estado, estará


relacionado al número de estados NS = m del circuito, es decir:
2NFF - 1 < NS < 2NFF
2r - 1 < m < 2r
Por lo tanto, habrá un número de asignación de estados, NAE, igual a:
NAE = 2r! / (2r - m)!
Que es la forma de asignación de estados de 2r combinaciones de estados
binarios de asignación a los NS estados (m). La siguiente tabla muestra algunos
ejemplos numéricos:

NÚMERO DE
NÚMERO DE NÚMERO DE
NÚMERO DE VARIABLES
ASIGNACIONES ASIGNACIONES
ESTADOS (M) DE ESTADO
DE ESTADO (NAE) ESPECÍFICAS
(R)
1 0 - -
2 1 2 3
3 2 24 3
4 2 24 3
5 3 6,720 140
6 3 20,160 420
7 3 40,320 840
8 3 40,320 840
9 4 4.5x109 10'810,800
10 4 4.9x1010 75'675,600

Asignaciones útiles:
NAU = 2r - 1! / [(2r - m)! r!]
Criterios para la asignación de estados:
Regla I
A) Se deben examinar los renglones de la tabla reducida que tengan anotaciones
idénticas para el estado siguiente en cada columna. Estos renglones deben recibir
asignaciones adyacentes. De ser posible las anotaciones del estado siguiente en
esos renglones deben recibir asignaciones de acuerdo con la regla II.
B) Se verifican los renglones de la tabla de estados reducida que tienen las
mismas anotaciones del estado siguiente pero en diferente orden de columna. A
estos renglones se les deben dar asignaciones adyacentes. Las anotaciones del
estado siguiente pueden recibir asignaciones adyacentes.
C) Los renglones con anotaciones idénticas para el estado siguiente, en algunas
pero no en todas las columnas, deben recibir asignaciones adyacentes, en donde
los renglones que tengan más columnas idénticas asuman la máxima prioridad.
Regla II
Las anotaciones del estado siguiente para un renglón dado, deben recibir
asignaciones diferentes.
Regla III
Las asignaciones deben hacerse de tal manera que simplifiquen los mapas de
salida.

Ejemplo:
El principio de un mensaje de un sistema de comunicaciones en particular, se
denota mediante la aparición de 3 unos consecutivos en una línea x. Los datos en
esta línea se han sincronizado con una señal de reloj que tiene una salida 1 sólo
en el tiempo de reloj que coincida con el tercero de una secuencia de 3 unos en la
línea x. El circuito servirá para advertirle al sistema receptor sobre la iniciación de
un mensaje. Se propone un mecanismo de restauración independiente una vez
que concluya el mensaje. A continuación se presentan la carta de tiempo y el
diagrama de estados:
Tabla de Tabla
estados reducida
v v
q x=0 x=1 q x=0 x=1
q0 q4,0 q1,0 a q0 q0,0 q1,0
1 4,0 2,0
q q q a q1 q0,0 q0,0
0 4,0 3,1
q q q b q0 q0,0 q3,1
3 3,0 3,0
q q q a q3 q0,0 q3,0
4 4,0 1,0
q q q q =q4
0

A continuación se muestra la tabla correspondiente a la primera asignación.


Asimismo, se proponen multivibradores tipo J-K, cuya tabla de excitación se
muestra en seguida:

1ra. asignación MVB tipo J-K


x=0 x=1
qv y1 y0 + + + + Q Q+ J K
y 1y 0,z y 1y 0,z
q0 0 0 0 0,0 0 1,0 0 0 0 x
q1 0 1 0 0,0 1 1,0 0 1 1 x
q2 1 1 0 0,0 1 0,1 1 0 x 1
q3 1 0 1 0,0 1 0,0 1 1 x 0
Donde y1, y0 son los estados presentes y y+1, y+0 son los estados siguientes, para
x=0 y x=1. Combinando las dos tablas previas, se obtienen los valores para los
dos multivibradores J-K para los mapas de Karnaugh, como se muestra en la
siguiente tabla:

x=0 x=1
qv y1 y0
J1 K1 J0 K0 J1 K1 J0 K0
0
q 0 0 0 x 0 x 0 x 1 x
q1 0 1 0 x x 1 1 x x 0
q2 1 1 x 1 x 1 x 0 x 1
q3 1 0 x 0 0 x x 0 0 x

Los valores de esta tabla se encuentran de la siguiente manera: Para los valores
de J1 y K1, se consideran las columnas y1 y y+1 (corresponden a Q y Q+), de la
tabla 1ra. asignación; se buscan en la tabla de excitación del multivibrador J-K y
se determinan los valores de J1 y K1. Se sigue el mismo procedimiento para J0 y
K0. Los valores de z, se encuentran directamente de la tabla 1ra. asignación. A
continuación se presentan los mapas para determinar las funciones de entrada de
los multivibradores.
El logigrama correspondiente a la primera asignación es:

La tabla de estados correspondiente a la segunda asignación es:

2a. asignación
x=0 x=1
qv y1 y0 + +
y 1 y 0,z y 1 y+0,z
+

q0 0 0 0 0,0 1 1,0
q1 0 1 0 0,0 1 0,0
q2 1 1 0 0,0 0 1,1
q3 1 0 1 0,0 1 0,0

Nuevamente, combinando esta tabla con la tabla de excitación del multivibrador


tipo J-K, se tiene:

x=0 x=1
qv y1 y0
J1 K1 J0 K0 J1 K1 J0 K0
0
q 0 0 0 x 0 x 1 x 1 x
q1 0 1 0 x x 1 1 x x 1
q2 1 1 x 1 x 1 x 1 x 0
q3 1 0 x 0 0 x x 0 0 x

Esta tabla se obtuvo siguiendo el mismo procedimiento que en el caso anterior.


Los mapas de Karnaugh para la segunda asignación son:

El logigrama para la segunda asignación es:


La tabla de estados correspondiente a la tercera asignación es:

3a. asignación
x=0 x=1
qv y1 y0 + +
y 1 y 0,z y 1 y+0,z
+

q0 0 0 0 0,0 1 0,0
q1 0 1 0 0,0 1 1,1
q2 1 1 1 1,0 1 1,0
q3 1 0 0 0,0 0 1,0

Nuevamente, combinando esta tabla con la tabla de excitación del mnltivibrador


tipo J-K, se tiene:

x=0 x=1
qv y1 y0
J1 K1 J0 K0 J1 K1 J0 K0
0
q 0 0 0 x 0 x 1 x 0 x
q1 0 1 0 x x 1 1 x x 0
q2 1 1 x 0 x 0 x 0 x 0
q3 1 0 x 1 0 x x 1 1 x

Esta tabla se obtuvo siguiendo el mismo procedimiento que en el caso anterior.


Los mapas de Karnaugh para la tercera asignación son:
El logigrama para la tercera asignación es:
CIRCUITOS SECUENCIALES
ASÍNCRONOS
Un circuito secuencial se especifica por una secuencia temporal de entradas,
salidas y estados externos. En los circuitos secuenciales síncronos el cambio de
estado interno ocurre cuando hay un cambio en las variables de entrada. Los
elementos de memoria en los circuitos secuenciales asíncronos son ya sea flip-
flops sin reloj o elementos de retardo de tiempo. La capacidad de memoria de un
dispositivo con retardo de tiempo se debe al hecho de que toma un tiempo finito
para que la señal se propague a través de compuertas digitales. Un circuito
secuencial asíncrono con bastante frecuencia se asemeja a un circuito
combinacional con retroalimentación.
El diseño de los circuitos secuenciales asíncronos es más dicil que el de los
circuitos síncronos debido a los problemas de temporizado implicados en la
trayectoria de retroalimentación. En un sistema síncrono apropiadamente
diseñado, los problemas de temporizado se eliminan por el disparo de todos los
flip flops con el borde del pulso. El cambio de un estado al siguiente ocurre
durante el corto tiempo de la transición del pulso. Ya que el circuito asíncrono no
usa un reloj, se permite que cambie el estado del sistema inmediatamente
después de los cambios de entrada. Debe tenerse cuidado para asegurar que
cada nuevo estado mantenga el circuito en una condición estable aún cuando
exista una trayectoria de retroalimentación.
Los circuitos secuenciales asíncronos son útiles en una variedad de aplicaciones.
Se usan cuando es importante la velocidad de operación, especialmente en los
casos donde el sistema digital debe responder con rapidez sin tener que esperar
un pulso de reloj. Son más económicos para utilizarse en sistemas independientes
pequeños que requieren sólo unos cuantos componentes, donde puede no ser
práctico incurrir en el gasto de proporcionar un circuito para generar pulsos de
reloj. Los circuitos asíncronos son utiles en aplicaciones donde las señales de
entrada al sistema pueden cambiar en cualquier momento, con independencia de
un reloj interno. La comunicación entre dos unidades con cada unidad que tiene su
propio reloj independiente debe hacerse con circuito asíncronos. Los diseñadores
digitales con frecuencia producen un sistema mixto donde alguna parte del
sistema síncrono tiene las características de un circuito asíncrono. El conocimiento
del comportamiento de la lógica secuencial asíncrona es de ayuda para verificar
que el sistema digital total está operando en la forma apropiada.
Este tipo de circuitos contiene, además de lógica combinacional, elementos de
retardo. En muchas ocasiones, los circuitos no contienen elementos especificos de
retardo, sino que estos se logran gracias a los retardos de propagación de las
compuertas, a la longitud de los cables, etcétera.
MODALIDAD DE PULSO
(tipo 3)

Un circuito secuencial se dice estar operando en la modalidad de pulso, si se


satisfacen las siguientes condiciones:

A. Al menos una señal de entrada es un pulso.


B. Los cambios de los estados internos ocurren únicamente en respuesta a la
presencia de un pulso en las terminales de entrada.
C. Cada estado de entrada, con la ocurrencia de un pulso, origina únicamente
un cambio en el estado interno.
D. Todas las entradas de pulso deberán ser lo suficientemente amplias para
disparar un multivibrador (MVB).
E. Todos los MVB serán asíncronos, síncronos, pero disparados por flanco, o
de los llamados maestro-esclavo.
F. En las entradas no se permite la ocurrencia de dos o más pulsos en forma
simultánea.
G. Las tablas de los estados tendrán tantas columnas como pulsos de entrada
existan.
H. En los mapas de Karnaugh no es válido hacer enlaces horizontales, sólo se
permiten enlaces verticales.
I. Existen dos tipos de circuitos en esta modalidad: Mealy y Moore.
J. Un circuito de Mealy es aquel cuyas entradas y salidas son un pulso.

Un circuito de Moore es aquel cuyas entradas son pulsos y las señales de salida
son de nivel.
No existe un pulso maestro de control.
La señal de entrada solo se usa en forma complementada o no complementada,
pero no en ambas.
Como puede observarse en el modelo adjunto, un circuito de Mealy consta de dos
circuitos combinacionales, el primero maneja las señales de memoria y el segundo
las señales de salida. Las señales de salida dependen, no solamente de los
pulsos de entrada, sino también de los estados presentes.

En un circuito de Moore,
figura adjunta, las señales de
salida corresponden
exclusivamente a los estados
presentes.

Es importante tener en cuenta que las señales de entrada de un sistema


secuencial pueden ser de dos tipos:
Nivel: El estado de entrada y/o salida varia de un valor a otro sin problemas
de continuidad.
Impulso: Entre dos estados de entrada diferentes existe un estado inactivo en el
cual todas las variables toman el valor lógico cero.

Este tipo de circuitos requiere una atención especial, debido a que no existen
pulsos de reloj, como una referencia de tiempo, como se estudió en los circuitos
secuenciales síncronos.

Deberán observarse las siguientes condiciones:


1. Las transiciones de estado se iniciarán con los pulsos de entrada. Esto
reemplaza a los pulsos de reloj para provocar los cambios del circuito secuencial.
2. La forma de entrada para este tipo de circuitos es en paralelo, a diferencia de
los circuitos síncronos, cuya entrada es normalmente en forma de serie (2n).
3. En este tipo de circuitos, la entrada deberá ser complementada o no
complementada, pero no ambas a la vez.

La siguiente figura ejemplifica gráficamente las tres condiciones anteriores.


En el caso de que un circuito contenga, simultáneamente, una entrada
complementada con relación a las demás, no es posible determinar la tabla de
estados por el método de Karnaugh, siendo la única forma de determinar dicha
tabla, el diagrama de tiempos.
Ejemplo de análisis:

Considerar el circuito adjunto y determinar la


tabla de estados, mediante el diagrama de
tiempos y los mapas de Karnaugh.

secuencia de entrada: x1 x1 x2 x2 x1 x2

Además, no está permitido tener una entrada complementada, deben estar


complementadas las dos.

SOLUCIÓN

Para el análisis de tiempo, se determinan las expresiones lógicas para S, R y z.


De la figura anterior, se tiene:
S = x1 y'
R = x2 y
z = x1 y

De acuerdo con la
secuencia definida y las
expresiones anteriores,
se obtiene el siguiente
análisis de tiempo,
mostrado en el diagrama
adjunto. La tabla de
estados correspondiente
es:
Tabla de estados
x1 x2
y
00 01 10
0 0/0 0/0 1/0
1 1/0 0/0 1/1
estado siguiente/salida

La tabla anterior no contiene la columna 1 1, debido a que en estos circuitos no se


considera la posibilidad de la presencia simultánea de dos o más entradas.
Debido a que las transiciones de los pulsos de entrada proporcionan los
mecanismos para cambiar el estado de los elementos de memoria, la columna 0 0,
que implica sin cambio de estado para cualquier biestable, se puede suprimir sin
alterar la operación del circuito anterior.
Si en este ejemplo se reduce la tabla de estados a 2 columnas exactamente,
que representan los pulsos de entrada o bien x2.

x1 x2
y
0 11 0
0 0/0 1/0
1 0/0 1/1

Si: [x1 x2] = [0 1] = I0


[x1 x2] = [1 0] = I1

Entonces:

y I0 I1
a b/0 a/0
b b/1 a/0

I0 I0 I1 I1
a b b a a
0 1 0 0
Mapas de Karnaugh:

X1 x2 x1 x2
y y
00 01 10 0 00 1 1 0
0 00/0 00/0 10/0 0 0/0 0/0 1/0
1 00/0 01/0 00/1 1 1/0 0/0 1/1
yt yt+1

Simplificando:
x1 x2
y
0 11 0
0 0/0 1/0
1 0/0 1/1
Comprobación:
Entrada I0 I0 I1 I1 I0 I1
E.D. a b b a a b a
Z 0 1 0 0 0 0
EJEMPLO2

Considerar el circuito adjunto y determinar la tabla


de estados, mediante el diagrama de tiempos.

SOLUCIÓN
Observando el diagrama lógico, determinamos
las ecuaciones para los Flip Flops y la salida:
D1=D2= y1'
C1 = y2x
C2=x
z = xQ1Q2

El diagrama de tiempos resultante es entonces:

Tabla de estados
X=0 X=1
y1 y2
y1 y2/Z y1 y2/Z
00 00/0 01/0
01 01/0 11/0
11 11/0 00/1
10 10/0 10/0
estado siguiente / salida

En la tabla anterior se puede observar que mientras x=0(es decir, mientras no hay
un pulso a la entrada), el estado siguiente y la salida se mantienen iguales, lo que
significa que en análisis subsecuentes podemos eliminar esa columna sin
problema alguno, pues no contribuye en nada a nuestro análisis.

Tabla de estados
X
y1 y2
y1 y2/Z
00 01/0
01 11/0
11 00/1
10 10/0
estado siguiente / salida
SÍNTESIS DE CIRCUITOS SECUENCIALES DE
MODO POR PULSOS
(tipo 3)

El algoritmo utilizado para el diseño de circuitos secuenciales síncronos es


aplicable para los circuitos de modo por pulsos, es decir:
Derivar un diagrama y tabla de estado.
Minimizar las tablas de estado.
Realizar una asignación de estados.
Seleccionar un biestable y generar las tablas de transición y de salida.
Determinar las ecuaciones lógicas con los mapas de excitación y de salida.
Dibujar el circuito utilizando los biestables de memoria elegidos.

EJEMPLO 1
Diseñar un circuito que reconozca la secuencia: x1 x2 x2. Utilizar biestables tipo T.
SOLUCIÓN
La siguiente figura presenta el diagrama a bloques y el diagrama de estados:

El diagrama de estados lo formamos considerando un estado inicial e ir creando


nuevos estados conforme se vayan requiriendo, sin importar cuantos nuevos
estados se formen, ya que después se aplicará el Método de Reducción de
Estados.
En el presente ejemplo, consideremos que el circuito está en el estado inicial A.
Las posibles entradas, no simultáneas, son x1 y x2; si ocurre la entrada x2 el
circuito permanece permanece en ese estado y la salida es 0; si aplicamosx1, es
la primera condición a detectar y el circuito va al estado B, generando como salida
0.
Nuevamente en este estado, si ocurre una de las dos entradas, con x1 no hay
cambio de estado y con x2, que es la segunda condición a detectar, el circuito va
al estado C y genera como salida 0. En este estado, también pueden ocurrir x1 o
x2; con x2 vamos al estado inicial A y generamos como salida 1 (se detecta la
ocurrencia x1x2x2), con x1 retornamos al estado B, generando como salida 1.

Del diagrama de estados, se genera la tabla de estados:

Tabla de estados
Estado
presente x1 x2
y
A B/0 A/0
B B/0 C/0
C B/0 A/1
estado siguiente/salida

En la tabla de estados, y representa al estado presente y x1 y x2 las entradas.


Así por ejemplo, para el estado presente A y entrada x1, el estado siguiente es B y
la salida 0 (B/0); para el mismo estado presente y entrada x2, el estado siguiente
es A y la salida 0 (A/0), es decir, permanece en el mismo estado. De la misma
manera se analiza las otras alternativas.

Asignación de estados:

Asignación a) Asignación b)
y2 y2
0 1 0 1
0 A B (*) 0 A B
y1 y1
1 C 1 C

La asignación a) es por sustitución, llenando los estados siguiente/salida.

y1y2 x1 X2
A= 00 01/0 00/0
B= 01 01/0 10/0
D= 11 xx/x Xx/x
C= 10 01/0 00/1
Mapas de Karnaugh: Para los mapas K, se hace uso de la tabla de excitación del
multivibrador tipo T, el cual se seleccionó para este ejemplo, y la tabla anterior:

Tabla de
EXCITACIÓN
Q Q+ T
0 0 0
0 1 1
1 0 1
1 1 0

Combinando las tablas: Consiste en llenar los valores que debemos aplicar en la
entrada T para que se realice la transición de estado presente a estado siguiente.

x1 x2
Y1 y2
T1 T2 T1 T2
0 0 0 1 0 0
0 1 0 0 1 1
1 1 x x x X
1 0 1 1 1 0

Pasando a los mapas de Karnaugh:


El logigrama es:
EJEMPLO 2
Diseñar un circuito de modo por pulsos con 3 entradas x1, x2, x3 y una salida z.
La salida deberá cambiar de 0 a 1, si y sólo si, ocurre la secuencia x1 x2 x3,
mientras que haya sido igual a cero. La salida deberá cambiar de 1 a 0, sólo
después que ocurra x2 a la entrada.

SOLUCIÓN
En este ejemplo usaremos el modelo de Moore, en el cual la salida de los
estados se representa dentro del círculo.
La siguiente figura presenta el diagrama a bloques y el diagrama de estados:

Iniciamos nuevamente en un estado A. A continuación puede presentarse una


entrada al circuito que puede ser alguna de las señales x1, x2 o x3 (no mas de
una a la vez).
Si se aplicara x2 o x3, el circuito no cambia de estado, pero si se presenta x1 el
circuito recibe la primera condición a detectar y cambia de estado con salida 0.
Estando en el estado B, se pueden presentar 3 posibilidades: si se recibe x1 el
circuito no cambia de estado, si se aplica x3 retornamos al estado A para iniciar la
secuencia; finalmente, si se presenta x2 cambiamos de estado pero la salida en 0.
En el estado C, de las tres posibilidades, únicamente x3 genera una salida 1,
retornando al estado inicial con salida 0.
Tabla de estados:

Estado
Estado Salida
siguiente
presente
x1 x2 x3 Z
A B A A 0
B B C A 0
C B A D 0
D D A D 1

Se requieren dos variables binarias y1 y y2, para asignar los 4 estados, como se
muestra en la tabla de asignación de estados:

Asignación
de estados
y2
y1
0 1
0 A B
1 D C

De la tabla anterior se observa que a A se le asigna el código 00, a B el 01, a C


el 11 y a D el 10. Sustituyendo estos códigos en la tabla de estados:

Estado Estado
presente siguiente Salida
x1 x2 x3 z
y1 y2 + + + + + +
y 1y 2y 1y 2y 1y 2
A 0 0 0 1 0 0 0 0 0
B 0 1 0 1 1 1 0 0 0
C 1 1 0 1 0 0 1 0 0
D 1 0 1 0 0 0 1 0 1

Utilizando multivibradores S-R, cuya tabla de excitación es:

Tabla de
excitación
S-R
Q Q+ S R
0 0 0 x
0 1 1 0
1 0 0 1
1 1 x 0
Combinando las dos tablas anteriores:

Estado
Estado siguiente
presente Salida
x1 X2 x3 z
y1 y2
S1 R1 S2 R2 S1 R1 S2 R2 S1 R1 S2 R2
A 0 0 0 x 1 0 0 x 0 x 0 x 0 x 0
B 0 1 0 x x 0 1 0 x 0 0 X 0 1 0
C 1 1 0 1 x 0 0 1 0 1 x 0 0 1 0
D 1 0 x 0 0 x 0 1 0 x x 0 0 x 1

Hacemos ahora las agrupaciones directamente de la tabla de estados:

Estado
Estado siguiente
presente Salida
x1 X2 x3 z
y1 y2
S1 R1 S2 R2 S1 R1 S2 R2 S1 R1 S2 R2
A 0 0 0 x 1 0 0 x 0 x 0 x 0 x 0
B 0 1 0 x x 0 1 0 x 0 0 X 0 1 0
C 1 1 0 1 x 0 0 1 0 1 x 0 0 1 0
D 1 0 x 0 0 x 0 1 0 x x 0 0 x 1

S1 =x2y'1y2
R1= x1y2+ x2y1
S2 =x1y'1
R2= x2y1+ x3

La forma de obtener estas ecuaciones fue por medio de agrupaciones al estilo de


los mapas K, pero no lo son propiamente. También sigue estando presente el
concepto de hacer agrupaciones de estados adyacentes, pero estos solo se hacen
de forma vertical. Es fácil ver además, que la salida es:
z =y1 y'2
EJEMPLO 3
Determinar los diagramas de estado de los circuitos de Mealy y Moore, cuando se
tiene una secuencia x1x2x3 y la salida es 1 en el último pulso, es decir:

secuencia: x1x2x3 salida: z = 0 0 1

SOLUCIÓN
A continuación se presentan el diagrama de estados y la tabla de estados del
circuito de Mealy:

Tabla de estados
qv x1 x2 x3
q q /0 q /0 q0/0
0 1 2

q1 q2/0 q3/0 q0/0


q2 q2/0 q2/0 q0/0
q3 q0/0 q2/1 q2/1
qestado siguiente,salida

El diagrama de estados y la tabla correspondiente al circuito de Moore, son:


Tabla de estados
qv x1 x2 x3 z
q0 q1 q2 q0 0
q1 q2 q3 q0 0
q2 q3 q2 q0 0
q3 q0 q2 q4 0
q4 q2 q2 q0 1
x
opcionales
x
para los mapas
x

qn/S = estado presente/salida

EJEMPLO 4
Un ciclo de un sistema
digital está compuesto de
tres subciclos que deben
completarse en un cierto
orden. Para comprobar
esto, un verificador de
secuencia recibirá un
pulso de terminación de
cada subciclo y un pulso
de verificación cuando el
ciclo principal haya
concluido. Cuando llega el
ciclo de erificación K, el verificador de secuencia llega a restaurarse y emitir un
pulso de error, si los tres pulsos de terminación A, B y C no se recibieron en ese
orden. La figura adjunta muestra el diagrama a bloques del problema.

SOLUCIÓN
Existen 6 secuencias posibles:

ABC K Z=0
ACB K Z=1
BAC K Z=1
BCA K Z=1
CAB K Z=1
CBA K Z=1

A continuación se presentan el diagrama de estados (con el circuito de Mealy) y la


tabla de estados:

Tabla de estados
qv A B C K
q0 q1/0 q4/0 q4/0 q-/-
q1 q-/- q2/0 q4/0 q-/-
q2 q-/- q-/- q3/0 -/-
q3 q-/- q-/- q-/- q0/0
q4 q4/0 q4/0 q4/0 q0/1
Por observación de la tabla de estados, decimos que se trata de un circuito
incompletamente especificado. Por lo tanto, ahora no buscaremos estados
equivalente, sino estados compatibles.
Aplicando el método de implicantes:

Tabla reducida
qv A B C K
q0 q1,0 q4,0 q4,0 q0,0
q1 q-,- q2,0 q4,0 q-,-
q2 q-,- q-,- q0,0 q-,-
q4 q4,0 q4,0 q4,0 q0,1

La tabla de estados reducida quedó de esta manera: debido a que no existe


q0=q1=q2=q3, se rompieron los lazos q1+q3 y q2+q3 y los estados 1, 2 y 4 quedaron
como únicos.
Asignación de estados Tabla de excitación
Edo. presente A B C K MVB S-R
qv Z Q Q+
y1 y0 y 1 y 0 y 1 y 0 y 1 Y 0 y 1 y+0
+ + + + + + +
S R
q0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 x
q1 0 1 x x 1 1 1 0 x x X 0 1 0 1
q2 1 1 x x x x 0 0 x x X 1 0 1 0
q4 1 0 1 0 1 0 1 0 0 0 1 1 1 x 1
estados siguientes

Para determinar los valores, en los mapas de Karnaugh, para las funciones S1,
R1, S0, R0, se combinan las dos tablas anteriores, obteniéndose:

Estado
A B C K
presente
qv y1 y0 S1 R1 S0 R0 S1 R1 S0 R0 S1 R1 S0 R0 S1 R1 S0 R0
q0 0 0 1 x 0 1 0 1 1 x 0 1 1 x 1 x 1 x
q1 0 1 x x x x 0 1 x 1 0 1 1 0 x x x x
q2 1 1 x x x x x x x x 1 0 1 0 x x x x
q4 1 0 x 1 1 x x 1 1 x X 1 1 x 1 0 1 x

Los mapas de Karnaugh para cada entrada de los multivibradores y la salida


son:
El siguiente logigrama muestra el circuito verificador de secuencia:
MODO FUNDAMENTAL
(tipo 4)

Para asegurar la operación apropiada, los circuitos secuenciales asíncronos


necesitan alcanzar un estado estable antes de que la entrada se cambie a un
nuevo valor. Debido a los retardos en el alambrado y los circuitos de compuerta,
es imposible tener dos o mas variables de entrada cambiando exactamente en el
mismo instante sin una incertidumbre respecto a cuál cambia primero. Por tanto,
los cambios simultaneos de dos o mas variables por lo común se prohíben. Esta
restricción significa que solo una variable de entrada puede cambiar a la vez y el
tiempo entre dos cambios de entrada debe ser mas largo que el tiempo que toma
el circuito para alcanzar un estado estable. Este tipo de operación se define como
un modo fundamental. La operación en modo fundamental supone que las señales
de entrada cambian una a la vez y solo cuando el circuito está en una condición
estable.

Las características para este tipo de circuito secuencial, cuyo diagrama a bloques
se presenta en la siguiente figura, son:

1. t (tao) representa el tiempo de retardo mínimo para que ocurra una


transición. Este tiempo de retardo es el que se obtiene cuando una señal
viaja a través de una o más compuertas. Esto nos indica que la
retroalimentación es directa.
2. La entrada y la salida son de nivel.
3. Con respecto a las variables de entrada, no pueden haber dos cambios
en forma simultánea.
4. Un estado estable es aquel cuyo valor del estado presente es igual al
estado siguiente.
5. Cuando iniciamos un recorrido, a partir de un estado estable, siempre se
realizan dos movimientos, uno horizontal y otro vertical. El primero se da
cuando hay cambios en las señales de entrada y el segundo cuando,
partiendo de un estado estable, se llega a un estado inestable, lo cual
origina una búsqueda de un estado estable en esa columna.
6. En el proceso de diseño, no se permite más de un estado estable por
fila.
7. Las señales de salida son de nivel, por lo tanto, en el proceso de diseño,
se tendrán tantas columnas como señales de salida existan.
Análisis de circuitos secuenciales de Modo Fundamental.
El análisis de los circuitos secuenciales asíncronos consiste en obtener una tabla
o un diagrama que describe la secuencia de los estados internos y las salidas
como una función de los cambios en las variables de entrada. Un diagrama lógico
manifiesta un comportamiento del circuito secuencial asíncrono si tiene uno o más
lazos de retroalimentación o si incluye flip-flops sin control de reloj(llamados
latches). Para el análisis se utilizan dos herramientas: las tablas de transición y las
tablas de flujo.
Tabla de transición

La tabla de transición(o tabla de excitación) de los circuitos secuenciales


asíncronos es similar a la tabla de estado que se utiliza para los circuitos
síncronos. Si se consideran las variables secundarias como el estado presente y
las variables de excitación como el estado siguiente, se obtiene la tabla de estado.
Hay una restricción que se aplica al caso asíncrono pero no se aplica al síncrono.
En la tabla de transición asíncrona por lo común hay cuando menos una anotación
de estado siguiente que es la misma que el valor de estado presente en cada
renglón. De otra forma, todos los estados de ese renglón serían inestables.
Para obtener la tabla de transición a partir del diagrama del circuito:
Determínese todos los lazos de retroalimentación en el circuito.
Denótese la salida de cada lazo de retroalimentación con la variable Yi y su
entrada correspondiente con yi para i=1, 2, ..., k donde k es el número de lazos de
retroalimentación en el circuito.
Derívense las funciones booleanas para todas las Y como una función de las
entradas externas y las y.
Grafíquese cada función Y en un mapa, usando las variables y para los renglones
y las entradas externas para las columnas.
Combínense todos los mapas en una tabla mostrando el valor de Y=Y1Y2...Yk
dentro de cada casilla.
Enciérrense dentro del circuito los valores de Y en cada casilla que son iguales al
valor de y=y1y2...yk en el mismo renglón.
Una vez que está disponible la tabla de transición, el comportamiento del circuito
puede analizarse por la observación de las transiciones de estado como una
función de cambios en las variables de entrada.

Tabla de flujo

Durante el diseño de circuitos asíncronos es más conveniente denotar los estados


con símbolos alfabéticos sin hacer referencia específica a sus valores binarios.
Dicha tabla se denomina tabla de flujo. Una tabla de flujo es similar a una tabla de
transición excepto que los estados internos se simbolizan con letras en lugar de
números binarios. La tabla de flujo también incluye los valores de salida del
circuito para cada estado estable.
En la figura se muestra un ejemplo de tablas de flujo. La que se ilustra tiene cuatro
estados denotados con las letras a, b, c, d. Se reduce a una tabla de transición si
se asignan los siguientes valores binarios a los estados: a=00, b=01, c=11, d=10.
La tabla de flujo se conoce como Tabla de Flujo Primitiva, debido a que tiene sólo
un estado estable en cada renglón.

Tabla de flujo(izquierda) con su correspondiente


tabla de excitación(derecha)

Con objeto de obtener el circuito descrito por una tabla de flujo, es necesario
asignar a cada estado un valor binario distinto. Esta asignación convierte la tabla
de flujo en una tabla de transición mediante la cual puede derivarse el diagrama
lógico.

Condiciones de carrera

Se dice que existe una condición de carrera en un circuito secuencial asíncrono


cuando dos o más variables binarias de estado cambian de valor en respuesta a
un cambio en una variable de entrada. Cuando se encuentran retardos desiguales,
una condición de carrera puede provocar que las variables de estado cambien de
una manera impredecible. Por ejemplo, si las variables de estado deben cambiar
desde 00 a 11, la diferencia en retardos puede causar que la primera variable
cambie más rápido que la segunda, con el resultado de que las variables de
estado cambian en secuencia de 00 hasta 10 y entonces a 11. Si la segunda
variable cambia más rápido que la primera, las variables de estado cambiarán
desde 00 a 01 y entonces a 11. En consecuencia, el orden en el cual cambian las
variables puede no conocerse por anticipado. El estado final estable que alcanza
el circuito no depende del orden en el cual cambian las variables de estado, la
carrera se denomian carrera no crítica. Si es posible terminar en dos o más
estados estables diferentes dependiendo del orden en el cual cambian las
variables de estado, entonces es una carrera crítica. Para una operación
adecuada, deben evitarse las carreras críticas.

En resumen:

Algoritmo.
1. Determinar las ecuaciones de transición y salida del circuito.
2. Construir una tabla de transición.
3. Localizar y encerrar en un circulo todos los estados estables, en dicha tabla de
transición.
4. Asignar un símbolo no binario (un carácter) a cada hilera de la tabla.
5. Construir una tabla de flujo como sigue: Reemplazar cada estado estable de
excitación con el mismo símbolo que tiene asignado el estado secundario, así
como el de los estados inestables.
NOTA 1: Se considera un estado estable cuando el estado secundario sea igual al estado de
excitación, o sea:
yt = Yt

NOTA 2: Se considera un estado inestable, cuando el estado secundario sea diferente del estado
de excitación.
yt diferente Yt

De la tabla de excitación, separarla en dos partes; una que contenga únicamente los estados
secundarios y la otra con los estados de salida.

a) Para analizar la tabla de flujo, deberán de considerarse movimientos horizontales, cuando


existan cambios en la entrada.
b) Dentro de esta tabla de flujo, los movimientos verticales serán causados por las transiciones de
estados inestables a estados estables, sin cambio en las entradas.

EJEMPLO de análisis.
Analizar el siguiente circuito
determinando la tabla de flujo.

SOLUCIÓN
NOTA GENERAL: Dado que las
entradas pueden existir
simultáneamente, a diferencia del
modo por pulsos, no es posible
determinar la tabla de flujo mediante
el método de Karnaugh; sin
embargo, el diagrama de tiempos
permite determinar la operación del
circuito.

La figura adjunta,
muestra el diagrama de
tiempos:

NOTA: Para el análisis de este tipo


de circuitos, no se consideran las
inestabilidades en los flancos de
subida o de bajada de las señales de entrada. Igualmente, se desprecian los retardos inherentes a los retardos
generados por cada compuerta, los cuales, normalmente, los proporciona el fabricante.

En estos circuitos se evita el cambio de estado de cada entrada que ocurra


simultáneamente, por tratarse de un circuito asíncrono.

La siguiente figura, muestra las tablas de excitación, de flujo y de salida:

NOTA: De acuerdo a la tabla de


flujo, y en general para cualquier
caso, no podrán tenerse
cambios simultáneos, como en
este ejemplo, entre dos entradas
simultáneamente; es decir, no
están permitidos los cambios
entre las columnas 00 y 11 e
inversamente, también entre las
entradas 01 y 10 e inversamente.

SÍNTESIS DE CIRCUITOS SECUENCIALES DE


MODO FUNDAMENTAL
(tipo 4)

El diseño de un circuito secuencial asíncrono principia desde el planteamiento


del problema y culmina en un diagrama lógico. Hay un número de pasos de diseño
que deben llevarse a cabo con objeto de minimizar la complejidad del circuito y
producir un circuito estable sin carreras críticas. En forma breve, los pasos de
diseño son como sigue. Se obtiene una tabla de flujo primitiva mediante las
especificaciones de diseño. La tabla de flujo se reduce a un número mínimo de
estados Entonces se de una asignación binaria a los estados mediante la cual se
obtiene la tabla de transición. A partir de la tabla de transición se deriva el
diagrama lógico como un circuito combinacional con retroalimentación o como un
circuito con latches SR.
A continuación se presenta el algoritmo para el diseño de circuitos secuenciales
de modo fundamental, denominados así mismo de entrada por nivel.
1. Construir una tabla primitiva de flujo de la descripción del problema.
2. Reducir la tabla primitiva por tabla de implicantes y diagrama de Merger.
3. Realizar una asignación de estados secundarios.
4. Elaborar la tabla de excitación y de salida.
5. Determinar las ecuaciones lógicas para cada entrada y cada salida.
6. Seleccionar los elementos lógicos y dibujar el logigrama del circuito.

NOTA 1: Para construir la tabla primitiva de flujo deberá considerarse lo siguiente:


a) Existirá una columna por cada combinación de entrada.
b) Existirá una línea con un estado estable y su salida especificada.
c) Existirán dos estados inestables con salidas no especificadas.
d) Existirá una columna con un estado no especificado y salida igualmente no definida, separadas
de dos columnas del estado estable.

NOTA 2: En el trazado de la tabla de implicantes, el concepto de estados compatibles se


reemplaza por el de líneas compatibles, es decir, cuando exista un par de estados o más en una
celda, estas celdas podrán analizarse para localizar si estos pares de estados fueron cruzados
anteriormente. Esto es, únicamente quedarán celdas compatibles con el símbolo (paloma).

NOTA 3: La forma de llenar o completar las salidas que no están definidas, deberá de analizarse
cualquiera de las 3 posibilidades siguientes:
a) Deberá de asignarse una salida "x" a cada estado inestable que sea un estado transitorio entre
dos estados estables, cada uno de los cuales tiene una "x" asociada a sus salidas.
b) Establecer una salida 1 para cada estado inestable que sea un estado transitorio entre dos
estados estables, cada uno de los cuales tiene un 1 asociado a sus salidas.
c) Asignar una "x" para cada estado inestable que sea un estado transitorio entre dos estados
inestables, de los cuales uno de ellos tiene un 1 a su salida y el otro un 0 o inversamente.
Reducción de las tablas de estado y de flujo

El procedimiento para reducir el número de estados internos en un circuito


secuencial asíncrono se asemeja al procedimiento utilizado para los circuitos
síncronos.

Tabla de implicación

El procedimiento de reducción de estado para tablas de estado completamente


especificadas se basa en combinar varios estados en uno si se demuestra que
ambos estados son equivalentes. Dos estados son equivalentes si para cada
entrada posible dan exactamente la misma salida y pasan a los mismos estados
siguientes o a estados equivalentes. Hay ocasiones en que un par de estados no
tienen los mismos estados siguientes pero sin embargo pasan a estados
siguientes equivalentes. Considérese, por ejemplo, la siguiente tabla:

Estado Estado Siguiente Salida


Presente
X=0 X=1 X=0 X=1
A C B 0 1
B D A 0 1
C A D 1 0
D B D 1 0

Los estados presentes A y B tienen la misma salida para la misma entrada. Los
estados siguientes son c y d para x=0 y y a para x=1. Si puede demostrarse que el
par de estados C y D son equivalentes, entonces el par de estados A y B también
serán equivaletes porque tienen los mismos o equivalentes estados siguientes.
Cuando esta relación existe, se dice que (A, B) implica a (C, D). De igual forma,
los ultimos dos renglones muestran que el par de estados (C, D) implica el par de
estados (A, B). Pero como (A, B) implica a (C, D) y (C, D) implica a (A, B),
entonces ambos pares de estados son equivalentes, es decir, a y b son
equivalentes lo mismo que c y d.
La verificación de cada par de estados para equivalencia posible en una tabla con
un gran número de estados puede hacerse sistemáticamente mediante una tabla
de implicación. La tabla de implicación consta de casillas, una para cada par de
estados posibles. Usando esta tabla correctamente, es posible determinar todos
los pares de estados equivalentes. En la siguiente tabla se ilustrará este
procedimiento, con su correspondiente tabla de implicación. En la tabla de
implicación, se listan todos los estados definidos en la tabla de estado, excepto el
primero, del lado izquierdo a lo largo de la vertical; a través de la parte inferior en
sentido horizontal se listan todos los estados excepto el último. Como resultado
obtenemos todas las combinaciones posibles.
Dos estados no equivalentes se marcan con una cruz, en cambio se les pone una
marca de verificación si sí lo son. Al resto de las casillas se les debe hacer la
anotación de sus implicaciones. Al completar la tabla, se verifica si se cumplen las
implicaciones; de ser así, se les marca como equivalentes.

Estado Estado siguiente Salida


presente
X=0 X=1 X=0 X=1
A D B 0 0
B E A 0 0
C G F 0 1
D A D 1 0
E A D 1 0
F C B 0 0
G A E 1 0
Tabla de estados Tabla de implicación
correspondiente

Según nuestra tabla de implicación, los estados (a, b), (d, e), (d, g), (e, g), son
equivalentes.

Fusión de tablas de flujo

Hay ocasiones en que la tabla de estado para un circuito secuencial está


especificada de manera incompleta. Esto sucede cuando ciertas combinaciones
de entrada no pueden suceder jamás por restricciones internas o externas. Estos
estados se consideran condiciones no importa. Nos interesa analizar los circuitos
secuenciales asíncronos en que la tabla de flujo primitiva está especificada de
manera incompleta.
Es posible combinar estados no especificados completamente para reducir el
número de estados en la tabla de flujo. Sin embargo, estos estados no pueden
llamarse equivalentes, más bien, cuando dos estados tienen la posibilidad de
combinarse se les conoce como estados compatibles.
Para encontrar un grupo adecuado de compatibles, se siguen tres pasos:
determinar la compatibilidad con una tala de implicación, obtener los compatibles
maximales usando un diagrama de fusión; y encontrar una colección mínima de
compatibles que cubran todos los estados.
Tablas de flujo e implicación

Al igual que antes, los estados son compatibles si no hay conflicto en los valores
de salida, o si tienen los mismo estados siguientes. Esta vez, los estados
compatibles son:
(a, b), (a, c), (a, d), (b, e), (b, f), (c, d), (e, f)

Diagramas de fusión

Ahora que ya tenemos los estados compatibles, procedemos a hacer un diagrama


de fusión(también conocido como diagrama de Merger). Este tipo de diagrama
consiste en un circulo, en el cual se marcan tantos puntos como estados
tengamos, y a cada uno se le nombre como cada uno de los estados. A
continuación, unimos con una línea los estados compatibles:

Podemos fusionar dos estados en uno solo si estos están unidos con una línea(a y
b por ejemplo), o tres estados en triángulo(a, c, d,) o cuatro o más estados
dispuestos como un polígono de n lados con todas sus diagonales conectadas(no
hay ninguno de este tipo en el diagrama). Sin embargo, un nodo que ya este
agrupado no se puede agrupar con otra cosa; por ejemplo, si agrupamos a con b,
a ya no se podrá agrupar con c y d, ni b con e y f. Como es lógico, es preferible
hacer agrupaciones mas grandes para fusionar más estado. Si agrupamos los
triángulos, a y b no se fusionan, pero sí (a, c, d) y (b, e ,f). De esta forma,
reducimos nuestros 6 estados originales a dos estados fusionados.

EJEMPLO 1
Diseñar un circuito secuencial de modo fundamental, con dos entradas x1, x2 y
una salida z. Cuando x1=0, la salida z=0, al primer cambio de x2 cuando x1=1,
provocará un cambio a la salida z=1. z cambiará a 0 cuando x1=0.

SOLUCIÓN
El diagrama de árbol, se presenta en la figura siguiente:

El diagrama de tiempos y la tabla primitiva de flujo se presentan en la siguiente


figura:
En los renglones de la tabla primitiva de flujo, ponemos los estados distintos del
diagrama de árbol y en las columnas las combinaciones entre las variables x1 y x2
y vaciamos las trayectorias del árbol.
Utilizamos el método de implicantes para la simplificación de renglones de la
tabla primitiva de flujo, creamos las compatibilidades (las palomas) y realizamos el
diagrama de Merger, como lo muestra la siguiente ilustración:

A continuación escogemos los estados compatibles y realizamos la asignación de


estados:
Los mapas de Karnaugh y las ecuaciones lógicas son:
El logigrama se presenta en la siguiente figura:

EJEMPLO 2

Diseñar un circuito secuencial de modo fundamental con dos entradas x1x2 y dos
salidas z1z2. Cuando x1x2 sean iguales a 00, las salidas z1z2 serán iguales a 00.

Si x1x2 = 00,01,11; las salidas z1 z2 = 1 0


Si x1x2 = 00,10,11; las salidas z1 z2 = 0 1

Cuando se cumplan estas dos secuencias o condiciones anteriores, las salidas


permanecerán como está indicado hasta no detectar x1x2 = 00, en cuyo caso las
salidas regresarán a 00.

SOLUCIÓN
A continuación se presenta paso a paso el desarrollo de la solución del
problema, indicando en cada figura la acción a tomar.
5. El logigrama es:
EJEMPLO 3
Diseñar un circuito que controle
la barra de un estacionamiento
público, cuyo diagrama a bloques
se muestra en la figura adjunta,
de autos compactos; el circuito
debe ser totalmente
automatizado. Consta de un
receptor de monedas, un sensor
infrarrojo y un interruptor (sensor)
de piso. Lo anterior debe accionar
en conjunto y en la secuencia que
se especificará, a una barra para
controlar la barra de entrada a
dicho estacionamiento. Primero estará colocado el receptor de monedas, más
adelante el receptor infrarrojo y poco antes de llegar a la barra el interruptor de
piso. Cuando se deposite una moneda o la cuota establecida, el auto avanzará
hasta interrumpir el haz de luz, poco después la llanta delantera oprimirá por
primera vez el interruptor de piso, el auto avanzará y oprimirá por segunda ocasión
el interruptor de piso, el auto seguirá avanzando y dejará libre el haz de luz, con lo
que completará un ciclo de funcionamiento.
Una posible eventualidad, podría ser que tratasen de entrar (uno tras otro),
entonces, el interruptor de piso al detectar una tercera llanta, la barra bajará
dañando al segundo auto; al interrumpir el haz de luz sin depositar una moneda, la
barra no se levantará y cualesquier otros tipos de secuencias, que se salgan de lo
establecido, serán nulas.
DISEÑO

Del diagrama se definen las siguientes variables y sus valores lógicos:

Variables de entrada
M = moneda 1 = depositada
F = foto celda 1 = haz interrumpido
S = sensor de piso 1 = activado
Variable de salida
Z = barra 1 = arriba

1. b) Tabla primitiva de flujo: Como muchas condiciones no se van a presentar,


es posible anotar directamente sobre la tabla los estados con sus transiciones.
2. a) Reducción de la tabla de estados:
Tabla reducida:
000 001 011 010 110 111 101 100 z
1 - - - - - - 2 0
- - - - 2 4 - 2 1
- - - - 5 4 - - 1
- - - - 5 6 - - 1
- - - - 7 6 - - 1
- - - - 7 8 - 8 1
- - - - 8 8 - 8 1

2. Asignación de estados:
Estados presente Estados siguientes
qv
y3 y2 y1 000 001 011 010 110 111 101 100
1 0 0 0 000 xxx xxx xxx xxx xxx xxx 001
2 0 0 1 xxx xxx xxx xxx 001 011 xxx 001
4 0 1 1 xxx xxx xxx xxx 010 011 xxx xxx
5 0 1 0 xxx xxx xxx xxx 010 110 xxx xxx
6 1 1 0 xxx xxx xxx xxx 111 110 xxx xxx
7 1 1 1 xxx xxx xxx xxx 111 101 xxx 101
8 1 0 1 000 xxx xxx xxx 101 101 xxx 101
x 1 0 0 xxx xxx xxx xxx xxx xxx xxx xxx

4. Utilizando mapas de Karnaugh, usando biestables tipo D:


5. El logigrama para Y3, Y2, Y1
y Z es:

NOTA: Los biestables tipo D no son


necesarios, ya que la conexión se
puede utilizar como retardo.

EJEMPLO 4
Diseñar un sistema de
control de un semáforo
instalado en un crucero de
una vía de ferrocarril y
una carretera, según se
muestra en la figura
adjunta:
El semáforo está
controlado por dos
sensores x1 y x2,
considerados a una
distancia tal que la
longitud del tren alcanza
los dos sensores a la vez.
Un sensor enciende
cuando el tren está sobre él y se apaga si no sucede esto. La luz cambia de verde
(lógica 0) a rojo (lógica 1) cuando la parte delantera del tren se encuentra a un
kilometro del crucero. La luz cambia regresando a verde cuando el extremo
posterior del tren se encuentra a un kilometro de dicho crucero.
Considerar que por la vía sólo transita un tren y puede ser en cualquiera de los
dos sentidos.

SOLUCIÓN
Las siguientes figuras muestran el desarrollo gráfico del problema.
El logigrama es:

EJERCICIOS
1. Analizar el siguiente
circuito y determinar la
tabla de estados por
diagramas de tiempo y
mapas de Karnaugh.

3. Diseñar un circuito
de modo por
pulsos con
biestables S-R. El
circuito constará
de dos entradas
x1, x2 y una salida
z. Se producirá un
pulso a la salida
simultáneamente
con el último pulso de una secuencia de 3 pulsos a la entrada, si y sólo si,
la secuencia contiene al menos dos pulsos x1.
3. Analizar el siguiente
circuito y determinar la
tabla de flujo que
representa la operación
del mismo.

4. Analizar el siguiente
circuito:

5. Diseñar el circuito
de modo
fundamental que
consta de dos
entradas x1x2 y
una salida z. Se
producirá una
salida z=0 cuando
x1 sea igual a
x2=0. Cuando
x1=0 y x2 cambia
de 0 a 1, ocurrirá una salida z=1. Cuando x1=1 y x2 cambia de 1 a 0,
ocurrirá una salida z=1. En los demás casos z=0.

6. Diseñar un circuito de modo fundamental, que tiene dos entradas x1x2 y una
salida z. z=1 sólo cuando x1x2 sea igual a 10 y sea el cuarto de la secuencia de
combinaciones de entrada 00, 01, 11, 10. De otra forma z=0.

7. En circuitos de
cómputo o de control, se
tiene el problema de
rebotes, al utilizar
conmutadores para pasar
de un nivel a otro. Diseñar
un circuito de modo
fundamental, que elimine
estos rebotes, según el
principio adjunto:
En el tiempo t1 se cambia
de posición el conmutador
de A hacia B, se realiza el
contacto en B y en
seguida se producen pulsos de corta duración, llamados rebotes, hasta que se
establece el contacto definitivo en el tiempo t2.
Suponer que una vez hecho el contacto en B ya no hay más rebotes, hasta no
cambiar el conmutador a la posición A (t3).

8. Otra implementación
en sistemas de cómputo
es el control que permite
seguir paso a paso las
instrucciones de un
programa, en un ciclo a la
vez. Para esto, se utiliza
un interruptor de presión
(PB) que opera bajo el
principio mostrado en la
figura adjunta:
La señal PB se puede
generar aleatorianmente y
debe considerarse que
siempre es mayor que el
período de dos pulsos de
reloj y nunca coinciden
con las transiciones de los flancos de subida o de bajada del mismo reloj.

9. Diseñar un circuito con dos entradas x1, x2 y dos salidas z1, z2, que satisfaga lo
siguiente:

a) Si x1x2 = 0 0; z1z2 = 0 0
b) Cuando x1 = 1 y x2 cambia de 0 a 1; z1z2 = 0 1
c) Cuando x2 = 1 y x1 cambia de 0 a 1; z1z2 = 1 0
d) Para cualquier otra forma de entrada, las salidas no cambian.

10. Diseñar un circuito con dos entradas x1, x2 y una salida z. Al principio, tanto
las entradas como la salida son iguales a cero. Cuando x1 o x2 llegan a ser 1, z
pasa a 1. Cuando la segunda entrada también llega a ser 1, la salida cambia a 0,
permaneciendo así hasta que el circuito detecte la condición inicial x1x2 = 00.
11. Diseñar un generador
de retardo, de acuerdo al
principio adjunto: