06/03/2013
1
5.5. Análisis y diseño deAnálisis y diseño de sistemas sistemas i l (I)i l (I)secuenciales (I)secuenciales (I)
Fundamentos de los ComputadoresGrado en Ingeniería Informática
IntroducciónIntroducción
Objetivos: Comprender el funcionamiento de un circuito secuencial partiendo de su
implementación (= ANALISIS)
Implementar un circuito secuencial a partir de una descripción funcional (=SÍNTESIS ó DISEÑO)
Análisis y diseño de sistemas secuenciales 2
06/03/2013
2
Estado de un sistema secuencialEstado de un sistema secuencial
En los sistemas secuenciales las salidas dependen de las entradas actuales y de toda la secuencia de entradas anteriores
{ } Xconjunto
de puertas lógicas
memoria
x0
x1
xm…
y0
y1
yn…
{x0, x1, … xm} ≡ Xt
{y0, y1, … yn} ≡ Yt
Yt = F(Xt, Xt-1, Xt-2 , …)
Análisis y diseño de sistemas secuenciales 3
Estado de un sistema secuencialEstado de un sistema secuencial
El estado de un sistema secuencial depende de la secuencia de entradas anteriores al sistema
Et = F(Xt-1, Xt-2 , …)
Descomponemos la ecuación general en dos ecuaciones: una de salida y otra de estado siguiente
Yt = F(Xt, Xt-1, Xt-2 , …) = F(Xt, Et)
Y F(X E )salida actual Yt = h(Xt, Et)
Análisis y diseño de sistemas secuenciales 4
Yt = F(Xt, Et) estado siguiente Et+1 = f(Xt, Et)
06/03/2013
3
Caracterización de sistemas secuencialesCaracterización de sistemas secuenciales
Es necesario plantear las tablas y ecuaciones que definen: El siguiente estado del sistema a partir de las entradas del circuito y el estado
actual del mismo
Las salidas del sistema a partir de las entradas del circuito y el estado actual del mismomismo
Esta información puede visualizarse usando un diagrama de estados que muestre todos los estados posibles del sistema y las transiciones entre ellos
Nos basamos en un modelo de máquinas de estados finitos (FSM – Finite-State Machine) que se define como una quíntupla <S, I, O, f, h> S conjunto de estados (states)
I conjunto de entradas (inputs)
Análisis y diseño de sistemas secuenciales 5
j ( p )
O conjunto de salidas (outputs)
f función de estado siguiente
h función de salida
Modelo de máquinas de estados finitosModelo de máquinas de estados finitos
El 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 función de salida (h) define los valores de salida durante el intervalo de tiempo actual de acuerdo con el estado y las entradas actuales
La función de estado siguiente (f) define cuál será el estado en el
Yt = h(Xt, Et)
Análisis y diseño de sistemas secuenciales 6
siguiente intervalo de tiempo de acuerdo con el estado y las entradas actuales
Et+1 = f(Xt, Et)
06/03/2013
4
Tipos de FSMTipos de FSM
La función de salida puede definirse de dos maneras distintas, lo que da lugar a dos modelos FSM distintos
En el modelo de Moore las salidas sólo dependen del estado del En el modelo de Moore las salidas sólo dependen del estado del circuito
En el modelo de Mealy las salidas dependen del estado del circuito y de las entradas actuales
Yt = h(Et)Et+1 = f(Xt, Et)
Análisis y diseño de sistemas secuenciales 7
Yt = h(Et, Xt)Et+1 = f(Xt, Et)
Implementación de FSMImplementación de FSM
Cualquier sistema secuencial se puede modelar utilizando una máquina de estados finitos y, a partir de ella, realizar su implementación
El estado del sistema secuencial será almacenado en circuitos biestables que actuarán como elementos de memorización
Las funciones de estado siguiente f y de salida h se implementarán utilizando lógica combinacional
Análisis y diseño de sistemas secuenciales 8
06/03/2013
5
Análisis de sistemas secuencialesAnálisis de sistemas secuenciales
El análisis de un sistema secuencial consiste en la generación de una descripción funcional a partir del esquema lógico del circuito y contendrá:
Di d t d d l i it 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 descripción funcional, es posible desarrollar cronogramas que permitan estudiar el comportamiento del sistema
Análisis y diseño de sistemas secuenciales 9
sistema
Procedimiento de análisisProcedimiento de análisis
Análisis y diseño de sistemas secuenciales 10
06/03/2013
6
Análisis de sistemas de tipo Moore (I)Análisis de sistemas de tipo Moore (I)
Análisis y diseño de sistemas secuenciales 11
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (I)(I)
Análisis y diseño de sistemas secuenciales 12
06/03/2013
7
Análisis de sistemas Análisis de sistemas tipo tipo Moore (II)Moore (II)
Análisis y diseño de sistemas secuenciales 13
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II(II))
Análisis y diseño de sistemas secuenciales 14
06/03/2013
8
Análisis y diseño de sistemas secuenciales 15
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore (I)Moore (I)
El primer paso en el análisis es obtener las ecuaciones de entrada a cada biestable del circuito
En este caso hay dos biestables cuyas entradas son D0 y D1, por l l d i f ió d l d Clo que plantearemos dos ecuaciones en función de la entrada Cnt y de las salidas de los biestables
Análisis y diseño de sistemas secuenciales 16
06/03/2013
9
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
Estas ecuaciones se denominan ecuaciones de excitación, ya que determinan el valor de las entradas de los biestables del circuito
A continuación hay que transformar estas ecuaciones en las i d d i i í i d d bi blecuaciones de estado siguiente características de cada biestable
Dado que el estado siguiente de un biestable D es igual al valor de la señal D, tenemos que:
Análisis y diseño de sistemas secuenciales 17
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
A continuación debemos calcular la ecuación de salida
Dado que estamos hablando de un circuito de tipo Moore, la salida dependerá sólo del estado actual del sistema, es decir, de l lid d l bi bllas salidas de los biestables
Análisis y diseño de sistemas secuenciales 18
06/03/2013
10
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
A partir de las ecuaciones de estado siguiente y de salida generamos una tabla que refleje esta información Cada fila de la tabla se corresponde con un estado del circuito
C d l d l t bl t l d l t d Cada columna de la tabla representa un valor de las entradas
Dado que el circuito tiene dos biestables, el número total de estados posibles es cuatro
Análisis y diseño de sistemas secuenciales 19
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
Para facilitar la visualización del funcionamiento del circuito podemos representar el contenido de esta tabla usando un diagrama de estados
C d t d t í l ti l l d l Cada estado se representa con un círculo 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 círculos, etiquetadas con el valor de las entradas que causa la transición
En general, en un circuito con m biestables y k entradas, el número total de estados será 2m y el número total de transiciones
Análisis y diseño de sistemas secuenciales 20
yserá 2m · 2k
06/03/2013
11
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
El diagrama de estados puede obtenerse fácilmente a partir de la tabla de estado siguiente y de salida
Análisis y diseño de sistemas secuenciales 21
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
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 0esta secuencia: 0, 1, 2, 3, 0, 1, 2, 3, 0, …
Por lo tanto, este circuito es un contador módulo 4 con una entrada de control que habilita la cuenta
Análisis y diseño de sistemas secuenciales 22
06/03/2013
12
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
Con toda esta información podemos generar un cronograma que permita ver el comportamiento del circuito bajo determinadas circunstancias
Análisis y diseño de sistemas secuenciales 23
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
Este cronograma muestra cuatro ciclos de reloj con la señal Cnt activa entre los instantes de tiempo t0 y t4
Suponemos que el estado inicial del contador es 00
Análisis y diseño de sistemas secuenciales 24
06/03/2013
13
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
El contador pasa al estado 01 tras el flanco de subida de la señal de reloj en t1
El contador pasa al estado 10 tras el flanco de subida de la señal d l jde reloj en t2
Análisis y diseño de sistemas secuenciales 25
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
El contador pasa al estado 11 tras el flanco de subida de la señal de reloj en t3, activando la salida Y
Dado que la señal Cnt se desconecta en t3, el contador permanece l d 11 l fl d bid den el estado 11 tras el flanco de subida de t5
Análisis y diseño de sistemas secuenciales 26
06/03/2013
14
Análisis de sistemas de tipo Análisis de sistemas de tipo Moore Moore (I)(I)
Para comprobar el comportamiento del circuito sería necesario construir cronogramas para todas las posibles secuencias de valores de entrada
Finalmente, estos cronogramas deben ser verificados utilizando una herramienta de simulación de circuitos Las herramientas de simulación a nivel físico permiten describir el
circuito lógico utilizando puertas y biestables
Las herramientas de simulación a nivel funcional permiten describir el circuito en base a tablas o diagramas de estado
Análisis y diseño de sistemas secuenciales 27
En cualquier caso, estas herramientas no permiten verificar los retardos reales del circuito, ya que no tienen información sobre su implementación
Estructura del temaEstructura del tema
Introducción Modelo de máquinas de estados finitos Análisis de sistemas secuenciales
Análisis de sistemas de tipo Moore Análisis de sistemas de tipo Mealy Ejemplos
Diseño de sistemas secuenciales Generación del diagrama de estados Minimización del diagrama de estados Codificación de estados
Análisis y diseño de sistemas secuenciales 28
Elección de los biestables Implementación y verificación del sistema Ejemplos
Resumen y bibliografía
06/03/2013
15
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (I)(I)
Los circuitos secuenciales de tipo Mealy son aquellos en los que las salidas dependen del valor actual de las entradas y del estado actual
di i i i l d i l Este diagrama muestra un circuito secuencial de tipo Mealy compuesto de dos biestables D
Análisis y diseño de sistemas secuenciales 29
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
El primer paso en el análisis es obtener las ecuaciones de excitación que definen la entrada de cada biestable
En este caso hay dos biestables cuyas entradas son D0 y D1, por l l d i f ió d l d Clo que plantearemos dos ecuaciones en función de la entrada Cnt y de las salidas de los biestables
Análisis y diseño de sistemas secuenciales 30
06/03/2013
16
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
A continuación hay que transformar estas ecuaciones en las ecuaciones de estado siguiente características de cada biestable
Dado que el estado siguiente de un biestable D es igual al valor d l lde la señal D, tenemos que:
Análisis y diseño de sistemas secuenciales 31
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
A continuación calculamos la ecuación 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 d l idel mismo
Análisis y diseño de sistemas secuenciales 32
06/03/2013
17
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
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 l l d lid bié d d d lMoore es que los valores de salida también dependen de los
valores de entrada
Análisis y diseño de sistemas secuenciales 33
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
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
Análisis y diseño de sistemas secuenciales 34
06/03/2013
18
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
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 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
Análisis y diseño de sistemas secuenciales 35
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
A partir del diagrama de estados podemos comprobar que el circuito es un contador módulo 4 con una entrada de control que habilita la cuenta
C d C t 0 l i it l t d t l 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, …
Análisis y diseño de sistemas secuenciales 36
06/03/2013
19
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
Con toda esta información podemos generar un cronograma que permita ver el comportamiento del circuito bajo determinadas circunstancias
Análisis y diseño de sistemas secuenciales 37
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
Este cronograma muestra cuatro ciclos de reloj con la señal Cnt activa entre los instantes de tiempo t0 y t4
Suponemos que el estado inicial del contador es 00
Análisis y diseño de sistemas secuenciales 38
06/03/2013
20
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
El contador pasa al estado 01 tras el flanco de subida de la señal de reloj en t1
El contador pasa al estado 10 tras el flanco de subida de la señal d l jde reloj en t2
Análisis y diseño de sistemas secuenciales 39
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
El contador pasa al estado 11 tras el flanco de subida de la señal de reloj en t3, activando la salida Y
Dado que la señal Cnt se desconecta en t3, el contador permanece l d 11 l fl d bid den el estado 11 tras el flanco de subida de t5
Análisis y diseño de sistemas secuenciales 40
06/03/2013
21
Análisis de sistemas de tipo Análisis de sistemas de tipo MealyMealy (I)(I)
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 también pasa a 0
Análisis y diseño de sistemas secuenciales 41
Estructura del temaEstructura del tema
Introducción Modelo de máquinas de estados finitos Análisis de sistemas secuenciales
Análisis de sistemas de tipo Moore Análisis de sistemas de tipo Mealy Ejemplos
Diseño de sistemas secuenciales Generación del diagrama de estados Minimización del diagrama de estados Codificación de estados
Análisis y diseño de sistemas secuenciales 42
Elección de los biestables Implementación y verificación del sistema Ejemplos
Resumen y bibliografía
06/03/2013
22
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
Vamos a realizar el análisis de este circuito
En primer lugar podemos determinar que se trata de un circuito de tipo Moore, ya que las salidas dependen únicamente del
d d l i i d l destado del circuito y no de las entradas
Análisis y diseño de sistemas secuenciales 43
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
El circuito tiene 3 biestables, es decir, 8 estados posibles
El circuito tiene una única señal de entrada X
El circuito tiene tres señales de salida Y0, Y1, e Y2
Análisis y diseño de sistemas secuenciales 44
06/03/2013
23
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
A partir del circuito podemos obtener las ecuaciones correspondientes a las entradas de los biestables
Análisis y diseño de sistemas secuenciales 45
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
Conociendo el funcionamiento de un biestable JK es posible, partiendo de las ecuaciones de las entradas, generar la tabla de excitación y de estado siguiente
Análisis y diseño de sistemas secuenciales 46
06/03/2013
24
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
A partir del circuito también podemos obtener las ecuaciones correspondientes a las señales de salida
Análisis y diseño de sistemas secuenciales 47
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
Dadas las ecuaciones de salida, es sencillo obtener la tabla de salida
Análisis y diseño de sistemas secuenciales 48
06/03/2013
25
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
Con las tablas anteriores podemos obtener el diagrama de estados que describe el funcionamiento del circuito
Análisis y diseño de sistemas secuenciales 49
Análisis de sistemas tipo Moore (II)Análisis de sistemas tipo Moore (II)
El circuito es un contador módulo 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
Análisis y diseño de sistemas secuenciales 50
06/03/2013
26
Estructura del temaEstructura del tema
Introducción Modelo de máquinas de estados finitos Análisis de sistemas secuenciales
Análisis de sistemas de tipo Moore Análisis de sistemas de tipo Mealy Ejemplos
Diseño de sistemas secuenciales Generación del diagrama de estados Minimización del diagrama de estados Codificación de estados
Análisis y diseño de sistemas secuenciales 51
Elección de los biestables Implementación y verificación del sistema Ejemplos
Resumen y bibliografía
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
A continuación analizaremos el siguiente circuito: es de tipo Mealy porque las salidas dependen tanto del estado del circuito como de las entradas del mismo
Análisis y diseño de sistemas secuenciales 52
06/03/2013
27
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
El circuito tiene 2 biestables, es decir, 4 estados posibles
El circuito tiene una única señal de entrada X
El circuito tiene una única señal de salida Y
Análisis y diseño de sistemas secuenciales 53
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
A partir del circuito podemos obtener las ecuaciones correspondientes a las entradas de los biestables
Análisis y diseño de sistemas secuenciales 54
06/03/2013
28
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
Conociendo el funcionamiento de los biestables JK y D es posible, partiendo de las ecuaciones de las entradas, generar la tabla de excitación y de estado siguiente
Análisis y diseño de sistemas secuenciales 55
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
Partiendo del circuito también podemos obtener la ecuación correspondiente a la señal de salida
Análisis y diseño de sistemas secuenciales 56
06/03/2013
29
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
A partir de la ecuación de salida podemos generar la tabla de salida
Análisis y diseño de sistemas secuenciales 57
Análisis de sistemas tipo Análisis de sistemas tipo MealyMealy (II)(II)
Con las tablas anteriores podemos obtener el diagrama de estados del circuito que describe su funcionamiento
Análisis y diseño de sistemas secuenciales 58
Top Related