Tema 2: Circuitos Secuenciales Contenidos 2.1 Introducción 2.2 Descripción de un Sistema Secuencial 2.3 Elementos con Memoria 2.4 Análisis y Síntesis de Circuitos Secuenciales 1 2.1 Introducción Diagrama de un Sistema Secuencial Entradas z1 z2 x1 x2 xn Circuito Combinacional Estado Variables de Estado zp Estado Presente qi Salidas Próximo y1 y2 Y1 Y2 Qi Elementos con yi (t 1) Yi (t ) Memoria ym Ym 2 2.1 Introducción Clasificación de los Sistemas Secuenciales •Asíncronos: Para una combinación de señales de entrada el sistema evoluciona sin control externo, hasta que llega a un estado interno estable •Síncronos: La evolución del sistema es controlada por una señal de impulsos externos, que se denomina reloj del sistema 3 2.1 Introducción Sistemas Síncronos •Disparado por nivel •Disparado por flanco •alto •bajo •de subida •de bajada Disparado por nivel alto Disparado por flanco (de subida) 4 2.2 Descripción de un Sistema Secuencial Diagramas de estado qi X /f(X,qi) X /f(X,qi) qj X /f(X,qj) Mealy Salidas=f(entradas, estado actual) X qi /f(X,qj) X qj /f(X,qj) Moore X Salidas=f(estado actual) 5 2.2 Descripción de un Sistema Secuencial Ejemplo de un diagrama de estado (Contador 0-3) 0/1 1 1/1 0 0/0 1 1 /1 1 0 1/0 0/0 0 1 0 1/2 3 0/3 0/2 2/2 3/3 2 0 1 1/3 Mealy Moore 6 2.2 Descripción de un Sistema Secuencial Tabla de estado/salida x0 x1 q0 Qi, f ( x0 , q0 )Ql , f ( x1 , q1 ) q1 Qj, f ( x0 , q0 ) qm1 Qs , f ( x0 , q0 ) Mealy xn 1 Qs , f ( xn1 , qn1 ) x0 x1 xn 1 S q0 Qi Ql Qs f (q0 ) q1 Qj f (q1 ) qm1 Qs Moore f (qn1 ) 7 2.2 Descripción de un Sistema Secuencial Tabla de estado/salida 0 1 2 3 0 0,0 1,1 2,2 3,3 Mealy 1 1,1 2,2 3,3 0,0 0 1 2 3 0 0 1 2 3 1 1 2 3 0 S 0 1 2 3 Moore 8 2.3 Elementos con Memoria Biestable R-S R Tabla de Verdad Q disparado por flanco de subida S Ck R Q Q (Reset) S R S Qt+1 Qt+1 0 0 Qt Qt 0 1 1 0 1 0 0 1 1 1 ? ? Q Tabla de Excitación (Set) Qt Qt+1 R S 0 0 X 0 S 0 1 0 1 Q 1 0 1 0 1 1 0 X CK R Q t 9 2.3 Elementos con Memoria Tabla de Verdad Biestable J-K J K Ck Q Q J K Qt+1 Qt+1 0 0 Qt Qt 0 1 0 1 1 0 1 0 1 1 Qt Qt Tabla de Excitación ClK J Qt Qt+1 J K K 0 0 0 X 0 1 1 X 1 0 X 1 1 1 X 0 Q Q t 10 2.3 Elementos con Memoria Tabla de Verdad Biestable D D Q Ck Q D 0 1 Qt+1 Qt+1 0 1 1 0 Tabla de Excitación ClK D Q Q t Qt 0 0 1 1 Qt+1 0 1 0 1 D 0 1 0 1 11 2.3 Elementos con Memoria Tabla de Verdad Biestable T T Q Ck Q T 0 1 Tabla de Excitación ClK T Q Q Qt+1 Qt+1 Qt Qt Qt Qt t Qt 0 0 1 1 Qt+1 0 1 0 1 T 0 1 1 0 12 2.4 Análisis y Síntesis de Circuitos Secuenciales Síntesis de un circuito secuencial • Especificaciones • Diagrama de estados • Tabla de estado/salida • Codificación de estados •Tabla de Transición •Tabla de Excitación de los biestables • Obtención de las expresiones mínimas • Implementación • Análisis y verificación del circuito 13 2.4 Análisis y Síntesis de Circuitos Secuenciales Especificaciones •Diseñar un contador módulo 4 (cuenta de 0 a 3 y repite) con una señal de avance/parada. Avanza cuando vale 1 y detiene la cuenta cuando vale 0. Diagrama de estado del contador 0 0/1 1/1 0 0/0 1 0 1/0 0/0 1 1 /1 1 1 0 1/2 3 0/3 1/3 Mealy 0/2 2/2 3/3 2 0 1 Moore 14 2.4 Análisis y Síntesis de Circuitos Secuenciales 0 1 2 3 Entrada,E Entrada,E 0 0,0 1,1 2,2 3,3 0 0 1 2 3 1 1,1 2,2 3,3 0,0 Estado Siguiente Mealy Estado actual Estado actual Tabla de estado/salida 0 1 2 3 1 1 2 3 0 S 0 1 2 3 Estado Siguiente Moore 15 2.4 Análisis y Síntesis de Circuitos Secuenciales Codificación de estados Nombre de Estado Código Binario 0 00 1 01 2 10 3 11 Número de Bits Menor entero >= log2(Nº de estados) Número biestables = Número de Bits Cada bit será nominado mediante una variable de estado qi 16 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de estado/salida q1q0 00 01 10 11 Q1Q0 , S1S0 Q1Q0 , S1S0 0 00,00 01,01 10,10 11,11 1 01,01 10,10 11,11 00,00 Mealy Q1Q0 q1q0 00 01 10 11 0 00 01 10 11 Q1Q0 1 01 10 11 00 S1S0 S 00 01 10 11 Moore 17 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de transición de estados(Mealy) Tabla de transición Tabla de Estado/Salida 00 01 10 11 0 00,00 01,01 10,10 11,11 1 01,01 10,10 11,11 00,00 q1 q0 E Q1 Q0 S1 S0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 18 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de transición de estados(Moore) Tablas de transición Tabla de Estado/Salida 00 01 10 11 0 00 01 10 11 1 01 10 11 00 S 00 01 10 11 q1 q0 E Q1 Q0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 q1 q0 S1 S0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 0 1 19 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de excitación Tabla de Excitación, D ¡¡ Dependerá del biestable usado !! q1 q0 E Q1 Q0 D1 D0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 Qt Qt+1 D 0 0 0 0 1 1 1 0 0 1 1 1 Entradas a cada biestable Tabla de transición 20 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas D1 q1q0 00 01 D0 11 10 E q1q0 00 01 11 10 E 0 0 0 1 1 0 0 1 1 0 1 0 1 0 1 1 1 0 0 1 D1 E q1 q0 E q1 q1 q0 D0 E q0 E q0 21 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas Salidas(Moore) S0 S1 q1 q1 0 1 0 0 0 1 1 1 q0 0 1 q0 0 0 1 1 0 1 S1 q1 S 0 q0 22 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas Salidas (Mealy) S0 S1 q1q0 E 00 01 11 10 0 0 0 1 1 0 1 0 q1q0 E 00 01 11 10 1 0 0 1 1 0 1 1 1 0 0 1 S1 E q1 q0 E q1 q1 q0 S 0 E q0 E q0 23 2.4 Análisis y Síntesis de Circuitos Secuenciales Implementación U1 4 D1 5 12 13 RESET1 RELOJ9 U2A 1D 1Q 1Q 2D 2Q 2Q 3D 3Q 3Q 4D 4Q 4Q CLK 2 3 7 6 10 11 15 14 Q0 NQ0 Q1 NQ1 X 1 2 U3A NX 1 Q0 2 3 74LS175 U5A 7408 1 3 9 X 8 NQ0 U4A D0 2 U3C X 1 NQ1 2 Q0 13 NX 7404 CLR D0 7432 10 7408 12 U5C 9 8 7411 10 U3B 7432 NX 4 U5B 4 6 Q1 5 6 D1 5 7408 7432 U3D Q1 12 11 NQ0 13 7408 24 2.4 Análisis y Síntesis de Circuitos Secuenciales Verificación y Pruebas RELOJ E CLR Q1 Q0 0s 00 10 01 20 10 30 40 11 00 01 50 60 70 80 Tiempo(ms) 10 90 100 110 11 00 01 120 130 140 150 25 2.4 Análisis y Síntesis de Circuitos Secuenciales Especificaciones • Diseñar un circuito verificador de paridad para caracteres de 4 bits. El circuito recibirá por una línea serie los 4 bits. Coincidiendo con el 4º bit sacará como salida un 1 si y solo si se han recibido un número par de unos. Una vez recibido los cuatro bits se volverá a esperar un nuevo carácter de 4 bits. Durante la recepción de los 3 primeros bits la salida será 0. 26 2.4 Análisis y Síntesis de Circuitos Secuenciales Diagrama de estados 0 1 0 I1 / 0 0 0 I2/0 1 I0/ 0 I3/ 0 1 1 Moore 1 1 P1 / 0 1 P2 / 0 0 P3 / 0 0 P0 / 1 0 0 1 27 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de estado-salida I0 I1 I2 I3 P0 P1 P2 P3 0 P1 I2 I3 I0 P1 P2 P3 P0 1 I1 P2 P3 P0 I1 I2 I3 I0 S 0 0 0 0 1 0 0 0 28 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de estado-salida I0 I1 I2 I3 P0 P1 P2 P3 0 P1 I2 I3 I0 P1 P2 P3 P0 1 I1 P2 P3 P0 I1 I2 I3 I0 S 0 0 0 0 1 0 0 0 000 001 010 011 100 101 110 111 0 101 010 011 000 101 110 111 100 1 001 110 111 100 001 010 011 000 S 0 0 0 0 1 0 0 0 29 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de transición de estados q2 q1 q0 E Q2 Q1 Q0 S 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 1 0 0 1 0 1 0 1 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 30 2.4 Análisis y Síntesis de Circuitos Secuenciales Tabla de excitación (J-K) q2 q1 q0 E Q2 Q1 Q0 J2 K2 J1 K1 J0 K0 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 1 0 0 1 0 1 0 1 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 1 0 1 0 1 X X X X X X X X X X X X X X X X 0 1 0 1 0 1 0 1 0 0 1 1 X X X X 0 0 1 1 X X X X X X X X 0 0 1 1 X X X X 0 0 1 1 1 1 X X 1 1 X X 1 1 X X 1 1 X X X X 1 1 X X 1 1 X X 1 1 X X 1 1 31 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas J2 K2 q2 q1 q0 E 10 q2 q1 q0 E 00 01 11 00 01 11 10 00 1 0 X X 00 X X 0 0 01 0 1 X X 01 X X 1 1 11 1 1 X X 11 X X 1 1 10 0 0 X X 10 X X 0 0 J 2 E q1 E q0 E q0 q1 K2 E 32 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas J1 K1 q2 q1 q0 E 00 01 11 00 0 X 01 0 11 10 10 q2 q1 q0 E 00 01 11 10 X 0 00 X 0 0 X X X 0 01 X 0 0 X 1 X X 1 11 X 1 1 X 1 X X 1 10 X 1 1 X J1 q0 K1 q0 33 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas J0 K0 q2 q1 q0 E 00 01 11 10 q2 q1 q0 E 00 01 11 10 00 1 1 X X 00 X X 1 1 01 1 1 X X 01 X X 1 1 11 X X 1 1 11 1 1 X X 10 X X 1 1 10 1 1 X X J0 1 K0 1 34 2.4 Análisis y Síntesis de Circuitos Secuenciales Obtención de las expresiones mínimas S q2 q1 00 01 11 10 00 0 0 0 1 01 0 0 0 1 11 0 0 0 0 10 0 0 0 0 q0 E S q2 q1 q0 35 2.4 Análisis y Síntesis de Circuitos Secuenciales Implementación 36 2.4 Análisis y Síntesis de Circuitos Secuenciales Verificación y Pruebas Clk Clear 1 0 0 0 1 1 0 1 1 1 1 1 0 1 1 0 1 1 1 1 X Salida 0s 2ms 4ms 6ms 8ms 10ms 12ms 14ms 16ms 18ms Tiempo Hidalgo López, José A.; Fernández Ramos Raquel; Romero Sánchez, Jorge (2014). Electrónica. OCW-Universidad de Málaga. http://ocw.uma.es. Bajo licencia Creative Commons AttributionNonCommercial-Share-Alike 3.0 Spain 37 20ms