Circuitos Secuenciales Máquinas de Estado Por: Carlos A. Fajardo [email protected] ¿Qué hemos visto? Sistemas Digitales Profesor: Carlos Fajardo 2 Estructura de un circuito secuencial síncrono Lógica de Salida Entrada externa Lógica del estado Siguiente D_bus D Q Q_bus Registro clk Sistemas Digitales Profesor: Carlos Fajardo 3 Contador Binario Ascendente Salida clk D Q Q_bus Registro +1 D_bus Reset Reset Sistemas Digitales Profesor: Carlos Fajardo 4 Registros de desplazamiento Lógica de Salida Entrada serie Desplaza 1 - bit D_bus D Q Q(0) Q_bus Registro clk Sistemas Digitales Profesor: Carlos Fajardo 5 Maquina de estados finitos Finite State Machine (FSM) Sistemas Digitales Profesor: Carlos Fajardo 6 Máquina de estados finitos • Circuitos secuenciales regulares: La lógica del estado siguiente tiene un patrón definido (un contador , desplazar un bit) – Contadores – Registros. • Máquina de estados finitos: La lógica del estado siguiente NO tiene un patrón definido. Sistemas Digitales Profesor: Carlos Fajardo 7 Generalidades de las FSM • Son circuitos síncronos. • El circuito va cambiando de estado con cada flanco de reloj. • El estado siguiente está determinado por la lógica del estado siguiente. Sistemas Digitales Profesor: Carlos Fajardo 8 Clasificación según las salidas Lógica de Salida Mealy Entrada externa Lógica del estado Siguiente D_bus D Q Registro clk Sistemas Digitales Profesor: Carlos Fajardo Salida Mealy Q_bus Lógica de Salida Moore Salida Moore 9 Clasificación según las salidas X Lógica de Salida Mealy Entrada externa Lógica del estado Siguiente D_bus D Q Registro clk Sistemas Digitales Profesor: Carlos Fajardo Q_bus Lógica de Salida Moore Salida Mealy Salida Moore 10 Nuestro Enfoque: Salidas tipo Moore Entrada externa Lógica del estado Siguiente D_bus D Q Q_bus Lógica de Salida Moore Salida Moore Registro clk Sistemas Digitales Profesor: Carlos Fajardo 11 FSM Diagrama de Estados Sistemas Digitales Profesor: Carlos Fajardo 12 Diagrama de Estados Contados Ascente/Descendente a/y S0 Y=00 a a a a S1 Y=01 S3 Y=11 a a Sistemas Digitales entradas / salidas a S2 Y=10 Profesor: Carlos Fajardo a 13 Diagrama de Estados Contados Ascente/Descendente a/y S0 Y=00 a a a a S1 Y=01 S3 Y=11 a a Sistemas Digitales a S2 Y=10 a Profesor: Carlos Fajardo • Cada circulo representa un estado de la FSM. • Cada estado tiene un nombre único • Un arco representa la condición de salto de un estado a otro estado. • Cada arco tiene una condición lógica para que se dé el salto. • Ocurre un salto cuando la condición es 1. 14 Cómo se implementa una FSM Sistemas Digitales Profesor: Carlos Fajardo 15 Implementación de una FSM a a/y S0 entradas / salidas y=0 a S1 S2 a y=0 y=1 a Sistemas Digitales Profesor: Carlos Fajardo 16 Implementación de una FSM a S0 00 a/y entradas / salidas y=0 a S1 01 S2 10 a y=1 y=1 a Sistemas Digitales Profesor: Carlos Fajardo 17 Implementación de una FSM Lógica del Estado Siguiente 0 2 2 00 D Q Lógica de Salida y 00 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 18 Simulación Lógica del Estado Siguiente 1 2 2 01 D Q Lógica de Salida y 00 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 19 Simulación Lógica del Estado Siguiente 1 2 2 01 D Q Lógica de Salida y 01 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 20 Simulación Lógica del Estado Siguiente 0 2 2 10 D Q Lógica de Salida y 01 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 21 Simulación Lógica del Estado Siguiente 0 2 2 10 D Q Lógica de Salida y 10 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 22 Lógica del Estado Siguiente 0 2 2 00 D Q Lógica de Salida y 10 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 23 Simulación Lógica del Estado Siguiente 0 2 2 00 D Q Lógica de Salida y 00 a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 24 Tabla de estados Lógica del estado Siguiente Sistemas Digitales a 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 Profesor: Carlos Fajardo D1 D0 25 Tabla de estados Lógica del estado Siguiente Sistemas Digitales a Q1 Q0 D1 D0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Profesor: Carlos Fajardo 26 Tabla de estados Sistemas Digitales a Q1 Q0 D1 D0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Profesor: Carlos Fajardo 27 Tabla de estados Lógica del estado Siguiente Sistemas Digitales a Q1 Q0 D1 D0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 x x 1 0 0 1 0 1 1 1 0 1 1 1 Profesor: Carlos Fajardo 28 Tabla de estados Lógica del estado Siguiente Sistemas Digitales a Q1 Q0 D1 D0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 x x 1 0 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 x x Profesor: Carlos Fajardo 29 Lógica de Salida a Q1 Q0 D1 D0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 x x 1 0 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 x x Utilizando Mapas de Karnaught 𝐷1 = 𝑎 ∙ 𝑄0 𝐷0 = 𝑎 ∙ 𝑄1 Sistemas Digitales Profesor: Carlos Fajardo 30 Tabla de estados Lógica de salida Sistemas Digitales Profesor: Carlos Fajardo Q1 Q0 y 0 0 0 0 1 1 1 0 1 1 1 x 31 Tabla de estados Lógica de salida Q1 Q0 y 0 0 0 0 1 1 1 0 1 1 1 x Utilizando Mapas de Karnaught y = 𝑄1 𝑜𝑟 𝑄2 Sistemas Digitales Profesor: Carlos Fajardo 32 Implementación de una FSM 2 2 D y Q a Registro clk reset Sistemas Digitales Profesor: Carlos Fajardo 33 Descripción en VHDL Opción 1 – No se utiliza Sistemas Digitales Profesor: Carlos Fajardo 34 Descripción en VHDL Opción 1 – No se utiliza Sistemas Digitales Profesor: Carlos Fajardo 35 Descripción en VHDL Opción 1 – No se utiliza Sistemas Digitales Profesor: Carlos Fajardo 36 Descripción en VHDL Opción 1 – No se utiliza Sistemas Digitales Profesor: Carlos Fajardo 37 Descripción en VHDL Opción 2 – Si se utiliza • La lógica del estado siguiente se hace con un case • La lógica de salida se hace con un with-select Sistemas Digitales Profesor: Carlos Fajardo 38 Descripción en VHDL Opción 2 – Si se utiliza Sistemas Digitales Profesor: Carlos Fajardo 39 Descripción en VHDL Opción 2 – Si se utiliza Sistemas Digitales Profesor: Carlos Fajardo 40 Descripción en VHDL Opción 2 – Si se utiliza Sistemas Digitales Profesor: Carlos Fajardo 41 Descripción en VHDL Opción 2 – Si se utiliza Sistemas Digitales Profesor: Carlos Fajardo 42 Descripción en VHDL Opción 2 – Si se utiliza Sistemas Digitales Profesor: Carlos Fajardo 43 Ejercicio 1: Puerta TIA Adaptado de: http://www.dea.icai.upcomillas.es/daniel/ Sistemas Digitales Profesor: Carlos Fajardo 44 Puerta TIA Sistemas Digitales Profesor: Carlos Fajardo 45 Puerta TIA El profesor Bacterio le ha pedido ayuda para que le diseñe el circuito de control de la nueva puerta secreta que se va a instalar en el cuartel general de la T.I.A. La puerta secreta ha sido convenientemente disimulada en un cartel publicitario de un conocido fabricante de puertas, tal como se muestra en la figura siguiente: La puerta secreta está diseñada para ser usada única y exclusivamente por la pareja de superagentes más famosa de la agencia: Mortadelo y Filemón. Para ello se han colocado dos sensores a ambos lados de la puerta justo a la altura de la cabeza de cada uno de los dos agentes, representados en la figura mediante Sm y Sf. Sistemas Digitales Profesor: Carlos Fajardo 46 El funcionamiento de la puerta • Para activar el mecanismo Mortadelo y Filemón han de colocarse a ambos lados de la puerta, justo delante de su sensor correspondiente. Cuando el sistema detecte esta situación se encenderá una luz que se ha disimulado justo detrás de las letras “E” del cartel. • A continuación Filemón tendrá que colocarse delante de la puerta para que el sensor Sf deje de detectarlo. Para confirmar este paso el circuito apagará la letra “E”. • Cuando Mortadelo vea que se ha apagado la luz se pondrá también delante de la puerta para que el sensor Sm deje de detectarlo. • El circuito entonces activará una señal para abrir la puerta, esta señal sólo deben durar un ciclo de reloj. Sistemas Digitales Profesor: Carlos Fajardo 47 El funcionamiento de la puerta • Una vez iniciada la secuencia, si en algún paso se realiza una acción equivocada, como por ejemplo que sea Mortadelo en lugar de Filemón el primero en ponerse delante de la puerta, se activará una alarma para alertar a todos los agentes de la T.I.A. de un posible intento de asalto a su sede. Dicha alarma seguirá activa hasta que se vuelva a inicializar el circuito con la señal de reset. Para tener en cuenta: • Los sensores Sm y Sf dan un 1 cuando detectan una persona enfrente de ellos y un 0 en caso contrario. • El sistema cuenta con un reloj de 50MHz. Sistemas Digitales Profesor: Carlos Fajardo 48 Diagrama de Estados reset Sm, Sf / E, P , A Sm Sf ESPERA Sm Sf 000 Abrir_P 010 Alarma Encender_E 100 001 Sm Sf Sm Sf Sm Sf Sm Sf Apagar_E 000 Sm Sf Sistemas Digitales Profesor: Carlos Fajardo 49 Tarea: Hacer la descripción en VHDL – Opción 2 Sistemas Digitales Profesor: Carlos Fajardo 50 fin Sistemas Digitales Profesor: Carlos Fajardo 51
© Copyright 2024