Exponsor

CURSO TÉCNICO INSTALADOR DE ENERGÍA SOLAR TÉRMICA

Visita el siguiente enlace: http://enersolartermica.blogspot.com.es/ ¡No pierdas esta magnifica oportunidad de poder formarte en esta profesión con gran demanda de empleo! Ahora por oferta de lanzamiento y por tiempo limitado puedes adquirir este curso por solo 9,95€, cuando su valor de mercado es de 49€.

sábado, 21 de marzo de 2009

PROBLEMAS RESUELTOS SOBRE MULTIVIBRADORES, MEMORIAS Y FLIP-FLOP (R-S). PARTE 2ª

PROBLEMA: Construír un diagrama de tiempos para un flip-flop R-S construído con bloques NOR.





PROBLEMA: Encontrar las modificaciones externas requeridas por un flip-flop R-S hecho con bloques NAND para que se comporte como si fuera un flip-flop hecho con bloques NOR.

Requerimos un bloque que transforme las entradas del flip-flop hecho con bloques NAND en la manera como se muestra a continuación:



Tomando en cuenta las características del flip-flop R-S hecho con bloques NOR y los requerimientos del flip-flop hecho con bloques NAND, las entradas y salidas del bloque transformador (mostrado de color ciano) deben estar relacionadas según se muestra en la siguiente Tabla de Verdad de dos entradas y dos salidas, obtenida mediante la técnica de los minterms:



de la cual obtenemos las siguientes relaciones:

S = SERE + SERE

S = (SE + SE)RE

S = RE

R = SERE + SERE

R = SE(RE + RE)

R = SE

La configuración requerida toma entonces el siguiente aspecto:



Si encerramos todo esto dentro de una "caja negra" y se lo damos a un técnico para que haga las pruebas necesarias para determinar qué clase de flip-flop es, el técnico creerá que se trata de un flip-flop R-S hecho con bloques NAND. A menos de que sea un técnico realmente bueno y no se deje llevar tan sólo por las apariencias.


PROBLEMA: Analizar el siguiente circuito.





Para llevar a cabo el análisis, supóngase que inicialmente Bin=0, A=0 y Bout=0.

Con A=0 y Bin=0, las salidas del AND 1 y del AND 2 deben ser ambas "1", entradas con las cuales el flip-flop R-S mantiene su estado de Bout=0. que aquí suponemos válido. Al tomar Bin el valor "1", las salidas de los dos AND siguen siendo "1" y el flip-flop seguirá reteniendo su estado Bout=0. Esto es, no importa el valor que tome Bin, éste no podrá afectar al flip-flop mientras la terminal A permanezca en la condición A=0. Si el flip-flop tuviera una salida Bout=1, esta también permanecerá constante ante cambios de Bin siempre y cuando la terminal A permanezca en "0".

Suponiendo que ahora la terminal A toma el valor de "1" observamos que las entradas al flip-flop serán complementarias y sus valores dependerán del valor que tome Bin. En este estado, si aplicamos un "1" a Bin, el AND 1 producirá una salida de "0" y el AND 2 producirá una salida de "1", lo cual pondrá al flip-flop en el estado Bout=1. Removiendo el "1" de la terminal A primero y el "1" de la terminal Bin después, las salidas de los AND 1 y 2 serán "1", con lo cual el flip-flop retendrá el valor Bout=1. Sin el "1" en la terminal A, no importa que valor tome Bin, la salida seguirá siendo Bout=1. Esto es, al activar la terminal de acceso A, el circuito conservará en su memoria (a la salida Bout) el valor que le hayamos aplicado a Bin durante el período de tiempo que duró activada la terminal A. Si el bit de entrada Bin es "0", basta activar por un corto tiempo la terminal A para "grabar" dicho bit en el circuito, pudiendo leer el bit a la salida Bout cuantas veces se desee tiempo después de que se haya desactivado la terminal A. Si deseamos "grabar" el bit "1", entonces lo ponemos en la terminal de entrada Bin y activamos la terminal de acceso A por un tiempo corto, después del cual el bit está disponible a la salida Bout para ser leído cuantas veces se desee. Este es básicamente un circuito para almacenar un bit de información por tiempo indefinido.

Un diagrama de tiempos ilustrando todas las combinaciones secuenciales posibles es el siguiente:





PROBLEMA: El RAM (la Memoria de Acceso al Azar). Supóngase que existe un arreglo rectangular de flip-flops ordenados en un acomodo rectangular de 3 por 5 cuadros, cada cuadro conteniendo un flip-flop. Ilustrar la manera en la cual se pueda localizar un flip-flop cualquiera en un momento dado. Ilustrar también la manera en la cual se puede introducir y saca información de dicho flip-flop.

El arreglo más probable sería el siguiente:





Supóngase que deseamos encontrar el elemento mostrado en la figura. Para ello bastará con activar las terminales que lo localizan, que en este caso equivale a poner X3=1 y Y4=1, dejando un "0" en todas las demás terminales.

Siguiendo la convención del problema anterior, Bout es el bit ya almacenado por un flip-flop seleccionado, mientras que Bin es el bit a ser almacenado por el flip-flop seleccionado.

Podemos ver en el diagrama que la terminal Bin va dirigida hacia cada elemento del arreglo rectangular, cada uno de los cuales será llamado célula básica o celda para nuestros propósitos, mientras que la terminal Bout viene conectada desde cada célula. Asimismo, la terminal "Escribir/Leer" está también conectada a cada célula.

El diagrama de una célula básica es el siguiente:



Dentro de cada célula estamos utilizando la configuración estudiada en el problema anterior (la cual tomamos como "caja negra" y no se muestra en detalle para simplificar este diagrama esquemático).

Empezamos suponiendo que para la célula arriba mostrada, X3=1 y Y4=1, esto es, estamos domiciliando dicha célula, la célula especificada por las "coordenadas" X3 y Y4. Esto implica que la salida del AND1 es "1". Si otra célula fuese la localizada, entonces tendríamos Xn ó Yn ó ambos, con lo cual la salida del AND sería entonces "0".

Para analizar el comportamiento de la célula básica, estudiamos dos casos diferentes:

a) La terminal R/W (Read/Write, que en español se traduce como "Escribir/Leer") está desactivada con un "0". En este caso, la salida del AND 2 es "0", lo cual implica que la terminal de acceso A está desactivada y la información contenida por el flip-flop (Bo) permanece inalterada. Al mismo tiempo, el AND 3 está activado y su salida Bo dependerá de la información Bo previamente almacenada en el flip-flop. Estamos, por lo tanto, leyendo información de la célula localizada. Esta es la función R (Read) de lectura.

b) La terminal R/W es activada con un "1". En este caso, la salida del AND 2 es "1", lo cual implica que la terminal de acceso A está activada. La salida Bo del flip-flop (que es la salida Bo de la célula) dependerá del valor que tome Bi. Podemos, por lo tanto, escribir información en la célula localizada; esta es la función W (Write) de escritura, después de lo cual desactivamos la terminal R/W poniéndole nuevamente un "0" para poder preservar dicha información.


PROBLEMA: Una memoria RAM tiene una capacidad de 8 por 8 bits. ¿Cómo se puede seleccionar cada bit sin usar un gran número de terminales fuera del RAM?

Antes de continuar, identificaremos cada terminal de entrada de selección del RAM con un número binario diferente (al cual se le llamará "domicilio" o adresss) como se muestra a continuación:





No se ha mostrado en el diagrama la terminal bi-direccional de "Escribir/Leer" (Read/Write) con la cual se escribe un bit dentro de los flip-flops seleccionados. Obsérvese que en cada caso (domicilios horizontales, domicilios verticales) se escogió una numeración binaria ascendente tanto para los domicilios horizontales como para los verticales. Podemos añadir ahora un decodificador binario en cada lado para tener entonces el siguiente circuito:





Podemos observar que con este arreglo, el número de terminales requeridas para encontrar un determinado bit (o mejor dicho, un determinado flip-flop que está almacenando un bit que puede ser un "0" o un "1") se reduce grandemente. En las figuras se ha mostrado el flip-flop identificado por las combinaciones A0A1A2=110 y A3A4A5=100 (o bien, por la palabra A0A1A2A3A4A5=110100, que es lo que comunmente se acostumbra usar.

El esquema de domiciliar cada una de las células básicas de una memoria RAM utilizando un arreglo rectangular y reduciendo el número de líneas empleadas para el domiciliamiento con la ayuda de un decodificador horizontal y un decodificador vertical es un concepto completamente general, independiente de la tecnología empleada, ya sea mediante núcleos de ferritas magnéticas o mediante semiconductores o mediante algún otro esquema que aún no ha sido descubierto (ampliar imagen):



En esta representación estamos introduciendo un nuevo concepto con el objetivo de simplificar los diagramas esquemáticos en los cuales varias líneas de conducción eléctrica que llevan información simultánea perteneciente a un mismo grupo de datos son representadas en conjunto como una sola flecha "gorda" en vez de las cuatro u ocho líneas que de otro modo tendrían que ser dibujadas independientemente sin que este exceso de líneas resulte en una mayor claridad de información. Esta "flecha gorda" que aparea datos pertenecientes a información del mismo género es conocida como bus, (posiblemente en similitud con la palabra inglesa con la cual se designa a los camiones públicos utilizados para transportar a varias personas a la vez). Así, el bus que tenemos a la derecha en la siguiente figura representa a las ocho líneas que tenemos a la izquierda de la misma:




PROBLEMA: Ilustrar la forma de conectar varias RAM con una capacidad de 4 por 4 bits cada una para almacenar palabras de 3 bits. ¿Cuál es la capacidad total de memoria del sistema expresada en bits? ¿Cuántas palabras se pueden almacenar?

Puesto que se quiere almacenar palabras de 3 bits de extensión, se requieren tres RAM. Debido a que el arreglo de cada RAM es simétrico (o sea, de 4 por 4 bits) y a que la capacidad horizontal (y la vertical) es una potencia de 2n siendo n=2, podemos usar decodificadores para así tener la siguiente configuración:



Cada RAM tieen una capacidad de 4x4=16 bits. Puesto que se están usando tres memorias RAM de 4 por 4 bits de capacidad cada una, la capacidad total de almacenamiento será de 16 bits por 3, o sea de 48 bits (una capacidad modesta cuando en los inicios del 2007 las capacidades de las memorias RAM a la venta para las computadoras personales de escritorios alcanzaban una capacidad de dos gigabytes, dos mil millones de bits). Obsérvese que si cada RAM tiene integrados sus propios decodificadores (esta es la práctica usual) sin necesidad de que un ingeniero o técnico los tenga que añadir a algún diseño, el arreglo del circuito se simplifica enormemente como se muestra a continuación:



La simpleza de esta configuración sobre la anterior es obvia. La ventaja de usar bloques RAM con decodificadores incluídos en las RAM se hace más obvia aún cuando la cantidad de bloques RAM usados y la capacidad de los mismos va en aumento.


PROBLEMA: Un fabricante anuncia un nuevo tipo de memoria RAM ultra-rápida de 1024 bits hecho a base de tecnología óptica. ¿Cuál es la configuración funcional más probable para tal circuito?

Lo más probable es que sea una RAM de tipo simétrico con las células básicas de información acomodadas en un arreglo rectangular, formada por n bits de cada lado. Podemos, basados en esta información, obtener el número de bits laterales:

n ∙ n = 1024

n² = 1024

n = 32

La RAM parece ser una RAM de 32 bits por 32 bits. Lo más probable también es que use decodificadores en ambos lados con el propósito de reducir las líneas externas de alambrado necesarias para poder llegar a cada célula de información. La extensión de la palabra requerida en cada lado la podemos encontra de la siguiente manera:

2n = 32

log [ 2n ] = log(32)

n ∙ log(2) = log(32)

n = (log 32)/(log 2)

n = (1.50515)/(.30103)

n = 5

El resultado nos dice que una palabra de tan sólo cinco bits contendrá 32 combinaciones posibles de "unos" y "ceros".

La RAM tendrá entonces la siguiente configuración:



El "bit" a ser leído con la operación de lectura R (poniendo un "0" en la terminal R/W) será leído de la terminal Bo, mientras que el "bit" a ser escrito con la operación de escritura W (poniendo un "1" en la terminal R/W) será puesto en la terminal Bi.


PROBLEMA: La ROM (Memoria de Lectura Unicamente). Analizar el siguiente circuito construyendo una Tabla de Verdad para el mismo.



El primer paso para analizar este tipo de circuito es introducir todas las combinaciones posibles de "unos" y "ceros" en las terminales de entrada A, B y C. Por ejemplo, con la combinación AB=00, únicamente se activa la línea L1. De la misma manera, con cada una de las combinaciones restantes se activa únicamente una de las líneas L2, L3 y L4. No nos debe llevar mucho tiempo el reconocer que lo que tenemos dentro del recuadro de línea roja es nada menos que un decodificador. Las salidas H1, H2, H3 y H4 se pueden obtener de inmediato de los ORs sabiendo que únicamente una de las líneas L puede estar activada en un momento dado. Tomando esto en consideración, la Tabla de Verdad obtenida será como la que se muestra a continuación:



Podemos ver que cada combinación de "unos" y "ceros" a la entrada siempre producirá la misma combinación de "unos" y "ceros" que le corresponda a la salida a dicha entrada, determinado por las conexiones internas en el circuito. Esto, en cierta forma, es equivalente a una "memoria", la cual está contenida dentro del recuadro de línea verde. Sin embargo, este tipo de memoria es diferente a las demás en el sentido de que únicamente se pueden leer palabras binarias de la misma. No se pueden grabar palabras nuevas en este tipo de memoria sin cambiar el alambrado interno del circuito. Es por esto que esta memoria es conocida comúnmente como Memoria de Lectura Unicamente (Read Only Memory ó ROM), ya que únicamente se pueden leer palabras de este memoria, no se pueden grabar palabras en la misma.

El ROM ofrece una configuración almacenada de "unos" y "ceros" que puede ser utilizada de la misma manera que un programa almacenado en la memoria de una computadora digital. La secuencia de eventos lógicos puestos en movimiento por esta configuración almacenada de datos recibe el nombre de microprograma. Asismismo, cada evento lógico especificado en los domicilios de un microprograma recibe el nombre de microinstrucción.


PROBLEMA: Tomando en cuenta el circuito del problema anterior, diseñar un ROM que posea la siguiente Tabla de Verdad:



La configuración pedida tiene el siguiente aspecto:




PROBLEMA: Describir la forma en la cual trabaja la Memoria ROM cuyo diagrama esquemático es el siguiente:




La forma (simbólica) en la cual trabaja esta memoria ROM de acuerdo con lo que podemos leer en este diagrama esquemático es la siguiente:

Cuando todos los interruptores eléctricos en el extremo izquierdo del diagrama están abiertos tal y como se muestra arriba, no entra ningún voltaje (ningún "1") en ninguna de las terminales de entrada A0, A1, A2 y A3, siendo por lo tanto la entrada "0" en todas ellas. Así, cuando la palabra de entrada es A0A1A2A3=0000, accesamos de la memoria ROM su contenido puesto en una de sus "celdas", que es el dato 4D (dado en notación hexadecimal, equivalente a 01001101 en notación binaria). Este dato es puesto en las líneas de salida del ROM como el byte:

D7D6D5D4D3D2D1D0= 01001101

tal y como lo muestra el diagrama. Si queremos accesar otro contenido dentro del ROM, por ejemplo el contenido que está puesto bajo el domicilio A0A1A2A3=0011 entonces cerramos los interruptores eléctricos que corresponden a las líneas de entrada A0 y A1, con lo cual el voltaje que tomamos como "1" pasa directamente a dichas líneas. Junto con los ceros en las demás entradas, esto pone el domicilio 3 (0011) en la entrada A0A1A2A3, lo cual accesa el contenido en el domicilio 3 que es 6D, el cual será puesto a la salida del ROM.

Este ROM tiene capacidad suficiente para almacenar 16 bytes.

Este circuito fue tomado de la página Internet de Educypedia. La acción animada de este ROM "trabajando" se puede ver yendo al siguiente domicilio:

http://www.ibiblio.org/kuphaldt/socratic/output/animation_ROM_memory_fast.gif


PROBLEMA: El código ASCII. Una de las desventajas del indicador luminoso de 7 segmentos es que no se pueden representar las letras del alfabeto en el mismo. Este problema se soluciona empleando una matriz (arreglo rectangular) de 5 por 7 diodos LED, cada uno en forma de punto. Representar la expresión A+B usando este tipo de indicadores. Bajo el código ASCII, se pueden representar hasta 64 caracteres diferentes si se usa un ROM para almacenar la combinación particulas de "unos" y "ceros" correspondientes a cada caracter. ¿Cuál es la capacidad total en bits requerida del ROM? ¿Cuál es su configuración más probable?

Usando tres matrices de diodos LED indicadores, la expresión A+B tendrá un aspecto como el siguiente:



Para representar cada caracter se requieren 7 por 5 bits, o sea 35 bits. Puesto que en el código ASCII hay un total de 64 caracteres, o sea 64 combinaciones diferentes de "unos" y "ceros", se concluye que la capacidad total de almacenamiento requerida del ROM es de 35x64 = 2240 bits.

Puesto que 64 es un múltiplo de 2n, en lugar de usar 64 líneas diferentes para obtener cada caracter se puede usar identificación binaria para obtener cada caracter usando un decodificador. Incluyendo el decodificador en el ROM, vemos que el número n de líneas requeridas será:

2n = 64

log(2n) = log(64)

n ∙ log2 = log64

n = (log64)/(log2)

n = (1.80618)/(.30103)

n = 6

Requerimos de 6 líneas de entrada al decodificador del ROM. Una configuración posible para el ROM requerido sería la siguiente:



La letra A está representada a la salida del ROM como ejemplo del funcionamiento del mismo.

viernes, 20 de marzo de 2009

PROBLEMAS RESUELTOS SOBRE MULTIVIBRADORES, MEMORIAS Y FLIP-FLOP (R-S). PARTE 1ª

PROBLEMA: Analizar el siguiente circuito. Supóngase que la entrada A y la salida son inicialmente cero. Sugiérase también una forma de "limpiar el registro" (regresar la salida a su valor original de "cero")



Cuando la entrada A y la salida son inicialmente "cero" ("0"), el bloque OR está alimentado con dos ceros, produciendo la salida de cero.

Cuando activamos la entrada con un valor de A=1, el bloque OR producirá una salida de "1", lo cual pondrá una entrada de "1" en el mismo bloque OR compatible con la salida de "1".

Al volver a tomar la entrada A su valor de cero, el "1" a la entrada del OR producido por su salida mantendrá la salida del OR en el estado "1". Esto es, cuando A toma el valor de "1", la salida toma también el valor de "1" y permanece en ese estado por tiempo indefinido aún cuando A regrese a su valor original de "0".

Este ejemplo demuestra una característica interesante e importante que juega la retroalimentación (feedback) en los circuitos lógicos. La retroalimentación proporciona memoria a los circuitos lógicos.

Un diagrama de tiempos característico del comportamiento del circuito sería como el siguiente:



Una forma de "limpiar el registro" (esto es, borrar la memoria) es añadiendo unos componentes de la siguiente manera:



Cuando no hay ninguna señal en R (o sea, cuando la entrada en la terminal R es R=0), por la acción del NOT inversor el bloque AND conectará directamente la salida del bloque OR a la entrada del mismo y no tendrá efecto alguno en el diagrama de tiempos del circuito previo. Este circuito se comportará exactamente como el circuito anterior.

Sin embargo, cuando se aplica una entrada de "1" a R, la compuerta AND interrumpirá la alimentación de la salida del OR a la entrada del mismo, "borrando" la memoria si es que la salida era "1" y la terminal S tenía el valor de "0". En el caso de que R permanezca activada con un "1", la salida tomará directamente el valor de S.

Obsérvese que arriba se llevó a cabo un ligero cambio en la notación de las terminales de entrada del circuito. A la entrada que lo puede "ajustar" con una salida de "1" se le ha designado con la letra S, una abreviatura de la palabra inglesa Set que significa precisamente "ajuste", mientras que a la terminal con la cual se puede "reajustar" el circuito "limpiando" el registro previo se le ha designado con la letra R, una abreviatura de la palabra inglesa Reset que significa precisamente "reajuste". Esto se ha hecho para ir adecuando nuestra notación con la notación utilizada en la mayoría de la literatura técnica.

Un diagrama de tiempos ilustrando todas las situaciones posibles se muestra a continuación:





La función de "limpieza de registro" es indispensable en una configuración de circuitos lógicos para borrar información previa y poder procesar información nueva.


PROBLEMA: El Flip-Flop R-S. Analizar el siguiente circuito considerando todas las 16 combinaciones posibles de unos y ceros (cuatro a la entrada y cuatro a la salida) descartando aquellos estados que resulten incompatibles. Asimismo, construír una Tabla de Verdad lo más simplificada posible para dicho circuito.




El análisis se llevará a cabo haciendo un diagrama independiente para cada una de las combinaciones posibles, trazando el flujo de los valores binarios y observando la compatibilidad de los mismos para cada combinación de valores. Empezaremos con la primera combinación en la cual supondremos que tanto las dos entradas R y S como las dos salidas Q y Q tienen valores de cero:

R=0, S=0, Q=0, Q'=0





El 0 que suponemos a la salida del NAND superior alimenta con dicho 0 una de las entradas del NAND inferior, el cual junto con el 0 que está siendo puesto en la terminal S producirá un 1 a la salida Q' del NAND inferior. Este 1 es incompatible con el valor de 0 que estamos asumiendo para Q'. Por otro lado, el 0 que suponemos a la salida del NAND inferior alimenta con dicho 0 una de las entradas del NAND superior, el cual junto con el 0 que está siendo puesto en la terminal R producirá un 1 a la salida Q del NAND superior. Este 1 es incompatible con el valor de 0 que estamos asumiendo para Q. Por lo tanto, se descarta por completo esta combinación de valores por no ser una combinación válida.

R=0, S=0, Q=0, Q'=1





En este caso, de nueva cuenta el 0 que suponemos a la salida del NAND superior alimenta con dicho 0 una de las entradas del NAND inferior, el cual junto con el 0 que está siendo puesto en la terminal S producirá un 1 a la salida Q' del NAND inferior. Este 1 sí es incompatible con el valor de 1 que estamos asumiendo para Q'. Sin embargo, por otro lado, el 1 que suponemos a la salida del NAND inferior que alimenta con dicho 1 una de las entradas del NAND superior, junto con el 0 que está siendo puesto en la terminal R producirá un 1 a la salida Q del NAND superior. Este 1 es incompatible con el valor de 0 que estamos asumiendo para Q. Por lo tanto, también se descarta esta combinación de valores por no ser una combinación válida.

R=0, S=0, Q=1, Q'=0





Podemos ver que este caso es similar al caso anterior, lo cual era anticipable por la simetría de la figura.

R=0, S=0, Q=1, Q'=1





Al seguir el flujo de todas las señales con los valores supuestos, encontramos que en este caso los valores sí son compatibles. Por lo tanto, podemos hacer la siguiente Tabla de Verdad para los mismos:



R=1, S=0, Q=0, Q'=0





Nuevamente, encontramos otra situación en la que la combinación de valores no es compatible, razón por la cual se descarta esta posibilidad.

R=1, S=0, Q=1, Q'=0





Esta combinación de valores también se descarta por no ser una combinación compatible.

R=1, S=0, Q=0, Q'=1





Los valores en este caso sí son compatibles, y por lo tanto podemos hacer una Tabla de Verdad para los mismos:



R=1, S=0, Q=1, Q'=1





Esta es una combinación de valores que no es compatible, y por lo tanto se descarta.

R=1, S=0

Antes de proseguir, para ahorrarnos trabajo podemos explotar a nuestro favor una simetría. Puesto que el circuito es simétrico en el sentido de que si tomamos lo volteamos por completo de arriba abajo tendremos en esencia lo mismo, al tratar los cuatro casos correspondientes a los valores de entrada R=0 y S=1 también estamos cubriendo los cuatro casos correspondientes a los valores de entrada R=1 y S=0 con la simple inversión de los elementos de arriba hacia abajo. En base a la simetría y los resultados obtenidos previamente, podemos afirmar que el único conjunto de valores compatibles para R=0 y S=1 es Q=1 y Q'=0, lo cual podemos resumir en la siguiente Tabla de Verdad:



Podemos proseguir con las combinaciones de valores faltantes:

R=1, S=1, Q=0, Q'=0





Esta combinación de valores se descarta por ser totalmente incompatible.

R=1, S=1, Q=0, Q'=1





En este caso la combinación de valores sí es compatible, y su Tabla de Verdad es:



R=1, S=1, Q=1, Q'=0




Los valores en este caso también son compatibles, y su correspondiente Tabla de Verdad será:



Falta ya tan sólo una combinación posible de valores por checar. Es la siguiente:

R=1, S=1, Q=1, Q'=1





Así, la última combinación posible de valores que nos faltaba por checar resulta ser totalmente incompatible, razón por la cual también se descarta.

Podemos juntar ahora todas las Tablas de Verdad para este circuito en una sola:




aPara simplificar esta Tabla de Verdad, como primera observación se nota que el único caso en el cual los valores de Q y Q' no son complementarios es R=0 y S=0. En la terminología técnica empleada en el estudio de los circuitos lógicos, este es un estado es conocido como un estado no-definido. Con esto en mente, y agrupando las salidas similares por razones que pronto quedarán claras, la Tabla de Verdad toma el siguiente aspecto:



Analizando esta Tabla de Verdad, encontramos algunos detalles interesantes. Si las entradas toman los valores R=1 y S=0, las salidas tomarán los valores Q=0 y Q'=1. Y si las entradas cambian a los valores R=0 y S=1, las salidas cambiarán a los valores Q=1 y Q'=0. Esto es, cuando las entradas son complementarias, Q toma el valor de S.

Al tomar las entradas los valores R=1 y S=1; existen dos salidas complementarias válidas. Esto indica que al tomar ambas R y S el valor de 1, se retendrán a la salida los valores de la condición previa, esto es, el circuito "recordará" su estado anterior. Por ejemplo, si la entrada tiene los valores R=1 y S=0, la salida tomará los valores Q=0 y Q'=1. Al tomar la entrada los valores R=1 y S=1, la salida seguirá reteniendo los mismos valores Q=0 y Q'=1. La única manera de invertir la salida Q es aplicando la condición R=0 y S=1. Después de aplicar dicha condición, el circuito mantendrá la salida de Q=1 y Q'=0 al aplicársele la condición R=1 y S=1.

Puesto que en el estado R=1 y S=1 las salidas pueden tomar dos valores que siempre serán complementarios, podemos simplificar aún más la Tabla de Verdad:



Esta Tabla nos quiere decir que para la condición R=1 y S=1, si Q toma el valor de 1 entonces Q' tomará el valor de 0 o bien, si Q toma el valor de 0 entonces Q' tomará el valor 1.

Nótese que cuando R y S son complementarios, el valor de S es igual al valor de Q y el valor de R es igual al valor de Q'. Tomando esto en consideración, se acostumbra invertir de la siguiente manera las terminales de entrada para que estén de acuerdo con el orden en la figura de los valores que toman las terminales de salida:





Frecuentemente, este circuito se encierra en una "caja negra" representándosele de la siguiente forma:





Este bloque se conoce comúnmente como el Flip-Flop R-S, aunque también se le conoce ampliamente como un R-S latch, y desempeña un papel importante en los circuitos lógicos.

El comportamiento de un flip-flop R-S (y de hecho el comportamiento de cualquier circuito lógico secuencial capaz de pasar de un estado estable a otro) puede ser descrito con un diagrama de tiempos como el siguiente, en el cual el paso del tiempo ocurre de izquierda a derecha:



En este diagrama de tiempos, al principio de la "acción" ambas terminales de entrada S y R están puestas a un valor de "1" lógico, mientras que se supone que la salida Q se encuentra en un estado estable de "0". Como podemos ver, la terminal R recibe un descenso de "1" a "0" seguida de un ascenso que la regresa a su valor de "1", pero esto no produce efecto alguno en la salida puesto que para ello es la terminal S la que tiene que ser activada. Esto es precisamente lo que se lleva a cabo a continuación, y podemos ver que al caer S de "1" a "0" la salida Q cambia de inmediato de "0" a "1". Tras esto, la terminal S es llevada de "0" a "1", y nuevamente se le aplica otro descenso, pero en esta ocasión ya no tiene efecto alguno sobre la salida Q, su efecto ya se dejó sentir anteriormente. Por último, con la salida Q ajustada a "1", la terminal R es llevada de "1" a "0", y en esta ocasión si produce un efecto inmediato, "reajustándose" la salida de Q a un valor de "0". Este diagrama de tiempos resume prácticamente todas las condiciones posibles que describen el comportamiento del circuito, como debe hacerlo un buen diagrama de tiempos.

Podemos construír un flip-flop con bloques NAND, o podemos procurarlo ya construído en un componente como el circuito integrado 4044, el cual incluye cuatro flip-flops NAND por el precio de uno solo:




PROBLEMA: Usando álgebra Boleana, encontrar expresiones para las salidas en función de las entradas, simplificando las expresiónes resultantes lo más que se pueda, para un Flip-Flop construído con bloques NAND. Asimismo, constrúyase una Tabla de Verdad para el circuito usando las expresiones obtenidas.

Trazando el flujo de señales para un flip-flop construído con bloques NAND, se ve que las salidas deberán ser como se muestra en el siguiente diagrama:



Las expresiones Boleanas para las salidas son:




Introduciendo cada expresión en la otra para tener las salidas en función de las entradas R y S exclusivamente:



Usando la ley de DeMorgan A · B = A + B para simplificar ambas expresiones:



Con las expresiones anteriores podemos introducir valores de R y S para construír una Tabla de Verdad:

R=0, S=0:
Q = 0 + 0 • Q

Q= 1

Q = 0 + 0 • Q

Q = 1
R=0, S=1:
Q = 0 + 1 • Q

Q = 1 + Q

Q = 1

Q = 1 + 0 • Q

Q = 0 + 0

Q = 0
R=1, S=0:
Q = 1 + 0 • Q

Q = 0 + 0

Q = 0

Q = 0 + 1 • Q

Q = 1 + Q

Q = 1
R=1, S=1:
Q = 1 + 1 • Q

Q = 0 + Q

Q = Q

Q = 1 + 1 • Q

Q = 0 + Q

Q
= Q
Llamando al estado en el cual los valores de Q y Q no son complementarios (R=0 y S=0) un estado no-definido, podemos construír la Tabla de Verdad con la información obtenida:



Esta es la misma Tabla de Verdad que la obtenida en el problema anterior, excepto que aquí se obtuvo por una vía mucho más rápida, sin tener que probar todas las combinaciones posibles de "unos" y "ceros" en las entradas R y S y en las salidas Q y Q. Nuevamente, la enorme efectividad del álgebra Boleana como herramienta de simplificación muestra su potencia matemática.


PROBLEMA: Usando álgebra Boleana, encontrar expresiones para las salidas en función de las entradas, simplificando lo más que se pueda, para el siguiente flip-flop R-S construído con bloques NOR:



Asimismo, constrúyase una Tabla de Verdad para el circuito usando las expresiones obtenidas.

Trazando el flujo de señales para un flip-flop R-S construído a base de bloques NAND, se ve que las salidas deberán ser como se muestra a continuación:



Las expresiones Boleanas para las salidas son:



Introduciendo cada expresión en la otra para tener las salidas en función de las entradas R y S exclusivamente:



Usando la ley de DeMorgan A + B = A · B para simplificar ambas expresiones:


Con las expresiones anteriores podemos introducir valores de R y S para construír una Tabla de Verdad:

R=0, S=0:
Q = 0 (0 + Q)

Q= 1 • Q

Q= Q

Q = 0 (0 + Q)

Q= 1 • Q

Q = Q
R=0, S=1:
Q = 0 (1 + Q)

Q = 1 (1)

Q = 1

Q = 1 (0 + Q)

Q = 0 (Q)

Q = 0
R=1, S=0:
Q = 1 ( 0 + Q)

Q = 0 (Q)

Q = 0

Q = 0 (1 + Q)

Q = 1 (1)

Q = 1
R=1, S=1:
Q = 1 (1 + Q)

Q = 0 (0)

Q = 0

Q = 1 (1 + Q)

Q = 0 (1)

Q
= 0
Llamando al estado en el cual los valores de Q y Q no son complementarios (R=1 y S=1) un estado no-definido, podemos construír la Tabla de Verdad con la información obtenida:



Comparando esta Tabla de Verdad con la obtenida en el problema anterior para un flip-flop R-S construído con bloques NAND, encontramos que son casi idénticas excepto por una diferencia: mientras que para un flip-flop R-S construído con bloques NAND la condición en la cual el flip-flop entra en un estado indefinido está dada por R=0 y S=0, para el flip-flop R-S construído con bloques NOR la condición en la cual el flip-flop entra en un estado indefinido está dada por R=1 y S=1. Asimismo, la condición en la cual el flip-flop R-S construído con bloques NAND "recuerda" su estado anterior es R=1 y S=1, mientras que para el flip-flop construído con bloques NOR la condición en la cual el flip-flop "recuerda" su estado anterior es R=0 y S=0.

Podemos construír un flip-flop con bloques NOR, o podemos procurarlo ya construído en un componente como el circuito integrado 4043, el cual incluye cuatro flip-flops NOR por el precio de uno solo:



A menos de que se indique lo contrario, en todos los problemas restantes de aquí en adelante se utilizarán exclusivamente flip-flops R-S hechos con bloques NOR.