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

16.

Anlisis y diseo de sistemas secuenciales


Oliverio J. Santana Jaria
Sistemas Digitales Ingeniera Tcnica en Informtica de Sistemas Curso 2006 2007

Introduccin

No resulta fcil deducir el funcionamiento de un circuito secuencial a partir de un diagrama de puertas lgicas De la misma manera, dada la descripcin funcional de un circuito secuencial, no es trivial obtener el diagrama que represente la implementacin del mismo Los objetivos de este tema son:
Describir el proceso de anlisis que permite comprender el funcionamiento de un circuito secuencial partiendo de su implementacin Describir el proceso de sntesis que permite implementar un circuito secuencial a partir de una descripcin funcional
2

Anlisis y diseo de sistemas secuenciales

Estructura del tema

Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales


Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos
Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
3

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Estado de un sistema secuencial


Los sistemas secuenciales se caracterizan por el hecho de que sus salidas dependen no slo de las entradas actuales, sino de toda la secuencia de entradas anteriores

Toda esta secuencia de entradas anteriores da lugar a lo que se denomina el estado del circuito, que est almacenado en componentes de memorizacin
x0 x1 xm y0 y1 yn

conjunto de puertas lgicas memoria

{x0, x1, xm} Xt

{y0, y1, yn} Yt Yt = F(Xt, Xt-1, Xt-2 , )


4

Anlisis y diseo de sistemas secuenciales

Estado de un sistema secuencial


De acuerdo con esta definicin, el estado de un sistema secuencial depende de la secuencia de entradas anteriores al sistema

Et = F(Xt-1, Xt-2 , ) Yt = F(Xt, Xt-1, Xt-2 , ) = F(Xt, Et)


Este planteamiento permite descomponer la ecuacin general de los sistemas secuenciales en otras dos ecuaciones: una de salida y otra de estado siguiente

salida actual Yt = F(Xt, Et) estado siguiente

Yt = h(Xt, Et) Et+1 = f(Xt, Et)


5

Anlisis y diseo de sistemas secuenciales

Caracterizaci Caracterizacin de sistemas secuenciales


Para caracterizar completamente un sistema secuencial es necesario plantear:

Las tablas y ecuaciones booleanas que definen el siguiente estado del sistema a partir de las entradas del circuito y el estado actual del mismo Las tablas y ecuaciones booleanas que definen las salidas del sistema a partir de las entradas del circuito y el estado actual del mismo

Esta informacin puede visualizarse usando un diagrama de estados que muestre todos los estados posibles del sistema y las transiciones entre ellos

Anlisis y diseo de sistemas secuenciales

Modelo de mquinas de estados finitos


Esta forma de caracterizar un sistema secuencial est basada en un modelo de mquinas de estados finitos (

FSM Finite-State Machine)

Tericamente, el modelo FSM se define como una quntupla < S, I, O, f, h>


S I O f h conjunto de estados (states) conjunto de entradas (inputs) conjunto de salidas (outputs) funcin de estado siguiente funcin de salida
7

Anlisis y diseo de sistemas secuenciales

Modelo de mquinas de estados finitos

Este modelo FSM supone que el tiempo se divide en intervalos uniformes y que las transiciones de un estado a otro solo ocurren al principio de cada intervalo La funcin de salida h define los valores de salida durante el intervalo de tiempo actual de acuerdo con el estado y las entradas actuales Y = h(X , E )
t t t

La funcin de estado siguiente f define cul ser el estado en el siguiente intervalo de tiempo de acuerdo con el estado y las entradas en el intervalo actual
Et+1 = f(Xt, Et)
Anlisis y diseo de sistemas secuenciales 8

Tipos de FSM

En realidad, la funcin de salida puede definirse de dos maneras distintas, lo que da lugar a dos modelos FSM distintos El modelo de Moore describe sistemas secuenciales cuyas salidas dependen nica y exclusivamente del estado del circuito Y = h(E )
t t

El modelo de Mealy describe sistemas secuenciales cuyas salidas dependen del estado del circuito y de las entradas en el intervalo de tiempo actual
Anlisis y diseo de sistemas secuenciales

Et+1 = f(Xt, Et)

Yt = h(Et, Xt) Et+1 = f(Xt, Et)


9

Implementacin de FSM

De esta manera, cualquier sistema secuencial se puede modelar utilizando una mquina de estados finitos y, a partir de ella, realizar su implementacin El estado del sistema secuencial ser almacenado en circuitos biestables que actuarn como elementos de memorizacin Las funciones de estado siguiente f y de salida implementarn utilizando lgica combinacional
Anlisis y diseo de sistemas secuenciales

se

10

Estructura del tema

Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales


Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos
Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
11

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Anlisis de sistemas secuenciales


El proceso de anlisis de un sistema secuencial consiste en la generacin de una descripcin funcional a partir del diagrama lgico de un determinado circuito

La descripcin funcional contendr varios elementos

Diagrama de estados del circuito Ecuaciones y tablas que definan el estado siguiente Ecuaciones y tablas que definan la salida del circuito

Una vez obtenida la descripcin funcional, es posible desarrollar cronogramas que permitan estudiar el comportamiento del sistema

Anlisis y diseo de sistemas secuenciales

12

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
13

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Anlisis de sistemas de tipo Moore


Los circuitos secuenciales de tipo Moore son aquellos en los que las salidas no dependen del valor actual de las entradas, sino nicamente del estado actual

Este diagrama muestra un circuito secuencial de tipo Moore compuesto de dos biestables D

Anlisis y diseo de sistemas secuenciales

14

Anlisis de sistemas de tipo Moore


El primer paso en el anlisis es obtener las ecuaci ones de entrada a cada biestable del circuito En este caso hay dos biestables cuyas entradas son D

0y

D , por lo que plantearemos dos ecuaciones en funcin

de la entrada Cnt y de las salidas de los biestables

Anlisis y diseo de sistemas secuenciales

15

Anlisis de sistemas de tipo Moore


Estas ecuaciones se denominan ecuaciones de excitacin, ya que determinan el valor de las entradas de los biestables del circuito

A continuacin hay que transformar estas ecuaciones en las ecuaciones de estado siguiente caractersticas de cada biestable Dado que el estado siguiente de un biestable D es ig ual al valor de la seal D, tenemos que:

Anlisis y diseo de sistemas secuenciales

16

Anlisis de sistemas de tipo Moore


A continuacin debemos calcular la ecuacin de salida Dado que estamos hablando de un circuito de tipo Moore, la salida depender slo del estado actual del sistema, es decir, de las salidas de los biestables

Anlisis y diseo de sistemas secuenciales

17

Anlisis de sistemas de tipo Moore


A partir de las ecuaciones de estado siguiente y de salida generamos una tabla que refleje esta informacin

Cada fila de la tabla se corresponde con un estado del circuito Cada columna de la tabla representa un valor de las entradas

Dado que el circuito tiene dos biestables, el nmero total de estados posibles es cuatro

Anlisis y diseo de sistemas secuenciales

18

Anlisis de sistemas de tipo Moore


Para facilitar la visualizacin del funcionamiento del circuito podemos representar el contenido de esta tabla usando un diagrama de estados

Cada estado se representa con un crculo que contiene el valor de los biestables que representa y el valor de las salidas Las transiciones entre estados se representan como flechas entre los crculos, etiquetadas con el valor de las entradas que causa la transicin
m y el

En general, en un circuito con m biestables y k entradas, el nmero total de estados ser 2 nmero total de transiciones ser 2

m 2k

Anlisis y diseo de sistemas secuenciales

19

Anlisis de sistemas de tipo Moore


El diagrama de estados puede obtenerse fcilmente a partir de la tabla de estado siguiente y de salida

Anlisis y diseo de sistemas secuenciales

20

10

Anlisis de sistemas de tipo Moore


Con este diagrama podemos comprobar que:

Cuando Cnt = 0 el circuito permanece en el estado actual Mientras Cnt = 1 el circuito va recorriendo todos los estados siguiendo esta secuencia: 0, 1, 2, 3, 0, 1, 2, 3, 0,

Por lo tanto, este circuito es un contador mdulo 4 con una entrada de control que habilita la cuenta

Anlisis y diseo de sistemas secuenciales

21

Anlisis de sistemas de tipo Moore


Con toda esta informacin podemos generar un cronograma que permita ver el comportamiento del circuito bajo determinadas circunstancias

Anlisis y diseo de sistemas secuenciales

22

11

Anlisis de sistemas de tipo Moore


Este cronograma muestra cuatro ciclos de reloj con la seal Cnt activa entre los instantes de tiempo t

0 y t4

Suponemos que el estado inicial del contador es 00

Anlisis y diseo de sistemas secuenciales

23

Anlisis de sistemas de tipo Moore


El contador pasa al estado 01 tras el flanco de sub ida de la seal de reloj en t

1 2

El contador pasa al estado 10 tras el flanco de sub ida de la seal de reloj en t

Anlisis y diseo de sistemas secuenciales

24

12

Anlisis de sistemas de tipo Moore


El contador pasa al estado 11 tras el flanco de sub ida de la seal de reloj en t , activando la salida Y Dado que la seal Cnt se desconecta en t , el contador permanece en el estado 11 tras el flanco de subida de t

Anlisis y diseo de sistemas secuenciales

25

Anlisis de sistemas de tipo Moore


Para comprobar el comportamiento del circuito sera necesario construir cronogramas para todas las posibles secuencias de valores de entrada

Finalmente, estos cronogramas deben ser verificados utilizando una herramienta de simulacin de circuitos

Las herramientas de simulacin a nivel fsico permiten describir el circuito lgico utilizando puertas y biestables Las herramientas de simulacin a nivel funcional permiten describir el circuito en base a tablas o diagramas de estado En cualquier caso, estas herramientas no permiten verificar los retardos reales del circuito, ya que no tienen informacin sobre su implementacin
26

Anlisis y diseo de sistemas secuenciales

13

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
27

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Anlisis de sistemas tipo Mealy


Los circuitos secuenciales de tipo Mealy son aquellos en los que las salidas dependen del valor actual de las entradas y del estado actual Este diagrama muestra un circuito secuencial de tip o Mealy compuesto de dos biestables D

Anlisis y diseo de sistemas secuenciales

28

14

Anlisis de sistemas de tipo Mealy


El primer paso en el anlisis es obtener las ecuaci ones de excitacin que definen la entrada de cada biestable En este caso hay dos biestables cuyas entradas son D

0y

D , por lo que plantearemos dos ecuaciones en funcin

de la entrada Cnt y de las salidas de los biestables

Anlisis y diseo de sistemas secuenciales

29

Anlisis de sistemas de tipo Mealy


A continuacin hay que transformar estas ecuaciones en las ecuaciones de estado siguiente caractersticas de cada biestable Dado que el estado siguiente de un biestable D es ig ual al valor de la seal D, tenemos que:

Anlisis y diseo de sistemas secuenciales

30

15

Anlisis de sistemas de tipo Mealy


A continuacin calculamos la ecuacin de salida En un circuito de tipo Mealy la salida depende tanto del estado actual del sistema como de los valores actuales de las entradas del mismo

Anlisis y diseo de sistemas secuenciales

31

Anlisis de sistemas de tipo Mealy


A partir de estas ecuaciones generamos la tabla de estado siguiente y de salida La principal diferencia de esta tabla con la de un circuito de tipo Moore es que los valores de salida tambin dependen de los valores de entrada

Anlisis y diseo de sistemas secuenciales

32

16

Anlisis de sistemas de tipo Mealy


El diagrama de estados puede obtenerse a partir de esta tabla, pero teniendo en cuenta que las salidas no se asocian con los estados sino con las transiciones

Anlisis y diseo de sistemas secuenciales

33

Anlisis de sistemas de tipo Mealy


Un arco con la etiqueta X/Y se interpreta as:

Mientras el circuito permanezca en el estado del que sale el arco y el valor de las entradas sea igual a X, la salida del circuito ser igual a Y Si el valor de las entradas en el flanco de reloj es igual a X, el circuito cambiar en el siguiente ciclo al estado apuntado por el arco

Anlisis y diseo de sistemas secuenciales

34

17

Anlisis de sistemas de tipo Mealy


A partir del diagrama de estados podemos comprobar que el circuito es un contador mdulo 4 con una ent rada de control que habilita la cuenta

Cuando Cnt = 0 el circuito permanece en el estado actual Mientras Cnt = 1 el circuito va recorriendo todos los estados siguiendo esta secuencia: 0, 1, 2, 3, 0, 1, 2, 3, 0,

Anlisis y diseo de sistemas secuenciales

35

Anlisis de sistemas de tipo Mealy


Con toda esta informacin podemos generar un cronograma que permita ver el comportamiento del circuito bajo determinadas circunstancias

Anlisis y diseo de sistemas secuenciales

36

18

Anlisis de sistemas de tipo Mealy


Este cronograma muestra cuatro ciclos de reloj con la seal Cnt activa entre los instantes de tiempo t

y t

Suponemos que el estado inicial del contador es 00

Anlisis y diseo de sistemas secuenciales

37

Anlisis de sistemas de tipo Mealy


El contador pasa al estado 01 tras el flanco de sub ida de la seal de reloj en t

El contador pasa al estado 10 tras el flanco de sub ida de la seal de reloj en t

Anlisis y diseo de sistemas secuenciales

38

19

Anlisis de sistemas de tipo Mealy


El contador pasa al estado 11 tras el flanco de sub ida de la seal de reloj en t , activando la salida Y

Dado que la seal Cnt se desconecta en t , el contador

permanece en el estado 11 tras el flanco de subida de t

Anlisis y diseo de sistemas secuenciales

39

Anlisis de sistemas de tipo Mealy


La principal diferencia con respecto al contador equivalente de tipo Moore es que la salida Y no permanece a 1 cuando se desactiva Cnt, sino que tambin pasa a 0

Anlisis y diseo de sistemas secuenciales

40

20

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
41

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Procedimiento de anlisis
En general, el procedimiento de anlisis de lgica secuencial sigue los pasos que pueden verse en este diagrama

A continuacin vamos a ver unos ejemplos que nos permitirn clarificar todos estos conceptos

Anlisis y diseo de sistemas secuenciales

42

21

Ejemplo de anlisis 1
Vamos a realizar el anlisis de este circuito En primer lugar podemos determinar que se trata de un circuito de tipo Moore, ya que las salidas dependen nicamente del estado del circuito y no de las entradas

Anlisis y diseo de sistemas secuenciales

43

Ejemplo de anlisis 1
El circuito tiene 3 biestables, es decir, 8 estados posibles El circuito tiene una nica seal de entrada X El circuito tiene tres seales de salida Y , Y , e Y

Anlisis y diseo de sistemas secuenciales

44

22

Ejemplo de anlisis 1
A partir del circuito podemos obtener las ecuaciones correspondientes a las entradas de los biestables

Anlisis y diseo de sistemas secuenciales

45

Ejemplo de anlisis 1
Conociendo el funcionamiento de un biestable JK es posible, partiendo de las ecuaciones de las entradas, generar la tabla de excitacin y de estado siguiente

Anlisis y diseo de sistemas secuenciales

46

23

Ejemplo de anlisis 1
A partir del circuito tambin podemos obtener las ecuaciones correspondientes a las seales de salida

Anlisis y diseo de sistemas secuenciales

47

Ejemplo de anlisis 1
Dadas las ecuaciones de salida, es sencillo obtener la tabla de salida

Anlisis y diseo de sistemas secuenciales

48

24

Ejemplo de anlisis 1
Con las tablas anteriores podemos obtener el diagra ma de estados que describe el funcionamiento del circu ito

Anlisis y diseo de sistemas secuenciales

49

Ejemplo de anlisis 1
El circuito es un contador mdulo 8

Cuando X = 1 sigue la secuencia 0,1,2,3,4,5,6,7,0,1,2,3, Cuando X = 0 el circuito cuenta en orden inverso

Anlisis y diseo de sistemas secuenciales

50

25

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
51

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Ejemplo de anlisis 2
A continuacin analizaremos el siguiente circuito Podemos determinar que se trata de un circuito de tipo Mealy porque las salidas dependen tanto del estado del circuito como de las entradas del mismo

Anlisis y diseo de sistemas secuenciales

52

26

Ejemplo de anlisis 2
El circuito tiene 2 biestables, es decir, 4 estados posibles El circuito tiene una nica seal de entrada X El circuito tiene una nica seal de salida Y

Anlisis y diseo de sistemas secuenciales

53

Ejemplo de anlisis 2
A partir del circuito podemos obtener las ecuaciones correspondientes a las entradas de los biestables

Anlisis y diseo de sistemas secuenciales

54

27

Ejemplo de anlisis 2
Conociendo el funcionamiento de los biestables JK y D es posible, partiendo de las ecuaciones de las entradas, generar la tabla de excitacin y de estado siguiente

Anlisis y diseo de sistemas secuenciales

55

Ejemplo de anlisis 2
Partiendo del circuito tambin podemos obtener la ecuacin correspondiente a la seal de salida

Anlisis y diseo de sistemas secuenciales

56

28

Ejemplo de anlisis 2
A partir de la ecuacin de salida podemos generar la tabla de salida

Anlisis y diseo de sistemas secuenciales

57

Ejemplo de anlisis 2
Con las tablas anteriores podemos obtener el diagra ma de estados del circuito que describe su funcionamie nto

Anlisis y diseo de sistemas secuenciales

58

29

Ejemplo de anlisis 2
El circuito es un contador mdulo 4

La entrada X es una seal de reset sncrono La salida Y es una indicacin de vuelta a cero

Anlisis y diseo de sistemas secuenciales

59

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
60

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

30

Diseo de sistemas secuenciales


El objetivo del proceso de diseo es generar la implementacin de un sistema secuencial a partir de una descripcin funcional

El primer paso de este proceso es tomar la descripc in del sistema y convertirla en un diagrama de estados con las correspondientes tablas de estado siguiente y salida

Una vez obtenido el diagrama de estados hay que reducir lo ms posible el nmero de estados para minimizar el nmero de biestables necesarios

Anlisis y diseo de sistemas secuenciales

61

Diseo de sistemas secuenciales


Con el diagrama de estados minimizado debe realizarse la codificacin de estados, es decir, asignar los cdigos binarios que representarn cada estado en los biestables

Tras la codificacin es posible generar las ecuacio nes de estado siguiente y de salida

El siguiente paso es determinar el tipo de biestables ms adecuado para la implementacin del circuito, ya que cada biestable necesitar una cantidad de lgica diferente para representar una determinada funcin

Anlisis y diseo de sistemas secuenciales

62

31

Diseo de sistemas secuenciales


Una vez elegido el tipo de biestable se pueden obtener las ecuaciones de excitacin para las entradas de cada uno de los biestables

Estas ecuaciones permiten disear y optimizar la l gica necesaria para completar el circuito

El diseo del circuito proporciona la base para la generacin de un cronograma que pueda verificarse por simulacin para comprobar si el comportamiento del sistema es el que se deseaba obtener

Anlisis y diseo de sistemas secuenciales

63

Diseo de sistemas secuenciales


Este diagrama muestra un resumen de todos los pasos necesarios para completar el diseo de un sistema secuencial a partir de una descripcin funcional del mismo

Anlisis y diseo de sistemas secuenciales

64

32

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
65

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Generacin de un diagrama de estados


El diseo de un sistema secuencial se inicia con la generacin de un diagrama de estados a partir de una descripcin funcional de su comportamiento

Esta descripcin puede estar en lenguaje natural e incluir cronogramas, aunque es preferible usar mtodos ms precisos para evitar ambigedades

Diagramas de flujo o diagramas ASM Lenguajes de descripcin de hardware (VHDL,)

Con el diagrama de estados se pueden generar las tablas de estado siguiente y salida para facilitar el dise o

Anlisis y diseo de sistemas secuenciales

66

33

Ejemplo de sistema secuencial


Como ejemplo vamos a generar el diagrama de estados de un contador ascendente/descendente mdulo 3

El circuito tendr dos entradas

C habilitacin de cuenta: cuando C=1 el circuito contar y cuando C=0 el circuito permanecer parado D direccin de cuenta: cuando D=0 el circuito contar ascendentemente y cuando D=1 contar descendentemente

El circuito tendr una salida Y que se activar cuando regrese al valor 0 en sentido ascendente o al valor 2 en sentido descendente

Anlisis y diseo de sistemas secuenciales

67

Generacin del diagrama de estados


Este contador debe memorizar los cdigos de tres dgitos: 0, 1, y 2 Adems, siempre que la entrada C est activa, debe permitir dos secuencias de acuerdo con el valor de la entrada D: una ascendente y otra descendente

Anlisis y diseo de sistemas secuenciales

68

34

Generacin del diagrama de estados


El contador puede cambiar de direccin durante la cuenta si cambia el valor de D mientras C est activa Ya que no se menciona en la descripcin, podemos suponer que el contador seguir contando en la nueva direccin a partir del estado actual

Anlisis y diseo de sistemas secuenciales

69

Generacin del diagrama de estados


Por ltimo, es necesario tener en cuenta el caso en el que la seal C est desactivada, lo que implicar que el contador debe permanecer en el estado actual

Anlisis y diseo de sistemas secuenciales

70

35

Tabla de estado siguiente y salida


Ahora que el diagrama de estados est completo podemos generar la tabla de estado siguiente y salida

Anlisis y diseo de sistemas secuenciales

71

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
72

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

36

Minimizacin del diagrama de estados


Resulta sencillo entender el diagrama de estados generado para el contador ascendente/descendente mdulo 3, ya que los dos modos de operacin se distinguen claramente

Sin embargo, la claridad no es el objetivo prioritario, ya que una mayor cantidad de estados implica una mayor cantidad de biestables y un coste mayor

Desde este punto de vista, es importante considerar la minimizacin del diagrama de estados como parte del proceso de diseo

Anlisis y diseo de sistemas secuenciales

73

Minimizacin del diagrama de estados


El objetivo de la minimizacin de estados es reducir el nmero de estados y, por tanto, el de biestables necesarios para implementarlos

Menor nmero de biestables implica menor complejidad Menor nmero de biestables tambin implica menos puertas para implementar la funciones de entrada y salida Estas puertas tambin necesitarn un menor nmero de entradas, por lo que sern ms rpidas

Hay que tener en cuenta que para reducir realmente el nmero de biestables es necesario reducir el nmero de estados por debajo de una potencia de dos

Anlisis y diseo de sistemas secuenciales

74

37

Equivalencia funcional
Dos mquinas de estados finitos son funcionalmente equivalentes si producen la misma secuencia de salidas para todas las posibles secuencias de entrada

Dentro de una mquina de estados tambin puede darse el caso de que dos estados sean equivalentes, por lo que se los puede asociar para reducir el nmero de estados

Dos estados son equivalentes si y slo si:

Ambos estados producen la misma salida para cada entrada Ambos estados tienen estados siguientes equivalentes para cada entrada
75

Anlisis y diseo de sistemas secuenciales

Procedimiento de minimizaci minimizacin de estados


El procedimiento para la minimizacin de estados requiere agrupar todos los estados del sistema en grupos denominados clases de equivalencia

En primer lugar se comparan las salidas de cada estado para cada entrada y se agrupan todos los estados que coincidan En segundo lugar se determina el estado siguiente de cada estado del grupo para cada entrada, creando subgrupos de estados cuyos estados siguientes estn en un mismo grupo Este segundo paso puede hacer que estados que tenan los estados siguiente en un mismo grupo ya no los tengan, por lo que sera necesaria una nueva particin
76

Cada grupo estar representado por un nico estado

Anlisis y diseo de sistemas secuenciales

38

Minimizacin de estados
El contador ascendente/descendente mdulo 3 de nuestro ejemplo tiene seis estados, como puede comprobarse en la tabla de estado siguiente y salida A partir de esta tabla se puede aplicar la minimizacin

Anlisis y diseo de sistemas secuenciales

77

Minimizacin de estados
Se empieza por el conjunto de todos los estados y se determinan los valores de salida para cada combinac in de valores de entrada, lo que da lugar a tres grupos

Anlisis y diseo de sistemas secuenciales

78

39

Minimizacin de estados
Para cada valor de las entradas los estados siguien tes de cada estado de un grupo siempre estn en el mism o grupo, por lo que no es necesario seguir particiona ndo

Anlisis y diseo de sistemas secuenciales

79

Minimizacin de estados
Cada grupo representa una clase de estados equivale ntes y, por lo tanto, solo es necesario que la mquina de estados final tenga un estado perteneciente a cada uno de los grupos

Anlisis y diseo de sistemas secuenciales

80

40

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
81

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Codificacin de estados
Cada biestable es capaz de almacenar un valor binari o por lo que un circuito con total de

n 2

n biestables puede tener un

estados, cada uno con un cdigo binario

Cada cdigo se asignar a un nico estado aunque, en principio, cualquier cdigo puede asignarse a cualquiera de los estados

Sin embargo, el coste y el retardo de la lgica de entrada y salida depender de a qu estado concreto se le asigna cada uno de los cdigos

Anlisis y diseo de sistemas secuenciales

82

41

Codificacin de estados
Por ejemplo, una mquina de estados finitos con cuatro estados necesitar dos biestables, los cuales podrn codificar los estados de (4!) formas diferentes

Anlisis y diseo de sistemas secuenciales

83

Codificacin de estados
La comprobacin manual de todas las posibles codificaciones, as como la estimacin de su retardo y complejidad, sera un proceso tedioso en el que u n error podra suceder con facilidad

Para evitar este problema se usan varias estrategias y heursticas de asignacin, siendo tres de ellas las ms comnmente usadas:

Mnimo cambio de bits Prioridad de adyacencia Codificacin del uno caliente


84

Anlisis y diseo de sistemas secuenciales

42

Mnimo cambio de bits


Esta estrategia asigna valores booleanos a los estados de forma que se minimice el nmero total de cambios de bits en todas las transiciones

De esta forma se reducir la cantidad de puertas lg icas usadas para implementar el circuito

Para cada cambio de bit, un biestable cuya lgica asociada est diseada en dos niveles en forma de suma de productos necesita:

Una puerta AND adicional Una entrada ms en la puerta OR


85

Anlisis y diseo de sistemas secuenciales

Mnimo cambio de bits


A cada arco del diagrama de estados le podemos asignar un peso igual al nmero de bits distintos entre los cdigos de los estados origen y destino

De acuerdo con esta estrategia, la codificacin pt ima ser aquella que minimice la suma de los pesos de todas las transiciones

Anlisis y diseo de sistemas secuenciales

86

43

Prioridad en adyacencia
Esta estrategia consiste en asignar codificaciones adyacentes (que slo difieran en un bit) a todos los estados que tengan un destino, fuente o salida com n

Se da mayor prioridad a los estados que tienen el mismo estado siguiente para un valor dado de entrada

El motivo de esta prioridad es que, si minimizamos por Karnaugh, aparecer la misma codificacin de estado siguiente en dos celdas adyacentes, permitie ndo simplificar la lgica asociada a los biestables

Anlisis y diseo de sistemas secuenciales

87

Prioridad en adyacencia
Un segundo nivel de prioridad se asigna a los estados siguientes de un mismo estado

Esta prioridad se basa en el hecho de que, si las entradas difieren en un bit, estos estados aparecen adyacentes en el mapa de Karnaugh durante la minimizacin

Finalmente, el tercer nivel de prioridad se da a los estados que tienen el mismo valor de salida para los mismos valores de entrada, facilitando tambin la minimizacin por Karnaugh

Anlisis y diseo de sistemas secuenciales

88

44

Prioridad en adyacencia
En este diagrama de cuatro estados podemos ver que:

S1 y S2 tienen un mismo estado siguiente S3 para el valor de entrada 0 (primera prioridad) S1 y S2 son estados siguientes de S0 (segunda prioridad) S0 y S1 tienen el mismo valor de salida 0 para el mismo valor de entrada 0 (tercera prioridad) S2 y S3 tienen el mismo valor de salida 1 para el mismo valor de entrada 0 (tercera prioridad)

Anlisis y diseo de sistemas secuenciales

89

Codificacin del uno caliente


Esta estrategia utiliza codificacin redundante, de manera que, en lugar de usar

n biestables para 2n

estados, a cada estado se le asigna su propio biestable

En cada momento slo habr un biestable con valor 1, que ser aquel que se corresponda con el estado actual, mientras que todos los dems estarn a 0

De esta forma, el 1 va pasando de biestable en biestable segn el circuito cambia de estado en estado, siguiendo el algoritmo del juego de la patata caliente

Anlisis y diseo de sistemas secuenciales

90

45

Codificacin del uno caliente


La ventaja de esta estrategia est en el hecho de que la lgica para implementar las funciones de entrada a los biestables es muy simple

La principal desventaja radica en el hecho de que es necesario utilizar una cantidad mayor de biestables de lo que es habitual

En consecuencia, esta estrategia debe usarse para implementar sistemas secuenciales con pocos estados, ya que en otro caso el coste adicional sera excesi vo

Anlisis y diseo de sistemas secuenciales

91

Eleccin de una estrategia


En general, la estrategia para codificar estados consiste en determinar las posibles opciones y, despus, estimar el coste y el retardo de la lgica de entrada y sal ida para cada tipo de codificacin

A modo de ejemplo aplicaremos las tres estrategias al contador ascendente/descendente mdulo 3

Dado que este circuito tiene tres estados necesitaremos dos biestables para implementarlo, a excepcin de la estrategia del uno caliente, que necesitar tres

Anlisis y diseo de sistemas secuenciales

92

46

Codificacin del contador mdulo 3


Si se utiliza la estrategia del mnimo cambio de bits se obtiene una codificacin sencilla, que llamaremos codificacin A, omitiendo la combinacin 11 y asignando S

= 00, S

= 01 y S

= 10

Usando la estrategia de prioridad en adyacencia no hay estados que cumplan las dos primeras reglas de prioridad, pero la tercera la cumplen S S

0 1

y S S

1 2

La codificacin A cumple estas condiciones, pero podramos plantear una alternativa, que llamaremos codificacin B, que asigna 01 a S

y 10 a S

para reducir

el nmero de entradas de la puerta AND de salida


Anlisis y diseo de sistemas secuenciales 93

Codificacin del contador mdulo 3


Finalmente, la estrategia del uno caliente dara lu gar a una codificacin que llamaremos codificacin C y que necesitara tres biestables Para elegir una de estas tres codificaciones es necesario estimar el coste y el retardo de la implementacin de la lgica de entrada y salida

Anlisis y diseo de sistemas secuenciales

94

47

Codificacin del contador mdulo 3


En primer lugar es necesario obtener las ecuaciones de excitacin para cada uno de los biestables, as como la ecuacin de salida

A partir de estas ecuaciones puede estimarse el coste y el retardo de su implementacin usando dos niveles de puertas NAND

Para simplificar la estimacin supondremos que el complemento de cada variable est disponible sin retardo respecto al propio valor de la variable

Anlisis y diseo de sistemas secuenciales

95

Codificacin del contador mdulo 3


Aqu podemos ver la estimacin del coste y retardo de la codificacin A, usando el mtodo de Karnaugh para obtener las ecuaciones de estado siguiente y salida

Anlisis y diseo de sistemas secuenciales

96

48

Codificacin del contador mdulo 3


Aqu podemos ver la estimacin del coste y retardo de la codificacin B, usando el mtodo de Karnaugh para obtener las ecuaciones de estado siguiente y salida

Anlisis y diseo de sistemas secuenciales

97

Codificacin del contador mdulo 3


Aqu podemos ver la estimacin del coste y retardo de la codificacin C, usando el mtodo de Karnaugh para obtener las ecuaciones de estado siguiente y salida

Anlisis y diseo de sistemas secuenciales

98

49

Codificacin del contador mdulo 3


La codificacin C es la ms rpida, pero tambin es la ms costosa, por lo que la eleccin de la codificacin adecuada depender de las prioridades del diseador

La codificacin A tiene un coste 66, un retardo mximo de entrada de 4,0ns y un retardo de salida de 3,6ns La codificacin B tiene un coste 64, un retardo mximo de entrada de 4,0ns y un retardo de salida de 3,2ns La codificacin C tiene un coste 82, un retardo mximo de entrada de 3,6ns y un retardo de salida de 3,2ns

Usaremos la codificacin A para seguir desarrolland o este ejemplo, ya que es la ms comn y fcil de entender

Anlisis y diseo de sistemas secuenciales

99

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
100

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

50

Eleccin de los biestables


Una vez completado el proceso de minimizacin y codificacin de estados hay que elegir el tipo de biestable ms apropiado para la implementacin

Los biestables T suelen ser una buena eleccin para circuitos de tipo contador, donde los biestables deben cambiar de estado con gran frecuencia

Los biestables D son ms apropiados cuando la informacin de entrada debe almacenarse durante algn tiempo para su uso posterior

Anlisis y diseo de sistemas secuenciales

101

Eleccin de los biestables


En situaciones en las que el estado de los biestables cambia en funcin de varias seales de entrada pueden usarse biestables SR o JK, ya que tienen dos entradas El biestable JK es ms complejo que el SR, pero no tiene ninguna combinacin de entrada prohibida Sin embargo, aunque tienden a reducir el coste de la lgica asociada por tener dos entradas, los biestab les SR y JK tambin necesitan el doble de conexiones Dado que necesitan un menor nmero de conexiones, los biestables D y T se adaptan mejor al diseo de circuitos integrados

Anlisis y diseo de sistemas secuenciales

102

51

Eleccin de biestables para el contador


Para elegir el tipo de biestable que minimice el coste y el retardo de la lgica de entrada del contador ascendente/descendente mdulo 3 hay que partir de:

La tabla de estados siguientes del contador La tabla de excitacin de los cuatro tipos de biestable

Anlisis y diseo de sistemas secuenciales

103

Eleccin de biestables para el contador


Para cada pareja de estados actual y siguiente se sustituyen los valores de estado siguiente por los valores de entrada requeridos en la tabla de excitacin

De esta forma se obtendrn los mapas de entrada para los cuatro tipos de biestable, que contendrn dos submapas en el caso de los biestables D y T, y cuatro submapas en el caso de los biestables SR y JK

A partir de estos mapas de entrada se pueden obtener las expresiones mnimas de la lgica de entrada de cada uno de los biestables

Anlisis y diseo de sistemas secuenciales

104

52

Eleccin de biestables para el contador


Este es el mapa de entrada correspondiente al uso de biestables SR, junto con la expresin mnima de las ecuaciones de entrada

Anlisis y diseo de sistemas secuenciales

105

Eleccin de biestables para el contador


Este es el mapa de entrada correspondiente al uso de biestables JK, junto con la expresin mnima de las ecuaciones de entrada

Anlisis y diseo de sistemas secuenciales

106

53

Eleccin de biestables para el contador


Este es el mapa de entrada correspondiente al uso de biestables D, junto con la expresin mnima de las ecuaciones de entrada

Anlisis y diseo de sistemas secuenciales

107

Eleccin de biestables para el contador


Este es el mapa de entrada correspondiente al uso de biestables T, junto con la expresin mnima de las ecuaciones de entrada

Anlisis y diseo de sistemas secuenciales

108

54

Eleccin de biestables para el contador


La estimacin de coste y retardo que acompaa a cada ecuacin no incluye los inversores de entrada ni el coste y retardo de los biestables

De acuerdo con los resultados obtenidos, el biestab le ms apropiado es el JK ya que implica un menor coste y retardo de la lgica de entrada

En la prctica, no slo habra que tener en cuenta el coste y retardo de la lgica de entrada, sino el de todo el circuito en su conjunto antes de tomar una decisin

Anlisis y diseo de sistemas secuenciales

109

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
110

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

55

Implementacin del sistema


El paso final en el diseo de un sistema secuencial consiste en realizar su implementacin utilizando componentes lgicos

Anlisis y diseo de sistemas secuenciales

111

Implementacin del sistema


Se han utilizado inversores dobles en la entrada para suministrar ms corriente al circuito y, por tanto, reducir el retardo de las puertas

Anlisis y diseo de sistemas secuenciales

112

56

Implementacin del sistema


Los retardos de cada puerta determinarn el tiempo de ciclo mnimo que debe tener la seal de reloj para que el circuito funcione correctamente

Anlisis y diseo de sistemas secuenciales

113

Verificacin del sistema


Por ltimo, hay que desarrollar cronogramas que permitan verificar el comportamiento del sistema al compararlos con los resultados proporcionados por una herramienta de simulacin

Anlisis y diseo de sistemas secuenciales

114

57

Verificacin del sistema


La seal C habilita el contador en t

y, a partir de ah,

dado que la seal D est desactivada, va realizando la cuenta mdulo 3 en sentido ascendente en cada pulso de la seal de reloj

Anlisis y diseo de sistemas secuenciales

115

Verificacin del sistema


Ms adelante, en el instante t , se activa la seal D,

por lo que el contador empieza a realizar la cuenta en sentido descendente en cada pulso de la seal de reloj

Anlisis y diseo de sistemas secuenciales

116

58

Verificacin del sistema


Para una completa verificacin sera necesario desarrollar cronogramas para todos los casos posibles, teniendo tambin en cuenta el retardo de los componentes lgicos

Anlisis y diseo de sistemas secuenciales

117

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
118

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

59

Ejemplo de diseo 1
Vamos a realizar el diseo del circuito secuencial correspondiente a este diagrama de estados Las salidas dependen slo del estado actual (estn indicadas en el estado) as que obtendremos un circu ito de tipo Moore

Anlisis y diseo de sistemas secuenciales

119

Ejemplo de diseo 1
A partir del diagrama de estados puede generarse fcilmente la tabla de estado siguiente

Anlisis y diseo de sistemas secuenciales

120

60

Ejemplo de diseo 1
Dado que los estados del diagrama dado ya estn codificados, no tenemos necesidad de asignar ningun a codificacin a los estados

El diagrama contiene cuatro estados, por lo que tendremos que utilizar dos biestables

Para simplificar el ejemplo supondremos que el primer biestable es de tipo JK y el segundo biestable es de tipo D

Anlisis y diseo de sistemas secuenciales

121

Ejemplo de diseo 1
A partir de la tabla de estado siguiente, y conociendo el tipo de biestable, podemos generar la tabla de excitacin

Anlisis y diseo de sistemas secuenciales

122

61

Ejemplo de diseo 1
La lgica de entrada a los biestables puede obtenerse simplificando las funciones correspondientes

Anlisis y diseo de sistemas secuenciales

123

Ejemplo de diseo 1
La lgica de entrada a los biestables puede obtenerse simplificando las funciones correspondientes

Anlisis y diseo de sistemas secuenciales

124

62

Ejemplo de diseo 1
La lgica de entrada a los biestables puede obtenerse simplificando las funciones correspondientes

Anlisis y diseo de sistemas secuenciales

125

Ejemplo de diseo 1
A partir del diagrama de estados tambin puede generarse la tabla de salida, teniendo en cuenta que estamos hablando de un circuito de tipo Moore

Anlisis y diseo de sistemas secuenciales

126

63

Ejemplo de diseo 1
La lgica de salida del circuito puede obtenerse simplificando las funciones correspondientes

Anlisis y diseo de sistemas secuenciales

127

Ejemplo de diseo 1
Ahora que tenemos las ecuaciones podemos completar el proceso de diseo dibujando el diagrama del circ uito

Anlisis y diseo de sistemas secuenciales

128

64

Estructura del tema


Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales

Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
129

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Ejemplo de diseo 2
Vamos a disear un circuito que monitorice una determinada lnea de entrada y que active una seal de salida cuando detecte que la entrada ha seguido la secuencia 0110 durante los ltimos cuatro ciclos

El circuito diseado ser de tipo Mealy, por lo que las salidas dependern tanto del estado actual como del valor de la entrada

A partir de esta descripcin en lenguaje natural debemos desarrollar el diagrama de estados que describa el circuito de forma funcional

Anlisis y diseo de sistemas secuenciales

130

65

Ejemplo de diseo 2
Dado un estado inicial, debemos permanecer en l hasta que aparezca un cero

A partir del primer cero debemos avanzar de estado mientras nos sigan llegando bits de la secuencia 0110

Anlisis y diseo de sistemas secuenciales

131

Ejemplo de diseo 2
En el caso de que aparezca un nmero que no pertenezca a la secuencia correcta tendremos que regresar a un estado anterior

Si llega un 0 fuera de secuencia lo consideramos como el primer 0 de la siguiente secuencia y vamos al segundo estado Si llega un 1 fuera de secuencia regresamos al estado inicial a esperar que llegue un 0

Anlisis y diseo de sistemas secuenciales

132

66

Ejemplo de diseo 2

Por ltimo regresaremos al estado inicial


Si regresamos porque se complet la secuencia correcta con un 0 activaremos la seal de salida Si regresamos porque apareci un 1 fuera de secuencia mantendremos la seal de salida desactivada

Anlisis y diseo de sistemas secuenciales

133

Ejemplo de diseo 2

A continuacin debemos asignar cdigos a los cuatro estados del diagrama Para no entrar en demasiado detalle, asignaremos los cdigos de forma arbitraria En total necesitaremos dos biestables, que tambin elegiremos de forma arbitraria: un JK y un D

Anlisis y diseo de sistemas secuenciales

134

67

Ejemplo de diseo 2

A partir del diagrama de estados podemos generar la tabla de estado siguiente

Anlisis y diseo de sistemas secuenciales

135

Ejemplo de diseo 2

Con la tabla de estado siguiente, y conociendo cules son los tipos de biestable utilizados, podemos generar la tabla de excitacin y obtener las ecuaciones

Anlisis y diseo de sistemas secuenciales

136

68

Ejemplo de diseo 2

A partir del diagrama de estados tambin puede generarse la tabla de salida y la ecuacin correspondiente, siempre teniendo en cuenta que estamos hablando de un circuito de tipo Mealy

Anlisis y diseo de sistemas secuenciales

137

Ejemplo de diseo 2

Ahora que tenemos las ecuaciones podemos completar el proceso de diseo dibujando el diagrama del circuito

Anlisis y diseo de sistemas secuenciales

138

69

Estructura del tema

Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales Diseo de sistemas secuenciales
Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
139

Ejemplo de diseo 3

Como ltimo ejemplo disearemos un circuito que implemente el funcionamiento descrito por este diagrama de estados usando biestables tipo T La parte combinacional del sistema la vamos a implementar usando nicamente puertas NAND

Anlisis y diseo de sistemas secuenciales

140

70

Ejemplo de diseo 3

A partir del diagrama de estados podemos deducir la tabla de estado siguiente

Anlisis y diseo de sistemas secuenciales

141

Ejemplo de diseo 3

Conociendo el comportamiento de los biestables T podemos extender la tabla de estado siguiente y formar la tabla de excitacin

Anlisis y diseo de sistemas secuenciales

142

71

Ejemplo de diseo 3

La tabla de excitacin nos permite obtener las ecuaciones de excitacin de los biestables

Anlisis y diseo de sistemas secuenciales

143

Ejemplo de diseo 3

La tabla de excitacin nos permite obtener las ecuaciones de excitacin de los biestables

Anlisis y diseo de sistemas secuenciales

144

72

Ejemplo de diseo 3

A partir del diagrama de estados tambin podemos deducir la tabla y las ecuaciones de salida, teniendo en cuenta que se trata de un sistema de tipo Moore

Anlisis y diseo de sistemas secuenciales

145

Ejemplo de diseo 3

Todo lo que nos queda por hacer es transformar las ecuaciones usando las leyes de DeMorgan para que puedan ser implementadas con puertas NAND

Anlisis y diseo de sistemas secuenciales

146

73

Ejemplo de diseo 3

Una alternativa para la implementacin de este tipo de sistemas sera utilizar decodificadores o multiplexores para implementar la parte combinacional del circuito En este ejemplo utilizaremos un decodificador con dos entradas de control para generar T0 y un multiplexor con dos entradas de control para generar T1 A parte del decodificador y el multiplexor har falta lgica adicional que implementaremos con el menor nmero posible de puertas AND, OR y NOT
Anlisis y diseo de sistemas secuenciales 147

Ejemplo de diseo 3

Esta implementacin del circuito puede deducirse a partir de la tabla de excitacin, ya que la tabla de salida es trivial

Anlisis y diseo de sistemas secuenciales

148

74

Estructura del tema

Introduccin Modelo de mquinas de estados finitos Anlisis de sistemas secuenciales Diseo de sistemas secuenciales
Anlisis de sistemas de tipo Moore Anlisis de sistemas de tipo Mealy Ejemplos

Resumen y bibliografa
Anlisis y diseo de sistemas secuenciales

Generacin del diagrama de estados Minimizacin del diagrama de estados Codificacin de estados Eleccin de los biestables Implementacin y verificacin del sistema Ejemplos
149

Resumen

Los circuitos secuenciales implementados usando biestables son vitales para el diseo de sistemas digitales complejos Dado un circuito secuencial, no es sencillo comprender su objetivo, por lo que resulta necesario un detallado proceso de anlisis para estudiarlo De la misma forma, dada la descripcin funcional de un objetivo, el diseo de un sistema secuencial que lo implemente debe seguir un conjunto determinado de pasos para llegar a un resultado ptimo
Anlisis y diseo de sistemas secuenciales 150

75

Bibliografa
Principios de Diseo Digital

Captulo 6 Daniel D. Gajski Prentice Hall, 1997

Anlisis y diseo de sistemas secuenciales

151

76

Вам также может понравиться