Práctico - práctica 6: diseño de sistemas secuenciales síncronos PDF

Title Práctico - práctica 6: diseño de sistemas secuenciales síncronos
Course Fundamentos de computadores
Institution Universitat Politècnica de València
Pages 16
File Size 804.6 KB
File Type PDF
Total Downloads 101
Total Views 125

Summary

Práctica 6: Diseño de sistemas secuenciales síncronos ...


Description

FUNDAMENTOS DE COMPUTADORES

Práctica 6 Diseño de sistemas secuenciales síncronos (autómatas de Moore) Apellidos y nombre

Grupo

DNI

1.- Generalidades El objetivo principal de esta práctica es que el alumno se familiarice tanto con el diseño de autómatas de Moore como con el uso de registros de almacenamiento como núcleo de memoria de estos autómatas. Para alcanzar estos objetivos se montarán en el entrenador lógico diversos sistemas secuenciales síncronos, unos desarrollados como ejemplos de diseño y otros que el alumno deberá desarrollar antes de iniciar el trabajo en el laboratorio. Para la realización de los montajes se utilizará el circuito comercial 74LS174 (seis biestables D con reloj activo por flanco de subida y entrada de borrado asíncrono /CLR común) ya empleado en la práctica anterior, además del conjunto de elementos incorporados al entrenador lógico, como el generador automático de señal de reloj y los visualizadores de 7 segmentos. El flanco activo de reloj para todos los autómatas será el de subida. En todos los montajes en los que sea necesario disponer de un valor 1 fijo se obtendrá dicho valor de alguno de los bornes denominados HI en el entrenador. De forma análoga, siempre que se necesite un valor 0 fijo se conectará a uno de los bornes LO. Para realizar las pruebas de funcionamiento el reloj se conectará a una de las entradas de PULSOS del entrenador, de manera que el alumno tendrá control sobre la llegada de flancos de reloj al sistema montado actuando sobre la palanca correspondiente; una vez el circuito funcione, y tras apagar en entrenador, el reloj se obtendrá del generador de reloj con una frecuencia aproximada de 1 Hz.

1

2.- Ejemplo de diseño: Contador binario de dos bits con cuenta ascendente A continuación se muestra como ejemplo de diseño las etapas para construir un contador ascendente de dos bits con la cuenta 0 – 1 – 2 – 3 – 0… siguiendo la metodología de diseño de sistemas secuenciales síncronos (autómatas de Moore). En primer lugar se determina la interfaz del circuito (etapa 1) y se describe formalmente su comportamiento mediante un diagrama de estados (etapa 2). Como el contador es un circuito que cambia la cuenta de forma autónoma no tiene ninguna entrada externa (aparte del reloj, que es inherente a todo sistema secuencial síncrono). En cuanto al diagrama de estados, puesto que el estado cambia siempre que llega el flanco activo del reloj, las transiciones no llevan una ecuación asociada. 1.- Interfaz del circuito

2.- Diagrama de estados

S(1:0) cero [ 00 ]

CLK

uno [ 01 ]

dos [ 10 ]

tres [ 11 ]

Los nombres empleados en el diagrama de estados son nombres arbitrarios, sin ningún impacto en el diseño resultante. Una vez que obtenemos la tabla de estados (etapa 3) como representación tabular del comportamiento del circuito, el paso siguiente es determinar la codificación (etapa 4) que se va a emplear para representar cada uno de los estados; en este caso se ha optado por una codificación compacta (cuatro estados, dos variables de estado) en la que además se ha tenido en cuenta el valor de la salida del circuito en cada estado para simplificar al máximo la función de salida (la salida del sistema en cada estado coincide con la codificación de dicho estado por lo que a la hora de sintetizar esta parte del circuito obtendremos como resultado que las salidas coinciden con el estado almacenado). 3.- Tabla de estados Estado actual cero uno dos tres

Estado siguiente uno dos tres cero

Salida S1S0 00 01 10 11

4.- Codificación de estados Estado actual

Codificación (Q1Q0)

cero uno dos tres

00 01 10 11

Una vez elegida la codificación la siguiente etapa consiste en obtener la tabla de estados con los estados codificados (etapa 5); esta tabla (a continuación) se obtiene por la simple sustitución en la tabla de estados anterior de cada nombre de estado por la codificación escogida para éste.

2

5.- Tabla de estados con los estados codificados Q1(t) Q0(t) 0 0 1 1

0 1 0 1

Q1(t+1) Q0(t+1) 0 1 1 0

1 0 1 0

S1S0 0 0 0 1 1 0 1 1

La parte final del diseño consiste en extraer de la tabla de estados con los estado codificados la información de las funciones combinacionales de excitación y salida (etapa 6) y, mediante alguna de las técnicas conocidas para los sistemas combinacionales (por ejemplo, simplificación con mapas de Karnaugh) realizar la síntesis de estas funciones combinacionales (etapa 7). 6.- Funciones combinacionales de excitación y salida 7.- Síntesis de las funciones combinacionales

Excitación

Salida

Q1 Q0

D1 D0

0 0 1 1

0 1 1 0

0 1 0 1

1 0 1 0

Q1 Q0

D 1 = Q 1⋅ Q 0 + Q 1 ⋅ Q 0 D 0 = Q0

0 0 1 1

0 1 0 1

S1 S0 0 0 1 1

0 1 0 1

S 1= Q1 S0 = Q0

Cuestión 1. (1,0 puntos) Dibuje el circuito resultante. No olvide incluir, además de las funciones de excitación y salida, los biestables que deben almacenar el estado del autómata.

3

Cuestión 2. (1,0 puntos) Utilice el integrado 74LS174 (la distribución de patillas y el funcionamiento de dicho circuito pueden consultarse en el anexo de esta memoria) y las puertas lógicas del entrenador necesarias para montar el circuito anterior. Conecte la salida del contador a uno de los visualizadores BCD-7 segmentos del entrenador para visualizar la cuenta más fácilmente. RECUERDE: • Conectar la entrada de borrado asíncrono del 74LS174 (/CLR) a un programador de entrada o a un valor fijo que garantice que dicha entrada está siempre desactivada. De lo contrario los biestables D del integrado no almacenarán ante el flanco activo del reloj el valor presentado a su entrada. • Conectar las entradas de mayor peso del visualizador BCD-7 segmentos a valores fijos, dado que la entrada BCD debe ser de cuatro bits y el contador sólo proporciona los bits de menor peso.

3.- Circuito a diseñar: Contador con salida 0 – 1 – 7 – 6 Cuestión 3. (2,0 puntos) Utilice el ejemplo desarrollado en el Anexo de esta práctica, y en particular la variante C del diseño como modelo para diseñar teóricamente un circuito que genere la salida 0 – 1 – 7 – 6 – 0… empleando cuatro variables de estado y codificación one-hot. Contador con salida 0 – 1 – 7 – 6 1 y 2.- Interfaz y diagrama de estados:

3.- Tabla de estados:

4

4.- Codificación (one-hot):

5.- Tabla de estados con los estados codificados:

6.- Tablas de verdad de las funciones de excitación y salida:

5

7.- Síntesis de las funciones de excitación y salida:

8.- Dibujo del circuito resultante:

Cuestión 4. (1,5 puntos) Móntese el circuito resultante de la cuestión anterior utilizando el integrado 74LS174 para almacenar las variables de estado y las puertas lógicas del entrenador necesarias. Siga las recomendaciones para el montaje de la cuestión 2 sobre el uso del visualizador BCD-7 segmentos.

6

4.- Circuito a diseñar: Detector de actividad Cuestión 5. (3,0 puntos) Diseñe teóricamente un autómata de Moore con las siguientes especificaciones: El sistema dispone de una entrada (denominada E) y una salida (denominada S, activa a nivel alto); el sistema debe activar la salida S durante 2 ciclos de reloj en cuanto se detecte un cambio en la entrada E. Mientras la salida está activada el sistema no detecta nuevos cambios de valor en la entrada, de manera que debe haber una separación mínima de un ciclo de reloj entre dos activaciones consecutivas de la salida. Pistas para realizar correctamente el diseño de este circuito: • El número total de estados del sistema es cuatro. Se llamarán A, B, C y D. • En el diagrama de estados existen dos estados de “reposo” en los que la salida está desactivada: un primer estado (A) mientras la entrada tiene el valor 0 de forma continuada y un segundo estado (B) mientras la entrada tiene el valor 1 de forma continuada. A continuación se muestra tanto la interfaz del sistema como algunos de los estados que forman parte del diagrama de estados (los estados A y B mencionados anteriormente) del autómata que ha de diseñar. 1.- Interfaz del circuito 2.- Diagrama de estados (parcial) A

E

¿estado destino?

[0] E

S

E E

CLK

B

¿estado destino? [0] E

2.- Diagrama de estados (completo):

3.- Tabla de estados: 7

4.- Codificación. Para la codificación debe emplear dos variables de estado y codificación binaria (estado A: 00, estado B: 01, etc.):

5.- Tabla de estados con los estados codificados:

6.- Tablas de verdad de las funciones de excitación y salida:

7.- Síntesis de las funciones de excitación y salida:

8

8.- Dibujo del circuito resultante:

Cuestión 6. (1,5 puntos) Móntese el circuito resultante de la cuestión anterior utilizando el integrado 74LS174 y las puertas lógicas del entrenador necesarias. Como en este caso el sistema genera una única salida conéctela a una lamparilla indicadora de estado.

9

Anexo – Variantes de diseño: Ejemplo Contador con salida 0 – 3 – 7 – 5 Este ejemplo de diseño es un contador con cuatro valores de salida distintos. En el desarrollo de este ejemplo de diseño se han utilizado tres variantes distintas en la etapa de codificación: codificación compacta (variante A), codificación para simplificar la función de salida (variante B) y codificación one-hot para simplificar la función de excitación (variante C). 1.- Interfaz del circuito

2.- Diagrama de estados

S(1:0) cero [ 000 ]

CLK

uno [ 011 ]

3.- Tabla de estados Estado actual

Estado siguiente

cero uno uno dos dos tres

uno dos dos tres tres cero

Salida S2S1S0 0 0 0 0 1 1 11 11 11 1 0 1

Se describen a continuación las diferentes variantes.

10

dos [ 111 ]

tres [ 101 ]

Variante A: Codificación compacta En esta primera variante se emplea el menor número posible de variables de estado (dos). El valor de variables de estado se determina a partir del número de estados del diagrama de estados, numerándolos de forma aleatoria. Los detalles de esta variante se muestran a continuación

4.- Codificación Estado actual Cero Uno Dos Tres

5.- Tabla de estados con los estados codificados Estado actual Q1(t) Q0(t) 0 0 0 1 1 0 1 1

Codificación (Q1, Q0) 0 0 0 1 1 0 1 1

Estado siguiente Q1(t+1) Q0(t+1) 0 1 1 0 1 1 0 0

S2 0 0 1 1

Salidas S1 S0 0 0 1 1 1 1 0 1

6 y 7.- Funciones de excitación y salida Excitación Q1 0 0 1 1

Q0 0 1 0 1

Salida D1 0 1 1 0

D0 1 0 1 0

Q1 0 0 1 1

Q0 0 1 0 1

S2 0 0 1 1

S1 0 1 1 0

S0 0 1 1 1

S 2 = Q1

D1 = Q1 ⋅ Q0 + Q1 ⋅ Q0 D0 = Q0

S 1 = Q1⋅ Q 0 + Q1 ⋅Q 0 S 0 = Q1 + Q0

Respecto de un contador binario de dos bits (como el de la cuestión 1 de esta práctica), este circuito añade simplemente una función combinacional de salida que calcula, a partir del valor almacenado en las variables de estado, el valor que debe mostrarse a la salida.

11

Variante B: Codificación para minimizar la función de salida En esta variante se emplean tantas variables de estado como salidas (en este caso tres) para conseguir que la salida coincida con el estado almacenado. Se aprovecha el que las salidas sean distintas en cada uno de los estados (es decir, no hay dos estados distintos con la misma salida) para emplear el valor de salida como codificación del estado. El hecho de que, además, la función de excitación sea más sencilla que con la codificación compacta es solamente una feliz coincidencia. Los detalles de esta variante se muestran a continuación 4.- Codificación de estados Estado actual Cero Uno Dos Tres

Codificación (Q2, Q1, Q0) 0 0 0 0 1 1 1 1 1 1 0 1

5.- Tabla de estados con los estados codificados

Q2(t) 0 0 0 0 1 1 1 1

Estado actual Q1(t) 0 0 1 1 0 0 1 1

Q0(t) 0 1 0 1 0 1 0 1

Q2(t+1) 0 x x 1 x 0 x 1

Estado siguiente Q1(t+1) Q0(t+1) 1 1 x x x x 1 1 x x 0 0 x x 0 1

S2 0 x x 0 x 1 x 1

Salidas S1 0 x x 1 x 0 x 1

S0 0 x x 1 x 1 x 1

6 y 7.- Funciones de excitación y salida Excitación Q2 0 0 0 0 1 1 1 1

Q1 0 0 1 1 0 0 1 1

Salida Q0 0 1 0 1 0 1 0 1

D2 = Q1 D1 = Q 2 D 0 = Q 2 + Q1

12

D2 0 x x 1 x 0 x 1

D1 1 x x 1 x 0 x 0

D0 1 x x 1 x 0 x 1

Q2 0 0 0 0 1 1 1 1

Q1 0 0 1 1 0 0 1 1

S 2 = Q2 S1 = Q1 S 0 = Q0

Q0 0 1 0 1 0 1 0 1

S2 0 x x 0 x 1 x 1

S1 0 x x 1 x 0 x 1

S0 0 x x 1 x 1 x 1

Variante C: Codificación one-hot En esta variante se emplean tantas variables de estado como estados (en este caso cuatro) para conseguir que las ecuaciones resultantes de la síntesis de la función de excitación sean lo más sencillas posibles. Esta simplificación, sin embargo, no suele ser tan efectiva como la simplificación de la función de salida de la variante anterior (variante en la que, por definición, la salida es igual al estado almacenado). El hecho de que con esta codificación haya muchos valores de estado no utilizados es lo que permite dicha simplificación, ya que los valores de estado no utilizados se traducen en valores x en las funciones de excitación y salida. Es por este hecho que la simplificación suele ser efectiva tanto en la función de excitación como de salida. Los detalles de esta variante se muestran a continuación 4.- Codificación de estados Estado actual Cero Uno Dos Tres

Codificación (Q3, Q2, Q1, Q0) 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0

5.- Tabla de estados con los estados codificados

Q3(t) 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

Estado actual Q2(t) Q1(t) 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1

Q0(t) 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Q3(t+1) x 0 0 x 1 x x x 0 x x x x x x x

Estado siguiente Q2(t+1) Q1(t+1) x x 0 1 1 0 x x 0 0 x x x x x x 0 0 x x x x x x x x x x x x x x

Q0(t+1) x 0 0 x 0 x x x 1 x x x x x x x

S2 x 0 0 x 1 x x x 1 x x x x x x x

Salidas S1 x 0 1 x 1 x x x 0 x x x x x x x

S0 x 0 1 x 1 x x x 1 x x x x x x x

13

6 y 7.- Funciones de excitación y salida Excitación Q3 Q2 Q1 Q0 D3 D2 D1 D0 0 0 0 0 x x x x 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 1 1 x x x x 0 1 0 0 1 0 0 0 0 1 0 1 x x x x 0 1 1 0 x x x x 0 1 1 1 x x x x 1 0 0 0 0 0 0 1 1 0 0 1 x x x x 1 0 1 0 x x x x 1 0 1 1 x x x x 1 1 0 0 x x x x 1 1 0 1 x x x x 1 1 1 0 x x x x 1 1 1 1 x x x x

D3 = Q2 D2 = Q1 D1= Q0 D 0 =Q3

14

Salida Q3 Q2 Q1 Q0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1

S 2 = Q3 + Q2 S1 = Q2 + Q1 S 0 = Q 3+ Q 2 + Q1

S2 x 0 0 x 1 x x x 1 x x x x x x x

S1 x 0 1 x 1 x x x 0 x x x x x x x

S0 x 0 1 x 1 x x x 1 x x x x x x x

15

16...


Similar Free PDFs