Componentes secuencialesContienen elementos de memoriaLos valores de sus salidas dependen de los valores en sus entradas y de los valores almacenados en los elementos de memoriaLos valores almacenados en los elementos de memoria definen el estado del circuito secuencialEjemplo: contestador telefónico que responde tras cuatro timbres de llamada
Componentes secuenciales
Los componentes secuenciales se dividen en: Asíncronos
Su salida y su estado se puede alterar en cuanto cambien los valores de sus entradas
Síncronos Su salida y su estado se alteran, si acaso, sólo
en determinados instantes definidos a partir de una señal de reloj
Señal de reloj
Período de reloj Tiempo entre transiciones sucesivas en la
misma dirección
Frecuencia de reloj Inversa del período de reloj
Señal de reloj
Ancho del pulso Intervalo de tiempo en el que la señal de
reloj vale 1
Rendimiento de ciclo Relación entre el ancho del pulso (lo que
está la señal a 1) y el período
Señal de relojCircuito activo a nivel alto Si reacciona ante la señal de reloj a valor 1
Circuito activo a nivel bajo Si reacciona ante la señal de reloj a valor 0
Circuito activo por flanco de subida Si reacciona ante la transición de la señal de
reloj de 0 a 1
Circuito activo por flanco de bajada Si reacciona ante la transición de la señal de
reloj de 1 a 0
Báscula (o latch) RS−implementación con NOR−
�
Dos estados del latch : Estado de set (con Q = 1) Estado de reset (con Q = 0)
Esquemático
Flip-fliopsLos latches son sensibles al nivel Responden a los cambios en la entrada
durante el pulso del reloj
Los flip-flops responden a los cambios en la entrada sólo en los cambios de la señal de reloj Es más seguro trabajar con éstos, aunque
son más caros
Los hay de dos tipos: maestro-esclavo y disparados por flanco
Desplazamiento erróneo con latches tipo D
Con latches sensibles al nivel, se puede producir funcionamiento erróneo
Esquemático
Flip-flop maestro-esclavoEn un flip-flop maestro-esclavo la entrada D se muestrea y se almacena su valor en en flanco de subida de la señal Clk
Esquemático
Análisis de lógica secuencial
Se comienza identificando qué hay en las entradas de los flip-flops: Se suelen expresar de forma algebraica, y
se llaman las ecuaciones de excitación
Conocido el tipo de flip-flop y conocidas las funciones que definen el valor de sus entradas... Se pueden escribir las ecuaciones de estado
siguiente y salidas.
Análisis de lógica secuencial
Con las ecuaciones de estado siguiente y salidas se puede conocer cuál es el estado siguiente y las salidas para cada estado y entrada posibles: Se organizan en una tabla de estado
siguiente y salidas
La misma información que en estas tablas se puede expresar de forma gráfica con un diagrama de estados
Análisis de lógica secuencial
El diagrama de estados permite identificar de forma clara y completa el funcionamiento de un circuito secuencial Opcionalmente se emplean cronogramas (o
diagramas de tiempo ) para “ver” el funcionamiento ante un caso de estudio
Análisis de un circuito secuencial de tipo Moore
Ecuaciones de excitación
Ecuaciones de estado siguientey salida
Análisis de un circuito secuencial de tipo Moore
Tabla de estado siguientey salida Diagrama de estados
Análisis de un circuito secuencial de tipo Mealy
Ecuaciones de excitación
Ecuaciones de estado siguientey salida
Análisis de un circuito secuencial de tipo Mealy
Tabla de estado siguientey salida Diagrama de estados
Diagrama de estados de un contador módulo 3 asc./desc.Diseñar un contador asc./desc. módulo 3. El contador debe tener dos entradas: orden de cuenta (C) y dirección de cuenta (D). Cuando C=1 el contador contará en la dirección indicada por D y dejará de contar cuando C=0. El contador contará hacia adelante con D=0 y hacia atrás con D=1. El contador debe tener una salida Y que se pondrá a 1 cuando el contador vaya a alcanzar el valor 2 mientras cuenta hacia atrás o cuando vaya a alcanzar el valor 0 mientras cuenta hacia adelante.
Minimización de estadosLa minimización de estados reduce el número de estados y, por ello, el número de flip-flops necesarios.Se basa en el concepto de equivalencia de comportamiento: Dos FSMs son equivalentes si producen la
misma secuencia de símbolos de salida para cada secuencia de símbolos de entrada
Minimización de estados
si y sk de una misma FSM son equivalentes si ≡ sk si y sólo si
ambos estados si y sk producen el mismo símbolo de salida para cada símbolo de entrada i : h (sj,i ) = h (sk, i )
los estados siguientes para cada símbolo de entrada i son equivalentes: f (sj,i ) ≡ f (sk,i )
Minimización de estados
Proceso de minimización Particionar los estados en clases de
equivalencia Construir una nueva FSM con un estado por
cada clase de equivalencia
Codificación demínimo cambio de bits
Los códigos se asignan de forma que el número de cambios de bits sea el mínimo en el total de transiciones Si a cada arco del diagrama de estados se le
da como peso el número de cambio de bits en la transición, los códigos se eligen de forma que la suma de todos los pesos sea la menor
Codificación deprioridad en la adyacencia
En esta codificación se asignan codificaciones de la menor distancia posible a los estados con una fuente común, un destino común y una misma salida
Codificación deprioridad en la adyacencia
Al asignar los códigos: la mayor prioridad es para estados con un
mismo estado siguiente la segunda prioridad es para los estados
siguientes de un mismo estado la tercera prioridad es para los estados que
tienen las mismas salidas para las mismas entradas
Codificación “one-hot”
Es una codificación en la que en todos los códigos sólo hay un “1”El número de bits de los códigos es igual al número de estadosLa posición del “1” identifica al estadoEs una codificación cara para FSMs con muchos estadosSe emplea para hacer FSMs más rápidas