viernes, 15 de octubre de 2010

RESUMEN

Los circuitos de conmutación y temporización, o circuitos lógicos, forman la base de cualquier dispositivo en el que se tengan que seleccionar o combinar señales de manera controlada. Entre los campos de aplicación de estos tipos de circuitos pueden mencionarse la conmutación telefónica, las transmisiones por satélite y el funcionamiento de las computadoras digitales.

La lógica digital es un proceso racional para adoptar sencillas decisiones de 'verdadero' o 'falso' basadas en las reglas del álgebra de Boole. El estado verdadero se representado por un 1, y falso por un 0, y en los circuitos lógicos estos numerales aparecen como señales de dos tensiones diferentes. Los circuitos lógicos se utilizan para adoptar decisiones específicas de 'verdadero-falso' sobre la base de la presencia de múltiples señales 'verdadero-falso' en las entradas. Las señales se pueden generar por conmutadores mecánicos o por transductores de estado sólido. La señal de entrada, una vez aceptada y acondicionada (para eliminar las señales eléctricas indeseadas, o ruidos), es procesada por los circuitos lógicos digitales. Las diversas familias de dispositivos lógicos digitales, por lo general circuitos integrados, ejecutan una variedad de funciones lógicas a través de las llamadas puertas lógicas, como las puertas OR, AND y NOT y combinaciones de las mismas (como 'NOR', que incluye a OR y a NOT). Otra familia lógica muy utilizada es la lógica transistor-transistor. También se emplea la lógica de semiconductor complementario de óxido metálico, que ejecuta funciones similares a niveles de potencia muy bajos pero a velocidades de funcionamiento ligeramente inferiores. Existen también muchas otras variedades de circuitos lógicos, incluyendo la hoy obsoleta lógica reóstato-transistor y la lógica de acoplamiento por emisor, utilizada para sistemas de muy altas velocidades.

Los bloques elementales de un dispositivo lógico se denominan puertas lógicas digitales. Una puerta Y (AND) tiene dos o más entradas y una única salida. La salida de una puerta Y es verdadera sólo si todas las entradas son verdaderas. Una puerta O (OR) tiene dos o más entradas y una sola salida. La salida de una puerta O es verdadera si cualquiera de las entradas es verdadera, y es falsa si todas las entradas son falsas. Una puerta INVERSORA (INVERTER) tiene una única entrada y una única salida, y puede convertir una señal verdadera en falsa, efectuando de esta manera la función negación (NOT). A partir de las puertas elementales pueden construirse circuitos lógicos más complicados, entre los que pueden mencionarse los circuitos biestables (también llamados flip-flops, que son interruptores binarios), contadores, comparadores, sumadores y combinaciones más complejas.

En general, para ejecutar una determinada función es necesario conectar grandes cantidades de elementos lógicos en circuitos complejos. En algunos casos se utilizan microprocesadores para efectuar muchas de las funciones de conmutación y temporización de los elementos lógicos individuales. Los procesadores están específicamente programados con instrucciones individuales para ejecutar una determinada tarea o tareas. Una de las ventajas de los microprocesadores es que permiten realizar diferentes funciones lógicas, dependiendo de las instrucciones de programación almacenadas. La desventaja de los microprocesadores es que normalmente funcionan de manera secuencial, lo que podría resultar demasiado lento para algunas aplicaciones.
En tales casos se emplean circuitos lógicos especialmente diseñados.

El desarrollo de los circuitos integrados ha revolucionado los campos de las comunicaciones, la gestión de la información y la informática. Los circuitos integrados han permitido reducir el tamaño de los dispositivos con el consiguiente descenso de los costes de fabricación y de mantenimiento de los sistemas. Al mismo tiempo, ofrecen mayor velocidad y fiabilidad. Los relojes digitales, las computadoras portátiles y los juegos electrónicos son sistemas basados en microprocesadores. Otro avance importante es la digitalización de las señales de sonido, proceso en el cual la frecuencia y la amplitud de una señal de sonido se codifica digitalmente mediante técnicas de muestreo adecuadas, es decir, técnicas para medir la amplitud de la señal a intervalos muy cortos. La música grabada de forma digital, como la de los discos compactos, se caracteriza por una fidelidad que no era posible alcanzar con los métodos de grabación directa.

La electrónica médica ha llegado hasta a sistemas que pueden diferenciar aún más los órganos del cuerpo humano. Se han desarrollado asimismo dispositivos que permiten ver los vasos sanguíneos y el sistema respiratorio. También la alta definición promete sustituir a numerosos procesos fotográficos al eliminar la necesidad de utilizar plata.

La investigación actual dirigida a aumentar la velocidad y capacidad de las computadoras se centra sobre todo en la mejora de la tecnología de los circuitos integrados y en el desarrollo de componentes de conmutación aún más rápidos. Se han construido circuitos integrados a gran escala que contienen varios centenares de miles de componentes en un solo chip. Han llegado a fabricarse computadoras que alcanzan altísimas velocidades en las cuales los semiconductores son reemplazados por circuitos superconductores que utilizan las uniones de Josephson y que funcionan a temperaturas cercanas al cero absoluto.

MEMORIA ROM

Una ROM es esencialmente un dispositivo (o acumulador) de memoria en el cual se almacena un conjunto fijo de información binaria. La información binaria debe especificarse por el usuario y luego enclavarse en la unidad para formar el patrón de interconexión requerida. Las ROM vienen con enlaces internos especiales que pueden estar fusionados o abiertos. La interconexión deseada para una aplicación particular requiere que ciertos enlaces estén fusionados para formar los caminos del circuito necesarios. Una vez que se establezca un patrón para una ROM, éste permanecerá fijo, aunque se haga un corte de corriente y luego se restablezca.
UNID2_63.gif (7182 bytes)La Figura 16, muestra un diagrama a bloques de una ROM. Este consiste en n líneas de entrada y m líneas de salida. Cada combinación de bits de las variables de entrada se llama una dirección. Cada combinación de bits que sale por las líneas de salida se llama una palabra. El número de bits por palabra es igual al número de líneas de salida . Una dirección es esencialmente un número binario que denota uno de los términos mínimos de n variables. El número de direcciones diferentes posibles de n variables de entrada es 2. Una palabra de salida puede seleccionarse por una dirección única y como hay 2 direcciones diferentes en una ROM, hay 2 palabras diferentes que se dice que están acumuladas en la unidad. La palabra disponible en las líneas de salida, en cualquier momento dado, depende del valor de la dirección aplicada a las líneas de entrada. Una ROM se caracteriza por el número de palabras, 2, y el número de bits por palabra m. Esta terminología se usa debido a la similitud entre la memoria de sólo lectura y la memoria de lectura-escritura.nnnnm

    Considérese una ROM de 32x8. La unidad consiste de 32 palabras de 8 bits cada una. Esto significa que hay 8 líneas de salida y 2 palabras distintas almacenadas en la unidad. La palabra particular seleccionada que está presente en las líneas de salida se determina a partir de lasa. Hay solamente cinco cinco líneas de entrad entradas en una ROM de 32x8 porque 2 y con cinco variables se pueden especificar 32 direcciones o términos mínimos. Para cada dirección de entrada hay una palabra única seleccionada. Así, si una dirección de entrada es 11111, se selecciona la palabra número 31 y se aplica a las líneas de salida. Entre la primera y la última hay otras 31 direcciones que pueden seleccionar otras 31 palabras.6=32
    El número de palabras direccionadas en una ROM se determina del hecho de que se necesitan n líneas de entrada para especificar 2 palabras. Una ROM se especifica algunas veces por el número total de bits que contiene, el cual será 2. Por ejemplo, una ROM de 2048 bits puede organizarse como 512 palabras de 4 bits cada una. Esto significa que la unidad tiene 4 líneas de salida y 9 líneas de entrada para especificar 2palabras. El número total de bits en la unidad es 512x4=2,048.9=512 nxmn
UNID2_64.gif (16437 bytes)     Internamente, la ROM es un circuito combinacional con compuertas Y conectadas como decodificador y un número de compuertas O igual al número de salidas de la unidad. La Figura 17, muestra la construcción lógica interna de una ROM de 32x4. Las cinco variables de entrada se codifican en 32 líneas por medio de 32 compuertas Y y cinco inversores. Cada salida del decodificador representa uno de los términos mínimos de una función de 5 variables. Cada una de las 32 direcciones selecciona una y solo una salida del decodificador. La dirección es un número de 5 bits aplicado a las entradas y el término mínimo seleccionado por fuera del decodificador es el marcado con el número decimal equivalente. Las 32 salidas del decodificador están conectadas por medio de enlaces a cada compuerta O. Solamente 4 de estos enlaces se muestran en el diagrama, pero realmente cada compuerta O tiene 32 entradas y cada entrada pasa a través de un enlace que puede estar cortado, si así se desea.
    La ROM es una configuración de dos niveles en forma de suma de términos mínimos. No tiene que ser una configuración Y-O, pero puede ser cualquier otra posible configuración de términos mínimos de dos niveles. El segundo nivel es normalmente una conexión de lógica cableada para facilitar la fusión de los enlaces.
    La ROM tiene muchas aplicaciones importantes en el diseño de sistemas de computadoras digitales. Su uso para la configuración de circuitos combinacionales complejos es justamente una de esas aplicaciones.
    Del diagrama lógico de la ROM, es claro que cada salida produce la suma de todos los términos mínimos de n variables de entrada. Recuérdese que una función de Boole puede expresarse en forma de suma de términos mínimos. Al romper los enlaces de aquellos términos mínimos que no se incluyen en la función, cada salida de la ROM puede hacerse que represente la función de Boole de una de las variables de salida de un circuito combinacional. Para un circuito combinacional de n entradas y m salidas se necesita una ROM de 2. La ruptura de los enlaces se refiere a la programación de la ROM. El diseñador necesita solamente especificar una tabla del programa ROM que da la información para los caminos necesarios en la ROM. La programación real es un procedimiento del material que sigue las especificaciones listadas en la tabla de programación.nxm

UNID2_65.gif (15452 bytes)     Para aclarar el proceso es necesario un ejemplo específico. La siguiente tabla, corresponde al logigrama de la Figura 18, especifica un circuito combinacional con dos entradas y dos salidas.

DECA1A0F1F0
0
1
2
3
0
0
1
1
0
1
0
1
0
1
1
1
1
0
1
0
    Las funciones de Boole pueden expresarse en suma de términos mínimos:
F1(A1,A0) = 3m (1,2,3)
F2(A1,A0) = 3m (0,2)
    Cuando se configura un circuito combinacional por medio de una ROM, las funciones deben expresarse en suma de términos mínimos o mejor aún por una tabla de verdad. Si la salida de las funciones se simplifica, se encuentra que el circuito necesita solamente una compuerta O y un inversor. Obviamente, éste es un circuito combinacional simple como para ser ejecutado con una ROM. La ventaja de las ROM es su uso en circuitos combinacionales complejos. Este ejemplo solamente demuestra el procedimiento y no debe considerarse como una situación práctica.
    La ROM que configura el circuito combinacional debe tener dos entradas y dos salidas, de tal manera que su tamaño deberá ser 4x2. La Figura 18 (a), muestra la construcción interna de una ROM. Es necesario determinar cuáles de los ocho enlaces disponibles deben romperse y cuáles deben dejarse sin tocar. Esto puede hacerse fácilmente de las funciones de salida listadas en la tabla de verdad. Aquellos términos mínimos que especifican una salida de 0 no deben tener un camino a la salida a través de una compuerta O. Así, para este caso particular, la tabla de verdad muestra 3 ceros y sus correspondientes enlaces con las compuertas O que deben quitarse. Es obvio que se debe asumir que un circuito abierto a una compuerta O se comporta como una entrada de 0.
    Algunas ROM vienen con un inversor después de cada una de las compuertas O y como consecuencia se especifica que inicialmente tienen todos 0 en sus entradas. El procedimiento de programación de tales ROM requiere que se abran los enlaces de los términos mínimos (o direcciones) que especifiquen una salida de 1 en la tabla de verdad. La salida de la compuerta No O complementa la función una vez más para producir una salida normal. Esto se muestra en la ROM de la Figura 18 (b).

    El procedimiento anterior demuestra el procedimiento general para especificar un circuito combinacional con una ROM. A partir del número de entradas y salidas en el circuito combinacional, se determina primero el tamaño de la ROM requerida. Luego, se obtiene la tabla de verdad de programación de la ROM; no se necesita ninguna otra manipulación o simplificación.
    Los ceros (o unos) en las funciones de salida de la tabla de verdad, especifican directamente aquellos enlaces que deben ser removidos, para producir el circuito combinacional requerido, en forma de suma de términos mínimos.
    En la práctica, cuando se diseña un circuito por medio de una ROM, no es necesario mostrar los enlaces de las conexiones de las compuertas internas dentro de la unidad, como se hizo en la Figura 18; lo cual fue mostrado para propósitos de demostración solamente. Todo lo que el diseñador tiene que hacer es especificar la ROM (o su número asignado) y dar la tabla de verdad de la ROM, como en la tabla anterior. La tabla de verdad da toda la información para programar la ROM. No se necesita un diagrama interno que acompañe a la tabla de verdad.






Operaciones compuestas

El conjunto de las operaciones del dominio básico se puede extender mediante un mecanismo de composición de operaciones, por ejemplo, se quiere agregar la operación XOR, que corresponde a un OR Exclusivo mediante el cual: si ambas entradas son iguales el resultado es cero (0 o falso) y si ambas son distintas, entonces el resultado es uno (1 o verdadero).


 
Implementación de la Compuesta XOR.

Es claro, en la figura, la forma de composición de la operación XOR a partir de las operaciones básicas and, or y not en el formalismo gráfico de las compuertas lógicas. También es posible usar el formalismo funcional, que se consideró en la definición el Domino Lógico, para componer la operación XOr:
Or( And( Not( A ), B ), And( A, Not( B ))); donde A, B ð Dominio Lógico
De hecho, si se quiere extender el conjunto de las operaciones del Dominio Lógico sería necesario expresar, la operación XOr, en el mismo formato que las operaciones primitivas; sin ser muy rigurosos bastaría con una asignación para que con ello se tenga una forma de definir nuevas operaciones en base a las ya existentes:
XOr( A, B ) ð Or( And( Not( A ), B ), And( A, Not( B ))) ; donde A, B, XOr ð Dominio Lógico
El símbolo ð permitiría trasladar toda la funcionalidad de la expresión a la nueva operación, incluidos los parámetros de entrada y salida (A, B como parámetros de entrada y el nombre de la operación XOr como parámetro de salida). Con la operación XOr ya definida es posible, entonces, ampliar la definición del Dominio Lógico:
Dominio Lógico ( l ð Dominio Lógico ) = ( { 0, 1 }, { l: And( l, l ), l:Or( l, l ), l:Not( l ) l:XOr( l, l ), } )
Por lo cual XOr podría ser utilizado para componer nuevas operaciones de este mismo dominio o, eventualmente, de otros.

Operaciones basicas


  • And. La operación And requiere que todas las señales sean simultáneamente verdaderas para que la salida sea verdadera. Así, el circuito de la figura necesita que ambos interruptores estén cerrados para que la luz encienda.
Operación And.
Los estados posibles del circuito se pueden modelar en la Tabla de Verdad que tiene asociada. Sabemos que los interruptores sólo pueden tener dos estados, abiertos o cerrados, si el interruptor abierto se representa mediante el cero (0 o falso) y el cerrado mediante el valor uno (1 o verdadero) entonces en la tabla de verdad asociada se puede ver la situación que se describía en el párrafo anterior, cuando se decía que la luz sólo prende cuando ambos interruptores están cerrados, es decir, si A = 1 y B = 1 entonces L = 1.
La compuerta lógica es una forma de representar la operación And pero en el ámbito de los circuitos electrónicos, para ese caso A y B son las señales de entrada (con valores = 0 1) y L es la señal de salida.
Para efectos de este curso, la operación And la representaremos como la función And( A, B ), donde A y B serían los parámetros de entrada (los mismos valores de A y B en el circuito) y L = And( A, B ), correspondería a la forma de asignación de valor a L. En este caso el parámetro de salida es la misma función And.
  • Or. La operación Or tiene similares características a la operación And, con la diferencia que basta que una señal sea verdadera para que la señal resultante sea verdadera. En la figura se puede ver tal situación.
Operación Or.
Note que en el circuito los interruptores están en paralelo, por lo cual basta que uno de ellos esté cerrado para que el circuito se cierre y encienda la luz.
 
 
La operación Or también tiene una representación funcional como Or( A, B ) donde A y B serían los parámetros de entrada (los mismos valores de A y B en el circuito) y L = Or( A, B ), correspondería a la forma de asignación de valor a L. En este caso, el parámetro de salida es la misma función Or.
  • Not: La última de la tres operaciones fundamentales, la cual también se conoce como negación, complemento o inversión, es mucho más simple que las anteriores. En la figura se puede observar el circuito, que en este caso tiene la particularidad de que al estar el interruptor abierto la luz enciende, cuando él está en posición de cerrado la luz permanecería apagada. 

Operación Not.

La notación funcional para esta operación será Not( A ), donde A corresponde a la señal de entrada y Not( A ) corresponde al valor complementario de A.
Con las operaciones básicas ya definidas es posible redefinir el Algebra de una manera más formal, por ejemplo, dándole el nombre de Dominio Lógico y caracterizandolo de la siguiente manera:
Dominio Lógico ( l ð Dominio Lógico ) = ( { 0, 1 }, { l: And( l, l ), l:Or( l, l ), l:Not( l ) } )
Note que cada una de las operaciones o funciones de este dominio se ha explicitado claramente la cantidad y el tipo de parámetros con los cuales ellas operan (operandos) y el tipo de valor que la operación devuelve, en este caso todos los parámetros son del tipo lógico ( l ).
Así, cuando se habla del dominio del computador al resolver un problema, este dominio tiene como base el dominio recién descrito. Los circuitos electrónicos que dan vida al computador pueden ser representados todos mediante este Dominio Lógico.

CIRCUITOS LOGICOS SECUENCIALES

  •  MULTIVIBRADORES

Los circuitos lógicos vistos anteriormente, son combinatorios cuyos niveles de salida, en cualquier instante, dependen de los valores de las entradas en ese momento. Cualquier condición anterior al nivel de entrada no afecta a las salidas, porque los circuitos combinatorios no tienen memoria.
 
Cs_150.gif (12448 bytes)
Modo fundamental (tipo 4)
    Las características para este tipo de circuito secuencial, cuyo diagrama a bloques se presenta en la siguiente figura, son:
CS_89.gif (10246 bytes)
1. J representa el tiempo de retardo mínimo para que ocurra una transición. Este tiempo de retardo es el que se obtiene cuando una señal viaja a través de una o más compuertas. Esto nos indica que la retroalimentación es directa.
2. La entrada y la salida son de nivel.
3. Con respecto a las variables de entrada, no pueden haber dos cambios en forma simultánea.
4. Un estado estable es aquel cuyo valor del estado presente es igual al estado siguiente.
5. Cuando iniciamos un recorrido, a partir de un estado estable, siempre se realizan dos movimientos, uno horizontal y otro vertical. El primero se da cuando hay cambios en las señales de entrada y el segundo cuando, partiendo de un estado estable, se llega a un estado inestable, lo cual origina una búsqueda de un estado estable en esa columna.
6. En el proceso de diseño, no se permite más de un estado estable por fila.
7. Las señales de salida son de nivel, por lo tanto, en el proceso de diseño, se tendrán tantas columnas como señales de salida existan.
CS_03.gif (19920 bytes)     La Figura 1, ilustra un diagrama a bloques de un circuito secuencial digital que conjuga compuertas lógicas combinatorias con dispositivos de memoria. La porción combinatoria acepta señales lógicas de entrada externas y de las salidas de los elementos de memoria. El circuito combinatorio opera sobre esas señales a fin de producir diversas salidas, algunas de las cuales se utilizan para determinar los valores binarios que se almacenarán en los elementos de memoria. Las salidas de algunos elementos de memoria, a su vez, se dirigen hacia las entradas de las compuertas lógicas en los circuitos combinatorios. Este proceso indica que las salidas externas de un sistema digital son una función de sus entradas externas y de la información almacenas en los elementos de memoria.
    De la Figura 1, se tienen las siguientes definiciones:

ESTADOS PRESENTES: Son los valores que toman las variables secundarias (y1, y2, ..., ym) debidos a los estados siguientes y a las transiciones.
ESTADOS SIGUIENTES: Son los valores que toman las variables de excitación (Y1, Y2, ..., Ym) debido a los estados presentes.

    La siguiente tabla muestra la relación entre los estados presentes y los estados siguientes:
ESTADOS
PRESENTES
ESTADOS
SIGUIENTES
y
Q
qv
qt
Y
Q
+
qv+1
qt+1
 
    CS_04.gif (12848 bytes)Los sistemas digitales pueden operar en forma sincrónica o asincrónica. En los sistemas asincrónicos las salidas de los circuitos lógicos pueden cambiar de estado en el momento en que una o más de las entradas cambien. En los sistemas sincrónicos los tiempos exactos en que una salida puede cambiar de estado se determinan por medio de una señal que comúnmente se le denomina señal de reloj. Esta señal es una serie de pulsos rectangulares o cuadrados y se distribuye a todas las partes del sistema y algunas de sus salidas cambian de estado sólo cuando la señal de reloj hace una transición. Cuando la señal de reloj cambia de 0 a 1, se le denomina Transición de Pendiente Positiva (TPP), cuando pasa de 1 a 0 se le conoce como Transición de Pendiente Negativa (TPN).
La Figura 2, muestra el símbolo general empleado para un multivibrador (MVB). El símbolo indica que el MVB tiene dos salidas Q y Q' inversas entre sí. Q recibe el nombre de salida normal del MVB, mientras que Q' es la salida negada o invertida. Siempre que se haga referencia al estado del MVB, éste será el de su estado normal y se entiende que Q' se encontrará en estado opuesto.

Características de los multivibradores sintonizados por reloj:
1. Los multivibradores (MVB) sincronizados por reloj tienen una entrada de reloj designada CLK (Clock-reloj). Esta entrada se dispara por flanco, lo que significa que es activada por una transición de señal; esto se especifica por la presencia de un triángulo en la entrada del reloj. Posteriormente, se explican detalladamente los MVB disparados por flanco.
2. Los MVB sincronizados por reloj también poseen una o más entradas de control que pueden tener varios nombres, lo que depende de su operación; su efecto está sincronizado con la señal aplicada en la entrada CLK. Por esta razón se les llama entradas sincronizadas de reloj.
3.Las entradas de control hacen que la salidas del MVB estén listas para cambiar, mientras que la transición activa en la entrada CLK es la que dispara un cambio.
  • SINCRONICOS
El comportamiento de los circuitos secuenciales se determina de las entradas, las salidas y los estados de los multivibradores (MVB). Ambas entradas y el estado siguiente son una función de las entradas y del estado presente. El análisis de los circuitos secuenciales consiste en obtener una tabla o un diagrama de la secuencia de tiempos de las entradas, salidas y estados internos. Es posible escribir expresiones booleanas que describan el comportamiento de los circuitos secuenciales. Sin embargo, estas expresiones deben incluir la secuencia de tiempos necesaria directa o indirectamente.
    Un diagrama lógico secuencial se reconoce como un circuito si éste incluye multivibradores. Los MVB pueden ser de cualquier tipo y el diagrama lógico puede o no incluir compuertas combinacionales. Muchos circuitos lógicos contienen multivibradores biestables, monoestables y compuertas lógicas que se conectan para realizar una operación específica. Con frecuencia se usa una señal de reloj primaria para ocasionar que los niveles lógicos del circuito pasen a través de una determinada secuencia de estados. En términos generales, los circuitos secuenciales se analizan siguiendo el procedimiento que se describe a continuación:

1. Examinar el diagrama del circuito y buscar estructuras como contadores o registros de corrimiento para su simplificación.
2. Determinar los niveles lógicos que estén presentes en las entradas de cada multivibrador antes de la incidencia del primer pulso del reloj.
3. Utilizar estos niveles para determinar la forma en que cada multivibrador cambiará en respuesta al primer pulso de reloj.
4. Repetir los pasos 2 y 3 para cada pulso sucesivo de reloj.
    En la Figura 1, se muestra un circuito secuencial utilizando multivibradores J-K con reloj.
CS_43.gif (12627 bytes)
    Obsérvese que el diagrama contiene multivibradores y compuertas lógicas.

  • ASINCRONICOS
Modalidad de pulso (tipo 3)
    Un circuito secuencial se dice estar operando en la modalidad de pulso, si se satisfacen las siguientes condiciones:
A.    Al menos una señal de entrada es un pulso.
B.     Los cambios de los estados internos ocurren únicamente en respuesta a la presencia de un
pulso en las terminales de entrada.
C.    Cada estado de entrada, con la ocurrencia de un , origina únicamente un cambio en el estado interno.
D.    Todas las entradas de pulso
deberán ser lo suficientemente amplias para disparar un multivibrador (MVB).
E.     Todos los MVB serán asincrónicos, sincrónicos, pero disparados por flanco, o de los llamados maestro-esclavo.
F.     En las entradas no se permite la ocurrencia de dos o más pulsos en forma simultánea.
G.     Las tablas de los estados tendrán tantas columnas como pulsos de entrada existan.
H.     En los mapas de Karnaugh no es válido hacer enlaces horizontales, sólo se permiten enlaces verticales.
I.      Existen dos tipos de circuitos en esta modalidad: Mealy y Moore.
J.     Un circuito de Mealy es aquel cuyas entradas y salidas son un pulso.
pulso
CS_79.gif (14329 bytes)Como puede observarse en el modelo adjunto, un circuito de Mealy consta de dos circuitos combinacionales, el primero maneja las señales de memoria y el segundo las señales de salida. Las señales de salida dependen, no solamente de los pulsos de entrada, sino también de los estados presentes.
K.   Un circuito de Moore es aquel cuyas entradas son pulsos y las señales de salida son de nivel.
En un circuito de Moore, figura adjunta, las señales de salida corresponden exclusivamente a los estados presentes.
CS_80.gif (10969 bytes)    


Es importante tener en cuenta que las señales de entrada de un sistema secuencial pueden ser de dos tipos:
Nivel: El estado de entrada y/o salida varia de un valor a otro sin problemas de continuidad.
Impulso: Entre dos estados de entrada diferentes existe un estado inactivo en el cual todas las variables toman el valor lógico cero.


    Este tipo de circuitos requieren una atención especial, debido a que no existen pulsos de reloj, como una referencia de tiempo, como se estudió en los circuitos secuenciales sincrónicos.
    Deberán observarse las siguientes condiciones:
1.   Las transiciones de estado se iniciarán con los pulsos de entrada. Esto reemplaza a los pulsos de reloj para provocar los cambios del circuito secuencial.
2.   La forma de entrada para este tipo de circuitos es en paralelo, a diferencia de los circuitos sincrónicos, cuya entrada es normalmente en forma de serie (2n
).
3.   En este tipo de circuitos, la entrada deberá ser complementada o incomplementada, pero no ambas a la vez.
    La siguiente figura ejemplifica gráficamente las tres condiciones anteriores.
En el caso de que un circuito contenga, simultáneamente, una entrada complementada con relación a las demás, no es posible determinar la tabla de estados por el método de Karnaugh, siendo la única forma de determinar dicha tabla, el diagrama de tiempos.

CIRCUITOS LOGICOS COMBINACIONALES

  • SUMADORES Y RESTADORES.
    Lo sorprendente de las computadoras digitales es la capacidad para realizar grandes volúmenes de operaciones y la rapidez con que las ejecutan, se debe a que las operaciones se efectúan en forma binaria, es decir, con ceros y unos.
    Las operaciones aritméticas las realizan unidades específicas de la computadora, como es el caso de la UNIDAD ARITMÉTICA y LÓGICA (UAL), que está constituida por un conjunto de circuitos, algunos de los cuales son propósito de estudio de esta unidad.

DECODIFICADORES Y CODIFICADORES
    Los sistemas digitales contienen datos o información que está en alguna forma de código binario, los cuales se operan de alguna manera. En esta parte se examinan circuitos combinatorios, cuyas aplicaciones incluyen:
1. Cambio de datos de una forma a otra.
2. Tomar datos y enrutarlos a uno de varios destinos.
3. Decodificación de datos para despliegues visuales.
    Muchos de los circuitos lógicos que cumplen estas funciones están ahora como circuitos integrados en la categoría de Mediana Escala de Integración (MSI - Medium Scale Integration). Por esta razón, no nos concentraremos en el diseño de estos circuitos, sino que investigaremos cómo se usan solos o en combinación, para cumplir varias operaciones sobre datos digitales. Las operaciones que se discuten son: Decodificación y codificación.

  • DECODIFICADORES

UNID2_37.gif (9540 bytes)Un decodificador es un circuito lógico combinacional, que convierte un código de entrada binario de N bits en M líneas de salida (N puede ser cualquier entero y M es un entero menor o igual a 2), tales que cada línea de salida será activada para una sola de las combinaciones posibles de entrada. La Figura 1, muestra el diagrama general de un decodificador de N entradas y M salidas. Puesto que cada una de las entradas puede ser 1 o 0, hay 2 combinaciones o códigos de entrada. Para cada una de estas combinaciones de entrada sólo una  de la M salidas estará activada 1, para lógica; todas las otras salidas estarán en 0. Muchos decodificadores se diseñan para producir salidas 0 activas, lógica, donde la salida seleccionada es 0 mientras que las otras son 1. Esto último se indica siempre por la presencia de pequeños círculos en las líneas de salida del diagrama del decodificador. negativa positivaNN
    Algunos decodificadores no usan todos los 2 códigos posibles de entrada, sino sólo algunos de ellos. Por ejemplo, un decodificador BCD a DECIMAL, tiene un código de entrada de 4 bits, el cual sólo usa diez grupos codificados BCD, 0000 hasta 1001. Algunos de estos decodificadores se diseñan de tal manera, que si cualquiera de los códigos no usados se aplican a la entrada, ninguna de las salidas se activará.N
UNID2_38.gif (12073 bytes)La Figura 2, muestra la circuitería para un decodificador con 3 entradas y 23=8 salidas. Como sólo usan compuertas Y, las salidas activadas son 1. Para tener salidas activadas 0, deberían usarse compuertas NO Y.
    Puede hacerse referencia a este decodificador de distintas maneras, todas ellas válidas y usuales. Pude llamarse un decodificador de 3 líneas a 8 líneas (3x8), porque tiene tres líneas de entrada y ocho de salida. También recibe el nombre de convertidor o decodificador de binario a octal, porque toma un código de entrada binario de tres entradas y produce un 1 en una de las ocho (octal) salidas correspondientes a ese código. A veces se hace referencia al circuito como como un decodificador 1 de 8, porque una de las 8 salidas se activa a la vez.
    A continuación se muestra la tabla funcional para este decodificador (74138).

DECABCO0O1O2O3O4O5O6O7
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
    El logigrama correspondiente es:
UNID2_39.gif (11076 bytes)
    Si se tiene una función reducida, deberá primero obtenerse su función canónica para poderla realizar con un decodificador.
    La mayoría de estos circuitos tienen sólo dos niveles de conmutación. La tabla funcional queda en función de minitérminos por utilizarse lógica positiva.


UNID2_49.gif (10159 bytes)Un decodificador acepta un código de entrada de N bits y produce un 1 o 0 en una y sólo una línea de salida. En otras palabras, se puede decir que un decodificador identifica, reconoce o detecta un código particular. El opuesto de este proceso de decodificación es llamado CODIFICACIÓN y es ejecutado por un circuito lógico llamado CODIFICADOR.
    Un codificador tiene un número de líneas de entrada, de las cuales sólo una es y produce un código de salida deactivada en un tiempo dado N bits, dependiendo de cuál entrada es activada. La Figura 6, muestra el diagrama general de un codificador con M entradas y N salidas. Todas las entradas y salidas están en 1 cuando están (Note la ausencia de círculos en el diagrama).activadas
UNID2_50.gif (15157 bytes)Se vio que un decodificador binario a octal acepta un código binario de entrada de 3 bits y activa una de las 8 líneas de salida. Un codificador octal a binario opera de la manera opuesta. Acepta ocho líneas de entrada y produce un código de 3 bits a la salida. Su logigrama se muestra en la Figura 7, tomando como base la siguiente tabla funcional:


ENTRADACÓDIGO
BINARIO
A0A1A2A3A4A5A6A7O2O1O0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
    Donde las funciones de conmutación son:
O2(A0,A1,A2,A3,A4,A5,A6,A7) = A4+A5+A6+A7
O1(A0,A1,A2,A3,A4,A5,A6,A7) = A2+A3+A6+A7
O0(A0,A1,A2,A3,A4,A5,A6,A7) = A1+A3+A5+A7
    Se supone que sólo una de las entradas es 1 cada vez, así que sólo hay 8 condiciones posible de entrada. El circuito está diseñado de tal manera que cuando A0 es 1, se genera a la salida el código binario 000; cuando A1 es 1, se genera el código binario 001, cuando A2es 1, se genera el código binario 010 y así sucesivamente. El diseño del circuito es muy simple, puesto que involucra analizar cada bit de salida y determinar para cuáles casos de entrada ese bit es 1 y luego pasar los resultados por una compuerta O. Por ejemplo, la tabla funcional muestra que O0 (bit menos significativo del código de salida) debe ser 1 cuando cualesquiera de las entradas A1, A3, A5 o A7 sean 1.

  • MULTIPLEXOR
UNID2_52.gif (11046 bytes)     Un MULTIPLEXOR o SELECTOR DE DATOS es un circuito lógico que acepta varias entradas de datos y permite que sólo una de ellas pase a un tiempo a la salida. El enrutamiento de la entrada de datos hacia la salida está controlado por las entradas de SELECCIÓN (a las que se hace referencia a veces como las entradas de DIRECCIÓN). La Figura 9, muestra el diagrama general de un multiplexor. En este diagrama las entradas y salidas se dibujan como flechas gruesas para indicar que pueden ser una o más líneas.
    El multiplexor actúa como un conmutador multiposicional controlado digitalmente, donde el código digital aplicado a las entradas de SELECCIÓN, controla cuáles entradas de datos serán conmutadas hacia la salida. Por ejemplo, la salida Z será igual a la entrada de datos I0 para algún código de entrada particular de SELECCIÓN; Z será igual I1 para otro código particular de SELECCIÓN de entrada y así sucesivamente. Establecido de otra manera, un multiplexor selecciona 1 de N fuentes de datos y transmite los datos seleccionados a un solo canal de salida. Esto se llama multiplexión o multiplexaje.
UNID2_53.gif (11139 bytes)     La , muestra la circuitería lógica para un multiplexor de dos entradas (o dos canales) con entradas de datos A y B y entrada de SELECCIÓN S. El nivel lógico aplicado a la entrada S determina cuál compuerta Y se activa, para que su entrada de datos pase a través de la compuerta O a la salida Z. Visto de otra manera, la expresión booleana para la salida se obtiene de la siguiente tabla funcional:Figura 10

SelecciónSSalida
Z
0
1
B
A
Z = A S + B S'
    Con S=0, esta expresión se hace:
Z = A . 0 + B . 1 = B
lo cual indica que Z será idéntico a la señal de entrada B, la cual puede ser un nivel lógico fijo o una señal lógica variable con el tiempo.
    Con S=1, la expresión se hace:
Z = A . 1 + B . 0 = A
    Mostrando que la salida Z será idéntica a la señal de entrada A.

Datos personales