circuitos secuenciales sincronos

83
CIRCUITOS SECUENCIALES SINCRONOS Introducción Los sistemas digitales pueden operar en forma asíncrona o síncrona. En los sistemas asíncronos, las salidas de los circuitos lógicos pueden cambiar de estado en cualquier momento en que una o mas de las entradas cambie. En los sistemas síncronos los tiempos exactos en que alguna salida puede cambiar de estado se determinan por medio de una señal denominada reloj o clock. Esta señal de reloj consiste en una serie de pulsos rectangulares o cuadrados como se muestra en la figura. Denominaremos periodo al tiempo entre transiciones sucesivas en la misma dirección, esto es entre dos flancos de subida o entre dos flancos de bajada. La transición de estado en los circuitos secuenciales síncronos se efectúan en el momento en el que el reloj hace una transición entre 0 y 1 (flanco de subida) o entre 1 y 0 (flanco de bajada). Entre pulsos sucesivos de reloj no se efectúan cambios. El inverso del periodo es lo que denominamos la frecuencia del reloj. El ancho del pulso de reloj es el tiempo durante el cual

Upload: vitore-morleone

Post on 12-Aug-2015

237 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: CIRCUITOS SECUENCIALES SINCRONOS

CIRCUITOS SECUENCIALES SINCRONOS

IntroducciónLos sistemas digitales pueden operar en forma asíncrona o síncrona. En los sistemas asíncronos, las salidas de los circuitos lógicos pueden cambiar de estado en cualquier momento en que una o mas de las entradas cambie. En los sistemas síncronos los tiempos exactos en que alguna salida puede cambiar de estado se determinan por medio de una señal denominada reloj o clock. Esta señal de reloj consiste en una serie de pulsos rectangulares o cuadrados como se muestra en la figura.

Denominaremos periodo al tiempo entre transiciones sucesivas en la misma dirección, esto es entre dos flancos de subida o entre dos flancos de bajada. La transición de estado en los circuitos secuenciales síncronos se efectúan en el momento en el que el reloj hace una transición entre 0 y 1 (flanco de subida) o entre 1 y 0 (flanco de bajada). Entre pulsos sucesivos de reloj no se efectúan cambios.

El inverso del periodo es lo que denominamos la frecuencia del reloj.

El ancho del pulso de reloj es el tiempo durante el cual la señal de reloj está en 1.

En el análisis anterior sobre el latch SC podemos ver que es un circuito asíncrono, ya que el estado cambia en cualquier momento que cambiemos las entradas y no sincronizado con un pulso de reloj.

Page 2: CIRCUITOS SECUENCIALES SINCRONOS

Para hacerlo síncrono se añade una entrada adicional como se muestra en la figura.

El flip-flop sincronizado por reloj consiste del latch básico con compuertas NOR mostrado anteriormente y dos compuertas AND. La salida de las dos compuertas AND quedará en 0 mientras el pulso de reloj esté en 0, sin importar los valores de entrada de S y C. Cuando el pulso de reloj está en 1, la información de las entradas S y C pasa hacia el latch básico. Como puede verse en el diagrama de tiempo, en este tipo de FF ahora los cambios se producen solamente cuando la señal de reloj esté en 1. Pero esto no previene que el FF cambie varias veces durante un ciclo de reloj, y esto no es un comportamiento deseado, por lo tanto de alguna manera este FF sigue siendo de alguna manera asíncrono (por lo menos mientras el pulso de reloj esté en 1).

Hay dos maneras de arreglar esto. Una es la de que el estado cambie una vez que termine el ciclo de reloj, y otra es la que el cambio ocurra en los flancos de bajada o de subida del pulso de reloj. Mas adelante se explicará como hacerlo.

Nota: Hasta ahora hemos hablado indistintamente de latch o Flip-flop. La literatura es variada en este aspecto, y para efecto de este curso nos referiremos en general a todos estos circuitos como flip-flop(FF).

Page 3: CIRCUITOS SECUENCIALES SINCRONOS

En general se llama latch al circuito que sea asíncrono y transparente, y Flip-Flop a los que sean síncronos y no transparentes.

1. Asíncrono: las salidas cambian independientemente del reloj .2. Transparente: las salidas cambian inmediatamente en respuesta a un

cambio en las entradas.

3. Síncrono: las salidas cambian en los flancos de subida o bajada del pulso de reloj.

4. No transparente: durante la duración del pulso de reloj, los cambios en las entradas no se reflejan en las salidas.

En la guía siguiente (Flip-Flop) nos referiremos al tipo de FF que utilizaremos a lo largo del curso: los FF disparados por flanco.

 

Antes de pasar definitivamente a estudiar el comportamiento de los flip flop veamos otras configuraciones.

Como vimos anteriormente el FF SC presenta un problema con el estado 11. Existen otras configuraciones que eliminan este estado prohibido.

Flip Flop tipo J K

Un flip flop JK es un refinamiento del flip flop SC, en el que se elimina el estado indeterminado. Para J=K=1 el estado futuro será igual al estado presente negado: Qn+1 =

TABLA CARACTERISTI

CA

SC

Qn+1

0 0 Qn

0 1 0

Page 4: CIRCUITOS SECUENCIALES SINCRONOS

1 0 1

1 1

Flip Flop tipo D

El flip-flop tipo D mostrado en la figura es una modificación del FF SC. La entrada D va directamente hacia la entrada S y el complemento de D hacia la entrada C. De esta forma tenemos que el estado futuro será igual al valor de la entrada D.

TABLA CARACTERISTI

CA

DQn+1

00

1 1

Flip Flop tipo T

Un flip flop tipo T se obtiene uniendo las dos entradas de un flip flop tipo JK. Si T=0 se mantendrá el estado, si T=1 el estado futuro será igual al complemento del estado presente.

TABLA CARACTERISTI

CA

TQn+1

0Qn

1

Page 5: CIRCUITOS SECUENCIALES SINCRONOS

Para todos los FF anteriores la tabla caracteristica describe el comportamiento del FF mientras el reloj está en 1. Durante el periodo en el que el reloj está en 0, no hay cambios en las salidas. Se denominan flip flop disparados por nivel.

No es objetivo de este curso el análisis detallado del comportamiento interno de los flip flops. Solo se muestra la circuiteria interna como referencia. En lo futuro indicaremos los flip flops con su diagrama simplificado.

Entradas asíncronas

Los Flip-flops contenidos en los circuitos integrados a menudo proveen unas entradas adicionales para fijar en el estado 1 o en el 0 al FF en cualquier momento de forma asíncrona, sin importar las condiciones presentes en las otras entradas. Esta entradas son normalmente llamadas SET o PRESET (para fijar en 1) o CLEAR (para fijar en 0). Son útiles para colocar los FF en un estado inicial, antes de comenzar con su funcionamiento de forma síncrona, sin la necesidad de utilizar un pulso de reloj. Por ejemplo, después de encender un sistema digital, el estado inicial de los FF es indeterminado. Activando la entrada de clear, se inicializan en cero, y luego se comienza con el funcionamiento normal.

La figura muestra un FF con las entradas adicionales mencionadas. Para efecto de este curso y para simplificar los diagramas, a menudo se obviará la inclusión de estas entradas adicionales, si no son necesarias.

Estas entradas pueden actuar con un nivel ALTO ( 1 ) o con un nivel BAJO (0) . En las tablas de especificaciones de los circuitos integrados se incluyen tablas que indican en cada caso la forma de funcionamiento. En el caso que se muestra, al aplicar un 0 en la entrada de clear el FF se fijará en 0.

Home      Contenido     Bibliografía      Evaluación      Clases      Guia     Laboratorio     Problemarios      Notas

© 2001 Sandro Costantini

Esta es la versión html del archivo

Page 6: CIRCUITOS SECUENCIALES SINCRONOS

http://www.inele.ufro.cl/bmonteci/pulsos/apuntes/combsec/combsec.doc.G o o g l e genera automáticamente versions html de los documentos mientras explora la web.Para vincularse a esta página o para marcarla, utilice el siguiente url: http://www.google.com/search?q=cache:21opHVNwcO8J:www.inele.ufro.cl/bmonteci/pulsos/apuntes/combsec/combsec.doc+%22CIRCUITOS+SECUENCIALES%22&hl=es&ie=UTF-8

Google no tiene relación con los autores de esta página ni es responsable de su contenido.

Se han resaltado estos términos de búsqueda: circuitos secuenciales 

   

Circuitos combinacionales y circuitos secuenciales. 

 

Los circuitos digitales pueden ser: combinacionales, o secuenciales. 

Ambos tipos de circuitos utilizan puertas para tomar decisiones. Ambos tienen entradas y salidas. Pero en los circuitos combinacionales el estado de las salidas depende solamente de los estados en las entradas, por lo cual, para una misma combinación de estados en las entradas habrá siempre la misma respuesta en las salidas. 

Los circuitos secuenciales en cambio, utilizan elementos de memoria (capaces de almacenar información binaria), por lo que la respuesta en las salidas no depende solamente del estado presente en las entradas sino también de la información previamente almacenada; es decir, una misma combinación de estados en las entradas puede producir estados de salida diferentes. Los elementos de memoria más

Page 7: CIRCUITOS SECUENCIALES SINCRONOS

simples son los latchs (o cerrojos biestables) y los flip-flops (o multivibradores biestables). 

   Son circuitos combinacionales:  Son circuitos secuenciales: 

            las puertas       los latchs y los flip-flops

los codificadores     los generadores de pulsos

            los decodificadores     los registros de almacenamiento

            los multiplexores     los registros de desplazamiento

            los demultiplexores     los contadores

            algunos circuitos aritméticos   las memorias

                                            los microprocesadores   

 Next: Tabla de transiciones Up: Diseño de un contador Previous: Diseño de un contador

Diagrama de estados

Describe gráficamente el contador (en este caso), indicando cual es el estado siguiente en función del estado actual y de las entradas (que no existen para este caso). La figura 4.2 muestra el diagrama de estados del contador. Notar que como no existen entradas, sólo hay una posible alternativa como estado siguiente dado un estado actual.

   Figure 4.2: Diagrama de estados de un

contador BCD.

Page 9: CIRCUITOS SECUENCIALES SINCRONOS

1999-05-21

Next: Tabla de transiciones Up: Detector de secuencias de Previous: Detector de secuencias de

Digrama de estados

Asociaremos la salida al estado. Debido a ésto, dentro de cada nodo del diagrama escribiremos un par (estado/salida). La figura 4.8 presenta un diagrama de estados adecuado a la especificación del problema.

   Figure 4.8: Diagrama de estados de un

detector de tres o más unos consecutivos.

1999-05-21

El comportamiento de los circuitos secuenciales se determina de las entradas, las salidas y los estados de los multivibradores (MVB). Ambas entradas y el estado siguiente son una función de las entradas y del estado presente. El análisis de los circuitos secuenciales consiste en obtener una tabla o un diagrama de la secuencia de tiempos de las entradas, salidas y estados internos. Es posible escribir expresiones booleanas que describan el comportamiento de los circuitos secuenciales. Sin embargo, estas expresiones deben incluir la secuencia de tiempos necesaria directa o indirectamente.

Page 10: CIRCUITOS SECUENCIALES SINCRONOS

    Un diagrama lógico secuencial se reconoce como un circuito si éste incluye multivibradores. Los MVB pueden ser de cualquier tipo y el diagrama lógico puede o no incluir compuertas combinacionales. Muchos circuitos lógicos contienen multivibradores biestables, monoestables y compuertas lógicas que se conectan para realizar una operación específica. Con frecuencia se usa una señal de reloj primaria para ocasionar que los niveles lógicos del circuito pasen a través de una determinada secuencia de estados. En términos generales, los circuitos secuenciales se analizan siguiendo el procedimiento que se describe a continuación:

1. Examinar el diagrama del circuito y buscar estructuras como contadores o registros de corrimiento para su simplificación.

2. Determinar los niveles lógicos que estén presentes en las entradas de cada multivibrador antes de la incidencia del primer pulso del reloj.

3. Utilizar estos niveles para determinar la forma en que cada multivibrador cambiará en respuesta al primer pulso de reloj.

4. Repetir los pasos 2 y 3 para cada pulso sucesivo de reloj.

2. CIRCUITOS SECUENCIALES SINCRÓNICOS

2.1 Circuitos secuenciales sincrónicos(Modalidad de reloj)

Ejemplo de análisis   Reducción de tablas de estado

Ejemplo 1 de diseño  Particiones

Ejemplo 2 de diseño  Ejercicios

Ejercicios 

Tablas de implicación

   Ejercicios

   Asignación de estados

   Ejercicios

Page 11: CIRCUITOS SECUENCIALES SINCRONOS

    El comportamiento de los circuitos secuenciales se determina de las entradas, las salidas y los estados de los multivibradores (MVB). Ambas entradas y el estado siguiente son una función de las entradas y del estado presente. El análisis de los circuitos secuenciales consiste en obtener una tabla o un diagrama de la secuencia de tiempos de las entradas, salidas y estados internos. Es posible escribir expresiones booleanas que describan el comportamiento de los circuitos secuenciales. Sin embargo, estas expresiones deben incluir la secuencia de tiempos necesaria directa o indirectamente.

    Un diagrama lógico secuencial se reconoce como un circuito si éste incluye multivibradores. Los MVB pueden ser de cualquier tipo y el diagrama lógico puede o no incluir compuertas combinacionales. Muchos circuitos lógicos contienen multivibradores biestables, monoestables y compuertas lógicas que se conectan para realizar una operación específica. Con frecuencia se usa una señal de reloj primaria para ocasionar que los niveles lógicos del circuito pasen a través de una determinada secuencia de estados. En términos generales, los circuitos secuenciales se analizan siguiendo el procedimiento que se describe a continuación:

1. Examinar el diagrama del circuito y buscar estructuras como contadores o registros de corrimiento para su simplificación.

2. Determinar los niveles lógicos que estén presentes en las entradas de cada multivibrador antes de la incidencia del primer pulso del reloj.

3. Utilizar estos niveles para determinar la forma en que cada multivibrador cambiará en respuesta al primer pulso de reloj.

4. Repetir los pasos 2 y 3 para cada pulso sucesivo de reloj.

    En la Figura 1, se muestra un circuito secuencial utilizando multivibradores J-K con reloj.

Page 12: CIRCUITOS SECUENCIALES SINCRONOS

    Obsérvese que el diagrama contiene multivibradores y compuertas lógicas.

2.1 CIRCUITOS SECUENCIALES SINCRÓNICOS (Modalidad de reloj)

    El diagrama adjunto muestra el algoritmo de

Page 13: CIRCUITOS SECUENCIALES SINCRONOS

diseño y análisis de los circuitos secuenciales sincrónicos en la modalidad de reloj:

    Observase que en el caso de diseño, se parte de la definición del problema, después el diagrama de estados y su tabla de estados, se continua con la reducción de la tabla de estados, la asignación de estados, la selección de los multivibradores y finalmente, el circuito lógico.

    El proceso de análisis es en sentido contrario: se inicia con el circuito y se recorren los pasos previos en sentido contrario hasta llegar a especificar el problema.

    A continuación se presentan tres ejemplos: uno de análisis y dos de diseño.

 

Ejemplo de análisis:

1. Deducir la función del circuito adjunto:

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

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

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

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

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

Page 14: CIRCUITOS SECUENCIALES SINCRONOS

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

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

    Sustituyendo (1) y (2) en (II):

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

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

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

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

Y0...................................................................................(6)

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

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

Page 15: CIRCUITOS SECUENCIALES SINCRONOS

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

Tabla 1   Tabla 2   Tabla 3

  Estados Siguientes   Transición

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

0 0 0 0 0 1   q0 q0 q1   q0 q0,0 q1,0

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

1 1 1 1 1 1   q2 q2 q2   q2 q2,0 q2,0

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

Page 16: CIRCUITOS SECUENCIALES SINCRONOS

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

+ y los de la segunda columna, a los valores de la columna 2 del mapa de Q0+.

Para x=1: los valores de la primera columna, corresponden a la columna 2 del mapa de Q1

+  y los de la segunda columna, a los valores de la columna 2 del mapa de Q0

+.

    En la tabla 2 de estados siguientes, se sustituyen los valores binarios por el estado correspondiente, de acuerdo a la definición anterior; es decir: 00 por q0, 01 por q1, 11 por q2 y 10 por q3, para cada par de columnas de la tabla 1.

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

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

Page 17: CIRCUITOS SECUENCIALES SINCRONOS
Page 18: CIRCUITOS SECUENCIALES SINCRONOS

Ejemplo 1 de Diseño.

    Definición del problema: Se debe diseñar un circuito secuencial en la modalidad de reloj (sincrónico), cuyo diagrama a bloques aparece en la figura adjunta, que disponga de un mecanismo externo de restauración que, cuando sea necesario, restaurare al circuito al estado inicial. Determinar

Page 19: CIRCUITOS SECUENCIALES SINCRONOS

el diagrama de estados del circuito, de tal manera que genere una salida 1 para un período de reloj que coincida sólo con la segunda entrada de 0 de un secuencia que se compone exactamente de 2 UNOS (no más de dos) seguidos por 2 CEROS. Cuando la salida ha sido 1 durante el período de reloj, la salida se mantendrá en 0 hasta que el circuito se restaure externamente.

    De la figura se observa que Z=1 si X tiene la secuencia 1100, el cualquier otro caso Z=0.

 

 

    Con estos datos se puede construir la carta de tiempo, como se muestra en la siguiente figura:

Page 20: CIRCUITOS SECUENCIALES SINCRONOS

    Claramente se observa que durante 2 ciclos de reloj, X=1 y Z=0, que en los siguientes 2 ciclos X=0, cumpliéndose las condiciones del enunciado, por lo que Z=1 a partir del cuarto ciclo de reloj y permanece en ese valor.

    Otra forma de visualización es por medio del diagrama de estados, que es equivalente a la carta de tiempo.

Page 21: CIRCUITOS SECUENCIALES SINCRONOS

    Se parte de un estado inicial q0, después se analiza es valor de la entrada y la salida; si la entrada es 1 y la salida 0, se pasa al estado q1 (1/0 sobre la flecha), pero si la entrada es 0 y la salida 0, permanece en el estado q0 (0/0 sobre la flecha); del estado q1 se tienen dos posibilidades: si la entrada es 1 se pasa al estado q2 y si es 0 al estado q5 (1/0 y 0/0 sobre las flechas, respectivamente); del estado q2 se pasa al estado q3 si la entrada es igual a 0 y al estado q5 si la entrada es igual a 1, en ambos casos la salida es 0 (0/0 y 1/0 sobre las flechas, respectivamente); del estado q3 se pasa al estado q4 si la entrada es 0 y la salida 1 (se cumple la secuencia que establece el enunciado), si la entrada es 1 y la salida 0 se pasa al estado q5 (0/1 y 1/0 sobre las flechas, respectivamente); el estado q4 se mantiene en 0, independientemente de que la entrada cambie a 0 o 1; finalmente, el estado q5 se mantiene mientras la entrada sea 0 y pasará al estado q1 si la entrada es 1, en ambos casos la salida es 0.

Page 22: CIRCUITOS SECUENCIALES SINCRONOS

    El diagrama de estados se resume en la tabla de estados, en donde los valores para las columnas x=0 y x=1, corresponden a los estados siguientes:

Estadopresente

Estadossiguientes

qv x=0 x=1

q0

q1

q2

q3

q4

q5

q0,0

q5,0

q3,0

q4,1

q4,0

q5,0

q1,0

q2,0

q5,0

q5,0

q4,0

q1,0

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

    El siguiente paso consiste en la reducción de la tabla de estados, siendo el método de inspección. En este método se establece que dos estados son equivalentes si:

1. Son circuitos completamente especificados. Se dice que un circuito es completamente especificado, si partiendo de un estado se conoce a donde llegar (estado siguiente) y se sabe el valor de la señal de salida con un determinado vector de entrada.

2. Si L(q, x) = L(p, x)

donde:

L = función de salidap, q = estados presentesx = vector de entrada

entonces: q = p

    De la tabla de estados, se observa que q0 y q5

son equivalentes; por tanto, si cumplen con esta regla se puede anular a

Page 23: CIRCUITOS SECUENCIALES SINCRONOS

cualesquiera de los dos. En este ejemplo se eliminará q5, sustituyéndolo en todos los casos por q0. Haciendo lo anterior, se llega a la tabla (a) y al diagrama de estados reducido:

(a)

Tabla de estadosReducida

qv x=0 x=1

q0

q1

q2

q3

q4

q0,0

q0,0

q3.0

q4,1

q4,0

q1,0

q2,0

q0.0

q0,1

q4,0

El siguiente paso consiste en la asignación de estados, que depende del número de estados, las variables de estado requeridas para generar dichos estados y el número de multivibradores para obtener las variables de estado. Su relación está dada por:

m = número de estados = 5r = número de variables de estado = 2r > mr = número de multivibradores = 23 > 5

Como 8 > 5, entonces se tienen 3 variables de estado: y2, y1 y y0. Es decir, se requerirán 3 multivibradores, como se muestra en la figura adjunta, en la cual no se indica el tipo de multivibrador, ya que aún no se han establecido, lo que significa que podrían ser de cualquier tipo.

En base a lo anterior, se construye la tabla de asignación de estados, en la que se muestran 4 posibles asignaciones q1v, q2v, q3v y q4v, siendo q1v la primera asignación, q2v la segunda,  y así sucesivamente.

Page 24: CIRCUITOS SECUENCIALES SINCRONOS

Tablas deAsignación de Estados

y2 y1 y0 q1v q2v q3v q4v

0 0 0 q0 x x x

0 0 1 q1 q0 x x

0 1 0 q2 q1 q0 x

0 1 1 q3 q2 q1 q0

1 0 0 q4 q3 q2 q1

1 0 1 x q4 q3 q2

1 1 0 x x q4 q3

1 1 1 x x x q4

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

(b)

Primera asignación q1v

qv y2 y1 y0 x=0 x=1

q0 0 0 0 000,0 001,0

q1 0 0 1 000,0 011,0

q2 0 1 1 010,0 000,0

q3 0 1 0 110,1 000,0

q4 1 1 0 110,0 110,0

x 1 1 1 xxx,x xxx,x

x 1 0 1 xxx,x xxx,x

x 1 0 0 xxx,x xxx,x

    En la tabla (b), se observa que en las columnas para x=0 y x=1 hay 4 dígitos, los cuales corresponden a los estados siguientes de los tres multivibradores y la salida, o sea: y2

+y1+y0

+,z. Así, los valores para y2+ corresponden a la columna de

color amarillo, para y1+ la columna en verde, para y0

+ la columna color azul y para z la columna en rojo. Los valores de excitación dependerán del tipo de multivibrador a usar.

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

Tabla de

Page 25: CIRCUITOS SECUENCIALES SINCRONOS

EXCITACIÓN

Q Q+ J K

0011

0101

01xx

xx10

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

Estadopresente

x = 0

Estadosiguiente

MB2 MB1 MB0z

y2 y1 y0 y2+ y1

+ y0+ J2 K2 J1 K1 J0 K0

00001111

00111100

01100110

00011xxx

00111xxx

00000xxx

0001xxxx

xxxx0xxx

00xxxxxx

xx000xxx

0xx00xxx

x11xxxxx

00010xxx

 

Estadopresente

x = 1

Estadosiguiente

MB2 MB1 MB0z

y2 y1 y0 y2+ y1

+ y0+ J2 K2 J1 K1 J0 K0

00001111

00111100

01100110

00001xxx

01001xxx

11000xxx

0000xxxx

xxxx0xxx

01xxxxxx

xx110xxx

1xx00xxx

x01xxxxx

00000xxx

    Obtención de los mapas de Karnaugh para cada una de las entradas de los multivibradores J-K y la salida z. Para J2, se copia la información en el mapa de la

Page 26: CIRCUITOS SECUENCIALES SINCRONOS

columnas para x=0 y x=1, sin incluir los ceros, de las tablas anteriores. Lo mismo se hace para las otras entradas de los multivibradores y la salida z.

Page 27: CIRCUITOS SECUENCIALES SINCRONOS
Page 28: CIRCUITOS SECUENCIALES SINCRONOS

    El logigrama queda:

Page 29: CIRCUITOS SECUENCIALES SINCRONOS

Ejemplo 2 de diseño.

    Se desea diseñar un circuito secuencial de dos líneas de entrada x1 y x2 y una sola salida z. Si un pulso de reloj llega cuando x1=0 y x2=0 (00), el circuito debe asumir un estado de restauración que se puede representar con Q0. Suponer que los siguientes 6 pulsos de reloj, después de un pulso de restauración, coinciden con la siguiente secuencia de combinaciones de entrada. Las entradas, representadas por x1 y x2, son 01, 10, 11, 01, 10 y 11. La salida z=1 coincidiendo con el sexto pulso de esta secuencia de 6 pulsos de reloj, pero z=0 en todos los otros momentos. El circuito no puede restaurar a Q0 excepto mediante la entrada 00. Definir un estado especial al que puede pasar el circuito una vez que sea

Page 30: CIRCUITOS SECUENCIALES SINCRONOS

imposible que se produzca una secuencia que origine una salida. Por lo tanto, el circuito deberá esperar en el estado especial hasta que se restaure.

Secuencia: 01 10 11 01 10 11

    Carta de tiempos:

    Diagrama de estados:

Page 31: CIRCUITOS SECUENCIALES SINCRONOS

    Del diagrama de estados se obtiene la tabla de estados:

Tabla de ESTADOS  Tabla REDUCIDA (q6=q7)

qvx1 x2 x1 x2 x1 x2 x1 x2

qvx1 x2 x1 x2 x1 x2 x1 x2

0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0

q0

q1

q2

q0,0

q0,0

q0,0

q1,0

q7,0

q7,0

q7,0

q7,0

q3,0

q7,0

q2,0

q7,0

q0

q1

q2

q0,0

q0,0

q0,0

q1,0

q6,0

q6,0

q6,0

q6,0

q3,0

q6,0

q2,0

q6,0

Page 32: CIRCUITOS SECUENCIALES SINCRONOS

q3

q4

q5

q6

q7

q0,0

q0,0

q0,0

q0,0

q0,0

q4,0

q7,0

q7,0

q7,0

q7,0

q7,0

q7,0

q6,1

q7,0

q7,0

q7,0

q5,0

q7,0

q7,0

q7,0

q3

q4

q5

q6

q0,0

q0,0

q0,0

q0,0

q4,0

q6,0

q6,0

q6,0

q6,0

q6,0

q6,1

q6,0

q6,0

q5,0

q6,0

q6,0

    Diagrama de estados reducido:

    Uno de los criterios de asignación, es considerar al circuito de salida de tal manera que sea éste el más sencillo. Para conseguir esto, se mueve el estado q5

Page 33: CIRCUITOS SECUENCIALES SINCRONOS

(en este caso) que contenga la señal de salida igual a 1, a una posición tal que sea fácil de hacer enlaces con los estados opcionales.

qvx1 x2 x1 x2 x1 x2 x1 x2

0 0 0 1 1 1 1 0

q0

q1

q2

q3

q4

q6

q5

qx

q0,0

q0,0

q0,0

q0,0

q0,0

q0,0

q0,0

qx,x

q1,0

q6,0

q6,0

q4,0

q6,0

q6,0

q6,0

qx,x

q6,0

q6,0

q3,0

q6,0

q6,0

q6,0

q6,1

qx,x

q6,0

q2,0

q6,0

q6,0

q5,0

q6,0

q6,0

qx,x

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

qv

Estado Presente x1x2 x1x2 x1x2 x1x2

y2 y1 y00 0

y2+y1

+y0+

0 1y2

+y1+y0

1 1y2

+y1+y0

1 0y2

+y1+y0

q0 0 0 0 0   0   0 0   0   1 1   1   1 1   1   1

q1 0 0 1 0   0   0 1   1   1 1   1   1 0   1   1

q3 0 1 1 0   0   0 1   1   1 0   1   0 1   1   1

q2 0 1 0 0   0   0 1   1   0 1   1   1 1   1   1

q4 1 1 0 0   0   0 1   1   1 1   1   1 1   0   1

q6 1 1 1 0   0   0 1   1   1 1   1   1 1   1   1

q5 1 0 1 0   0   0 1   1   1 1   1   1 1   1   1

qx 1 0 0 x   x   x x   x   x x   x   x x   x   x

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

Tabla deEXCITACIÓN

Estado presenteQ

Estado siguienteQ+

EntradaD

0011

0101

0101

Page 34: CIRCUITOS SECUENCIALES SINCRONOS

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

Page 35: CIRCUITOS SECUENCIALES SINCRONOS

    El logigrama correspondiente es:

Page 36: CIRCUITOS SECUENCIALES SINCRONOS
Page 37: CIRCUITOS SECUENCIALES SINCRONOS

EJERCICIOS.

1. Determinar el diagrama y la tabla de estados de un circuito detector de secuencia que detecte 101. La salida debe ser 1 cuando ocurra el último pulso de la secuencia. La salida Z deberá restablecerse a 0 para el siguiente pulso. La secuencia deberá presentar traslape.

x   = 010101101

Page 38: CIRCUITOS SECUENCIALES SINCRONOS

2. Obtener el diagrama y la tabla de estados para un circuito detector de secuencia de tal manera que Z=1 en el segundo bit de 2 unos consecutivos. El circuito debe diseñarse con traslape siempre y cuando se siga la siguiente secuencia:

x = 01100111110

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

x = 010100100

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

x = 00101001010101110

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

 

 

Page 39: CIRCUITOS SECUENCIALES SINCRONOS

 

 

 

REDUCCIÓN DE TABLAS DE ESTADO

Existen 3 métodos: Por inspección, por particiones y por tablas de implicación.

comentar el método de inspección

Método de reducción por particiones.

    Empezaremos a desarrollar este método, estableciendo algunas definiciones importantes:

Relación de equivalencia. Cuando un par de ordenadas de elementos x e y posee una propiedad que los relaciona, se dice que x está relacionado con y; se expresa en la forma:

x R y

Para que se cumpla la expresión anterior, se requiere:

1. x R y entonces x = x     propiedad reflexiva

2. x R y entonces x = y      propiedad simétrica

3. x R y y y R z entonces x = y y y = z, por tanto: x = z      propiedad transitiva

Estados equivalentes. La condición para que existan  estados equivalentes, es que el circuito esté completamente especificado. Se dice que un circuito está completamente especificado si las salidas y los estados siguientes se especifican para cada combinación de estados presentes y de entrada.

La función de estado siguiente se denota por el símbolo ) y la función de salida por 8. Se empleará la siguiente notación:

Page 40: CIRCUITOS SECUENCIALES SINCRONOS

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

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

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

Estado presenteq

x (condiciones de entrada)   00         01          11         10

0 1 3 2

q1

q2

q3

q4

q3,0

q3,0

q3,0

q4,0

q1,0

q3,0

q1,1

q4,0

q2,0

q4,0

q1,3

q2,0

q2,0

q4,0

q1,2

q2,0

 qestado siguiente,salida

    De la tabla anterior, se determinan los estados presente y siguiente:

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

Donde: )(q1,0) = q3 indica: )(qestado presente,entrada)=qestado siguiente; 8(q1,0) = 0 indica: 8(qestado presente,entrada)= salida (en decimal y binario), para el primer renglón y en forma similar para los siguientes renglones.  

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

Definición 1: Sean A y B dos circuitos completamente especificados sujetos a las mismas condiciones de entrada posibles; sea x1, x2,..., xm una secuencia de valores posibles del conjunto de entrada x de una longitud arbitraria. Los estados p, pertenecen a B, y los q, pertenecen a A, son indistinguibles (equivalentes), lo cual se expresa como p = q, si y sólo si:

)A (q, x1, x1, x1,...., x1) = 8B (p, x1, x1, x1,...., x1)

Page 41: CIRCUITOS SECUENCIALES SINCRONOS

Definición 2: Se dice que los circuitos secuenciales A y B son equivalentes, lo cual se expresa A=B, si para cada estado q de A, existe una tabla de estado p de B, tal que p=q, e inversamente para cada estado p de B existe un estado q de A, tal que q=p.

Conclusión: Dada una tabla de estados, el objetivo es obtener una tabla de estados con el menor número posible de ellos, porque esto implica utilizar un número menor de elementos de memoria (multivibradores).

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

1.   8 (p, x) = 8 (q, x)      indica que las salidas son iguales2.   )(p, x) = )(q, x)       significa que quedan dentro de la misma clase

Definición: Los estados S1,S2,...,Sj de un circuito secuencial son de equivalencia, si y sólo si, para cada secuencia posible Ip se producirá la misma secuencia de salida, sin importar que S1,S2,...,Sj sean los estados iniciales.

Esta definición puede plantearse de otra forma, por la condición de pares siguientes: Considerar que Sk y Sl sean los estados siguientes del circuito secuencial, al aplicarse la entrada Ip en los estados Si y Sj, respectivamente.

Se dice entonces que Si y Sj son equivalentes si y sólo si para cada entrada posible Ip:

1. La salida producida por el estado Si es igual a la producida por Sj.2. Los estados siguientes Sk y Sl son equivalentes.

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

Estadopresente

Entrada

x=0 x=1

Page 42: CIRCUITOS SECUENCIALES SINCRONOS

ABCDE

C/1C/1B/1D/0E/0

B/0E/0E/0B/1A/1

  estado siguiente/salida

 (A B C D E)

Conjunto universal

x=01 1 1 0 0

Primero salidas. Formamos subconjuntos, de acuerdo a la tabla anterior

x=10 0 0 1 1

1ra.  PARTICIÓN

 (A B C)(D E)

Formamos subconjuntos

x=0 C C B   D EAnalizamos sobre puros estados siguientes. CC B van al mismo subconjunto con x=0B EE van a distinto subconjunto con x=1, por lo que debe particionarse

x=1 B E E   B A

2a.  PARTICIÓN

  (A)(B C)(D E)  

x=0       C B   D E D E van al mismo subconjunto con x=0B A van a distinto subconjunto con x=1x=1        E E   B A

3a.  PARTICIÓN

 (A)(B C)(D)(E)

 

x=0        C BAsí queda, ya que no es posible dividir en más subconjuntos

x=1        E E

  a      b    d   e a=(A), B=(BC), d=(D) y e=(E)

La tabla equivalente mínima y el diagrama de estados mínimo, se presentan a continuación:

 

Estadopresente

Entrada x

x=0 x=1

a b/1 b/0

b b/1 e/0

d d/0 b/1

Page 43: CIRCUITOS SECUENCIALES SINCRONOS

e e/0 a/1

 

 

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

TABLA 1

Estadopresente

Entrada

x=0 x=1

ABCDEFGH

A/1A/0B/0B/0C/0C/0D/0D/0

E/0E/0F/0F/0G/1G/1H/1H/1

  estado siguiente/salida

1ra. PARTICIÓN

 (A B C D E F G H)

Conjunto universal

x=0   1  0  0   0 0 0 0 0 De acuerdo a salidas

x=1  0  0  0   0 1 1 1 1

2a. PARTICIÓN

 (A)(B C D)(E F G H)

 

x=0   A   A B B   C C D DA BB van a distinto subconjunto, por lo que particionamos

x=1   E   E F F   G G H H3a. PARTICIÓN

 (A)(B)(C D)(E F G H)

 

x=0             B B  C C D D

Van a los mismos subconjuntos

x=1              F F   G G H

Page 44: CIRCUITOS SECUENCIALES SINCRONOS

H

  a   b   c        d a=(A), b=(B), c=(CD) d=(EFGH)

Tomando en cuenta la Tabla 1 inicial, se obtiene la tabla equivalente mínima y el diagrama de estados mínimo, presentados a continuación:

 

Estadopresente

Entrada x

x=0 x=1

a a/1 d/0

b a/0 d/0

c b/0 d/0

d c/0 d/1

 

 

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

Tabla 1

Estadopresente

Entrada

x=0 x=1

ABCDEFGH

E/0A/1C/0B/0D/1C/0H/1C/1

D/0F/0A/1A/0C/0D/1G/1B/1

  estado siguiente/salida

1ra. PARTICIÓN

1 A B C D E F G HConjunto universal

Page 45: CIRCUITOS SECUENCIALES SINCRONOS

x=0      0 1  0  0 1  0 1  1De acuerdo a salidas

x=1      0 0  1  0 0  1 1  12a. PARTICIÓN

 (A D C F   B E G H)

 

x=0    0 0   0 0    1 1   1  1Arreglamos de acuerdo a salidas iguales

x=1    0 0    1 1    0 0   1  1

 (A D)(C F)(B E)(G H)

 

3a. PARTICIÓN

2 (A D)(C F)(B E)(G H)Ahora de acuerdo a estados siguientes

x=0   E B   CC   A D   H C HC van a distinto subconjunto

x=1   D A   A D  F C   G B3a. PARTICIÓN

  (A D)(C F)(B E)(G)(H)  

x=0 E B   C C  A D  H   CYa no es posible formar mas subconjuntos

x=1 D A   A D  F C G B

Renombrando los subconjuntos:

  (A D)(C F)(B E)(G)(H)  

      a     b     c   d  e a=(AD), b=(CF), c=(BE), d=(G) y e=(H)

Tomando en cuenta la Tabla 1 inicial, obtenemos la tabla equivalente mínima y el diagrama de estados mínimo, presentados a continuación:

 

Estadopresente

Entrada x

x=0 x=1

a c/0 a/0

b b/0 a/1

c a/1 b/0

d e/1 d/1

e b/1 c/1

 

Page 46: CIRCUITOS SECUENCIALES SINCRONOS

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

Estadopresente

Entrada

x=0 x=1

ABCD

A/0A/0A/0A/0

B/0C/0D/0D/1

  estado siguiente/salida

1ra. PARTICIÓN

 (A B C D)

Conjunto universal

x=0     0  0  0  0De acuerdo a salidas

x=1     0   0  0  12a. PARTICIÓN

 (A B C)(D)

 

x=0    A A A   ADe acuerdo a estados siguientes

x=1    B C D  D3a. PARTICIÓN

 (A B)(C)(D)

 

x=0   A A   A   ADe acuerdo a estados siguientes

x=1   B C   D   D

  (A)(B)(C)(D) No es posible simplificarla

EJEMPLO 5. Dada la siguiente tabla, reducirla por el método de particiones:

TABLA A

Estadopresente

Entrada

x=0 x=1

1234567

1/01/14/01/12/04/02/0

1/06/15/07/03/05/03/0

Page 47: CIRCUITOS SECUENCIALES SINCRONOS

  estado siguiente/ salida    

 Estado presente1   2  3  4 5  6  7

Conjunto universal

x=0 0  1  0  1  0  0  0De acuerdo a salidasx=1 0   1  0  0  0  0  0

  (1  3 5  6  7) (4) (2)  

x=0  0  0   0  0  0     1   1

Primero agrupamos de acuerdo a salidas

x=1  0  0   0  0  0    0    1

1ra. PARTICIÓN

  (1  3 5  6  7) (4) (2)  

x=0   1  4   2  4  2    1   1Considerando estados siguientesx=1   1  5   3  5  3     7   6

2a. PARTICIÓN

 (1) (3 5  6  7) (4) (2)

 

x=0 1    4  2  4  2   1    1 Por inspección 3 y 6 forman un subconjuntoPor inspección 5 y 7 forman un subconjuntox=1 1     5  3  5  3   7    6

Renombrando los subconjuntos

 (1) (3  6) (5  7) (4) (2)

 

  a      d       e       c    b  

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

Estadopresente

Entrada x

x=0 x=1

a a/0 a/0

b a/1 d/1

c a/0 e/0

d c/1 e/0

e b/0 d/0

Page 48: CIRCUITOS SECUENCIALES SINCRONOS

EJERCICIOS.

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

                1.                                                2. 3.

qv x=0 x=1

 

qv x=0 x=1

 

qv x=0 x=1

1234567

1,01,04,12,01,03,12,0

1,16,15,16,03,14,03,0

q0

q1

q2

q3

q4

q5

q6

q7

q0,1

q0,0

q1,0

q1,0

q2,0

q2,0

q3,0

q3,0

q0,0

q4,0

q5,0

q5,0

q6,1

q6,1

q7,1

q7,1

q0

q1

q2

q3

q4

q5

q6

q7

q1,0

q0,1

q2,0

q5,0

q1,1

q3,1

q2,1

q2,1

q0,1

q3,1

q4,0

q2,1

q6,0

q5,0

q7,0

q7,0

Método de reducción por tablas de implicación (Método de Implicantes).

    Este método se utiliza para determinar la equivalencia de estados. El procedimiento se realiza mediante los siguientes pasos:

1. a) Se forma una tabla anotando verticalmente las variables de estado presente, menos la primera; y b) horizontalmente todos los estados a excepción del último. De esta tabla se obtienen todas las posibles combinaciones por pares de estados.

2. Como únicamente los estados siguientes con salidas idénticas pueden ser equivalentes, se coloca una cruz en las celdas correspondientes de aquellos pares de estados cuyas salidas no son iguales para cada entrada.

3. Por la condición de pares de estado, deben completarse todas las celdas vacantes, escribiéndose sobre cada celda todos los pares siguientes, cuya equivalencia está implicada por la intersección de los estados que definen cada celda.

Si los pares implicados contienen únicamente los mismos estados que lo definen, o bien, si los estados equivalentes son iguales para una entrada dada, se coloca el símbolo que indica que estos estados son equivalentes por inspección e independientes de otros pares implicados.

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

Page 49: CIRCUITOS SECUENCIALES SINCRONOS

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

5. Se realiza un listado a una columna por los definidos en la línea horizontal, se examina la tabla columna por columna para localizar celdas no cruzadas, siendo estos los pares de estados equivalentes, para aplicar enseguida la propiedad de transitividad (absorción).

(Si, Sj)(Sj, Sk) => (Si, Sj, Sk)

EJEMPLO 1. Reducir al mínimo la siguiente tabla de estados por el método de implicantes.

 

Estadopresente

x

0 1

A C/1 E/0

B C/1 E/0

C B/1 E/0

D D/0 B/1

E E/0 A/1

  estado siguiente/salida

 

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

Estadopresente

x

0 1

a a/1 b/0

b b/0 a/1

  estado siguiente/salida

EJEMPLO 2. Reducir al mínimo la siguiente tabla de estados por el método de implicantes.

Page 50: CIRCUITOS SECUENCIALES SINCRONOS

Estadopresente

x

0 1

ABCDEFGH

E/0A/1C/0B/0D/1C/0H/1C/1

D/0F/0A/1A/0C/0D/1G/1B/1

  ESTADO SIGUIENTE/SALIDA

 

 

 

 

 

 

 

 

Page 51: CIRCUITOS SECUENCIALES SINCRONOS

EJEMPLO 3. Reducir al mínimo la siguiente tabla de estados por el método de implicantes.

Estadopresente

x

0 1

ABCDE

C/1C/1B/1D/0E/0

B/0E/0E/0B/1A/1

  ESTADO SIGUIENTE/SALIDA

 

 

 

 

 

 

 

 

Page 52: CIRCUITOS SECUENCIALES SINCRONOS

EJEMPLO 4. Reducir al mínimo la siguiente tabla de estados por el método de implicantes.

Estadopresente

x

0 1

ABCDEFGH

A/1A/0B/0B/0C/0C/0D/0D/0

E/0E/0F/0F/0G/1G/1H/1H/1

  ESTADO SIGUIENTE/SALIDA

 

 

 

 

 

 

 

Page 53: CIRCUITOS SECUENCIALES SINCRONOS

 

EJEMPLO 5. Dada la siguiente tabla, reducirla por el método de tablas de implicación:

qv x=0 x=1

123456789101112

2,04,06,08,010,04,010,08,010,14,02,02,0

3,05,07,09,01,012,012,01,01,01,01,01,0

  estado siguiente/salida

qv 0 1 2 3

1234

3411

4412

2331

4444

Page 54: CIRCUITOS SECUENCIALES SINCRONOS

Pasos eliminados:

Primer paso:

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

Segundo paso: Para este paso, se eliminan todos los que tengan implicados los de primer paso.

1-4 2-4 3-4 4-5 4-6 4-7 4-8 4-10 4-11 4-12

Tercer paso:

Page 55: CIRCUITOS SECUENCIALES SINCRONOS

1-2 1-6 1-10 2-3 2-5 2-7 2-8 2-11 3-6 3-10 5-6 5-10 6-7 6-8 6-11 6-12 7-10 8-10 10-11 10-12

Cuarto paso:

1-8 3-8 5-8 7-8 8-11 8-12

Búsqueda de pares equivalentes:

11 11-12

10 11-12

9 11-12

8 11-12

7 11-12 7-11 7-12

6 11-12 7-11 7-12 6-10

5 11-12 7-11 7-12 6-10 5-7 5-11 5-12

4 11-12 7-11 7-12 6-10 5-7 5-11 5-12

3 11-12 7-11 7-12 6-10 5-7 5-11 5-12 3-5 3-7 3-11 3-12

2 11-12 7-11 7-12 6-10 5-7 5-11 5-12 3-5 3-7 3-11 3-12 2-6 2-10

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

Diagrama de Merger:

Tabla reducida

qv x=0 x=1

12489

2,04,08,08,02,1

1,01,09,01,01,0

  estado siguiente/salida

Page 56: CIRCUITOS SECUENCIALES SINCRONOS

 

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

EJEMPLO:

Estadopresente

x

0 1

A A/- -/-

B C/- B/0

C D/0 -/-

D -/- B/-

E A/0 C/-estado siguiente/salida

 

  x     x

  0 1     0 1

A'=ABD

AC/1

B/0   A'A'B'/

1A'/0

B'=EC

DA/0

C/1   B' A'/0 B'/1

se llena con la primera tabla   se llena con la tabla

adjunta

 

 

 

  x     x

  0 1     0 1

A'=ACD

AD/0 B/1   A'A'/0

B'/1

B'=B C/1 B/0   B'A'/1

B'/0

Page 57: CIRCUITOS SECUENCIALES SINCRONOS

C'=E A/0 C/-   C' A'/0 A'/-

 

 

 

  x

 

  x

  0 1   0 1

A'=ACE

AD/0

C/1 A'A',B'/

0A'/1

B'=BD C/1 B/0 B'A'/1 B'/0

 

 

 

NOTA: Los incompatibles:

Page 58: CIRCUITOS SECUENCIALES SINCRONOS

U=MÍN{NSMC

,NSOC}

  No. de compatiblesmáximo de conjuntos   Estados originales

del circuito

  2   5

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

 2

 2

 2

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

Page 59: CIRCUITOS SECUENCIALES SINCRONOS

L <= K <= U

Ejercicios

Reducir por medio de tablas de implicación, los siguientes problemas:

                       1.                                                                                 2.

qv00 01 10 11 00 01 10 11

 

qv00 01 10 11

0 1 2 3 0 1 2 3 0 1 2 3

1234567891011

66655656966

239696

1029

119

11477171114

11181118111

00011010000

00000000000

00111010001

00000000000

ABCDEFGH

E,1C,0B,1G,0C,0C,1D,1B,1

C,0F,1A,0F,1F,1F,1A,0C,0

B,1E,1D,1E,1D,1D,0B,1E,1

E,1B,0F,1B,0E,0H,0F,1F,1

Asignación de estados

    El número total de elementos de memoria NFF = r  = variables de estado, estará relacionado al número de estados NS = m del circuito, es decir:

2NFF - 1 < NS < 2NFF

2r - 1 < m < 2r

    Por lo tanto, habrá un número de asignación de estados, NAE, igual a:

NAE = 2r! / (2r - m)!

    Que es la forma de asignación de estados de 2r combinaciones de estados binarios de asignación a los NS estados (m). La siguiente tabla muestra algunos ejemplos numéricos:

Número deestados (m)

Número devariables de estado (r)

Número de asignacionesde estado (NAE)

Número de asignacionesespecíficas

Page 60: CIRCUITOS SECUENCIALES SINCRONOS

123456789

10

0122333344

-2

2424

6,72020,16040,32040,3204.5x109

4.9x1010

-333

140420840840

10'810,80075'675,600

Asignaciones útiles:

NAU = 2r - 1! / [(2r - m)! r!]

Criterios para la asignación de estados:

Regla I

A) Se deben examinar los renglones de la tabla reducida que tengan anotaciones idénticas para el estado siguiente en cada columna. Estos renglones deben recibir asignaciones adyacentes. De ser posible las anotaciones del estado siguiente en esos renglones deben recibir asignaciones de acuerdo con la regla II.

B) Se verifican los renglones de la tabla de estados reducida que tienen las mismas anotaciones del estado siguiente pero en diferente orden de columna. A estos renglones se les deben dar asignaciones adyacentes. Las anotaciones del estado siguiente pueden recibir asignaciones adyacentes.

C) Los renglones con anotaciones idénticas para el estado siguiente, en algunas pero no en todas las columnas, deben recibir asignaciones adyacentes, en donde los renglones que tengan más columnas idénticas asuman la máxima prioridad.

Regla II

Las anotaciones del estado siguiente para un renglón dado, deben recibir asignaciones diferentes.

Regla III

Las asignaciones deben hacerse de tal manera que simplifiquen los mapas de salida.

Page 61: CIRCUITOS SECUENCIALES SINCRONOS

Ejemplo:

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

                  

 

 

 

 

 

 

 

 

Page 62: CIRCUITOS SECUENCIALES SINCRONOS

Tabla de estados  

 

Tabla reducida

qv x=0 x=1   qv x=0 x=1

q0 q4,0 q1,0 a q0 q0,0 q1,0

q1 q4,0 q2,0 a q1 q0,0 q0,0

q0 q4,0 q3,1 b q0 q0,0 q3,1

q3 q3,0 q3,0 a q3 q0,0 q3,0

q4 q4,0 q1,0 q0=q4  

A continuación se muestra la tabla correspondiente a la primera asignación. Asimismo, se proponen multivibradores tipo J-K, cuya tabla de excitación se muestra en seguida:

1ra. asignación

 

MVB tipo J-K

qv y1 y0

x=0 x=1Q Q+ J K

y+1y+

0,z y+1y+

0,z

q0 0    0 0    0,0 0    1,0 0 0 0 x

q1 0    1 0    0,0 1    1,0 0 1 1 x

q2 1    1 0    0,0 1    0,1 1 0 x 1

q3 1    0 1    0,0 1    0,0 1 1 x 0

Donde y1, y0 son los estados presentes y y+1, y+

0 son los estados siguientes, para x=0 y x=1. Combinando las dos tablas previas, se obtienen los valores para los dos multivibradores J-K para los mapas de Karnaugh, como se muestra en la siguiente tabla:

qv y1 y0

x=0 x=1

J1 K1 J0 K0 J1 K1 J0 K0

q0 0    0 0 x 0 x 0 x 1 x

q1 0    1 0 x x 1 1 x x 0

q2 1    1 x 1 x 1 x 0 x 1

q3 1    0 x 0 0 x x 0 0 x

    Los valores de esta tabla se encuentran de la siguiente manera: Para los valores de J1 y K1, se consideran las columnas y1 y y+

1 (corresponden a Q y Q+), de la tabla 1ra. asignación; se buscan en la tabla de excitación del multivibrador J-K y se determinan los valores de J1 y K1. Se sigue el mismo procedimiento para J0 y K0. Los valores de z, se encuentran directamente de la tabla 1ra. asignación.

Page 63: CIRCUITOS SECUENCIALES SINCRONOS

A continuación se presentan los mapas para determinar las funciones de entrada de los multivibradores.

    El logigrama correspondiente a la 1ra. asignación es:

Page 64: CIRCUITOS SECUENCIALES SINCRONOS

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

2a. asignación

qv y1 y0

x=0 x=1

y+1y+

0,z y+1y+

0,z

Page 65: CIRCUITOS SECUENCIALES SINCRONOS

q0 0    0 0    0,0 1    1,0

q1 0    1 0    0,0 1    0,0

q2 1    1 0    0,0 0    1,1

q3 1    0 1    0,0 1    0,0

    Nuevamente, combinando esta tabla con la tabla de excitación del multivibrador tipo J-K, se tiene:

qv y1 y0

x=0 x=1

J1 K1 J0 K0 J1 K1 J0 K0

q0 0    0 0 x 0 x 1 x 1 x

q1 0    1 0 x x 1 1 x x 1

q2 1    1 x 1 x 1 x 1 x 0

q3 1    0 x 0 0 x x 0 0 x

    Esta tabla se obtuvo siguiendo el mismo procedimiento que en el caso anterior. Los mapas de Karnaugh para la 2a. asignación son:

Page 66: CIRCUITOS SECUENCIALES SINCRONOS

    El logigrama para la 2a. asignación es:

Page 67: CIRCUITOS SECUENCIALES SINCRONOS

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

3a. asignación

qv y1 y0

x=0 x=1

y+1y+

0,z y+1y+

0,z

q0 0    0 0    0,0 1    0,0

q1 0    1 0    0,0 1    1,1

q2 1    1 1    1,0 1    1,0

Page 68: CIRCUITOS SECUENCIALES SINCRONOS

q3 1    0 0    0,0 0    1,0

    Nuevamente, combinando esta tabla con la tabla de excitación del multivibrador tipo J-K, se tiene:

qv y1 y0

x=0 x=1

J1 K1 J0 K0 J1 K1 J0 K0

q0 0    0 0 x 0 x 1 x 0 x

q1 0    1 0 x x 1 1 x x 0

q2 1    1 x 0 x 0 x 0 x 0

q3 1    0 x 1 0 x x 1 1 x

    Esta tabla se obtuvo siguiendo el mismo procedimiento que en el caso anterior. Los mapas de Karnaugh para la 3a. asignación son:

El logigrama para la 3a. asignación es:

Page 69: CIRCUITOS SECUENCIALES SINCRONOS

EJERCICIOS