SlideShare una empresa de Scribd logo
"ESCUELA POLITÉCNICA NACIONAL"
r r
FACULTAD DE INGENIERÍA ELÉCTRICA
TESIS DEGRADO
"DISEÑO SECUENCIAL SINCRÓNICO ASISTIDO POR
COMPUTADOR"
TESIS PREVIO A LA OBTENCIÓN DEL TITULO DE
INGENIERO EN ELECTRÓNICAY
TELECOMUNICACIONES
SERGIO L. CLAVTJO MORENO
QUITO, 28 DE NOVIEMBRE DE 1997
Certifico que la presente tesis
ha sido realizada en su
totalidadpor elSeñor Sergio L.
Clavijo Moreno, bajo mi
afección.
Direcfor^de Tesis
A GRADECIMIENTO
Al Ing. Carlos Novillo por su
sincera colaboración en el
desarrollo de esta Tesis. Deseo
también expresar mi afecto
sincero a iodos aquellos
amigos que colaboraron con
su apoyo en la culminación de
esta Tesis.
ÍNDICE
CAPITULO I
1.- INTRODUCCIÓN A LOS SISTEMAS DIGITALES SECUENCIALES 1
1.1.- Introducción.. 1
1.2.- Elementos Biestables 5
1.2.1.- Circuito básico deunFlip -Flop 5
1.2.2.- Flip - Flop tipo SR temporizado 8
1.2.3.- Flip - Flop tipo D temporizado 10
1.2.4.- Flip -Floptipo JKtemporizado 12
1.2.5.- Flip -Flop tipo T temporizado 15
1.2.6.- Disparo de los Flip -Flops 16
a)Flip - Flop Maestro Esclavo 18
b) Flip - Flop Disparado por Flanco 18
1.3.- Sistemas Digitales Secuenciales 20
1.3.1.- Diseño Secuencia!Asincrónico 23
a) Ejemplo de Análisis 26
b) Ejemplo de Diseño 29
1.3.2.- Diseño Secuencia! Sincrónico 32
a) Tabla de Estado 34
b) Diagrama de Estado 36
c) Ecuaciones de Estado 37
1.4.- Contadores Sincrónicos 41
1.4.1.- Contador Binario 42
1.4.2.- Contador Binario CrecienteDecreciente 43
1.4.3.- Contador Binario con carga enParalelo 44
1.4.4.- Contador de Anillo 46
1.4.5.- Contador Johnson 47
1.5.- Registros de Desplazamiento 49
1.5.1.- Registro de Desplazamiento con carga serialy paralelo 51
1.5.2.- Registro de Desplazamiento a Izquierda y Derecha 52
1.6.- Detectores de Secuencias de Códigos 54
índice1
1.6.1.- Reducción de Estados 56
a) Eliminación de Estados por Partición 63
b) Reducción de estados redundantes por medio de la Tabla de
Implicación 66
c) Condiciones No Importa o Términos sin Efecto 74
1.6.2.- Asignación de Estados 75
1.6.3.- Tabla Característica y de Excitación de los Flip Flops 79
CAPITULO II
2.- DISEÑO SECUENCIAL SINCRÓNICO POR EL MÉTODO 82
TRADICIONAL
2.1.- Procedimientos y Ejemplos de Diseño Secuencia! Sincrónico 83
2.2.- Problema General del Diseño Secuencia! Sincrónico 90
2.2.1.- Contadores Sincrónicos 95
2.2.2.- Registros de Desplazamiento 99
2.2.3.- Detectores de Secuencia de Códigos 102
2.3.- Diseño Secuencia! Sincrónico Utilizando Memorias ROM 112
CAPITULO III
3.- DISEÑO SECUENCIAL SINCRÓNICO ASISTIDO POR 116
COMPUTADOR
3.1.- Diagrama de Flujo y Descripción del Programa de Controly Ayudas 119
3.1.1.- Descripción del Programa Principal 119
3.1.2.- Descripción delPrograma de Ayudas 122
3.2.- Diagrama de Flujo de un Programa Tutoría! 124
3.3.- Diagrama de Flujo y Descripción del Programa General de Diseño
Secuencia! Sincrónico 126
3.4.- Diagrama de Flujo y Descripción de Programas Internos 128
3.5.- Diagrama de Flujo del Diseño Secuencia! Sincrónico Utilizando ROM.... 143
índice!
CAPITULO IV
4.- EJEMPLOS DE UTILIZACIÓN DEL PROGRAMA 145
4.1.- Programa Tutorial 146
4.1.1.- Tutorial para el Diseño de Contadores Sincrónicos 147
4.2.- Programa General del Diseño Secuencia! Sincrónico 153
4.2.1.- Contadores Sincrónicos 153
4.2.2.- Detectores de Secuencia de Códigos 160
4.3.- Programa de Diseño Secuencia! Sincrónico Utilizando ROM 166
CAPITULO V
5.- RESULTADOS, CONCLUSIONES Y RECOMENDACIONES 168
Bibliografía 173
Anexos 175
índice 3
1.- INTRODUCCIÓN A LOS SISTEMAS DIGITALES
SECUENCIALES
1.1.- INTRODUCCIÓN
Los circuitos lógicos para los sistemas digitales pueden ser combinacionales o
secuenciales. Un circuito combinacional consiste de compuertas lógicas cuyas salidas se
determinan directamente en cualquier momento dependiendo únicamente de la combinación
presente en las entradas sin tener en cuenta la combinación anterior de las mismas. Un
circuito secuencia! realiza una operación de procesamiento de información específica y
completamente lógica por medio de un conjunto de funciones de Boole. Los circuitos
secuenciales usan elementos de memoria (celdas binarias), además de compuertas lógicas.
Sus salidas son una función de la combinación presente en las entradas y del estado de los
elementos de memoria en el instante analizado. El estado de los elementos de memoria, a su
vez es una función de la combinación previa de las entradas. Como consecuencia, las salidas
de un circuito secuencial dependen no solamente de la combinación presente en las
entradas, sino también de la combinación pasada de las entradas, y el comportamiento del
circuito debe especificarse por medio de una secuencia de tiempos de las entradas y estados
internos que se encuentran presentes en los elementos de memoria.
Aunque cada sistema digital debe tener circuitos combinacionales, la mayoría de los
sistemas encontrados en la práctica incluyen también elementos de memoria, los cuales
requieren que el sistema se describa en términos de lógicasecuencial.
Página 1
Un diagrama de bloques de un circuito secuencial se muestra en la Figura 1.1. Este
consiste de un circuito combinacional al cual se le conectan elementos de memoria para
formar un camino de realimenlación. Los elementos de memoria son capaces de almacenar
información binaria dentro de ellos. La información binaria almacenada en los elementos de
memoria en un tiempo dado define el estado del circuito secuencial.
Entrada
Circuito combinacional
Elementos de
memoria
Salida
FIGURA 1.1: Diagrama de bloques de un circuitosecuencial.
El circuito secuencial recibe la información binaria de las entradas externas. Estas
entradas, conjuntamente con el presente estado de los elementos de memoria, determinan el
valor binario de los terminales de salida. El diagrama de bloques demuestra que las salidas
externas de un circuito secuencial son una función no solamente de las entradas externas sino
del presente estado de los elementos de memoria. El estado siguiente de los elementos de
memoria es también una función de las entradas externas y del estado presente. Así un
circuito secuencial se especifica por medio de una secuencia de tiempo de las entradas,
salidas y estados internos.
Hay dos tipos de circuitos secuenciales. Su clasificación depende del tiempo de sus
señales. Un circuito secuencial sincrónico es un sistema cuyo comportamiento puede
Página 2
definirse a partir del conocimiento de sus señales en instantes discretos de tiempo. En los
sistemas sincrónicos la salida correspondiente a unas determinadas condiciones de entrada se
difiere hasta la recepción de una señal de tiempo. Esta señal de tiempo se suministra
simultáneamente a todas las partes del sistema para asegurar el funcionamiento sincrónico de
las mismas. Estas señales de tiempo son trenes de impulsos que se generan
independientemente del sistema, en un generador de impulsos o "rdofl comportamiento
de un circuito asincrónico dependen del orden en que cambien las señales de entrada y
puedan ser afectadas en un instante dado de tiempo. Los elementos de memoria
comúnmente usados en los circuitos secuenciales asincrónicos son mecanismos retardadores
de tiempo. En los sistemas asincrónicos, las distintas partes del sistema no están
sincronizadas por los impulsos de reloj, aquí es necesario que las distintas salidas mantengan
su valor hasta recibir una orden de cambio del resto del sistema.
La capacidad de memoria de los mecanismos retardadores de tiempo se debe al
hecho de que la señal gasta un tiempo finito para propagarse a través del dispositivo. En la
práctica, el retardo de propagación interna de las compuertas lógicas es de una duración
suficiente como para producir el retardo necesario, de tal manera que las unidades físicas de
retardo de tiempo pueden ser despreciables. En los sistemas asincrónicos tipo compuerta, los
elementos de memoria de la Figura 1.1 consisten en compuertas lógicas cuyos retardos de
propagación constituyen la memoria requerida. Así, un circuito secuencia! asincrónico puede
tomarse como un circuito combinacional con realimentación. Debido a la realimentación
entre las compuertas lógicas, un circuito secuencia! asincrónico puede a veces volverse
inestable. El problema de inestabilidad impone muchas dificultades al diseñador. Por lo
tanto, su uso no es tan común como los sistemas secuenciales sincrónicos.
Página 3
Un sistema lógico secuencia! sincrónico, por definición, puede usar señales que
afecten a los elementos de memoria solamente en instantes discretos de dempo. Una forma
de lograr este propósito es usar sistemas de pulsos de duración limitada a través del sistema,
de tal manera que la presencia o amplitud determinada de un pulso represente un 1 lógico y
la ausencia del pulso (u otra amplitud) represente un Ológico. L¿ dificultad con un sistema
de pulsos es que cualquier par de pulsos que lleguen de fuentes separadas independientes a
las entradas de la misma compuerta mostrarán retardos no predecibles de tal manera que se
separarán los pulsos ligeramente, resultando una operación no confiable.
Los sistemas lógicos secuenciales sincrónicos prácticos isan amplitudes fijas tales
como niveles de voltaje para las señales binarias. La sincronización se logra por un
dispositivo de tiempo llamado generador maestro de tiempo el cual genera un tren
periódico de pulsos de reloj. Los pulsos de reloj se distribuyen a través del sistema de tal,
manera que los elementos de memoria son afectados solamente con la llegada del pulso de
sincronización. En la práctica, el pulso de reloj se apHca a las compuertas conjuntamente con
las señales que especifican los cambios requeridos en los elementos de memoria. Las salidas
de las compuertas pueden transmitir señales solamente en los instantes que coinciden con la
llegada de los pulsos de reloj.
Los circuitos secuenciales sincrónicos que usan pulsos de reloj en las entradas de los
elementos de memoria se llaman circuitos secuenciales temporizados. Los circuitos
secuenciales temporizados son el tipo más comúnmente usado. No presentan problemas de
inestabilidad y su temporización se divide fácilmente en pasos discretos independientes, cada
uno de los cuales se consideraseparadamente.
Página 4
1.2.- ELEMENTOS BIESTABLES
•
Los elementos de memoria usados en los circuitos secuenciales temporizados se
llaman elementos biestables, más comúnmente conocidos como "Flip - JFlops" (FFs). Estos
circuitos son celdas binarias capaces de almacenar un bit de información. Un circuito
biestable Flip - Flop (FF) tiene dos salidas, una para el valor normal y otra para el valor
complementado del bit almacenado en él. La información binaria puede entrar a un FF en
una variedad de formas, éste hecho, determina diferentes tipos de FFs.
El circuito de un FF puede mantener un estado binario indefinidamente (siempre y
cuando se esté suministrando energía al circuito) hasta que se entregue una señal de entrada
que permita cambiar de estado. La principal diferencia entre los varios tipos de FFs es el
número de entradas que poseen y la manera en la que las mismas afectan el estado binario.
Los tipos de FFs más comunes se discuten a continuación.
1.2.1.- CIRCUITO BÁSICO DE UN FLIP-FLOP
o—i
O—I
s
1
0
0
0
1
R
0
0
1
0
1
Q
1
1
0
0
0
Q1
0
0
1
1
0
a) Diagrama lógico b)Tabla de verdad
FIGURA 1.2: CircuitoBásico de un Flip - Flop con compuertasÑOR.
Página 5
El circuito de un FF puede construirse con dos compuertas NAND o con dos
compuertas ÑOR. Estas construcciones se muestran en los diagramas lógicos de las Figuras
1.2 y 1.3. Cada circuito forma un FF básico en base al cual se puede construir uno más
complicado. La conexión de acoplamiento mtercruzado de la salida de una compuerta a la
entrada de la otra constituye un camino de realimenLación. Por esta razón, los circuitos se
clasifican como circuitos secuenciales asincrónicos. Cada FF tiene dos salidas, Q y QJ cuyos
niveles lógicos son complementarios (con las excepciones que se observan en las tablas
respectivas) entre sí y dos entradas S (set, poner a 1) y R (reset - clear, reponer - borrar o
poner a cero). Este tipo de FF sellama Flip - Flop SR acoplado directamente.
S
1
1
0
1
0
R
0
1
1
1
0
Q
0
0
1
1
1
Q1
i
i
0
0
1
R
a) Diagrama lógico b) Tabla de verdad
FIGURA 1.3: Circuito Básico de un Flip - Flop con compuertas NAND.
Para analizar la operación del circuito de la Figura 1.2 se debe recordar que la
salida de una compuerta ÑOR es Osi cualquier entrada es 1 y que la salida es 1 solamente
cuando todas las entradas son 0. En éste análisis se debe asumir un punto de partida,
asúmase que la entrada S es 1 y que la entrada R es 0. Como la compuerta 2 tiene una
entrada de 1, su salida Q' debe ser O, lo cual coloca ambas entradas de la compuerta 1 en O,
Página 6
esto determina que la salida Q sea 1. Cuando la entrada S vuelve a O, las salidas
permanecerán iguales ya que la salida Q sigue siendo 1, dejando una entrada de la
compuerta 2 en 1. Esto causa que la salida QJ permanezca en O lo cual coloca ambas
entradas de la compuerta 1 en Oy así la salida Q es 1. De la misma manera es posible
demostrar que un 1 en la entrada R cambia la salida Q a O y QJ a 1. Cuando la entrada de
puesta a cero cambia a O,las salidas no cambian.
Cuando se aplica un 1 a ambas entradas, las salidas Q y Q' van a O esta
combinación viola el hecho de que las salidas Q y Q* son complementarias entre sí. En
operación normal esta condición debe evitarse asegurándose que no se aplique un 1 a ambas
entradas simultáneamente.
Un FF tiene dos entradas útiles. Cuando Q = 1 y Q' = O estará en el estado de
puesta a uno (o estado 1). Cuando Q = O y Q' = 1 estará en el estado depuesta a cero (o
estado cero). Las salidas Q y Q' son complementarias entre á, se les trata como salidas
normal y complemento respectivamente. El estado binario de un FF se toma como el estado
binario de su salida normal.
Bajo operación normal, ambas entradas deben permanecer en O a no ser que se
quiera cambiar el estado del FF. La aplicación de un 1 momentáneo a la entrada S causará
que el FF vaya al estado 1 (Set), esta entrada debe volver a Oantes que se aplique un 1 a la
entrada R. Un uno momentáneo aplicado a la entrada R causará que el FF vaya al estado
cero o de borrado (Clear). Cuando ambas entradas son inicialmente Oy se aplica un 1 a la
entrada S mientras que el FF esté en el estado 1 (Set) o se aplica un 1 a la entrada R
Página 7
mientras que el FF esté en el estado cero o de borrado (Clear), no existirán cambios en las
salidas del FF.
El circuito del FF básico NAND de la Figura 1.3 opera normalmente con ambas
entradas en 1 a no ser que el estado del FF tenga que cambiarse. La aplicación de un O
momentáneo a la entrada de puesta a uno, causará que Q vaya a 1y Q' vaya a O,llevando el
FF al estado de puesta a uno. Después que la entrada de puesta a uno vuelva a 1, un cero
momentáneo en la entrada de puesta a cero causará la transición al estado de borrado
(Clear). Cuando ambas entradas vayan a 0? ambas salidas irán a 1; esta condición se evita en
operación normal de un FF de este tipo, por ser una condición inestable.
1.2.2.- FLEP - FLOP TIPO SR TEMPORIZADO
El FF básico por sí solo es un circuito secuencia! asincrónico. Agregando
compuertas a las entradas del circuito básico, puede hacerse que el FF responda a los niveles
de entrada durante la ocurrencia de un pulso de reloj. El FF SR temporizado mostrado en la
Figura 1.4 (a) consiste de un FF básico ÑOR y dos compuertas AND.Las salidas de las
dos compuertas AND permanecen en cero mientras el pulso del reloj Ck sea O,
independientemente de los valores de las entradas S y R. Cuando el pulso de reloj vaya a 1,
la información de las entradas S y R se transfiere al FF básico. El estado de puesta a 1 se
logra con R = O, S = 1 y Ck = 1. Para cambiar el estado de puesta a O (o borrado) las
entradas deben ser R = 1, S = O y Ck =1. Con R = 1 y S = 1, la presencia de un pulso de
reloj causará que ambas salidas vayan momentáneamente a 0. Cuando se quite el pulso, el
estado del FF será indeterminado, es decir podría resultar cualquier estado, dependiendo de
Página 8
sí la entrada de puesta a 1 o la de puesta a Odel FF básico pennanezcan el mayor tiempo,
antes de la transición a Oal final del pulso.
Q
Q1
Qn
0
0
0
0
1
1
1
1
s
0
0
1
1
0
0
1
1
R
0
1
0
1
0
1
0
1
Qn+1
0
0
1
ND
1
0
1
ND
a) Diagrama lógico
ND: No determinado
c) Tabla característica
R Ck S
Qn
00 01 11 10 '
0
1 )
0
0
'
X
x
^
A
1
( 1 J
,. ..
b) Símbolo gráfico
S.R =0
d) Ecuación característica
FIGURA 1.4: Flip - Flop tipo SR Temporizado.
Página 9
El símbolo gráfico del FF SR sincronizado se muestra en la Figura 1.4 (b). Tiene
tres entradas: S, R y Ck. El triángulo es un símbolo para el indicador dinámico y denota el
hecho de que el FF responde a una transición del reloj de entrada o flanco de subida de una
señal de un nivel bajo (Obinario) a un nivel alto (1 binario).
La tabla característica o de función del FF se muestra en la Figura 1.4 (c). Esta
tabla resume la operación del FF. Qn es el estado del FF en un tiempo dado (refiriéndose al
estado presente), las columnas S y R presentan los valores posibles que pueden tener las
entradas y Qni-i es el estado del FF después que haya ocurrido un pulso de reloj
(refiriéndose al estado siguiente). La ecuación característica de este FF se deduce del mapa
de Karnaugh de la Figura 1.4 (d). Esta ecuación especifica el valor del estado siguiente
como una función del estado presente y de las entradas. La ecuación característica es una
expresión algebraica para la información binaria de la tabla característica. Los dos estados
indeterminados se marcan con una X en el mapa, ya que puede resultar como 1 o como 0.
Sin embargo la relación S.R = Odebe incluirse como parte de la ecuación característica para
especificar que Sy R no pueden ser iguales a 1 simultáneamente.
1.2.3.- FLIP - FLOP TIPO D TEMPORIZADO
El FF tipo D temporizado mostrado en la Figura 1.5 es una modificación del FF
SR temporÍ7.ado. Tas compuertas NAND 1y 2 forman el FF básico y las compuertas 3 y 4
las modifican para conformar el FF SR temporizado. la entrada D va directamente a la
entrada S y su complemento se aplica a la entrada R a través de la compuerta 5. Mientras
que el pulso de reloj de entrada sea 0? las compuertas 3 y 4 tienen un 1 en sus salidas,
Página 10
independientemente del valor de las otras entradas. Esto está de acuerdo a que las dos
entradas del FF básico NAND (Figura 1.3) permanezcan inicialmente en el nivel de 1.
Qn D
0
0
1
1
0
1
0
1
Qn+1
0
1
0
1
a) Diagrama lógico con compuertas NAND c) Tabla característica
Q Q'
Ck
XX
D
0 ( 1 ^
0
0
1
1
b) Símbolo gráfico d) Ecuación característica
FIGURA 1.5: Flip - Flop tipo D Temporizado
Página 11
La entrada D se comprueba durante la presencia de un pulso de reloj. Si es 1, la
salida de la compuerta 3 va a 0; cambiando el FF al estado de puesta a 1 (a no ser que ya
esté en ese estado). Si es O, la salida de la compuerta 4 va a Ocambiando el FF al estado de
puesta a Oo borrado.
El FF tipo D describe su nombre por la habilidad de transmitir "datos". Un FF tipo
D es básicamente un FF SR con un inversor a la entrada R. El inversor agregado reduce el
número de entradas de dos a uno. Este tipo de FF se llama algunas veces bloqueador D con
compuertas o FF de bloqueo o retenedor de datos (Data - latch). La entrada Ck se le da a
menudo la designación de variable G (gate) para indicar que esta entrada habilita el FF de
bloqueo para hacer posible que los datos entren al mismo.
El símbolo para el FF D temporizado se muestra en la Figura 1.5 (b). La tabla
característica se lista en la paite (c) y la ecuación característica en la paite (d). La ecuación
característica muestra que el estado siguiente del FF es igual a la entrada D y es
independiente delvalor del presente estado.
1.2.4.- FLIP ~ FLOP TIPO JK
Un FF JK es un refinamiento del FF SR ya que el estado indeterminado del tipo
SR se define en el tipo JK. Las entradas J y K se comportan como las entradas S y R
respectivamente para poner a 1 o O(Seto Clear) al FF. Cuando a ambas entradas se aplican
un 1 a J y K simultáneamente, el FF cambia a su estado de complemento, esto es, si Q —1
cambia a Q = O y viceversa.
Página 12
Q
Q1
9n
0
0
0
0
1
1
1
1
J
0
0
1
1
0
0
1
1
K
0
1
0
1
0
1
0
1
Qn+1
0
0
1
1
1
0
1
0
a) Diagrama lógico
J Ck K
b) Símbolo gráfico
JK
QrN
c) Tabla característica
00 OÍ lí 10
0
-;-]
0
0
(<
0
']
(7 ~
I
d) Ecuación característica
FIGURA 1.6: Flip - Flop tipo JK Temporizado
Un FF JK sincronizado se muestra en la Figura 1,6 (a). La salida Q se aplica con
K y Ck a una compuerta AND de tal manera que el FF se ponga a cero (clear) durante un
pulso de reloj solamente si Q fue 1previamente. De manera similar la salida Q' se aplica con
Página 13
J y Ck a una compuerta AND de tal manera que el FF se ponga a uno con un pulso de
reloj, solamente siQ7 fue 1 previamente.
Como se muestra en la tabla característica en la Figura 1.6 (c), el FF JK se
comporta como un FF SR excepto cuando las entradas J y K sean ambas iguales a 1.
Cuando J y K son iguales a 1, el pulso de reloj tiene efecto y se transmite solamente en la
compuerta AND en cuya entrada está conectada la salida del FF que tiene valor presente
igual a 1. Así, si Q = 1, la salida de la compuerta AND superior de la Figura 1.6 (a) se
convertirá en 1 unavez que se aplique un pulso de reloj y el FF sepondrá a cero. Si Q' = 1
la salida de la compuerta AND inferior de la Figura 1.6 (a) se convertirá en 1 y el FF se
pondrá a uno. En cualquier caso, el estado de la salida del FF se complementa.
Las entradas en el símbolo gráfico para el FF JK deben marcarse con una J
(debajo de Q) y K (debajo de Q')- La ecuación característica se muestra en la Figura 1.6
(d) y se deduce delmapa de la tabla característica Figura 1.6 (c).
Nótese que debido a la conexión de realimentación del FF JK la señal de reloj Ck
que permanece en 1 (mientras J = K = 1) causará transiciones repetidas y continuas delas
salidas después de que las salidas hayan sido complementadas. Para evitar esta operación
indeseable, los pulsos de reloj deben tener un tiempo de duración menor que la demora de
propagación a través del FF. Esta es una restricción, y que la operación del circuito depende
del ancho de los pulsos. Por esta razón los FF JK nunca se construyen como se muestran en
la Figura 1.6 (a). La restricción del ancho del pulso puede ser eliminada con un maestro
esclavo o una construcción activada por flanco.
Página 14
1.2.5.- FLIP - FLOP TIPO T TEMPORIZADO
a) Diagrama lógico
Q1
T Ct
Q
Q1
Qn
0
0
1
1
T
0
1
0
1
QlM
0
1
1
0
c) Tabla característica
b) Símbolo gráfico d) Ecuación característica
FIGURA 1.7: Flip - FIop tipo TTemporizado
El FF T es la versión de una entrada del FF JK. Como se muestra en la Figura
1.7 (a), el FF T se obtiene de un tipo JK al cual se le une las dos entradas. El nombre T se
deriva de la habilidad del FF de variar (Toggle) o cambiar de estado. Independientemente
del presente estado del FF, éste asume el estado de complemento cuando ocurre el pulso de
Página 15
reloj mientras que la entrada T esté en 1lógico. El símbolo gráfico, la tabla característica y la
ecuación característica del FF T se muestran en la Figura 1.7, partes (b), (c) y (d)
respectivamente. El FF T tiene lasmismas restricciones del FF JK de la Figura 1.6 (a).
1.2.6.- DISPARO DE LOS FLIP - FLOPs
*
El estado de un FF varía debido a un cambio momentáneo en la señal de entrada.
Este cambio momentáneo se lo llama disparo (trígger) y la transición que lo causa se dice
que dispara el FF. Los FFs asincrónicos, tales como los circuitos básicos de la Figura 1.2 y
1.3, requieren un disparo de entrada definido por un cambio de nivel de señal. Este nivel
debe regresarse a un valor inicial (Oen el FF basado en compuertas ÑOR y 1 en aquel
basado en compuertasNAND) antes de aplicarle el segundo disparo. Los FFs sincronizados
4j-
se disparan por medio de pulsos, un pulso comienza a partir de su valor inicial de O, va
momentáneamente a 1 y después de un corto período, regresa a su valor inicial 0. El
intervalo de tiempo que ocurre desde la aplicación del pulso hasta que ocurra la transición de
salida, es un factor crítico.
Como seve en el diagrama de bloques de la Figura 1.1, un circuito secuencial tiene
^ un camino de realimentación entre el* circuito combinacional y los elementos de memoria,
-^T-
Este camino puede producir inestabilidad si la salida de los elementos de memoria (FFs)
están cambiando mientras que las salidas del circuito combinacional que van a las entradas
de los FFs están siendo sometidas a prueba por el pulso de reloj. Se puede prevenir el
problema de tiempo si las salidas de los FFs no comienzan a cambiar hasta que el impulso
de entrada haya retornado a O,Para asegurar tal operación, un FF deberá tener un retardo
^ Página16
de propagación de la señal desde la entrada hasta la saHda, en exceso, con respecto a la
duración del pulso. Este relardo es comúnmente muy difícil de controlar si el diseñador
depende totalmente del retardo de propagación de las compuertas lógicas. Una forma de
asegurar el retardo adecuado es incluir en el circuito del FF una unidad de retardo físico que
tenga un retardo igual o mayor que la duración del pulso. Una forma muy buena de resolver
el problema de temporización por realimentación es hacer que el FF sea sensible a la.
transición del pulso en vez de la duración del pulso.
Un pulso de reloj puede ser positivo o negativo. Una fuente de reloj positiva
permanece en Odurante el intervalo entre los pulsos y va a uno durante la ocurrencia de un
pulso. El pulso pasa por dos transiciones de señal: de Oa 1y el regreso de 1 a 0. Como se ve
en la Figura 1.8, la transición positiva se define como flanco positi>o y la transición
negativa como flanco negativo. Esta definición es aplicable también a los pulsos negativos.
La forma de aplicar el disparo en los flancos es, mediante el uso de un FF Maestro -
esclavo o un FF de disparo por flancos, los cuales se describen a continuación.
Pulso positivo
Flanco Flanco
Positivo Negativo
Pulso negativo
Flanco Flanco
Negativo Positivo
FIGURA 1.8: Definición de la transición de un pulso de reloj.
Página 17
a) FLIP - FLOP MAESTRO ESCLAVO
Un FF Maestro - esclavo se construye con dos FF sincrónicos separados. Un
circuito sirve como maestro y el otro como esclavo y el circuito completo se trata como un
FF Maestro - esclavo. El diagrama lógico de un FF Maestro - esclavo SR se muestra en la
Figura 1.9. Este consiste de un FF maestro, un esclavo y un inversor. Cuando el pulso de
reloj Ck es O,la salida del inversor es 1. Como el pulso de entrada de reloj del esclavo es 1>
el FF se habilita y la salida Q es igual a Y mientras que Q' se iguala a Y'. El FF maestro se
inhabilita debido a que Ck = 0.
Cuando el pulso de reloj se convierte en 1, la información en las entradas externas
S y R se transmiten al FF maestro. El FF esclavo sin embargo, se aisla por el intervalo en
que el pulso esté en un nivel de 1, ya que la salida del inversor es 0. Cuando el pulso regresa
a O, el FF maestro se aisla, lo cual previene que las entradas externas lo afecten. El FF
esclavo ka al mismo estado que el maestro.
Maestro Esclavo
S .
•
R.
•
5 Q
>Ck
R Q'
r^
Y
Y'
$ Q
>Ck
R O1
FIGURA 1.9: Diagrama lógico de un FF Maestro - esclavo.
Página 18
b) FLIP - FLOP DISPARADO POR FLANCO
Otro tipo de FF que sincroniza los cambios de estado durante una transición de
pulso de reloj es el FF disparado por flanco. En este tipo de FF, las transiciones de salida
ocurren en un nivel específico del pulso de reloj. Cuando el nivel de entrada del pulso
excede este umbral, se cierran las entradas y el FF es por tanto inactivo a cambios
posteriores en las entradas hasta que el pulso de reloj regrese a cero y ocurra otro pulso.
Algunos FFs disparados por flanco causan una transición en el flanco positivo del pulso y
otros causan una transición en el flanco negativo del pulso.
D
R
Q
Q1
FIGURA 1.10: Flip - Flop tipo D disparado por flanco positivo.
El diagrama lógico de un FF tipo D disparado por flanco positivo se muestra en la
Figura 1.10. Este consiste en tres FFs básicos del tipo mostrado en la Figura 1.3. Las
Página 19
compuertas NAND i y 2 constituyen un FF básico al igual que las compuertas 3 y 4. El
tercer FF básico que comprende las compuertas 5 y 6 genera las salidas del circuito. Las
entradas S y R del tercer FF básico deben mantenerse en lógica 1 para que las salidas
permanezcan en sus valores estables. Cuando S = O y R = 1, la salida va al estado de puesta
a uno con Q = 1. Cuando S - 1y R = O, la salida va al estado de puesta a cero con Q = 0.
Las salidas S y R se determinan de los estados de los otros dos FFs básicos. Estos dos FFs
básicos responden a las entradas externas D (datos) y a Ck (pulso de reloj).
1.3.- SISTEMAS DIGITALES SECUENCIALES
Los circuitos lógicos cuyas entradas están alimentadas por ñientes externas, sin
realimentación, es decir, sin conexión entre las salidas y las entradas de las compuertas, se
los denomina circuitos combinacionales,
En los circuitos combinacionales, las salidas están determinadas únicamente por las
entradas. Si, en un instante t —t$ cambia alguna de las entradas, consecuentemente las
salidas deben cambiar. Pero las nuevas salidas dependen solamente de las entradas después
del instante de tiempo t = to y no del valor que tuvieron las salidas y las entradas antes de
ese instante de tiempo. Estos circuitos combinacionales no tienen memoria. Las salidas
actuales dependen de las entradas actuales, pero no de los valores de entradas y salidas
anteriores. Cuando cambian las entradas hay un intervalo muy breve de tiempo durante el
cual las salidas no reflejan ningún cambio. Este breve intervalo es una consecuencia del
retardo finito de propagación a través de las compuertas. Retardos de propagación
frecuentemente muy pequeños.
Página 20
Existen otros circuitos con realimentación en donde las salidas dependen no sólo de
las entradas actuales, sino también de su historia pasada. Esto es, las salidas actuales
dependen de la secuencia de valores lógicos en las enü'adas y de la condición almacenada en
memoria. Estos circuitos lógicos se denominan secuendales.
Cada etapa que atraviesa un circuito secuencia! se denomina estado. En cada
estado el circuito almacena información de su historia pasada, para saber que hacer a
continuación. Un estado se distingue de otro por su información almacenada. Parecerá que,
a medida que pasa el tiempo, es necesario añadir nuevos elementos a la memoria y, por
consiguiente, desarrollar una secuencia ilimitada de estados nuevos y diferentes. Sin
embargo, parece que no toda la historia pasada es relevante, ni todos los estados por los que
pasa el sistema son diferentes entre sí y que el número total de estados es bastante limitado.
Un ejemplo servirá para ilustrar este argumento.
Si se tiene la tarea de mirar una fila de cinco bombillas de luz, numeradas del 1 al 5,
que normalmente están apagadas. Una bombilla cualquiera, pero solamente una cada vez, se
ilumina brevemente de vez en cuando. Se indica que si se ilumina la bombilla 1, después la
2, y así sucesivamente hasta la número 5, al terminar esta secuencia hacer sonar una alarma,
y si el orden de destellos no sigue esa numeración, éste debe ignorarse hasta que se encienda
la luz 1 nuevamente para reiniciar el proceso. Así, cuando finalice la secuencia 1, 23 3, 4, 5,
debe sonar la alarma. Si aparece la secuencia 1, 2, 4, ..., después de observar el destello dé la
luz 4 se puede ignorar lo que sucede a continuación, ya que no se ha seguido el orden
requerido, y se pueden seguir ignorando los destellos hasta que la. luz 1 se encienda de
nuevo, ya que puede ser el comienzo de una secuencia de destellos en el orden requerido.
Página 21
Se puede determinar fácilmente el número de estados diferentes y distintos que
tendrá este sistema, considerando lo que es relevante: que las luces no se han encendido,
que se ha encendido la luz 1 y después la luz 2, y así sucesivamente, hasta que aparezca la
secuencia 1} 2, 3, 4, 5 y entonces se haga sonar la alarma. Como se ve hay un total de 6
mensajes diferentes que es necesario tener en cuenta, por tanto 6 datos y estados diferentes.
El número de diferentes secuencias de encendido que se pueden observar es
grande, pero no todas las varias secuencias son diferentes de una forma relevante. Si se
supone, por ejemplo, que se observa la secuencia 3, 2, 4, 5, 1, 2, 5, 3, 1, 4, 2, 1, 2. Todo lo
que se necesita recordar de esta secuencia es que los dos últimos encendidos fueron 1 y 2.
Así pues, esta secuencia coloca al sistema en el mismo estado que la secuencia 1, 2. Ahora si
se supone que se visualiza la secuencia 1, 2, 3, 4, 2, 5, 3, 2, 1, 3, cuando finalice el sistema
se encontrará en el mismo estado que si no se hubiese encendido ninguna luz.
Para implementar un sistema con componentes lógicos, se utilizarán FFs como
memoria. Si el sistema tiene, por ejemplo, 6 estados de recuerdo, como en el ejemplo,
consecuentemente se necesita 6 estados en los FFs. Para disponer de 6 estados se necesitan
3 FFs. En realidad con 3 FFs se disponen de 8 estados, que irían de QiQiQo = 000 a
QaQiQo= ni? como senecesitan solamente 6, no seutilizarían 2 estados.
El comportamiento de los circuitos secuenciales se determina de las entradas, las
salidas y los estados de los FFs. Tanto las salidas y el estado siguiente son una función de las
entradas y del presente estado. El análisis de los circuitos secuenciales consiste en obtener
una tabla o un diagrama de la secuencia de tiempo de las entradas, salidas y estados internos.
Página 22
Con respecto a la secuencia de tiempo se debe considerar cuando el sistema no posee un
reloj y lambién cuando si lo tiene. En estos casos se pueden definir dos tipos de sistemas
secuenciales; asincrónicos y sincrónicos, que se describen a continuación.
1.3.1.- DISEÑO SECUENCIAL ASINCRÓNICO
Xo
XI
vo
y
y*-
JXJ
».
L
C
C
C
/
I)
•N
•v
(
Q D
ck
Q 0
C*
Q D
CX
YO
Y1
...y H
XO
XI
(1EOJNOMBOS)
a) b)
(EXrTKdONCI)
FIGURA 1.11: a) Estructura de un circuitosecuencial sincrónico, b) Estructura de un
circuito secuencial en modo fundamental (asincrónico).
A los sistemas secuenciales asincrónicos se los considera como sistemas
secuenciales fundamentales porque los conceptos relacionados con los sistemas secuenciales
Página 23
asincrónicos sustentan las características de los sistemas sincrónicos. Los circuitos
sincrónicos tienen incorporado un circuito secuencia! asincrónico con un FF temporizado el
cual es el corazón de un sistema sincrónico.
Los circuitos asincrónicos no son comprendidos ampliamente, porque situaciones
como velocidad crítica, estados casuales, riesgo dinámico, riesgo indispensable y
oscilaciones deben tenerse muy en cuenta por los diseñadores en el manejo de estos
circuitos los cuales pueden dificultar el diseño e implementación de estos sistemas.
En la Figura 1.11 (a) se presenta la estructura lógica de un circuito secuencial. Se
puede pensar razonablemente que el propósito del FF es suministrar un retardo entre los
cambios en los niveles lógicos en las líneas de estado siguiente y el cambio correspondiente
en las líneas del estado actual. Los cambios en las líneas de entrada XQ, xi, ..., x^j si los
hay, ocurren nominalmentc en el inslante de una transición de disparo de reloj y las líneas
del estado siguiente YO, Yj, ..., Y^.j responden inmediatamente. Sin embargo, el cambio
correspondiente en las líneas de estado presenteyo, y^} ...,y^-j se retarda hasta la ocurrencia
de la siguiente transición de disparo del reloj.
Estas consideraciones sugieren que la estructura de la Figura 1.11 (b) puede
constituir un circuito secuencial. Aquí los FFs se han sustituido por elementos que
introducen un retraso. Un tipo de retraso resulta cuando una señal eléctrica se transmite a
través de un hilo largo, una compuerta lógica o de una cascada de compuertas. La diferencia
esencial entre el retardo de la Figura 1.11 (a) y (b) es que en el último caso, el retardo se
determina completamente por el retardo del elemento y no por xina señal externa (señal de
Página 24
reloj). En la práctica, generalmente los elementos retardadores en la circuitería de la Figura
1.11 (b) no se introducen deliberadamente sino que son debidos a las compuertas de la parte
lógica del sistema.
Cuando el sistema de la Figura 1.11 (a) está en condición estacionaria en uno de
sus estados, las entradas yo, yj, • -, yk-i pueden ser diferentes de las salidas lógicas YO,Y3,
..., Yk-i. En la Figura 1.11 (b) en condición estacionaria, las entradas y salidas lógicas
deben coincidir ya que en respuesta a un cambio de una linea de entrada x^ xjf ..., x^i las
líneas YO,Yj, .., Y^-i cambiarán y como mínimo, durante el tiempo de retardo, las líneas Y
deben ser diferentes de las líneas y.
Como las Y e y son diferentes entre sí sólo transitoriamente y durante un intervalo
que no es controlable externamente, hay apatía por parte de algunos en llamarles variables de
estado siguiente y del estado actual. Por ello las Y se denominan frecuentemente variables
de excitación y las y, variables secundarias. El circuito secuencia! de la Figura 1.11 (a)
t
que utiliza k FFs y tiene k líneas de estado puede tener hasta 2 estados diferentes.
Consecuentemente, el circuito de la Figura 1.11 (b) que utiliza k elementos de retardo
^
también tendrá 2 estados.
Como se ha señalado, los circuitos secuenciales que utilizan FFs con señales de
reloj se denominansistemas sincrónicos.En contraste, los circuitos que utilizan elementos de
retardo se denominan sistemas en modo fundamental. Históricamente, los sistemas en
modo fundamental aparecieron antes que los sincrónicos, estos últimos presentan muchas
Página 25
ventajas: son más fáciles de diseñar y están Hbres de retardos de propagación, variables y
situaciones impredecibles. Además los sistemas en modo fundamental tienen en la actualidad
aplicaciones algo limitadas.
a) EJEMPLO DE ANÁLISIS
(XO)R
(X1)8 ^
FIGURA 1.12: Ejemplode un circuito en modo fundamental.
Un ejemplo muy sencillo de un circuito en modo fundamental se da en la Figura
1.12. Se lo ha dibujado con el patrón de la Figura 1.11 (b). Se reconoce fácilmente como
un retenedor estático y se han rotulado aproximadamente los terminales. Las entradas XQ y
x-! son las de reset y set y la salida Z es el terminal Q del FF. En el presente ejemplo hay
una línea de estado Y conectada a y que coincide con la línea Z. El retardo de la línea que
suministra realimentación de la salida lógica a la entrada lógica no se muestra explícitamente.
Como se ha señalado, este retardo es realmente consecuencia de los retardos de propagación
de las compuertas. Como el estado se determina por el nivel lógico en una línea, puede
esperarse que el sistema tenga dos estados.
El comportamiento del circuito de la Figura 1.12 se describe en la tabla de la
Figura 1.13 (a). Aquí se presenta un diagrama correspondiente a cada una de las ocho
Página 26
posibles combinaciones de las tres variables lógicas de entrada y, S y R. En cada
comportamiento se ha puesto el valor correspondiente a la salida Y (Z). Cuando S y R no
cambian y el sistema está estacionario en uno de sus estados estables, claramente se tiene que
Y = y. Para indicar los estados estables la entrada correspondiente a Y en la tabla se ha
encerrado en un círculo. Las entradas que no están en círculos corresponden a situaciones
que pueden persistir sólo transitoriamente y se refieren a estados inestables.
00 01 11 10
SR
KM 1
00 01 11 10
a) Y,* b)ES
EA: Estado actual
ES: Estado siguiente
FIGURA 1.13: a) Tabla de transición para el circuito de la Figura 1.12. b) Tabla de
estados para el circuito de la Figura 1.12.
Esto es consistente con lo esperado, que cuando S = R = O hay dos estados
estables, uno en el que la variable de estado y = Oy otro en el que y = 1. Ahora se supone
que S = O, R - 1, entonces como indica la flecha de trazo continuo, el sistema queda en el
mismo estado estable con y = 0. Un cambio posterior a S = 1, R = 1 deja al sistema en el
estado y = 0. A continuación si las entradas S = R = 1 cambian a S = l y R = 0 , esta
situación se analiza bajo las siguientes condiciones: en el diagrama de la Figura 1.12 se
supone que no hay retardos de propagación a través de las compuertas y que existe un
Página 27
elemento de retardo entre Y e y. Entonces como se indica en la tabla de la Figura 1.13 (a),
con S = 1, R = 0 e y = 0 s e tiene que Y = 1, esta situación no persistirá después de un
retardo, el valor Y = 1 aparecerá en y, por lo tanto se tendrá que y = 1. Se puede también
ver en la misma figura que s i S = l ) R = O e j = Y = lesun estado estable. Así, en suma
cuando se está en el estado y = Ocon SR = 11, un cambio a SR = 10 lleva transitoriamente
al sistema a un estado inestable, se indica en la Figura 1.13 (a) por la flecha de línea
discontinua. De forma similar, comenzando de nuevo en ySR = 000 y se cambia a S = 1
pasará por el estado inestable ySR. = 010 y finalizará en el estado estable j>SR =110.
Comenzando en el estado estable ySR = 101 un cambio a SR = 00 dejaría en el
estado y = 1. Un cambio a SR = 11 ó SR = 01 haría volver al estado y = 0. La tabla de la
Figura 1.13(a) se denomina tabla de transición, en ella los estados se han identificado por
los niveles lógicos en las líneas de estado.
De manera algo más general si simplemente se requieren los nombres de los estados
sin hacer referencia específica a los niveles lógicos, la tabla aparecerá como en la Figura
1.13 (b). Aquí los estados se identifican por a y A, a esta tabla puede denominarse
razonablemente tabla de estados. Se ve una correspondencia entre la transición presente y las
tablas de estado y las transiciones y tablas de estado en los sistemas sincrónicos. Hay una
restricción que se aplica en el caso asincrónico que no ocurre en el caso sincrónico. En el
caso asincrónico debe haber como mínimo una entrada ES (estado siguiente) que sea la
misma que la EA (estado actual). De otra forma el estado contemplado no estaría en la tabla
de estados. También en el caso sincrónico ES y EA se refieren a los estados en cada período
de reloj. En el caso asincrónico ES y EA se refieren a los niveles lógicos de las líneas y e Y.
Página 28
b) EJEMPLO DE DISEÑO
Los conceptos utilizados en esU sección del análisis en gran manera acrecentarán el
entendimiento del enfoque tradicional de diseño. Para este propósito, se considera el método
de análisis mediante la realización de un ejemplo.
X
A
B
C
D
@,oo
©.10
®.oi
©.u
ES, ZIZO
(a)
00
01
10
11
(00). 00
(Í0),10
©,01
(Q)*11
Y1YO, ZIZO
(b)
X*
00
01
10
1 1.
_©_
10
@
00
01
©
11
(u)
Y1YO (también) ZIZO
(o)
jr
EA
A
B
C
T)
®,oo
c
©,10
A
B
(3>.oi
D
(5>,i i
ES, ZIZO
(d)
FIGURA 1.14: a) Diagrama de estados de un contador módulo 4. b) Asignación de
estados realizada para la tabla de estados del contador, c) Se hacen
asignaciones de estados inestables para dirigir el circuito, d) Tabla de
flujo.
Página 29
Como ejemplo sencillo de diseño, se considera un circuito de una sola entrada X y
dos salidas 2/i y Zo- £1 circuito debe contar en módulo 4 el número de cambios de niveles
lógicos de la entrada X. Entonces comenzando con^Y= O y ZjZo = 00, se desea que cuando
A"realice una secuencia X= O—* 1 —* O—* !•—* O, etc., la salida recorra la secuencia
- 00—* 01 —» 10—* 11 —* 00, etc.
Claramente se ve la necesidad de cuatro tablas de estado e inevitablemente el
diagrama de estados de la Figura 1.14 (a). Cuando X = Ose encuentra en el estado A y la
salida ZiZo = 00. Cuando X cambia de Oa 1, se desea ir al estado B con ZjZo = 01. De B ir
a Q de allí a D y finalmente volver a A. En la Figura 1.14 (b) se realiza una asignación de
estados, que de acuerdo con la tabla al estado A se le asigna YiYo = yjyo = 00, etc. La
asignación de estados se ha realizado haciendo YiYo = Z^Zo en cada caso con el fin de
poder simplificar la circuitería lógica.
Volviendo al estado A, se señaló que cuando X cambia de O a 1 se va a una
columna en la que hay dos estados estables. ¿Cómo se puede asegurar que se finalice en el
estado correcto que es B y no D?. Un esquema bastante simple se da en la Figura 1.14 (c).
Aquí en la posición de la tabla paraj^^ = 00 y X = 1 se ha hecho la entrada YiY0 = 01.
Por consiguiente, cuando el sistema esté en el estado yjyo = 00 (estado A), un cambio en X
de Oa 1 provoca un cambio inmediato en YI e YOa YiYo = 01. Poco tiempo después (el
tiempo de retardo) yjyo asume los valores YiYo y tenemos YiYo = yjyo — 01 que es
precisamente lo que se requiere para mantener el circuito en el estado B. Si la entrada en la
Página 30
= 100 ha sido YjYo - 11 entonces correspondientemente habría ido del estado A al D. En
general cuando se va de una columna en la que se dispone de más de un estado estable, se
fabrican las entradas apropiadas en las posiciones correspondientes a estados inestables, para
dirigir al sistema al estado siguiente estable apropiado. Estas direcciones que no están
incluidas en la tabla de la Figura 1.14 (a) se incluye en la tabla de la Figura 1.14 (d).
En la Figura 1.14 (d) no se ha especificado ZjZo en las posiciones de la tabla con
estados inestables. Se decide que como esos estados duran muy poco, los valores de
son inoperantes.
ylyO yO
X
00 01 11 10 00
0
( i
iyo
r i
01 11
0
JL
0
i
10
0
' )
1
1 J
(a) Ya (b)Y0
FIGURA 1.15: Diagrama K de YI e Yo para el contadormódulo 4.
Ahora se puede construir el diagrama lógico partiendo de la información de la
Tabla 1.14 (c). A partir de esla tabla se pueden fabricar las entradas de los mapas de
Karnaugh para YI e YOcomo en la Figura 1.15 (a) y (b). De donde se obtiene:
Página 31
y el circuito se dibuja en la Figura 1.16.
YO
Y1
Z1
FIGURA 1.16: Diagrama del circuito del contador módulo 4.
1.3.2.- DISEÑO SECUENCIAL SINCRÓNICO
Un diagrama lógico se reconoce como un circuito secuencial si este incluye FFs.
Los FFs pueden ser de cualquier tipo y el diagrama lógico puede o no incluir compuertas
combinacionales. En esta sección, se introduce primero un ejemplo de un circuito secuencial
temporizado y luego se presentan varios métodos para describir el comportamiento de los
circuitos secuenciales. Para ilustrar los diferentes métodos a lo largo de la discusión se usará
un ejemplo específico.
Un ejemplo de un circuito secuencial temporizado se muestra en la Figura 1.17.
Tiene una variable de entrada, una variable de salida y dos FFs temporizados SR llamados
Página 32
A y B. Las conexiones realimentadas de las salidas de los FFs a las entradas de las
compuertas no se muestran explícitamente en el dibujo para facilitar el trazado del mismo.
En vez de ello, se reconocen las conexiones por su lelra marcada en cada entrada. Por
ejemplo, la entrada marcada.*:' en la compuerta 1 designa una entrada del complemento de
je. La segunda entrada A designa una conexión a la salida normal del FF - A.
B
FIGURA 1.17: Ejemplo de un circuito secuencia! temporizado.
En este ejemplo se asume que hay disparo por flanco negativo en ambos FFs y en
la fuente que produce la entrada externa x. Por tanto, las seriales para un estado presente
dado están disponibles durante el tiempo en que se determina un pulso de reloj y empiece el
siguiente, en cuyo momento el circuito pasa al estado siguiente.
Página 33
a) TABLA DE ESTADO
La secuencia de tiempo de las entradas, salidas y estados de los FFs pueden
enumerarse en una tabla de estado. Una tabla de estados esta definida por dos grupos de
ecuaciones, las ecuaciones de salida y las ecuaciones de estado siguiente. La tabla de estado
del circuito de la Figura 1.17 se muestra en la Tabla 1.1.
Qn+i = S + R'.Qn (Ecuación del FF- SR)
An+1 = B-c' + (B jt'y.A Bn+1 = A'-c + (A. *0'.B
Afl+1 = B-c' -f (B + x').A Bn+1 = A'je + (A* +*).B
i=x. AJB'
Estado siguiente
Estado presente
AB
00
01
10
11
,= 0
AB
00
11
10
10
X=l
AB
01
01
00
11
Salida
,= 0
2
0
0
0
0
x = l
2
0
0
1
0
TABLA 1.1: Tabla de estado para el circuito de la Figura 1.17.
La tabla consiste en tres secciones llamadas estado presente, estado siguiente y
salida. El estado presente designa los estados de los FFs antes de la ocurrencia de un pulso
de reloj. El estado siguiente muestra los estados de los FFs después de la aplicación del
pulso de reloj y la sección de salida lista los valores de las variables de salida durante el
presente estado. Las secciones de estado siguiente y de salida tienen dos columnas, una para
la entrada x —O y la otra parax = 1.
Página 34
La deducción de la tabla de estados comienza a partir de un estado posible
cualquiera que se asume inicial. El estado inicial de la mayoría de los circuitos secuenciales
prácticos se define como el estado con ceros en todas las salidas normales de los FFs.
Algunos circuitos secuenciales tienen un estado inicial diferente y otros no tienen ninguno.
En cada caso, el análisis puede comenzar a partir de cualquier estado arbitrario, en este
ejemplo, la tabla de estado empieza con el estado inicial 00.
Cuando el presente estado es AB = 00. Del diagrama lógico, se observa que con los
FFs en O y x = O, ninguna de las compuertas AND produce una señal lógica 1. Por tanto, el
estado siguiente permanece sin cambiar con la salida t en 0. Con AB = 00 y x - 1, la
compuerta 2 produce una señal lógica 1 en la entrada S del FF - B y la compuerta 3
produce una señal lógica 1 en la entrada R del FF - A. Cuando el pulso de reloj dispara los
FFs, A se pone a cero y B se pone a uno, produciendo el estado siguiente 01 con la salida z
en 0. Esta información se lista en la primera fila de la tabla de estado.
De manera similar, se puede deducir el estado siguiente comenzando a partir de los
otros tres estados presentes posibles. En general, el estado siguiente es una función de las
entradas, el estado presente y el tipo de FF usado. Las entradas para la sección de salida son
más fáciles de deducir. En este ejemplo, la salida z es igual a 1 solamente cuando x = 1, A =
1 y B = 0. Por tanto las columnas de salida se marcan con O, excepto cuando el estado
presente es 10 y la entradaA:= 1, para lo cual z se marca con un 1.
La tabla de estado de cualquier circuito secuencia! se obtiene por el mismo
procedimiento dado en este ejemplo. En general un circuito secuencia! con n FFs y m
Página 35
variables de entrada tendrá 2 tilas, una para cada estado. El estado siguiente y la salida
tendrán cada una 2 columnas, una para cada combinación de entrada.
Las salidas externas para un circuito sccucncial puedevenir de compuertas lógicas o
elementos de memoria. La sección de salida en el estado estable es necesaria solamente si
hay tres salidas de las compuertas lógicas. Cualquier salida externa tomada directamente de
un FF se lista en la columna de estado presente de la tabla de estado. Por tanto la sección de
salida de la tabla de estado puede ser excluida si no hay salidas extemas de las compuertas
lógicas.
b) DIAGRAMA DE ESTADO
Entrada actual
SaIida actual
FIGURA 1.18: Diagrama de estados para el circuito de la Figura 1.17
La información disponible en la tabla de estado puede representarse gráficamente
en un diagrama de estado. En este diagrama se representa un estado por un círculo y la
transición entre estos se indica por líneas dirigidas que conectan los círculos. El diagrama de
estado del circuito secuencia! de la Figura 1.17 se muestra en la Figura 1.18. El estado
Página 36
binario dentro de cada circuito identifica el estado representado por el círculo (a un estado
también se lo puede identificar por símbolos de letras). Las líneas dirigidas se marcan con
dos números binarios separados por /. El valor de entrada que causa la transición de estado
se marca primero; el número enseguida después del símbolo / da el valor de la salida durante
el presente estado. Por ejemplo, la línea dirigida del estado 00 a 01 marcada 1/0, significa
que el circuito secuencial está en el estado presente 00 mientras que j t = l y z = 0y que al
finalizar el siguiente pulso de reloj, el circuito va al estado 01. Una línea dirigida que conecta
un círculo a sí mismo indica que no hay cambio de estado. El diagrama de estado suministra
la misma información que la tabla de estado y se obtiene directamente de esta o viceversa.
No hay diferencia entre una tabla de estado y un diagrama de estado excepto en la
forma de la presentación. La tabla de estado es más fácil deducir a partir de un diagrama
lógico dado y el diagrama de estado da una vista pictórica de las transiciones de estado y está
en una forma disponible para interpretación binaria de la operación del circuito. El diagrama
de estado se usa a menudo como la especificación inicial de diseño de un circuito secuencial.
c) ECUACIONES DE ESTADO
Una ecuación de estado es una expresión algebraica que especifica las condiciones
para la transición de estado de un FF. El lado izquierdo de la ecuación denota el estado
siguiente del FF y el lado derecho una función de Boole que especifica las condiciones del
presente estado que hacen el estado siguiente igual a 1. Una ecuación de estado es similar en
forma a una ecuación característica de un FF, excepto que especifica las condiciones del
estado siguiente en términos de las variables de entrada extemas y otros valores de los FF.
Página37
La ecuación de estado se deriva directamente de la tabla de estado. Por ejemplo, la ecuación
de estado para el FF - A se deriva por inspección de la Tabla 1.1. De las siguientes
columnas de estado? se nota que el FF - A va al estado 1 cuatro veces: cuando x = O y AB =
01 ó 10 ó 11, o cuando x = 1 y AB = 11. Esto puede expresarse algebraicamente en la
ecuación de estado de la siguiente manera.
= A'.B + A.B'
El lado derecho de la ecuación de estado es una función de Boole para el estado
presente. Cuando esta función es igual a 1, la ocurrencia de los pulsos de reloj causa que el
FF - A tenga el estado siguiente de 1. Cuando una función es igual a O, el pulso de reloj
causará que A tenga el estado siguiente de 0. El lado izquierdo de la ecuación identifica los
FFs por un símbolo de letra seguido de una designación en función del tiempo (n + 1), para
enfatizar que este valor será alcanzado por el FF, un pulso posterior de la secuencia.
Bx
 00 01 f 11 10
0
jj
0
0
0
( 1
1
[i
x /
X
A 
-M'
00 01 ( 11 10
0
0
( 1
0
r—^
u j
^
1
1 )
0
An+i = B.x' + (B + x')-A
A'.x+(A.x')'.B
FIGURA 1.19: Ecuaciones de estado para los Flip - Flops A y B.
Página 38
La ecuación de estado es una función de Boole con un tiempo incluido. Es
aplicable solamente en los circuitos secuenciales de reloj, ya que An+i se define para que
cambie de valor con la ocurrencia del pulso de reloj en instantes discretos de tiempo.
La ecuación de estado del FF - A se simplifica por medio de un mapa como se
muestra en la Figura 1.19 (a). Con alguna manipulación algebraica, la función puede
expresarse de la siguiente forma:
si se hace que B.x} — Sy B3.x —R, se obtiene la siguienterelación:
la cual es una ecuación característica de un FF - RS Figura 1.4 (d) (página 9). Esta relación
entre la ecuación de estado y las ecuaciones características del FF pueden justificarse por
inspección del diagrama lógico de la Figura 1.17. En éste se ve que la entrada S del FF - A
es igual a la función de Boole BJC' y la entrada R es igual a B'jc. Sustituyendo estas
funciones en la ecuación característica del FF, dará como resultado la ecuación de estado
para el circuito secuencia! en análisis.
La ecuación de estado para un FF en un circuito secuencia! puede deducirse de una
tabla de estado o de un diagrama lógico. La deducción de una tabla de estado consiste en
obtener la función de Boole especificando las condiciones que hacen el estado siguiente del
Página 39
FF un 1. La deducción a partir de un diagrama lógico consiste en obtener las funciones de
las entradas del FF y sustituirlas en la ecuación característica delFlip - Flop.
La derivación de la ecuación de estado del FF - B a partir de una tabla de verdad se
muestra en el mapa de la Figura 1.19 (b). Los 1 marcados en el mapa son las entradas y las
combinaciones de entrada que causan que el FF pase al estado siguiente de 1. Estas
condiciones se obtienen directamente de la Tabla 1.1. La forma simplificada que se obtiene
en el mapa se manipula algebraicamente y la ecuación de estado que se obtiene es:
La ecuación de estado puede derivarse directamente a partir del diagrama lógico.
De la Figura 1.17 se observa que la señal para la entrada S del FF - B se genera por la
Función A1jey la señal para la entrada R por la función A_cJ. Sustituyendo S = A*je y R =
AJC' en la ecuación característica del FF - RS dada por:
Bn+j —S + R'.B
se obtiene la ecuación de estado derivada anteriormente:
Las funciones de estado de todos los FFs, conjuntamente con las funciones de
salida, especifican totalmente un circuito secuencia! EHas representan, algebraicamente, la
misma información que expresa una tabla de estado en forma tabular y un diagrama de
estado en forma gráfica,
Página 40
1.4.- CONTADORES SINCRÓNICOS
Un FF tiene dos estados, un arreglo de n FFs tiene 2D estados. El estado de un
arreglo de n FFs se especifica indicando qué FFs están en set y cuáles en reset. Un
contador es un arreglo de FFs que pasa de estado en estado, en respuesta a un suceso. Un
suceso puede ser un ciclo de una señal de reloj. En cualquier caso, el contador cuenta ci
número de sucesos.
El número de estados que atraviesa el contador antes de volver al estado inicial se
denomina módulo del contador. Un contador construido con n FFs puede tener un módulo
que como máximo es 2 , pero se puede, si es necesario disponer de contadores que no pasen
por todos sus posibles estados. En este caso su módulo sería menor de 2n.
Los contadores vienen en dos categorías: contadores de rizado (ripple counter) y
contadores sincrónicos. En un contador de rizado, la transición de salida del FF sirve como
fuente para disparar otros FFs. En otras palabras, las entradas Ck de todos los FFs se
disparan no por los pulsos de entrada sino por la transición que ocurre en los otros FFs.
En un contador sincrónico, los pulsos de entrada se aplican a todos los Ck de todos
los FFs. El cambio de estado de un FF en particular es dependiente del estado presente de
otros FFs. El pulso de reloj común dispara todos los FFs simultáneamente.
En esta sección se presenta algunos contadores típicos sincrónicos y se explica la
forma de operacióny características de diseño de los mismos para su mejor entendimiento.
Página 41
1.4.1.- CONTADOR BINARIO
El diseño de contadores binarios sincrónicos es tan simple que no es necesario pasar
por un proceso de diseño lógico secuencial riguroso. En un contador binario sincrónico, se
complementa el FF (tipo T ó JK) en la posición de menor orden con cada pulso. Esto
significa que las entradas Jy K deben mantenerse en 1. Un FF en cualquier otra posición se
complementa siempre y cuando todas las posiciones de menor orden sean iguales a 1, por
que los bits de menor orden cambiarán a Oen el siguiente pulso de cuenta. La cuenta binaria
dice cuando el siguiente bit de mayor orden debe ser complementado. Por ejemplo, si el
estado presente de un contador de 4 bits es = 0011, la siguiente cuenta será
0100. AO se complementa siempre. AI se complementa porque el estado presente de AQ es
1. AI se complementa por que el estado presente de AjAo = 11. Pero Aj no se complementa
porque el estado presente de = Olí, lo cual no dará una condición de todos Is.
FIGURA 1.20: Contador binario sincrónico de 4 bits.
Página 42
Los contadores sincrónicos binarios tienen un patrón regular y pueden fácilmente
ser construidos con FFs complementados y compuertas. El patrón regular puede verse
claramente del contador de 4 bits ilustrado en la Figura 1.20. El contador puede expandirse
a cualquier número de etapas, cada etapa contendrá un FF adicional y una compuerta AND
que da una salida de uno si todas las salidas de los FFs previos son 1.
1.4.2.- CONTADOR BINARIO CRECIENTE - DECRECIENTE
FIGURA 1.21: Contador binario creciente - decreciente de 4 bits.
En un contador binario sincrónico decreciente, si se considera las salidas
complementadas el FF en la posición de menor orden se complementa con cada pulso. Un
FF en cualquier otra posición se complementa con un pulso siempre y cuando todos los bits
Página 43
de menor orden sean iguales a uno. Por ejemplo si el estado presente de un contador binario
de 4 bits decreciente es A3A2AiAo = 1100, la cuenta siguiente será 1011. Las salidas
A3íA2íAi'Ao' = 0011, A0T siempre se complementa. AI' se complementa porque el estado
presente de AOJ = 1. A^' se complementa porque el estado presente de Aj'Ao' = 11. Aa1 no
se complementa porque el estado presente de A2)AiíAo' —Olí, el cual no es una condición
de todos unos. Al final se tiene Aa'Ai'Ai'Ao' = 0100 y AaA2AiAo = 1011 que es la cuenta
siguiente. Un contador binario decreciente puede ser construido como se muestra en la
Figura 1.21, considerando que las entradas de las compuertas AND deben venir de las
salidas complementadas Q' y no de las salidas normales Q de los FFs previos como en el
caso del contador creciente. Un contador binario capaz de contar hacia arriba o hacia abajo
se muestra en la Figura 1.21. Cuando la entrada de control creciente es igual a 1, el circuito
cuenta hacia arriba, ya que las entradas T se determinan a partir de los valores previos de las
salidas normales en Q. Cuando la entrada de control decreciente es 1, el circuito contará
hacia abajo, ya que las salidas complementadas Q* determinan los estados de las entradas T.
Cuando ambas señales de control creciente y decreciente son O, el registro no cambia de
estado, permanece en la misma cuenta.
1.4.3.- CONTADOR BINARIO CON CARGA EN PARALELO
Los contadores usados en los sistemas digitales a menudo requieren una condición
de carga en paralelo para transferir un número binario inicial antes de la operación de
conteo. La Figura 1.22 muestra el diagrama lógico de un registro que tiene una
característica de carga en paralelo y puede operar también como un contador.
Página 44
COMTEO
FIGURA 1.22: Contador binario de 4 bits con carga en paralelo.
Página 45
La entrada de control de carga, cuando es igual a 1, inhabilita la secuencia de
cuenta y causa la transferencia de datos IQ hasta I3 a los FFs AO hasta A¿ respectivamente
mediante un pulso de reloj (carga sincrónica). Si la entrada de carga es Oy la entrada de
control de cuenta es 1, el circuito opera como un contador. Los pulsos de reloj causan
entonces cambios del estado de los FFs de acuerdo a la secuencia de cuenta binaria. Si
ambas entradas de control son O, los pulsos de reloj no cambian el estado del registro. La
entrada de borrado es asincrónica y cuando está en O, causará que el contador sea puesto a
cero, independientemente de la presencia de los pulsos de reloj y de las otras entradas.
1.4.4.- CONTADOR DE ANILLO
QO 02
RELOJ
1 C
rr -o
iCk
F
f.
R
)
i
i C
FF -1
>Ck
c
(.
;L
?
i i
c
FF -3
>Ck
c
t
:L
j
i i <
FF -3
_
i C»Ck
CL
V
INICIO
FIGURA 1.23: Contador anillo módulo 4.
El circuito ilustrado en la Figura 1.23 es un contador de anillo módulo 4. Se puede
ver que es un registro de desplazamiento conectado para desplazar cíclicamente a la derecha.
En principio el terminal inicializador se pone brevemente a 1, para que el FFo adopte el
estado de set y los demás FFs el de reset Una vez aplicada la señal de reloj, el circuito
contará ciclos de reloj de módulo 4. Cada flanco sucesivo de disparo hará que el FF pase su
Página 46
estado al siguiente FF y adoptará el estado del FF anterior. Entonces cada cuatro ciclos
sucesivos de reloj el contador se encontrará en su estado inicial.
Las señales del contador de anillo se indican en la Figura 1.24, donde aparecen las
señales de reloj y de las salidas Q de los cuatro FFs. Se ha comenzado arbitrariamente, en el
instante en que Qo= 1y Qs = Qi = Qi = O- Estas señales son muyútiles para propósitos de
manejo de secuencias. Imagínese que en un sistema digital hay una serie de operaciones que
necesitan realizarse en secuencia; e imagínese también que las operaciones individuales
pueden realizarse habilitando una serie de conjuntos de compuertas. Entonces, las señales de
la Figura 1.24 serían ideales para la función de habilitación secuencial.
Q1
FIGURA 1.24: Señales del contador anillo módulo 4 de ia Figura 1.23.
1.4.5.- CONTADOR JOHNSON
El contador de anillo es elegantementesimple, pero tiene la desventaja de utilizar
FFs antieconómicamente. Un contador anillo de n FFs tiene de módulo /t, mientras n FFs
Página 47
permiten 2 estados. Una modificación del contador de anillo, que utiliza FFs más
económicamente, es el contador Johnson, mostrado en la Figura 1.25, Aquí la interconexión
entre FFs es como se muestra en la Figura 1.23, excepto que al final de la cascada de FFs,
es decir, en la cola, la conexión se ha conmutado a Qj' en lugar de Qj.
LOJ
C
FF-0
_
»Ck
t
_
3
>
C
F F - 1
>Ck
ti
i
i C
FF -I
n
> C k
tJ
i
C
FF-3
»Ck
t3
(a)
Cuenta
0
1
2
3
4
5
6
7
0
Qo
0
1
1
1
1
0
0
0
0
Qi
0
0
1
1
1
1
0
0
0
Q2
0
0
0
1
1
1
1
0
0
QB
0
0
0
0
1
1
1
1
0
(b)
FIGURA 1.25: (a) Contador JOHNSON (conmutado en cola) y (b) secuencia de
conteo.
Si se supone que irdcialmente todos los FFs del contador se han borrado, así Q3 =
Qi —Qi ~ Qo ~ 0. Entonces, el nuevo jQanoo de disparo de reloj transferirá Oa FFj, FFi y
, dejándolos inalterados. Sin embargo, a causa de la conmutación en las conexiones de
Página 48
salida del FFj, el FFo irá al estado de set. Por consiguiente, el contador pasa de
= 0000 a QaQaQiQo —0001. La secuencia de estados a través de los que pasa el contador
se indica en la Figura 1.25 (b). Obsérvese que el contador recorre ocho estados, es decir,
doble del número de FFs, y entonces vuelve al estado inicial. Así pues, con n FFs un
contador Johnson tiene módulo 2n.
1.5.- REGISTROS DE DESPLAZAMIENTO
Se ha señalado que un FF puede almacenar, guardar o recordar, es decir, registrar
un bit. Entonces, un arreglo de estos dispositivos es lo que se conoce como un registro, en el
que se puede escribir una palabra y del que se puede leer la palabra almacenada cuando
convenga. Es así, que los regislros son el papel de anotaciones en el que se pueden escribir
palabras binarias para futuras referencias y consullas.
La mayor parte de las operaciones en una computadora u otros procesadores
digitales no son más que transferencias de palabras de un registro a otro. Una característica
uní que se puede incorporar a los registros, es la posibilidad de que estos pueden realizar
operaciones de desplazamiento de la información almacenada en ellos hacia la izquierda o
hacia la derecha, característica que los ha denominado registros de desplazamiento.
Un arreglo de FFs es la configuración lógica de un registro de desplazamiento el
cual constituye un sistema sincrónico, ya que cada FF se activa mediante la misma señal de
reloj. Este sistema consiste en una cadena de FFs conectados en cascada, con la salida de un
FF conectado a la entrada del siguiente. Todos los FFs reciben un pulso de reloj común, por
Página 49
lo tanto el estado de un FF se transfiere al siguiente, de esta manera el estado del FF de
menor orden se desplazará a través de todo el sistema.
El registro de desplazamiento más sencillo es aquel que usa solamente FFs como se
muestran en la Figura 1.26. La salida Q de un FF dado se conecta a la entrada D del FF
siguiente. Cada pulso de reloj desplaza el contenido del registro un bit una posición a la
derecha. La entrada serial determina qué va en el FF del extremo izquierdo durante el
desplazamiento. La salida serial se toma de la salida del FF del extremo derecho después de
la aplicación de un pulso de reloj. Aunque este registro desplace su contenido a la derecha, si
se voltea la página se observa que el registro desplaza su contenido a la izquierda. Así un
registro de desplazamiento unidireccional puede funcionar como un registro de
desplazamiento a la derecha o a la izquierda.
FF-2
SERA.
REUXI
C
D Q
—c
D O
,—c
D n
>Ck —c
D o
>Ck
SER*.
FIGURA 1.26: Registro de desplazamiento.
El estado del primer FF después de una transición de disparo, se determina por el
nivel lógico aplicado en D procedente de una fuente externa. El bit almacenado en el último
FF se pierde, es decir, ha sido desplazado fuera del registro. Se señala especialmente en el
registro de desplazamiento que durante cada ciclo de reloj se lee, y a la vez se escribe en
cada elemento de almacenamiento.
Página 50
Como ejemplo de la forma de operar de un registro de desplazamiento, considérese
las señales de la Figura 1.27. Inicialmente también considérese que el registro de 4 bits está
borrado, es decir, todos los FFs están en estado de reset Ahora se aplica a la entrada una
secuencia de bits de entrada en sincronismo con el reloj. La operación sincrónica significa,
por un lado que todos los FFs son activados por la misma señal de reloj y por otro que los
datos de entrada cambian una vez y sólo una vez por ciclo de reloj.
Flanco
Entrada D0
Qo
Q2
Q3
FIGURA 1.27: Señales de los registros de la Figura 1.26, borrados iniciaJmentepara la
secuencia de entrada 11010.
1.5.1.- REGISTROS DE DESPLAZAMIENTO CON CARGA SERIAL Y
PARALELO.
Los datos digitales pueden presentarse en serie o en paralelo. En la presentación
serie, los bits individuales de una palabra son transportados por un simple hilo y presentados
Página 51
mediante una secuencia temporal un bit detrás de otro. En la presentación paralelo, todos los
bils de la palabra se presentan simulláneamenle utilizando laníos hilos como bils. El foimato
serie utiliza menos hardware, pero el paralelo ahorra tiempo. Por ejemplo si un nivel lógico
se mantiene en estado estacionario durante Ifi segundo con el fin de examinarlo
adecuadamente. Entonces la transmisión serie de una palabra de 8 bits durará 8¿t segundos,
mientras que la transmisión paralela sólo tardaría Iji segundo.
Para pasar del formato serie al paralelo una palabra de 8 bits, se debe utilizar un
registro de 8 bits, en la entrada de datos del registro, los bits individuales aparecen en
sincronismo con la señal de reloj. Entonces inhabilitando la señal de reloj una vez
transcurrido ocho ciclos de reloj, la palabra estará almacenada en el registro y se podrá
disponer simultáneamente de los ocho bits, es decir en paralelo en las salidas de los 8 FFs.
Para pasar del formato paralelo al serie se debe detener el reloj y colocar los bits
individuales, todos simultáneamente, directamente en los FFs individuales. Para este
propósito se pueden utilizar los terminales de entrada de datos o los de entrada directa de los
FFs. Una vez almacenadala palabra en e1 registro se habilita la línea de reloj. Entonces en la
salida del último FF y en sincronismo con el reloj aparecerá una secuencia de los bits
individuales de la palabra.
1.5.2.- REGISTROS DE DESPLAZAMIENTO A IZQUIERDA Y DERECHA
El registro de la Figura 1.26 desplaza solamente en una dirección. Debido a la
forma de las interconexiones, el desplazamiento se hace de izquierda a derecha. A veces, es
Página 52
conveniente poder desplazar en la otra dirección. Para invertir la dirección de desplazamiento
solamente hace falta invertir el orden de las interconexiones de los FFs.Para desplazar de
derecha a izquierda (arriba hacia abajo) basta con conectar la entrada del FF - Oa la salida
del FF - 1, y así sucesivamente. Un registro que incorpore compuertas para invertir las
conexiones en respuesta a una orden de control de dirección se denomina registro de
desplazamiento a izquierda y derecha.
BORRADO RELOJ
SO
81 .
ENTRADA
DES ,DER.
W *
11 *
1
2 *
ENTRADA
DES. IZO.
1
3 •
K)
11
Y
MUX 4x1
12
13
8 P 81
L i
10
11
Y
MUX 4x1
12
13
30 81
L_—i
10
11
Y
MUX 4*1
12
13
s? S1
' L 1
K)
11
Y
M U X 4 x 1
12
13
S
[
31
L
i
t
t
i
i C
F F - 0
D Q
>Ck
CL
í
» C
FF-1
D Q
>CK
CL
í
i C
F F - 2
D Q
>C1(
CL
í
C
FF-3
D Q
>Ck
CL
í
FIGURA 1.28: Registro de desplazamiento universal.
Página 53
AO
A1
A3
Un registro capaz de desplazar hacia la izquierda y hacia la derecha se llama registro
de desplazamiento bidireccional. Si el registro tiene cualidades de desplazamiento y carga en
paralelo se llama registro de desplazamiento con carga en paralelo. Si es bidireccional y
además carga en paralelo se denomina registro de desplazamiento universal. Un registro de
este tipo se ilustra en la Figura 1.28. Este es un registro universal de 4 bits, el cual utiliza un
multiplexor de cuatro líneas a uno, cuyas entradas de selección SQ y Si determinan la forma
de operación del dispositivo; si SoSj = 00 la entrada de datos de cada FF es su propia salida
para que cada FF registre simplemente su propio estado presente, bajo estas circunstancias,
no hay cambios y el registro se describe bajo condición de retención; si SoSj = 01 el dato va
a desplazarse a la izquierda; si SoSj = 10 el dato va a desplazarse a la derecha y si SoSj =11
las entradas de datos son los niveles lógicos de las líneas de entrada en paralelo IQ, Ii,
Además tiene una entrada de reset que anula las demás entradas y borra todos los FF.
1.6.- DETECTORES DE SECUENCIAS DE CÓDIGOS.
Estado
actual
Reloj
Lógica
(circuitos combinacionales)
Memoria (FHp - Flops)
Estado
siguiente
V
n
FIGURA 1.29: Arquitectura de un sistema sincrónico detector de secuencia de códigos.
Página 54
Como una extensión del estudio de los sistemas secuenciales sincrónicos, se
considera el análisis de un detector de secuencia. La arquitectura de este sistema se muestra
en la Figura 1.29 que consta de un bloque de lógica combinacional y otro de memoria o
secuencia!. En principio se desconoce cuantos FFs se requieren, pero cualquiera que sea su
número, deben ser gobernados sincrónicamente es decir todos con la misma señal de reloj.
Si los FFs son del tipo D, el número de líneas que llevan los niveles lógicos del estado
siguiente coincidirá con el número de FFs. Si se utilizan FFs JK, las entradas lógicas a la
memoria habrán de suministrarse para las entradas J y K de cada FF. En este caso el
número n será el doble del número de FFs. Si las salidas del estado actual de memoria se
toman únicamente de la salida Q, el número m de dichas líneas coincidirá con el número de
FFs. Si se utilizan Q y Q' el número de líneas será del doble del número de FFs.
El sistema que se analiza tiene una sola entrada x y una sola salida Z. La entrada x
sirve para introducir la lógica que determina el estado siguiente, x es una entrada sincrónica,
es decir que los cambios de x ocurren sincrónicamente con la señal de reloj. El problema
consiste en diseñar un sistema para que Z sea igual a 1 solamente cuando x haya cumplido
una determinada secuencia de datos.
En caso general, especialmente cuando el diseño es de alguna complejidad, el punto
de partida es un diagrama de flujo. En casos más simples, se puede iniciar con un diagrama
de estados. Siguiendo el análisis, el diagrama de estados es traducido a una tabla de estados
mediante una asignación de estados, en este punto, es necesario elegir el tipo de FF que se
utilizará. A continuación, con diagramas K se deducen las ecuaciones de excitación o de
control de los FFs y la ecuación de salida. Finalmente se dibuja el circuito lógico resultante.
Página 55
1.6.1- REDUCCIÓN DE ESTADOS
Esta sección incluye ciertas propiedades de los circuitossecueneiales que se pueden
usar para reducir el número de compuertas y FFs durante el diseño. Cualquier problema de
diseño, debe considerar el problema de minimizar el costo del circuito final. Las dos
reducciones de costo más obvias son las reducciones en el número de FFs y número de
compuertas. Debido a que estos dos ítems son los mis obvios, se han estudiado c investigado
extensamente. De hecho, una gran porción del objetivo de la teoría de conmutación trata la
manera de buscar algoritmos para minimizar el número de FFs y compuertas en los
circuitos secuenciales.
La reducción del número de FFs en un circuito secuencia! se conoce como la
reducción de estados del problema. Los algoritmos de reducción de estados tratan con sus
procedimientos reducir el número de estados en la tabla de estado, mientras mantiene los
requerimientos de entrada - salida extemos sin cambio. Como m FFs producen 2m estados,
una reducción en el número de estados podría o no resultar en una reducción en el número
de FFs. Un efecto contrario en la reducción del número de FFs es que algunas veces el
circuito equivalente podría requerir mas compuertas combinacionales.
Como ya se ha señalado, el primer paso en el diseño de un sistema secuencia! es
determinar el número de estados de memoria necesarios. Lo importante al tratar con estados
redundantes es que un sistema secuencial se construye con el único propósito de obtener una
secuencia determinada de niveles lógicos de las salidas en respuesta a las secuencias de
entrada. Así. si tenemos dos sistemas secuenciales, uno de 4 FFs utilizado para generar 16
Página 56
estados y el otro de 2 FFs por lo tanto 4 estados. Se supone también que ambos sistemas
dan las mismas secuencias de salida para las mismas secuencias arbitrarias de entrada.
Entonces, los dos sistemas son idénticos. El sistema de 16 estados debe tener potencialidad
de suministrar salidas que el sistema de 4 no puede. Sin embargo, hasta que se aproveche la
potencialidad, los sistemas son indistinguibles. Bajo estas circunstancias se deduce que 12 de
los 16 estados del primer sistema son redundantes. Teniendo en cuenta estas
consideraciones, lo importante es reconocer los estados redundantes en una Labia de estados.
Estado presente
Estado siguiente
x=l
Salida 2
x= 1
P
FIGURA 1.30: Tabla de estados donde,/? y q tienen los mismos estados siguientes y
salidas para todos los valores de x
Considere la situación presentada en la tabla de estados de la Figura 1.30 con una
entrada x y una salida z. No se ha especificado la tabla completa, pero se presentan dos
estados especiales p y q, tales que si el estado presente es p o q, independientemente del
valor de x, las salidas son idénticas y los estados siguientes también. Es decir se tiene dos
estados p y q en la columna estado actual cuya salida actual y estados siguientes coinciden.
Página 57
Entonces, claramente se intuye que estos estados son equivalentes e indistinguibles, por lo
tanto uno de ellos puede despreciarse. Si el estado esp o q la salida es la misma, también si x
— O en ambos casos el estado siguiente es r, se concluye que el futuro del sistema depende
del valor x y no del estado que precedía a r.
FIGURA 1.31: Diagrama de estado.
A continuación, se demostrará la necesidad de reducción de estados con un
ejemplo. Se parte del diagrama de estado del circuito secuencial de la Figura 1.31. En este
ejemplo, solamente las secuencias de entrada - salida son importantes, los estados internos se
usan únicamente para suministrar las secuencias requeridas. Por esta razón, los estados
marcados dentro de los círculos se denotan por símbolos de letras en vez de sus valores
binarios, en contraste a un contador binario, donde la secuencia de valores binarios de los
estados en sí mismos se toman como salidas.
Hay un número infinito de secuencias de entrada que pueden ser aplicadas al
circuito, cada una dará como resultado una secuencia única de salida. Como ejemplo,
considérese la secuencia de entrada 01010110100 en el estado inicial A. Cada entrada de Oo
1 produce una salida de Oo 1 y causa que el circuito vaya al estado siguiente, se obtiene la
salida y secuencia de estado para una secuencia dada de entrada como sigue: con el circuito
en el estado inicial A, una entrada de Oproduce una salida de Oy el estado siguiente es B.
Página 58
Con el estado presente A y una entrada de 1, la salida es 1 y el estado siguiente es C. Con el
estado presente en B y una entrada de O la salida es O y el estado siguiente es C.
Continuando este proceso y siguiendo la secuencia del ejemplo se tiene que la secuencia
completa es como sigue:
estado
entrada
salida
A
0
0
B
1
1
A
0
0
B
1
1
A
0
0
B
1
1
A
1
1
C
0
1
D
1
1
A
0
0
B
0
0
C
TABLA 1.2: Secuencia de estados para la secuencia de entrada 01010110100.
En cada columna se tiene, el estado presente, el valor de la entrada y el valor de la
salida. El estado siguiente se escribe encima de la siguiente columna. Es importante tener en
cuenta que en este circuito los estados en si mismo son de importancia secundaria porque el
interés primordial son las secuencias de salida causadas por las secuencias de entrada. El
problema de la reducción de estado es encontrar maneras de minimizar el número de estados
en un circuito secuencia!sin alterar las relaciones de entrada - salida.
Estado presente
A
B
C
D
E
F
G
Estado
* = 0
B
C
D
C
D
G
C
siguiente
x— 1
C
A
B
A
C
F
E
* =
0
0
1
0
0
0
0
Salida z
0 x = l
1
1
0
1
1
1
1
TABLA 1.3: Tabla de estado
Página 59
Se procederá a reducir el número de estados de este ejemplo. Primero, se necesita
una tabla de estado, es más conveniente aplicar los procedimientos para la reducción de
estados aquí que en los diagramas de estado. La tabla de estado del circuito se lista en la
Tabla 1.3 y se obtiene directamente del diagrama de estado de la Figura 1.31.
Un algoritmo para la reducción de una tabla de estado especificado completamente
se da aquí. Se dice que dos estados son equivalentes si, por cada miembro del conjunto de
entradas, ellos dan exactamente la misma salida y envían al circuito al mismo estado o a un
estado equivalente. Cuando dos estados son equivalentes, uno de ellos puede quitarse sin
alterar las relaciones de entrada salida.
Estado presente
A
B
C
n
u
E
F
G
Estado
x = 0
B
C
p
DB
G
C
siguiente
x = l
C
A
B

F
E
x =
0
0
1
o
0
0
0
Salida z
3 x=l
1
1
0
i
1
1
1
TABLA 1.4:Método de reducción de la Tabla de estado.
Se aplica este algoritmo a la Tabla 1.3. Observando la tabla de verdad, se cogen los
estados presentes que van al siguiente y que tienen la misma salida para ambas
combinaciones de entrada. Los estados B y D son dos de tales estados, ellos van a los
estados C y A y tienen las salidas de O y 1 parax = O y x = 1 respectivamente. Por tanto, los
estados B y D son equivalentes y se puede eliminar uno. El procedimiento para quitar un
Página 60
estado y reemplazarlo por un equivalente se demuestra en la Tabla 1.4. La fila con el estado
presente D se tacha y el estado D se reemplaza por el estado B cada vez que aparezca en la
columnas de estado siguiente. El resultado de esta simplificación es la Tabla 1.5.
Estado siguiente
Estado presente
A
B
C
E
F
G
x = 0
B
C
B
B
G
C
x = 1
C
A
B
C
F
E
Salida 2
* = 0
0
0
1
0
0
0
X ~ 1
1
1
0
1
1
1
TABLA 1.5: Tabla de estados parcialmentereducida.
En la Tabla 1.5, los estados A y E son equivalentes y se puede eliminar uno de
ellos. Ulilizando el mismo procedimiento aplicado en la Tabla 1.4. La fila con el estado
presente E se elimina y este estado se reemplaza por el estado A cada vez que aparezca en la
columnas de estado siguiente. Cuyo resultado se presenta en la Tabla 1.6.
Estado presente
A
B
C
F
G
Estado
x = 0
B
C
B
G
C
siguiente
x = l
C
A
B
F
A
*=
0
0
1
0
0
Salida z
0 x = l
1
1
0
1
1
TABLA 1,6: Tabla de estados parcialmente reducida.
Página 61
En la Tabla 1.6, los estados B y G son equivalentes y se puede eliminar uno de
ellos. Utilizando el mismo procedimiento de simplificación anteriormente aplicado, se
elimina la fila del estado presente G y este estado se reemplaza por el estado B cada vez que
aparezca en las columnas de estado siguiente. El resultado de esta simplificación se presenta
en la Tabla1.7.
Estado presente
A
B
C
F
Estado
x = 0
B
C
B
B
siguiente
x = l
C
A
B
F
Salida
x-0
0
0
1
0
z
x ~ 1
1
1
0
1
TABLA 1.7: Tabla de estados totalmente reducida.
estado
entrada
salida
A
0
0
B
1
1
A
0
0
B
1
1
A
0
ü
B
1
1
A
1
1
C
0
1
B
1
1
A
0
0
B
0
0
C
TABLA 1.8: Secuencia de estados para la tabla de estados totalmente reducida.
La tabla reducida final se muestra en la Tabla 1.7. El diagrama de estado para la
tabla reducida constará solamente de cuatro estados y se muestra en la Figura 1.32. Este
diagrama de estado satisface las especificaciones originales de entrada - salida. La Tabla 1.8
lista la secuencia de estados para el diagrama, de estado de la Figura 1.32, es para la
secuencia de entrada usada previamente. Como era de esperarse, se nota que es la misma
secuencia de salida aunque la secuencia de estado es diferente.
Página 62
FIGURA 1.32: Diagrama de estado reducido.
1.6.1.1- ELIMINACIÓN DE ESTADOS REDUNDANTES POR PARTICIÓN
Una tabla de estados puede tener estados redundantes aun cuando no aparezcan
filas con idénticas salidas y los mismos estados siguientes. El método de eliminación de
estados redundantes por partición consiste en dividir la tabla de estados en el número más
pequeño posible de clases equivalentes de estados indistinguibles. Hay muchas formas de
dividir los estados de un circuito secuencial en clases separadas, y no todas estas divisiones
dan como resultado clases equivalentes de estados indistinguibles. Para que una partición
contenga clases equivalentes de estados indistinguibles, es necesario que se cumplan las
siguientes condiciones: primero, los estados dentro de la misma clase deben tener las mismas
salidas para cada entrada individual posible; y segundo, los estados pertenecientes a una
partición deben pertenecer a la misma clase de equivalencia.
Para ilustrar este método de reducción y ver como se determinan los estados
redundantes, consideremos la tabla de estados de la Figura 1.33. El método se descompone
en dos etapas, la primera es dividir los estados en el menor número posible de clases de
equivalencia, de tal manera que los estados dentro de una clase tengan las mismas salidas.
Página 63
Esto se hace inspeccionando la tabla de estados. En el caso de la tabla de estado de la Figura
1.33, se observa que se requieren dos clases.
Estado siguiente
Estado presente x = 0 x-1
qo qi qs
qi qs q4
q2 q6 q4
qa q? qs
q<i qe qo
qs qe qo
q6 qa q2
q? q? qo
Salidas
x = 0 x
0
0
0
0
0
1
0
0
=1
0
0
0
0
0
0
0
0
FIGURA 1.33: Tabla de estados para el ejemplo de análisis
a b
(qo, qi, q^ q3, q*, q& q?)
Clase
Estados
Siguiente clase
a
0
a a
1
a a
2
a a
3
a b
4
a a
6
a a
7
a a
b
5
a a
TABLA 1.9: Clase iniciales de estados equivalentes.
En la Tabla 1.9, la clase a incluirá los estados cuya salida es Opara entrada O, y
salida Opara entrada 1. La clase b incluye los estados cuya salida es 1 para entrada O, y
salida Opara entrada 1. Las clases de estados indistinguibles se descompondrán siempre de
subclases de las clases a y b. Esta partición satisface la primera condición. Si los siguientes
Página 64
estados para cada estado dentro de la clase a están dentro de la misma clase para cada
entrada individual posible, se satisface la segunda condición. Evidentemente, la clase a
contiene pares de eslados que no satisfacen la segunda condición, por lo tanto, no son
indistinguibles. Esto hace necesario separar la clase a en las clases a y c. La nueva partición
puede o no constar de clases de equivalencias de estados indistinguibles, para descubrir esto,
se repite el proceso anotando las clases que contienen los siguientes estados.
Clase
Estados
Siguiente clase
a
0
a a
1
c a
2
a a
4
a a
6
c a
7
a a
b
5
a a
c
3
a b
(a)
Clase
Estados
Siguiente clase
a
0
d a
2
d a
4
d a
7
a a
b
5
d a
c
3
a b
d
1
c a
6
c a
(b)
Clase
Estados
Siguiente clase
a
0
d a
2
d a
4
d a
b
5
d a
c
3
e b
d
1
c a
6
c a
e
7
e a
(c)
TABLA 1.10: Proceso de particionar en clases de estados equivalentes.
En la Tabla 1.10 (c), las cinco clases o, by c, dy e son clases de equivalencias de
estados indistinguibles. Se puede ver que todos los estados dentro de una clase tienen estados
siguientes en la misma clase, para entrada de Oy 1. De esta manera la segunda condición
queda finalmente satisfecha. Finalmente se presenta la tabla de estados reducida.
Página65
Estado
presente
qo
qi
q3
qs
q?
Estado
* =0
qi
q3
q?
qi
q?
siguiente
*=1
qo
qo
qs
qo
qo
Salida z
x = 0
0
0
0
1
0
• - Estados
x~ 1 equivalentes
o qo5 q^j q^
0 qi, q¿
0 q3
0 qs
0 q7
Clase
a
d
c
b
e
FIGURA 1.34: Tabla de estados totalmente reducida por el método de partición.
1.6.1.2- ELIMINACIÓN DE ESTADOS REDUNDANTES POR MEDIO DE
TABLAS DE IMPLICACIÓN
Estado presente
1
2 .
3
4
5
6
7
8
9
10
11
12
Estado
x = Q
2
4
6
8
10
4
10
8
10
4
2
2
siguiente
x —1
3
5
7
9
11
12
12
1
1
1
1
1
*=
0
0
0
0
0
0
0
0
1
0
0
0
Saüdaz
0 x = l
0
0
0
0
0
0
0
0
0
0
0
0
FIGURA 1.35: Tabla de estados para el ejemplo de análisis.
Página 66
Otro método para determinar las clases de equivalencias, comprende el uso de la
tabla de implicación, que también puede ser utilizado para el caso incompletamente
especificado. La tabla de implicación proporciona un procedimiento sistemático para
determinar las clases de equivalencia de los estados de un circuito secuenciaL Se desarrollará
el procedimiento utilizando la tabla de la Figura1.35.
Estado presente
1
2
3
4
5
6
7
8
9
10
11
43
Estado
X =0
2
4
6
8
10
4
10
8
10
4
2
-3
siguiente
J C = 1
3
5
7
9
11
4211
4311
1
1
1
1
±
Salida z
X =0
0
0
0
0
0
0
0
0
1
0
0
0
x = l
0
0
0
0
0
0
0
0
0
0
0
0
FIGURA 1.36: Simplificación informal de la Tabla de estados.
Para tablas de estado completamenteespecificadas, a veces es posibleprimeramente
reducir el número de estados informalmente. Es útil hacer primero este intento, ya que los
métodos fórmales implican un trabajo laborioso. En la tabla de la Figura 1.35, se observa
que las salidas y los estados siguientes de los estados 11 y 12 son idénticos. Por lo tanto
estos estados son indistinguibles y el estado 12 se puede eliminar de la tabla. Puesto que el
estado 12 es el siguiente estado de los estados 6 y 73 se sustituyen estas anotaciones con 11.
Estas modificaciones se presenta el la tabla de la Figura 1.36. Debido a estas
Página 67
modificaciones, los estados 5 y 7 son ahora indistinguibles, se puede eliminar el estado 7 y
sustituyendo todas las anotaciones de estado siguiente de 7 por 5, se obtiene la tabla de
estado que aparece en la Figura 1.37. En esta tabla se ha ubicado el estado 9 en la base,
debido a que tiene diferentes salidas que los otros estados. Parece ser que ya no hay más
reducciones posibles, pero aun se puede simplificar más aplicando un método formal tal
como el método de la tabla de implicación.
Estado siguiente
Estado presente
1
2
3
4
5
6
8
10
11
9
x = 0
2
4
6
8
10
4
8
4
2
10
y = i
A _L
3
5
5
9
11
11
1
1
1
1
Salidas
X =Q
0
0
0
0
0
0
0
0
0
1
x —1
0
0
0
0
0
0
0
0
0
0
FIGURA 1.37: Tabla de estados parcialmente reducida.
En la Figura 1.38 se presenta una tabla que permite comparar cada estado con los
demás. Descendiendo verticalmente por el lado izquierdo, se observa una lista de todos los
estados de la tabla de estados parcialmente reducida, excepto el primero, y en sentido
horizontal, se presenta la lista de todos excepto el último. Así, la tabla contiene un cuadrado
por cada par de estados. Se empieza colocando una X en los cuadros correspondiente a un
estado que tengan diferentes salidas, comparado a las salidas de los demás estados, ya que no
Página 68
pueden ser equivalente. En este caso, el estado 9 tiene una salida diferente a cualquier otro
estado, de manera que se coloca una X en cada cuadrado de la fila 9. De igual manera se
procedería si hubiera otro estado único con salida diferente que no pueda ser equivalente al
resto de eslados.
2
3
4
5
ft
a
10
2-4
3-5
2-6
3-5
2-8
3-9
2-10
3-11
2-4
3-11
2-8
1-3
2-4
1-3
1-3

A
/ 6
4-0
5-9
4-10
5-11
5-11
4-a
1-5
1-5
2-4
1-5

A
/ 8
5-9
6-10
5-11
4-6
5-11
6-8
1-5
4-G
1-5
2-6
1-5

A
/ 0
9-11
4-8
9-11
1-9
4-0
1-9
2-8
1-9

A
/ 0
8-10
1-11
4-10
1-11
2-10
1-11

A
/ 8
i-li
1-11
2-4
1-11

A
/ 8
2-8 2-4
///'
X x X
/ /   10
11
FIGURA 1.38: Tabla de implicación inicial
A continuación, se anotan en cada cuadrado los pares de estados implicados por los
pares de estados correspondientes a dicho cuadrado. Se empieza en el cuadrado superior de
la primera columna, correspondiente a los estados 1y 2. De acuerdo con la tabla de estado,
seve que este par implica a los estados 2 y 4 para x —O y, 3 y 5 para x = 1, de manera que
se anotan 2-4 y 3-5 en el cuadrado 1-2. Se continúa así hasta completar la primera columna,
en esta columna sólo existe una anotación en el cuadrado de los estados 1 y 11, puesto que
Página 69
uno de los conjuntos implicados es un conjunto único (no implica a dos estados diferentes)
por lo tanto no se anota. A continuación, se procede con las restantes columnas hasta que se
llena la tabla de implicación, tal como se presenta en la Figura 1.38.
8 10 11
FIGURA 1.39: Tabla de implicación parcialmente cruzada
La siguiente etapa consiste en hacer pasadas o barridos a través de la tabla, para ver
si algunos de los conjuntos de estados agrupados en cada cuadrado quedan excluidos como
pares posibles de equivalencia, por medio de cuadrados que ya se hayan cruzado o marcado
con una X. Esta condición, hace que el estado 9 no pueda ser equivalente a ningún otro
estado, así que cualquier conjunto implicado que contenga al estado 9 también se excluye.
Así se marca con una X en cada cuadrado que contenga un 9. Obteniéndose la tabla de
implicación parcialmente cruzada de la Figura 1.39. Luego de haber realizado esto, se puede
Página 70
observar que todos los cuadrados implicados con el estado 4 han quedado cruzados,
indicando que el estado 4 no puede ser equivalente a ningún otro estado. Así que cualquier
conjunto implicado que contenga al estado 4 también se excluye. El resultado de esta pasada
se presenta en la Figura 1.40. Aquí se observa que ningún otro estado se elimina
completamente.
V
A.
10
11
2-6
3-5
2-10
3-11
-H
z-a
1-3
1-3
X
5-11
1-5
A
6-10
5-H
6-8
1-5
. .
2-6
i-5
A.
/ / IX
k-.vtí
o
i-il
/-H
1-11
 '
1-11
A
/8
x-x
//K7'
/A
1 2 3 4 5 6 8 10 11
FIGURA 1.40: Tabla de implicación parcialmentecruzada.
A continuación, se debe verificar a todos los cuadrados que aun no se hayan
cruzado, este proceso de verificación se realiza mediante un barrido de derecha a izquierda.
Se comprueba si es que cualquier par de estados implicados (o anotados) en el cuadrado
anali/ado ya ha sido cruzado, si este es el caso, el cuadrado analizado se debe cni7.ar. El
proceso de verificación de los cuadrados que no han sido cruzados se vuelve sistemático. En
Página 71
general, este proceso se debe repetir, hasta que se complete una pasada, sin eliminar o cruzar
ningún cuadrado adicional, en tal caso se habrá llegado al resultado Una!, éste se presenta en
la tabla de la Figura 1.41.
10
U
9
2-6
3-5
2-10
3-11
1-3
5-11
x-x
6-10
5-11
2-G
1-5
2-10
1-11
1-11
z
7
10 11
FIGURA 1.41: Tabla de implicación totalmente cruzada.
Hn la tabla de implicación terminada, cada cuadrado que no se haya cruzado
representa un par de estados equivalentes. Las clases de equivalencia se determinan de la
siguiente manera. Se comprueba cada columna de la tabla final de implicación, comenzando
el la primera columna y de arriba para abajo comprobando la existencia de cuadrados sin
cruzar formando los estados equivalentes. En el ejemplo en análisis y tomando como
Página 72
referencia la tabla de implicación totalmente cruzada de la Figura 1.41 se determinan los
siguientes pares de estados equivalentes:
(1, 3), (1, 5), (1, 11), (2, 6), (2, 10), (3, 5), (3, 11), (5,11), (6, 10). Éstos se
agrupan de la siguiente manera: (1, 3), (1, 5), (1, 11), (3, 5), (3, 11), (5,11) y (2, 6), (2, 10),
(65 10). Por último se forman la clase máxima compatible. Una clase compatible es un grupo
de estados cada uno de los cuales es compatible con cada uno de los demás del grupo. Una
clase compatible es máxima cuando no es posible encontrar miembros adicionales de la
clase. En el caso analizado, encontramos que las clases máximas que podemos formar con
más de dos miembros son las siguientes:
La clase equivalente de estados (1, 3, 5, 11), y
La clase equivalente de estados (2, 6, 10).
Que comprenden todas las clases de equivalencias que se han determinado.
Estado
Estado .—-,.,
presente x = 0
Oí 02
q2 q4
q4 qs
qs qs
09 q2
siguiente Salida 2
x —1 x —0
qi 0
qi 0
09 O
Oí 0
Oí 1
x—l
0
0
0
0
0
Estados
equivalentes Clase
Ob 03, 055 Olí a
02, 06, qio b
04 C
Os d
09 ®
FIGURA 1.42: Tabla de estados totalmente reducida por el método de la tabla de
implicación.
Página 73
Aquellos estados que se encuentran en la tabla de estados pero que no están
presentes en las clases de equivalencias, no son equivalentes a ningún otro estado y se deben
insertar en la solución como clases de equivalencia de un sólo estado. Por lo tanto existen
cinco clases de equivalencia, la tabla de estados original de la Figura 1.37, se reduce a la
tabla equivalente de cinco estados de la Figura 1.42.
1.6.1.3- CONDICIONES NO IMPORTA O TÉRMINOS SIN EFECTO
Cuando se diseñan circuitos lógicos, se consideran las funciones de salida sólo para
las combinaciones posibles. Existen casos en los cuales, el número total de posibles
combinaciones del número de variables consideradas es mayor al número de combinaciones
requeridas por el circuito. Dado que existirán combinaciones de entrada que nunca
ocurrirán, sería correcto ignorarlas. Esto sería de poca visión, ya que si existen
combinaciones de entrada que no pueden ocurrir, se pueden usar para efectos de
simplificación.
Para las combinaciones que no ocurren, realmente no importa o no tiene efecto, si
se asigna un Oo 1 indistintamente a la localidad correspondiente en el mapa K, dado que
tales condiciones nunca ocurrirán. Estas localidades supuestamente se ignoran en la
obtención de las expresiones lógicas, pero en realidad se consideran como 0. Es más
importante la asignación de 1 o O a cada una de las localidades sin efecto (don 't caré) las
cuales son marcadas con X. Utilizando los términos sin efecto, se pueden obtener relaciones
lógicas más simples, por lo tanto se adquieren ventajas de los estados que no interesan
produciendo circuitos más simples.
Página 74
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora
Electrónica digital: diseño secuencial síncrono asistido por computadora

Más contenido relacionado

La actualidad más candente

Proyecto de automatismo. Control de un tunel de autolavado
Proyecto de automatismo. Control de un tunel  de autolavadoProyecto de automatismo. Control de un tunel  de autolavado
Proyecto de automatismo. Control de un tunel de autolavado
Jomicast
 
R1 e _copy_
R1 e _copy_R1 e _copy_
R1 e _copy_
Natt-N
 
Saia circuitos
Saia circuitosSaia circuitos
Saia circuitos
bomj321
 
Reloj digital
Reloj digitalReloj digital
Reloj digital
David Acsaraya
 
PLC: practica 7 shift registers
PLC: practica 7 shift registersPLC: practica 7 shift registers
PLC: practica 7 shift registers
SANTIAGO PABLO ALBERTO
 

La actualidad más candente (6)

Proyecto de automatismo. Control de un tunel de autolavado
Proyecto de automatismo. Control de un tunel  de autolavadoProyecto de automatismo. Control de un tunel  de autolavado
Proyecto de automatismo. Control de un tunel de autolavado
 
Reloj digital
Reloj digitalReloj digital
Reloj digital
 
R1 e _copy_
R1 e _copy_R1 e _copy_
R1 e _copy_
 
Saia circuitos
Saia circuitosSaia circuitos
Saia circuitos
 
Reloj digital
Reloj digitalReloj digital
Reloj digital
 
PLC: practica 7 shift registers
PLC: practica 7 shift registersPLC: practica 7 shift registers
PLC: practica 7 shift registers
 

Similar a Electrónica digital: diseño secuencial síncrono asistido por computadora

Semaforo 130130234306-phpapp01
Semaforo 130130234306-phpapp01Semaforo 130130234306-phpapp01
Semaforo 130130234306-phpapp01
Luisitoo1211
 
Electrónica digital (47) circuitos logicos secuenciales
Electrónica digital (47) circuitos logicos secuencialesElectrónica digital (47) circuitos logicos secuenciales
Electrónica digital (47) circuitos logicos secuenciales
annyeska rosas
 
Presentación de la Fase 4 de Microelectrónica - Grupo 18
Presentación de la Fase 4 de Microelectrónica - Grupo 18Presentación de la Fase 4 de Microelectrónica - Grupo 18
Presentación de la Fase 4 de Microelectrónica - Grupo 18
Jorge Microelectrónica
 
Tema 67 control programado
Tema 67 control programadoTema 67 control programado
Tema 67 control programado
Fernando Pascual Fuentes
 
Pamela blasco
Pamela blascoPamela blasco
Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...
Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...
Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...
SANTIAGO PABLO ALBERTO
 
Frankie hernandez
Frankie hernandezFrankie hernandez
Frankie hernandez
Frankie Hernandez
 
Diferencias entre circuitos combinacionales y secuenciales
Diferencias entre circuitos combinacionales y secuencialesDiferencias entre circuitos combinacionales y secuenciales
Diferencias entre circuitos combinacionales y secuenciales
Wilfred Garcia Diomeda
 
Disparo de los Flip Flop
Disparo de los Flip FlopDisparo de los Flip Flop
Disparo de los Flip Flop
Cesia Rebeca
 
Apuntes circuitos secuenciales
Apuntes circuitos secuencialesApuntes circuitos secuenciales
Apuntes circuitos secuencialeskgconchis
 
Diferencia entre circuitos combinatorios y secuenciales
Diferencia entre circuitos combinatorios y secuencialesDiferencia entre circuitos combinatorios y secuenciales
Diferencia entre circuitos combinatorios y secuenciales
Wilfred Garcia Diomeda
 
Apuntes automatas
Apuntes automatasApuntes automatas
Apuntes automatas
asdfa11789
 
Apuntes automatas
Apuntes automatasApuntes automatas
Apuntes automatas
12221fff
 
Circuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronosCircuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronosAlexa Ramirez
 
Circuitos secuenciales en la lógica de programación
Circuitos secuenciales en la lógica de programaciónCircuitos secuenciales en la lógica de programación
Circuitos secuenciales en la lógica de programación
LITTLETHINGS15
 
Detector de secuencia no solapada 1011 empleando PLA
Detector de secuencia no solapada 1011 empleando PLADetector de secuencia no solapada 1011 empleando PLA
Detector de secuencia no solapada 1011 empleando PLA
Marc Tena Gil
 
practica 3 labo 2014_escribe tu nombre en displays
practica 3 labo 2014_escribe tu nombre en displayspractica 3 labo 2014_escribe tu nombre en displays
practica 3 labo 2014_escribe tu nombre en displays
FISGON59
 

Similar a Electrónica digital: diseño secuencial síncrono asistido por computadora (20)

Semaforo
SemaforoSemaforo
Semaforo
 
Semaforo 130130234306-phpapp01
Semaforo 130130234306-phpapp01Semaforo 130130234306-phpapp01
Semaforo 130130234306-phpapp01
 
Electrónica digital (47) circuitos logicos secuenciales
Electrónica digital (47) circuitos logicos secuencialesElectrónica digital (47) circuitos logicos secuenciales
Electrónica digital (47) circuitos logicos secuenciales
 
Presentación de la Fase 4 de Microelectrónica - Grupo 18
Presentación de la Fase 4 de Microelectrónica - Grupo 18Presentación de la Fase 4 de Microelectrónica - Grupo 18
Presentación de la Fase 4 de Microelectrónica - Grupo 18
 
Tema 67 control programado
Tema 67 control programadoTema 67 control programado
Tema 67 control programado
 
Pamela blasco
Pamela blascoPamela blasco
Pamela blasco
 
Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...
Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...
Electrónica digital: Fundamentos de computadores (modulo 4) Los circuitos lóg...
 
Frankie hernandez
Frankie hernandezFrankie hernandez
Frankie hernandez
 
Diferencias entre circuitos combinacionales y secuenciales
Diferencias entre circuitos combinacionales y secuencialesDiferencias entre circuitos combinacionales y secuenciales
Diferencias entre circuitos combinacionales y secuenciales
 
Disparo de los Flip Flop
Disparo de los Flip FlopDisparo de los Flip Flop
Disparo de los Flip Flop
 
Dig2 i
Dig2 iDig2 i
Dig2 i
 
Apuntes circuitos secuenciales
Apuntes circuitos secuencialesApuntes circuitos secuenciales
Apuntes circuitos secuenciales
 
Diferencia entre circuitos combinatorios y secuenciales
Diferencia entre circuitos combinatorios y secuencialesDiferencia entre circuitos combinatorios y secuenciales
Diferencia entre circuitos combinatorios y secuenciales
 
Apuntes automatas
Apuntes automatasApuntes automatas
Apuntes automatas
 
Apuntes automatas
Apuntes automatasApuntes automatas
Apuntes automatas
 
Circuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronosCircuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronos
 
Circuitos secuenciales en la lógica de programación
Circuitos secuenciales en la lógica de programaciónCircuitos secuenciales en la lógica de programación
Circuitos secuenciales en la lógica de programación
 
Detector de secuencia no solapada 1011 empleando PLA
Detector de secuencia no solapada 1011 empleando PLADetector de secuencia no solapada 1011 empleando PLA
Detector de secuencia no solapada 1011 empleando PLA
 
practica 3 labo 2014_escribe tu nombre en displays
practica 3 labo 2014_escribe tu nombre en displayspractica 3 labo 2014_escribe tu nombre en displays
practica 3 labo 2014_escribe tu nombre en displays
 
Leomar
LeomarLeomar
Leomar
 

Más de SANTIAGO PABLO ALBERTO

secuencia electroneumática parte 1
secuencia electroneumática parte 1secuencia electroneumática parte 1
secuencia electroneumática parte 1
SANTIAGO PABLO ALBERTO
 
secuencia electroneumática parte 2
secuencia electroneumática parte 2secuencia electroneumática parte 2
secuencia electroneumática parte 2
SANTIAGO PABLO ALBERTO
 
Manual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaManual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzada
SANTIAGO PABLO ALBERTO
 
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
SANTIAGO PABLO ALBERTO
 
Programación de microcontroladores PIC en C con Fabio Pereira
Programación de microcontroladores PIC en  C con Fabio PereiraProgramación de microcontroladores PIC en  C con Fabio Pereira
Programación de microcontroladores PIC en C con Fabio Pereira
SANTIAGO PABLO ALBERTO
 
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
SANTIAGO PABLO ALBERTO
 
Arduino: Arduino de cero a experto
Arduino: Arduino de cero a expertoArduino: Arduino de cero a experto
Arduino: Arduino de cero a experto
SANTIAGO PABLO ALBERTO
 
Programación de autómatas PLC OMRON CJ/CP1
Programación de  autómatas PLC OMRON CJ/CP1Programación de  autómatas PLC OMRON CJ/CP1
Programación de autómatas PLC OMRON CJ/CP1
SANTIAGO PABLO ALBERTO
 
Manual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTManual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMART
SANTIAGO PABLO ALBERTO
 
Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART
SANTIAGO PABLO ALBERTO
 
PLC: Automatismos industriales
PLC: Automatismos industrialesPLC: Automatismos industriales
PLC: Automatismos industriales
SANTIAGO PABLO ALBERTO
 
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
SANTIAGO PABLO ALBERTO
 
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
SANTIAGO PABLO ALBERTO
 
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
SANTIAGO PABLO ALBERTO
 
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
SANTIAGO PABLO ALBERTO
 
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
SANTIAGO PABLO ALBERTO
 

Más de SANTIAGO PABLO ALBERTO (20)

secuencia electroneumática parte 1
secuencia electroneumática parte 1secuencia electroneumática parte 1
secuencia electroneumática parte 1
 
secuencia electroneumática parte 2
secuencia electroneumática parte 2secuencia electroneumática parte 2
secuencia electroneumática parte 2
 
Manual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaManual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzada
 
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
 
Programación de microcontroladores PIC en C con Fabio Pereira
Programación de microcontroladores PIC en  C con Fabio PereiraProgramación de microcontroladores PIC en  C con Fabio Pereira
Programación de microcontroladores PIC en C con Fabio Pereira
 
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
 
Arduino: Arduino de cero a experto
Arduino: Arduino de cero a expertoArduino: Arduino de cero a experto
Arduino: Arduino de cero a experto
 
Fisica I
Fisica IFisica I
Fisica I
 
Quimica.pdf
Quimica.pdfQuimica.pdf
Quimica.pdf
 
Manual básico PLC OMRON
Manual básico PLC OMRON Manual básico PLC OMRON
Manual básico PLC OMRON
 
Programación de autómatas PLC OMRON CJ/CP1
Programación de  autómatas PLC OMRON CJ/CP1Programación de  autómatas PLC OMRON CJ/CP1
Programación de autómatas PLC OMRON CJ/CP1
 
Manual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTManual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMART
 
Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART
 
PLC: Automatismos industriales
PLC: Automatismos industrialesPLC: Automatismos industriales
PLC: Automatismos industriales
 
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
 
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
 
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
 
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
 
PLC: Motor Dahlander
PLC: Motor DahlanderPLC: Motor Dahlander
PLC: Motor Dahlander
 
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
 

Último

Edafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden HistosolesEdafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden Histosoles
FacundoPortela1
 
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica químicaCiclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
ycalful01
 
Voladura de mineria subterránea pppt.ppt
Voladura de mineria subterránea pppt.pptVoladura de mineria subterránea pppt.ppt
Voladura de mineria subterránea pppt.ppt
AldithoPomatay2
 
Clasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de BartonClasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de Barton
edujunes132
 
Criterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaCriterios de la primera y segunda derivada
Criterios de la primera y segunda derivada
YoverOlivares
 
Bash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptxBash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptx
SantosCatalinoOrozco
 
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de IloPlan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
AlbertoRiveraPrado
 
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
CarlitosWay20
 
CENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptx
CENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptxCENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptx
CENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptx
SoyJulia1
 
Material magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulasMaterial magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulas
michiotes33
 
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdfDialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
fernanroq11702
 
Organizacion-y-direccion-de-los-centros-de-informatica.pptx
Organizacion-y-direccion-de-los-centros-de-informatica.pptxOrganizacion-y-direccion-de-los-centros-de-informatica.pptx
Organizacion-y-direccion-de-los-centros-de-informatica.pptx
GuillerminaReyesJuar
 
libro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdflibro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdf
MiriamAquino27
 
Transistores, relés y optoacopladores, explicación y ejercicios
Transistores, relés y  optoacopladores, explicación y ejerciciosTransistores, relés y  optoacopladores, explicación y ejercicios
Transistores, relés y optoacopladores, explicación y ejercicios
KelinnRiveraa
 
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
JhonatanOQuionesChoq
 
CIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADA
CIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADACIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADA
CIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADA
juan carlos gallo
 
Infografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdfInfografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdf
Carlos Pulido
 
01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas
ivan848686
 
Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.
MaraManuelaUrribarri
 
Metodología - Proyecto de ingeniería "Dispensador automático"
Metodología - Proyecto de ingeniería "Dispensador automático"Metodología - Proyecto de ingeniería "Dispensador automático"
Metodología - Proyecto de ingeniería "Dispensador automático"
cristiaansabi19
 

Último (20)

Edafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden HistosolesEdafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden Histosoles
 
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica químicaCiclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
 
Voladura de mineria subterránea pppt.ppt
Voladura de mineria subterránea pppt.pptVoladura de mineria subterránea pppt.ppt
Voladura de mineria subterránea pppt.ppt
 
Clasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de BartonClasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de Barton
 
Criterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaCriterios de la primera y segunda derivada
Criterios de la primera y segunda derivada
 
Bash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptxBash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptx
 
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de IloPlan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
 
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
 
CENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptx
CENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptxCENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptx
CENTROIDES DE ÁREAS Y LÍNEAS_SISTEMAS ESTRUCTURALES III.pptx
 
Material magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulasMaterial magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulas
 
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdfDialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
 
Organizacion-y-direccion-de-los-centros-de-informatica.pptx
Organizacion-y-direccion-de-los-centros-de-informatica.pptxOrganizacion-y-direccion-de-los-centros-de-informatica.pptx
Organizacion-y-direccion-de-los-centros-de-informatica.pptx
 
libro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdflibro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdf
 
Transistores, relés y optoacopladores, explicación y ejercicios
Transistores, relés y  optoacopladores, explicación y ejerciciosTransistores, relés y  optoacopladores, explicación y ejercicios
Transistores, relés y optoacopladores, explicación y ejercicios
 
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
 
CIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADA
CIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADACIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADA
CIRCUITOS Y ESQUEMAS BASICOS UTILIZADOS EN LOGICA CABLEADA
 
Infografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdfInfografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdf
 
01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas
 
Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.
 
Metodología - Proyecto de ingeniería "Dispensador automático"
Metodología - Proyecto de ingeniería "Dispensador automático"Metodología - Proyecto de ingeniería "Dispensador automático"
Metodología - Proyecto de ingeniería "Dispensador automático"
 

Electrónica digital: diseño secuencial síncrono asistido por computadora

  • 1. "ESCUELA POLITÉCNICA NACIONAL" r r FACULTAD DE INGENIERÍA ELÉCTRICA TESIS DEGRADO "DISEÑO SECUENCIAL SINCRÓNICO ASISTIDO POR COMPUTADOR" TESIS PREVIO A LA OBTENCIÓN DEL TITULO DE INGENIERO EN ELECTRÓNICAY TELECOMUNICACIONES SERGIO L. CLAVTJO MORENO QUITO, 28 DE NOVIEMBRE DE 1997
  • 2. Certifico que la presente tesis ha sido realizada en su totalidadpor elSeñor Sergio L. Clavijo Moreno, bajo mi afección. Direcfor^de Tesis
  • 3. A GRADECIMIENTO Al Ing. Carlos Novillo por su sincera colaboración en el desarrollo de esta Tesis. Deseo también expresar mi afecto sincero a iodos aquellos amigos que colaboraron con su apoyo en la culminación de esta Tesis.
  • 4. ÍNDICE CAPITULO I 1.- INTRODUCCIÓN A LOS SISTEMAS DIGITALES SECUENCIALES 1 1.1.- Introducción.. 1 1.2.- Elementos Biestables 5 1.2.1.- Circuito básico deunFlip -Flop 5 1.2.2.- Flip - Flop tipo SR temporizado 8 1.2.3.- Flip - Flop tipo D temporizado 10 1.2.4.- Flip -Floptipo JKtemporizado 12 1.2.5.- Flip -Flop tipo T temporizado 15 1.2.6.- Disparo de los Flip -Flops 16 a)Flip - Flop Maestro Esclavo 18 b) Flip - Flop Disparado por Flanco 18 1.3.- Sistemas Digitales Secuenciales 20 1.3.1.- Diseño Secuencia!Asincrónico 23 a) Ejemplo de Análisis 26 b) Ejemplo de Diseño 29 1.3.2.- Diseño Secuencia! Sincrónico 32 a) Tabla de Estado 34 b) Diagrama de Estado 36 c) Ecuaciones de Estado 37 1.4.- Contadores Sincrónicos 41 1.4.1.- Contador Binario 42 1.4.2.- Contador Binario CrecienteDecreciente 43 1.4.3.- Contador Binario con carga enParalelo 44 1.4.4.- Contador de Anillo 46 1.4.5.- Contador Johnson 47 1.5.- Registros de Desplazamiento 49 1.5.1.- Registro de Desplazamiento con carga serialy paralelo 51 1.5.2.- Registro de Desplazamiento a Izquierda y Derecha 52 1.6.- Detectores de Secuencias de Códigos 54 índice1
  • 5. 1.6.1.- Reducción de Estados 56 a) Eliminación de Estados por Partición 63 b) Reducción de estados redundantes por medio de la Tabla de Implicación 66 c) Condiciones No Importa o Términos sin Efecto 74 1.6.2.- Asignación de Estados 75 1.6.3.- Tabla Característica y de Excitación de los Flip Flops 79 CAPITULO II 2.- DISEÑO SECUENCIAL SINCRÓNICO POR EL MÉTODO 82 TRADICIONAL 2.1.- Procedimientos y Ejemplos de Diseño Secuencia! Sincrónico 83 2.2.- Problema General del Diseño Secuencia! Sincrónico 90 2.2.1.- Contadores Sincrónicos 95 2.2.2.- Registros de Desplazamiento 99 2.2.3.- Detectores de Secuencia de Códigos 102 2.3.- Diseño Secuencia! Sincrónico Utilizando Memorias ROM 112 CAPITULO III 3.- DISEÑO SECUENCIAL SINCRÓNICO ASISTIDO POR 116 COMPUTADOR 3.1.- Diagrama de Flujo y Descripción del Programa de Controly Ayudas 119 3.1.1.- Descripción del Programa Principal 119 3.1.2.- Descripción delPrograma de Ayudas 122 3.2.- Diagrama de Flujo de un Programa Tutoría! 124 3.3.- Diagrama de Flujo y Descripción del Programa General de Diseño Secuencia! Sincrónico 126 3.4.- Diagrama de Flujo y Descripción de Programas Internos 128 3.5.- Diagrama de Flujo del Diseño Secuencia! Sincrónico Utilizando ROM.... 143 índice!
  • 6. CAPITULO IV 4.- EJEMPLOS DE UTILIZACIÓN DEL PROGRAMA 145 4.1.- Programa Tutorial 146 4.1.1.- Tutorial para el Diseño de Contadores Sincrónicos 147 4.2.- Programa General del Diseño Secuencia! Sincrónico 153 4.2.1.- Contadores Sincrónicos 153 4.2.2.- Detectores de Secuencia de Códigos 160 4.3.- Programa de Diseño Secuencia! Sincrónico Utilizando ROM 166 CAPITULO V 5.- RESULTADOS, CONCLUSIONES Y RECOMENDACIONES 168 Bibliografía 173 Anexos 175 índice 3
  • 7. 1.- INTRODUCCIÓN A LOS SISTEMAS DIGITALES SECUENCIALES 1.1.- INTRODUCCIÓN Los circuitos lógicos para los sistemas digitales pueden ser combinacionales o secuenciales. Un circuito combinacional consiste de compuertas lógicas cuyas salidas se determinan directamente en cualquier momento dependiendo únicamente de la combinación presente en las entradas sin tener en cuenta la combinación anterior de las mismas. Un circuito secuencia! realiza una operación de procesamiento de información específica y completamente lógica por medio de un conjunto de funciones de Boole. Los circuitos secuenciales usan elementos de memoria (celdas binarias), además de compuertas lógicas. Sus salidas son una función de la combinación presente en las entradas y del estado de los elementos de memoria en el instante analizado. El estado de los elementos de memoria, a su vez es una función de la combinación previa de las entradas. Como consecuencia, las salidas de un circuito secuencial dependen no solamente de la combinación presente en las entradas, sino también de la combinación pasada de las entradas, y el comportamiento del circuito debe especificarse por medio de una secuencia de tiempos de las entradas y estados internos que se encuentran presentes en los elementos de memoria. Aunque cada sistema digital debe tener circuitos combinacionales, la mayoría de los sistemas encontrados en la práctica incluyen también elementos de memoria, los cuales requieren que el sistema se describa en términos de lógicasecuencial. Página 1
  • 8. Un diagrama de bloques de un circuito secuencial se muestra en la Figura 1.1. Este consiste de un circuito combinacional al cual se le conectan elementos de memoria para formar un camino de realimenlación. Los elementos de memoria son capaces de almacenar información binaria dentro de ellos. La información binaria almacenada en los elementos de memoria en un tiempo dado define el estado del circuito secuencial. Entrada Circuito combinacional Elementos de memoria Salida FIGURA 1.1: Diagrama de bloques de un circuitosecuencial. El circuito secuencial recibe la información binaria de las entradas externas. Estas entradas, conjuntamente con el presente estado de los elementos de memoria, determinan el valor binario de los terminales de salida. El diagrama de bloques demuestra que las salidas externas de un circuito secuencial son una función no solamente de las entradas externas sino del presente estado de los elementos de memoria. El estado siguiente de los elementos de memoria es también una función de las entradas externas y del estado presente. Así un circuito secuencial se especifica por medio de una secuencia de tiempo de las entradas, salidas y estados internos. Hay dos tipos de circuitos secuenciales. Su clasificación depende del tiempo de sus señales. Un circuito secuencial sincrónico es un sistema cuyo comportamiento puede Página 2
  • 9. definirse a partir del conocimiento de sus señales en instantes discretos de tiempo. En los sistemas sincrónicos la salida correspondiente a unas determinadas condiciones de entrada se difiere hasta la recepción de una señal de tiempo. Esta señal de tiempo se suministra simultáneamente a todas las partes del sistema para asegurar el funcionamiento sincrónico de las mismas. Estas señales de tiempo son trenes de impulsos que se generan independientemente del sistema, en un generador de impulsos o "rdofl comportamiento de un circuito asincrónico dependen del orden en que cambien las señales de entrada y puedan ser afectadas en un instante dado de tiempo. Los elementos de memoria comúnmente usados en los circuitos secuenciales asincrónicos son mecanismos retardadores de tiempo. En los sistemas asincrónicos, las distintas partes del sistema no están sincronizadas por los impulsos de reloj, aquí es necesario que las distintas salidas mantengan su valor hasta recibir una orden de cambio del resto del sistema. La capacidad de memoria de los mecanismos retardadores de tiempo se debe al hecho de que la señal gasta un tiempo finito para propagarse a través del dispositivo. En la práctica, el retardo de propagación interna de las compuertas lógicas es de una duración suficiente como para producir el retardo necesario, de tal manera que las unidades físicas de retardo de tiempo pueden ser despreciables. En los sistemas asincrónicos tipo compuerta, los elementos de memoria de la Figura 1.1 consisten en compuertas lógicas cuyos retardos de propagación constituyen la memoria requerida. Así, un circuito secuencia! asincrónico puede tomarse como un circuito combinacional con realimentación. Debido a la realimentación entre las compuertas lógicas, un circuito secuencia! asincrónico puede a veces volverse inestable. El problema de inestabilidad impone muchas dificultades al diseñador. Por lo tanto, su uso no es tan común como los sistemas secuenciales sincrónicos. Página 3
  • 10. Un sistema lógico secuencia! sincrónico, por definición, puede usar señales que afecten a los elementos de memoria solamente en instantes discretos de dempo. Una forma de lograr este propósito es usar sistemas de pulsos de duración limitada a través del sistema, de tal manera que la presencia o amplitud determinada de un pulso represente un 1 lógico y la ausencia del pulso (u otra amplitud) represente un Ológico. L¿ dificultad con un sistema de pulsos es que cualquier par de pulsos que lleguen de fuentes separadas independientes a las entradas de la misma compuerta mostrarán retardos no predecibles de tal manera que se separarán los pulsos ligeramente, resultando una operación no confiable. Los sistemas lógicos secuenciales sincrónicos prácticos isan amplitudes fijas tales como niveles de voltaje para las señales binarias. La sincronización se logra por un dispositivo de tiempo llamado generador maestro de tiempo el cual genera un tren periódico de pulsos de reloj. Los pulsos de reloj se distribuyen a través del sistema de tal, manera que los elementos de memoria son afectados solamente con la llegada del pulso de sincronización. En la práctica, el pulso de reloj se apHca a las compuertas conjuntamente con las señales que especifican los cambios requeridos en los elementos de memoria. Las salidas de las compuertas pueden transmitir señales solamente en los instantes que coinciden con la llegada de los pulsos de reloj. Los circuitos secuenciales sincrónicos que usan pulsos de reloj en las entradas de los elementos de memoria se llaman circuitos secuenciales temporizados. Los circuitos secuenciales temporizados son el tipo más comúnmente usado. No presentan problemas de inestabilidad y su temporización se divide fácilmente en pasos discretos independientes, cada uno de los cuales se consideraseparadamente. Página 4
  • 11. 1.2.- ELEMENTOS BIESTABLES • Los elementos de memoria usados en los circuitos secuenciales temporizados se llaman elementos biestables, más comúnmente conocidos como "Flip - JFlops" (FFs). Estos circuitos son celdas binarias capaces de almacenar un bit de información. Un circuito biestable Flip - Flop (FF) tiene dos salidas, una para el valor normal y otra para el valor complementado del bit almacenado en él. La información binaria puede entrar a un FF en una variedad de formas, éste hecho, determina diferentes tipos de FFs. El circuito de un FF puede mantener un estado binario indefinidamente (siempre y cuando se esté suministrando energía al circuito) hasta que se entregue una señal de entrada que permita cambiar de estado. La principal diferencia entre los varios tipos de FFs es el número de entradas que poseen y la manera en la que las mismas afectan el estado binario. Los tipos de FFs más comunes se discuten a continuación. 1.2.1.- CIRCUITO BÁSICO DE UN FLIP-FLOP o—i O—I s 1 0 0 0 1 R 0 0 1 0 1 Q 1 1 0 0 0 Q1 0 0 1 1 0 a) Diagrama lógico b)Tabla de verdad FIGURA 1.2: CircuitoBásico de un Flip - Flop con compuertasÑOR. Página 5
  • 12. El circuito de un FF puede construirse con dos compuertas NAND o con dos compuertas ÑOR. Estas construcciones se muestran en los diagramas lógicos de las Figuras 1.2 y 1.3. Cada circuito forma un FF básico en base al cual se puede construir uno más complicado. La conexión de acoplamiento mtercruzado de la salida de una compuerta a la entrada de la otra constituye un camino de realimenLación. Por esta razón, los circuitos se clasifican como circuitos secuenciales asincrónicos. Cada FF tiene dos salidas, Q y QJ cuyos niveles lógicos son complementarios (con las excepciones que se observan en las tablas respectivas) entre sí y dos entradas S (set, poner a 1) y R (reset - clear, reponer - borrar o poner a cero). Este tipo de FF sellama Flip - Flop SR acoplado directamente. S 1 1 0 1 0 R 0 1 1 1 0 Q 0 0 1 1 1 Q1 i i 0 0 1 R a) Diagrama lógico b) Tabla de verdad FIGURA 1.3: Circuito Básico de un Flip - Flop con compuertas NAND. Para analizar la operación del circuito de la Figura 1.2 se debe recordar que la salida de una compuerta ÑOR es Osi cualquier entrada es 1 y que la salida es 1 solamente cuando todas las entradas son 0. En éste análisis se debe asumir un punto de partida, asúmase que la entrada S es 1 y que la entrada R es 0. Como la compuerta 2 tiene una entrada de 1, su salida Q' debe ser O, lo cual coloca ambas entradas de la compuerta 1 en O, Página 6
  • 13. esto determina que la salida Q sea 1. Cuando la entrada S vuelve a O, las salidas permanecerán iguales ya que la salida Q sigue siendo 1, dejando una entrada de la compuerta 2 en 1. Esto causa que la salida QJ permanezca en O lo cual coloca ambas entradas de la compuerta 1 en Oy así la salida Q es 1. De la misma manera es posible demostrar que un 1 en la entrada R cambia la salida Q a O y QJ a 1. Cuando la entrada de puesta a cero cambia a O,las salidas no cambian. Cuando se aplica un 1 a ambas entradas, las salidas Q y Q' van a O esta combinación viola el hecho de que las salidas Q y Q* son complementarias entre sí. En operación normal esta condición debe evitarse asegurándose que no se aplique un 1 a ambas entradas simultáneamente. Un FF tiene dos entradas útiles. Cuando Q = 1 y Q' = O estará en el estado de puesta a uno (o estado 1). Cuando Q = O y Q' = 1 estará en el estado depuesta a cero (o estado cero). Las salidas Q y Q' son complementarias entre á, se les trata como salidas normal y complemento respectivamente. El estado binario de un FF se toma como el estado binario de su salida normal. Bajo operación normal, ambas entradas deben permanecer en O a no ser que se quiera cambiar el estado del FF. La aplicación de un 1 momentáneo a la entrada S causará que el FF vaya al estado 1 (Set), esta entrada debe volver a Oantes que se aplique un 1 a la entrada R. Un uno momentáneo aplicado a la entrada R causará que el FF vaya al estado cero o de borrado (Clear). Cuando ambas entradas son inicialmente Oy se aplica un 1 a la entrada S mientras que el FF esté en el estado 1 (Set) o se aplica un 1 a la entrada R Página 7
  • 14. mientras que el FF esté en el estado cero o de borrado (Clear), no existirán cambios en las salidas del FF. El circuito del FF básico NAND de la Figura 1.3 opera normalmente con ambas entradas en 1 a no ser que el estado del FF tenga que cambiarse. La aplicación de un O momentáneo a la entrada de puesta a uno, causará que Q vaya a 1y Q' vaya a O,llevando el FF al estado de puesta a uno. Después que la entrada de puesta a uno vuelva a 1, un cero momentáneo en la entrada de puesta a cero causará la transición al estado de borrado (Clear). Cuando ambas entradas vayan a 0? ambas salidas irán a 1; esta condición se evita en operación normal de un FF de este tipo, por ser una condición inestable. 1.2.2.- FLEP - FLOP TIPO SR TEMPORIZADO El FF básico por sí solo es un circuito secuencia! asincrónico. Agregando compuertas a las entradas del circuito básico, puede hacerse que el FF responda a los niveles de entrada durante la ocurrencia de un pulso de reloj. El FF SR temporizado mostrado en la Figura 1.4 (a) consiste de un FF básico ÑOR y dos compuertas AND.Las salidas de las dos compuertas AND permanecen en cero mientras el pulso del reloj Ck sea O, independientemente de los valores de las entradas S y R. Cuando el pulso de reloj vaya a 1, la información de las entradas S y R se transfiere al FF básico. El estado de puesta a 1 se logra con R = O, S = 1 y Ck = 1. Para cambiar el estado de puesta a O (o borrado) las entradas deben ser R = 1, S = O y Ck =1. Con R = 1 y S = 1, la presencia de un pulso de reloj causará que ambas salidas vayan momentáneamente a 0. Cuando se quite el pulso, el estado del FF será indeterminado, es decir podría resultar cualquier estado, dependiendo de Página 8
  • 15. sí la entrada de puesta a 1 o la de puesta a Odel FF básico pennanezcan el mayor tiempo, antes de la transición a Oal final del pulso. Q Q1 Qn 0 0 0 0 1 1 1 1 s 0 0 1 1 0 0 1 1 R 0 1 0 1 0 1 0 1 Qn+1 0 0 1 ND 1 0 1 ND a) Diagrama lógico ND: No determinado c) Tabla característica R Ck S Qn 00 01 11 10 ' 0 1 ) 0 0 ' X x ^ A 1 ( 1 J ,. .. b) Símbolo gráfico S.R =0 d) Ecuación característica FIGURA 1.4: Flip - Flop tipo SR Temporizado. Página 9
  • 16. El símbolo gráfico del FF SR sincronizado se muestra en la Figura 1.4 (b). Tiene tres entradas: S, R y Ck. El triángulo es un símbolo para el indicador dinámico y denota el hecho de que el FF responde a una transición del reloj de entrada o flanco de subida de una señal de un nivel bajo (Obinario) a un nivel alto (1 binario). La tabla característica o de función del FF se muestra en la Figura 1.4 (c). Esta tabla resume la operación del FF. Qn es el estado del FF en un tiempo dado (refiriéndose al estado presente), las columnas S y R presentan los valores posibles que pueden tener las entradas y Qni-i es el estado del FF después que haya ocurrido un pulso de reloj (refiriéndose al estado siguiente). La ecuación característica de este FF se deduce del mapa de Karnaugh de la Figura 1.4 (d). Esta ecuación especifica el valor del estado siguiente como una función del estado presente y de las entradas. La ecuación característica es una expresión algebraica para la información binaria de la tabla característica. Los dos estados indeterminados se marcan con una X en el mapa, ya que puede resultar como 1 o como 0. Sin embargo la relación S.R = Odebe incluirse como parte de la ecuación característica para especificar que Sy R no pueden ser iguales a 1 simultáneamente. 1.2.3.- FLIP - FLOP TIPO D TEMPORIZADO El FF tipo D temporizado mostrado en la Figura 1.5 es una modificación del FF SR temporÍ7.ado. Tas compuertas NAND 1y 2 forman el FF básico y las compuertas 3 y 4 las modifican para conformar el FF SR temporizado. la entrada D va directamente a la entrada S y su complemento se aplica a la entrada R a través de la compuerta 5. Mientras que el pulso de reloj de entrada sea 0? las compuertas 3 y 4 tienen un 1 en sus salidas, Página 10
  • 17. independientemente del valor de las otras entradas. Esto está de acuerdo a que las dos entradas del FF básico NAND (Figura 1.3) permanezcan inicialmente en el nivel de 1. Qn D 0 0 1 1 0 1 0 1 Qn+1 0 1 0 1 a) Diagrama lógico con compuertas NAND c) Tabla característica Q Q' Ck XX D 0 ( 1 ^ 0 0 1 1 b) Símbolo gráfico d) Ecuación característica FIGURA 1.5: Flip - Flop tipo D Temporizado Página 11
  • 18. La entrada D se comprueba durante la presencia de un pulso de reloj. Si es 1, la salida de la compuerta 3 va a 0; cambiando el FF al estado de puesta a 1 (a no ser que ya esté en ese estado). Si es O, la salida de la compuerta 4 va a Ocambiando el FF al estado de puesta a Oo borrado. El FF tipo D describe su nombre por la habilidad de transmitir "datos". Un FF tipo D es básicamente un FF SR con un inversor a la entrada R. El inversor agregado reduce el número de entradas de dos a uno. Este tipo de FF se llama algunas veces bloqueador D con compuertas o FF de bloqueo o retenedor de datos (Data - latch). La entrada Ck se le da a menudo la designación de variable G (gate) para indicar que esta entrada habilita el FF de bloqueo para hacer posible que los datos entren al mismo. El símbolo para el FF D temporizado se muestra en la Figura 1.5 (b). La tabla característica se lista en la paite (c) y la ecuación característica en la paite (d). La ecuación característica muestra que el estado siguiente del FF es igual a la entrada D y es independiente delvalor del presente estado. 1.2.4.- FLIP ~ FLOP TIPO JK Un FF JK es un refinamiento del FF SR ya que el estado indeterminado del tipo SR se define en el tipo JK. Las entradas J y K se comportan como las entradas S y R respectivamente para poner a 1 o O(Seto Clear) al FF. Cuando a ambas entradas se aplican un 1 a J y K simultáneamente, el FF cambia a su estado de complemento, esto es, si Q —1 cambia a Q = O y viceversa. Página 12
  • 19. Q Q1 9n 0 0 0 0 1 1 1 1 J 0 0 1 1 0 0 1 1 K 0 1 0 1 0 1 0 1 Qn+1 0 0 1 1 1 0 1 0 a) Diagrama lógico J Ck K b) Símbolo gráfico JK QrN c) Tabla característica 00 OÍ lí 10 0 -;-] 0 0 (< 0 '] (7 ~ I d) Ecuación característica FIGURA 1.6: Flip - Flop tipo JK Temporizado Un FF JK sincronizado se muestra en la Figura 1,6 (a). La salida Q se aplica con K y Ck a una compuerta AND de tal manera que el FF se ponga a cero (clear) durante un pulso de reloj solamente si Q fue 1previamente. De manera similar la salida Q' se aplica con Página 13
  • 20. J y Ck a una compuerta AND de tal manera que el FF se ponga a uno con un pulso de reloj, solamente siQ7 fue 1 previamente. Como se muestra en la tabla característica en la Figura 1.6 (c), el FF JK se comporta como un FF SR excepto cuando las entradas J y K sean ambas iguales a 1. Cuando J y K son iguales a 1, el pulso de reloj tiene efecto y se transmite solamente en la compuerta AND en cuya entrada está conectada la salida del FF que tiene valor presente igual a 1. Así, si Q = 1, la salida de la compuerta AND superior de la Figura 1.6 (a) se convertirá en 1 unavez que se aplique un pulso de reloj y el FF sepondrá a cero. Si Q' = 1 la salida de la compuerta AND inferior de la Figura 1.6 (a) se convertirá en 1 y el FF se pondrá a uno. En cualquier caso, el estado de la salida del FF se complementa. Las entradas en el símbolo gráfico para el FF JK deben marcarse con una J (debajo de Q) y K (debajo de Q')- La ecuación característica se muestra en la Figura 1.6 (d) y se deduce delmapa de la tabla característica Figura 1.6 (c). Nótese que debido a la conexión de realimentación del FF JK la señal de reloj Ck que permanece en 1 (mientras J = K = 1) causará transiciones repetidas y continuas delas salidas después de que las salidas hayan sido complementadas. Para evitar esta operación indeseable, los pulsos de reloj deben tener un tiempo de duración menor que la demora de propagación a través del FF. Esta es una restricción, y que la operación del circuito depende del ancho de los pulsos. Por esta razón los FF JK nunca se construyen como se muestran en la Figura 1.6 (a). La restricción del ancho del pulso puede ser eliminada con un maestro esclavo o una construcción activada por flanco. Página 14
  • 21. 1.2.5.- FLIP - FLOP TIPO T TEMPORIZADO a) Diagrama lógico Q1 T Ct Q Q1 Qn 0 0 1 1 T 0 1 0 1 QlM 0 1 1 0 c) Tabla característica b) Símbolo gráfico d) Ecuación característica FIGURA 1.7: Flip - FIop tipo TTemporizado El FF T es la versión de una entrada del FF JK. Como se muestra en la Figura 1.7 (a), el FF T se obtiene de un tipo JK al cual se le une las dos entradas. El nombre T se deriva de la habilidad del FF de variar (Toggle) o cambiar de estado. Independientemente del presente estado del FF, éste asume el estado de complemento cuando ocurre el pulso de Página 15
  • 22. reloj mientras que la entrada T esté en 1lógico. El símbolo gráfico, la tabla característica y la ecuación característica del FF T se muestran en la Figura 1.7, partes (b), (c) y (d) respectivamente. El FF T tiene lasmismas restricciones del FF JK de la Figura 1.6 (a). 1.2.6.- DISPARO DE LOS FLIP - FLOPs * El estado de un FF varía debido a un cambio momentáneo en la señal de entrada. Este cambio momentáneo se lo llama disparo (trígger) y la transición que lo causa se dice que dispara el FF. Los FFs asincrónicos, tales como los circuitos básicos de la Figura 1.2 y 1.3, requieren un disparo de entrada definido por un cambio de nivel de señal. Este nivel debe regresarse a un valor inicial (Oen el FF basado en compuertas ÑOR y 1 en aquel basado en compuertasNAND) antes de aplicarle el segundo disparo. Los FFs sincronizados 4j- se disparan por medio de pulsos, un pulso comienza a partir de su valor inicial de O, va momentáneamente a 1 y después de un corto período, regresa a su valor inicial 0. El intervalo de tiempo que ocurre desde la aplicación del pulso hasta que ocurra la transición de salida, es un factor crítico. Como seve en el diagrama de bloques de la Figura 1.1, un circuito secuencial tiene ^ un camino de realimentación entre el* circuito combinacional y los elementos de memoria, -^T- Este camino puede producir inestabilidad si la salida de los elementos de memoria (FFs) están cambiando mientras que las salidas del circuito combinacional que van a las entradas de los FFs están siendo sometidas a prueba por el pulso de reloj. Se puede prevenir el problema de tiempo si las salidas de los FFs no comienzan a cambiar hasta que el impulso de entrada haya retornado a O,Para asegurar tal operación, un FF deberá tener un retardo ^ Página16
  • 23. de propagación de la señal desde la entrada hasta la saHda, en exceso, con respecto a la duración del pulso. Este relardo es comúnmente muy difícil de controlar si el diseñador depende totalmente del retardo de propagación de las compuertas lógicas. Una forma de asegurar el retardo adecuado es incluir en el circuito del FF una unidad de retardo físico que tenga un retardo igual o mayor que la duración del pulso. Una forma muy buena de resolver el problema de temporización por realimentación es hacer que el FF sea sensible a la. transición del pulso en vez de la duración del pulso. Un pulso de reloj puede ser positivo o negativo. Una fuente de reloj positiva permanece en Odurante el intervalo entre los pulsos y va a uno durante la ocurrencia de un pulso. El pulso pasa por dos transiciones de señal: de Oa 1y el regreso de 1 a 0. Como se ve en la Figura 1.8, la transición positiva se define como flanco positi>o y la transición negativa como flanco negativo. Esta definición es aplicable también a los pulsos negativos. La forma de aplicar el disparo en los flancos es, mediante el uso de un FF Maestro - esclavo o un FF de disparo por flancos, los cuales se describen a continuación. Pulso positivo Flanco Flanco Positivo Negativo Pulso negativo Flanco Flanco Negativo Positivo FIGURA 1.8: Definición de la transición de un pulso de reloj. Página 17
  • 24. a) FLIP - FLOP MAESTRO ESCLAVO Un FF Maestro - esclavo se construye con dos FF sincrónicos separados. Un circuito sirve como maestro y el otro como esclavo y el circuito completo se trata como un FF Maestro - esclavo. El diagrama lógico de un FF Maestro - esclavo SR se muestra en la Figura 1.9. Este consiste de un FF maestro, un esclavo y un inversor. Cuando el pulso de reloj Ck es O,la salida del inversor es 1. Como el pulso de entrada de reloj del esclavo es 1> el FF se habilita y la salida Q es igual a Y mientras que Q' se iguala a Y'. El FF maestro se inhabilita debido a que Ck = 0. Cuando el pulso de reloj se convierte en 1, la información en las entradas externas S y R se transmiten al FF maestro. El FF esclavo sin embargo, se aisla por el intervalo en que el pulso esté en un nivel de 1, ya que la salida del inversor es 0. Cuando el pulso regresa a O, el FF maestro se aisla, lo cual previene que las entradas externas lo afecten. El FF esclavo ka al mismo estado que el maestro. Maestro Esclavo S . • R. • 5 Q >Ck R Q' r^ Y Y' $ Q >Ck R O1 FIGURA 1.9: Diagrama lógico de un FF Maestro - esclavo. Página 18
  • 25. b) FLIP - FLOP DISPARADO POR FLANCO Otro tipo de FF que sincroniza los cambios de estado durante una transición de pulso de reloj es el FF disparado por flanco. En este tipo de FF, las transiciones de salida ocurren en un nivel específico del pulso de reloj. Cuando el nivel de entrada del pulso excede este umbral, se cierran las entradas y el FF es por tanto inactivo a cambios posteriores en las entradas hasta que el pulso de reloj regrese a cero y ocurra otro pulso. Algunos FFs disparados por flanco causan una transición en el flanco positivo del pulso y otros causan una transición en el flanco negativo del pulso. D R Q Q1 FIGURA 1.10: Flip - Flop tipo D disparado por flanco positivo. El diagrama lógico de un FF tipo D disparado por flanco positivo se muestra en la Figura 1.10. Este consiste en tres FFs básicos del tipo mostrado en la Figura 1.3. Las Página 19
  • 26. compuertas NAND i y 2 constituyen un FF básico al igual que las compuertas 3 y 4. El tercer FF básico que comprende las compuertas 5 y 6 genera las salidas del circuito. Las entradas S y R del tercer FF básico deben mantenerse en lógica 1 para que las salidas permanezcan en sus valores estables. Cuando S = O y R = 1, la salida va al estado de puesta a uno con Q = 1. Cuando S - 1y R = O, la salida va al estado de puesta a cero con Q = 0. Las salidas S y R se determinan de los estados de los otros dos FFs básicos. Estos dos FFs básicos responden a las entradas externas D (datos) y a Ck (pulso de reloj). 1.3.- SISTEMAS DIGITALES SECUENCIALES Los circuitos lógicos cuyas entradas están alimentadas por ñientes externas, sin realimentación, es decir, sin conexión entre las salidas y las entradas de las compuertas, se los denomina circuitos combinacionales, En los circuitos combinacionales, las salidas están determinadas únicamente por las entradas. Si, en un instante t —t$ cambia alguna de las entradas, consecuentemente las salidas deben cambiar. Pero las nuevas salidas dependen solamente de las entradas después del instante de tiempo t = to y no del valor que tuvieron las salidas y las entradas antes de ese instante de tiempo. Estos circuitos combinacionales no tienen memoria. Las salidas actuales dependen de las entradas actuales, pero no de los valores de entradas y salidas anteriores. Cuando cambian las entradas hay un intervalo muy breve de tiempo durante el cual las salidas no reflejan ningún cambio. Este breve intervalo es una consecuencia del retardo finito de propagación a través de las compuertas. Retardos de propagación frecuentemente muy pequeños. Página 20
  • 27. Existen otros circuitos con realimentación en donde las salidas dependen no sólo de las entradas actuales, sino también de su historia pasada. Esto es, las salidas actuales dependen de la secuencia de valores lógicos en las enü'adas y de la condición almacenada en memoria. Estos circuitos lógicos se denominan secuendales. Cada etapa que atraviesa un circuito secuencia! se denomina estado. En cada estado el circuito almacena información de su historia pasada, para saber que hacer a continuación. Un estado se distingue de otro por su información almacenada. Parecerá que, a medida que pasa el tiempo, es necesario añadir nuevos elementos a la memoria y, por consiguiente, desarrollar una secuencia ilimitada de estados nuevos y diferentes. Sin embargo, parece que no toda la historia pasada es relevante, ni todos los estados por los que pasa el sistema son diferentes entre sí y que el número total de estados es bastante limitado. Un ejemplo servirá para ilustrar este argumento. Si se tiene la tarea de mirar una fila de cinco bombillas de luz, numeradas del 1 al 5, que normalmente están apagadas. Una bombilla cualquiera, pero solamente una cada vez, se ilumina brevemente de vez en cuando. Se indica que si se ilumina la bombilla 1, después la 2, y así sucesivamente hasta la número 5, al terminar esta secuencia hacer sonar una alarma, y si el orden de destellos no sigue esa numeración, éste debe ignorarse hasta que se encienda la luz 1 nuevamente para reiniciar el proceso. Así, cuando finalice la secuencia 1, 23 3, 4, 5, debe sonar la alarma. Si aparece la secuencia 1, 2, 4, ..., después de observar el destello dé la luz 4 se puede ignorar lo que sucede a continuación, ya que no se ha seguido el orden requerido, y se pueden seguir ignorando los destellos hasta que la. luz 1 se encienda de nuevo, ya que puede ser el comienzo de una secuencia de destellos en el orden requerido. Página 21
  • 28. Se puede determinar fácilmente el número de estados diferentes y distintos que tendrá este sistema, considerando lo que es relevante: que las luces no se han encendido, que se ha encendido la luz 1 y después la luz 2, y así sucesivamente, hasta que aparezca la secuencia 1} 2, 3, 4, 5 y entonces se haga sonar la alarma. Como se ve hay un total de 6 mensajes diferentes que es necesario tener en cuenta, por tanto 6 datos y estados diferentes. El número de diferentes secuencias de encendido que se pueden observar es grande, pero no todas las varias secuencias son diferentes de una forma relevante. Si se supone, por ejemplo, que se observa la secuencia 3, 2, 4, 5, 1, 2, 5, 3, 1, 4, 2, 1, 2. Todo lo que se necesita recordar de esta secuencia es que los dos últimos encendidos fueron 1 y 2. Así pues, esta secuencia coloca al sistema en el mismo estado que la secuencia 1, 2. Ahora si se supone que se visualiza la secuencia 1, 2, 3, 4, 2, 5, 3, 2, 1, 3, cuando finalice el sistema se encontrará en el mismo estado que si no se hubiese encendido ninguna luz. Para implementar un sistema con componentes lógicos, se utilizarán FFs como memoria. Si el sistema tiene, por ejemplo, 6 estados de recuerdo, como en el ejemplo, consecuentemente se necesita 6 estados en los FFs. Para disponer de 6 estados se necesitan 3 FFs. En realidad con 3 FFs se disponen de 8 estados, que irían de QiQiQo = 000 a QaQiQo= ni? como senecesitan solamente 6, no seutilizarían 2 estados. El comportamiento de los circuitos secuenciales se determina de las entradas, las salidas y los estados de los FFs. Tanto las salidas y el estado siguiente son una función de las entradas y del presente estado. El análisis de los circuitos secuenciales consiste en obtener una tabla o un diagrama de la secuencia de tiempo de las entradas, salidas y estados internos. Página 22
  • 29. Con respecto a la secuencia de tiempo se debe considerar cuando el sistema no posee un reloj y lambién cuando si lo tiene. En estos casos se pueden definir dos tipos de sistemas secuenciales; asincrónicos y sincrónicos, que se describen a continuación. 1.3.1.- DISEÑO SECUENCIAL ASINCRÓNICO Xo XI vo y y*- JXJ ». L C C C / I) •N •v ( Q D ck Q 0 C* Q D CX YO Y1 ...y H XO XI (1EOJNOMBOS) a) b) (EXrTKdONCI) FIGURA 1.11: a) Estructura de un circuitosecuencial sincrónico, b) Estructura de un circuito secuencial en modo fundamental (asincrónico). A los sistemas secuenciales asincrónicos se los considera como sistemas secuenciales fundamentales porque los conceptos relacionados con los sistemas secuenciales Página 23
  • 30. asincrónicos sustentan las características de los sistemas sincrónicos. Los circuitos sincrónicos tienen incorporado un circuito secuencia! asincrónico con un FF temporizado el cual es el corazón de un sistema sincrónico. Los circuitos asincrónicos no son comprendidos ampliamente, porque situaciones como velocidad crítica, estados casuales, riesgo dinámico, riesgo indispensable y oscilaciones deben tenerse muy en cuenta por los diseñadores en el manejo de estos circuitos los cuales pueden dificultar el diseño e implementación de estos sistemas. En la Figura 1.11 (a) se presenta la estructura lógica de un circuito secuencial. Se puede pensar razonablemente que el propósito del FF es suministrar un retardo entre los cambios en los niveles lógicos en las líneas de estado siguiente y el cambio correspondiente en las líneas del estado actual. Los cambios en las líneas de entrada XQ, xi, ..., x^j si los hay, ocurren nominalmentc en el inslante de una transición de disparo de reloj y las líneas del estado siguiente YO, Yj, ..., Y^.j responden inmediatamente. Sin embargo, el cambio correspondiente en las líneas de estado presenteyo, y^} ...,y^-j se retarda hasta la ocurrencia de la siguiente transición de disparo del reloj. Estas consideraciones sugieren que la estructura de la Figura 1.11 (b) puede constituir un circuito secuencial. Aquí los FFs se han sustituido por elementos que introducen un retraso. Un tipo de retraso resulta cuando una señal eléctrica se transmite a través de un hilo largo, una compuerta lógica o de una cascada de compuertas. La diferencia esencial entre el retardo de la Figura 1.11 (a) y (b) es que en el último caso, el retardo se determina completamente por el retardo del elemento y no por xina señal externa (señal de Página 24
  • 31. reloj). En la práctica, generalmente los elementos retardadores en la circuitería de la Figura 1.11 (b) no se introducen deliberadamente sino que son debidos a las compuertas de la parte lógica del sistema. Cuando el sistema de la Figura 1.11 (a) está en condición estacionaria en uno de sus estados, las entradas yo, yj, • -, yk-i pueden ser diferentes de las salidas lógicas YO,Y3, ..., Yk-i. En la Figura 1.11 (b) en condición estacionaria, las entradas y salidas lógicas deben coincidir ya que en respuesta a un cambio de una linea de entrada x^ xjf ..., x^i las líneas YO,Yj, .., Y^-i cambiarán y como mínimo, durante el tiempo de retardo, las líneas Y deben ser diferentes de las líneas y. Como las Y e y son diferentes entre sí sólo transitoriamente y durante un intervalo que no es controlable externamente, hay apatía por parte de algunos en llamarles variables de estado siguiente y del estado actual. Por ello las Y se denominan frecuentemente variables de excitación y las y, variables secundarias. El circuito secuencia! de la Figura 1.11 (a) t que utiliza k FFs y tiene k líneas de estado puede tener hasta 2 estados diferentes. Consecuentemente, el circuito de la Figura 1.11 (b) que utiliza k elementos de retardo ^ también tendrá 2 estados. Como se ha señalado, los circuitos secuenciales que utilizan FFs con señales de reloj se denominansistemas sincrónicos.En contraste, los circuitos que utilizan elementos de retardo se denominan sistemas en modo fundamental. Históricamente, los sistemas en modo fundamental aparecieron antes que los sincrónicos, estos últimos presentan muchas Página 25
  • 32. ventajas: son más fáciles de diseñar y están Hbres de retardos de propagación, variables y situaciones impredecibles. Además los sistemas en modo fundamental tienen en la actualidad aplicaciones algo limitadas. a) EJEMPLO DE ANÁLISIS (XO)R (X1)8 ^ FIGURA 1.12: Ejemplode un circuito en modo fundamental. Un ejemplo muy sencillo de un circuito en modo fundamental se da en la Figura 1.12. Se lo ha dibujado con el patrón de la Figura 1.11 (b). Se reconoce fácilmente como un retenedor estático y se han rotulado aproximadamente los terminales. Las entradas XQ y x-! son las de reset y set y la salida Z es el terminal Q del FF. En el presente ejemplo hay una línea de estado Y conectada a y que coincide con la línea Z. El retardo de la línea que suministra realimentación de la salida lógica a la entrada lógica no se muestra explícitamente. Como se ha señalado, este retardo es realmente consecuencia de los retardos de propagación de las compuertas. Como el estado se determina por el nivel lógico en una línea, puede esperarse que el sistema tenga dos estados. El comportamiento del circuito de la Figura 1.12 se describe en la tabla de la Figura 1.13 (a). Aquí se presenta un diagrama correspondiente a cada una de las ocho Página 26
  • 33. posibles combinaciones de las tres variables lógicas de entrada y, S y R. En cada comportamiento se ha puesto el valor correspondiente a la salida Y (Z). Cuando S y R no cambian y el sistema está estacionario en uno de sus estados estables, claramente se tiene que Y = y. Para indicar los estados estables la entrada correspondiente a Y en la tabla se ha encerrado en un círculo. Las entradas que no están en círculos corresponden a situaciones que pueden persistir sólo transitoriamente y se refieren a estados inestables. 00 01 11 10 SR KM 1 00 01 11 10 a) Y,* b)ES EA: Estado actual ES: Estado siguiente FIGURA 1.13: a) Tabla de transición para el circuito de la Figura 1.12. b) Tabla de estados para el circuito de la Figura 1.12. Esto es consistente con lo esperado, que cuando S = R = O hay dos estados estables, uno en el que la variable de estado y = Oy otro en el que y = 1. Ahora se supone que S = O, R - 1, entonces como indica la flecha de trazo continuo, el sistema queda en el mismo estado estable con y = 0. Un cambio posterior a S = 1, R = 1 deja al sistema en el estado y = 0. A continuación si las entradas S = R = 1 cambian a S = l y R = 0 , esta situación se analiza bajo las siguientes condiciones: en el diagrama de la Figura 1.12 se supone que no hay retardos de propagación a través de las compuertas y que existe un Página 27
  • 34. elemento de retardo entre Y e y. Entonces como se indica en la tabla de la Figura 1.13 (a), con S = 1, R = 0 e y = 0 s e tiene que Y = 1, esta situación no persistirá después de un retardo, el valor Y = 1 aparecerá en y, por lo tanto se tendrá que y = 1. Se puede también ver en la misma figura que s i S = l ) R = O e j = Y = lesun estado estable. Así, en suma cuando se está en el estado y = Ocon SR = 11, un cambio a SR = 10 lleva transitoriamente al sistema a un estado inestable, se indica en la Figura 1.13 (a) por la flecha de línea discontinua. De forma similar, comenzando de nuevo en ySR = 000 y se cambia a S = 1 pasará por el estado inestable ySR. = 010 y finalizará en el estado estable j>SR =110. Comenzando en el estado estable ySR = 101 un cambio a SR = 00 dejaría en el estado y = 1. Un cambio a SR = 11 ó SR = 01 haría volver al estado y = 0. La tabla de la Figura 1.13(a) se denomina tabla de transición, en ella los estados se han identificado por los niveles lógicos en las líneas de estado. De manera algo más general si simplemente se requieren los nombres de los estados sin hacer referencia específica a los niveles lógicos, la tabla aparecerá como en la Figura 1.13 (b). Aquí los estados se identifican por a y A, a esta tabla puede denominarse razonablemente tabla de estados. Se ve una correspondencia entre la transición presente y las tablas de estado y las transiciones y tablas de estado en los sistemas sincrónicos. Hay una restricción que se aplica en el caso asincrónico que no ocurre en el caso sincrónico. En el caso asincrónico debe haber como mínimo una entrada ES (estado siguiente) que sea la misma que la EA (estado actual). De otra forma el estado contemplado no estaría en la tabla de estados. También en el caso sincrónico ES y EA se refieren a los estados en cada período de reloj. En el caso asincrónico ES y EA se refieren a los niveles lógicos de las líneas y e Y. Página 28
  • 35. b) EJEMPLO DE DISEÑO Los conceptos utilizados en esU sección del análisis en gran manera acrecentarán el entendimiento del enfoque tradicional de diseño. Para este propósito, se considera el método de análisis mediante la realización de un ejemplo. X A B C D @,oo ©.10 ®.oi ©.u ES, ZIZO (a) 00 01 10 11 (00). 00 (Í0),10 ©,01 (Q)*11 Y1YO, ZIZO (b) X* 00 01 10 1 1. _©_ 10 @ 00 01 © 11 (u) Y1YO (también) ZIZO (o) jr EA A B C T) ®,oo c ©,10 A B (3>.oi D (5>,i i ES, ZIZO (d) FIGURA 1.14: a) Diagrama de estados de un contador módulo 4. b) Asignación de estados realizada para la tabla de estados del contador, c) Se hacen asignaciones de estados inestables para dirigir el circuito, d) Tabla de flujo. Página 29
  • 36. Como ejemplo sencillo de diseño, se considera un circuito de una sola entrada X y dos salidas 2/i y Zo- £1 circuito debe contar en módulo 4 el número de cambios de niveles lógicos de la entrada X. Entonces comenzando con^Y= O y ZjZo = 00, se desea que cuando A"realice una secuencia X= O—* 1 —* O—* !•—* O, etc., la salida recorra la secuencia - 00—* 01 —» 10—* 11 —* 00, etc. Claramente se ve la necesidad de cuatro tablas de estado e inevitablemente el diagrama de estados de la Figura 1.14 (a). Cuando X = Ose encuentra en el estado A y la salida ZiZo = 00. Cuando X cambia de Oa 1, se desea ir al estado B con ZjZo = 01. De B ir a Q de allí a D y finalmente volver a A. En la Figura 1.14 (b) se realiza una asignación de estados, que de acuerdo con la tabla al estado A se le asigna YiYo = yjyo = 00, etc. La asignación de estados se ha realizado haciendo YiYo = Z^Zo en cada caso con el fin de poder simplificar la circuitería lógica. Volviendo al estado A, se señaló que cuando X cambia de O a 1 se va a una columna en la que hay dos estados estables. ¿Cómo se puede asegurar que se finalice en el estado correcto que es B y no D?. Un esquema bastante simple se da en la Figura 1.14 (c). Aquí en la posición de la tabla paraj^^ = 00 y X = 1 se ha hecho la entrada YiY0 = 01. Por consiguiente, cuando el sistema esté en el estado yjyo = 00 (estado A), un cambio en X de Oa 1 provoca un cambio inmediato en YI e YOa YiYo = 01. Poco tiempo después (el tiempo de retardo) yjyo asume los valores YiYo y tenemos YiYo = yjyo — 01 que es precisamente lo que se requiere para mantener el circuito en el estado B. Si la entrada en la Página 30
  • 37. = 100 ha sido YjYo - 11 entonces correspondientemente habría ido del estado A al D. En general cuando se va de una columna en la que se dispone de más de un estado estable, se fabrican las entradas apropiadas en las posiciones correspondientes a estados inestables, para dirigir al sistema al estado siguiente estable apropiado. Estas direcciones que no están incluidas en la tabla de la Figura 1.14 (a) se incluye en la tabla de la Figura 1.14 (d). En la Figura 1.14 (d) no se ha especificado ZjZo en las posiciones de la tabla con estados inestables. Se decide que como esos estados duran muy poco, los valores de son inoperantes. ylyO yO X 00 01 11 10 00 0 ( i iyo r i 01 11 0 JL 0 i 10 0 ' ) 1 1 J (a) Ya (b)Y0 FIGURA 1.15: Diagrama K de YI e Yo para el contadormódulo 4. Ahora se puede construir el diagrama lógico partiendo de la información de la Tabla 1.14 (c). A partir de esla tabla se pueden fabricar las entradas de los mapas de Karnaugh para YI e YOcomo en la Figura 1.15 (a) y (b). De donde se obtiene: Página 31
  • 38. y el circuito se dibuja en la Figura 1.16. YO Y1 Z1 FIGURA 1.16: Diagrama del circuito del contador módulo 4. 1.3.2.- DISEÑO SECUENCIAL SINCRÓNICO Un diagrama lógico se reconoce como un circuito secuencial si este incluye FFs. Los FFs pueden ser de cualquier tipo y el diagrama lógico puede o no incluir compuertas combinacionales. En esta sección, se introduce primero un ejemplo de un circuito secuencial temporizado y luego se presentan varios métodos para describir el comportamiento de los circuitos secuenciales. Para ilustrar los diferentes métodos a lo largo de la discusión se usará un ejemplo específico. Un ejemplo de un circuito secuencial temporizado se muestra en la Figura 1.17. Tiene una variable de entrada, una variable de salida y dos FFs temporizados SR llamados Página 32
  • 39. A y B. Las conexiones realimentadas de las salidas de los FFs a las entradas de las compuertas no se muestran explícitamente en el dibujo para facilitar el trazado del mismo. En vez de ello, se reconocen las conexiones por su lelra marcada en cada entrada. Por ejemplo, la entrada marcada.*:' en la compuerta 1 designa una entrada del complemento de je. La segunda entrada A designa una conexión a la salida normal del FF - A. B FIGURA 1.17: Ejemplo de un circuito secuencia! temporizado. En este ejemplo se asume que hay disparo por flanco negativo en ambos FFs y en la fuente que produce la entrada externa x. Por tanto, las seriales para un estado presente dado están disponibles durante el tiempo en que se determina un pulso de reloj y empiece el siguiente, en cuyo momento el circuito pasa al estado siguiente. Página 33
  • 40. a) TABLA DE ESTADO La secuencia de tiempo de las entradas, salidas y estados de los FFs pueden enumerarse en una tabla de estado. Una tabla de estados esta definida por dos grupos de ecuaciones, las ecuaciones de salida y las ecuaciones de estado siguiente. La tabla de estado del circuito de la Figura 1.17 se muestra en la Tabla 1.1. Qn+i = S + R'.Qn (Ecuación del FF- SR) An+1 = B-c' + (B jt'y.A Bn+1 = A'-c + (A. *0'.B Afl+1 = B-c' -f (B + x').A Bn+1 = A'je + (A* +*).B i=x. AJB' Estado siguiente Estado presente AB 00 01 10 11 ,= 0 AB 00 11 10 10 X=l AB 01 01 00 11 Salida ,= 0 2 0 0 0 0 x = l 2 0 0 1 0 TABLA 1.1: Tabla de estado para el circuito de la Figura 1.17. La tabla consiste en tres secciones llamadas estado presente, estado siguiente y salida. El estado presente designa los estados de los FFs antes de la ocurrencia de un pulso de reloj. El estado siguiente muestra los estados de los FFs después de la aplicación del pulso de reloj y la sección de salida lista los valores de las variables de salida durante el presente estado. Las secciones de estado siguiente y de salida tienen dos columnas, una para la entrada x —O y la otra parax = 1. Página 34
  • 41. La deducción de la tabla de estados comienza a partir de un estado posible cualquiera que se asume inicial. El estado inicial de la mayoría de los circuitos secuenciales prácticos se define como el estado con ceros en todas las salidas normales de los FFs. Algunos circuitos secuenciales tienen un estado inicial diferente y otros no tienen ninguno. En cada caso, el análisis puede comenzar a partir de cualquier estado arbitrario, en este ejemplo, la tabla de estado empieza con el estado inicial 00. Cuando el presente estado es AB = 00. Del diagrama lógico, se observa que con los FFs en O y x = O, ninguna de las compuertas AND produce una señal lógica 1. Por tanto, el estado siguiente permanece sin cambiar con la salida t en 0. Con AB = 00 y x - 1, la compuerta 2 produce una señal lógica 1 en la entrada S del FF - B y la compuerta 3 produce una señal lógica 1 en la entrada R del FF - A. Cuando el pulso de reloj dispara los FFs, A se pone a cero y B se pone a uno, produciendo el estado siguiente 01 con la salida z en 0. Esta información se lista en la primera fila de la tabla de estado. De manera similar, se puede deducir el estado siguiente comenzando a partir de los otros tres estados presentes posibles. En general, el estado siguiente es una función de las entradas, el estado presente y el tipo de FF usado. Las entradas para la sección de salida son más fáciles de deducir. En este ejemplo, la salida z es igual a 1 solamente cuando x = 1, A = 1 y B = 0. Por tanto las columnas de salida se marcan con O, excepto cuando el estado presente es 10 y la entradaA:= 1, para lo cual z se marca con un 1. La tabla de estado de cualquier circuito secuencia! se obtiene por el mismo procedimiento dado en este ejemplo. En general un circuito secuencia! con n FFs y m Página 35
  • 42. variables de entrada tendrá 2 tilas, una para cada estado. El estado siguiente y la salida tendrán cada una 2 columnas, una para cada combinación de entrada. Las salidas externas para un circuito sccucncial puedevenir de compuertas lógicas o elementos de memoria. La sección de salida en el estado estable es necesaria solamente si hay tres salidas de las compuertas lógicas. Cualquier salida externa tomada directamente de un FF se lista en la columna de estado presente de la tabla de estado. Por tanto la sección de salida de la tabla de estado puede ser excluida si no hay salidas extemas de las compuertas lógicas. b) DIAGRAMA DE ESTADO Entrada actual SaIida actual FIGURA 1.18: Diagrama de estados para el circuito de la Figura 1.17 La información disponible en la tabla de estado puede representarse gráficamente en un diagrama de estado. En este diagrama se representa un estado por un círculo y la transición entre estos se indica por líneas dirigidas que conectan los círculos. El diagrama de estado del circuito secuencia! de la Figura 1.17 se muestra en la Figura 1.18. El estado Página 36
  • 43. binario dentro de cada circuito identifica el estado representado por el círculo (a un estado también se lo puede identificar por símbolos de letras). Las líneas dirigidas se marcan con dos números binarios separados por /. El valor de entrada que causa la transición de estado se marca primero; el número enseguida después del símbolo / da el valor de la salida durante el presente estado. Por ejemplo, la línea dirigida del estado 00 a 01 marcada 1/0, significa que el circuito secuencial está en el estado presente 00 mientras que j t = l y z = 0y que al finalizar el siguiente pulso de reloj, el circuito va al estado 01. Una línea dirigida que conecta un círculo a sí mismo indica que no hay cambio de estado. El diagrama de estado suministra la misma información que la tabla de estado y se obtiene directamente de esta o viceversa. No hay diferencia entre una tabla de estado y un diagrama de estado excepto en la forma de la presentación. La tabla de estado es más fácil deducir a partir de un diagrama lógico dado y el diagrama de estado da una vista pictórica de las transiciones de estado y está en una forma disponible para interpretación binaria de la operación del circuito. El diagrama de estado se usa a menudo como la especificación inicial de diseño de un circuito secuencial. c) ECUACIONES DE ESTADO Una ecuación de estado es una expresión algebraica que especifica las condiciones para la transición de estado de un FF. El lado izquierdo de la ecuación denota el estado siguiente del FF y el lado derecho una función de Boole que especifica las condiciones del presente estado que hacen el estado siguiente igual a 1. Una ecuación de estado es similar en forma a una ecuación característica de un FF, excepto que especifica las condiciones del estado siguiente en términos de las variables de entrada extemas y otros valores de los FF. Página37
  • 44. La ecuación de estado se deriva directamente de la tabla de estado. Por ejemplo, la ecuación de estado para el FF - A se deriva por inspección de la Tabla 1.1. De las siguientes columnas de estado? se nota que el FF - A va al estado 1 cuatro veces: cuando x = O y AB = 01 ó 10 ó 11, o cuando x = 1 y AB = 11. Esto puede expresarse algebraicamente en la ecuación de estado de la siguiente manera. = A'.B + A.B' El lado derecho de la ecuación de estado es una función de Boole para el estado presente. Cuando esta función es igual a 1, la ocurrencia de los pulsos de reloj causa que el FF - A tenga el estado siguiente de 1. Cuando una función es igual a O, el pulso de reloj causará que A tenga el estado siguiente de 0. El lado izquierdo de la ecuación identifica los FFs por un símbolo de letra seguido de una designación en función del tiempo (n + 1), para enfatizar que este valor será alcanzado por el FF, un pulso posterior de la secuencia. Bx 00 01 f 11 10 0 jj 0 0 0 ( 1 1 [i x / X A -M' 00 01 ( 11 10 0 0 ( 1 0 r—^ u j ^ 1 1 ) 0 An+i = B.x' + (B + x')-A A'.x+(A.x')'.B FIGURA 1.19: Ecuaciones de estado para los Flip - Flops A y B. Página 38
  • 45. La ecuación de estado es una función de Boole con un tiempo incluido. Es aplicable solamente en los circuitos secuenciales de reloj, ya que An+i se define para que cambie de valor con la ocurrencia del pulso de reloj en instantes discretos de tiempo. La ecuación de estado del FF - A se simplifica por medio de un mapa como se muestra en la Figura 1.19 (a). Con alguna manipulación algebraica, la función puede expresarse de la siguiente forma: si se hace que B.x} — Sy B3.x —R, se obtiene la siguienterelación: la cual es una ecuación característica de un FF - RS Figura 1.4 (d) (página 9). Esta relación entre la ecuación de estado y las ecuaciones características del FF pueden justificarse por inspección del diagrama lógico de la Figura 1.17. En éste se ve que la entrada S del FF - A es igual a la función de Boole BJC' y la entrada R es igual a B'jc. Sustituyendo estas funciones en la ecuación característica del FF, dará como resultado la ecuación de estado para el circuito secuencia! en análisis. La ecuación de estado para un FF en un circuito secuencia! puede deducirse de una tabla de estado o de un diagrama lógico. La deducción de una tabla de estado consiste en obtener la función de Boole especificando las condiciones que hacen el estado siguiente del Página 39
  • 46. FF un 1. La deducción a partir de un diagrama lógico consiste en obtener las funciones de las entradas del FF y sustituirlas en la ecuación característica delFlip - Flop. La derivación de la ecuación de estado del FF - B a partir de una tabla de verdad se muestra en el mapa de la Figura 1.19 (b). Los 1 marcados en el mapa son las entradas y las combinaciones de entrada que causan que el FF pase al estado siguiente de 1. Estas condiciones se obtienen directamente de la Tabla 1.1. La forma simplificada que se obtiene en el mapa se manipula algebraicamente y la ecuación de estado que se obtiene es: La ecuación de estado puede derivarse directamente a partir del diagrama lógico. De la Figura 1.17 se observa que la señal para la entrada S del FF - B se genera por la Función A1jey la señal para la entrada R por la función A_cJ. Sustituyendo S = A*je y R = AJC' en la ecuación característica del FF - RS dada por: Bn+j —S + R'.B se obtiene la ecuación de estado derivada anteriormente: Las funciones de estado de todos los FFs, conjuntamente con las funciones de salida, especifican totalmente un circuito secuencia! EHas representan, algebraicamente, la misma información que expresa una tabla de estado en forma tabular y un diagrama de estado en forma gráfica, Página 40
  • 47. 1.4.- CONTADORES SINCRÓNICOS Un FF tiene dos estados, un arreglo de n FFs tiene 2D estados. El estado de un arreglo de n FFs se especifica indicando qué FFs están en set y cuáles en reset. Un contador es un arreglo de FFs que pasa de estado en estado, en respuesta a un suceso. Un suceso puede ser un ciclo de una señal de reloj. En cualquier caso, el contador cuenta ci número de sucesos. El número de estados que atraviesa el contador antes de volver al estado inicial se denomina módulo del contador. Un contador construido con n FFs puede tener un módulo que como máximo es 2 , pero se puede, si es necesario disponer de contadores que no pasen por todos sus posibles estados. En este caso su módulo sería menor de 2n. Los contadores vienen en dos categorías: contadores de rizado (ripple counter) y contadores sincrónicos. En un contador de rizado, la transición de salida del FF sirve como fuente para disparar otros FFs. En otras palabras, las entradas Ck de todos los FFs se disparan no por los pulsos de entrada sino por la transición que ocurre en los otros FFs. En un contador sincrónico, los pulsos de entrada se aplican a todos los Ck de todos los FFs. El cambio de estado de un FF en particular es dependiente del estado presente de otros FFs. El pulso de reloj común dispara todos los FFs simultáneamente. En esta sección se presenta algunos contadores típicos sincrónicos y se explica la forma de operacióny características de diseño de los mismos para su mejor entendimiento. Página 41
  • 48. 1.4.1.- CONTADOR BINARIO El diseño de contadores binarios sincrónicos es tan simple que no es necesario pasar por un proceso de diseño lógico secuencial riguroso. En un contador binario sincrónico, se complementa el FF (tipo T ó JK) en la posición de menor orden con cada pulso. Esto significa que las entradas Jy K deben mantenerse en 1. Un FF en cualquier otra posición se complementa siempre y cuando todas las posiciones de menor orden sean iguales a 1, por que los bits de menor orden cambiarán a Oen el siguiente pulso de cuenta. La cuenta binaria dice cuando el siguiente bit de mayor orden debe ser complementado. Por ejemplo, si el estado presente de un contador de 4 bits es = 0011, la siguiente cuenta será 0100. AO se complementa siempre. AI se complementa porque el estado presente de AQ es 1. AI se complementa por que el estado presente de AjAo = 11. Pero Aj no se complementa porque el estado presente de = Olí, lo cual no dará una condición de todos Is. FIGURA 1.20: Contador binario sincrónico de 4 bits. Página 42
  • 49. Los contadores sincrónicos binarios tienen un patrón regular y pueden fácilmente ser construidos con FFs complementados y compuertas. El patrón regular puede verse claramente del contador de 4 bits ilustrado en la Figura 1.20. El contador puede expandirse a cualquier número de etapas, cada etapa contendrá un FF adicional y una compuerta AND que da una salida de uno si todas las salidas de los FFs previos son 1. 1.4.2.- CONTADOR BINARIO CRECIENTE - DECRECIENTE FIGURA 1.21: Contador binario creciente - decreciente de 4 bits. En un contador binario sincrónico decreciente, si se considera las salidas complementadas el FF en la posición de menor orden se complementa con cada pulso. Un FF en cualquier otra posición se complementa con un pulso siempre y cuando todos los bits Página 43
  • 50. de menor orden sean iguales a uno. Por ejemplo si el estado presente de un contador binario de 4 bits decreciente es A3A2AiAo = 1100, la cuenta siguiente será 1011. Las salidas A3íA2íAi'Ao' = 0011, A0T siempre se complementa. AI' se complementa porque el estado presente de AOJ = 1. A^' se complementa porque el estado presente de Aj'Ao' = 11. Aa1 no se complementa porque el estado presente de A2)AiíAo' —Olí, el cual no es una condición de todos unos. Al final se tiene Aa'Ai'Ai'Ao' = 0100 y AaA2AiAo = 1011 que es la cuenta siguiente. Un contador binario decreciente puede ser construido como se muestra en la Figura 1.21, considerando que las entradas de las compuertas AND deben venir de las salidas complementadas Q' y no de las salidas normales Q de los FFs previos como en el caso del contador creciente. Un contador binario capaz de contar hacia arriba o hacia abajo se muestra en la Figura 1.21. Cuando la entrada de control creciente es igual a 1, el circuito cuenta hacia arriba, ya que las entradas T se determinan a partir de los valores previos de las salidas normales en Q. Cuando la entrada de control decreciente es 1, el circuito contará hacia abajo, ya que las salidas complementadas Q* determinan los estados de las entradas T. Cuando ambas señales de control creciente y decreciente son O, el registro no cambia de estado, permanece en la misma cuenta. 1.4.3.- CONTADOR BINARIO CON CARGA EN PARALELO Los contadores usados en los sistemas digitales a menudo requieren una condición de carga en paralelo para transferir un número binario inicial antes de la operación de conteo. La Figura 1.22 muestra el diagrama lógico de un registro que tiene una característica de carga en paralelo y puede operar también como un contador. Página 44
  • 51. COMTEO FIGURA 1.22: Contador binario de 4 bits con carga en paralelo. Página 45
  • 52. La entrada de control de carga, cuando es igual a 1, inhabilita la secuencia de cuenta y causa la transferencia de datos IQ hasta I3 a los FFs AO hasta A¿ respectivamente mediante un pulso de reloj (carga sincrónica). Si la entrada de carga es Oy la entrada de control de cuenta es 1, el circuito opera como un contador. Los pulsos de reloj causan entonces cambios del estado de los FFs de acuerdo a la secuencia de cuenta binaria. Si ambas entradas de control son O, los pulsos de reloj no cambian el estado del registro. La entrada de borrado es asincrónica y cuando está en O, causará que el contador sea puesto a cero, independientemente de la presencia de los pulsos de reloj y de las otras entradas. 1.4.4.- CONTADOR DE ANILLO QO 02 RELOJ 1 C rr -o iCk F f. R ) i i C FF -1 >Ck c (. ;L ? i i c FF -3 >Ck c t :L j i i < FF -3 _ i C»Ck CL V INICIO FIGURA 1.23: Contador anillo módulo 4. El circuito ilustrado en la Figura 1.23 es un contador de anillo módulo 4. Se puede ver que es un registro de desplazamiento conectado para desplazar cíclicamente a la derecha. En principio el terminal inicializador se pone brevemente a 1, para que el FFo adopte el estado de set y los demás FFs el de reset Una vez aplicada la señal de reloj, el circuito contará ciclos de reloj de módulo 4. Cada flanco sucesivo de disparo hará que el FF pase su Página 46
  • 53. estado al siguiente FF y adoptará el estado del FF anterior. Entonces cada cuatro ciclos sucesivos de reloj el contador se encontrará en su estado inicial. Las señales del contador de anillo se indican en la Figura 1.24, donde aparecen las señales de reloj y de las salidas Q de los cuatro FFs. Se ha comenzado arbitrariamente, en el instante en que Qo= 1y Qs = Qi = Qi = O- Estas señales son muyútiles para propósitos de manejo de secuencias. Imagínese que en un sistema digital hay una serie de operaciones que necesitan realizarse en secuencia; e imagínese también que las operaciones individuales pueden realizarse habilitando una serie de conjuntos de compuertas. Entonces, las señales de la Figura 1.24 serían ideales para la función de habilitación secuencial. Q1 FIGURA 1.24: Señales del contador anillo módulo 4 de ia Figura 1.23. 1.4.5.- CONTADOR JOHNSON El contador de anillo es elegantementesimple, pero tiene la desventaja de utilizar FFs antieconómicamente. Un contador anillo de n FFs tiene de módulo /t, mientras n FFs Página 47
  • 54. permiten 2 estados. Una modificación del contador de anillo, que utiliza FFs más económicamente, es el contador Johnson, mostrado en la Figura 1.25, Aquí la interconexión entre FFs es como se muestra en la Figura 1.23, excepto que al final de la cascada de FFs, es decir, en la cola, la conexión se ha conmutado a Qj' en lugar de Qj. LOJ C FF-0 _ »Ck t _ 3 > C F F - 1 >Ck ti i i C FF -I n > C k tJ i C FF-3 »Ck t3 (a) Cuenta 0 1 2 3 4 5 6 7 0 Qo 0 1 1 1 1 0 0 0 0 Qi 0 0 1 1 1 1 0 0 0 Q2 0 0 0 1 1 1 1 0 0 QB 0 0 0 0 1 1 1 1 0 (b) FIGURA 1.25: (a) Contador JOHNSON (conmutado en cola) y (b) secuencia de conteo. Si se supone que irdcialmente todos los FFs del contador se han borrado, así Q3 = Qi —Qi ~ Qo ~ 0. Entonces, el nuevo jQanoo de disparo de reloj transferirá Oa FFj, FFi y , dejándolos inalterados. Sin embargo, a causa de la conmutación en las conexiones de Página 48
  • 55. salida del FFj, el FFo irá al estado de set. Por consiguiente, el contador pasa de = 0000 a QaQaQiQo —0001. La secuencia de estados a través de los que pasa el contador se indica en la Figura 1.25 (b). Obsérvese que el contador recorre ocho estados, es decir, doble del número de FFs, y entonces vuelve al estado inicial. Así pues, con n FFs un contador Johnson tiene módulo 2n. 1.5.- REGISTROS DE DESPLAZAMIENTO Se ha señalado que un FF puede almacenar, guardar o recordar, es decir, registrar un bit. Entonces, un arreglo de estos dispositivos es lo que se conoce como un registro, en el que se puede escribir una palabra y del que se puede leer la palabra almacenada cuando convenga. Es así, que los regislros son el papel de anotaciones en el que se pueden escribir palabras binarias para futuras referencias y consullas. La mayor parte de las operaciones en una computadora u otros procesadores digitales no son más que transferencias de palabras de un registro a otro. Una característica uní que se puede incorporar a los registros, es la posibilidad de que estos pueden realizar operaciones de desplazamiento de la información almacenada en ellos hacia la izquierda o hacia la derecha, característica que los ha denominado registros de desplazamiento. Un arreglo de FFs es la configuración lógica de un registro de desplazamiento el cual constituye un sistema sincrónico, ya que cada FF se activa mediante la misma señal de reloj. Este sistema consiste en una cadena de FFs conectados en cascada, con la salida de un FF conectado a la entrada del siguiente. Todos los FFs reciben un pulso de reloj común, por Página 49
  • 56. lo tanto el estado de un FF se transfiere al siguiente, de esta manera el estado del FF de menor orden se desplazará a través de todo el sistema. El registro de desplazamiento más sencillo es aquel que usa solamente FFs como se muestran en la Figura 1.26. La salida Q de un FF dado se conecta a la entrada D del FF siguiente. Cada pulso de reloj desplaza el contenido del registro un bit una posición a la derecha. La entrada serial determina qué va en el FF del extremo izquierdo durante el desplazamiento. La salida serial se toma de la salida del FF del extremo derecho después de la aplicación de un pulso de reloj. Aunque este registro desplace su contenido a la derecha, si se voltea la página se observa que el registro desplaza su contenido a la izquierda. Así un registro de desplazamiento unidireccional puede funcionar como un registro de desplazamiento a la derecha o a la izquierda. FF-2 SERA. REUXI C D Q —c D O ,—c D n >Ck —c D o >Ck SER*. FIGURA 1.26: Registro de desplazamiento. El estado del primer FF después de una transición de disparo, se determina por el nivel lógico aplicado en D procedente de una fuente externa. El bit almacenado en el último FF se pierde, es decir, ha sido desplazado fuera del registro. Se señala especialmente en el registro de desplazamiento que durante cada ciclo de reloj se lee, y a la vez se escribe en cada elemento de almacenamiento. Página 50
  • 57. Como ejemplo de la forma de operar de un registro de desplazamiento, considérese las señales de la Figura 1.27. Inicialmente también considérese que el registro de 4 bits está borrado, es decir, todos los FFs están en estado de reset Ahora se aplica a la entrada una secuencia de bits de entrada en sincronismo con el reloj. La operación sincrónica significa, por un lado que todos los FFs son activados por la misma señal de reloj y por otro que los datos de entrada cambian una vez y sólo una vez por ciclo de reloj. Flanco Entrada D0 Qo Q2 Q3 FIGURA 1.27: Señales de los registros de la Figura 1.26, borrados iniciaJmentepara la secuencia de entrada 11010. 1.5.1.- REGISTROS DE DESPLAZAMIENTO CON CARGA SERIAL Y PARALELO. Los datos digitales pueden presentarse en serie o en paralelo. En la presentación serie, los bits individuales de una palabra son transportados por un simple hilo y presentados Página 51
  • 58. mediante una secuencia temporal un bit detrás de otro. En la presentación paralelo, todos los bils de la palabra se presentan simulláneamenle utilizando laníos hilos como bils. El foimato serie utiliza menos hardware, pero el paralelo ahorra tiempo. Por ejemplo si un nivel lógico se mantiene en estado estacionario durante Ifi segundo con el fin de examinarlo adecuadamente. Entonces la transmisión serie de una palabra de 8 bits durará 8¿t segundos, mientras que la transmisión paralela sólo tardaría Iji segundo. Para pasar del formato serie al paralelo una palabra de 8 bits, se debe utilizar un registro de 8 bits, en la entrada de datos del registro, los bits individuales aparecen en sincronismo con la señal de reloj. Entonces inhabilitando la señal de reloj una vez transcurrido ocho ciclos de reloj, la palabra estará almacenada en el registro y se podrá disponer simultáneamente de los ocho bits, es decir en paralelo en las salidas de los 8 FFs. Para pasar del formato paralelo al serie se debe detener el reloj y colocar los bits individuales, todos simultáneamente, directamente en los FFs individuales. Para este propósito se pueden utilizar los terminales de entrada de datos o los de entrada directa de los FFs. Una vez almacenadala palabra en e1 registro se habilita la línea de reloj. Entonces en la salida del último FF y en sincronismo con el reloj aparecerá una secuencia de los bits individuales de la palabra. 1.5.2.- REGISTROS DE DESPLAZAMIENTO A IZQUIERDA Y DERECHA El registro de la Figura 1.26 desplaza solamente en una dirección. Debido a la forma de las interconexiones, el desplazamiento se hace de izquierda a derecha. A veces, es Página 52
  • 59. conveniente poder desplazar en la otra dirección. Para invertir la dirección de desplazamiento solamente hace falta invertir el orden de las interconexiones de los FFs.Para desplazar de derecha a izquierda (arriba hacia abajo) basta con conectar la entrada del FF - Oa la salida del FF - 1, y así sucesivamente. Un registro que incorpore compuertas para invertir las conexiones en respuesta a una orden de control de dirección se denomina registro de desplazamiento a izquierda y derecha. BORRADO RELOJ SO 81 . ENTRADA DES ,DER. W * 11 * 1 2 * ENTRADA DES. IZO. 1 3 • K) 11 Y MUX 4x1 12 13 8 P 81 L i 10 11 Y MUX 4x1 12 13 30 81 L_—i 10 11 Y MUX 4*1 12 13 s? S1 ' L 1 K) 11 Y M U X 4 x 1 12 13 S [ 31 L i t t i i C F F - 0 D Q >Ck CL í » C FF-1 D Q >CK CL í i C F F - 2 D Q >C1( CL í C FF-3 D Q >Ck CL í FIGURA 1.28: Registro de desplazamiento universal. Página 53 AO A1 A3
  • 60. Un registro capaz de desplazar hacia la izquierda y hacia la derecha se llama registro de desplazamiento bidireccional. Si el registro tiene cualidades de desplazamiento y carga en paralelo se llama registro de desplazamiento con carga en paralelo. Si es bidireccional y además carga en paralelo se denomina registro de desplazamiento universal. Un registro de este tipo se ilustra en la Figura 1.28. Este es un registro universal de 4 bits, el cual utiliza un multiplexor de cuatro líneas a uno, cuyas entradas de selección SQ y Si determinan la forma de operación del dispositivo; si SoSj = 00 la entrada de datos de cada FF es su propia salida para que cada FF registre simplemente su propio estado presente, bajo estas circunstancias, no hay cambios y el registro se describe bajo condición de retención; si SoSj = 01 el dato va a desplazarse a la izquierda; si SoSj = 10 el dato va a desplazarse a la derecha y si SoSj =11 las entradas de datos son los niveles lógicos de las líneas de entrada en paralelo IQ, Ii, Además tiene una entrada de reset que anula las demás entradas y borra todos los FF. 1.6.- DETECTORES DE SECUENCIAS DE CÓDIGOS. Estado actual Reloj Lógica (circuitos combinacionales) Memoria (FHp - Flops) Estado siguiente V n FIGURA 1.29: Arquitectura de un sistema sincrónico detector de secuencia de códigos. Página 54
  • 61. Como una extensión del estudio de los sistemas secuenciales sincrónicos, se considera el análisis de un detector de secuencia. La arquitectura de este sistema se muestra en la Figura 1.29 que consta de un bloque de lógica combinacional y otro de memoria o secuencia!. En principio se desconoce cuantos FFs se requieren, pero cualquiera que sea su número, deben ser gobernados sincrónicamente es decir todos con la misma señal de reloj. Si los FFs son del tipo D, el número de líneas que llevan los niveles lógicos del estado siguiente coincidirá con el número de FFs. Si se utilizan FFs JK, las entradas lógicas a la memoria habrán de suministrarse para las entradas J y K de cada FF. En este caso el número n será el doble del número de FFs. Si las salidas del estado actual de memoria se toman únicamente de la salida Q, el número m de dichas líneas coincidirá con el número de FFs. Si se utilizan Q y Q' el número de líneas será del doble del número de FFs. El sistema que se analiza tiene una sola entrada x y una sola salida Z. La entrada x sirve para introducir la lógica que determina el estado siguiente, x es una entrada sincrónica, es decir que los cambios de x ocurren sincrónicamente con la señal de reloj. El problema consiste en diseñar un sistema para que Z sea igual a 1 solamente cuando x haya cumplido una determinada secuencia de datos. En caso general, especialmente cuando el diseño es de alguna complejidad, el punto de partida es un diagrama de flujo. En casos más simples, se puede iniciar con un diagrama de estados. Siguiendo el análisis, el diagrama de estados es traducido a una tabla de estados mediante una asignación de estados, en este punto, es necesario elegir el tipo de FF que se utilizará. A continuación, con diagramas K se deducen las ecuaciones de excitación o de control de los FFs y la ecuación de salida. Finalmente se dibuja el circuito lógico resultante. Página 55
  • 62. 1.6.1- REDUCCIÓN DE ESTADOS Esta sección incluye ciertas propiedades de los circuitossecueneiales que se pueden usar para reducir el número de compuertas y FFs durante el diseño. Cualquier problema de diseño, debe considerar el problema de minimizar el costo del circuito final. Las dos reducciones de costo más obvias son las reducciones en el número de FFs y número de compuertas. Debido a que estos dos ítems son los mis obvios, se han estudiado c investigado extensamente. De hecho, una gran porción del objetivo de la teoría de conmutación trata la manera de buscar algoritmos para minimizar el número de FFs y compuertas en los circuitos secuenciales. La reducción del número de FFs en un circuito secuencia! se conoce como la reducción de estados del problema. Los algoritmos de reducción de estados tratan con sus procedimientos reducir el número de estados en la tabla de estado, mientras mantiene los requerimientos de entrada - salida extemos sin cambio. Como m FFs producen 2m estados, una reducción en el número de estados podría o no resultar en una reducción en el número de FFs. Un efecto contrario en la reducción del número de FFs es que algunas veces el circuito equivalente podría requerir mas compuertas combinacionales. Como ya se ha señalado, el primer paso en el diseño de un sistema secuencia! es determinar el número de estados de memoria necesarios. Lo importante al tratar con estados redundantes es que un sistema secuencial se construye con el único propósito de obtener una secuencia determinada de niveles lógicos de las salidas en respuesta a las secuencias de entrada. Así. si tenemos dos sistemas secuenciales, uno de 4 FFs utilizado para generar 16 Página 56
  • 63. estados y el otro de 2 FFs por lo tanto 4 estados. Se supone también que ambos sistemas dan las mismas secuencias de salida para las mismas secuencias arbitrarias de entrada. Entonces, los dos sistemas son idénticos. El sistema de 16 estados debe tener potencialidad de suministrar salidas que el sistema de 4 no puede. Sin embargo, hasta que se aproveche la potencialidad, los sistemas son indistinguibles. Bajo estas circunstancias se deduce que 12 de los 16 estados del primer sistema son redundantes. Teniendo en cuenta estas consideraciones, lo importante es reconocer los estados redundantes en una Labia de estados. Estado presente Estado siguiente x=l Salida 2 x= 1 P FIGURA 1.30: Tabla de estados donde,/? y q tienen los mismos estados siguientes y salidas para todos los valores de x Considere la situación presentada en la tabla de estados de la Figura 1.30 con una entrada x y una salida z. No se ha especificado la tabla completa, pero se presentan dos estados especiales p y q, tales que si el estado presente es p o q, independientemente del valor de x, las salidas son idénticas y los estados siguientes también. Es decir se tiene dos estados p y q en la columna estado actual cuya salida actual y estados siguientes coinciden. Página 57
  • 64. Entonces, claramente se intuye que estos estados son equivalentes e indistinguibles, por lo tanto uno de ellos puede despreciarse. Si el estado esp o q la salida es la misma, también si x — O en ambos casos el estado siguiente es r, se concluye que el futuro del sistema depende del valor x y no del estado que precedía a r. FIGURA 1.31: Diagrama de estado. A continuación, se demostrará la necesidad de reducción de estados con un ejemplo. Se parte del diagrama de estado del circuito secuencial de la Figura 1.31. En este ejemplo, solamente las secuencias de entrada - salida son importantes, los estados internos se usan únicamente para suministrar las secuencias requeridas. Por esta razón, los estados marcados dentro de los círculos se denotan por símbolos de letras en vez de sus valores binarios, en contraste a un contador binario, donde la secuencia de valores binarios de los estados en sí mismos se toman como salidas. Hay un número infinito de secuencias de entrada que pueden ser aplicadas al circuito, cada una dará como resultado una secuencia única de salida. Como ejemplo, considérese la secuencia de entrada 01010110100 en el estado inicial A. Cada entrada de Oo 1 produce una salida de Oo 1 y causa que el circuito vaya al estado siguiente, se obtiene la salida y secuencia de estado para una secuencia dada de entrada como sigue: con el circuito en el estado inicial A, una entrada de Oproduce una salida de Oy el estado siguiente es B. Página 58
  • 65. Con el estado presente A y una entrada de 1, la salida es 1 y el estado siguiente es C. Con el estado presente en B y una entrada de O la salida es O y el estado siguiente es C. Continuando este proceso y siguiendo la secuencia del ejemplo se tiene que la secuencia completa es como sigue: estado entrada salida A 0 0 B 1 1 A 0 0 B 1 1 A 0 0 B 1 1 A 1 1 C 0 1 D 1 1 A 0 0 B 0 0 C TABLA 1.2: Secuencia de estados para la secuencia de entrada 01010110100. En cada columna se tiene, el estado presente, el valor de la entrada y el valor de la salida. El estado siguiente se escribe encima de la siguiente columna. Es importante tener en cuenta que en este circuito los estados en si mismo son de importancia secundaria porque el interés primordial son las secuencias de salida causadas por las secuencias de entrada. El problema de la reducción de estado es encontrar maneras de minimizar el número de estados en un circuito secuencia!sin alterar las relaciones de entrada - salida. Estado presente A B C D E F G Estado * = 0 B C D C D G C siguiente x— 1 C A B A C F E * = 0 0 1 0 0 0 0 Salida z 0 x = l 1 1 0 1 1 1 1 TABLA 1.3: Tabla de estado Página 59
  • 66. Se procederá a reducir el número de estados de este ejemplo. Primero, se necesita una tabla de estado, es más conveniente aplicar los procedimientos para la reducción de estados aquí que en los diagramas de estado. La tabla de estado del circuito se lista en la Tabla 1.3 y se obtiene directamente del diagrama de estado de la Figura 1.31. Un algoritmo para la reducción de una tabla de estado especificado completamente se da aquí. Se dice que dos estados son equivalentes si, por cada miembro del conjunto de entradas, ellos dan exactamente la misma salida y envían al circuito al mismo estado o a un estado equivalente. Cuando dos estados son equivalentes, uno de ellos puede quitarse sin alterar las relaciones de entrada salida. Estado presente A B C n u E F G Estado x = 0 B C p DB G C siguiente x = l C A B F E x = 0 0 1 o 0 0 0 Salida z 3 x=l 1 1 0 i 1 1 1 TABLA 1.4:Método de reducción de la Tabla de estado. Se aplica este algoritmo a la Tabla 1.3. Observando la tabla de verdad, se cogen los estados presentes que van al siguiente y que tienen la misma salida para ambas combinaciones de entrada. Los estados B y D son dos de tales estados, ellos van a los estados C y A y tienen las salidas de O y 1 parax = O y x = 1 respectivamente. Por tanto, los estados B y D son equivalentes y se puede eliminar uno. El procedimiento para quitar un Página 60
  • 67. estado y reemplazarlo por un equivalente se demuestra en la Tabla 1.4. La fila con el estado presente D se tacha y el estado D se reemplaza por el estado B cada vez que aparezca en la columnas de estado siguiente. El resultado de esta simplificación es la Tabla 1.5. Estado siguiente Estado presente A B C E F G x = 0 B C B B G C x = 1 C A B C F E Salida 2 * = 0 0 0 1 0 0 0 X ~ 1 1 1 0 1 1 1 TABLA 1.5: Tabla de estados parcialmentereducida. En la Tabla 1.5, los estados A y E son equivalentes y se puede eliminar uno de ellos. Ulilizando el mismo procedimiento aplicado en la Tabla 1.4. La fila con el estado presente E se elimina y este estado se reemplaza por el estado A cada vez que aparezca en la columnas de estado siguiente. Cuyo resultado se presenta en la Tabla 1.6. Estado presente A B C F G Estado x = 0 B C B G C siguiente x = l C A B F A *= 0 0 1 0 0 Salida z 0 x = l 1 1 0 1 1 TABLA 1,6: Tabla de estados parcialmente reducida. Página 61
  • 68. En la Tabla 1.6, los estados B y G son equivalentes y se puede eliminar uno de ellos. Utilizando el mismo procedimiento de simplificación anteriormente aplicado, se elimina la fila del estado presente G y este estado se reemplaza por el estado B cada vez que aparezca en las columnas de estado siguiente. El resultado de esta simplificación se presenta en la Tabla1.7. Estado presente A B C F Estado x = 0 B C B B siguiente x = l C A B F Salida x-0 0 0 1 0 z x ~ 1 1 1 0 1 TABLA 1.7: Tabla de estados totalmente reducida. estado entrada salida A 0 0 B 1 1 A 0 0 B 1 1 A 0 ü B 1 1 A 1 1 C 0 1 B 1 1 A 0 0 B 0 0 C TABLA 1.8: Secuencia de estados para la tabla de estados totalmente reducida. La tabla reducida final se muestra en la Tabla 1.7. El diagrama de estado para la tabla reducida constará solamente de cuatro estados y se muestra en la Figura 1.32. Este diagrama de estado satisface las especificaciones originales de entrada - salida. La Tabla 1.8 lista la secuencia de estados para el diagrama, de estado de la Figura 1.32, es para la secuencia de entrada usada previamente. Como era de esperarse, se nota que es la misma secuencia de salida aunque la secuencia de estado es diferente. Página 62
  • 69. FIGURA 1.32: Diagrama de estado reducido. 1.6.1.1- ELIMINACIÓN DE ESTADOS REDUNDANTES POR PARTICIÓN Una tabla de estados puede tener estados redundantes aun cuando no aparezcan filas con idénticas salidas y los mismos estados siguientes. El método de eliminación de estados redundantes por partición consiste en dividir la tabla de estados en el número más pequeño posible de clases equivalentes de estados indistinguibles. Hay muchas formas de dividir los estados de un circuito secuencial en clases separadas, y no todas estas divisiones dan como resultado clases equivalentes de estados indistinguibles. Para que una partición contenga clases equivalentes de estados indistinguibles, es necesario que se cumplan las siguientes condiciones: primero, los estados dentro de la misma clase deben tener las mismas salidas para cada entrada individual posible; y segundo, los estados pertenecientes a una partición deben pertenecer a la misma clase de equivalencia. Para ilustrar este método de reducción y ver como se determinan los estados redundantes, consideremos la tabla de estados de la Figura 1.33. El método se descompone en dos etapas, la primera es dividir los estados en el menor número posible de clases de equivalencia, de tal manera que los estados dentro de una clase tengan las mismas salidas. Página 63
  • 70. Esto se hace inspeccionando la tabla de estados. En el caso de la tabla de estado de la Figura 1.33, se observa que se requieren dos clases. Estado siguiente Estado presente x = 0 x-1 qo qi qs qi qs q4 q2 q6 q4 qa q? qs q<i qe qo qs qe qo q6 qa q2 q? q? qo Salidas x = 0 x 0 0 0 0 0 1 0 0 =1 0 0 0 0 0 0 0 0 FIGURA 1.33: Tabla de estados para el ejemplo de análisis a b (qo, qi, q^ q3, q*, q& q?) Clase Estados Siguiente clase a 0 a a 1 a a 2 a a 3 a b 4 a a 6 a a 7 a a b 5 a a TABLA 1.9: Clase iniciales de estados equivalentes. En la Tabla 1.9, la clase a incluirá los estados cuya salida es Opara entrada O, y salida Opara entrada 1. La clase b incluye los estados cuya salida es 1 para entrada O, y salida Opara entrada 1. Las clases de estados indistinguibles se descompondrán siempre de subclases de las clases a y b. Esta partición satisface la primera condición. Si los siguientes Página 64
  • 71. estados para cada estado dentro de la clase a están dentro de la misma clase para cada entrada individual posible, se satisface la segunda condición. Evidentemente, la clase a contiene pares de eslados que no satisfacen la segunda condición, por lo tanto, no son indistinguibles. Esto hace necesario separar la clase a en las clases a y c. La nueva partición puede o no constar de clases de equivalencias de estados indistinguibles, para descubrir esto, se repite el proceso anotando las clases que contienen los siguientes estados. Clase Estados Siguiente clase a 0 a a 1 c a 2 a a 4 a a 6 c a 7 a a b 5 a a c 3 a b (a) Clase Estados Siguiente clase a 0 d a 2 d a 4 d a 7 a a b 5 d a c 3 a b d 1 c a 6 c a (b) Clase Estados Siguiente clase a 0 d a 2 d a 4 d a b 5 d a c 3 e b d 1 c a 6 c a e 7 e a (c) TABLA 1.10: Proceso de particionar en clases de estados equivalentes. En la Tabla 1.10 (c), las cinco clases o, by c, dy e son clases de equivalencias de estados indistinguibles. Se puede ver que todos los estados dentro de una clase tienen estados siguientes en la misma clase, para entrada de Oy 1. De esta manera la segunda condición queda finalmente satisfecha. Finalmente se presenta la tabla de estados reducida. Página65
  • 72. Estado presente qo qi q3 qs q? Estado * =0 qi q3 q? qi q? siguiente *=1 qo qo qs qo qo Salida z x = 0 0 0 0 1 0 • - Estados x~ 1 equivalentes o qo5 q^j q^ 0 qi, q¿ 0 q3 0 qs 0 q7 Clase a d c b e FIGURA 1.34: Tabla de estados totalmente reducida por el método de partición. 1.6.1.2- ELIMINACIÓN DE ESTADOS REDUNDANTES POR MEDIO DE TABLAS DE IMPLICACIÓN Estado presente 1 2 . 3 4 5 6 7 8 9 10 11 12 Estado x = Q 2 4 6 8 10 4 10 8 10 4 2 2 siguiente x —1 3 5 7 9 11 12 12 1 1 1 1 1 *= 0 0 0 0 0 0 0 0 1 0 0 0 Saüdaz 0 x = l 0 0 0 0 0 0 0 0 0 0 0 0 FIGURA 1.35: Tabla de estados para el ejemplo de análisis. Página 66
  • 73. Otro método para determinar las clases de equivalencias, comprende el uso de la tabla de implicación, que también puede ser utilizado para el caso incompletamente especificado. La tabla de implicación proporciona un procedimiento sistemático para determinar las clases de equivalencia de los estados de un circuito secuenciaL Se desarrollará el procedimiento utilizando la tabla de la Figura1.35. Estado presente 1 2 3 4 5 6 7 8 9 10 11 43 Estado X =0 2 4 6 8 10 4 10 8 10 4 2 -3 siguiente J C = 1 3 5 7 9 11 4211 4311 1 1 1 1 ± Salida z X =0 0 0 0 0 0 0 0 0 1 0 0 0 x = l 0 0 0 0 0 0 0 0 0 0 0 0 FIGURA 1.36: Simplificación informal de la Tabla de estados. Para tablas de estado completamenteespecificadas, a veces es posibleprimeramente reducir el número de estados informalmente. Es útil hacer primero este intento, ya que los métodos fórmales implican un trabajo laborioso. En la tabla de la Figura 1.35, se observa que las salidas y los estados siguientes de los estados 11 y 12 son idénticos. Por lo tanto estos estados son indistinguibles y el estado 12 se puede eliminar de la tabla. Puesto que el estado 12 es el siguiente estado de los estados 6 y 73 se sustituyen estas anotaciones con 11. Estas modificaciones se presenta el la tabla de la Figura 1.36. Debido a estas Página 67
  • 74. modificaciones, los estados 5 y 7 son ahora indistinguibles, se puede eliminar el estado 7 y sustituyendo todas las anotaciones de estado siguiente de 7 por 5, se obtiene la tabla de estado que aparece en la Figura 1.37. En esta tabla se ha ubicado el estado 9 en la base, debido a que tiene diferentes salidas que los otros estados. Parece ser que ya no hay más reducciones posibles, pero aun se puede simplificar más aplicando un método formal tal como el método de la tabla de implicación. Estado siguiente Estado presente 1 2 3 4 5 6 8 10 11 9 x = 0 2 4 6 8 10 4 8 4 2 10 y = i A _L 3 5 5 9 11 11 1 1 1 1 Salidas X =Q 0 0 0 0 0 0 0 0 0 1 x —1 0 0 0 0 0 0 0 0 0 0 FIGURA 1.37: Tabla de estados parcialmente reducida. En la Figura 1.38 se presenta una tabla que permite comparar cada estado con los demás. Descendiendo verticalmente por el lado izquierdo, se observa una lista de todos los estados de la tabla de estados parcialmente reducida, excepto el primero, y en sentido horizontal, se presenta la lista de todos excepto el último. Así, la tabla contiene un cuadrado por cada par de estados. Se empieza colocando una X en los cuadros correspondiente a un estado que tengan diferentes salidas, comparado a las salidas de los demás estados, ya que no Página 68
  • 75. pueden ser equivalente. En este caso, el estado 9 tiene una salida diferente a cualquier otro estado, de manera que se coloca una X en cada cuadrado de la fila 9. De igual manera se procedería si hubiera otro estado único con salida diferente que no pueda ser equivalente al resto de eslados. 2 3 4 5 ft a 10 2-4 3-5 2-6 3-5 2-8 3-9 2-10 3-11 2-4 3-11 2-8 1-3 2-4 1-3 1-3 A / 6 4-0 5-9 4-10 5-11 5-11 4-a 1-5 1-5 2-4 1-5 A / 8 5-9 6-10 5-11 4-6 5-11 6-8 1-5 4-G 1-5 2-6 1-5 A / 0 9-11 4-8 9-11 1-9 4-0 1-9 2-8 1-9 A / 0 8-10 1-11 4-10 1-11 2-10 1-11 A / 8 i-li 1-11 2-4 1-11 A / 8 2-8 2-4 ///' X x X / / 10 11 FIGURA 1.38: Tabla de implicación inicial A continuación, se anotan en cada cuadrado los pares de estados implicados por los pares de estados correspondientes a dicho cuadrado. Se empieza en el cuadrado superior de la primera columna, correspondiente a los estados 1y 2. De acuerdo con la tabla de estado, seve que este par implica a los estados 2 y 4 para x —O y, 3 y 5 para x = 1, de manera que se anotan 2-4 y 3-5 en el cuadrado 1-2. Se continúa así hasta completar la primera columna, en esta columna sólo existe una anotación en el cuadrado de los estados 1 y 11, puesto que Página 69
  • 76. uno de los conjuntos implicados es un conjunto único (no implica a dos estados diferentes) por lo tanto no se anota. A continuación, se procede con las restantes columnas hasta que se llena la tabla de implicación, tal como se presenta en la Figura 1.38. 8 10 11 FIGURA 1.39: Tabla de implicación parcialmente cruzada La siguiente etapa consiste en hacer pasadas o barridos a través de la tabla, para ver si algunos de los conjuntos de estados agrupados en cada cuadrado quedan excluidos como pares posibles de equivalencia, por medio de cuadrados que ya se hayan cruzado o marcado con una X. Esta condición, hace que el estado 9 no pueda ser equivalente a ningún otro estado, así que cualquier conjunto implicado que contenga al estado 9 también se excluye. Así se marca con una X en cada cuadrado que contenga un 9. Obteniéndose la tabla de implicación parcialmente cruzada de la Figura 1.39. Luego de haber realizado esto, se puede Página 70
  • 77. observar que todos los cuadrados implicados con el estado 4 han quedado cruzados, indicando que el estado 4 no puede ser equivalente a ningún otro estado. Así que cualquier conjunto implicado que contenga al estado 4 también se excluye. El resultado de esta pasada se presenta en la Figura 1.40. Aquí se observa que ningún otro estado se elimina completamente. V A. 10 11 2-6 3-5 2-10 3-11 -H z-a 1-3 1-3 X 5-11 1-5 A 6-10 5-H 6-8 1-5 . . 2-6 i-5 A. / / IX k-.vtí o i-il /-H 1-11 ' 1-11 A /8 x-x //K7' /A 1 2 3 4 5 6 8 10 11 FIGURA 1.40: Tabla de implicación parcialmentecruzada. A continuación, se debe verificar a todos los cuadrados que aun no se hayan cruzado, este proceso de verificación se realiza mediante un barrido de derecha a izquierda. Se comprueba si es que cualquier par de estados implicados (o anotados) en el cuadrado anali/ado ya ha sido cruzado, si este es el caso, el cuadrado analizado se debe cni7.ar. El proceso de verificación de los cuadrados que no han sido cruzados se vuelve sistemático. En Página 71
  • 78. general, este proceso se debe repetir, hasta que se complete una pasada, sin eliminar o cruzar ningún cuadrado adicional, en tal caso se habrá llegado al resultado Una!, éste se presenta en la tabla de la Figura 1.41. 10 U 9 2-6 3-5 2-10 3-11 1-3 5-11 x-x 6-10 5-11 2-G 1-5 2-10 1-11 1-11 z 7 10 11 FIGURA 1.41: Tabla de implicación totalmente cruzada. Hn la tabla de implicación terminada, cada cuadrado que no se haya cruzado representa un par de estados equivalentes. Las clases de equivalencia se determinan de la siguiente manera. Se comprueba cada columna de la tabla final de implicación, comenzando el la primera columna y de arriba para abajo comprobando la existencia de cuadrados sin cruzar formando los estados equivalentes. En el ejemplo en análisis y tomando como Página 72
  • 79. referencia la tabla de implicación totalmente cruzada de la Figura 1.41 se determinan los siguientes pares de estados equivalentes: (1, 3), (1, 5), (1, 11), (2, 6), (2, 10), (3, 5), (3, 11), (5,11), (6, 10). Éstos se agrupan de la siguiente manera: (1, 3), (1, 5), (1, 11), (3, 5), (3, 11), (5,11) y (2, 6), (2, 10), (65 10). Por último se forman la clase máxima compatible. Una clase compatible es un grupo de estados cada uno de los cuales es compatible con cada uno de los demás del grupo. Una clase compatible es máxima cuando no es posible encontrar miembros adicionales de la clase. En el caso analizado, encontramos que las clases máximas que podemos formar con más de dos miembros son las siguientes: La clase equivalente de estados (1, 3, 5, 11), y La clase equivalente de estados (2, 6, 10). Que comprenden todas las clases de equivalencias que se han determinado. Estado Estado .—-,., presente x = 0 Oí 02 q2 q4 q4 qs qs qs 09 q2 siguiente Salida 2 x —1 x —0 qi 0 qi 0 09 O Oí 0 Oí 1 x—l 0 0 0 0 0 Estados equivalentes Clase Ob 03, 055 Olí a 02, 06, qio b 04 C Os d 09 ® FIGURA 1.42: Tabla de estados totalmente reducida por el método de la tabla de implicación. Página 73
  • 80. Aquellos estados que se encuentran en la tabla de estados pero que no están presentes en las clases de equivalencias, no son equivalentes a ningún otro estado y se deben insertar en la solución como clases de equivalencia de un sólo estado. Por lo tanto existen cinco clases de equivalencia, la tabla de estados original de la Figura 1.37, se reduce a la tabla equivalente de cinco estados de la Figura 1.42. 1.6.1.3- CONDICIONES NO IMPORTA O TÉRMINOS SIN EFECTO Cuando se diseñan circuitos lógicos, se consideran las funciones de salida sólo para las combinaciones posibles. Existen casos en los cuales, el número total de posibles combinaciones del número de variables consideradas es mayor al número de combinaciones requeridas por el circuito. Dado que existirán combinaciones de entrada que nunca ocurrirán, sería correcto ignorarlas. Esto sería de poca visión, ya que si existen combinaciones de entrada que no pueden ocurrir, se pueden usar para efectos de simplificación. Para las combinaciones que no ocurren, realmente no importa o no tiene efecto, si se asigna un Oo 1 indistintamente a la localidad correspondiente en el mapa K, dado que tales condiciones nunca ocurrirán. Estas localidades supuestamente se ignoran en la obtención de las expresiones lógicas, pero en realidad se consideran como 0. Es más importante la asignación de 1 o O a cada una de las localidades sin efecto (don 't caré) las cuales son marcadas con X. Utilizando los términos sin efecto, se pueden obtener relaciones lógicas más simples, por lo tanto se adquieren ventajas de los estados que no interesan produciendo circuitos más simples. Página 74