SISTEMAS LÓGICOS COMBINACIONALES - … · SISTEMAS LÓGICOS COMBINACIONALES Conceptos de Sistemas...

26
SISTEMAS LÓGICOS COMBINACIONALES Sistemas Digitales 1 F.C.E.I.A. – U.N.R. 2016

Transcript of SISTEMAS LÓGICOS COMBINACIONALES - … · SISTEMAS LÓGICOS COMBINACIONALES Conceptos de Sistemas...

SISTEMAS LÓGICOS COMBINACIONALES

Sistemas Digitales 1

F.C.E.I.A. – U.N.R.

2016

Sistemas Digitales 1 (FCEIA-UNR)

SISTEMAS LÓGICOS COMBINACIONALES

Conceptos de Sistemas

Un Sistema es un conjunto de elementos que interactúan entre sí con un fin común predeterminado.

Esta interacción se pone de manifiesto con la relación existente entre las señales de entrada y de salida del

sistema, por lo que se puede pensar al mismo como una caja negra, haciendo abstracción de su constitución

interna. Esta relación entre entradas y salidas está restringida al contenido informativo de dichas señales. Es

decir, el medio provee información al sistema, el cual la elabora y genera nueva información que entrega al

medio.

Esto define el modelo del comportamiento del sistema. Dicho comportamiento se puede modelizar, es decir,

construir un modelo lógico-matemático del mismo.

Comportamiento vs. Funcionamiento

El funcionamiento de un sistema tiene que ver con las leyes de la física asociadas a los componentes del mismo

interrelacionados entre sí, con las magnitudes de las energías puestas en juego con criterios de efectividad,

eficiencia, seguridad, estabilidad, etc. Normalmente el centro de atención son las manifestaciones energéticas

que intervienen en los procesos.

El comportamiento de un sistema tiene que ver con la manera en que reacciona el mismo a la información

provista por el medio circundante. Es decir, estudia que condiciones deben presentarse para que tal o cual

manifestación tengan lugar.

O sea que los estudios de comportamiento se basan en información y no de fenómenos relacionados con las

energías en juego, lo cual distancia fuertemente estas dos disciplinas.

Un Sistema Lógico es un sistema cuyo comportamiento es predecible. Es decir, dada una determinada acción que

el medio ejerce sobre el sistema, este reacciona con un comportamiento determinado. Por lo tanto, puede

considerarse al sistema como una caja negra, que recibe un conjunto de valores de señales lógicas (booleanas) de

entrada y consecuentemente produce un conjunto de valores de señales lógicas de salida. Si cada valor de señal

lógica de entrada y de salida tiene asociado un significado físico, la expresión lógica de las salidas en función de

las entradas representa el comportamiento del sistema.

Un Sistema Lógico COMBINACIONAL es un sistema lógico cuyas salidas dependen solamente de los valores

lógicos de las entradas en el mismo momento (presente).

Un Sistema Lógico SECUENCIAL es un sistema lógico cuyas salidas dependen de los valores lógicos de las entradas

en el mismo momento y de las secuencias anteriores de valores lógicos de las entradas. Es decir, depende de la

historia previa del sistema. Otra forma de decirlo es que estos sistemas tienen memoria.

E1

E2

En

S1

S2

Sm

Σ

Señales de

Entrada Sistema ⇒ Señales de

Salida (El rectángulo “Sistema” representa la caja

negra antedicha)

Sistemas Digitales 1 (FCEIA-UNR)

Veremos por otra parte, que no es necesario conocer la totalidad de las secuencias anteriores de los valores

lógicos de las entradas para poder determinar la respuesta del sistema. Es suficiente con memorizar o distinguir

un número finito de clases de historias de entrada, denominados Estados Internos del sistema.

CONCEPTOS INTRODUCTORIOS

Representaciones numéricas

Existen básicamente dos maneras de representar el valor numérico de las cantidades: la analógica y la digital.

En la representación analógica, una cantidad se denota por medio de otra que es proporcional a la primera.

Ejemplo: velocímetro de auto, en donde la deflexión de la aguja es proporcional a la velocidad de desplazamiento.

Las cantidades analógicas tienen una característica importante: puede variar gradualmente entre un intervalo

continuo de valores.

En la representación digital las cantidades no se denotan por valores proporcionales, sino por símbolos

denominados dígitos.

Diferencia principal:

Sistemas Digitales y Analógicos

Un sistema digital es una combinación de dispositivos diseñada para manipular cantidades físicas e información

que estén representadas en forma digital; es decir, que sólo pueden tomar valores discretos.

Un sistema analógico contiene dispositivos que manipulan cantidades físicas representadas en forma analógica.

En este caso las cantidades varían sobre un intervalo continuo de valores.

Ventajas y Limitaciones de las técnicas digitales

VENTAJAS:

• Los sistemas digitales son más faciles de diseñar (dado que se trabaja con circuitos de conmutación, no

interesa el valor exacto de tensión sino solo el rango -ALTO o BAJO-).

• Facilidad para almacenar la información (por ejemplo, mediante flip flops).

• Mayor exactitud y precisión. Es fácil aumentar la precisión agregándole más dígitos.

• Facilidad para programar la operación. Es simple diseñar sistemas digitales cuya operación esté

controlada por un grupo de instrucciones (programa).

• El ruido afecta en forma mínima a los circuitos digitales. Poseen alta inmunidad al ruido (fluctuaciones

del voltaje de la señal), ya que no dependen de los valores exactos de la misma.

• Es posible obtener mayor nivel de integración en los CI digitales.

LIMITACIONES:

El único problema existente es que: El mundo real es fundamentalmente analógico

Cuando las entradas y salidas son analógicas, el proceso para aprovechar las ventajas de las técnicas digitales

sería el siguiente:

1. Convertir las entradas analógicas del “mundo real” a la forma digital (CAD)

2. Procesar digitalmente

3. Convertir de nuevo las salidas digitales a la forma analógica del “mundo real” (CDA)

Dentro de las representaciones digitales (discretas), la más simple de simular físicamente es la BINARIA, ya que

solo son necesarios dos estados (1 y 0, alto y bajo, abierto y cerrado, etc.) que se pueden hacer corresponder

fácilmente con el corte y la saturación de los transistores.

En los sistemas digitales, el valor exacto de un voltaje no es importante, lo cual facilita el diseño.

En cambio es más difícil diseñar circuitería analógica exacta debido a la forma en que fluctúan los valores exactos

del voltaje en relación con variaciones en los valores de los componentes, la temperatura y el ruido.

Analógico = continuo

Digital = discreto

Sistemas Digitales 1 (FCEIA-UNR)

ÁLGEBRA DE BOOLE

POSTULADOS del Álgebra de Boole

Lógica proposicional

Una proposición lógica p es “verdadera” (V) o “falsa” (F).

Operaciones lógicas con las proposiciones lógicas:

p1 AND p2 = p3 donde: p3=V ⇔ p1=V “y” p2=V p3=F ⇔ p1=F “o” p2=F Principio de

DUALIDAD p1 OR p2 = p3 donde: p3=V ⇔ p1=V “o” p2=V p3=F ⇔ p1=F “y” p2=F

NOT p1=p2 donde: P2=V ⇔ p1=F P2=F ⇔ p1=V

Convención: V=1 , F=0 (lógica POSITIVA)

TEOREMAS del álgebra de Boole

Nro.

Orden Nombre a) Forma OR b) Forma AND

1 Ley de IDEMPOTENCIA A+A=A A.A=A

2 Existencia de Elementos Neutros (Ley de Identidad) A+0=A A.1=A

3 Ley de ANULACION (Prop. de los elementos neutros) A+1=1 A.0=0

4 Ley CONMUTATIVA A+B=B+A A.B=B.A

5 Ley ASOCIATIVA (A+B)+C=A+(B+C) (A.B).C=A.(B.C)

6 Ley del INVERSO A+A’ =1 A.A’=0

7 Ley DISTRIBUTIVA A.(B+C)=A.B+AC A+B.C=(A+B).(A+C)

8 Ley de ABSORCION A+A.B=A A.(A+B)=A

9 A+(A’.B)=A+B A.(A’+B)=A.B

11 Ley de MORGAN (A+B)’=A’.B’ (A.B)’=A’+B’

12 DOBLE NEGACION (Ley de Involución) (A’)’=A

En las columnas a) y b) se indican las formas DUALES de representación de cada ley, ya que el PRINCIPIO DE

DUALIDAD establece que si en una identidad se intercambian entre sí las operaciones suma y producto lógicos, y

los elementos 0 y 1, la identidad permanece válida.

De ahora en adelante, para hacer referencia a una determinada identidad la identificaremos por la fila y la

columna del cuadro. De esta manera, el indicador( 6.a) hará referencia a la identidad A+A’=1. Esto nos permitirá

explicar en forma concisa las respectivas leyes usadas en la manipulación algebraica.

IMPLEMENTACIÓN NAND-NOR Utilizando la doble inversión: ( ( X )´)´ = X y los teoremas de De Morgan: ( X.Y )´=X´+Y´ , ( X+Y )´=X´.Y´ se

puede cambiar la forma de una ecuación algebraica, de manera de implementarla con un solo tipo de

compuertas (NAND o NOR).

Ejemplo: Implementar f=A´.(C´+B´) con un solo integrado (cuádruple NAND de 2 entradas o cuádruple

NOR de 2 entradas)

f=[ ( A´.(C´+B´) )´]´= (A+B.C)´= A´.(BC)´ = [ (A´.(BC)´ )´]´

REPRESENTACIÓN DEL COMPORTAMIENTO LÓGICO

Explícita: TABLA DE VERDAD (se explicita el resultado para cada combinación de las entradas)

Implícita: Ecuación algebraica

COMPUERTAS LÓGICAS V fte. Zona prohibida 0V Convención (Lógica POSITIVA): V=”1” , F=”0”

AND OR NOT NAND NOR XOR XNOR

AB F AB F A F AB F AB F AB F AB F

00 0 00 0 0 1 00 1 00 1 00 0 00 1

01 0 01 1 1 0 01 1 01 0 01 1 01 0

10 0 10 1 10 1 10 0 10 1 10 0

11 1 11 1 11 0 11 0 11 0 11 1

FORMAS CANÓNICAS

Nº A B C f f = A´.B´.C + A´.B.C´+ A.B´.C´+ A.B´.C + A.B.C (1º F.C.A.)

f = ∑ mi (1, 2, 4,5, 7) (1º F.C.N.)

3

f = (A+B+C) . (A+B´+C´) . (A´+B´+C) (2º F.C.A.)

f = Π Mi (0, 3, 6) (2º F.C.N.)

3

0 0 0 0 0

1 0 0 1 1

2 0 1 0 1

3 0 1 1 0

4 1 0 0 1

5 1 0 1 1

6 1 1 0 0

7 1 1 1 1

SÍNTESIS Ecuación algebraica � Circuito lógico

Ejemplo: f= A´⊕ B + (C.D´+B)´+ (D.C´)´

ANÁLISIS Circuito lógico � Ecuación algebraica

“1”

“0”

Comp. F

A

B

A B F

L L

L H

H L

H H

Sistemas Digitales 1 (FCEIA-UNR)

CIRCUITOS INTEGRADOS DE MEDIANA ESCALA DE INTEGRACIÓN (MSI)

CODIFICADORES

Un Codificador es un conversor de “código 1 en N” a código arbitrario. Es decir a su entrada habrá una sola

línea activa por vez.

DECODIFICADORES

Un Codificador es un conversor de código arbitrario a “Código 1 en N”. Es decir a su salida habrá una sola

línea activa por vez.

A1 A2

R0 = A1´A0´

R1 = A1´A0

R2 = A1 A0´

R3 = A1 A0

2p líneas

dig

o 1

en

N

dig

o 1

en

N

Al pulsar una tecla Tn se activa una línea

de entrada, que genera un “1” en las OR

conectadas a dicha línea y un “0” en las

restantes.

(Codificador Decimal) +V

T0

T1

T2

T3

T4

T5

T6

T7

T8

T9

2P líneas

máximo

P líneas

CODIF

D3 D2 D1 D0

DECODIF

p líneas

El código que ingresa es decodificado y

se activa la respectiva línea de salida.

Notar que a la salida del Decodificador

se disponen de todos los minitérminos

de la función F (A1,A0) ∴ se pueden

usar para implementar la función F

conectando una OR a la salida de los

respectivos minitérminos.

Sistemas Digitales 1 (FCEIA-UNR)

PROM

Una Memoria ROM (Read Only Memory) básicamente, desde el punto de vista estructural, la podemos pensar como

un Decodificador de Direcciones (D.D.) y un Codificador de Contenidos (C.C.).

Si la memoria es Programable (PROM), las conexiones de los Registros a las OR que conforman el C.C. se haría, por

ejemplo, mediante fusibles. De manera que al quemar algunos fusibles y otros no queda programada la memoria. En

este caso, no podría borrarse una vez programada.

Si la memoria es Borrable (Erasable), es decir, EPROM, podrá volver a grabarse. Hay EPROM de distinto tipo de

tecnología, por ejemplo, UV-EPROM (borrable por luz ultravioleta), EEPROM (borrable eléctricamente), memoria

Flash.

TRANSCODIFICADORES

7

PROM

Dirección Contenido

del Registro del Registro

a ser leído direccionado

D3 D2 D1 D0

D.D. C.C.

BCD / 7 Segmentos

4 Un Transcodificador es un conversor de códigos arbitrarios

donde ninguno de ellos, ni el de entrada ni el de salida, es un

código 1 en N.

Sistemas Digitales 1 (FCEIA-UNR)

MULTIPLEXORES y DEMULTIPLEXORES

DEMULTIPLEXOR / DECODIFICADOR

MULTIPLEXOR

MUX Z

S1 S2

C0

C1

C2

C3

Z

C0

DEMUX C1

D C2

C3

S1 S2

S1 S0

D

MUX (Selector de Datos)

DEMUX (Selector de Canal)

Como puede observarse un Demux es simplemente

un Decod. con una entrada extra (D) conectada a

todas las AND de salida. De manera que el Decod.

activará una de las salidas (seleccionada por S1S0), en

la cual aparecerá el dato D. Las demás estarán en

“0”.

Es así que la entrada D se podría usar para entrada

de datos (Demux) o como habilitación del chip

(Decod), por eso en las Hojas de Datos figura como

“Decoder/Demultiplexer”, ya que es el mismo chip.

S1 S2

Las entradas de Selección

(S1S0) definen de que Canal

(Cn) se selecciona el dato que

va a la salida (Z).

DISEÑO LÓGICO

RESOLUCIÓN DE PROBLEMAS ABIERTOS DE INGENIERÍA Habitualmente el Diseño Lógico se inserta en un proceso más amplio de la resolución de problemas abiertos de

ingeniería. Podríamos especificar este proceso de la siguiente manera:

ANÁLISIS DEL PROBLEMA A

RESOLVER

Señales lógicas de

entrada

DISEÑO LÓGICO

Señales lógicas de

salida

INTERFASES DE ENTRADA Y

SALIDA

La etapa de ANÁLISIS DEL PROBLEMA parte de algo que se quiere lograr pero que no está completamente

definido todavía, constituyendo un PROBLEMA ABIERTO. Por ejemplo, supongamos que el problema fuese

diseñar el control automático de un sistema de dos ascensores para un edificio de oficinas de 10 pisos. Hasta

este punto hay muchas opciones para elegir. Lo que se hace es seleccionar los criterios más adecuados. Por

ejemplo, un criterio podría ser que el flujo de personas a las oficinas sea lo más fluido posible, para evitar

demoras. Esto implicaría un análisis de la manera cómo debería comportarse el sistema. Habría que analizar

por ejemplo, cómo es el flujo de personas, si en general se dirigen solamente de la planta baja a una oficina en

particular, o hay un desplazamiento entre oficinas, etc. Por ejemplo, si convendría que cada ascensor recorriera

todos los pisos o estuviese dedicado a ciertos pisos en particular. Si el botón de llamada de cada piso sería

único para los dos ascensores o habría uno para cada ascensor. Si al llamar al ascensor se especificaría la

dirección (Ascenso/Descenso) o no, etc. También habría que definir cómo se comportaría cada ascensor, cuáles

serán las reglas que gobernarían su comportamiento, si el comportamiento de los ascensores sería

independiente o estarían relacionados, etc. En esta etapa se pueden aplicar conocimientos de otras áreas de la

ingeniería, más allá de los Sistemas Lógicos propiamente dichos. Una vez concluida esta etapa se tiene un

PROBLEMA CERRADO para encarar la etapa del Diseño Lógico.

La etapa de DISEÑO LÓGICO trabaja únicamente con la relación entre las señales lógicas de entrada y las

señales lógicas de salida.

Si las señales lógicas de salida dependen solamente del valor de las señales lógicas de entrada en cualquier ó

todo momento en cual se analice, el sistema a diseñar será de tipo Combinacional o Combinatorio,

constituyendo lo que denominaremos DISEÑO LÓGICO COMBINACIONAL.

Si las señales lógicas de salida dependen del valor de las señales lógicas de entrada en ese mismo momento y

de las secuencias anteriores de entradas, el sistema a diseñar será de tipo Secuencial y será un sistema con

memoria. Dicho de otra manera, las salidas dependerán de las entradas y del estado interno del sistema. A este

tipo de diseño lo denominaremos DISEÑO LÓGICO SECUENCIAL. Luego de la etapa de Diseño Lógico propiamente dicha, resta la integración con el mundo físico (por ejemplo,

una señal lógica puede comandar una etapa de potencia para controlar dispositivos, etc.). En esta etapa, se

trabaja con las INTERFASES DE ENTRADA Y SALIDA.

Ahora nos centraremos en la etapa de DISEÑO LÓGICO propiamente dicha.

En el proceso general de Diseño de un Sistema Lógico, se pueden identificar las siguientes ETAPAS:

Etapa 1: ESPECIFICACIÓN. Es de donde se parte. Consiste en una descripción del comportamiento lógico

deseado en lenguaje natural. Si el problema a resolver está mal especificado puede no ser resoluble o el

resultado no ser el que en realidad se esperaba. Un problema está mal especificado cuando a partir de un

proceso de diseño sin errores se llega a un resultado diferente al esperado.

Etapa 2: MODELIZACIÓN Es un proceso de formalización que permite construir una Representación Formal del comportamiento en

algún lenguaje formal apropiado, constituyendo un Modelo del Sistema. Existen distintos tipos de modelos del

comportamiento de un sistema. En correspondencia con esto, también existen diversas Metodologías de

Diseño.

Etapa 3: OPTIMIZACIÓN (opcional) Habitualmente se busca optimizar la representación formal, según algún tipo de criterio (costo, rapidez,

confiabilidad, etc.). De esta manera se puede obtener un Modelo Optimizado según el criterio adoptado. En

realidad la optimización no es independiente de la tecnología que se adoptará para su implementación. Por

ejemplo, si el sistema es combinacional y se implementará con compuertas lógicas y se aplica el criterio de

Karnaugh, el modelo optimizado será la expresión algebraica mínima según dicho criterio. En cambio, si se

implementará mediante un multiplexor, el criterio puede ser disminuir el número de canales necesarios, y el

modelo optimizado puede ser una manipulación del mapa de Karnaugh asociado a la Tabla de Verdad, para ver

cómo conviene utilizar las variables en el multiplexor, ya que no se utiliza la expresión algebraica para este tipo

de implementación.

El propio criterio de optimización puede servir para seleccionar la tecnología de implementación más

apropiada para un caso en particular.

Etapa 4: SÍNTESIS

En esta etapa se parte del Modelo Optimizado y se realiza la implementación física (circuito lógico).

P R O C E S O C O M P L E T O D E D I S E Ñ O L Ó G I C O

Comportamiento

Lógico (lenguaje natural)

(Especificación)

Modelización

Representación

Formal

(Modelo)

Optimización

Representación

Formal Optimizada

(Modelo

Optimizado)

Síntesis

Implementación

Física

(Circuito Lógico)

En ocasiones se requiere realizar sólo alguno de las etapas marcadas, sin partir de la especificación y/o sin

llegar a la implementación física, de cualquier manera se las reconoce como tareas de Diseño1.

1 Cabe mencionar que los profesionales suelen tener que recorrer las etapas anteriores, pero en sentido contrario al

indicado por las flechas. Partiendo de un dispositivo físico para terminar “interpretando” el comportamiento del mismo,

incluso en algunos casos se busca reestablecer una “Especificación”, por ejemplo cuando se requiere perfeccionar la

documentación asociada a un equipo en funcionamiento.

Las tareas realizadas en este sentido, aún cuando recorren sólo una parcialidad de las etapas, se denominan de Análisis.

DISEÑO LÓGICO COMBINACIONAL

En este tipo de Diseño pueden diferenciarse tres tipos de METODOLOGÍAS DE DISEÑO:

1. Modelización Algebraica Directa

2. Diseño mediante Interconexión de Bloques Funcionales

3. Diseño Tabular

MODELIZACIÓN ALGEBRAICA DIRECTA En este tipo de metodología de diseño, se escribe directamente la expresión algebraica que representa el

comportamiento lógico esperado.

Este método suele utilizarse cuando se deben expresar comportamientos sencillos, generalmente controlados

por pocas variables o una relación simple de un grupo grande de variables, por ejemplo el producto booleano

de todas ellas. Por ejemplo, al modelizar Sistemas Secuenciales con Redes de Petri, las Condiciones Lógicas de

disparo de cada transición está constituida por una expresión algebraica (combinacional), muchas veces de

algunas de las variables de entrada. Estas expresiones suelen escribirse de manera directa (sin aplicar

metodologías sistemáticas como por ejemplo establecer un comportamiento en forma explícita planteando la

tabla de verdad respectiva).

DISEÑO MEDIANTE INTERCONEXIÓN DE BLOQUES FUNCIONALES

Esta metodología es muy apropiada en ciertos tipos de problemas. En general cuando el comportamiento

global del sistema se puede subdividir en varios comportamientos parciales en relación a grupos parciales o

subconjuntos de variables, datos o señales. Particularmente si estos subcomportamientos se repiten entre los

distintos subconjuntos mencionados. El interés en esta metodología aumenta en los caso de sistemas que

deben manejar una gran cantidad de variables que se presten a la subdivisión en grupos, con

subcomportamientos congruentes o semejantes.

Por ejemplo, en los circuitos aritméticos se puede partir de bloques funcionales conocidos integrando los

circuitos por interconexión de eso bloques. Por ejemplo, con 4 Sumadores Totales Binarios de 4 bits se puede

armar un Sumador Binario de 16 bits de manera muy sencilla. Si en este caso se pretendiese hacer una tabla de

verdad, dado que entran dos números binarios de 16 bits cada uno, la misma tendría 232

filas, lo cual hace la

metodología impracticable. Y por otra parte, aunque fuese posible representarlo, el costo del circuito

resultante sería elevadísimo, ya que cada sumador tendría un circuito totalmente diferente dependiente del

número de bits del mismo. En cambio, al trabajar con bloques funcionales estándar (de bajo costo) el proceso

de diseño es muy simple y el costo muy reducido.

DISEÑO TABULAR (mediante Tablas de Verdad) Cuando la complejidad del comportamiento pretendido dificulta escribir la expresión algebraica de manera

directa y no se localizan bloques funcionales apropiados que permitan hacer el diseño mediante su

interconexión, lo que se hace es utilizar la Tabla de Verdad del sistema para el diseño.

Podríamos especificar las siguientes fases de este proceso, a partir de la especificación del comportamiento:

1. Diagrama de E/S (con Diccionario con el significado físico de los valores lógicos de las señales de

entrada y de salida)

2. Armado De la Tabla de Verdad a partir del comportamiento deseado.

3. Optimización y síntesis (depende de la tecnología de implementación), por ejemplo:

a. Implementación con memorias PROM: se usa la Tabla para cargar los registros de la PROM.

No se optimiza.

b. Implementación con Multiplexores: se transcribe la Tabla en un Mapa de Karnaugh y se

manipulan las variables para disminuir el número de canales necesarios del multiplexor (no

se saca la expresión algebraica)

c. Implementación con Decodificadores o Demultiplexores: se transcribe la Tabla en un

Mapa de Karnaugh y se manipulan las variables para poder implementarlo con un

Decodificador más pequeño (no se saca la expresión algebraica)

d. Implementación con Compuertas lógicas, en circuitos con lógica de dos niveles: se

transcribe la Tabla en un Mapa de Karnaugh y se aplica el criterio de Karnaugh para

obtener la expresión mínima según ese criterio, de manera de obtener el menor número

de términos con el menor número de variables por término.

SISTEMAS MULTIFUNCIÓN Cuando un sistema lógico tiene más de una salida lo denominaremos Sistema Multifunción. En este caso, la

Tabla de Verdad en vez de tener una columna para la salida, tendrá tantas columnas como salidas marque su

diagrama de entradas y salidas. Si la síntesis se pretende hacer usando la metodología de los Mapas de

Karnaugh, será necesario disponer un mapa para cada función, estableciendo la correspondencia con cada

variable de salida y su respectivo Mapa de Karnaugh. Es decir, si el sistema tiene N salidas, la tabla de Verdad

tendrá N columnas del lado derecho y habrá asociados N Mapas de Karnaugh (uno por cada salida).

SISTEMAS NO TOTALMENTE ESPECIFICADOS Cuando un grupo de combinaciones de entradas son imposibles, no hay que especificar el valor de las salidas

para dichas combinaciones de entradas, de manera que el sistema será NO TOTALMENTE ESPECIFICADO,

dando origen a un conjunto de REDUNDANCIAS de salida. Es decir, habrá ciertas combinaciones de entradas

que no tendrán asociada una salida definida, ya que esas combinaciones de entrada nunca se van a presentar.

Las redundancias se simbolizan con alguno de estos símbolos:

- , X , Φ

En realidad, para poder sintetizar el circuito lógico se deben definir valores concretos para las salidas

indefinidas, ya que todo circuito SIEMPRE tiene TODAS las salidas definidas (0 o 1). Lo que habitualmente se

hace es valorar cada una de las redundancias por separado, asignándole un valor, aprovechando esta

posibilidad para que produzca alguna conveniencia, generalmente tecnológica en la implementación. Por

ejemplo si se está implementando un circuito a partir de un Mapa de Karnaugh con redundancias, se valorará a

cada una de ellas, con el valor que produzca la cubertura más conveniente, extendiendo en lo posible los

implicantes primos tomados en la cubertura. Logrando de esta manera que la expresión algebraica sea la

mínima posible según el criterio de Karnaugh.

DIAGRAMAS TEMPORALES

Para ensayar un Circuito Lógico ya implementado como un dispositivo físico, deberíamos someterlo a todas las

combinaciones posibles de los valores de las entradas e ir registrando los valores producidos en la salida.

Teóricamente sería adecuado realizar un ensayo que evalúe todas las combinaciones en forma simultánea,

pero eso en la realidad resulta totalmente imposible.

En contrapartida resulta simple generar todas las combinaciones de los valores de entradas no

simultáneamente si no organizadas en una secuencia y a medida que van pasando una a una las combinaciones

ir registrando los valores que se producen en la salida (los Generadores de ondas proporcionan estas

secuencias).

Debemos tener muy presente que en los sistemas Combinatorios Esencialmente, no tiene NINGUNA

importancia la duración en el cual se está sometiendo al circuito a una combinación en particular de las

entradas, para constatar su salida. Tampoco tendría NINGUNA importancia el orden en el cual aparece cada

una de las combinaciones, en relación a las anteriores. La propuesta de ensayo basadas en un generador de

ondas normal (que hace evolucionar las combinaciones de valores en un orden preestablecido y mantiene cada

de ellas un lapso también preestablecido, generalmente constante) no contempla para nada estas

CONDICIONES ESENCIALES de los Sistemas combinatorios. Por lo cual se debe enfatizar que el conjunto de

valores de salida es totalmente independiente de ambas restricciones impuestas por el método de ensayo.

Los valores surgidos del uso de este dispositivo frecuentemente se grafican, incluso suelen aparecer en

pantallas de los mismos aparatos de ensayo, estableciendo los llamados “Diagramas Temporales”. El nombre

mismo de esta representación habla del divorcio entre la representación y lo que se quiere representar.

Claramente parece inadecuado llamar “Temporal” algún atributo de sistemas que esencialmente NO

DEPENDEN del TIEMPO.

De cualquier manera la sencillez del ensayo ha popularizado este tipo de gráficos, aún para Sistemas

Combinatorios, que por cierto no es una representación adecuada del comportamiento.

Supongamos la función lógica F(A,B,C)=∑ mi (1,3,6)=A´B´C+ A´B C + A B C´.

3

Dadas una serie de combinaciones de entradas como las indicadas, podría graficarse:

A t

B t

C t

ABC 000 001 010 011 100 101 110 111 000 (combinación

de entradas)

F t

Este Diagrama Temporal podría aparecer en un simulador.

No hay que confundir esta representación temporal con una representación equivalente a la tabla de verdad

del sistema.

Cabe aclarar que un Diagrama Temporal idéntico a éste podría corresponder a un Sistema Secuencial donde no

se puso de manifiesto este hecho. En ese caso podría ocurrir que alguna secuencia posterior produjese una

salida diferente para la misma combinación de entradas. Es decir, esta representación sirve a modo de

verificación del comportamiento del sistema, pero no es una representación completa del comportamiento del

sistema.

© 2000 Fairchild Semiconductor Corporation DS009478 www.fairchildsemi.com

April 1988

Revised September 2000

74

F1

38

1-o

f-8 D

ec

od

er/D

em

ultip

lex

er

74F138

1-of-8 Decoder/Demultiplexer

General DescriptionThe F138 is a high-speed 1-of-8 decoder/demultiplexer.

This device is ideally suited for high-speed bipolar memory

chip select address decoding. The multiple input enables

allow parallel expansion to a 1-of-24 decoder using just

three F138 devices or a 1-of-32 decoder using four F138

devices and one inverter.

Features■ Demultiplexing capability

■ Multiple input enable for easy expansion

■ Active LOW mutually exclusive outputs

Ordering Code:

Devices also available in Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.

Logic Symbols

IEEE/IEC

Connection Diagram

Order Number Package Number Package Description

74F138SC M16A 16-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-012, 0.150 Narrow

74F138SJ M16D 16-Lead Small Outline Package (SOP), EIAJ TYPE II, 5.3mm Wide

74F138PC N16E 16-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300 Wide

www.fairchildsemi.com 2

74

F1

38

Unit Loading/Fan Out

Truth Table

H = HIGH Voltage Level

L = LOW Voltage Level

X = Immaterial

Functional DescriptionThe F138 high-speed 1-of-8 decoder/demultiplexer

accepts three binary weighted inputs (A0, A1, A2) and,

when enabled, provides eight mutually exclusive active

LOW outputs (O0–O7). The F138 features three Enable

inputs, two active LOW (E1, E2) and one active HIGH (E3).

All outputs will be HIGH unless E1 and E2 are LOW and E3

is HIGH. This multiple enable function allows easy parallel

expansion of the device to a 1-of-32 (5 lines to 32 lines)

decoder with just four F138 devices and one inverter (See

Figure 1). The F138 can be used as an 8-output demulti-

plexer by using one of the active LOW Enable inputs as the

data input and the other Enable inputs as strobes. The

Enable inputs which are not used must be permanently tied

to their appropriate active HIGH or active LOW state.

FIGURE 1. Expansion to 1-of-32 Decoding

Pin Names DescriptionU.L. Input IIH/IIL

HIGH/LOW Output IOH/IOL

A0–A2 Address Inputs 1.0/1.0 20 µA/−0.6 mA

E1, E2 Enable Inputs (Active LOW) 1.0/1.0 20 µA/−0.6 mA

E3 Enable Input (Active HIGH) 1.0/1.0 20 µA/−0.6 mA

O0–O7 Outputs (Active LOW) 50/33.3 −1 mA/20 mA

Inputs Outputs

E1 E2 E3 A0 A1 A2 O0 O1 O2 O3 O4 O5 O6 O7

H X X X X X H H H H H H H H

X H X X X X H H H H H H H H

X X L X X X H H H H H H H H

L L H L L L L H H H H H H H

L L H H L L H L H H H H H H

L L H L H L H H L H H H H H

L L H H H L H H H L H H H H

L L H L L H H H H H L H H H

L L H H L H H H H H H L H H

L L H L H H H H H H H H L H

L L H H H H H H H H H H H L

3 www.fairchildsemi.com

74

F1

38

Logic Diagram

Please note that this diagram is provided only for the understanding of logic operations and should not be used to estimate propagation delays.

April 1988

Revised March 1999

74

F1

51

A 8

-Inp

ut M

ultip

lex

er

© 1999 Fairchild Semiconductor Corporation DS009481.prf www.fairchildsemi.com

74F151A

8-Input Multiplexer

General DescriptionThe F151A is a high-speed 8-input digital multiplexer. It

provides in one package the ability to select one line of

data from up to eight sources. The F151A can be used as a

universal function generator to generate any logic function

of four variables. Both assertion and negation outputs are

provided.

Ordering Code:

Devices also available in Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.

Logic Symbols

IEEE/IEC

Connection Diagram

Unit Loading/Fan Out

Order Number Package Number Package Description

74F151ASC M16A 16-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-012, 0.150 Narrow

74F151ASJ M16D 16-Lead Small Outline Package (SOP), EIAJ TYPE II, 5.3mm Wide

74F151APC N16E 16-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300 Wide

Pin Names DescriptionU.L. Input IIH/IIL

HIGH/LOW Output IOH/IOL

I0–I7 Data Inputs 1.0/1.0 20 µA/−0.6 mA

S0–S2 Select Inputs 1.0/1.0 20 µA/−0.6 mA

E Enable Input (Active LOW) 1.0/1.0 20 µA/−0.6 mA

Z Data Output 50/33.3 −1 mA/20 mA

Z Inverted Data Output 50/33.3 −1 mA/20 mA

www.fairchildsemi.com 2

74

F1

51

AFunctional DescriptionThe F151A is a logic implementation of a single pole, 8-

position switch with the switch position controlled by the

state of three Select inputs, S0, S1, S2. Both assertion and

negation outputs are provided. The Enable input (E) is

active LOW. When it is not activated, the negation output is

HIGH and the assertion output is LOW regardless of all

other inputs. The logic function provided at the output is:

Z = E • (I0 S2 S1 S0 + I1 S2 S1 S0 + I2 S2 S1 S0 +

I3 S2 S1 S0 + I4 S2 S1 S0 + I5 S2 S1 S0 +

I6 S2 S1 S0 + I7 S2 S1 S0)

The F151A provides the ability, in one package, to select

from eight sources of data or control information. By proper

manipulation of the inputs, the F151A can provide any logic

function of four variables and its negation.

Truth Table

H = HIGH Voltage Level

L = LOW Voltage Level

X = Immaterial

Logic Diagram

Please note that this diagram is provided only for the understanding of logic operations and should not be used to estimate propagation delays.

Inputs Outputs

E S2 S1 S0 Z Z

H X X X H L

L L L L I0 I0

L L L H I1 I1

L L H L I2 I2

L L H H I3 I3

L H L L I4 I4

L H L H I5 I5

L H H L I6 I6

L H H H I7 I7

November 1992

Revised April 1999

74

VH

C1

39

Du

al 2

-to-4

De

co

de

r/De

mu

ltiple

xe

r

© 1999 Fairchild Semiconductor Corporation DS011521.prf www.fairchildsemi.com

74VHC139

Dual 2-to-4 Decoder/Demultiplexer

General DescriptionThe VHC139 is an advanced high speed CMOS Dual 2-to-

4 Decoder/Demultiplexer fabricated with silicon gate

CMOS technology. It achieves the high speed operation

similar to equivalent Bipolar Schottky TTL while maintain-

ing the CMOS low power dissipation.

The active LOW enable input can be used for gating or it

can be used as a data input for demultiplexing applications.

When the enable input is held HIGH, all four outputs are

fixed at a HIGH logic level independent of the other inputs.

An input protection circuit ensures that 0V to 7V can be

applied to the input pins without regard to the supply volt-

age. This device can be used to interface 5V to 3V systems

and two supply systems such as battery back up. This cir-

cuit prevents device destruction due to mismatched supply

and input voltages.

Features■ High Speed: tPD = 5.0 ns (typ) at TA = 25°C

■ Low power dissipation: ICC = 4 µA (Max.) at TA = 25°C

■ High noise immunity: VNIH = VNIL = 28% VCC (Min.)

■ Power down protection is provided on all inputs

■ Pin and function compatible with 74HC139

Ordering Code:

Surface mount packages are also available on Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.

Connection Diagram Pin Description

Truth Table

H = HIGH Voltage Level

L = LOW Voltage Level

X = Immaterial

Order Number Package Number Package Description

74VHC139M M16A 16-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-012, 0.150” Narrow

74VHC139SJ M16D 16-Lead Small Outline Package (SOP), EIAJ TYPE II, 5.3mm Wide

74VHC139MTC MTC16 16-Lead Thin Shrink Small Outline Package (TSSOP), JEDEC MO-153, 4.4mm Wide

74VHC139N N16E 16-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300” Wide

Pin Names Description

A0, A1 Address Inputs

E Enable Inputs

O0–O3 Outputs

Inputs Outputs

E A0 A1 O0 O1 O2 O3

H X X H H H H

L L L L H H H

L H L H L H H

L L H H H L H

L H H H H H L

www.fairchildsemi.com 2

74V

HC

13

9Logic Symbols

IEEE/IEC

Functional DescriptionThe VHC139 is a high-speed dual 2-to-4 decoder/demulti-

plexer. The device has two independent decoders, each of

which accepts two binary weighted inputs (A0–A1) and pro-

vides four mutually exclusive active-LOW outputs (O0–O3).

Each decoder has an active-LOW enable (E). When E is

HIGH all outputs are forced HIGH. The enable can be used

as the data input for a 4-output demultiplexer application.

Each half of the VHC139 generates all four minterms of

two variables. These four minterms are useful in some

applications, replacing multiple gate functions as shown in

Figure 1, and thereby reducing the number of packages

required in a logic network.

FIGURE 1. Gate Functions (Each Half)

Logic Diagram

Please note that this diagram is provided only for the understanding of logic operations and should not be used to estimate propagation delays.

© 2000 Fairchild Semiconductor Corporation DS009483 www.fairchildsemi.com

April 1988

Revised September 2000

74

F1

57

A Q

ua

d 2

-Inp

ut M

ultip

lexe

r

74F157A

Quad 2-Input Multiplexer

General DescriptionThe F157A is a high-speed quad 2-input multiplexer. Four

bits of data from two sources can be selected using the

common Select and Enable inputs. The four outputs

present the selected data in the true (non-inverted) form.

The F157A can also be used to generate any four of the 16

different functions to two variables.

Ordering Code:

Devices also available in Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.

Logic Symbols

IEEE/IEC

Connection Diagram

Order Number Package Number Package Description

74F157ASC M16A 16-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-012, 0.150 Narrow

74F157ASJ M16D 16-Lead Small Outline Package (SOP), EIAJ TYPE II, 5.3mm Wide

74F157APC N16E 16-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300 Wide

www.fairchildsemi.com 2

74

F1

57

AUnit Loading/Fan Out

Truth Table

H = HIGH Voltage Level

L = LOW Voltage Level

X = Immaterial

Functional DescriptionThe F157A is a quad 2-input multiplexer. It selects four bits

of data from two sources under the control of a common

Select input (S). The Enable input (E) is active LOW. When

E is HIGH, all of the outputs (Z) are forced LOW regardless

of all other inputs. The F157A is the logic implementation of

a 4-pole, 2-position switch where the position of the switch

is determined by the logic levels supplied to the Select

input. The logic equations for the outputs are shown below:

Zn = E • (I1nS + I0n S)

A common use of the F157A is the moving of data from two

groups of registers to four common output busses. The

particular register from which the data comes is determined

by the state of the Select input. A less obvious use is as a

function generator. The F157A can generate any four of

the 16 different functions of two variables with one variable

common. This is useful for implementing highly irregular

logic.

Logic Diagram

Please note that this diagram is provided only for the understanding of logic operations and should not be used to estimate propagation delays.

Pin Names DescriptionU.L. Input IIH/IIL

HIGH/LOW Output IOH/IOL

I0a–I0d Source 0 Data Inputs 1.0/1.0 20 µA/−0.6 mA

I1a–I1d Source 1 Data Inputs 1.0/1.0 20 µA/−0.6 mA

E Enable Input (Active LOW) 1.0/1.0 20 µA/−0.6 mA

S Select Input 1.0/1.0 20 µA/−0.6 mA

Za–Zd Outputs 50/33.3 −1 mA/20 mA

Inputs Output

E S I0 I1 Z

H X X X L

L H X L L

L H X H H

L L L X L

L L H X H

© 2000 Fairchild Semiconductor Corporation DS009479 www.fairchildsemi.com

April 1988

Revised September 2000

74

F1

39

Du

al 1

-of-4

De

co

de

r/De

mu

ltiple

xe

r

74F139

Dual 1-of-4 Decoder/Demultiplexer

General DescriptionThe F139 is a high-speed, dual 1-of-4 decoder/demulti-

plexer. The device has two independent decoders, each

accepting two inputs and providing four mutually exclusive

active LOW outputs. Each decoder has an active LOW

Enable input which can be used as a data input for a

4-output demultiplexer. Each half of the F139 can be used

as a function generator providing all four minterms of two

variables.

Features■ Multifunction capability

■ Two completely independent 1-of-4 decoders

■ Active LOW mutually exclusive outputs

Ordering Code:

Devices also available in Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.

Logic Symbols

IEEE/IEC

Connection Diagram

Truth Table

H = HIGH Voltage Level

L = LOW Voltage Level

X = Immaterial

Order Number Package Number Package Description

74F139SC M16A 16-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-012, 0.150 Narrow

74F139SJ M16D 16-Lead Small Outline Package (SOP), EIAJ TYPE II, 5.3mm Wide

74F139PC N16E 16-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300 Wide

Inputs Outputs

E A0 A1 O0 O1 O2 O3

H X X H H H H

L L L L H H H

L H L H L H H

L L H H H L H

L H H H H H L

www.fairchildsemi.com 2

74

F1

39

Unit Loading/Fan Out

Functional DescriptionThe F139 is a high-speed dual 1-of-4 decoder/demulti-

plexer. The device has two independent decoders, each of

which accepts two binary weighted inputs (A0–A1) and pro-

vides four mutually exclusive active LOW Outputs (O0–O3).

Each decoder has an active LOW enable (E). When E is

HIGH all outputs are forced HIGH. The enable can be used

as the data input for a 4-output demultiplexer application.

Each half of the F139 generates all four minterms of two

variables. These four minterms are useful in some applica-

tions, replacing multiple gate functions as shown in

Figure 1, and thereby reducing the number of packages

required in a logic network.

FIGURE 1. Gate Functions (each half)

Logic Diagram

Please note that this diagram is provided only for the understanding of logic operations and should not be used to estimate propagation delays.

Pin Names DescriptionU.L. Input IIH/IIL

HIGH/LOW Output IOH/IOL

A0, A1 Address Inputs 1.0/1.0 20 µA/−0.6 mA

E Enable Inputs (Active LOW) 1.0/1.0 20 µA/−0.6 mA

O0–O3 Outputs (Active LOW) 50/33.3 −1 mA/20 mA

© 2000 Fairchild Semiconductor Corporation DS009482 www.fairchildsemi.com

April 1988

Revised September 2000

74

F1

53

Du

al 4

-Inp

ut M

ultip

lex

er

74F153

Dual 4-Input Multiplexer

General DescriptionThe F153 is a high-speed dual 4-input multiplexer with

common select inputs and individual enable inputs for each

section. It can select two lines of data from four sources.

The two buffered outputs present data in the true

(non-inverted) form. In addition to multiplexer operation,

the F153 can generate any two functions of three variables.

Ordering Code:

Devices also available in Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.

Logic Symbols

IEEE/IEC

Connection Diagram

Order Number Package Number Package Description

74F153SC M16A 16-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-012, 0.150 Narrow

74F153SJ M16D 16-Lead Small Outline Package (SOP), EIAJ TYPE II, 5.3mm Wide

74F153PC N16E 16-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300 Wide

www.fairchildsemi.com 2

74

F1

53

Unit Loading/Fan Out

Truth Table

H = HIGH Voltage Level

L = LOW

X = Immaterial

Functional DescriptionThe F153 is a dual 4-input multiplexer. It can select two bits

of data from up to four sources under the control of the

common Select inputs (S0, S1). The two 4-input multiplexer

circuits have individual active LOW Enables (Ea, Eb) which

can be used to strobe the outputs independently. When the

Enables (Ea, Eb) are HIGH, the corresponding outputs (Za,

Zb) are forced LOW. The F153 is the logic implementation

of a 2-pole, 4-position switch, where the position of the

switch is determined by the logic levels supplied to the two

Select inputs. The logic equations for the outputs are as

follows:

Za = Ea•(I0a•S1•S0 + I1a•S1•S0 +

I2a•S1•S0 + I3a•S1•S0)

Zb = Eb•(I0b•S1•S0 + I1b•S1•S0 +

I2b•S1•S0 + I3b•S1•S0)

The F153 can be used to move data from a group of regis-

ters to a common output bus. The particular register from

which the data came would be determined by the state of

the Select inputs. A less obvious application is as a func-

tion generator. The F153 can generate two functions of

three variables. This is useful for implementing highly irreg-

ular random logic.

Logic Diagram

Please note that this diagram is provided only for the understanding of logic operations and should not be used to estimate propagation delays.

Pin Names DescriptionU.L. Input IIH/IIL

HIGH/LOW Output IOH/IOL

I0a–I3a Side A Data Inputs 1.0/1.0 20 µA/−0.6 mA

I0b–I3b Side B Data Inputs 1.0/1.0 20 µA/−0.6 mA

S0, S1 Common Select Inputs 1.0/1.0 20 µA/−0.6 mA

Ea Side A Enable Input (Active LOW) 1.0/1.0 20 µA/−0.6 mA

Eb Side B Enable Input (Active LOW) 1.0/1.0 20 µA/−0.6 mA

Za Side A Output 50/33.3 −1 mA/20 mA

Zb Side B Output 50/33.3 −1 mA/20 mA

Select Inputs Inputs (a or b) Output

S0 S1 E I0 I1 I2 I3 Z

X X H X X X X L

L L L L X X X L

L L L H X X X H

H L L X L X X L

H L L X H X X H

L H L X X L X L

L H L X X H X H

H H L X X X L L

H H L X X X H H