circuitos digitales ii

Upload: asha-castro-diaz

Post on 02-Mar-2016

6 views

Category:

Documents


0 download

DESCRIPTION

DIAGRAMA DIGITAL

TRANSCRIPT

Microsoft Word - CAP7_circuitos.DOC

CAPITULO 7 .- DISEO DE CIRCUITOS LOGICOS

7.1 INTRODUCCION

l diseo de los circuitos de combinacin comienza con la descripcin verbal del problema y termina en un diagrama de circuito lgico. El procedimiento comprende los siguientes pasos:E

Se enuncia el problema.A las variables de entrada y salida se les asignan smbolos de letras.Se deriva la tabla de verdad que define las relaciones entre entradasy salidas.Las funciones Booleanas simplificadas se obtienen para cada una delas salidas.Se dibuja el diagrama lgico.

7.2 Circuitos Lgicos Tradicionales

7.2.1Semi-sumador

La funcin aritmtica digitalms bsica es la suma de dos dgitos binarios. Un circuito de combinacin que realiza esta suma aritmtica de dos bits se denomina un semi - sumador. Uno que realiza la suma de tres bits (dos bits significantivos y un bit previo de acarreo) se denomina un sumador completo. El nombre para el ltimo se basa en el hecho de que se pueden utilizar dos semi - sumadores para implementar un sumador completo.

Las variables de entrada de un semi - sumador se denominan bits sumando y sumador. Las variables de salida se denominan suma y acarreo. Es necesario especificar dos variables de salida puesto que la suma de 1+ 1 es el binario 10, que tiene dos dgitos. Asignamos los smbolos XY a las dos variables de entrada, y S (para la suma) y C (para el acarreo) a las dos variables de salida. La salida C es 0 a no ser que ambas entradas sean 1. La salida S representa el bit menos significativo de la suma. Las funciones Booleanas para las dos salidas pueden obtenerse directamente de la tabla de verdad:Tabla de Verdad:XYCS0000010110011110

D.I.I.C.CArquitectura de Sistemas Computacionales

Capitulo 7.- Diseo de Circuitos LgicosPgina 1

De la tabla de verdad se obtienen las siguientes funciones:

1).-Para la SumaS = xy + xy = x y2).-Para el Carrie (Acarreo)C = xy

A partir de estas dos ecuaciones podemos implementar el siguiente circuito lgico:

Circuito lgico de un Semi - Sumador.

El diagrama lgico se muestra en la Figura, consiste de una compuerta exclusiva OR y de una compuerta AND. Adems se ha utilizado un generador de aleatorio de entrada y sendos display para rutear los valores en cuestin.

7.2.2Sumador-completo

El sumador - completo es un circuito de combinaciones que forma la suma aritmtica de tres bits. Consiste de tres entradas y dos salidas. Dos de las variables de entrada, denotadas por X e Y, representan los dos bits significativos que deben sumarse. La tercera entrada, Z, representa el acarreo de la posicin significante previa ms baja. Las dos salidas son necesarias porque la suma aritmtica de tres dgitos binarios est en el rango de 0 a 3, y los binarios 2 3 necesitan dos dgitos. Las dos salidas son designadas por los smbolos S (para la suma) y C (para el acarreo). La variable binaria S da el valor del bit menos significativo de la suma. La variable binaria C de la salida del acarreo. Las ocho filas debajo de las variables de entrada designan todas las combinaciones posibles de 1s y 0s que estas variables pueden tener. Los 1s y 0s para las variables de salida

son determinados de la suma aritmtica d los bits de entrada. Cuando todos los bits de entrada son 0 la salida es 0. La salida S es igual a 1 cuando solamente una entrada es igual a 1 o cuando todas las tres entradas son iguales a 1. La salida C tiene un acarreo de 1 si dos o tres entradas son iguales a 1.

Los mapas de Karnaugh, son utilizados para encontrar expresiones algebraicas para cada una de las variables de salida. Los 1s en los cuadrados de los mapas de S y C se determinan directamente de los minterms en la tabla de verdad. Los cuadrados con 1s para la salida S no se combinan en grupos de cuadrados adyacentes. Pero puesto que la salida es 1 cuando hay un nmero impar de entradas, S es una funcin impar, y representa la relacin OR exclusivo de las variables Los cuadrados con 1 para la salida C pueden combinarse en una diversidad de maneras. Una expresin posible de C es: C = xy + (xy + xy)z, la cual obtendremos a partir del siguiente desarrollo:

Tabla de verdadEntradasSalidasXYZCS0000000101010010111010001101101101011111

Mapa de Karnaugh:

Del mapa se obtienen las siguientes ecuaciones:

1).-S = xyz + xyz + xyz + xyz = x y z2).-C = xy + xz + yz = xy + (xy + xy ) = xy + (x y)z

A partir de estas ecuaciones obtenidas por la minimizacin del mapa de Karnaugh, podemos implementar el siguiente circuito lgico.

Circuito Lgico

Circuito Lgico de un Sumador Completo

Teniendo en cuenta que xy + xy = x y, e incluyendo la expresinpara la salida S, obtenemos las dos funciones para el sumador - completo:

S = x y zC = xy + (x y)z

Note que el circuito sumador - completo consta de dos semi - sumadores y una compuerta OR. A dems se ha agregado un generador de entradas aleatorio ms display de ruteo.

Este circuito se puede representar por un circuito integrado de la siguiente manera. Cabe hacer notar que dentro de este circuito estar el subcircuito diseado anteriormente.

7.2.3Comparadores

Un circuito Comparador detecta una concidencia de valores de dos o ms seales lgicas. Este circuito se puede representar a partir de la siguiente tabla de verdad:

Tabla de Verdad:ABSALIDA(1 = Iguales, 0 = distintos)001010100111

De la tabla de verdad se obtiene la siguiente ecuacin: S = AB + A B .A pesar de la simplicidad de la tabla de verdad, son necesarias cincocompuertas lgicas para esquematizarla. La salida ser 1, si A=B, sino ella ser 0. Los comparadores ms sofisticados presentan elementos lgicos con dos salidas adicionales: una para la salida , si A >B, y la otra salida1 cuando B > A. Existen comparadores de ms de dos bit , en este caso, se torna esencial el uso de un inversor (compuerta NOT) para cada bit ypuertas AND con tantas entradas como nmero de bits de entrada y senecesita apenas una puerta OR. Los chip disponibles comercialmente no slo tienen salidas para A=B, sino tambin para AB.A partir de la ecuacin encontrada S = AB + A Bsiguiente circuito lgico:podemos construir elCircuito lgico de un Comparador de 2 bitsNtese que latabla de verdad utilizada en el comparador, es semejante a la tabla OR - Exclusivo, solo que las salidas estn negadas, por lo tanto ste comparador tambin puede ser implementado con compuertas OR - exclusivo. A continuacin se presenta un comparador de 4 bit utilizando compuertas OR - exclusivo.El circuito est basado en la puerta OR EXCLUSIVO, que da 0 si las entradas son iguales y 1 si son distintas. Si las dos palabras, son iguales, las cuatro puertas OR - EXCLUSIVO deben dar 0. Despus se pueden pasar estas cuatro salidas por una puerta OR, que dar 0 si las palabras son iguales y 1 si son diferentes. En nuestro ejemplo hemos usado una puerta NOR en la etapa final para invertir el sentido de la comparacin: 1 significa igual y 0 desigual.Circuito lgico de un Comparador de 4 bits7.2.4DecodificadoresUn Decodificador es una funcin digital que convierte informacin binaria de una forma codificada a otra. Por ejemplo, un Decodificador BCD de siete segmentos convierte un dgito decimal en BCD (Decimal Codificado en Binario) en siete salidas para la seleccin de un conjunto de segmentos necesarios para exhibir un dgito decimal. Los Decodificadores presentados en sta seccin son denominados Decodificadores de Lnea n - a - 2n y su propsito es generar los 2n miniterm de las n variables de entrada. Estos codificadores forman un circuito de combinacin con n variables de entrada y 2n variables de salida. Para cada combinacin de entrada binaria de 1s y 0s hay una y slo una, lnea de salida que adquiere el valor de 1. Este tipo de Decodificador se encuentra en muchas aplicacionesy es utilizado extensamente en el diseo de sistemas digitales.El constade cuatro compuertas ANDy dos Inversores. UnDecodificador tiene tantas salidascuantas combinaciones de entradasbinarias sean posibles. En este ejemplo particular, las dos entradas X e Y pueden estar en uno en los cuatro valores binarios posibles, como se muestra en la tabla de verdad. Observe que las variables de salida son mutuamente excluyentes y que slo una salida puede ser igual a 1 en cualquier instante. La salida cuyo valor es igual a 1 representa la combinacin del miniterm en las lneas de entrada.UnejemplodeunDecodificadorde2por4semuestraa continuacin.Tabla de Verdad :XYD0D1D2D3001000010100100010110001De la tabla de verdad obtenemos las siguientes ecuaciones:D0 = XY; D1= XY ; D2= XY; D3= XY , por lo tanto, el circuito lgico es:Circuito lgico de un Decodificador de 2 por 4LosDecodificadoresdecircuitosintegradospuedenutilizar compuertas NAND o NOR en vez de compuertas AND. En este caso, las salidas son los complementos de los valores enumeradosen la tabla de verdad. La combinacin del minitermde las variables de entrada se distingue entonces por la salida cuyo valor es cero mientras todas las otras salidas son iguales a 1.Es conveniente algunas veces incluir una entrada de habilitacin con un Decodificador para controlar la operacin del circuito. Por ejemplo, un Decodificador de 3 por 8 con una habilitacin se muestra a continuacin. Todas las salidas sern igual a 0 si la entrada habilitadora est en 0. Esto ocurre debido a que un 0 en la entrada de una compuerta AND produce un0 en la salida, sin importar qu valorestengan las otras variables de entrada. Cuando la entrada habilitadora est en 1, el circuito opera como un Decodificador convencional. Para evitar dibujar el circuito lgico cadavez que se necesite un codificador (u otro circuito) podemos representarlo por medio de un diagrama de bloques simulando un circuito integrado.El tamao de un Decodificador en un CI (circuito integrado) depende usualmente del nmero de patas del chip. Por ejemplo, los Decodificadores de 2 por 4 pueden ser insertos en un chip de 14 patas. Un Decodificador de3 por 8 con una entrada habilitadora puede insertarse en un chip de 14 patas (8 salidas, 3 entradas, 1 habilitadora y 2 patas para el suministro de energa). Es posible proporcionar tres entradas habilitadoras si el chip contiene 16 patas.ElsiguientemuestraelesquemadelcircuitolgicodeunDecodificador de 3 por 8 entradasCircuito lgico de un Decodificador de 3 por 8Nota: El circuito integrado 3and contiene el siguiente subcircuito y es utilizadoparasimplificarlaimplementacin,comosemuestraa continuacin:Por otro lado el Decodificador 3 por 8 se puede representar por el siguiente diagrama de bloques:En resumen, un Decodificador 1 de 2n es un circuito combinacional con n lneas de entrada y 2n lneas de salida tal que, cada una de las 2n posibles combinaciones de entrada, activa una y slo una de las lneas de salida.Nota: En el circuito presentado no aparece la lnea habilitadora, pero tenga presente, que solo es una entrada extra a las compuertas AND, es decir, en vez de poseer tres entradas, poseern 4 siendo la ltima para la lnea habilitadora.7.2.5DemultiplexoresUn Decodificador con una o ms entradas habilitadoras puede funcionar como un Demultiplexor. Un Demultiplexor es una funcin digital que recibe informacin en una sola lnea y transmite esta informacin en una de 2n posibles lneas de salida. La lnea de salida que es seleccionada se determina de la combinacin de bits de las n lneas de seleccin. Un Decodificador (como elde 3 por 8 mostrado ac), funcionar como un Demultiplexor s la lnea habilitadora se toma como los datos de entrada y las entradas del Decodificador x, y, z, son tomadas como las lneas de seleccin.Lasolavariabledeentrada(disponibleenlalneadehabilitacin) tiene una ruta a todas las ocho salida, pero la informacin de entradaes dirigida a solamente unade las lneas de salida como se especifica por lacombinacin binariade las tres lneas de seleccin. Por ejemplo, si las lneas de seleccinxyz = 000, la salida D0 ser la misma como la informacin de entrada en la lnea de habilitacin mientras que las otrassalidassemantendrnen 0. Debidoalasimililituddelos Decodificadores y Demultiplexores, a estos circuitos se les conoce con el nombre de Decodificadores / Demultiplexores.7.2.6MultiplexoresLa funcin de un Multiplexor es recibir informacinde una sola fuente y conducirla a 2n salidas bajo control de las lneas de seleccin. Un Multiplexor digital realiza la operacin inversa. Un Multiplexor es una funcin digital que recibe informacin binaria de 2n lneas y transmite informacin a una sola salida. La nica lnea de entrada que es seleccionada sedeterminaapartirdelacombinacindebitsdelasnlneas seleccionadas. Un ejemplo de un Multiplexor de 4 por 1 se muestra a continuacin.Los CI 3and corresponde a una compuerta AND con tres entradasEl diagrama de bloques correspondiente a un Multiplexor de 4 entradas por una salida es :Las cuatro lneas de entrada son aplicadas a cuatro compuertas AND cuyas salidas van a una sola compuerta OR. Solamente una lnea de entrada tiene S1 y S0 determinan cul de las entradas se selecciona para formar una ruta directa hacia la salida. As, conS1S0 =10, la compuerta AND asociada con la entrada I2 tiene dos de sus entradas iguales a 1. Si I2=1 la salida de la compuerta es tambinigual a 1; si I2 =0, la salida es igual a 0. Todas las otras compuertas AND tienen una salida en 0. La salidade la compuerta OR ser igual al valor de la salida de la compuerta AND asociada con la salida I2 .Un Multiplexor tambin se le conoce con el nombre de Selector de Datos puesto que selecciona una de las mltiples lneas de entrada de datos y dirige la informacin binaria a la lnea de salida.La compuerta AND es un Multiplexor se parecen a un circuito Decodificador y en realidad, ellas descodifican las lneas de seleccin de entrada. En general, un circuito Multiplexor se construye a partir de un Decodificador n por 2n aadiendo una lnea de entrada a cada compuerta ANDy aplicando todas las salidas de las compuertas AND a una sola compuerta OR. El tamao de un Multiplexor es especificado por el nmero de sus entradas, 2n. Esto entonces implica que l tambin contiene una lnea de salida y n de salidas de seleccin. Un Multiplexor puede tener una o ms lneas de habilitacin, como en un Decodificador. Las lneas de habilitacin pueden utilizarse para expandir dos o ms Multiplexores CI (circuito integrado) a un Multiplexor digital con un mayor nmero de entradas.En resumen, en el nivel de lgica digital, un Multiplexor es un circuito de 2n entradas de datos, una salida de datos y n entradas de control que seleccionan una de las entradas de datos. El dato de entrada seleccionado es el que aparece a la salida del circuito. Un Multiplexor a dems de poseer las entradas correspondientes, posee unas lneas seleccionadoras (o lneas de control ), que codifican un nmero de tantos bits como lneas de control existan, que especifica que lnea de las tantas de entrada, pasa a la salida del circuito. Independientemente de los valores de las lneas de control, slo una de las compuertas AND dar un valor igual a 0 1, segn sea el valor de la lneade entrada que se seleccione y las restantes darn un valor igual a 0. Cada combinacin de las entradas de control permite el paso de informacin por una sola compuerta AND.7.3 Unidad aritmtica lgicaComo sabemos, la unidad encargada de sumar, multiplicar, comparar y realizar todas las operaciones Aritmticas y lgicas en el computador es la UnidadAritmtica-Lgica.Pararealizartodaslasoperaciones mencionadas, necesita de circuitos combinacionales lgicos que realicen cada operacin en particular, la mayora de estos circuitos han sido estudiado en sta seccin, por lo tanto, a modo de ejemplo se muestra un esquema general de la Unidad Aritmtica - Lgica y sus principales circuitos involucrados.Circuito lgico de la UNIDAD ARITMTICA LGICAExplicacin del circuito:La mayora de los computadores tienen un circuito nico para realizar, al menos, las operaciones AND, OR y suma de dos palabras de mquina. Uno de estos circuitos para procesar dos palabras de n bits suele construirse a partir de n circuitos idnticos, cada uno de los cuales procesa el par de bits de mismo peso de cada una de las palabras de entrada. La figura muestra a un ejemplo de Unidad Aritmtica y Lgica. Puede calcularuna de las cuatro funciones siguientes: A AND B, A OR B, B o A + B, segn las lneas de seleccin de funcin, F0 y F1, contengan (en binario) 00, 01,10 u 111, respectivamente.La esquina inferior izquierda de nuestra UAL (Unidad Aritmtica Lgica) contiene un Decodificador de 2 bits que genera las lneas de permiso para las cuatro operaciones a partir deF0 y F1. La esquina superior izquierda tiene la lgica para calcular A AND B, A OR B y B , pero a lo sumo slo uno de estos resultados puede pasar a la compuerta OR final; lo cual depende de las lneas de permiso que vienen del Decodificador. Como slo una de las salidas delDecodificador estar a 1, slo sepermitir el paso a travs de una de las compuertas AND que estn conectadas a la puerta OR; las tres restantes darn 0, independiente de A yB.La esquina inferior derecha tiene un sumador completo de un bit que calcula la suma de A y B, teniendo en cuenta los acarreos, ya que es probable que este circuito se use como una etapa para la realizacin de operaciones sobre palabras completas.7.4 PRACTICANDO CON CIRCUITOS DIGITALESElsiguiente ejemplo representa un circuito de alarma de equilibrio. Este circuito accionar una alarma solo si la embarcacin pierde el equilibrio, es decir, si se ladea a la izquierda o a la derecha, en otro caso la alarma no sonar. El siguiente dibujo muestra esquemticamente los estados posibles de la embarcacin.Tabla de verdadPOSICIN I C DALARMA ESTADO0 0 000 0 110 1 000 1 101 0 011 0 101 1 001 1 10Para esta tabla de verdad, no es necesario aplicar el mtodo de minimizacin del mapa de Karnaugh debido a que posee muy pocas variables. A continuacin se muestra la ecuacin obtenida directamente de esta tabla de verdad.ICD + ICD = C (ID+ID) = C (ID)Como podemos apreciar, se obtienen dos circuitos equivalentes para la misma operacin, pero uno de ellos utiliza menos compuertas lgicas en su implementacin. El siguiente circuito digital muestra los dos circuitos implementados.Circuito DigitalEl siguiente ejemplo muestra una entrada que representa que la embarcacin se desequilibr a la derecha, por lo tanto la alarma sonar. Note que ambos circuitos activan la alarma ya que son equivalentes entre s.En el siguiente ejemplo se supone que en una casa existen tres tipos de alarmas, dependiendo de cual de ellas se active marcar un determinado telfono. En este ejemplo se utilizarn las siguientes variables para representar las alarmas, L = Luz, C = Calor, S = sonido. Si se activa la alarma de Luz se deber discar el telfono de la polica, si se activa la alarma de Calor se llamar a los bomberos, y finalmente si se activa la alarma de Sonido se llamar a la Unidad de Rescate. Por otro lado, se tendrn en cuenta las siguientes condiciones especiales:CS, LCBomberosLSPolicaLCSPolica - Bomberos - RescateA continuacin se muestra la tabla de verdad correspondiente a este ejemplo:ALARMA L C DLLAMADA PBR0 0 00000 0 10010 1 00100 1 10101 0 01001 0 11001 1 00101 1 1111Ntese que en este caso no se utiliza el mapa de Karnaugh debido a la simplicidad de las variables. Por lo tanto, de la tabla de verdad podemos obtener directamente las siguientes ecuaciones:1).-ParalaalarmadePolicasetienelasiguientefrmula:LCS+LCS+LCS= L(C+CS)= L(C+S)2).-Para la alarma de Bomberos se tiene la siguiente frmula:LCS+LCS+LCS+LCS =C3).-Para la alarma de la Unidad de Rescate se tiene la siguiente frmulaLCS+LCS = S(LC+ LC)= S(L C)A continuacin se muestra el circuito digital correspondiente al ejemplo de las alarmas mltiples:Circuito DigitalEl siguiente circuito muestra a modo de ejemplo la condicin de que se activ tanto la alarma de Luz como de Calor, por definicin del problema como resultado del circuito, se debera llamar a los bomberos.El siguiente ejemplosimula un tablero de auto que posee los siguientes indicadores: una letra Lpara indicar luz, una letra A para indicar Aceite y finalmente una letra G para indicar gasolina. Estas letras se activarn en un display atendiendo de las siguientes condiciones:Condiciones para letra L:Condiciones para letra A:Condiciones para letra G:Puertas abiertasAumento de temperaturaDisminucinnivelde gasolinaAmpolletas en mal estadoAumentodeconsumode aguaCorto circuitoDisminucindenivelde aceiteAntes de definir la tabla de verdad diremos que para representar las letras L , A, G deben estar prendidos los siguientes segmentos:A partir de estas condiciones, podemos generar la siguiente tabla de verdad:CondicinVariables x y zDisplayg f e d c b a----------0 0 00 0 0 0 0 0 0Puertas abiertas0 0 10 1 1 1 0 0 0Ampolletas malas0 1 00 1 1 1 0 0 0Corto circuito0 1 10 1 1 1 0 0 0 temperatura1 0 01 1 1 0 1 1 1 Consumo de agua1 0 11 1 1 0 1 1 1 Nivel de aceite1 1 01 1 1 0 1 1 1 Nivel de gasolina1 1 11 1 1 1 1 0 1Mapa de karnaughEcuaciones obtenidas para G, F ,E:g = Xf = XZ + ( X Y ) + XYe = XZ + ( X Y ) + XYEcuaciones obtenidas para D, C, B, A:c = Xb = X (Z + Y )a = Xsigue:En resumen las ecuacionesobtenidas las podemos agrupar comoa,c,g=x; d= X (Z + Y ) + YZ ; f,e= XZ + ( X Y ) + XY ; b= X (Z + Y )A partir de estas ecuaciones se obtiene el siguiente circuito:Circuito DigitalEn el siguiente circuito se muestra como ejemplo la condicin (100) que significa segn la tabla de verdad a la condicin, Aumento de temperatura, por lo tanto, el tablero del auto est marcando la letra A correspondiente a la seal de Aceite.7.5Introduccin a los flip -flopDEFINICIONES:Un circuito se dice combinacional cuando su salida depende de las entradas en el restante considerado no importando el valor que haya tomado anteriormente.En general esposible realizar una funcinBooleana mediante combinacin de las diferentes compuertas existentes.En cambio, un circuito secuencial no slo depende de las entradas en el instante considerado sino que adems, de la evolucin anterior de ste. Para este caso se utilizan los Flip -Flop.Hay dos tipos de circuitos secuenciales y su clasificacin depende de las seales de tiempo. Un circuito secuencial sincrnico emplea elementos de almacenamiento denominados flip-flops que se permiten que cambien sus valores binarios solamente en instantes discretos de tiempo. Un circuito secuencial asincrnico es un sistema cuyas salidas dependen del orden en el cual sus variables de entrada cambian y puede afectarse en cualquier instante de tiempo. Los sistemas asincrnicos del tipo compuerta son bsicamente circuitos de combinacin con rutas de realimentacin. Debido a la realimentacin entre las compuertas lgicas el sistema puede, algunas veces, volverse inestable. Los problemas de inestabilidad encontrados en sistemas asincrnicos imponen muchas dificultades y por esta razn, rara vez son utilizados en el diseo de sistemas de computadores digitales.Los sistemas de lgica secuencial sincrnica utilizan compuertas lgica y dispositivos de almacenamiento con flip-flops. La sincronizacin se logra por un dispositivo de tiempo denominado un generador de pulsos de reloj. Los pulsos de reloj de generador son distribuidos a travs del sistema de tal manera que los flip-flops son afectados solamente con la llegada del pulso de sincronizacin. Los circuitos secuenciales sincrnicos de reloj no manifiestan problemas de inestabilidad y su sincronizacin de tiempo se puede desdoblar fcilmente en pasos independientes discretos, cada uno de los cuales puede considerarse separadamente. Los circuitos secuenciales discutidos en este libro son exclusivamente del tipo sincrnico con reloj.Un flip-flops es una celda binaria capaz de almacenar un bit de informacin. Tiene dos salidas, una para el valor normal y otra para el valor complementado del bit almacenado en l. Un flip-flops mantiene un estado binario hasta que sea dirigido por un flops est en el nmero de entradas que posan y en la manera en la cual las entradas afectan el estado binario. Los tipos ms comunes de flip-flops se discuten a continuacin.7.5.1Flip-flop bsico o de pestilloUn flip-flop asincrnico se construye a partir de dos compuertas NAND y dos compuertas NOR conectadas frente a frente. EL circuito para la versin NAND se muestra en la Figura. Las conexiones cruzadas de la salida de una compuerta con la entrada de la otra constituyen el camino de realimentacin. Por esta razn, el circuito se clasifica como asincrnico. Cada flip-flop tiene dos salidas, Q y Q, y dos entradas, set y reset. Este tipo de flip-flop es denominado un flip-flop RS directamente acoplado, la R y la S son las primeras letras de los nombres de las dos entradas. Otro nombre ms popular para este tipo de flip-flop es un pestillo. El pestillo forma un circuito bsico a partir del cual pueden construirse tipos ms complicados de flip-flop.Flip-flop bsico (pestillo)El pestillo NAND opera con ambas entradas normales en 1, a no ser que el estado del circuito tenga que cambiarse. La aplicacin de un 0 momentneo a la entrada set hace que la salida Q se coloque en 1 y Q en0. Las salidas del circuito no cambian cuando la entrada set regresa a 1. Un0 momentneamente aplicado a la entrada reset coloca la salida Q = 0 y Q= 1. El estado de flip-flop es siempre tomado del valor de su salida normal Q. Cuando Q = 1, decimos que el flip-flop almacena un 1 y est en el estado set. Cuando Q = 0, decimos que el flip-flop almacena un 0 y est en el estado aclarado.El circuito pestillo manifiesta una condicin indeseable si ambas entradas se colocan en 0 simultneamente. La investigacin del circuito mostrar que cuando ambas entradas son 0, las salidas Q y Q se colocan en 1, una condicin que no tiene normalmente ningn significado en la operacin de un flip-flop. Si ambas entradas regresan a 1, el estado del flip- flop no es predecible; cualquier estado puede resultar, dependiendo de cul entrada permanezca en el estado 0 por el mayor perodo de tiempo antes de la transicin a 1.7.5.2Flip-flop RSAadiendo compuertas a las entradas del pestillo, el flip-flop puede hacer que responda solamente durante la ocurrencia de un pulso de reloj: El flip-flop RS con reloj, que se muestra en la Figura, consiste en un pestillo bsico y dos compuertas adicionales NAND. Las salidas de compuerta 3 y 4 permanecen en 1 siempre y cuando el pulso de reloj (abreviado CP) est en0, independiente de los valores de las entradas R y S. Cuando el pulso de reloj va a 1, la informacin de las entradas S y R se permite que alcance el pestillo en las compuertas 1 y 2. El estado de set se alcanza con S = 1, R =0 y CP = 1. Para cambiar al estado aclarado, las entradas deben ser S = 0, R = 1, y CP = 1. Con S = 0 y R = 0, un CP de 1 no afecta el estado del flip-flop. S y R no pueden ser 1 durante la ocurrencia de un pulso de relojdebido a que el estado siguiente del flip-flop es indeterminado.Diagrama lgico de un flip-flop RS con relojEl smbolo grfico o diagrama de bloques del flip-flop que se muestra en la Figura, tiene tres entradas: S, R, y CP. La entrada CP se marca con un pequeo tringulo. El tringulo es un smbolo para un indicador dinmico y denota el hecho de que el circuito responde a una entrada de transicin de0 a 1. A las salidas del flip-flop se les da un nombre variable tal como Q o cualquier otra designacin con una letra conveniente. El pequeo tringulo rectngulo es un smbolo grfico para un indicador de polaridad. El designa la salida complementada del flip-flop la cual es en este caso Q.Diagrama de Bloques Flip-flop RSTabla de VerdadSRQ( t+1 )COMENTARIO00Q( t )No Cambias010Aclarar101Set11?No PermitidoLa tabla caracterstica mostrada, resume la operacin del flip-flop RS en forma tabular. Q(t) es el estado binario del flip-flop en un instante dado de tiempo (conocido como el estado presente). Las columnas S y R dan los valores binarios de las entradas. Q(t+1) es el estado del flip-flop despus que ha ocurrido un pulso de reloj (conocido el estado siguiente). Si S=R=0, un pulso no produce cambio de estado, esto es Q(t+1)=Q(t). Si S=0 y R=1, el flip-flop llega al estado 0 (el estado aclarado). Si S=1 y R=0 el flip-flop llega al estado 1 (el estado set). Un flip-flop RS no debe ser pulsado cuando S=R=1 puesto que produce un estado siguiente indeterminado.7.5.3El flip-flop DEl flip-flop D (dato) es una modificacin ligera del flip-flop RS. Un flip- flop RS se convierte a un flip-flop D insertando un inversor entre S y R y asignndole el smbolo D a la entrada S. La entrada D es muestreada durante la ocurrencia de un pulso de reloj y si este es 1, el flip-flop alcanza el estado 1 (debido a que S=1 y R=0). Si l es 0, el pulso cambia el estado del flip-flop a 0 (debido a que S=0 y R=1). El smbolo grfico y la tabla caracterstica del flip-flop D se muestran en la siguiente Figura. Note que no existe condicin de entrada que deje el estado del flip-flop sin cambiar. Aunque un flip-flop D tiene la ventaja de tener solamente una entrada (excluyendo CP), tiene la desventaja de que su tabla caracterstica no tiene una condicin de no cambio Q(t+1)=Q(t). El no cambio puede lograrse bien rehabilitando los pulsos de reloj con una compuerta externa AND o alimentando la entrada de nuevo hacia la salida de tal manera que los pulsos del reloj mantengan el estado del flip-flop sin modificar.Flip-flop DTabla de VerdadDQ ( t+1 )COMENTARIO00Aclarar11Set7.5.4El flip - flop Jk y TUn flip-flop JK es un refinamiento de un flip-flop RS en que la condicin intermedia del tipo RS est definida en el tipo JK. Las entradas J y K se comportan como un conjunto de entradas S y R para hacer el set y el aclaramiento del flip-flop respectivamente. Cuando las entradas J y K son ambas iguales a 1, un pulso de reloj conmuta las salidas del flip-flop a su estadocomplementario,Q(t+1)=Q(t).Elsmbologrficoytabla caracterstica del flip-flop JK se muestran en la Figura. Note que la entrada J es equivalente a la condicin set mientras que la entrada K produce la condicin de aclaramiento. Adems hay condiciones de no cambio y complementarias en este tipo de flip-flop.Flip-flop JKTabla de VerdadJKQ ( t+1 )COMENTARIO00Q( t+1 )No Cambia010Aclarar101Set11Q ( t )ComplementoFlip-flop TTabla de VerdadTQ ( t+1 )COMENTARIO0Q ( t )No Cambia1Q ( t )ComplementoOtro tipo de flip-flop que se encuentra en los libros de texto es el flip- flop T (toggle). Este flip-flop, mostrado en la Figura, se obtiene de un tipo JK cuando las entradas J y K se amarran juntas. El flip-flop T, por consiguiente, tiene solamente dos condiciones. Cuando T=0 (J=K=0) un pulso de reloj no cambia el estado de flip-flop. Cuando T=1 (J=K=1) un pulso de reloj complementa el estado del flip-flop.Tabla de ExcitacinLas tablas caractersticas de flip-flops especifican el estado cuando las entradas y el estado presente se conocen. Durante el proceso de diseo conocemos normalmente la transicin requerida del estado presente al estado siguiente y deseamos encontrar las condiciones de entrada del flip- flop que harn la transicin requerida. Por esta razn necesitamos una tabla que liste las combinaciones de entrada requerida para un cambio dado de estado. Una tabla como esta se denomina una tabla de excitacin del flip- flop.La Tabla Resumen, lista las tablas de excitacin para los cuatro tipos de flip-flops. Cada una de las tablas consta de dos columnas, Q(t) y Q(t+1), y una columna para cada una de las entradas para mostrar como se logra la transicin requerida. Hay cuatro transiciones posibles de un estado presente Q(t) a un estado siguiente Q(t+1). Las condiciones de entrada requeridas para cada una de estas transiciones se derivan de la informacin disponible en las tablas caractersticas. El smbolo X en las tablas representa condiciones que no importan; esto es, no importa si la entrada del flip-flop es 0 1.Tablas de excitacin para los cuatro tipos de flip-flopsQ(t)Q(t+1)SRQ(t) Q(t+1)JK000X0110100111X0000X011X10X111X0(a) Flip-Flop RS(b) Flip-Flop JKQ(t)Q(t+1)DQ(t)Q(t+1)T000011100111000011101110(c ) Flip-flop D(d) Flip-Flop TTabla resumen de Flip -FlopLa razn para las condiciones que no importan en las tablas de excitacin es que hay dos maneras de lograr la transicin requerida. Por ejemplo, en un flip-flop RS, una transicin del estado presente de 0 a un estado siguiente de 0 puede lograrse teniendo las entradas S y R iguales a0 (para que no ocurra cambio cuando se aplica el pulso de reloj), o haciendo S=0 y R=1 para aclarar el flip-flop (aunque ya est aclarado). En ambos casos S debe ser 0, pero R es 0 en el primer caso y 1 en el segundo. Puesto que la transicin requerida ocurrir en cualquier caso, marcamos la entrada R con una X y dejamos al diseador para que escoja o 0 o 1 para la entrada R, la que para l sea ms conveniente.7.6 Ejemplos prcticos utilizando flip -flop:7.6.1RESTADOR UTILIZANDO SUMADORESLaUnidadAritmticaLgica(UAL)realizaotrasoperaciones aritmticas, tales como la multiplicacin y divisin por nmeros distintos de2, suma de cdigos decimales y resta. La resta puede ser realizada utilizando un circuito restador, en la misma forma en que se utilizaba un circuito sumador. De todas formas, para limitar el nmero de circuitos diferentes, la resta en los computadores se realiza mediante el circuito sumador. Para hacer esto, es necesario cambiar algunos de los nmeros binarios a nmeros codificados en Complemento A2. Como se mostrar en la siguiente figura, ntese que las entradas de los bits B estn negados por un inversor, invirtiendo las entradas antes que entren en el sumador y aplicando un arrastre de entrada (Cin), el sumador efectuar la operacin resta en vez de sumar. Para aclarar el concepto, utilizaremos como ejemplo efectuar la siguiente operacin aritmtica: A - B, donde A=12 yB=6.Observemos que enviando el nmero B a travs de los inversores del circuito, los bit a sumar son 1001, en vez de 0110(el equivalente decimal de 6). Este es el complemento o Complemento A1 de 0110. Sumando 1001 al nmero A, 1100 (equivalente binario del nmero decimal 12), con un arrastre de entrada 1, se obtiene el resultado 0110. As mediante la suma obtenemos la resta deseada (12 - 6 = 6). El arrastre sumado proporciona el complemento A2 del nmero B. Con este procedimiento se ahorra superficie en el circuito integrado, porque los circuitos del sumador se utilizan para ms de una funcin. A continuacin se realizar el desarrollo matemtico de la operacin resta:SeaA= 1210= 11002B = 6 10= 01102Calculemos el Complemento A1 de B A1 de B = 1001Efectuemos la suma A+ A1 de B, y finalmente el Complemento A2 producido por el acarreo.en binario).Por lo tanto : El circuito Sumador a restado 12 - 6 = 6 (0110Diagrama de Bloques del Circuito Lgico:Paracomprendermejorelfuncionamientodelasoperaciones aritmticas bsicas, hemos utilizado slo nmeros de 4 bits. A continuacin se muestra el diagrama de bloques del circuito que se comporta como Sumador / Restador.7.6.2MULTIPLICADORES Y DIVISORES (Desplazadores):Para realizar la multiplicacin y la divisin se necesitan registros con capacidad de desplazamiento de nmeros aderecha e izquierda.Otras operaciones aritmticas necesarias en los Pc son la multiplicacin y la divisin de un nmero por 2. Para realizar estas operaciones se necesitan circuitos de control y / o registros que puedan desplazar un nmero binario una posicin a la derecha (Divisin por 2) o una posicin hacia la izquierda (Multiplicacin por 2). Una forma en que esto pueda hacerse es dando salida a los datosdel registro y hacindolos volver a ste en la posicin desplazada. La siguiente figura muestra un circuito que permite hacer desplazamientosa laderechao laizquierda. Pararealizarel desplazamiento a la izquierda, se coloca un 1 en la lnea de Desplazamiento Izquierda y se enva la salida de un determinado Flip-Flop a la entrada del Flip - Flop situado inmediatamente a su izquierda a travs de las puertas de Retencin. La seal de Desplazamiento Izquierda es sincronizada por el reloj. El Flip - Flop de arrastre de salida guarda elBit ms significativo presente antes del desplazamiento, puede necesitarse para las operaciones siguientes. Un desplazamiento a la derecha se realiza enviando una seal 1 porlalneadeDesplazamientoDerecha,envezdeporlade Desplazamiento Izquierda, a lo que provoca que cada Flip -Flop enve su contenido situado inmediatamente a su derecha, a travs de las puertas de retencin. Por ejemplo, si el nmero almacenado en el registro es 0110 ( equivalente al 6 decimal) antes del desplazamiento a la izquierda, el nmero almacenado despus de la operacin de desplazamiento es 1100 ( equivalente al nmero 12 decimal). El desplazamiento a la izquierda ha multiplicado el nmero por 2. Si el 1100 es desplazado a la derecha, se convierte en 0110; significa que el nmero 12 ha sido dividido por 2. Amodo de ejemplo, se desarrollar las operaciones de multiplicacin y divisin aprovechando el desplazamiento de bit a la izquierda o derecha.Se desea ejecutar la siguiente operacin matemtica6*2 = 12:El equivalente del nmero 6 decimal a binario es 0110, veamos en forma grfica el desplazamiento a la izquierda para generar el resultado1100 equivalente a 12 en decimal:Multiplicacin:Seael nmero decimal 6 igual0110binario, ste nmero se ha representado en un arreglo de 8 bit, los 4 bit segmentados llenos de ceros, servirnparaefectuareldesplazamiento. Comosetratadeuna multiplicacin el desplazamiento se realizar en un bit a la izquierda a partir del dgito ms significativo (1). La siguiente figura el desplazamiento a laizquierda.Despus del desplazamiento a la izquierda se obtiene el nmero binario 1100 equivalente al nmero 12 decimal. Por lo tanto, se ha multiplicado por 2.DivisinEn forma anloga al ejemplo anterior, se representa elnmero a dividir(4 2) en un arreglo, pero con la diferencia que las posiciones delos bit segmentados aparecen a la izquierda, puesto que se realizar undesplazamiento a la derecha:.Despus del desplazamiento a la derecha,se obtiene el nmero binario 0010 equivalente al nmero 2 decimal. Por lo tanto, se ha dividido por 2.La siguiente figura muestra el diagrama de bloques que representa a un Multiplicador / Divisor de 4 bit.Nota: La seal de Izquierda - Derecha controla las puertas de retencinNmero antes del desplazamiento en un registro de 4 bits 0110(6) Nmero despus del desplazamiento en un registro de 4 Bits 1100 (12).7.6.3MEMORIA RAM DE CIRCUITOS INTEGRADOS.Las memorias de circuitos integrados algunas veces tienen una sola lnea para el control leer/escribir. Un estado binario, digamos 1, especifica una operacin leer y el otro estado binario especifica una operacin escribir. Adems, se pueden incluir o ms lneas de habilitacin en cadauno de los paquetes del circuito integrado para proporcionar medios para expandir varios paquetes en una unidad de memoria con un gran nmero de palabras.La construccin interna de una memoria de acceso aleatorio de mpalabrasconnbitspor palabra constadem*nceldasde almacenamiento binario y lgica necesaria para seleccionar una palabra para escribir o leer. Lacelda de almacenamiento binario es el bloque de construccin bsico de una unidad de memoria. El diagrama lgico de una celdabinariaquealmacenaunbitdeinformacinsemuestraa continuacin. Aunque la celda se muestra que incluye cinco compuertas yun flip-flop, internamente es construida con 2 flip-flop de transistores que tienen entradas mltiples. La celda binaria de una unidad de memoria debe ser muy pequea para ser capaz de empacar tantas celdas como sea posible en el rea del semiconductor disponible en la pastilla. La celda binaria se muestra que tiene tres lneas de entrada y una lnea de salida.Diagrama LgicoDiagrama de bloque BC Celda BinariaEste circuito es equivalente al recin mencionado, para efectos de simplicidad del circuito se ha utilizado ste ltimo en vez del anterior.El propsito de la entrada select es seleccionar una celda de las muchas disponibles. Con la lnea select en 1, un 1 en el terminalleer/escribir conforma una ruta de la salida del flip-flop al terminal de salida. Con el terminal leer/escribir en 0, el bit en la lnea de entrada se transfiere al flip-flop. Con la entrada como la salida son deshabilitadas cuando la lnea select es 0. Note que el flip-flop opera sin pulso de reloj y que su propsito es almacenar el bit de informacin en la celda binaria.La configuracin de una RAM de 4 por 3 se muestra en la figura que sigue. Contiene cuatro palabras de tres bits cada una para un total de12 celdas de almacenamiento. Cada caja pequea rotulada BC en el diagrama contiene el circuito de una celda binaria. Las cuatro lneas que se ven en cada caja BC designan los tres terminales de entrada y un terminal de salida como se especific en el diagrama anterior.Circuito lgico de una Memoria RAM de 4 por 3.Las dos lneas de direccin van a un Decodificador 2 por 4 con una entrada de habilitacin. Cuando la habilitacin de memoria es 0, todas las salidas del Decodificador son 0 y ninguna de las palabras de la memoria se seleccionan. Con la entrada habilitada de memoria en 1, una de las cuatro palabras es seleccionada, dependiendo de la combinacin del bit de las dos lneas de direccin. Ahora, con el control leer/escribir en 1, los bits de la palabra seleccionada van a tres compuertas OR y a los terminales desalida. Las celdas binarias no seleccionadas producen 0's en las entradas del OR y no tienen efectoen las salidas. Con el control leer/escribir en 0, la informacin disponible en las lneas de entrada se transfiere a los flip-flop de la palabra seleccionada. Las celdas binarias no seleccionadas en las otras palabras son deshabilitadas por la lnea de seleccin de tal manera que los valores previos permanecen inmodificados. As, con la habilitacin de la memoria en 1, el control leer/escribir inicia las operaciones leer y escribir para la unidad de memoria. Una operacin de inhibicin se obtiene manteniendo la habilitacin de memoria en 0. Esta condicin deja los contenidos de todas las palabras en la memoria como eran, independiente del valor del control leer/escribir.7.6.4MEMORIAS DE SOLO LECTURA (ROM).Una memoria de solo lectura (ROM), como su nombre lo indica, es una unidad de memoria que realiza solamente la operacin de lectura: no tiene la capacidad de escribir. Esto implica que la informacin binaria almacenada en una ROM se realiza permanentemente durante la produccin del hardware de la unidad y no puede ser alterada escribiendo palabras diferentes en ella.Mientras que una RAM es un dispositivo de propsito general cuyos contenidos pueden alterarse durante el proceso de cmputo, unaROMestrestringidaalalecturadepalabrasqueson permanentemente almacenadas dentro de la unidad.Una ROM m por n es un arreglo de celdas binarias organizadas en m palabras de n bits cada una. Como se muestra en el diagrama de bloques de la figura siguiente, una ROM tiene k lneas de direccin para seleccionar una de 2k =m palabras de memoria, y n lneas de salida, una para cada uno de los bits de la palabra.La ROM no necesita una lnea de control leer puesto que en un instante dado, las lneas de salida automticamente proporciona los 1's y0's de los n bits de la palabra selecciona por el valor de la direccin. Debido a que las salidas son una funcin solamente de las entradas presentes (las lneasdedireccin)unaROM esclasificadacomouncircuito de combinacin.Enrealidad, unaROM seconstruyeinternamentecon Decodificadores y un conjunto de compuertas OR. No hay necesidad deproporcionar condiciones de almacenamiento como en el RAM, puesto quelos valores de los bits en la ROM se mantienen fijos permanentes.Considere el diagrama lgico siguiente de una ROM 4 por 3. La unidad contiene un Decodificador de 2 por 4 para decodificar las dos lneas de direccin. Las compuertas OR proporcionan tres salidas. Si cada uno de los minterms de salida del Decodificador es conectado a la entrada de cada uno de las compuertas OR, las salidas del circuito estarn en 1 no importa cual sea la palabra seleccionada por las lneas de direccin. Supongamos que deseamos que la ROM contenga las combinaciones de bits que se numeran en la tabla de verdad que acompaa al diagrama. La tabla de verdad especifica una combinacin de bit de 010 para la palabra 0. Esta combinacin de bits se obtiene rompiendo dos alambres (marcados con una cruz) entre la palabra 0 y las entradas que estn ms a la izquierda de las compuertas OR. En otras palabras, cuando la lnea de direccin de entrada es 00, la salida D del Decodificador es igual a 1 y todas las otras salidas del Decodificador son iguales a 0. Solamente la compuerta OR asociada con la salida A2 recibe una entrada de 1 debido a que los otros dos alambres estn rotos. Por consiguiente, las lneas de salida proporcionan una salida A1A2A3=010 (suponiendo que un alambre abierto de la compuerta OR se comporta como una entrada 0). Similarmente, todos los otros alambres marcados con cruces indican alambres rotos y cuando estos alambres se retiran del diagrama, el diagrama lgico as obtenido implementar la tabla de verdad que se enumeran para la ROM.Circuito ROM de 4 por 3Tabla de Verdad:DireccinSalidasXYA1A2A300010010011010111110Una ROM CI se fabrica primero con todas las salidas en 1 (o todas en0, dependiendo del CI particular). El patrn particular de 1's y 0's se obtiene proporcionando una mscara en el ltimo paso de fabricacin. Cada una de las celdas en una ROM incorpora un enlace (en la posicin de la cruz endiagrama)quepuedefusionarseduranteelltimoprocesode fabricacin. Un enlace roto en una celda define un estado binario y un enlace no roto representa el otro estado.El procedimiento involucrado en la fabricacin de ROMs requiere que el cliente llene la tabla de verdad que l desea que satisfaga la ROM. El fabricante entonces hace la mscara correspondiente para los enlaces para que se produzcan los 1's y 0's de cada palabra deseada. Este procedimiento es denominado una programacin al cliente o una programacin de mscara. Es un procedimiento de hardware aunque se utilice aqu la palabra programacin.Para pequeas cantidades es ms conveniente utilizar la ROM programable, conocido como una PROM. Cuando se ordena, las PROMs contienen todos 0's (o todos 1's) en cada palabra.Cada una de las celdas de una PROM incorpora un enlace que puede fundirse por aplicacin de un pulso de corriente elevada. Un enlace roto en una celda define un estado binario y uno que no est roto representa el otroestado. El procedimiento usualmente es irreversible y, una vez fundido, la salida para aquel bit es permanente. Esto permite al usuario programar la unidad en su propio laboratorio rompiendo los enlaces que deben ser abiertos para lograr las relaciones deseadas entre las direcciones de entrada y los datos de salida.Tambin se encuentra disponibles las PROMs borrables. Estas ROMs tienen un procedimiento especial para restaurar los enlaces a su valor inicial (todos 0's o todos 1's) aunque ellos hayan sido programados previamente. En cualquier caso, todos los procedimientos para programar o borrar ROMs son procedimientos de hardware. Las aplicaciones digitales que utilizan ROMs especifican un patrn de palabra fija. El aspecto de programacin de la ROM tiene que ver con los procedimientos para obtener el patrn fijo deseado.Las ROMs son ampliamente utilizadas para convertir un cdigo binario a otro, para tablas que se necesitan en funciones matemticas, para la exhibicin de caracteres, y muchas otras aplicaciones que requieren un gran nmero de entradas y salidas. Tambin se emplean en el diseo de unidades de control para computadores digitales.En este aspecto se usan para almacenar informacin codificada que representa la secuencia de variables de control internas necesarias para habilitar las diversas operaciones en el computador. Una unidad de control que utilizan una ROM para almacenar informacin de control binario es denominada una unidad de control microprogramada.El siguiente ejemplo muestra un contador digital de 2 bit. Este sumador podr sumar desde 00 hasta el nmero 99 decimal. Este circuito ha sido implementado utilizando 4 Flip - Flop JK, ms una compuerta AND. Para efectos de simplicidad del circuito, se ha utilizado un CI llamado bcdcnt (Contador BCD).El siguiente esquema muestra el circuito lgico del contador:Circuito Integrado utilizado:Subcircuito del CI bcdcnt: