$SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf ·...

50
1 Aplicación de la lógica secuencial asíncrona en automatización MSc.Ing. Ramiro Franz Aliendre García Facultad Nacional de Ingeniería Universidad Técnica de Oruro http://raliendre.uto.edu.bo [email protected] Contenido 1. Introducción 2. Procedimiento de análisis 3. Circuitos con latches 4. Procedimiento de diseño 5. Reducción de las tablas de estado y de flujo 6. Asignación de estado libre de carreras 7. Riesgos 8. Ejemplos de aplicación

Transcript of $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf ·...

Page 1: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

1

Aplicación de la lógica secuencial asíncrona en automatizaciónMSc.Ing. Ramiro Franz Aliendre GarcíaFacultad Nacional de IngenieríaUniversidad Técnica de Orurohttp://[email protected]

Contenido1. Introducción2. Procedimiento de análisis3. Circuitos con latches4. Procedimiento de diseño5. Reducción de las tablas de estado y de flujo6. Asignación de estado libre de carreras7. Riesgos8. Ejemplos de aplicación

Page 2: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

2

1. INTRODUCCIÓNMétodo para el análisis y diseño de circuitos digitales.› Su comportamiento se especifica por una secuencia temporal de entradas, salidas y estados.› El cambio de estado ocurre cuando hay un cambio en las variables de entrada.

– El estado cambia inmediatamente después de los cambios de entrada.› Es un circuito combinacional con realimentación.› Son denominados también AUTÓMATAS.

Circuitocombinacional

Retardo

Retardo

Retardo

Entradasde

n variablesSalidas

dem variables

k variablessecundarias

(estadopresente)

k variablesde excitación

(estadosiguiente)

x1x2

xn

z1z2

zmy1y2

yk

Y1Y2

Yk

Diagrama de bloques de un sistema secuencial asíncrono

Page 3: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

3

1. INTRODUCCIÓN› Los elementos de retardo pueden verse como elementos de memoria a corto plazo: tiempo que tarda la información entre la entrada y la salida, junto con el lazo de realimentación.› Cuando una variable de entrada cambia, las (estado siguiente) cambian (no en forma instantánea) y se propagan a través de los retardos y llegan a ser las (estado presente).› En estado estacionario = , para = 1, 2, … , .› Para asegurar la operación apropiada deben alcanzar un estado estable antes de que alguna entrada cambie de valor.› MODO FUNDAMENTAL: sólo una variable de entrada cambia a la vez y el tiempo entre dos cambios de entrada debe ser más largo que el tiempo que se tarda en alcanzar un estado estable.

Clasificación.› Autómata de Mealy: las salidas se obtienen mediante la combinación de variables entradas y variables de estado.

› Autómata de Moore: las salidas son las variables de estado o una combinación de ellas.

Page 4: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

4

2. PROCEDIMIENTO DE ANÁLISISConsiste en obtener una tabla o un diagrama que describe la secuencia de estados internos y las salidas como una función de los cambios en la variables de entrada.Explica como funciona un circuito secuencial asíncrono

Tabla de transición.Ejemplo.

= + ̅= ̅ +

x y1

x y2

x y2

x y1

Y1

Y2

xy1

y2

Y1

Y2

Page 5: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

5

Tabla de transición.

Mapa K para Y1 Mapa K para Y2

0 0

1 0

1 1

0 1

0 100

01

11

10

xy1y2

0 1

1 1

1 0

0 0

0 100

01

11

10

xy1y2

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Tabla de transición.

Tabla de transición

Estado total: Combinación del estado interno y entradas.o Estados totales estables:y1y2x = 000, 011, 110, 101o Estados totales inestables:y1y2x = 001, 010, 111, 100

Page 6: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

6

x y1

x y2

x y2

x y1

Y1

Y2

0

0

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

x y1

x y2

x y2

x y1

Y1

Y2

0

1

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Page 7: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

7

x y1

x y2

x y2

x y1

Y1

Y2

0

1

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00x y1

x y2

x y2

x y1

Y1

Y2

1

1

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Page 8: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

8

x y1

x y2

x y2

x y1

Y1

Y2

1

1

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Tabla de transición.

x y1

x y2

x y2

x y1

Y1

Y2

1

0

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Page 9: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

9

x y1

x y2

x y2

x y1

Y1

Y2

1

0

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Tabla de transición.

x y1

x y2

x y2

x y1

Y1

Y2

0

0

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Page 10: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

10

x y1

x y2

x y2

x y1

Y1

Y2

0

0

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Tabla de transición.

01

11 01

11 10

00 10

0 100

01

11

10

xy1y2

00

Estado presente

Estado siguientex=0 x=1

0 0 0 0 0 10 1 1 1 0 11 0 0 0 1 01 1 1 1 1 0

00

01 10

11

1 / 1

1 / 1

0 / 0

0 / 1

0 / 0

0 / 1

1 / 01 / 0

Tabla de estados Diagrama de estadosEl diagrama de estados se expresa suponiendo Y2 como salida

Page 11: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

11

Procedimiento:1. Determinar todos los lazos de realimentación del circuito.2. Denotar la salida de cada lazo de realimentación con la variable y su entrada correspondiente con , = 1, 2, 3, … , . es el número de realimentaciones.3. Escribir las funciones booleanas para todas las como función de las entradas externas y las .4. Encontrar los mapas K para cada función , usando las variables para las filas y las entradas externas para las columnas.5. Combinar los mapas en una tabla mostrando = … en cada casilla.6. Enciérrese en un círculo los valores de en cada casilla que son iguales al valor de = … , en la misma fila.

Tabla de flujo.Si se denotan los estados con símbolos sin hacer referencia específica a sus valores binarios, se establece la tabla de flujo. Similar a la tabla de transición.

bc bc da d

0 1

bcd

xaa

a ,0 a ,0 a ,0 b ,0a ,0 a ,0 b ,1 b ,0

ab

00 01 11 10x1x2

a) Cuatro estados con una entrada

b) Dos estados con dos estados y una salida

Page 12: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

12

Tabla de flujo.

0 0 0 1

0 0 1 1

0

1

00 01 11 10x1x2

y0 0 0 0

0 0 1 0

0

1

00 01 11 10x1x2

y

a) Tabla de transición= ̅ + b) Mapa para la salida=

Tabla de flujo.

x1x2 Y

z

y

x1 x2

x1 yx1 x2

Y

y z

c) Diagrama lógico d) Diagrama de contactos

Page 13: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

13

Condiciones de carrera.Si dos o más variables binarias de estado cambian de valor en respuesta al cambio de una variable de entrada, se dice que hay una condición de carrera.› Carrera no crítica: si el estado final estable que alcanza el circuito no depende del orden en el cual cambian las variables de estado.› Carrera crítica: es posible terminar en dos o más estados estables diferentes dependiendo del orden en el cual cambian las variables de estado.

Ejemplos de carreras no críticas:

a) Posibles transiciones00→1100→01→1100→10→11

11

11

11

11

0 100

01

11

10

xy1y2

00

b) Posibles transiciones00→11→0100→0100→10→11→01

11

01

01

11

0 100

01

11

10

xy1y2

00

Page 14: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

14

11

11

11

10

0 100

01

11

10

xy1y2

0011

01

11

10

0 100

01

11

10

xy1y2

00

Ejemplos de carreras críticas:

a) Posibles transiciones00→1100→0100→10

b) Posibles transiciones00→11 00→01→1100→10

Ciclo: cuando un circuito pasa a través de una secuencia única de estados inestables

01

11

10

10

0 100

01

11

10

xy1y2

00

a) Transición de estados00→01→11→10

01

11

11

10

0 100

01

11

10

xy1y2

00

b) Transición de estados00→01→11

01

11

10

01

0 100

01

11

10

xy1y2

00

c) Inestable00→01→11→10

Page 15: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

15

Consideraciones de estabilidad.Inestabilidad: El circuito oscila entre dos estados inestables

x1 x2

x2 yY

x1

x2

y Y

Diagrama de contactosDiagrama lógico

= = + = +

Consideraciones de estabilidad.

0 1 1 0

0 1 0 0

0

1

00 01 11 10x1x2

y

Tabla de transición

Page 16: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

16

3. CIRCUITOS CON LATCHES. Latch con compuertas NOR:

a) Circuito con acoplamiento cruzado b) Tabla de verdad

1

2

R

S

Q

Q'

S R Q Q' 1 00 00 10 01 1

1 01 00 10 10 0

(Después que SR = 10)(Después que SR = 01)

0 0 0 11 0 0 1

01

y 00 01 11 10SR

Circuitos con latches.1

2SR Y=Q

yc) Circuito mostrandorealimentación d) Tabla de transición

= ( + ) + = + = += + si = 0

Page 17: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

17

Circuitos con latches.S Ry

Y=Q SR y

Y=Q

e) Diagramas de contacto

Circuitos con latches. Latch con compuertas NAND:

a) Circuito con acoplamiento cruzado b) Tabla de verdad

S

R

Q

Q'

1

2

S R Q Q' 1 01 10 11 10 0

0 10 11 01 01 1

(Después que SR = 10)(Después que SR = 01)

Page 18: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

18

1 1 0 01 1 1 0

01

y 00 01 11 10SRCircuitos con latches.

c) Circuito mostrandorealimentación d) Tabla de transición

= ( ) = ̅ +

RS Y=Q

y

12

Circuitos con latches.

e) Diagramas de contacto

SR y

Y=Q

Page 19: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

19

Análisis de circuitos secuenciales asíncronos.Ejemplo.Y1

Y2

R1

S1

R2

S2

y1

y2

x1

x2

SR

QQ

SR

QQ

S1

R1

S2

R2

x1

x2

Y1

Y2

y2

y1

Page 20: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

20

x1 y2

x1 x2

x2 y1

Y1

Y2

S

S

R

RY2

Y1x1 x2

x1 y2

x1 x2 x2

y1

Y1

Y2

x2

x1

y2

y1

= = += = +

Análisis de circuitos secuenciales asíncronos.= == =

= = 0= = 0

= + = + + = + += + = + + = + +

Page 21: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

21

00

01 01

00 11

00 10

00 0100

01

11

10

y1y200 00

11 11

11 10

11 10

11 1001

x1x2

Carrera crítica: estado total inicial = 1101, cambia de 1 a 0. Si cambia a 0 antes de , el estado total es 0100 en lugar de 0000.

Procedimiento:1. Se etiqueta cada salida de seguro con y su trayectoria de realimentación con para = 1, 2, 3, … , .2. Se encuentran las funciones booleanas para las entradas y .3. Se verifica cuando = 0 para cada latch NOR o cuando ̅ = 0para cada latch NAND. Si la condición no satisface, el circuito puede no operar correctamente.4. Se evalúa = + para cada latch NOR o = ̅ + para latch NAND.5. Se construye una tabla de transición con las en las filas y las en las columnas.6. Se grafica el valor de = … en la tabla.7. Se encierra en un círculo los estados estables donde = .

Page 22: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

22

Implementación mediante latches SR.Ejemplo: Repitiendo el ejemplo ya implementado:

0 0 0 1

0 0 1 1

0

1

00 01 11 10x1x2

y

a) Tabla de transición= ̅ +

y Y0 00 11 01 1

S R0 X1 00 1X 0

b) Tabla de excitación del latch

Implementación mediante latches SR.

0 0 0 10 0 X X

01

00 01 11 10x1x2

y X X X 01 1 0 0

01

00 01 11 10x1x2

y

c) Mapa para = ̅ d) Mapa para = ̅

Page 23: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

23

R

S

Yx1

x2

x1

yY=Qx2 x1

yY=Qx1 x2

x1

e) Circuito con latch NOR f) Circuito con latch NAND

g) Diagrama de contactos con latch NOR h) Diagrama de contactos con latch NAND

S

R

Yx2

x1

Procedimiento:1. Dada la tabla de transición que especifica la función de excitación = … , se deriva un par de mapas para cada y con = 1, 2, … , , mediante las condiciones de la tabla de excitación.2. Se deriva la función booleana simplificada para cada y . Debe cuidarse de no hacer y igual a 1 en la misma casilla de mintérmino.3. Se dibuja el diagrama lógico usando latches junto con las compuertas requeridas para generar las funciones booleanas y . Para latches NOR se utilizan las funciones booleanas obtenidas en el paso 2. Para latches NAND se usan los valores complementados de los obtenidos en el paso 2.

Page 24: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

24

4. PROCEDIMIENTO DE DISEÑO.› Inicia con el planteamiento del problema, termina con un diagrama lógico y/o con un diagrama de contactos.› Pasos a seguir con objeto de minimizar la complejidad del circuito y producir un circuito estable sin carreras críticas.

Ejemplo.Diseñar un circuito con dos entradas D (switch del operario) y G (switch del supervisor), y una salida Q (motor de proceso). Si D se cierra o se abre, se transfiere a la salida Q, siempre que G = 1. La salida Q seguirá a D en tanto que G = 1. Cuando G pasa a 0, la información que estaba presente en la entrada D en el momento de la transición ocurrida se retiene en la salida Q.

Page 25: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

25

Supervisor G Operario D Proceso Q

ESTADO

Supervisor G Operario D Proceso Q

ESTADO

Page 26: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

26

Supervisor G Operario D Proceso Q

ESTADO

Supervisor G Operario D Proceso Q

ESTADO

Page 27: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

27

Supervisor G Operario D Proceso Q

ESTADO

Supervisor G Operario D Proceso Q

ESTADO

Page 28: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

28

Tabla de flujo primitiva.Estado Entradas Salida ComentariosD G Q

a 0 1 0 Q = D porque G = 1, después del estado b, del c, o del fb 1 1 1 Q = D porque G = 1, después del estado a, del e, o del dc 0 0 0 Después del estado a o del dd 1 0 0 Después del estado ce 1 0 1 Después del estado b o del ff 0 0 1 Después del estado e

Tabla de estados totales

c , - a , 0 b , - - , -- , - a , - b , 1 e , -

ab

00 01 11 10DG

c , 0 a , - - , - d , -c , - - , - b , - d , 0

cd

f , - - , - b , -a , - - , - e , -

ef

e , 1f , 1

Tabla primitiva deFLUJO

Page 29: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

29

Reducción de la tabla de flujo primitiva.Fusión. Agrupación de los estados estables desde filas separadas a una fila común.Procedimiento informal. Pueden fusionarse dos o más filas en la tabla primitiva de flujo en una fila si hay estados y salidas sin conflicto en cada una de las columnas.

- , - a , - b , 1 e , -bf , - - , - b , -

a , - - , - e , -ef

e , 1f , 1

00 01 11 10DG

c , - a , 0 b , - - , -a00 01 11 10DG

c , 0 a , - - , - d , -c , - - , - b , - d , 0

cd

Reducción de la tabla de flujo primitiva.

Estados candidatos para la fusión en una fila

Page 30: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

30

a , 0 b , -a , - b , 1

a00 01 11 10DG

a , 0 a , 0b b , 1b , 1

a , 0 b , -a , - b , 1

a, c, d00 01 11 10DG

c , 0 d , 0b, e, f e , 1f , 1

Reducción de la tabla de flujo primitiva.

Tabla de flujo reducida

0 0 1 01 0 1 1

01

00 01 11 10DGy

Tabla de transición y diagrama lógico.

a) = + ̅ b) =

0 0 1 01 0 1 1

01

00 01 11 10DGy

Page 31: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

31

Tabla de transición y diagrama lógico.

DG QY

y

c) Diagrama lógico de compuertas d) Diagrama de contactos

D GG y

Y = Q

X X 0 X0 1 0 0

01

00 01 11 10DGy

0 0 1 0X 0 X X

01

00 01 11 10DGy

Implantación con latches.

a) = b) =

Mapas K para y

Page 32: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

32

S

R

QDG

D G

y

Y=Q

G

D

DG

R

S

Q D G

y

Y=Q

G

D

c) Latch compuertas NOR d) Diagrama de contactos

e) Latch compuertas NAND f) Diagrama de contactos

Asignación de salidas a los estados inestables.Ejemplo.a , 0 b , -c , - b , 0c , 1 d , -a , - d , 1

abcd

0 0X 01 1X 1

a) Tabla de flujo b) Asignación de salidas

Page 33: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

33

Los valores de salida de los estados inestables deben escogerse de modo que no ocurran salidas falsas momentáneas cuando el circuito cambia entre estados estables. El procedimiento para asignar las salidas asociadas a las salidas inestables es:› Asignar un 0 a una variable de salida asociada con un estado inestable que es un estado transitorio entre dos estados estables que tienen un 0 en la variable de salida correspondiente.› Asignar un 1 a una variable de salida asociada con un estado inestable que es un estado transitorio entre dos estados estables que tienen un 1 en la variable de salida correspondiente.› Asignar una condición “no importa” a una variable de salida asociada con un estado inestable que es un estado transitorio entre dos estados estables que tienen valores diferentes (0 y 1 o 1 y 0) en la variable de salida correspondiente.

Procedimiento de diseño.1. Obtener una tabla de flujo primitiva mediante las especificaciones dadas de diseño. Esta es la parte más difícil del diseño.2. Reducir la tabla de flujo fusionando filas en la tabla de flujo primitiva.3. Asignar variables binarias de estado a cada fila de la tabla de flujo reducida para obtener la tabla de transición.4. Asignar valores de salidas a los guiones asociados con los estados inestables para obtener los mapas de salida.5. Simplificar las funciones booleanas de las variables de excitación y salida y se dibuja el diagrama lógico (mediante compuertas o con latches SR), y el diagrama de contactos.

Page 34: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

34

5. REDUCCIÓN DE LAS TABLAS DE ESTADO Y DE FLUJO.Problema: se debe reducir estados de tablas de estado especificadas en forma incompleta.Tabla de implicación. Ejemplo 1:

Tabla de estados para demostrar los estados equivalentes(a, b) implica (c, d), (c, d) implica (a, b)entonces a y b como c y d son equivalentes

Estadopresente

Estado siguiente Salidax = 0 x = 1 x = 0 x = 1

a c b 0 1b d a 0 1c a d 1 0d b d 1 0

Equivalencia de estados: dos estados son equivalentes, si los estados siguientes son iguales y las salidas no cambian.Ejemplo 2.

Estadopresente

Estado siguiente Salidax = 0 x = 1 x = 0 x = 1

a d b 0 0b e a 0 0c g f 0 1d a d 1 0e a d 1 0f c b 0 0g a e 1 0

Tabla de estados a ser reducida Tabla de implicación

gfedcb

a b c d e f

Page 35: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

35

d, e

c, dc, ea, b

d, e d, egfedcb

a b c d e fTabla de implicación

Reducción de tablas de estado y de flujo.Estados equivalentes: (a, b) (d, e) (d, g) (e, g)Estados no equivalentes: (a, b) (c) (d, e, g) (f)

Estadopresente

Estado siguiente Salidax = 0 x = 1 x = 0 x = 1

a d a 0 0c d f 0 1d a d 1 0f c a 0 0

Tabla de flujo reducida

Page 36: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

36

Fusión de la tabla de flujo.• La tabla de flujo primitiva está incompletamente especificada• Para la equivalencia de estados deben estar especificados los estados siguientes y las salidas• Dos estados son compatibles si para cada entrada posible tienen la misma salida, y sus estados siguientes son compatibles. Las condiciones no importa, marcadas con un guion, no se toman en cuenta.Procedimiento para encontrar grupos compatibles:1. Determinar todos los pares compatibles por el uso de la tabla de implicación2. Se obtienen los compatibles maximales usando un diagrama de fusión3. Se encuentra una colección mínima de compatibles que cubren todos los estados y es cerrada

c , - a , 0 b , - - , -- , - a , - b , 1 e , -

ab

00 01 11 10DG

c , 0 a , - - , - d , -c , - - , - b , - d , 0

cd

f , - - , - b , -a , - - , - e , -

ef

e , 1f , 1

fedcb

a b c d e

Para el ejemplo:

Page 37: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

37

Pares compatibles: (a, b) (a, c) (a, d) (b, e) (b, f) (c, d) (e, f)

Tabla de implicación

d, ed, e

c, fd, ec, f

c, fd, ec, ff

edcb

a b c d e

Compatibles maximales.Compatible maximal: grupo de compatibles que contiene todas las combinaciones posibles de los estados compatibles. Se usa un método gráfico: cada estado es un punto colocado en el perímetro de una circunferencia› Punto aislado: estado que no es compatible con cualquier otro estado› Una línea representa un par compatible› Un triángulo consta de un compatible de tres estados› Un compatible de n estados es un polígono de n lados con todas las diagonales conectadas

Page 38: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

38

Para el ejemplo:Pares compatibles: (a, b) (a, c) (a, d) (b, e) (b, f) (c, d) (e, f)

ab

cd

e

fa

b

cd

e

f

Compatibles maximales: (a, b) (a, c, d) (b, e, f)

Compatibles maximales.

Compatibles maximales: (a, b, e, f) (b, c, h) (c, d) (g)

ab

cde

f

gh

Page 39: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

39

Condición de cobertura cerrada.Condición de cobertura: el conjunto de compatibles maximales incluye todos los estados de la tabla de estado original.Condición de cierre: si no hay estados implicados o si los estados implicados se incluyen dentro del conjunto.Para el ejemplo se elige:

(a, c, d) (b, e, f)No hay estados implicados para:

(a, c) (a, d) (c, d) (b, e) (b, f) (e, f)

Ejemplo.b, c

d, eb, c a, d

b, cedcb

a b c d

a

b

cd

e

a) Tabla de implicación b) Diagrama de fusión

Page 40: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

40

Pares compatibles:(a, b) (a, d) (b, c) (c, d) (c, e) (d, e)

Compatibles maximales:(a, b) (a, d) (b, c) (c, d, e)

Compatibles (a, b) (a, d) (a, d) (c, d, e)Estados

implicados (b, c) (b, c) (d, e) (a, d)(b, c)

Tabla de cierreCondición de cobertura cerrada: (a, d) (b, c) (c, d, e)

6. ASIGNACIÓN DE ESTADO LIBRE DE CARRRERAS.Se debe escoger una asignación binaria de estados de modo de prevenir las carreras críticas, esto se logra haciendo que los estados entre los cuales ocurren las transiciones, reciban asignaciones adyacentes. Ejemplo: Tabla de flujo de tres filas

a00 01 11 10

abc

b c aa b b ca c c c

x1x2

a) Tabla de flujo

a = 00 b = 01

c = 11b) Diagrama de transición

Page 41: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

41

Método de filas compartidas.

a00 01 11 10

abc

b d aa b b cd c c c

x1x2

a - c -d

a = 00 b = 01

c = 11d = 10

a) Tabla de flujo b) Diagrama de transición

0000 01 11 10

a = 00b = 01c = 11

01 10 0000 01 01 1110 11 11 11

x1x2

00 - 11 -d = 10c) Tabla de transición

Page 42: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

42

Ejemplo 2: Tabla de flujo con cuatro filas

b00 01 11 10

abc

a d ab d b ac a b c

x1x2

c d d cd

a b

cd a) Tabla de flujo b) Diagrama de transición

Tabla de flujo con cuatro filas

b) Diagrama de transicióna) Asignación binaria

a00 01 11 10

01

b c ge d f

y2y3y1

a=000 b=001

e=100 g=010

c=011f=111 d=101

Page 43: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

43

b00 01 11 10

a = 000 a e ab d b ac g b c

x1x2

- a - -- - - -c - - cf d d f- -- d

b = 001c = 011g = 010- = 110f = 111d = 101e = 100

Asignación de estados a la tabla de flujo modificada

Método de filas múltiples.

a100 01 11 10

0 b1 c1 d1c2 d2 a2 b2

y2y3

1

y1

a) Asignación binaria

Page 44: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

44

b100 01 11 10

a1 = 000 a1 d1 a1

b1 d2 b1 a1

c2 a1 b2 c2

x1x2

c1 d1 d1 c1

a2 = 111b1 = 001b2 = 110c1 = 011c2 = 100d1 = 010d2 = 101

b2 a2 d2 a2

b2 d1 b2 a2c1 a2 b1 c1

c2 d2 d2 c2

Tabla de flujo

7. RIESGOS.Transitorios indeseables con interrupciones que pueden aparecer a la salida del circuito. Riesgos combinacionales.

11 1 1

01

00 01 11 10x2x3

x1

a) Diagrama de contactos= + b) Mapa K para

x1 x2

x2 x3

Y

Page 45: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

45

11 1 1

01

00 01 11 10x2x3

x1

a) Mapa K para b) Diagrama de contactos= + +

x1 x2

x2 x3

Y

x1 x3

Riesgos

1

0

1

0

1

0a) Riesgo 0 estático b) Riesgo 1 estático c) Riesgodinámico

Page 46: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

46

Riesgos secuenciales.

x1 x2

x2 yY

0 0 1 01 0 1 1

01

00 01 11 10x1x2

y

a) Diagrama de contactos b) Tabla de transición

Riesgos secuenciales.

11 1 1

01

00 01 11 10x1x2

y

c) Mapa K para

Page 47: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

47

Riesgos secuenciales.

11 1 1

01

00 01 11 10x1x2

y

a) Mapa K para

x1 x2

x2 yY

x1 y

b) Diagrama de contactos

8. EJEMPLOS DE APLICACIÓN.Ejemplo 1: Deducir el circuito de mando de un motor, que es comandado por dos botones: con el botón A se arranca el motor, si se deja de pulsar A, el motor sigue funcionando, sucesivas acciones de A no influyen en el funcionamiento del motor. Si se presiona el botón P, el motor deja de funcionar, sucesivas acciones de P no influyen en la salida.Ejemplo 2: Con un solo botón, encender y apagar un motor.Generalización: con una sola botonera, habilitar varias salidas en forma secuencial, comenzando con que ninguna salida está habilitada. Es decir, en un primer instante ninguna salida está habilitada, se presiona la botonera y se habilita la primera salida, se presiona otra vez la botonera y se habilita la segunda salida, deshabilitando la primera; se presiona nuevamente la botonera y se habilita la tercera salida, deshabilitando la segunda, y asi sucesivamente hasta que nuevamente se regrese al estado inicial.

Page 48: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

48

CONCLUSIONES.› Introducción

– Clasificación› Procedimiento de análisis

– Tabla de transición– Procedimiento– Tabla de flujo– Condiciones de carrera.

› Carrera no crítica› Carrera crítica› Ciclo

– Consideraciones de estabilidad.

CONCLUSIONES.› Circuitos con latches

– Latch con compuertas NOR– Latch con compuertas NAND– Análisis de circuitos secuenciales asíncronos con latches.› Procedimiento– Implementación mediante latches SR› Procedimiento

› Procedimiento de diseño– Tabla de estados totales– Tabla de flujo primitiva– Reducción de la tabla de flujo primitiva– Tabla de transición y diagrama lógico– Implantación con latches– Asignación de salidas a los estados inestables– Procedimiento de diseño

Page 49: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

49

CONCLUSIONES.› Reducción de las tablas de estado y de flujo

– Tabla de implicación› Equivalencia de estados

– Fusión de la tabla de flujo– Compatibles maximales– Condición de cobertura cerrada

› Asignación de estado libre de carreras– Método de filas compartidas– Método de filas múltiples

CONCLUSIONES.› Riesgos

– Riesgos combinacionales– Riesgos secuenciales

› Ejemplos de aplicación

Page 50: $SOLFDFLyQ GH OD OyJLFD VHFXHQFLDO …raliendre.uto.edu.bo/elt3890/LogicaSecuencial.pdf · $solfdflyq gh od oyjlfd vhfxhqfldo dvtqfurqd hq dxwrpdwl]dflyq 06f ,qj 5dplur )udq] $olhqguh

50