unidad1 sd2

47
Manrique © 2005 Sistemas Digitales II 1 Introducción al Análisis de Sistemas Secuenciales Unidad 1

Upload: haibsel

Post on 09-Jul-2015

312 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 1

Introducción al Análisis de Sistemas Secuenciales

Unidad 1

Page 2: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 2

Introducción

Hasta hoy todo era combinatorio (Sistemas Digitales I) Las salidas dependían únicamente de las entradas en

ese momento. En este curso abordaremos los Sistemas

Secuenciales o también llamados Maquinas de Estados Finitos. La salida no solo depende de la entradas presentes,

también dependerá de la historia pasada, de lo que sucedió antes.

Page 3: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 3

Ejemplos clásicos

Page 4: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 4

Tipos de circuitos secuenciales

Existen dos tipos de circuitos secuenciales Sincrónicos: Son sistemas cuyo comportamiento puede

definirse a partir del conocimiento de sus señales en instantes discretos de tiempo.

Asincrónicos: Depende del orden que cambien las señales de entrada y pueda ser afectadas en un instante dado de tiempo.

Page 5: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 5

Sistemas Sincrónicos (Síncronos o con clock) Son sistemas que actúan bajo un control de

tiempo, este control se denomina reloj (clock). Clock: es una señal que se alterna entre los valores

lógicos 0 y 1 en un periodo regular.

Fig. 1: Señales de Clock

T

Page 6: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 6

El Clock

El Periodo (T): es el tamaño en tiempo de un ciclo.

La Frecuencia (f): es el inverso del periodo, 1/T y está dada en Hertz (Hz). Ejemplo:

Una señal con frecuencia de 200 MHz, corresponde a una señal que tenga un periodo de 5 ns.

En la mayoría de los sistemas sincrónicos, los cambios ocurren en las transiciones donde la señal cambia de 0 a 1 ó de 1 a 0.

Page 7: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 7

Diagrama conceptual de un sistema secuencial

Lógica Combinatoria

Memoria...

x1

xn

Clock

.

.

. ...

Z1

Zk

.

.

.

q1

qm

Page 8: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 8

Comentarios sobre el diagrama

Tiene n entradas, (x’s) El clock se comporta como una entrada más. Tiene k salidas (z’s) Tiene m dispositivos de almacenamiento binario (q’s) Cada dispositivo podrá tener una o dos señales de entrada Muchos sistemas tiene solo una entrada y una salida, pero

veremos ejemplos con varias entradas e incluso algunos sistemas que no tienen entradas a no ser el clock.

Memoria: Flip-Flop’s.

Page 9: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 9

Tablas y diagramas de estados (1)

Ejemplo de un sistema secuencial: EJE6: Un sistema con una entrada x y una salida z, de

tal forma que z = 1, si x ha sido 1 por tres pulsos de clock consecutivos.

Para este ejemplo, el sistema debe almacenar en memoria la información de los últimos tres estados de la entrada y producir una salida basada en esa información.

Estado: Lo que se almacena en la memoria es el estado del sistema.

Page 10: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 10

Tablas y diagramas de estados (2)

En este ejemplo, la salida depende únicamente del estado del sistema y que se haya seguido el patrón definido en la entrada del sistema.

E este tipo de Máquinas de Estado que sólo dependen del estado actual del sistema son llamadas de Modelos Moore ó Máquinas Moore, debido a Edward F. Moore*.

* Edward F. Moore, un pionero de las Máquinas de estados, quien escribió Gedanken-experiments on Sequential Machines, pp 129 – 153, Automata Studies, Annals of Mathematical Studies, no. 34, Princeton University Press, Princeton, N. J., 1956.

Page 11: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 11

Tablas y diagramas de estados (3)

No abordaremos todavía el diseño de un sistema secuencial, pero daremos las herramientas necesarias para describirlo. Tabla de Estados: es una tabla que describe las

transiciones de una máquina de estados finitos, en otras palabras, muestra las relaciones funcionales entre las entradas, salidas y estados de la memoria. Para cada combinación y cada estado, indica cual será la salida y cual será el próximo estado después del siguiente pulso de clock.

Page 12: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 12

Tablas y diagramas de estados (4)

Diagrama de Estados: Es una representación gráfica del comportamiento del sistema, mostrando cada combinación de entrada y cada estado, de la misma forma muestra el resultado de la salida y el valor del estado siguiente después de un pulso de clock.

A continuación veremos la tabla y el diagrama de estados para el EJE6.

Page 13: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 13

Tablas y diagramas de estados (5)

Estado SiguienteEstado

1DAD

0DAC

0CAB

0BAA

Salidax = 1x = 0Presente

Tabla y diagrama de estados para el EJE6

En el futuro nos referiremos al Estado Presente por el símbolo q y el Estado Siguiente por el símbolo q*.

Page 14: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 14

Timing Trace (rastreo en el tiempo)

Un timing trace, es un conjunto de valores para las entradas y salidas arreglados en una forma consecutiva con relación a los pulsos de clock. Es usado normalmente para explicar o clarificar el comportamiento de un sistema.

00001110000001000000?z

?AADDDCBABAADCBACBA?q

001111101001110110x

Timing trace para el EJE6

Page 15: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 15

Elementos de Memoria

Latches y Flip Flops

Page 16: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 16

Latch

Un Latch es un dispositivo binario de almacenamiento, construido con dos o más compuertas con realimentación.

Un Latch con compuertas NOR

P

Q

P = (S + Q)’

Q = (R + P)’

Ecuaciones del sistema

S = SetR = Reset

Page 17: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 17

Un Latch con gatillo (Gated)

En este latch, cuando la señal del gate es inactiva, tanto SG y RG serán 0 y el latch permanece sin cambios. Únicamente cuando la señal del gate es 1 el latch podrá recibir el valor 0 ó 1 así como el latch anterior.

Page 18: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 18

El Flip Flop

El Flip Flop es un dispositivo de almacenamiento binario con colck.

Bajo operaciones normales este dispositivo almacenará un 1 ó un 0 y sólo cambiarán estos valores en el momento que ocurra una transición del clock. Las transiciones que pueden producir cambios en el

sistema pueden ser cuando el clock va de 0 a 1, disparo por rampa de subida (leadign-edge triggered), o cuando el clock va de 1 a 0, disparo por rampa de bajada (trailing-edge triggered).

Page 19: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 19

Rampas de subida y de bajada

Rampa de bajada

Rampa de subida

Clock

0

1

Page 20: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 20

Flip Flop tipo D (1)

Existen varios tipos de Flip Flops, nos concentraremos en dos tipos, el D y el JK, el Flip Flop tipo D es el más usado y es encontrado comúnmente en dispositivos lógicos programables.

Otros, SR y T.

Page 21: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 21

Flip Flop tipo D (2)

Es el más sencillo en su operación. El nombre proviene de Delay (retardo), ya que su salida es un

reflejo de lo que hay en la entrada con un retardo de un ciclo de clock.

D

q

q’

Clock

D

q

q’

Clock

D con rampa de bajada D con rampa de subida

Page 22: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 22

Flip Flop D, tabla de comportamiento y diagrama de estados

111

101

010

000

q*qD

11

00

q*D

q* = D

Ecuación

Page 23: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 23

Comportamiento de un Flip Flop tipo D con Rampa de Bajada Diagrama de tiempo

Page 24: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 24

Variación de la entrada

La salida no se verá afectada, ya que el valor de la entrada D solo es relevante en el instante de la rampa de bajada

Page 25: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 25

Comportamiento de un Flip Flop tipo D con Rampa de Subida Diagrama de tiempo

Page 26: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 26

Flip Flops con “Clear” y “Preset”

Cualquier tipo de Flip Flop podrá contar con estas entradas asincrónicas, en el caso de Flip Flops tipo D tenemos:

D q

q’Clock

PRE

CLR

1

1

0

0

-

0

1

q*

1

1

1

1

0

1

0

PRE’

001

InvalidoXX0

XX0

111

011

Normal101

Constante

inmediata

XX1

qDCLR’

Page 27: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 27

Diagrama de tiempo para un Flip Flop con Clear y Preset

Page 28: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 28

Flip Flop SR (Set-Reset)

Tiene dos entradas con el mismo significado que el Latch SR Tablas de comportamiento

0110

0010

1100

0000

1

1

1

1

S

-11

-01

110

100

q*qR

1

1

0

0

S

01

q0

-1

10

q*R

No permitido

No permitido

Page 29: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 29

Flip Flop SR – Diagrama de estados y Ecuación

1x1

1x

10110100q\SR

1

0

q* = S + R’q

Page 30: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 30

Diagrama de tiempo para un Flip Flop SR

Page 31: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 31

Flip Flop tipo T (Toggle)

Tiene una entrada T, de tal forma que si T = 1, el Flip Flop cambia el valor del estado actual y si T = 0, el estado permanece sin cambios.

Tablas de Comportamiento

011

101

110

000

q*qT

q’1

q0

q*T

Page 32: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 32

Diagrama de estados para le Flip Flop T

0 1

1

1

00T

Ecuación para el comportamiento del Flip Flop

q* = T q +

Page 33: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 33

Diagrama de tiempo para un Flip Flop T

Page 34: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 34

Flip Flop tipo JK Es una combinación del SR y del T, siendo así, su comportamiento

es como el SR, con excepción cuando sus entradas J = K = 1 provoca que el Flip Flop cambie de estado, como si fuera un Flip Flop T.

Tablas de comportamiento:

0110

0010

1100

0000

1

1

1

1

J

011

101

110

100

q*qK

1

1

0

0

J

01

q0

q’1

10

q*K

Page 35: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 35

Diagrama de estados para le Flip Flop JK

0 1

1 01 1

1 01 1

0 00 1

0 01 0J K

11

11

10110100q\JK

1

0

q* = Jq’ + K’q

Page 36: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 36

Diagrama de tiempo para un Flip Flop JK

Page 37: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 37

Análisis de un Sistemas Secuencial

Page 38: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 38

Circuito Secuencial – Modelo tipo Moore con Flip Flops tipo D

•Del circuito encontramos:

2

12

1211

qz

xqD

qxqqD

′==

′+′=

1 2

Page 39: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 39

Tabla y diagrama de estados del circuito

1

1

0

0

q1

q1* q2*

00 10 01

11 11 00

01 00 01

11 00 00

zx = 1x = 0q2100

001

1

10

0

11

00

1

0

1 1

0

1

Page 40: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 40

Circuito Secuencial – Modelo tipo Moore con Flip Flops tipo JK

Este es un circuito de modelo tipo Moore, ya que la salida z, que es igual a A + B, es una función del estado, o sea, el contenido de los flip flops, y no de la entrada x.

BAz

AxKJ

BxKxJ

BB

AA

+=′+==′==

Page 41: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 41

Tabla de estados para el ejemplo anterior

1

1

0

0

A

A* B*

11 01 11

10 11 00

11 00 01

01 10 10

zx = 1x = 0B

Para completar la tabla hay que tener en cuenta las ecuaciones de entrada de los flip flops y el funcionamiento de cada uno de ellos para determinar el estado siguiente.

Page 42: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 42

Trazado en el tiempo y Diagrama de tiempos

101011010B

101111010z

00111000A

0110100x

Page 43: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 43

Diagrama de Estados para el ejemplo

0

00

1

01

1

10

1

11

0

0

1

0

1

1

1

0

0

Page 44: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 44

Ejemplo con el modelo Mealy En algunos casos, la salida depende de la entrada actual así como del valor

de los estados actuales. Este tipo de circuitos son clasificados como sistemas secuenciales de

modelo Mealy. Un ejemplo de este modelo es este sistema.

Page 45: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 45

Ecuaciones

Las ecuaciones de entrada y salida para el circuito son:

1

212

211

xqz

qqxD

xqxqD

=′′=

+=

Como son flip flops tipo D, entonces q* = D

Page 46: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 46

Tabla de estados y diagrama de estados

0

0

0

0

x = 0

z

1

1

0

0

q1

q1* q2*

11 00 01

11 00 00

01 00 01

00 10 00

x = 1x = 1x = 0q2

00

0 / 0

11

01 10

1 / 0

0 / 00 / 0

0 / 0

1 / 1

1 / 1

1 / 0

Page 47: Unidad1 sd2

Manrique © 2005 Sistemas Digitales II 47

Trazado en el tiempo y Diagrama de tiempos

0

0

0

00010010?q2

0011000000z

11100100?q1

011110110x