Sedjun2013 Sol

26
Electrónica Digital: Exámenes Resueltos 1 E.T.S. de Ingeniería Industrial Grado en Ingeniería Electrónica, Robótica y Mecatrónica. Electrónica Digital Examen convocatoria de Junio. Curso 12/13. Málaga 27-06-2013. 1.- El circuito de la Fig. 1a. ha sido propuesto por un alumno como respuesta al siguiente enunciado: Diseñar un sistema digital para comparar la magnitud de dos números naturales codificados en binario natural de dos bits A = A1A0 y B = B1B0. El circuito ha de poseer dos salidas Z e Y tales que Z = 1 e Y = 0 si A > B; Z = 0 e Y = 1 si B > A y Z = Y = 0 si A = B.” a) Verificar y justificar que la respuesta proporcionada por el alumno es incorrecta porque no cumple con las especificaciones del enunciado. b) Sin modificar el diagrama lógico propuesto por el alumno, añadir la lógica combinalcional mínima necesaria para corregir el error de forma que el nuevo sistema así obtenido proporcione una respuesta correcta al enunciado del problema planteado. c) Realizar un nuevo diseño del sistema cumpliendo una de las siguientes especificaciones: i) Utilizar el menor número posible de decodificadores 3:8 (Fig 1b.) y puertas OR de dos y tres entradas. ii)Utilizar el menor número posible de MUX2 (Fig. 1c.) Justificar en cada caso el funcionamiento de la solución propuesta, explicando cómo el diseño realizado a partir de los bloques combinacionales cumple con el enunciado del problema. 3 puntos) 2.- Dado el diagrama lógico de la Fig. 2a: a) Identificar las entradas y salidas del sistema así como los elementos de memoria que se utilizan. ¿Qué modelo estructural de circuito secuencial sigue este sistema? Justifica la respuesta. b) Obtener las expresiones booleanas canónicas de las Funciones de Excitación de los flip-flops y de Salida del sistema. c) Obtener un Diagrama de Transición de Estados y, en base a él, mostrar cual será la evolución del sistema si se aplica a la entrada la secuencia de entrada X = 1 0 0 1 0 1 1 1 0 0 0 0. Considerar que inicialmente q1q0 = 00. d) Ilustrar dicho comportamiento completando el cronograma de la Fig. 2b. B1 A1 A0 B0 Z Y Dec 3:8 0 1 2 3 4 5 6 7 D2 D1 D0 Ena Fig 1b. Fig 1c. Fig 1a. C1 D3 D0 M U X S D1 D2 C0

Transcript of Sedjun2013 Sol

  • Electrnica Digital: Exmenes Resueltos

    1

    E.T.S. de Ingeniera Industrial

    Grado en Ingeniera Electrnica, Robtica y Mecatrnica.

    Electrnica Digital

    Examen convocatoria de Junio. Curso 12/13. Mlaga 27-06-2013.

    1.- El circuito de la Fig. 1a. ha sido propuesto por un alumno como respuesta al siguiente enunciado:

    Disear un sistema digital para comparar la magnitud de dos nmeros naturales codificados enbinario natural de dos bits A = A1A0 y B = B1B0. El circuito ha de poseer dos salidas Z e Y tales queZ = 1 e Y = 0 si A > B; Z = 0 e Y = 1 si B > A y Z = Y = 0 si A = B.

    a) Verificar y justificar que la respuesta proporcionada por el alumno es incorrecta porque no cumplecon las especificaciones del enunciado.

    b) Sin modificar el diagrama lgico propuesto por el alumno, aadir la lgica combinalcional mnimanecesaria para corregir el error de forma que el nuevo sistema as obtenido proporcione una respuestacorrecta al enunciado del problema planteado.

    c) Realizar un nuevo diseo del sistema cumpliendo una de las siguientes especificaciones:i) Utilizar el menor nmero posible de decodificadores 3:8 (Fig 1b.) y puertas OR de dos y tres

    entradas.ii)Utilizar el menor nmero posible de MUX2 (Fig. 1c.)

    Justificar en cada caso el funcionamiento de la solucin propuesta, explicando cmo el diseo realizadoa partir de los bloques combinacionales cumple con el enunciado del problema.

    3 puntos)

    2.- Dado el diagrama lgico de la Fig. 2a:a) Identificar las entradas y salidas del sistema as como los elementos de memoria que se utilizan.

    Qu modelo estructural de circuito secuencial sigue este sistema? Justifica la respuesta.b) Obtener las expresiones booleanas cannicas de las Funciones de Excitacin de los flip-flops y de

    Salida del sistema.c) Obtener un Diagrama de Transicin de Estados y, en base a l, mostrar cual ser la evolucin del

    sistema si se aplica a la entrada la secuencia de entrada X = 1 0 0 1 0 1 1 1 0 0 0 0. Considerar queinicialmente q1q0 = 00.

    d) Ilustrar dicho comportamiento completando el cronograma de la Fig. 2b.

    B1

    A1

    A0

    B0

    Z

    Y

    Dec3:8 0

    1234567

    D2D1D0

    Ena

    Fig 1b.

    Fig 1c.

    Fig 1a.

    C1

    D3

    D0

    MUX S

    D1

    D2

    C0

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    2

    (3 puntos)

    3.- Sobre una lnea de datos se recibe informacin binaria, sincronizada con una seal de reloj CK. Se haconvenido que la informacin recibida sea correcta siempre que no se reciban dos o ms unosconsecutivos, o cuatro o ms ceros consecutivos. Para detectar errores en la transmisin se desea disponerde un sistema digital que analice dicha informacin de manera sncrona y a medida que sta se recibe porlnea, y proporcione a su salida una seal que tome el valor uno cada vez que se produzca una condicin deerror; y permanezca a ese valor, mientras persista dicha condicin. Se asume tambin que cada vez que sereinicia el sistema, con la correspondiente seal de Reset, lo hace en un estado tal que el sistema asumeque el ltimo bit recibido por la lnea haba sido un uno.

    a) Obtener un diagrama de transicin de estados para dicho sistema secuencial que siga el modelo deMealy. Justifica que el autmata descrito en ese diagrama cumple con los requerimientos delenunciado, explicando brevemente su evolucin para una secuencia de entrada dada.

    b) Obtener un diagrama de transicin de estados para dicho sistema que siga el modelo de Moore.Justifica que el autmata descrito en ese diagrama cumple con los requerimientos del enunciado,explicando brevemente su evolucin para una secuencia de entrada dada.

    c) Obtener un diagrama lgico para el sistema a partir de uno de los diagramas de transicin de estadosobtenidos en a) y b). Requerimientos de diseo: En la solucin propuesta se deber utilizar el menor nmero posible deelementos de memoria y de lgica combinacional. Adems se deber emplear al menos un flip-flopJK y otro T.

    (4 puntos)

    Nota: La calificacin del exmen, as como la calificacin final de la asignatura, se harn pblicas enel campus virtual el Jueves 4 de Julio. All se indicar tambin el lugar y la fecha de la revisin delexamen.

    J

    K

    Q

    QNCK

    T Q

    QNCK

    Z

    CK

    X

    Fig 2a.

    CK

    Xq1q0

    Z Fig 2b.

    q0

    q1

  • Electrnica Digital: Exmenes Resueltos

    3

    SOLUCIONES

    1.- El circuito de la Fig. 1a, ha sido propuesto por un alumno como respuesta al siguiente enunciado:

    Disear un sistema digital para comparar la magnitud de dos nmeros naturales codificados enbinario natural de dos bits A = A1A0 y B = B1B0. El circuito ha de poseer dos salidas Z e Y talesque Z = 1 e Y = 0 si A > B; Z = 0 e Y = 1 si B > A y Z = Y = 0 si A = B.

    a) Verificar y justificar que la respuesta proporcionada por el alumno es incorrecta porque nocumple con las especificaciones del enunciado.

    b) Sin modificar el diagrama lgico propuesto por el alumno, aadir la lgica combinalcionalmnima necesaria para corregir el error de forma que el nuevo sistema as obtenidoproporcione una respuesta correcta al enunciado del problema planteado.

    c) Realizar un nuevo diseo del sistema cumpliendo una de las siguientes especificaciones:i) Utilizar el menor nmero posible de decodificadores 3:8 (Fig 1b.) y puertas OR de dos y tres

    entradas.ii)Utilizar el menor nmero posible de MUX2 (Fig. 1c.)Justificar en cada caso el funcionamiento de la solucin propuesta, explicando cmo el diseorealizado a partir de los bloques combinacionales cumple con el enunciado del problema.

    a) Para cumplir con las especificaciones del enunciado, el sistema debe tener cuatro entradas, cada una deellas correspondientes a un nmero binario de dos bits, (A1A0 y B1B0, donde el orden indica adems elbit ms significativo de cada nmero); y dos salidas (Z e Y), que codifican el resultado de la comparacinde dichos nmeros. As pues, el sistema puede representarse esquemticamente:

    En este sentido, la respuesta del alumno, recogida en la Fig 1a, cumple con esa especificacin.

    Por otra parte, construir una tabla de verdad que recoja el comportamiento del sistema es tareasimple en este caso. Basta con interpretar adecuadamente las entradas como nmeros binarios, comparalosy completar la columna de salida con el cdigo apropiado al resultado de la comparacin, segn se indicaen el enunciado.

    B1

    A1

    A0

    B0

    Z

    Y

    Dec3:8 0

    1234567

    D2D1D0

    Ena

    Fig 1b.

    Fig 1c.

    Fig 1a.

    C1

    D3

    D0

    MUX S

    D1

    D2

    C0

    A[1:0] ZSistemaCombinacionalB[1:0] Y

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    4

    La Tabla de Verdad correcta del sistema propuesto resulta:

    donde hemos llamado Zc e Yc a las salidas, para distinguirlas de Z e Y, que es como se llaman en elcircuito del alumno. A partir de esta tabla podemos escribir las formas cannicas de cada funcin:

    o bien, dibujar su correspondientes mapas de Karnaugh:

    EntradaA1A0 B1B0

    SalidaZc Yc Significado

    0 0 0 0 0 0 A = B

    0 0 0 1 0 1 A < B

    0 0 1 0 0 1 A < B

    0 0 1 1 0 1 A < B

    0 1 0 0 1 0 A > B

    0 1 0 1 0 0 A = B

    0 1 1 0 0 1 A < B

    0 1 1 1 0 1 A < B

    1 0 0 0 1 0 A > B

    1 0 0 1 1 0 A > B

    1 0 1 0 0 0 A = B

    1 0 1 1 0 1 A < B

    1 1 0 0 1 0 A > B

    1 1 0 1 1 0 A > B

    1 1 1 0 1 0 A > B

    1 1 1 1 0 0 A = B

    Zc A1 A0 B1 B0, , ,( ) 4 8 9 12 13 14, , , , ,( )4=

    Yc A1 A0 B1 B0, , ,( ) 1 2 3 6 7 11, , , , ,( )4=

    A1B1

    00

    01

    11

    10

    00 01 11 10

    0 1 3 2

    4 5 67

    8 9 1011

    12 13 1415

    0 0 0 0

    0 01 0

    00111 1 0 1

    Zc (A1,A0,B1,B0)

    B0A0

    A1B1

    00

    01

    11

    10

    00 01 11 10

    0 1 3 2

    4 5 67

    8 9 1011

    12 13 1415

    0 1 1 1

    0 10 1

    01000 0 0 0

    Yc (A1,A0,B1,B0)

    B0A0

  • Electrnica Digital: Exmenes Resueltos

    5

    Para verificar y justificar que la repuesta del alumno es incorrecta, y por tanto, responder al apartadoa), bastara con encontrar una combinacin de entrada para la que la salida del sistema de la Fig 1a, nocorrespondiera con la que se recogen en esta tabla. As procederamos, evaluando el circuito para lasdistintas combinaciones de entrada, hasta encontrar una que fallara. Como es obvio, este modo de procederresulta poco prctico, y a la postre poco efectivo, sobre todo, teniendo en cuenta la cuestin que se planteaen el apartado b). Para poder corregir los fallos, ser importante saber cules son todos los casos en los quela respuesta de alumno proporciona una salida incorrecta.

    Por ello, lo ms apropiado es analizar el circuito propuesto por el alumno y obtener una cualquiera delas representaciones que permiten comparar dos funciones booleanas, a saber: su tabla de verdad, sumapa de Karnaugh, o cualquiera de sus dos formas cannicas. Comparando stas con las del sistemaque hemos considerado como correcto, verificaremos y justificaremos por qu el diseo del alumno esincorrecto, y adems sabremos dnde y cmo hay que actuar para corregir los fallos.

    Dado un diagram lgico como el de la Fig 1a, lo ms cmodo para obtener su tabla de verdad (o loque es equivalente, su mapa de Karnaugh) es obtener una expresin normalizada de las funciones desalida del sistema; en este caso: Z(A1,A0,B1,B0) e Y(A1,A0,B1,B0). Esto resulta mucho ms prctico queproceder dndole valores a las entradas y evaluar su salida; puesto que una vez obtenida, una expresinnormalizada puede ser llevada a un mapa de Karnaugh de forma directa. Por ejemplo, una expresinnormalizada en forma suma de productos, es una expresin en la que cada trmino producto es unimplicante de la funcin, al que le corresponde una determinada agrupacin de unos en dicho mapa.

    La siguiente figura reproduce el circuito de la Fig 1a, y sirve de ayuda para entender el proceso deevaluacin del circuito hasta obtener la expresiones normalizadas ara Z e Y.

    Operamos para obtenr una expresin normalizada suma de productos:

    Hemos obtenido que la funcin es la suma de los minitrminos m4 y m14; y que la

    funcin es la suma de los minitrminos m1 y m11, esto es:

    B1

    A1

    A0

    B0

    A1B1 A1B1+

    Z A1B1 A1B1+( )B0A0=

    Y A1B1 A1B1+( )B0A0=

    A1B1

    A1B1

    Z A1B1 A1B1+( )B0A0 A1 B1+( ) A1 B1+( ) B0A0( ) = = =A1A0B1B0 A1A0B1B0+ m14 m4+==

    Y A1B1 A1B1+( )B0A0 A1 B1+( ) A1 B1+( ) B0A0( ) = = =A1A0B1B0 A1A0B1B0+= m11 m1+=

    Z A1 A0 B1 B0, , ,( )Y A1 A0 B1 B0, , ,( )

    Z A1 A0 B1 B0, , ,( ) 4 14,( )4=

    Y A1 A0 B1 B0, , ,( ) 1 11,( )4=

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    6

    Llevando estas expresiones al correspondiente mapa de Karnaugh resulta:

    Comparando estos mapas con los correspondientes para Zc e Yc, vemos que en la respuesta delalumno, la funcin Z no cubre los minitrminos m8, m9, m12 y m13 de la funcin de salida correctaZc; mientras que la funcin Y no cubre los minitrminos m2, m3, m6 y m7 de la funcin Yc. Por tantoqueda verificado y justificado el por qu la respuesta del alumno no es correcta. Adems sabemosque, para que Z coincida con Zc, e Y coincida con Yc, habr que sumar a cada una de ellas los trminosnecesarios para cubrir los minitrminos que les faltan, esto nos proporciona una idea para responder a lascuestin que plantea el siguiente apartado.

    b) Recordemos que, en este apartado se pide: Sin modificar el diagrama lgico propuesto por el alumno,aadir la lgica combinalcional mnima necesaria para corregir el error, de forma que el nuevo sistema asobtenido proporcione una respuesta correcta al enunciado del problema planteado.

    Es claro del anlisis y discusin ralizado en el apartado anterior que:

    donde en la ltima igualdad se tiene del hecho de que la suma de los minitrminos adyacentes m8, m9,

    m12 y m13 que le faltan a Z para ser Zc, se corresponde con el implicante ; y que los minitrminos

    adyacentes m2, m3, m6 y m7, que le faltan a Y para ser Yc, corresponden al implicante . As pues, siguiendo ests ecuaciones, podemos dibujar este esquema para el sistema corregido:

    A1B1

    00

    01

    11

    10

    00 01 11 10

    0 1 3 2

    4 5 67

    8 9 1011

    12 13 1415

    0 0 0 0

    0 01 0

    00000 0 0 1

    Z (A1,A0,B1,B0)

    B0A0

    A1B1

    00

    01

    11

    10

    00 01 11 10

    0 1 3 2

    4 5 67

    8 9 1011

    12 13 1415

    0 1 0 0

    0 00 0

    01000 0 0 0

    Y (A1,A0,B1,B0)

    B0A0

    Zc A1 A0 B1 B0, , ,( ) Z A1 A0 B1 B0, , ,( ) 8 9 12 13, , ,( )4+ Z A1 A0 B1 B0, , ,( ) A1B1+==

    Yc A1 A0 B1 B0, , ,( ) Y A1 A0 B1 B0, , ,( ) 2 3 6 7, , ,( )4+= Y A1 A0 B1 B0, , ,( ) A1B1+=

    A1B1

    A1B1

    A[1:0] ZcSistemaCombinacional

    B[1:0]

    Yc

    del alumno

    B1

    A1

    Z

    Y

  • Electrnica Digital: Exmenes Resueltos

    7

    Otra solucin, ms simple, que solo requiere aadir dos puesrtas OR, podra ser la que se muestra enel siguiente esquema; claro est, siempre que se permita tener acceso a los nudos internos del circuito delalumno:

    c) En los apartados anteriores hemos encontrado las funciones de salida Zc e Yc del sistama descrito en elenunciado, cuya funcin es comparar dos nmeros binarios de dos bits. Lo que se pide en este apartado esimplementar dichas funciones empleando bloques funcionales (decodificadores y multiplexores) como losque muestra la Fig 1b.

    i) Implementacin de funciones booleanas con decodificadores.

    Un decodificador binario natural es un bloque funcional combinacional con n entradas y msalidas; donde m, coincide con el mximo nmero de palabras del cdigo binario de n bits de su entrada(m = 2n). Como su propio nombre indica, la principal funcin de este bloque es la de decodificar delcdigo binario que constiruye su entrada. Esta funcin consiste en identificar cada una de las salidas conuna palabra del cdigo, de forma que, para cada palabra aplicada a su entrada, se activa una y solo unalnea a la salida. La manera ms simple de realizar esta funcionalidad es hacer que cada una de las salidassea un mintrmino (operador AND) de n variables. De esta manera, cada combinacin de las variables deentrada activa una nica lnea de salida, la del correspondiente minitrmino.

    Desde este punto de vista, un bloque decodificador tambin puede ser considerado como la parteAND, de una estructura AND-OR, como la empleada en la implementacin de funciones booleanas apartir de expresiones en forma suma de productos. Por tanto, conocida cualquiera de estas expresiones, o,de forma ms general, conocida su tabla de verdad, su representacin sobre un mapa de Karnaugh, o suforma cannica en forma suma de minitrminos, cualquier funcin booleana de n variables puede serimplementada mediante decodificadores binarios y puertas OR: basta con sumar mediante dichooperador las salidas del decodificador correspondientes a los minitrminos que hacen uno a la funcinque se desea implementar.

    Como adems es posible compartir un decodificador para realizar varias funciones booleanassimultneamente, su empleo resulta bastante adecuado para la implementacin de multifuncionesbooleanas, como es el caso del sistema propuesto en este problema. (Recurdese que esta estructura estambin la propia de un bloque funcional combinacional ROM)

    En los apartados anteriores hemos encontrado que las funciones cannicas suma de miniterminos delas funciones de salida Zc e Yc del sistema son:

    Partiremos pues de ellas para realizar la implementacin requerida.

    Zc

    Yc

    Z

    Y

    B1

    A1

    A0

    B0

    Zc A1 A0 B1 B0, , ,( ) 4 8 9 12 13 14, , , , ,( )4=

    Yc A1 A0 B1 B0, , ,( ) 1 2 3 6 7 11, , , , ,( )4=

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    8

    La implementacin de funciones booleanas de cuatro variables mediante decodificadores, puederealizarse de manera simple empleando un decodificador binario natural de 4:16. Sin embargo, en esteapartado, se pide expresamente que se realice un diseo empeando decodificadores 3:8 dotados conentrada de habilitacin (Ena), (vase Fig. 1b). Por tanto, se est sugiriendo la idea de utilizar este tipo dedecodificadores en una configuracin que permita obtener la funcionalidad de un decodificador 4:16.

    La figura que sigue muestra, en su parte superior, el decodificador 3:8, junto a su taba de verdad.sta muestra cmo es precisamente la seal de habilitacin, la que permite expandir la funcionalidad deldecodificador de forma cmoda. Ntese su accin: a nivel no activo (0 lgico) pone todas las salidas alvalor cero, cualquiera que sea la combinacin del resto de las entradas, mientras que a nivel activo (1lgico) habilita el funcionamiento normal del decodificador. En la parte inferior de la figura aparece eldiseo final del sistema que emplea dos decodificadores 3:8, para conseguir la funcionalidad de undecodificador 4:16. En este esquema, la entrada ms significativa de cada una de las funciones Zc y Yc,esto es la entrada A1, se ha empleado para habilitar (o seleccionar), bien el decodificador 1, cuando A1 =0, cuya salida proporciona los miniterminos m0 al m7; bien el decodificador 2, cuando A1 = 0, cuyasalida proporciona los minitrminos m8 al m15. Siguiendo las indicaciones del enunciado del problema, seemplean puertas OR de dos y tres entradas para realizar la suma de los correspondientes minitrminos encada caso.

    Dec3:8 0

    1234567

    D2D1D0

    Ena

    A0B1B0

    A0B1B0

    Ena D2 D1 D0 S7 S6 S5 S4 S3 S2 S1 S0011111111

    x00001111

    x00110011

    x01010101

    000000001

    000000010

    000000100

    000001000

    000010000

    000100000

    001000000

    010000000

    m8

    m4

    m6

    m14

    m9

    Yc A1 A0 B1 B0, , ,( )

    Dec3:8 0

    1234567

    D2D1D0

    Ena

    Dec 13:8 0

    1234567

    D2D1D0

    Ena

    Dec 23:8 0

    1234567

    D2D1D0

    EnaA1

    m13m12m11

    m7

    m1m2m3

    Zc A1 A0 B1 B0, , ,( )

    Yc

    Zc

  • Electrnica Digital: Exmenes Resueltos

    9

    ii) Implementacin de funciones booleanas con multiplexores.

    Un multiplexor es un bloque funcional combinacional con n entradas de dato D[n-1:0], una salida Sy c seales de control C[c-1:0], donde c es tal que secumple (n = 2c ). Su funcin principal es elencaminamiento de datos, de forma que, en cada instante, proporciona a la salida el dato de una de susentradas, aquella que est seleccionada mediante el cdigo de control C[c-1:0]. Formalmente su salida puede expresarse:

    ,

    donde el ndice k representa a la k-sima combinacin de las entradas de control C[c-1:0], D(k) es laentrada k-esima, seleccionada a partir de la k-sima combinacin de las entradas de control C[c-1:0]; y mkes el k-simo minitrmino de c variables.

    Esta expresin se asemeja a la de la forma cannica suma de minitrminos de una funcin booleanaF de c variables independientes, que puede expresarse:

    ,

    donde el ndice k representa a la k-sima combinacin de las variables de entrada, F(k) es el valor de lafuncin booleana F, para la k-sima combinacin de las variables de entrada, mientras que mk es el k-simo minitrmino de c variables.

    Esta semejanza es la base la aplicacin de los bloques multiplexores a la implementacin defunciones booleanas. Basta con considerar las variables de control como las variables independientes dela funcin, y hacer , esto es, dar a cada una de las entradas de dato D el valor de la funcin Fpara la combinacin de las variables de entrada que selecciona dicha entrada. Por ejemplo, para el caso delmultiplexor 4x1, que aparece en la Fig1b, MUX2, su funcin de salida S puede escribirse:

    por lo que podemos utilizarlo para implementar cualquier funcin booleana de dos variables .Basta con hacer C1 = x, C0 = y; y dar a cada una de las entradas D[0:3], el valor de la funcin F para lacombinacin de entrada que la selecciona.

    Recordemos que las funciones que se pide implementar son Zc e Yc :

    Segn hemos visto, en general, para la implementacin de funciones booleanas de cuatro variables,se requiere un multiplexor 16x1, que posee cuatro entradas de control (MUX4). As la implementacinresulta simple y directa. Sin embargo, en este apartado se pide expresamente que se realice un diseoempleando MUX2, (vase Fig. 1b). Esto no debe entraar especial dificultad. Una idea para cumplir esterequisisto, habitual por otra parte en el diseo con bloques funcionales, es utilizar MUX2 organizados deforma que resulte la funcionalidad de un MUX4. Seguiremos pues esta aproximacin general en estarespuesta.

    S D n-1:0[ ] C[c-1:0],( ) D k( )mkk 0=

    n 1

    =

    F xc 1 ... x0, ,( ) F k( )mkk 0=

    n 1

    =

    D k( ) F k( )=

    S D 3:0[ ] C[1:0],( ) D0C1C0 D1C1C0 D2C1C0 D3C1C0+ + + D0m0 D1m1 D2m2 D3m3+ + += =F x y,( )

    Zc A1 A0 B1 B0, , ,( ) 4 8 9 12 13 14, , , , ,( )4=

    Yc A1 A0 B1 B0, , ,( ) 1 2 3 6 7 11, , , , ,( )4=

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    10

    En la siguiente figura se muestra cmo construir un MUX4 a partir de MUX2:

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    C1

    D3

    D0XUM

    SD1

    D2

    C0

    D8

    D9

    D10

    D11

    D15

    D14

    D13

    D12

    C1 C0

    C2

    S

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    C1

    D3

    D0XUM

    SD1

    D2

    C0

    D0

    D1

    D2

    D3

    D4

    D5

    D6

    D7

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    C3

    C1

    D7 D4 M U X 4

    S

    D5 D6

    C0

    D3 D0 D1 D2 D15D12 D13 D14D11D8 D9 D10 C3C2

    S1

    S2S3S4

  • Electrnica Digital: Exmenes Resueltos

    11

    Notse cmo en este esquema cada lnea de entrda Dk , con k = 1 ... 15, se conecta a la salida S, cuando seselecciona la k-sima combinacin de las variables de control C[3:0]. Por ejemplo, la combinacinC3C2C1C0 (correspondiente a la combinacin k = 10), conecta con la salida S, la salida S3 del multiplexor3 de la primera etapa, dado que en l las seales de control son C3C2. Por su parte, S3 toma el valor de laentrada D10, que corresponde a la combinacin de control C1C0.

    La figura que sigue muestra el diseo ms simple para las funciones Zc e Yc empleando MUX4. Enla solucin que aqu se aporta se supone que cada uno de ellos se construye siguiendo el esquema de laanterior figura. Por tanto se emplean en total diez bloques MUX2:

    Dado que sta es una aproximacin general al problema, no est garantizado que la solucinobtenida sea ptima, ni que emplee el menor nmero de multiplexores. Sin embargo, el procedimientodescrito sirve cualquiera que sea la funcin booleana de cuatro variables considerada.

    A continuacin se proporciona una solucin, que, en este problema concreto, resulta mucho mseconmica en cuanto al uso de bloques MUX. Esta solucin fu proporcionada por un alumno en surespuesta al examen.

    Dado que el sistema que hay que disear es un comparador de nmeros de dos bits, y que la funcinde salida Zc toma el valor uno siempre que el numero binario A = A1A0 sea mayor que B = B1B0 y valecero en otro caso. Y dado que lo mismo le ocurre a la funcin Yc, para cuando A es menor que B. En estasolucin se explota la idea de implementar mediante MUX2 un algoritmo bsico de comparacin denmeros binarios de n bits a partir de la comparacin bit a bit:

    C1

    D7 D4 M U X 4

    S

    D5 D6

    C0

    D3 D0 D1 D2 D15D12 D13 D14D11D8 D9 D10 C3C2

    A1A0B1B0

    1 lgico

    0 lgico

    Zc

    C1

    D7 D4 M U X 4

    S

    D5 D6

    C0

    D3 D0 D1 D2 D15D12 D13 D14D11D8 D9 D10 C3C2

    A1A0B1B0

    1 lgico

    0 lgico

    Yc

    Sea A = A1 A0 y B = B1 B0 dos n binarios de 2 bits.-Si A1 B1> A B>-Si B1 A1> B A>-Si A1 B1= Comparar bit 0 -Si A0 B0> A B>

    -Si B0 A0> B A>-Si A0 B0= A B=

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    12

    El esquema del circuito resultante se muestra en la siguiente figura. En este diseo se empleansolamente dos MUX2 para cada funcin de salida, lo que supone un ahorro considerable, respecto a laanterior propuesta.

    Ntese que en este esquema: -Si , en los MUX de la etapa de salida de ambas funciones se selecciona la lineaD2. Esto produce un uno en la funcin Zc y un cero en la funcin Yc. Como corresponde .

    -Si , en los MUX de la etapa de salida de ambas funciones se selecciona la lineaD1. Esto produce un cero en la funcin Zc y un uno en la funcin Yc. Como corresponde .

    -Si , en los MUX de la etapa de salida de ambas funciones se selecciona la linea D0, o D3.Con lo que la salida del sistema depender de la salida del MUX de la primera etapa, que comparalos bits A0 y B0. Como corresponde a segn el algoritmo de comparacin.

    Por otra parte:-Si , en los MUX de la primera etapa de ambas funciones se selecciona la linea D2.

    Esto produce un uno en la funcin Zc y un cero en la funcin Yc. Como corresponde .

    -Si , en los MUX de la primera etapa de ambas funciones se selecciona la lineaD1. Esto produce un cero en la funcin Zc y un uno en la funcin Yc. Como corresponde .

    -Si , en los MUX de la primera etapa de ambas funciones se selecciona la linea D0, o D3.Con lo que tanto Zc, como Yc tomaran el valor cero. Como corresponde a .

    B1

    Zc

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    A1

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    B0A0

    1 lgico

    0 lgico1 lgico

    B1

    Yc

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    A1

    C1

    D3

    D0MUX

    SD1

    D2

    C0

    B0A0

    1 lgico0 lgico

    1 lgico

    0 lgico

    0 lgico

    A1 B1> A B>A B>

    A1 B1< A B A B>A B>

    A0 B0< A B

  • Electrnica Digital: Exmenes Resueltos

    13

    2.- Dado el diagrama lgico de la Fig. 2a:a) Identificar las entradas y salidas del sistema as como los elementos de memoria que se utilizan.

    Qu modelo estructural de circuito secuencial sigue este sistema? Justifica la respuesta.b) Obtener las expresiones booleanas cannicas de las Funciones de Excitacin de los flip-flops y

    de Salida del sistema.c) Obtener un Diagrama de Transicin de Estados y, en base a l, mostrar cual ser la evolucin

    del sistema si se aplica a la entrada la secuencia de entrada X = 1 0 0 1 0 1 1 1 0 0 0 0.Considerar que inicialmente q1q0 = 00.

    d) Ilustrar dicho comportamiento completando el cronograma de la Fig. 2b.

    En este problema se pide, basicamente, completar paso a paso, todas las etapas del procedimientode anlisis de sistema secuenciales sncronos que hemos estudiado.

    a) El diagrama lgico de la figura representa a un sistema secuencial sncrono que posee dos elementosde memoria: un flip-flop JK y un T, disparados ambos por el flanco de bajada de una misma seal deentrada de reloj CK. Adems de sta, el sitema posee otra entrada, llamada X en el diagrama; yproporciona una salida, denominada Z.

    A cada elemento de memoria se ha asociado una variable de estado (q1, y q0 en la Fig.2a), portanto, como mximo, el sistema pora encontranse hasta en cuatro estados distintos,las cuatrocombinaciones posibles de estas dos variables.

    Del diagrama lgico es claro que el sistema sigue el modelo estructural de Mealy, dado que susalida Z depende tanto de las variables de estado, como de la entrada X.

    J

    K

    Q

    QNCK

    T Q

    QNCK

    Z

    CK

    X

    Fig 2a.

    CK

    Xq1q0

    Z Fig 2b.

    q0

    q1

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    14

    b) En primer lugar obtendremos las expresiones de la funcin de salida Z, y de las funciones deexcitacin de los flip-flops. Se llama as a las funciones booleanas que son entrada de los elementosdiferentes de memoria. En este caso tendremos tres funciones, que llamaremos J, K, y T, respectivamente.Todas estas funciones tendrn como variables independientes la entrada X, y las variables de estado q1, yq0. Las correspondientes expresines resultan de seguir las conexiones y expresar algebraicamente lafuncionalidad de los elementos combinacionales del circuito. Posteriormente, a partir de ellas,obtendremos su forma cannica, que es lo que se pide en este apartado.

    Del diagram lgico se tiene que

    ; ; .

    Una forma de llegar a una expresin cannica de cada una de estas funciones es obtener en primerlugar una expresin normalizada para cada una de ellas, y a continuacin, si es necesario, llevarlas alcorrespondiente mapa de Karnaugh. De ah a la forma cannica es un paso directo. Operando sobre llegamos a su forma cannica:

    Dado que las funciones y ya estn normalizadas, y que para la funcin

    tenemos ; llevandolas a un mapa de Karnaugh de tres

    variables resulta:

    Z X q1 q0, ,( ) X q1 q0 X q1 q0( )+=T X q1 q0, ,( ) X q0 q1+= J X q1 q0, ,( ) Xq0= K X q1 q0, ,( ) X q0=

    Z X q1 q0, ,( )Z X q1 q0, ,( ) X q1 q0 X q1 q0( )+= X q1 q0 X q1q0 q1q0+( )+= =

    Xq1q0 Xq1q0 Xq1q0++ 1 2 4, ,( )3= =

    T X q1 q0, ,( ) J X q1 q0, ,( )K X q1 q0, ,( ) K X q1 q0, ,( ) X q0= Xq0 Xq0+=

    xq1

    00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    0 11

    1

    0

    1 0 1

    T X q1 q0, ,( ) Xq0 q1+= 2 3 4 6 7, , , ,( )3=

    q0

    xq1

    00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    0 00

    0

    0

    0 1 1

    J X q1 q0, ,( ) Xq0= 5 7,( )3=

    q0

    xq1

    00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    0 01

    1

    1

    1 0 0

    J X q1 q0, ,( ) Xq0 Xq0+= 1 3 4 6, , ,( )3=

    q0

  • Electrnica Digital: Exmenes Resueltos

    15

    c) Para obtener el diagrama de transicin de estados del sistema, es necesario construir primero su tablade transicin de estados. Su aspecto, en este caso es el siguiente:

    Las columnas Entrada y Estado Presente, tomadas en conjunto, listan las ocho combinacionesposibles de las variables independientes de las funciones de salida y de excitacin de los flip-

    flops. Recordemos que cada estado del sistema corresponde a una combinacin de las variables de estado(q1q0). La columna Entrada de las FF (J, K y T) y Salida (Z) se completarn a partir de las expresionesde las funciones que hemos encontrado en el apartado anterior. Ntese que estas columnas, en conjunto,forman las tablas de verdad de dichas funciones. Por ltimo, se tiene una columna de Estado Siguiente.Esta columna indica cal ser el estado al que evoluciona el sistema a partir del estado presente y de laentrada. Esta columna ser la ltima en completarse, y se har teniendo en cuenta la evolucin de cada unade las variables de estado q1 y q0. Esta evolucin viene determinada por los valores de la columna Entradade los FF (JK para q1 y T para q0) y por la tabla de comportamiento de cada uno de ellos. Tras incorporara la taba las funciones encontradas en el apartado b) esta resulta:

    Entradas

    X

    Estado presente

    q1 q0

    Estado siguiente

    Q1 Q0

    Entradas de FF

    J K T

    Salidas

    Z

    0 0 0

    0 0 1

    0 1 0

    0 1 1

    1 0 0

    1 0 1

    1 1 0

    1 1 1

    Entradas

    X

    Estado presente

    q1 q0

    Estado siguiente

    Q1 Q0

    Entradas de FF

    J K T

    Salidas

    Z

    0 0 0 0 0 0 0

    0 0 1 0 1 0 1

    0 1 0 0 0 1 1

    0 1 1 0 1 1 0

    1 0 0 0 1 1 1

    1 0 1 1 0 0 0

    1 1 0 0 1 1 0

    1 1 1 1 0 1 0

    X q1 q0, ,( )

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    16

    Finalmente, para completar la tabla, rellenando la columna de Estado siguiente, se utilizan las tablas decomportamiento de cada uno de los flip-flops, que se muestan a continuacin:

    Se utiliza la subcolumnas JK de la columna Entrada de los FF, junto con la tabla de comportamiento delflip-flop JK, para completar la subcolumna Q1 de la columna Estado Siguiente. Se utilizan lassubcolumnas T de la columna Entrada de los FF, junto con la tabla de comportamiento del flip-flop T, paracompletar la subcolumna Q0 de la columna Estado Siguiente. El resultado es:

    Si codficamos los estados obtenemos la siguiente Tabla de Transicin de estados:

    Entradas

    X

    Estado presente

    q1 q0

    Estado siguiente

    Q1 Q0

    Entradas de FF

    J K T

    Salidas

    Z

    0 0 0 0 0 0 0 0 0

    0 0 1 0 1 0 1 0 1

    0 1 0 1 1 0 0 1 1

    0 1 1 0 0 0 1 1 0

    1 0 0 0 1 0 1 1 1

    1 0 1 1 1 1 0 0 0

    1 1 0 0 1 0 1 1 0

    1 1 1 1 0 1 0 1 0

    Nombre y smbolo Tabla de comportamiento

    CK J K Qn+1 Qn+1 0 0 0 1 1 0 1 1

    Significado

    Qn0 11 0Qn

    Mantiene

    Puesta a cero

    Puesta a uno

    Invierte

    J

    K

    Q

    QNCK

    CK T Qn+1 Qn+1 0 1

    Significado

    Qn QnQn Qn

    Mantiene

    Invierte

    Flip-flop T disparado por flanco de bajada

    T Q

    QNCK

    Flip-flop T disparado por flanco de bajada

    ABCD

    Estados Cdigos q1 q0

    0 0 0 1 1 0 1 1

    EpEs Salida S

    X=0 X=1 X=0 X=1

    1000

    0110

    BDBC

    ABDA

    ABCD

  • Electrnica Digital: Exmenes Resueltos

    17

    Finalmente de esta tabla se obtiene el Diagrama de Transicin de Estados:

    Se pide tambin mostrar la evolucin del sistema a partir del estado inicial q1q0 = 00 = A, para lasecuencia X = 1 0 0 1 0 1 1 1 0 0 0 0.La evolucin ser la siguiente:

    Entrada: 1 -> 0 -> 0 -> 1 -> 0 -> 1 -> 1 -> 1 -> 0 -> 0 -> 0 -> 0Estados: A -> B -> B-> B -> D -> A -> B -> D -> C -> D -> A -> A -> ASalida Z: 1 -> 1 -> 1 -> 0 -> 0 -> 1 -> 0 -> 0 -> 1 -> 0 -> 0 -> 0 ->

    d) El cronograma de la figura muestra la evolucin temporal de las variables de estado q1q0 y de salida Zpara la secuencia de entrada estudiada en el apartado anterior:

    En l se aprecia cmo la variables de estado del sistema, cambian sncronizadas con el flanco de bajada dela seal de reloj, y segn la secuencia encontrada en el apartado anterior: A -> B -> B-> B -> D -> A -> B-> D -> C -> D -> A -> A -> A. Por su parte, dado que el sistema sigue un modelo de Mealy, la salidaevoluciona siguiendo cambios tanto de las variables de estado, como de la variable de entrada, comoilustran las flechas en la figura. Llama la atencin, por ejemplo, la transicin esprea de corta duracin queaparece al principio de la secuencia de salida, y que no se ha reflejado en la evolucin de la salida en elapartado anterior, que solo refleja variaciones estables de las seales. Esta transicin ocurre porque elsistema ha evolucionado del estado A al B con el flanco de bajada del reloj, pero la seal X trada todavaun tiempo hasta cambiar de uno a cero. Mientras se produce este cambio, el sistema est en el estado Bcon entrada uno, situacin a la que corresponde un cero a la salida. Esta situacin es transitoria yfinalmente tras el cambio de la seal de entrada se alcanza la situacin estable.

    A

    BD

    C

    0/0

    X/Z

    0/0

    1/0

    1/0

    Ep

    1/1

    1/0

    0/1

    0/1

    A C DDBADB AEp

    CK

    Xq1q0

    Z

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    18

    3.- Sobre una lnea de datos se recibe informacin binaria, sincronizada con una seal de reloj CK.Se ha convenido que la informacin recibida sea correcta siempre que no se reciban dos o ms unosconsecutivos, o cuatro o ms ceros consecutivos. Para detectar errores en la transmisin se deseadisponer de un sistema digital que analice dicha informacin de manera sncrona y a medida questa se recibe por lnea, y proporcione a su salida una seal que tome el valor uno cada vez que seproduzca una condicin de error; y permanezca a ese valor, mientras persista dicha condicin. Seasume tambin que cada vez que se reinicia el sistema, con la correspondiente seal de Reset, lohace en un estado tal que el sistema asume que el ltimo bit recibido por la lnea haba sido un uno.

    a) Obtener un diagrama de transicin de estados para dicho sistema secuencial que siga el modelode Mealy. Justifica que el autmata descrito en ese diagrama cumple con los requerimientosdel enunciado, explicando brevemente su evolucin para una secuencia de entrada dada.

    b) Obtener un diagrama de transicin de estados para dicho sistema que siga el modelo de Moore.Justifica que el autmata descrito en ese diagrama cumple con los requerimientos delenunciado, explicando brevemente su evolucin para una secuencia de entrada dada.

    c) Obtener un diagrama lgico para el sistema a partir de uno de los diagramas de transicin deestados obtenidos en a) y b). Requerimientos de diseo: En la solucin propuesta se deber utilizar el menor nmero posiblede elementos de memoria y de lgica combinacional. Adems se deber emplear al menos unflip-flop JK y otro T.

    Es sistema secuancial que se propone disear debe tener tres entradas y una salida. Una de lasseales es la seal de reloj CK que est sincronizada con la secuencia de datos binarios en serie recibida,entrada D. Adems se tiene una entrada Reset, que permite llevar al sistema a un estado conocido. Lasalida es una nica seal S, que toma el valor cero o uno, en funcin de la secuencia de bits recibidos. Seconsidera error cuando se detecta que se han recibido dos o ms unos consecutivos, o cuatro o msceros consecutivos. En ambas circustancias la salida marca el error tomando el valor uno,permaneciendo en esa situacin, mientras persista la condicin de error.

    El sistema que hay que disear puede representarse mediante el siguiente diagrama de bloques:

    que recoge el esquema general de un suistema secuencial sncrono. En l, se pone de manifiesto que lasseales CK y Reset, controlan directamente los elementos de memoria, que codifican el estado delsistema: CK fijando en momento en que se actualizan los elementos de memoria; y Reset llevando alsistema a un estado inicial conocido. Por su parte el sistema combinacional evala la salida S y lasfunciones de entrada de los elementos de memoria (Entradas FF) para obtener la transicin de estadosdeseada, en funcin del estado presente, y la entrada D.

    SistemaCombinacional

    Memoria

    D S

    CKReset

    Entradas FF

    Estado

  • Electrnica Digital: Exmenes Resueltos

    19

    a) En este apartado se pide obtener un diagrama de transicin de estados, que recoja el funcionamientodel sistema, y a partir del cual se pueda realizar una implementacin que siga el modelo de Mealy(tambin llamado mquina de estados de Mealy). Esto es, un circuito en el cual la funcin de salida S,dependa de las variables de estado y de la entrada. Un posible diagrama es el siguiente:

    Antes de explicar cmo la funcionalidad del sistema est recogida en este diagrama, y convencernosde que es correcto, recordaremos el significado de los elementos que aparecen en l. Los nodosrepresentan los estados del sistema. Los arcos orientados representan el sentido de la transicinentre estados, (que se produce con el instante activo de la seal de reloj). Y la leyenda sobre estosmuestra el valor de la entrada que produce dicha transicin, y el valor que, en consecuencia, toma lasalida. Ntese que con esta notacin se quiere destacar la idea de que la salida depende tanto de la entrada,como del estado origen de la transicin, como corresponde al modelo de Mealy.

    Al construir este diagrama, tambin se ha asumido que A es el estado inicial del sistema, que es elque se alcanza cada vez que se activa la seal de Reset. (Recurdese que en el enunciado se dice que sesuponga que el estado inicial sea aquel en el que se recuerde que el ltimo bit recibido por la lneahaba sido un uno. Ntese que este es el caso del estado A, al que se llaga desde cualquier estado, cadavez que por la entrada D llega un uno). As, a fin de no complicar excesivamente el diagrama, se haobviado esta circunstancia, no contemplando la seal de Reset en el diagrama y asumiendo implicitamenteesta funcionalidad. (Esto supone que en la etapa de diseo habr emplear flip-flop con entrada de Reset oClear, y que habr que codificar convenientemente este estado, para que se corresponda con la accin que,de esta entrada, se espera).

    Vamos a pasar ya a describir el funcionamiento del sistema en base al diagrama:- Si como hemos dicho, partimos del estado inicial A, donde se recuerda que el ltimo dato recibidofu un uno, el diagrama muestra que, si la entada es de nuevo un uno, el sistema permanece eneste estado, y la salida es toma el valor uno, indicando secuencia errnea, puesto que se hanrecibido dos unos consecutivos.- En cambio, si estando en el estaso A, llega un cero, el sistema evoluciona a un nuevo estado,estado B, en el que se recuerda que se ha recibido un cero; marcandos a la salida como secuenciacorrecta.- Si estando en B, los dos siguientes bits recibidos son tambien cero, el sistema evoluciona por losestados C y D. En C se recuerda que se han recibido dos ceros consecutivos, lo que corresponde asecuencia vlida, salida S a cero. Mientras que en D se recuerda que se han recibido tres cerosconsecutivos, lo que tambin corresponde a secuencia vlida, salida S a cero.- Si estando en C o D se recibiera un bit uno, desde ambos se transitara al estado inical A,mostrando a la salida que la secuencia es correcta, salida S a cero.- Si estando en D se recibe un nuevo bit a cero, el sistema no cambia de estado, sin embargo lasecuencia es ahora errnea y por tanto se activa la salida, S a uno. Esta situacin se mantendrmientras a la entrada no se reciba un uno, en cuyo caso el sistema evoluciona al estado inicial A,mostrando a la salida secuencia correcta, S a cero. Ntese que el papel del estado D es el derecordar que se han recibido tres o ms ceros consecutivos.

    Est claro que este funcionamiento es conherente y recoge las especificaciones del sistema.

    A B DC

    1/1

    D/S

    0/0

    1/0 1/0

    Ep

    1/00/1

    0/0 0/0

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    20

    b) En este apartado se pide obtener un diagrama de transicin de estados, a partir del cual se puedarealizar una implementacin que siga el modelo de Moore (tambin llamado mquina de estados deMoore). Un esquema general para estos sistemas es:

    En l se destaca la caracterstica principal de este modelo, que es que la funcin de salida solo depende delas variables de estado presente, mientras que la entrada solo interviene en la determinacin de laevolucin del estado del sistema.Un posible diagrama de transicin de estados, modelo de Moore, para el sistema aqu propuesto, es elsiguiente:

    SistemaCombinacional

    Memoria

    D

    S

    CKReset

    Entradas FF

    Estado

    Estado Siguiente

    SistemaCombinacional

    Salida

    A/0

    B/0

    D/0

    C/0

    Ep/S1

    1

    D

    10

    0

    0

    F/1

    E/0

    0

    0

    0

    1

    1

    1

  • Electrnica Digital: Exmenes Resueltos

    21

    De nuevo, antes de explicar cmo la funcionalidad del sistema est recogida en este diagrama,recordaremos el significado de los elementos que aparecen en l. Los nodos representan los estados delsistema, y la leyenda en ellos, ahora incluye, adems del nombre del estado, el valor que toma la salidamientras el sistema permanezca en l. Por su parte los arcos orientados representan el sentido de latransicin entre estados, (que se produce con el instante activo de la seal de reloj); y la leyenda sobreellos muestra el valor de la entrada que produce dicha transicin. Ntese que con esta notacin sequiere destacar la idea de que la salida depende solo del estado presente, como corresponde al modelo deMoore.

    Al igual que en el caso anterior, al construir este diagrama, tambin se ha asumido que A es el estadoinicial del sistema, que es el que se alcanza cada vez que se activa la seal de Reset. (Ntese adems queA, es el estado al que se evoluciona, desde cualquier otro, cada vez que por la entrada D llega un uno yno se produce secuencia erronea). As, lo mismo que se ha hecho en el apartado anterior, a fin de nocomplicar excesivamente el diagrama, se ha obviado reflejar esta circunstancia, no contemplando la sealde Reset en el diagrama, y asumiendo implicitamente esta funcionalidad. (Esto supone que en la etapa dediseo habr emplear flip-flop con entrada de Reset o Clear, y que habr que codificar convenientementeeste estado, para que se corresponda con la accin que, de esta entrada, se espera).

    El funcionamiento del sistema en base al diagrama es el siguiente:- Partimos del estado inicial A, estado en el que se recuerda que el ltimo dato recibido fue un unoy no hay error. El diagrama muestra que, si la entada es un uno, el sistema evoluciona a un nuevoestado, el B, donde la salida toma el valor uno, indicando secuencia errnea, puesto que se hanrecibido dos unos consecutivos. Asi pues, B es el estado donde se recuerda que se ha recibido ununo y hay error. (Obsrvese que el sistema no puede permanecer en A puesto que A recuerda unorecibido sin error).- En cambio, si estando en el estando A, llega un cero, el sistema evoluciona a otro nuevo estado,estado C, en el que se recuerda que se ha recibido el primer cero y no hay error.- Si estando en B, se recibe un uno el sistema permanece en B mostrando error a la salida. Ypermanecer en l mientras en la secuencia de bits recibidos no aparezca un cero. En cuyo caso, essistema evolucionar hacia el estado C. No olvidemos que C es el estado que recuerda que se harecibido el primer cero y no hay error.- Si estando en C, se recibe un uno, el sistema vuelve al estado A, dado que no hay condicin deerror en esta secuencia. (El sistema no puede ir a B puesto que B recuerda uno recibido con error).- Si estando en C, los dos siguientes bits recibidos son tambien cero, el sistema evoluciona pasandoprimero a D y, tras el segundo cero a E. En D se recuerda que se han recibido dos cerosconsecutivos, lo que corresponde a secuencia vlida, salida S a cero. Mientras que en E se recuerdaque se han recibido tres ceros consecutivos, lo que tambin corresponde a secuencia vlida, salidaS a cero.- Si estando en D o E se recibiera un bit uno, desde ambos se transitara al estado inical A, dadoque no hay condicin de error en esta secuencia.- Si estando en E se recibe un nuevo bit a cero, el sistema cambia al estado F, donde, dado que lasecuencia recibida es ahora errnea, se activa la salida, S a uno. - El sistema permanecer en este estado mientras que a la entrada no se reciba un uno. Esto es Frecuerda que se han recibido ms de tres ceros y por tanto se est indicando errror.- Si estando en F se recibe un uno, el sistema evoluciona al estado inicial A, dado que la llegada deeste uno no es condicin de error.

    Recurdese que en la mquina de estados de Moore, la salida del sistema est determina solamente por elestado presente.

    Es claro que el funcionamiento aqu descrito es conherente y recoge las especificaciones del sistema.

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    22

    c) Recordemos que en este apartado se pide realizar un dseo a partir de uno de los dos diagramasobtenidos en los apartados anteriores. Cmo requerimiento adicional indica que En la solucin propuestase deber utilizar el menor nmero posible de elementos de memoria y de lgica combinacional. Ademsse deber emplear al menos un flip-flop JK y otro T.

    A continuacin se completar el proceso de diseo para un sistema que sigue el diagrama de estadosdel tipo Mealy, (apartado a)). Se deja como ejecicio para el lector disear un sistema que siga el diagramatipo Moore (apartado b)).

    Como primer paso en el proceso de diseo construiremos una tabla de transicin de estados, a partirde la informacin recogida en el correspondiente diagrama. En l aparecen cuatro estados.

    Con la ayuda de esta tabla es fcil comprobar que no existen estados equivalentes:- A y D no pueden ser equivalentes entre si, puesto que tienen salidas distintas.- Por la misma razn ninguno de ellos puede ser equivalente ni a B ni a D.- B y C tampoco pueden ser equivalentes entre si, puesto que, aunque proporcionan la misma salidapara los dos valores de la entrada D, desde cada uno de ellos, para D = 0, se evoluciona a estados queno son equivalentes.

    As pues cuatro es el menor nmero posible de estados y por tanto dos ser el nmero mnimo devariables de estado necesarias para codificarlos. De modo que dos ser tambin el menor nmero posiblede elementos de memoria que habr que utilizar en cualquier realizacin prctica de este sistema. En estecaso eligiremos un flip-flop JK y uno T, siguiendo las indicaciones del enunciado. Por ltimo para cumplirel requisito de emplear la menor cantidad posible de lgica combinacional, obtendremos expresionesmnimas para cada una de las funciones que haya que implementar.

    El segundo paso en el proceso de diseo es codificar los estados del sistema utilizando las variablesde estado asociadas a cada elemento de memoria. Llamaremos qJK y qT respectivamente a las variables deestado asociadas al filp-flop del tipo que indica el subndice. En general, apartir de aqu se abren variasopciones de asignacin de un cdigo a cada estado, cada una de las cuales dar lugar a diferentes circuitos,aunque todos ellos realizan la misma funcionalidad. Sin embargo, en este caso debemos recordar que en laconstruccin del diagrama de transicin de estados asuminos una condicin: El estado A iba a ser el estadoinicial del sistema, aquel que se alcanza cuando se active la entrada Reset. Para el resto de los estados nohay en principio restriccin, y dado que esta asignacin no es tan crtica como en los sistemas asncronos,en los que hay que evitar las situaciones de carrera, eligiremos una de ellas sin entrar en msconsideraciones. Se deja como ejecicio para el lector explorar diferentes soluciones, eligiendo otrasposibles asignaciones.

    EpNombre

    EsD=0 D=1

    SALIDAD=0 D=1

    A B A 0 1

    B C A 0 0

    C D A 0 0

    D D A 1 0

  • Electrnica Digital: Exmenes Resueltos

    23

    En la figura se muestra la estructura general que seguir el diseo aqu propuesto. Donde, y son las funciones de excitacin de los flip-flops y

    la funcin de salida del sistema.

    Una posible asignacin de cdigo a los estados es la siguiente:

    Con esta asignacin podemos empezar a construir la tabla de transicin de estados decodificados.

    A esta tabla le falta completar la columna correspondiente a las entradas de los flip-flops, que nospermitir conocer las funciones de excitacin de los elementos de memoria, J K, T; y finalmente sintetizarel bloque Sistema Combinacional, que se muestra en la anterior figura.

    Para ello ser necesario utilizar la trabla de excitacin de los flip-flops JK y T. Esta tabla permiteconocer cul ha de ser el valor que hay que proporcionar a la entrada de cada elemento de memoria, paraobtener la transicin de la variable de estado deseada.

    Entradas D

    Estado presenteqJK qT

    Estado siguienteQJKQT

    Entradas de FFJK T

    SalidasS

    0 0 0 0 1 0

    0 0 1 1 1 0

    0 1 0 1 0 1

    0 1 1 1 0 0

    1 0 0 0 0 1

    1 0 1 0 0 0

    1 1 0 0 0 0

    1 1 1 0 0 0

    J D qJK qT, ,( ) K D qJK qT, ,( ) T D qJK qT, ,( )S D qJK qT, ,( )

    qT

    qJK

    D

    qT

    qJK

    qT

    qJK

    qT

    J

    K

    Q

    QNCK

    CK

    J

    K

    T

    Sistema

    qJK

    SCombinacional

    CL

    Reset

    T Q

    QNCK

    CL

    ESTADOS qJK qTA B C

    0 00 11 1

    D 1 0

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    24

    Las tablas que necesitamos son las siguientes:

    Hacieno uso de ellas se llega a:

    A continuacin llevaremos las tablas de las funciones J, K, T y S a los correspondientes mapas deKarnaugh, para obtener las expresiones mnimas a partir de las cuales sintetizaremos el sistema.

    Entradas D

    Estado presenteqJK qT

    Estado siguienteQJKQT

    Entradas de FFJK T

    SalidasS

    0 0 0 0 1 0 x 1 0

    0 0 1 1 1 1 x 0 0

    0 1 0 1 0 x 0 0 1

    0 1 1 1 0 x 0 1 0

    1 0 0 0 0 0 x 0 1

    1 0 1 0 0 0 x 1 0

    1 1 0 0 0 x 1 0 0

    1 1 1 0 0 x 1 1 0

    Tabla de excitacin J KQn Qn+10 x1 xx 1x 0

    del flip-flop JK 0 00 11 01 1

    Tabla de excitacin T Qn Qn+10 1 1 0

    del flip-flop T 0 00 11 01 1

    DqJK

    00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    0 xx

    x

    1

    0 0 x

    J D qJK qT, ,( ) DqT=

    qT D

    qJK00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    x 00

    1

    x

    x x 1

    K D qJK qT, ,( ) D=

    qT

    DqJK

    00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    0 10

    0

    0

    1 0 0

    S D qJK qT, ,( ) DqJKqT DqJKqT+=

    qT D

    qJK00 01 11 10

    0 1 3 2

    4 5 67

    0

    1

    1 01

    0

    0

    0 1 1

    T D qJK qT, ,( ) DqJKqT DqT qJKqT+ +=

    qT

  • Electrnica Digital: Exmenes Resueltos

    25

    Finalmente dibujaremos su diagrama lgico.

    D qJK

    qT

    qJK

    qTT Q

    QNCK

    J

    K

    Q

    QNCK

    CK

    J

    K

    T

    S

    CL

    CL

    Reset

  • R. Navas Gonzlez. Dpto. de Electronica. Universidad de Mlaga

    26