Hola. Comenzamos con nuestro módulo 9: Circuitos secuenciales asíncronos. Y vamos a partir hablando de qué es lo que es en general un comportamiento asíncrono. Ya aprendimos circuitos secuenciales síncronos, donde hablábamos de flip-flops que son controlados por un reloj periódico. Tenemos que todos los flip-flops del circuito están conmutando al mismo tiempo. Cuando conmutan, todos ocurren al mismo tiempo. Y esto verán lo que llamamos modo pulso porque son controlados por pulso, al final los flancos, pero en este caso, los flancos son como pulsos cortitos. En este capítulo que estamos empezando vamos a ver circuitos secuenciales asíncronos, que no operan en modo pulso. Los cambios ocurren dependiendo del valor de las entradas y hay un par de supuestos importantes que tenemos que considerar, que están aquí. Para lograr la operación confiable, las entradas tienen que cambiar una a la vez. Eso es clave. Este es un supuesto muy importante. Si hay cambios simultáneos en 2 entradas, vamos a tener resultados impredecibles. Por lo tanto, superimportante este supuesto. Y lo otro es que los cambios tienen que ocurrir de forma suficientemente lenta. Esto no significa que vayan lento, esto significa que van más lento de lo que pueden ir, para que las salidas alcancen a establecerse. Digamos que va una salida y pasa de 0 a 1 y tenemos que hacer que esos cambios ocurran tan lentos para que todo se alcance a establecer aquí y no tengamos cosas que ocurran en los transientes, porque en los transientes pueden ocurrir cosas extrañas. Esta modalidad de operación se llama "modo fundamental". Vamos a establecer algunas fases para este comportamiento asíncrono, en este caso, hablemos de un latch SR. Este es nuestro latch SR que tiene realimentación. Está formado por dos NOR y el retardo de las compuertas. El retardo de las compuertas se representa por este bloque adicional Delta. No es que exista un retardo adicional, sino que estamos representando el retardo total mediante ese bloque Delta. Q es el estado presente, o sea, esto de aquí es el estado de ahora. Y luego toma el valor de Y, al pasar por Delta, al pasar por un retardo Delta. Y es el valor futuro. Si la salida es inmediata, Y mayúscula es distinta a la salida después del retardo y, entonces se habla de un estado inestable, en el sentido, no que vaya a oscilar, sino que es inestable porque cambia. Y en jerga de circuitos asíncronos, estado inestable significa un estado que cambia. Tenemos esta tabla que muestra el siguiente estado en función del estado actual. Vemos que el estado actual es 0 y aquí es 1. Y en esta tabla, en función de lo que son SR, es una tabla de verdad, esencialmente tenemos el estado siguiente. Y aquí vemos que el estado siguiente, cuando es igual al estado actual, lo encerramos en un círculo. Si este es 0 y pasa a ser 0, lo encerramos en un círculo. Al encerrarlo en un círculo, los círculos están representando la condición dada por un estado siguiente igual al estado actual y decimos que el circuito es estable en esa condición. Y lo del círculo es bien estándar en diseños de circuitos asíncronos. Si este es 1 y pasa a 0, no es estable porque cambió. Al cambiar de 1 a 0, decimos que el cambio no es estable y no lo encerramos en un círculo. En cambio, los que son estables están en círculo. Este 1 pasa a 1 y, por lo tanto, es estable. Perfecto. A partir de esta tabla de estados definidos, que es la que acabamos de mirar, derivamos la tabla y el diagrama de estado de una máquina de Moore, en este caso. A y B representan los estados presentes, y igual 0 e y igual 1, respectivamente. Y aquí tenemos el diagrama de Moore de un latch. Estamos hablando de un diagrama de Moore para una máquina muy sencilla, la más sencilla que se nos puede ocurrir, que tiene dos estados A y B y vemos cómo si estamos en el estado A para diferentes entradas, nos mantenemos en A, para esta entrada pasamos a B y lo mismo ocurre desde B, que para ciertas entradas nos mantenemos en B, para otras entradas volvemos a A. Nosotros podemos además escribir una expresión para el siguiente estado que es esta que está acá, eso ustedes ya saben hacerlo. Vemos la tabla y vemos que marcamos los estados estables con un círculo, en este caso, en que son, donde nos mantenemos en el mismo estado. Por ejemplo en B, bajo estas dos condiciones, nos mantenemos en el mismo estado. Hay dos condiciones que marcamos con un círculo. En cambio en A, hay tres condiciones que nos mantienen en el mismo estado, por lo tanto, hay tres entradas de la tabla que marcamos con un círculo. Vemos que los circuitos secuenciales asíncronos pueden ser representados en forma similar a los síncronos, también usando estos diagramas de estados. Sin embargo, la síntesis es mucho más compleja, en este caso, es mucho más difícil que para circuitos síncronos. Podemos hacer un análisis parecido en el caso de una máquina de Mealy. Aquí está el latch, mismo latch SR, en este caso, nuevamente con 2 estados: estado A y estado B, y cuando las entradas son lo que está aquí, pasamos al estado B. En este caso, la salida no está marcada realmente. En estado estable la salida es 0 para el estado A y 1 para el estado B. Algunas salidas Q en este diagrama no fueron especificadas. Estas que están acá. En el modelo de Mealy, la salida debiera ser afectada directamente por los cambios de la entrada. Eso es algo que sabemos del capítulo anterior. Para simplificar los circuitos, se deja la salida indefinida aquí para casos inestables, para los casos en que A cambia a B o que B cambia a A, eso es por definición inestable. Dejamos la salida indefinida, porque el estado igual va a cambiar después de un rato. Nos vamos a quedar aquí, por ejemplo, y si nos quedamos aquí, la salida pasa a ser definida, o si nos quedamos aquí, la salida pasa a ser definida. Durante la transición que es en estos arcos, asumimos que la salida es indefinida. Y no importa si la salida cambia antes o después de la transición del estado. Muy bien. La salida Q, en este caso, vemos que está asociada a los estados estables, pero no está asociada a los estado inestables, donde está cambiando. Alguna terminología importante, cuando tratamos con estos circuitos secuenciales asíncronos, usamos terminología parecida a la de los circuitos secuenciales síncronos. Se habla de tabla de flujo, en vez de hablar de tabla de estados. En vez de hablar de tabla de estados asignados, se habla de tabla de excitación o tabla de transición, son términos distintos. La tabla de flujo, por lo tanto, definirá los cambios en los estados y en las salidas y después la tabla de excitación va a mostrar las transiciones en términos de las variables de estado. ¿Qué aprendimos en esta clase? Aprendimos comportamiento asíncrono de circuitos secuenciales y vimos ejemplos más sencillos con máquina de Moore y de Mealy, y vimos algunas diferencias entre circuitos secuenciales asíncronos y síncronos. Gracias por ver esta clase.