Upload
julio-cesar-doumecq
View
485
Download
15
Embed Size (px)
DESCRIPTION
Métodos de simplificación de circuitos secuenciales, comenzando por la simplificación mediante Simple Inspección.
Citation preview
Simplificación de Circuitos Secuenciales Completamente Especificados
Técnicas y Dispositivos Digitales II - 2010Sergio Luvoni - Julio C. Doumecq
Simplificación de Circuitos Secuenciales Completamente Especificados
Disponemos de medios para obtener una tabla de estados, para una especificación dada, pero no es única y puede no ser optima.
Definición: Dos estados son equivalentes si no los podemos distinguir.
Simplificación de Circuitos Secuenciales Completamente Especificados
Estados redundantes: Conviene su eliminación por:
Costo: La cantidad de elementos de memoria estádirectamente relacionada con el número de estados.Complejidad: Cuanto más estados tenga el circuito, más complejo será el diseño y su implementación.Ayuda para el análisis de fallas: En general, las rutinas de diagnóstico (software) suponen que no existen estados redundantes.
Simplificación de Circuitos Secuenciales Completamente Especificados
Métodos de simplificación:
Simple inspecciónPartición (Método de Huffman-Mealy)Tabla de Implicantes (Método de Paul-Unger)
Simplificación de Circuitos Secuenciales Completamente Especificados
Simplificación por simple inspección1er caso:
A/1C/0DB/0D/1CA/1C/0BC/1B/1A10
XnQn
Qn+1 / Z
Simplificación de Circuitos Secuenciales Completamente Especificados
Simplificación por simple inspección2do caso:
A/1D/0DB/0D/1CA/1B/0BC/1B/0A10
XnQn
Qn+1 / Z
B/1
Simplificación de Circuitos Secuenciales Completamente Especificados
Simplificación por simple inspección3do caso:
A/1B/0DB/0D/1CA/1D/0BC/1B/0A10
XnQn
Qn+1 / Z
B/1B/0
Simplificación por simple inspección
Ejemplo:
Q4,0Q0,0Q1
Q5,0Q1,0Q3
Q6,1Q2,0Q5
Q7,1Q3,0Q6
Q7/1Q3,0Q7
Q6,1Q2,0Q4
Q5,0Q1,0Q2
Q4,0Q0,1Q0
10XnQn
Qn+1 / Z
Q2,0Q2,0
Simplificación por simple inspección
Ejemplo:
Q4,0Q0,0Q1
Q6,1Q2,0Q5
Q6,1Q2,0Q6
Q6,1Q2,0Q4
Q5,0Q1,0Q2
Q4,1Q0,1Q0
10XnQn
Qn+1 / Z
Simplificación por simple inspección
Ejemplo:
Q4,0Q0,0Q1
Q4,1Q2,0Q4
Q4,0Q1,0Q2
Q4,0Q0,1Q0
10XnQn
Qn+1 / Z
Tabla simplificada de un sistema “Detector de Errores”
Simplificación de Circuitos Secuenciales Completamente Especificados
Relación de equivalencia.Definición: Cuando un par ordenado de elementos (x,y) posee una propiedad que los relaciona (x R y) se puede decir que “x estárelacionada con y”.La relación R se define como el conjunto de todos los pares ordenados que posee esa propiedad, sea cual fuere.
Simplificación de Circuitos Secuenciales Completamente Especificados
Criterios:
Si (x R x) para cada X del conjunto de interés, se dice que R es ReflexivaSi (y R x) siempre que (x R y), entonces R es simétricaSi (x R y) e (y R z) implican que (x R z) entonces R es Transitiva
Simplificación de Circuitos Secuenciales Completamente Especificados
Toda relación R que satisfaga los tres criterios se denomina “Relación de
equivalencia” y aplicada a un conjunto lo dividirá en subconjuntos separados
denominados “clases de equivalencia”
Simplificación de Circuitos Secuenciales Completamente Especificados
Estados y Circuitos Equivalentes
Z1n
Z2n
X1n
X2n
Q1n+1
Q2n+1
Q1n
Q2n Q2,0Q2,0Q4,0Q4,0Q4
Q1,2Q1,3Q1,1Q3,0Q3
Q4,0Q4,0Q3,0Q3,0Q2
Q2,0Q2,0Q1,0Q3,0Q1
2310Xn
Qn
Simplificación de Circuitos Secuenciales Completamente Especificados
Definimos:
función de salida λfunción de próximo estado δ
λ(Q2,3)=0 δ(Q2,3)=Q4
Simplificación de Circuitos Secuenciales Completamente Especificados
Ejemplo: Estado Inicial: Q1
Secuencia de Entrada X: (0 2 3 0 0 1)
δ(Q3,1)=Q1λ(Q3,3)=1δ(Q3,3)=Q3λ(Q3,3)=0δ(Q2,0)=Q3λ(Q2,0)=0δ(Q1,3)=Q2λ(Q1,3)=0δ(Q3,2)=Q1λ(Q3,2)=2δ(Q1,0)=Q3λ(Q1,0)=0
δλ
λ(Q1,023001)=020001
δ(Q1,023001)=Q1
Simplificación de Circuitos Secuenciales Completamente Especificados
Definición 1: Sean S y T dos circuitos secuenciales completamente especificados, sujetos a las mismas secuencias de entrada posibles (X1,X2,…,Xn) de una longitud arbitraria.Los estados p Є T y q Є S son indistinguibles (Equivalentes), lo que se expresa p≡q si y sólo si:
λT(p,X1,X2,…,Xn) = λS(p,X1,X2,…,Xn)
Para cada secuencia posible de entrada
Simplificación de Circuitos Secuenciales Completamente Especificados
¿Es la equivalencia de estados una relación de equivalencia?
Definición 2: Se dice que los circuitos secuenciales S y T son equivalentes (S≡T) si para cada estado p en T, existe un estado q en S, tal que p≡q, e inversamente, para cada estado p en T, tal que q ≡p.Es decir, dos circuitos son equivalentes si no se pueden diferenciar
observando simplemente las respuestas a la secuencia de entrada
Simplificación de Circuitos Secuenciales Completamente Especificados
Ej: Verifique si los circuitos sincrónicos S y T son equivalentes:
Q2,1Q1,0Q3
Q2,0Q1,1Q2
Q2,1Q3,0Q1
X=1X=0S
P2,0P1,1P2
P2,1P1,0P1
X=1X=0T
Simplificación de Circuitos Secuenciales Completamente Especificados
S Estado inicial Q1; Secuencia X=(00110)
0
1Q2
0
0Q3
1
1Q1
1
0Q2
0Z →0X →
Q1Q →
0
1Q2
0
0Q1
1
1Q3
1
0Q2
0Z →
0X →Q3Q →
Si el estado inicial hubiera sido Q3
Simplificación de Circuitos Secuenciales Completamente Especificados
S Estado inicial Q1; Secuencia X=(1110)
0
1Q2
0
1Q2
1
0Q2
1Z →1X →
Q1Q →
0
1Q2
0
1Q2
0
0Q2
1Z →
1X →Q3Q →
Si el estado inicial hubiera sido Q3 Q1≡Q3
Simplificación de Circuitos Secuenciales Completamente Especificados
T Estado inicial P1; Secuencia X=(00110)
0
1P2
0
0P1
1
1P1
1
0P2
0Z →0X →
P1P →
1
0P2
0
1P2
0
1P2
1Z →
1X →P1P →
Si la secuencia era ahora X=(1110)
Q1≡Q3≡P1
Q2≡P2
S≡T
Determinación de las clases de equivalencias de estados indistinguibles
o equivalentesEncontrar la tabla de estados óptima consiste
en dividirla en el número más pequeño posible de clases de equivalencia de estados indistinguibles (equivalente)
Existen varias formas de dividir los estados de un circuito secuencial en clases separadas, pero no todas divisiones dan como resultado clases de equivalencia en estados indistinguibles. El cumplimiento del siguiente teorema asegura lo planteado:
Determinación de las clases de equivalencias de estados indistinguibles
o equivalentesTeorema 1: Se hará que los estados de un circuito
secuencial se dividan en clases separadas. p=q indica que los estados p y q quedan dentro de la misma clase en la partición.
Esta partición se compone de clases de equivalencia (subconjuntos) de estados indistinguibles (equivalentes), si y solo si se satisfacen dos condiciones para cada par de estados p y q en la misma clase, y cada entrada individual.
Determinación de las clases de equivalencias de estados indistinguibles
o equivalentes
1.- λ(p,x)=λ(q,x)2.- δ(p,x)=δ(q,x)
Técnica de las particiones óMétodo de Huffman-Mealy
Permite formar un circuito secuencial equivalente definiendo sólo un estado correspondiente a cada clase de estados indistinguibles.
El otro método para la determinación de clases de equivalencia para estados indistinguibles es el método de la Tabla de implicantes o Método de Paul-Unger. Este método es más largo pero sirve para circuitos incompletamente especificados. Este se basa en:
Determinación de las clases de equivalencias de estados indistinguibles
o equivalentesDefinición 3: Se dice que un conjunto de estados P “implica” a un
conjunto de estados Q, si para una cierta entrada Xi en conjunto Q contiene todos los estados siguientes de los estados de P. De la definición de implicancia podemos enunciar que dos o más estados son equivalentes, si para secuencia de entrada que se aplique a partir de cualquiera de ellos se cumple que:
I) Las correspondientes salidas contemporáneas son iguales.II) Los estados por ellos implicados son también equivalentes.
Además por el teorema 1, los estados en R son equivalentes si y sólo si, todos los estados en cualquier conjunto P implicado por R lo son también.
Método de Huffman-Mealy
Ejemplo:
Q4,0Q0,0Q1
Q5,0Q1,0Q3
Q6,1Q2,0Q5
Q7,1Q3,0Q6
Q7/1Q3,0Q7
Q6,1Q2,0Q4
Q5,0Q1,0Q2
Q4,0Q0,1Q0
10XnQn
Qn+1 / Z
Método de Huffman-Mealy
Se compone de dos etapas: La primera consiste en dividir los estados en el
menor número posible de clases de equivalencia, de tal manera que los estados dentro de la misma clase tengan las mismas salidas, es decir, que satisfagan la condición (i) del teorema.
Método de Huffman-Mealy
Ejemplo:
Q4,0Q0,0Q1
Q5,0Q1,0Q3
Q6,1Q2,0Q5
Q7,1Q3,0Q6
Q7/1Q3,0Q7
Q6,1Q2,0Q4
Q5,0Q1,0Q2
Q4,0Q0,1Q0
10XnQn
Qn+1 / Z
a
b
c
Método de Huffman-Mealy
Las clases de estados indistinguibles se compondrán siempre de sub-clases de clases “a”, “b” y “c”. Estas clases son las mayores que satisfarán la condición (i) del teorema. Si se quiere insistir en que se cumpla la condición (II) sólo subdivirá en más sub-clases.
76543210Estados
cbaClases Equivalentes
Método de Huffman-Mealy
En el segundo paso, se determinará para cada estado, cuando los siguientes estados están en las clases “a”, “b” y “c”. Si estos estados siguientes permanecen en estos estados, el problema ya se encuentra resuelto.
La clase del siguiente estado para entrada “0” se escribe a la izquierda de cada estado y la clase del estado siguiente para entrada “1” a la derecha.
Método de Huffman-Mealy
Evidentemente, la clase “b” contiene pares de estados que no satisfacen la condición (II), por lo tanto no son indistinguibles. Hay que separar la clase “b” en dos clases: “b” y “d”. La nueva partición puede presentar los mismos problemas, entonces hay que repetir el proceso de verificar las clases de los estados siguientes.
76543210Estados
b cb c b c b cb c b ca ca cEstados Siguientes
cbaClases Equivalentes
Método de Huffman-Mealy
En este caso específico, las cuatro clases “a”, “b”, “c” y “d”son indistinguibles. Se verifica que para cada entrada las clases de los estados siguientes son las mismas.
Para formar el circuito equivalente, sólo hay que seleccionar arbitrariamente un estado original de cada clase equivalente.
dcbaClases Equivalentes
17654320Estados
a cb c b c b cb c b cb ca cEstados Siguientes
Método de Huffman-Mealy
Tabla equivalente:
Q4,0Q0,0Q1
Q4,1Q1,0Q4
Q4,0Q1,0Q2
Q4,0Q0,1Q0
10XnQn
Qn+1 / Z
Determinación de las clases de equivalencias de estados indistinguibles
o equivalentesDe los teoremas nombrados anteriormente, se mencionó que el otro
método que los aplica es el método de las tablas de implicantes ó de Paul-Unger. Este método puede ser aplicado en circuitos que no estén completamente especificados.
El método consiste en buscar estados “NO-Equivalentes” en donde los “1-No Equivalentes” son los que tienen diferentes salidas, los “2-No Equivalentes” son aquellos cuyos estados siguientes tienen diferentes salidas y así sucesivamente.
Vamos a desarrollar el método sobre el siguiente ejemplo:
Método de Paul-Unger
Ejemplo:
Q3,0Q2,0Q1
Q1,0Q4,0Q3
Q5,0Q2,0Q5
Q4,1Q1,0Q6
Q6/0Q1,0Q7
Q2,0Q7,0Q4
Q2,0Q7,0Q2
10XnQn
Qn+1 / Z
Método de Paul-UngerEn este caso serán “1-No Equivalentes” las parejas de estados Q6-Q1, Q6-
Q2, Q6-Q3, Q6-Q4, Q6-Q5 y Q6-Q7, pues Q6 tiene salidas 0/1 mientras que los demás tienen salidas 0/0.
Para seguir buscando estados “No-Equivalentes” construimos la tabla de implicación.
En la sig. figura en el lado izquierdo, descendiendo verticalmente, tenemos una lista de todos los estados del sistema menos el primero y, en sentido horizontal, se da una lista de todos los estados menos el último, a lo largo de la base. De esta forma, la tabla contiene una casilla por cada par de estados. En cada casilla pondremos en ellado izquierdo los estados siguientes del estado que se encuentre en la base de la columna, y en el lado derecho y por el mismo orden según las entradas que les correspondan, los estados siguientes del estado de la izquierda de la fila.
Método de Paul-Unger
En el casillero correspondienteal par Q2-Q1, colocamos a la izquierda 2 (Q2 es el estado siguiente de Q1 para la entrada 0) y 3 (Q3 es el estado siguiente de Q1 para la entrada 1). A la derecha colocamos los estados siguientes de Q2, son:7 (Q7) para la entrada 0 y 2 (Q2) para la entrada 1
Método de Paul-Unger
Iremos tachando los casilleros de aquellos estados “No-Equivalentes”. En primer lugar, al determinar que Q6 con todos los demás estados eran “1-No-Equivalentes”, toda la fila de Q6 y la casilla Q6-Q7estarán tachadas.
Luego, hay tachar los casilleros “2-No-Equivalentes” que contengan coordenadas de estados previamente tachados (Los “1-No equivalentes”) Vemos que la última fila posee en sus coordenadas referencias al estado Q6 con otros estados.
Método de Paul-Unger
Eliminación de estados “2-No Equivalentes”
Al ser Q6 No equivalente con cualquiera de los otros, cualquier par Q6-X ó X-Q6 será tachado. El siguiente paso, es tachar los “3-No-Equivalentes”: Son aquellos que hacen referencia a los estados que fueron tachados en el paso anterior (los “2-No–Equivalentes”)
Método de Paul-Unger
Eliminación de estados “3-No Equivalentes”
Las casillas que hemos tachado tienen coordenadas (Q1, Q2), (Q1, Q4), (Q2, Q3), (Q2, Q5), (Q3, Q4) y (Q4, Q5).
El paso a seguir sería tachar los casilleros que contengan a los “4-No-Equivalentes”.
Esto es, los que contengan Q1-Q2, Q1-Q4, Q2-Q3, Q2-Q5, Q3-Q4 y Q4-Q5. Como no existe ningún casillero así, el proceso termina.
Método de Paul-UngerUna vez tachados todos los estados “No-Equivalentes” los que
quedan serán equivalentes.
Los casilleros no tachados tienen coordenadas (Q1, Q3), (Q1, Q5), (Q2, Q4) y (Q3, Q5), con lo que los conjuntos de estados equivalentes son {Q1, Q3, Q5} (al ser equivalentes Q1-Q3, Q1-Q5 y Q3-Q5, propiedad transitiva), {Q2, Q4}, {Q6} y {Q7}.
Ahora se procede a construir una tabla de equivalencias.
Método de Paul-UngerPara construir la tabla de equivalencias, anotamos los estados correspondientes a
las columnas de la tabla de implicación en orden inverso, es decir, de derecha a izquierda y poniéndolos cada uno debajo del anterior. A continuación vamos comprobando las columnas de cada uno de los estados empezando por la de la derecha. Al Iado del estado colocaremos los estados equivalentes, que se corresponden con las casillas no tachadas en las columnas.
En nuestro ejemplo, las columnas de Q6, Q5 y Q4 no tienen casillas sin tachar, por lo que no hay equivalencias. Para Q3 tenemos que son equivalentes Q3 y Q5 al estar su casilla sin tachar, con lo cual ponemos el conjunto {Q3, Q5}. Después seguimos mirando las otras columnas, copiando las equivalencias obtenidas antes y añadiendo las nuevas.
Si un estado es equivalente a estados que ya se encontraban agrupados en una clase, lo que hacemos es incluirlo, como ocurre con Q1 respecto de {Q3, Q5}.
Cuando hayamos mirado todas las columnas, el conjunto final de clases de equivalencia estará formado por las clases halladas, junto con los estados individuales que no tienen ningún estado equivalente.
Método de Paul-Unger
Clases de equivalencias:{Q1, Q3, Q5}, {Q2, Q4}, {Q6},{Q7}{Q1, Q3, Q5}, {Q2, Q4}Q1
{Q3, Q5}, {Q2,Q4}Q2
{Q3, Q5}Q3
-Q4
-Q5
-Q6
Estados equivalentesColumna
Método de Paul-Unger
Ahora podemos elegir un estado representante de cada clase y tendremos el resultado de la minimización. Elegimos a Q1, Q2, Q6 y Q7. Obtenemos la tabla simplificada.
Q1,0Q2,0Q1
Q2,1Q1,0Q6
Q6/0Q1,0Q7
Q2,0Q7,0Q2
10XnQn
Determinación de las clases de equivalencias de estados indistinguibles
o equivalentesApuntes finales:
Para simplificar un sistema secuencial conviene primero aplicar simple inspección para evitar trabajar con tablas con muchos estados. Luego, aplicando el método de las particiones ó las tablas de implicantes se procederá a encontrar la cantidad de estados mínimos. Otro punto a resolver es la asignación óptima de estados, que se verá en clases posteriores.