You are on page 1of 49

*IF

IC
il
'f

Lógica combinacional
con MSI Y LSI
-

4
N
.)
:!

5-1 INTRODUCCION

E l p r o p ó s i t o d e l a s i m p l i f i c a c i ó n d e l a s f u n c i o n e s d e B o o l e errn
s o bcircuito
t e n e r u nde
a
resulte en
expresión algebraica ql-r" "uuttao. se configure c o s-
que determina un circuito de bajo
baio costo. stn emoarJo, eL criterio
simplificación
;;'; il;;"'áLú. -iii a"ni'irse si se va a evaluar el éxito de la
de diseño para los circuitos combinacionales
i;g;"á;. proc.di-iunto
las compuertas nece-
p.?r."ira" en la secci ón 4_2 minimiza el número de
s a r i a s p a r a e j e c u t u , - u n u f u n c i ó n d a d a . E s t e p r o c e d i m i e n t o c l á que
s i c outilice
asume
función' aquel
que, dados do, cir"uiiot qu" tuuti"an ,la misma
que cuesta menos' Esto no es
menos compuertas et pte^fetible debido a
se usan circuitos integrados'
.,u".ru.iurnénte cierto cuando
C o m o s e i n c l u y e n v a r i a s c o m p u e r t a s l ó g i c a s e n u n a s o l a p a s t ipastilla
lla..de
CI se vuelv" la máyoría de lás compuertas de una
".onO--i"";;;;
u t i l i z a d a a u n q u e a l h a c e r l o s e a u m e n t e e l t o t a l d e c o m p u e r t a s . M á sCI aún '
son
algunas de las i"t";;;;;;iones entre las . compuert,as ,en muchos
usar tantas interconexiones
internas a la pastilla y es más económico
minimizar el número de conexiones entre pa-
i,.,i".rru. posiblés pu.u Sd"t
t i l l a s e x t e r n a s . O o n l o s c i r c u i t o s i n t e g r a d o s ' n o e s l a c a n t i d usado
a d d e cyo m elpnú-
uer.
número y tipo de cI
tas lo que determl"un .i áo"lo, .ino e"l
putá ejecutar una función
mero de interconexiones externas necesariu*
dada.
H a y n u m e r o s a s o c a s i o n e s c u a n d o e l m é t o d o c l á s i c o d e l a S e c c i ó n d4a- 2 -
p a r a e j e c u t a r. u n a f u n c i ó n
no produce el mejor circuito combinacional en este
de simplificación
da. Además, la tabla áe verdad y el procedimiento
método se vuelve -"v1t-pficado, ti nú-"to de variables de entrada es
final"l obtenido dice si debe ser configu-
excesivame.rt" gru.,Jé. El circuito
SSI' cuales podrían
rado con ,rnu .or,"*i¿n aleatoria de compuertas 'las.
grande de cI y cableado de intercone-
utilizar un número relativamente
d e u n procedimiento de di-
xión. En la mayoría á" to' casos la aplicación para una función
combinacional
seño alterno prr"d"*ptoautl' un circulto clásico. La
al seguir el método de diseño
dada aun -e¡o, q.re-el obtenido
p o s i b i l i d a d d e u n p , o " " a i , , ' i " ' ' t o d e d i s e ñ o a l t e r n o d e p e n d e d e u n p r o b l e unma
il;;;;ilii;l i""g""¡ á"r diseñador.El métodoclásicoconstituve
que se producen resul-
procedimiento geneál tal, que si se usa se garantiza
t59
I60 L O G I C AC O M B I N A C I O N ACLO N M S I Y L S I
CAP. 5

tados.. sin-embargo,
-cuando se amplía el método clásico es aconsejable
investigar la posibilidad de un método alterno que sea más eficient" p"r,
el problemaparticular entre manos.
Lg Rqimerapregunta que debe contestarseantes de pasar por un di-
seño detallado de un circuito combinacional,es si la función éstá dispo_
nible e¡ una pastilla de cI. La mayoría de circuitos MSI se obtienen co-
mercialmente. Estos circuitos realizan funciones digitales específicas
comúnmenteusadas en el diseño de sistemas de compirt"do.r, digit"l".r.
Si no se encuentra un componente MSI que produ"ca exactamente la
función necesaria,un diseñador recursivo dete poder formular un método
para incorporar un MSI en un ci¡cuito. La selecciónde componentesMSI
con preferenciasobre las compuertas SSI es extremadamenieimportante
ya que invariablemente dará como resultado una reducción considerable
de pastillas de CI y de cablesde interconexión.
La primera mitad de este capítulo presenta ejemplos de circuitos
combinacionalesdiseñados por métodos diferentes á lor pto"edimientos
clásicos. Todos los ejemplos demuestran la construcción interna de las
funciones MSI existentes. Así se presentan nuevas herramientas de di-
señoy al mismo tiempo se familiariza el lector con las funcionesMSI exis-
tentes. Es muy importante conocer las funciones MSI existentes no sola-
mente en el diseñode circuitos combinacionales,sino también en el diseño
de sistemas de computadoresdigitales más complicados.
ocasionalmente se encuentran circuitos MSI y LSI que pueden apli-
carse directamente al diseño y ejecución de cualquier ciicuilo combina-
cional. Cuatro técnicas de diseño de lógica combinacionalmediante MSI
y LSI se introducen en la segundamitad de este capítulo. Estas técnicas
hacen uso de las propiedadesgeneralesde los decohificadores,multiple-
xores' memorias de programación (RoM) y arreglos lógicos p.ogru-rúle,
(PLU). Estos cuatro componentesde cI tiénen u"n gran"nú-.ro á" aplica-
ciones. Su uso en la configuraciónde circuito" descritos
aquí es una de las muchas aplicaciones. "o*bittu"ionales

5-2 S U M A D O R P A R A L E L OB I N A R I O

EI sumado¡ completo introducido en la sección 4-3 forma la suma


de dos
bits y un bit de arrastre previo. Dos números binarios de n bits pueden
sumarse por medio de este circuito. para demostrar con un ejemplo
espe-
cífico considéresedos númerosbinarios, A:1011 y 8:0011
s:1110' cuando se-agreganun par de bits de u.r sumador completo ".ryu ".r*u
el
circuito produce un bit de arranque que se usa con el par de bits de
una
posición más significativa. Esto se muestra en la siguiente
tabla:
Sumador completo
Suscrito i 4321 de la Figura 4-S
Arrastre de entrada 0tl0 ci
Sumando 10ll Ai
Sumando 00ll Bi
Suma lll0 ^T
Arrastre de salida 00ll c,*,
u
$
ill
ll.!
sEc. 5-2 BINARIO
S U M A D O RP A R A L E L O 161
*

Los bits Se suman con sumadorescompletos, comenzandocon el bit


menossignificativo (suscrito) para formar el bit de suma y el bit de arras-
tre. Las éntradas y las salidas del circuito sumador completo de la Eigura
4-5 se indican a continuación. El arrastre de entrada C' en la posición
menossignificativadebeser 0. El valor de C,a¡ €n una posiciónsignifica-
tiva dada es el arrastre de salida del sumador completo.Este valor se tras-
fiere al bit de arrastre de entrada del sumador completo que agrega los
bits a una posiciónsignificativa de mayor posición a Ia izquierda. La suma
de bits es generadaatí, co*ertrando desde la posición de la extrema dere-
cha y es Jisponible tan pronto como se genereel bit de arrastre previo
correspondiente.
Lá suma de dos números binarios de n bits, A y B pueden generarse
de dos maneras:en serie o en paralelo. El método de la suma en serie usa
solamente un circuito sumador completo y un elemento acumulador para
conservarel arrastre de salida generado.El par de bits en A y B se tras-
fiere en serie,uno a la vez a través del solo sumador completopara produ-
cir una cadenade bits salida de Ia suma. El bit de arrastre de salida acu-
mulado de un par de bits se usa como bit de arrastre de entrada para el
siguiente put d-" bits. El método en paralelo usa n circuitos sumadores
cJmpletosy todos los bits de A y B se aplican simultáneamente.El bit de
u.rr.tr. de salida de un sumador completo se conecta al arrastre de en-
trada del sumador completo de la posición siguiente a Ia izquierda' Una
vez se hayan generadolos bits de arrastre, los bits de la suma correcta
salen por las salidas de suma de los sumadorescompletos'
lJn sumador paralelo binario es una función digital que produce una
suma aritmética de dos números binarios en paralelo. Este consiste en
r"iii"aó.é!,-completos conectadosen cascadacon la salida de arrastre de
un sumador completo conectadoal arrastre de entrada del siguiente su-
mador completo.
La Figura 5-1 muestra Ia interconexión de cuatro circuitos sumadores
completos (FA) para dar un sumador paralelo binario de cuatro bits. Los
rrr*ádo.". de A y los bits sumadores de B se designan por medio de nú-
meros suscritos de derecha a izquierda con el suscrito 1 denotandoel bit
de más bajo orden. Los arrastrés se conectan en cadena a través de los
sumadorescompletos.El arrastre de entrada del sumador es C1 y la sa-
lida de arrastre es C5. Las salidas S generanlos bits de suma requeridos.
Cuando el circuito sumador completo de cuatro bits se encapsuladentro
de una pastilla CI tendrá cuatro terminales para un sumando, cuatro ter-
minales para otro sumando, cuatro terminales para los bits de suma y dos
terminalés para los arrastresde entrada y salida.*
un sumador completo de n bits requieren sumadorescompletos.Pue-
de construirsea partir de las CI sumadorescompletosde 4, 2 y 1 bit conec-
tando en cascadavarias pastillas. La salida de arrastre de una pastilla
debe conectarsea la entrada de arrastre de aquella con Ios siguientesbits
de mayor orden.
Los sumadorescompletosde 4 bits son un ejemplo tipico de una fun-
ción-MSI. Puedenusarseen muchas aplicacionesque incluyen operaciones
aritméticas. Obsérveseque el diseño de este circuito por medio del mé-
* Un ejemplode un sumadorcompletode cuatro bits es el CI TTL tipo 74%3.
s3 s2

Figura 5-1 Sumadores completos de 4 bits

todo clásico necesitaría una tabla de verdad con 2e : 512 gn*,¡edq6, ya


que hay nueve-entradas al circuito. Mediante el uso de un método iterativo
de colocar en cascada una función ya conocida se puede obtener una con-
figuración simple y bien organizada.
La aplicación de esta función MSI al diseño de un circuito combina-
cional se demuestra con el siguiente ejemplo:

EJEMPLO 5-I: Diséñese un conversor de código BDC a


e x c e s o3 .
Este circuito fue diseñado en Ia Sección 4-5 por medio del
método clásico. El circuito obtenido de este diseño se muestra en
Ia Figura 4-8 y requiere 11 compuertas. Cuando se ejecuta con
compuertas SSI requiere 3 circuitos integrados y 14 conexiones
i n t e r n a s ( s i n i n c l u i r l a s c o n e x i o n e s d e e n t r a d a y d e s a l i d a ). L a
inspección de las tablas de verdad revela que el código equiva-
lente de exceso 3 puede obtenerse del código BDC mediante la
suma del binario 0011. Esta suma puede ejecutarse fácilmente
mediante el circuito MSI de sumadores completos de 4 bits mos-
' trado en la Figura 5-2. El dígito BDC se aplica a las entradas A,
las entradas B se colocan a 0011 constante. Esto se logra aplican-
d o l ó g i c a1 a 8 1 y B z y l ó g i c a0 a B j , B t y C t . L a l ó g i c a1 y l a
lógica 0 son señales físicas cuyos valores dependen de la clase de
familia de los CI usados. Para los circuitos TTL, lógica 1 equivale
a 3,5 voltios y lógica 0 equivale a tierra. Las salidas S del circuito
darán el código equivalente de exceso 3 del dígito de entrada en
BDC. Esta configuración requiere un CI y 5 conexiones,sin in-
c l u i r l a s c o n e x i o n e sd e e n t r a d a v s a l i d a .

Propagación del arrastre

La suma de dos números binarios en paralelo implica que todos los bits de
los sumandos están disponibles para el cálculo al mismo tiempo. Como en
cualquier circuito combinacional, la señal debe propagarse por las com-
t62
No seusa

L5
a.

A2
Entrada
BDC ^
^1

¡ Salida de
e x c e s o3

Bl

B2

B3
D
- Ll

Figura 5-2 Convertidor de código de BDC a exceso 3

puertas antes que Ia suma de salida correcta esté disponible en Ios termi-
de
irte, ¿" salid;. El tiempo de propagacióntotal es igual al retardo
propagaciónde una compuertatípica multiplicando por el número de nive-
ies'de compuertasen el circuito. El mayor tiempo de propagaciónen un
sumador paralelo es el tiempo que se toma el bit de arrastre en propagarse
pá, to. ,rr*adore. completoÁ.Cbmo cada bit de la salida de suma depende
del valor del arrastre ie entrada, el valor de S, en cualquier estado dado
en el sumador, estará en su valor final establesolamentehasta que el bit
de arrastre de entrada a este estado se haya propagado.ConsidéreseIa
.átidu S, en la Figura b-1. Las entradasA, y Bt alcanzanun valor esta-
la
ble tan pronto como las señalesde entrada se apliquen al sumador.Pero
entrada de arrastre C., no va a su estado estable final hasta que esté dis-
ponible c3 en su valoi de estado estable.De manera similar, c, tiene que
;.;;.;; i, C, t así sucesivamente hasta C1' Así, irán la salida Sr y el
arrastre C, a un valor final de estado estable hasta que se propagueel
arrastre a través de todos los estados.
El número de niveles de compuertaspara la propagacióndel arrastre
se puede deducir del circuito del sumador completo. Este circuito es de-
¿ucldo en la Figura 4-5 y redibujado en la Figura 5-3 por conveniencia'
Las variables de entrada y salida usan el suscrito i para denotar un estado
tipico de un sumador pu.ál"lo. Las señalesen P, y G, llegan a su valor de
esiado estable despuéi de la propagaciónpor sus compuertasrespectivas'
Estas dos señalesio.t a todos los sumadorescompletosy depen-
"om,rnei
den solamentede los bits de entrada de los sumandos.La señal del arras-
tre de entrada, C,, se propagaal arrastrede salida, C¡+t a través de una
I compuerta AND y una óompuerta OR, lo cual constituye dos niveles de com-
p""riu. Si hay cuatro sumadorescompletos en el sumador paralelo, la
salida de arrastre Cu tendrá 2X4:8 niveles de compuertasdesde C1
hasta Cr. El tiempo d" p.oprgución total en el sumador será el tiempo de
t63
Figura 5-3 Circuitosumadorcomplet'

propagación en un sumador medio, más ocho niveles cie : rpuertas. Para


un s.r-aAor paralelo de n bits, hay 2 n niveles de comp.;e:l's para el bit
de arrastre por los cuales se debe propagar.
El tiempo de propagación del arrastre es un fact,-,:.:rnitante de la
velocidad con la cual se suman dos números en paralei, .\unque un su-
mador paraielo, o un circuito convencional, tengan sier:.pre un valor en
sus terminales de salida, las salidas no serán las cor¡ecta. .l no se Ies
da a las señale$ el tiempo suficiente para propagarse a tFa\'trs de las com-
puertas conectadas desde las entradas hasta las salidas. C, mo todas las
operaciones aritrnéticas se ejecutan con sumas Sucesivas. el ttempo com-
piendido durante el proceso de suma es muy crítico. Una sc'iución obvia
para reducir el tiempo de demora de propagación del arrastre es la de usar
compuertas más rápidas con demoras reducidas a pesar de que los circui-
tos hsicos tengan un límite de su capacidad.' Otra solucion es Ia de au-
mentar la complejidad del equipo de tal manera que se reduzca el tiempo
de demora del arrastre.Hay otras técnicas para reducir el tiempo de pro-
pagación del arrastre en un sumador paralelo. La técnica usada más ex-
tensamente emplea el principio de obseruación del arrostre ¡,súerior y se
describe a continuación.
Considérese el circuito del sumador completo mostrado en Ia Figura
5-3. Si se definen dos variables binaias nuevas:

P,: A,@ B,
G,: A,B,

1a suma de salida y el arrastre puede expresarse como:

S,:4Oq
C¡*t: Gi + PiCi

C, se llama el arrastre generado"y produce un arrastre de salida cuando


A, y B, son 1 sin tener en cuenta el arrastre de entrada. ,f se llama el
arrastre propagado ya que es el término asociado con la propagación de
C , h a s t aC , * 1 .
Se escribe la función de Boole para la salida de arrastre de cada esta-
do y se sustituye para cada C, su valor a partir de las ecuaciones previas:
t64
Figura 5'4 Diagrama lógico del generador del bit de arrastre [nsterror

Cz: Gt + PtCl
Ct: Gz+ P2C2: Gz* Pz(Gt + P,C,) : G 2 + P 2 G t+ P z P t C l

Cq: G t + P 3 C 3 : G t I P 3 G 2+ P 3 P 2 G :+ P 3 P z P t C l
en
Como las funciones de Boole para cada arrastre de salida se expresan
suma de productos, cada fun¿ión debe ser configurada con un nivel de
de
compuerta; AND seguidas de una compuerta OR (o mediante dos niveles
Ca se configuran con
NAND). Las tres fiinciones de Boole para C2, Ct Y
que
el generador del arrastre primario mostrado en la Figura 5-4. Nótese
y C2 para propagarse; de hecho C', se pro-
Ca no tiene que esperar u C,
paga al mismo tiemPo que C:¿Y C;.*
La construcción de un sumador en paralelo de 4 bits con un arrastre
posterior se muestra en la Figura 5-5. cada salida de suma requiere dos
genera la
compuertas OR-exclusivas. La salida de la primera OR-exclusiva
vari;ble 4 y la compuerta AND genera la variable G¡. Todas las P y G se
generan en ios .riueies de compuértas. Los arrastres se propagan a través

*Un generador de arrastre posterior es el CI tipo 74782. Se c-ompone de compuertas


: G + PC t.
AND-OR ilnvertida. Tiene también dos salidas para generar Cs
t65
Generador
de bit de
D arrastre
posterior
^2

Figura 5-5 sumadores completos de 4 bits con bit de arrastre posterior

del generadorde arrastre posterior (similar al de la Figura b-4) y se


apli-
can como entradas a una segunda compuerta oR-exclúsiva. Despué,
q,r"
las señales P y G se establezcan a sus valores de estado estable, ioao,
io,
arrastres de salida se generarán después de una demora de dos niveles
de
compuertas. Así, las salidas s2 hasta sn tienen iguales tiempos de de_
mora de propagación. El circuito de dos niveles pará el arrastré de salida
c'' no se demuestra en Ia Figura b-4. Este circulto puede derivarse fácil-
mente por el método de ecuación sustitución como ie hizo anteriormente
(ver Problema 5-4).

5-3 S U M A D O RD E C I M A L

!.u. computadores o calculadoras que realizan operaciones aritméticas


directamente en el sistema de números decimales representan números
decimales en la forma de binarios codificados. un sumador para tal
com-
t€6
sEc. 5-3 S U M A D O RD E C I M A L 1 6 7

putador debe usar circuitos aritméticos que aceptan números decimales


codificados y presentan resultados en el código aceptado. Para suma bi-
naria, fue suficiente considerar un par de bits significativos al tiempo'
conjuntamente con el arrastre anterior. Un sumador decimal requiere un
mínimo de nueve entradas y cinco salidas, ya que se requieren cuatro bits
para codificar cada dígito decimal y el circuito debe tener un arrastre de
entrada y uno de salida. Por supuesto,hay una gran variedad de circuitos
de suma decimal que dependen del código usado para representar los dí-
gitos decimales.
El diseño de un circuito combinacional de nueve entradas y cinco sa-
Iidas por el método clásico requiere una tabla de verdad con 2e :512 entra-
das. La mayoría de las combinaciones de entrada son condiciones de no
importa, ya que cada entrada de código binario tiene seis combinaciones
que son válidas. Las funciones de Boole simplificadas por el circuito pue-
den obtenerse por un método de tabulado generado por un computador y el
resultado podría ser probablemente una conexión de compuertas formando
un patrón irregular. Un procedimiento alterno, es sumar los números con
circuitos sumadores completos, teniendo en cuenta el hecho de que no se
usan seis combinaciones en cada entrada de 4 bits. La salida debe ser
m o d i f i c a d a d e t a l m a n e r a q u e s o l a m e n t e a q u e l l a s c o m b i n a c i o n e sb i n a r i a s ,
válidas del código decimal, se generen.

Sumador BDC

C o n s i d é r e s eI a s u m a a r i t m é t i c a d e d o s d í g i t o s d e c i m a l e s e n B D C , c o n u n
arrastre posible de un estado anterior. Como cada dígito de entrada no
e x c e d ea l á s u m a d e s a l i d a n o p u e d e s e r m a y o r q u e 9 + 9 + 1 : 1 9 , siendo
el 1 en la suma, el arrastre de salida. Al suponer que se aplican dos dígitos
BDC a un sumador binario de 4 bits, el sumador formará la suma enbina'
rio y producirá un resultado que puede variar entre 0 y 19. Estos números
d e c i " m a l e ss e l i s t a n e n l a T a b l a 5 - 1 y s e m a r c a n c o n s í m b o l o s K , Z * , Z r ,
Z¿ y 2,. K es el arrastre y los s\scritos bajo la Ietra Z representan los
pÁ* s,' 4, 2 y 1 que deben ser asignados a los cuatro bits en el códig<r
blC. La primera óolumna en Ia tabla Iista las sumas binarias a medida
que aparec;n en las salidas de un sumador binarío de 4 bits. La suma de
salida de dos dígítos decimales debe representarse en BDC y debe apa-
recer en la forma listada en la segunda columna de la tabla. El problema
es encontrar una regla simple por medio de la cual el número binario en la
primera columna puede convertirse a la correcta representación de dígi-
tos BDC del número en la segunda columna.
Al examinar el contenido de la tabla, es aparente que cuando la suma
binaria sea ig¡al o menor que 1001, el correspondiente número BDC es
idéntico y por tanto no se necesita conversión. Cuando el número binarir,r
e s m a y o r q u e 1 0 0 1 s e o b t i e n e u n a r e p r e s e n t a c i ó nB D C n o v á l i d a . L a s u m a
d e l b i n a r i o 6 ( 0 1 1 0 )a I a s u m a b i n a r i a I o c o n v i e r t e a l a r e p r e s e n t a c i ó nB D C
correcta y también produce el arrastre de salida requerido.
El circuito lógico que detecta Ia corrección necesaria puede derivarse
de las entradas de la tabla. Es obvio que se necesita una corrección cuando
168 L O G I C AC O M B I N A C I O N A
CLO N M S I Y L S I CAP. 5

Ia suma binaria tiene un arrastre de salida K:1. Las otras seis combina-
ciones desde 1010 hasta 1111 que necesitan una corrección tienen un 1 en
la.posiciónzr. Para distinguirlosdel númerobinario 1000y 1001que tam-
bién tienen un 1 en la_posiciónzr, se especificará
más adólante[ue z, ó
zt debentener un 1. La condición para que una correccióny un anastre
de salida pueda ser expresadapor *.dio d. u.,u función de Boole:

C: K + Z B Z 4 +Z 8 Z 2
cuando c: l, es necesarioagregar0110a Ia suma binaria y suministrarun
arrastre de salida a Ia siguienteetapa.
I
Tabla 5-1 Deducciónde un sumadorBDC

Suma binaria S u m aB D C Decimal

K z8 z4 z2 zl C ,s8 s4 s2 ,sr
0' 0 0 0 0 00000 0
0 0 0 0 I 00001 I
0 U 0 I 0 00010 2
0 0 0 I I 00011
0 0 I 0 0 00100 A

0 0 I 0 I 00101 5
0 0 I I 0 00110 6
0 0 I I I 00lll 7
0 I 0 0 0 01000 8
0 I 0 0 I
I 01001 9
0 0 l0 r000 0 r0
0 0 ll r000 I ll
0 00 l00l 0 t2
0 0l l00l I l3
0 r0 l0l0 0 l4
0 rl l0l0 I l5
I 0 0 00 l0ll 0 ló
I 0 0 0l l0tl I t7
I 0 0 t0 rl00 0 l8
I 0 0 ll 1100 I l9

lJn sumador BD.c. es un circuito que agrega dos dígitos BDC en para-
lelo y produce un dígito suma en BDC. unsrimador gbc dene incluir
Ia
c o r r e c c i ó n l ó g i c a e n s u c o n s t r u c c i ó n i n t e r n a . p a r a a g r e g a r0 1 1 0 e n l a
suma
binaria, se usa un segundo sumador binario de 4 bils óo*o ." muesrra
en
la Figura 5-6. Los dos dígitos decimales, conjuntamente con
un arrastre
de entrada, se agregan primero en el sumadoi binario de 4 bits
superior
para producir la suma binaria. cuando el arrastre de salida
es igual u
no se agrega nada a la suma binaria. cuando es igual a 1 se agrega "u.o,
el bi-
nario 0110 a la suma binaria por medio del sumadór binario
de ? bits lnre_
Sumando Sumando
nI

!
' ,1

Entrada
Salida de Sumador binario de 4 bits de arrastre
arrastre
28 24 22 zl

Bit de
arrastre
de saiida

Sumador binario de 4 bits

l'igura 5-6 Diagramade bloquede un sumadorBDC

sumador binario superior


rior. El arrastre de salida generado a partir del
puede ignorarse porque Ju ü i"ro.-ación ya disponible en el terminal de
arrastre de salida.
Cada uno de los su-
El sumador BDC puede construirse con tres CI'
madores de 4 bits u. función MSI y Jas tres compuertas para la lóe]c1
""u
decorreccióncaben"""""pastillassl.sinembargo,elsumadorBDC
de propagación
se obtiene en un .i..,-,ito úSt.- Para alcanzar demoras
i n c l u y e l o s c i r c u i t o s n e c e s a r i o sp a r a
más cortas, un sumador MSI BDC
El circuito sumador para la co¡rección no nece-
io. u.rurtr"s posteriores.
sumadores completos y este circuito puede optimi-
sita todos los cuatro
zarsedentro de una Pastilla de CI'
decimales necesita
Un sumador paralelo decimal que suma n dígitos
salida de una etapa debe co-
á" rrrrrru'doresBDC. El arrastre de
"nectarse
"t;;;t la siguiente etapa de mayor orden'
al arrastre de entrada de

*El CI TTL tipo 82583es una sumadorBDC'


169
5 _ 4 C O M P A R A D OD
RE M A G N I T U D E S

-'., . :--paracronde dos númeroses una operaciónque determina


r"cr e: ma-\'orqu€' menor que o igual a otro si un nú_
'"¿¿n:itrdes un circuito número. Un comparadord.e
combinaciónal_q-u..o-pululoL,t-".os, A y B
r determinasus magnitudesrerativas.Bi
resurtádod; L comparaciónse
especificapor medio de tres variables binarias
A: B, ó A<8. luá-i"Ji*, cuando A > B,
El circuito para comparar dos números de
. n bits tiene 22, entradas
en la tabla de verdad y se vuerve muy complicado
aun pu.u n : 3. por otra
parte, como es de sospechar,un circuito
comparadortiene cierta cantidad
de regularidad. Las funciones digitaies que poseen
una reguraridadinhe-
rtntt bi0ndufinidg$u"J"r,J,r"lu.." po-rmediode un procedimiento
algo_
iltlltlr0
sit0utt¡tlontrá
su¿*,,i"n"lu
tl;;[;;;; J ;;;;;;;l;
que especifica un conjunto
de pasos, lo"s cuales du' uru solución al
p r o b l e m a s i s e s i g u e n . S e i.finito
lustrará éste método deduciendo un
para el diseño de un comparador de argoritmo
magnitud de 4 bits.
El algoritmo es una apricación dir:ecta
á" ;; p.t"ear-r"nto que usa
una persona para comparar-ras magnitudes
"rr.ro rerativas^de dos números. con_
sidérese los números A y B cada
4 dígit.s y escríbase los coefi-
cientes de los números en orden significativn "or.
dJr""r,áe"t" a" la siguiente
manera:
A : A,A,A,Ao
B : BrB2BrBo
donde cada suscrito de letra representa
uno de ros dígitos der número. Los
dos números son iguales si toáos t,or-pu.",
de números significativos son
i g u a l e s ,e s d e c i r s i - 4 1 :
p: ., ir:"Éj , At: Bt y Ao:.8u. Cuando los
números son binarios ros dígitos son
1 ó 0 y ra relación de igualdad para ca_
de bits puede .*pré.u.." lógicamente
con una furrción de equiva-
[X"Tl
x, : A,B,+ A'iB,¡ i : 0, 1,2,3
donde x¡:l solamente si el par de bits en la posición
l s o n i g u a r e se s d e c i r
si ambos son unos o ceros.
La igualdad de dos números A y B se indica
en un circuito combina_
cional por rrfedio de una variable binaria
ae saliaa q;; ;; designa con el
símbolo (A: B). Esta variable binaria
es igual a 1 si los números de entra_
da A y B son iguales; de lo contra.lo
s".á igual a 0. para que exista esta
condición de iguardad, todas las ,rarialle.
;:;;ü; ."i'i?rul", a 1. Esto
produce una operación AND
de todas las va¡iables:
(A:B):xrxrxrxo
la variable binaria (A -- B) es igual a
1 solamente si todos los pares de dí-
gitos de los dos números son izuáles.
Para determinar si A es mlyor o menor.qug_B
se inspeccionan las mag_
nitudes relativas de.los pu.".. á" dígitos
significativo, clesde
la posición significativa más arta. siios "o-"rrr"ndo
dostígiñr"" ig""i"r, se compara
t70
F
itI
il
i
sEc. 5-5 DECODIFICADORES
I71

I el siguiente par de dígitos siguientes menos significativos. Esta compara-


ción continúa hasta que se encuentre un par de dígitos desiguales. Si el
correspondiente dígito de A es 1 y el de B es 0, se concluye que A > B. Si
e l c o r r e s p o n d i e n t ed í g i t o d e A e s 0 y e l d e B e s 1 s e t i e n e q u e A 1 8 . L a
c o m p a r a c i ó n s e c u e n c i a l p u e d e e x p r e s a r s el ó g i c a m e n t e p o r l a s d o s s i g u i e n -
tes funciones de Boole:

(A > B): 4Éi * xrArB'r* xrxrArB', * x3xrxrAsB', i.


¡l

( A < B ) : A ' z B t I x l A ' r B 2 r x ' r x r A 'r B , * x r x r x r A ' o B o


l.
los símbolos (A > B) y (A < B) son variables de salida binarias que son ig'tra-
I les a 1 cuandoA> B ó A < B respectivamente.
I
La ejecución con compuertas de las tres variables de salida derivadas
il
es más simple de lo que parece ya que tiene cierta cantidad de repetición. D
Las salidas "desiguales" pueden usar las mismas compuertas que se ne- ñ
cesitan para generar una salida "igual". EI diagrama lógico del compara-
dor de magnitud de 4 bits se muestra en Ia Figura 5-i.* Las cuatro ¡ de
salida se generan con circuitos de equivalencia (NOR-exclusiva) y se apli-
can a una compuerta AND para dar la variable binaria de salida (A:B).
Las otras dos salidas usan las variables f para generar las f'unciones de
t Boole listadas a continuación. Esta es una configuración de multinivel y
como se puede ver tiene un patrón regular. El procedimiento para obtener
circuitos comparadores de magnitud para números binarios de más de
cuatro bits debe ser obvio para este ejemplo. EI mismo circuito puede
usarse para comparar las magnitudes relativas de dos dígitos BDC.

5-5 DECODIFICADORES

Cantidadesdiscretasde informaciónse presentanen sistemasdigitales


con códigos binarios. Un código binario de n bits es capaz de representar
hasta 2" elementos dif'erentesde información codilicada. Un decodífica-
dor es un circuito combinacional que convierte Ia información binaria de
n líneas de entrada a un máximo de 2n líneas únicas de salida. Si la in-
formación decodificada de n bits tiene combinaciones no usadas o de no
importa, la salida del decodificador tendrá menos de 2' salidas.
Los decodificadores presentados aquí se llaman decodificadores en
l í n e a d e n a m . E n d o n d e m 1 2 " . S u p r o p ó s i t oe s g e n e t a r 2 " ( o m e n o s )
términos mínimos de n variables de entrada. EI nombre decodificador se
usa conjuntamente con cierto tipo de convertidores de código tal como el
decodificadorBDC a siete segmentos (ver Problema 4-l4l'
Como ejemplo, considérese el circuito decodificador en línea de 3 a 8
de la Figura 5-8. Las tres entradas se decodifican en ocho salidas y cada
salida representa uno de los términos mínimos de las variables de 3 en-
tradas. Los tres inversores generan el complemento de las entradas y cada
una de las ocho compuertas AND generan uno de los términos mínimos. Una

*El
TTL tipo 7485 en un comparador de magnitud de 4 bits. Tiene tres entradas más
para conectar los comparadores en cascada (ver Problema 5-14).
Figura b-Z Comparador de magnitudes de 4 bits

aplicación particular de este decodificador sería una conversión binaria


a octal. Las variables de entrada podrían representar un número binario
y las salidas représentarían los ocho dígitos en el sistema de numeración
octal. Sin embargo un decodificador en línea de 3 a 8 puede ser usado para
decodificar cualquier código de 3 bits para genera. ocho salidas, unu para
cada elemento del código.
La operación del decodificador será clasificada más adelante a partir
de las relaciones de entrada salida listadas en la Tabla 5-2. obsérvese
172
Do - ' r:'

Figura b-8 Decodificador en línea de 3 a g

Tabla b-2 Tabla de ve¡dad del decodificador


de línea
de3a8

Entradas
xyz Do Dt D2 D3 D4 Ds D6 D1

000 10000000
001 01000000
010 00100000
0l I 00010000
r 00 00001000
l0l 00000100
r l0 00000010
I ll 00000001

173
I74 L O G I c Ac o M B I N A C I o N A L
coN MSI Y LSI CAP. 5

que las variables de salida son mutuamente exclusivas ya que solamente


una de las salidas es igual a 1 en cualquier momento. La línea de salida
cuyo valor corresponde a 1 representa el término mínimo equivalente al
número binario que se presenta en las líneas de entrada.*

EJEMPLO 5-2.. Diseñar un decodificador BDC a decimal.


Los elementos de información en este caso son los diez dígitos
decimales representados por el código BDC. El código en sí mismo
tiene cuatro bits, por tanto, el decodificador debería tener cuatro
entradas para aceptar el dígito codificado y las diez salidas para
cada uno de los dígitos decimales. Esto dará un decodificador de
4 a l0líneas de BDC a decimal.
No es necesario diseñar este decodificador ya que se puede
encontrar en la forma de cI como una función MSI. De todas ma-
neras se va a diseñar por dos razones: primero dará un conoci-
miento de Io que se debe esperar de tal fünción MSI; segundo,
esto constituye un buen ejemplo para mostrar las consecuencias
prácticas de las condicionesde no imoorta.
como el circuito tiene diez saúdas, sería necesario dibuiar
diez mapas para simplificar cada una de las funciones de sariáa.
Hay seis funciones de no importa que deben considerarse para la
simplificación de cada una de las funciones de salida. En vez de
dibujar diez mapas, se dibujará solamente un mapa y se escribi-
rán cada una de las variables de salida D,, hasta D". dentro de
su cuadrado de término mínimo, de la manera mostrada en la Fi-
gura 5-9. Hay seis combinaciones de entrada que nunca ocurren
de tal manera que se marcan los cuadrados de ios términos míni-
mos correspondientes con X.
Es responsabilidaddel diseñador decidir cómo tratar las con-
diciones de no importa. se asume que ha decidido usarlas de tal
nanera que se simplifican las funciones al número mínimo de

,l
_]:
on nl rr rn
ll\

D,, Dl D\ D2

"t,, i.
0t D4 D\ D1 Db

X X X X

Dr De X X

Y
Figura 5-9 Mapa para simplificar un decodificador BDC a decimal

lEl CI tipo 74138 es un decodificador en línea de 3 a 8. Se construye con compuerras


NAND. Las salidas son los compleme¡rtos de los valores mostrados en la Tatla b-2.
II S E C .5 - 5

literales. D¡ Y Dt no pueden combinarse con ningún térmrno


mínimo de no importa. D2 puede combinarse con el término míni-
mo m r,, de no imPorta Para dar:
D E C O D I F I C A D O R E SI 7 5

Dz: x'Yz'

E 1 cuadrado con D,, puede combinarse con otros tres cuadrados


de no importa para dar:

Ds: wz

se ob-
Usando los términos de no importa para las otras salidas,
tiene el circuito mostrado en ia Figura 5-10. D e e s t a m a n e ra los
tárminosdenoimportacausanunareducciónenelnúmerode
entradas en Ia mayoría de las compuertas AND'
la minimiza-
un diseñador cuidadoso debería investigar el efecto de
ción anterior. A p e s a r d e q u e b a j o l a s c o n d i c i o n e s d e o p e r a c i ó n normal las
seis combinacionós i n v á l i d a s n u n c a o c u r r e n . ¿ Q u é p a s a r í a s i h ay una falla
y ocurren? un análisis del circuito de la Figura 5-10 m u e s t r a que las seis
combinaciones no válidas de entrada p r o d u c i r á n l a s s a l i d a s listadas en
la Tabla 5-3. El lector p u e d e m i r a r l a t a b l a y d e c i d i r s i e i d i s e ñ o es buencr

I o malo.

Do: w'r' )"':'

D | : w'x'Y'i

Dr: r'Y:,'

Dl:x')z

I
DB: t ''

I
Figura 5-1O Decodificador BDC a decimal
Tabla 5-3 Tabla parcial de ve¡dad para el circuito de la Fizura 5-10

Entradas Salidas
wxyz Do Dt D2 D3 D4 D5 D6 D7 D8 Ds

0 0010000010
I 0001000001
0 0000100010
I 0000010001
0 0000001010
I 0000000101

otra decisión de diseño razonable podría ser el hacer todas las sali-
das iguales a 0 cuando ocurre una combinación de entrada no válida.* Es-
to requeriría díez compuertas AND de cuatro entradas. Se deben considerar
otras posibilidades pero de todas maneras no se deben tratar las condicio-
nes de no importa indiscriminadamente, sino que se debe tratar de inves-
tigar su efecto una vez que el circuito esté en operación.

Configuración de circuitos con lógica combinacional

un decodificador produce 2" términos mínimos de n variables de entrada.


Como cualquier función de Boole puede expresarse en suma de términos
mínimos en la forma canónica, se puede usar un decodificador para gene-
rar los té¡minos mínimos y una compuerta oR externa para formár la Juma.
De esta manera cualquier circuito combinacional con n entradas y m sa-
lidas puede configurarse con un decodificador en línea de n a 2n y m com_
puertas OR.
El procedimiento para configurar un circuito combinacional por medio
r1 codificador y compuertas oR requiere que las funciones de Boole
4",
del circuito se expresen en suma de términos mínimos. Esta forma puede
obtenerse fácilmente de la tabla de verdad o por expansión de las funcio-
nes a su suma de términos mínimos (ver Sección 2-b). Luego se escoge un
decodificador que genere todos los términos mínimos de las n variables de
ent¡ada. Las entradas a cada compuerta oR se seleccionan de las salidas
del decodificador de acuerdo a la lista de términos mínimos en cada función.

EJEMPLO 5-J: construir un circuito sumador completo


con un decodificador y dos compuertas OR.
De la tabla de verdad del sumador completo (sección 4-3) se
obtienen las funciones para este circuito combinacional en suma
de términos mínimos:

S(",.y,z) : >(1,2, 4, i)
C ( * ,y , z , ) : ) ( 3 , 5 ,6 , 7 )
*
El CI tipo 7442 es un decodificador BDC a decimal. Las salidas seleccionadas
están
en el estado de 0 y todas las combinaciones inválidas darán una salida de solo unos.

176
ig
iq
'rt

$
rl

decofificador
-' 3x I

Figura 5-11 Configuración de un sumador completo a partir de un decodificador

Como hay tres entradas y un total de ocho términos mínimos se


necesita un decodificadoren línea de 3 a 8. Su ejecución se mues-
tra en Ia Figura 5-11. El decodificador genera los ocho términos
mínimos de x, y, z. La compuerta OR para la salida S forma Ia suma
de los términos mínimos 1,2, 4 y 7. La compuerta OR para la salida
C forma la suma de los términos mínimos 3, 5, 6 y' 7.

Una función con una lista Iarga de términos mínimos requiereuna


compuerta OR con un gran número de entradas. Una función F que tiene
una lista de ft términos mínimos puede expresarse en fbrma de complemen-
to F con 2" -k términos mínimos. Si ei número de términos mínimos de una
función es mayor que 2"/2 entonces F' puede expresarse con menores tér-
minos mínimos que los que necesita F. En tal caso, es ventajoso usar una
compuerta NOR para sumar los términos mínimos de F'. La salida de un¿
compuerta NOR genera una salida normal F.
El método del decodificador se puede usar para eiecutar cualquier
circuito combinacional. Sin embargo su realización se debe comparar con
otras configuraciones posibles para determinar la mejor solución. En aigu-
nos casos este método podría dar la mejor combinación, especialmente si
I o s c i r c u i t o s c o m b i n a c i o n a l e s t i e n e n m u c h a s s a l ñ d a sy s i c a d a f u n c i ó ' d e
salida (o su complemento) se expresa con una pequeña cantidad de tér-
minos mínimos.

Demultiplexores

Algunos CI se construyen con compuertas NAND. Como una compuerta


NAND produce una operación AND con una salida invertida, es más eco-
nómico generar los términos mínimos del decodificador en su forma comple-
mentada. La mayoría si no todos los CI decodificadores, incluyen una o más
entradas de actiuqcídn (enable), para controlar la operación del circuito.
Un decodificador en línea de 2 a 4 con una entrada de activación y construi-
do con compuertas NAND se muestra en la Figura 5-12. Todas las sali-
das son iguales a 1 si la entrada de activación E es 1, no importando los
valores de las entradas A v B.Cuando la entrada de activación es igual a
177
( a) Diagrama lógico. (b) Tabla de verdad

Figura 5-12 Un decodificador de línea 2 a 4 con ent¡ada activadora (E)

0, el circuito opera como decodificador con salidas complementadas. La


tabla de verdad lista estas condiciones. Las X debajo de A y B son condi-
ciones de no importa. La operación normal del decodificador ocurre sola-
mente con E:0 y las salidas se seleccionancuando su estado es 0.
El diagrama de bloque del decodificador se muestra en la Figura
5-13(a). El circuito pequeño en la entrada E indica que el decodificador
se activa cuando E:0. El pequeño círculo a la salida indica que todas
Ias salidas están complementadas.
Un decodificador con una entrada de habilitación puede f'uncionar
como demultiplexor. IJn demultipLexor es un circuito que recibe informa-
ción por una sola línea y trasmite esta información en una de las 2" líneas
posibles de salida. La selección de una línea de salida específica se con-
trola por los valores de los bits de n líneas de selección. El decodificador
de Ia Figura 5-12 puede funcionar como demultiplexor si la línea E se toma
como línea de entrada de datos y las líneas A y B como líneas de selección
tal como se muestra en Ia Figura 5-13(b). La sola variable de entrada E

Do Do

decodificador Dl demultiplexor Dl
2x4 2x4
D2 u2

D3 t)-

E
Act ivación
Selección
(a) Decodificador con activado¡ (b) Demultiplexor

Figura 5-13 D i a g r a m a s d e b l o q u e para el circuito de la Figura 5-12

178
I-
:a

,i
sEc.5-5 I79
DECODIFICADORES

tiene un camino a todas las salidas, pero la información de entrada se diri-


ge solamente a una de las líneas de salida de acuerdo al valor binario de
l a s d o s l í n e a s d e s e l e c c i ó nA y B . E s t o p u e d e v e r i f i c a r s e d e l a t a b l a d e e s t e
circuito mostrada en la Figura 5-12(b), Por ejemplo si la selección de las
líneas AB: I0 la salida D2 tendrá el mismo valor que Ia entrada E, mien-
t r a s q u e l a s o t r a s s a l i d a s s e m a n t i e n e n e n 1 . C o m o l a s o p e r a c i o n e sd e c o -
dificador y demultiplexor se obtienen del mismo circuito, un decodificador
con una entrada de activación se Ilama un decodít'icador/demultiplexor.
Es la entrada de activación la que hace al circuito un demutiplexor; el de-
codificador de por sí puede usai-corripüertas AND, NAND y NOR.
Los circuitos decodificador,/demultiplexor pueden conectarse con-
juntamente para formar un circuito decodificador mayor. La Figura 5-14
muestra dos decodificadores de 3 x 8 con entradas activadoras conectadas
para formar un decodificador de 4 x 16. Cuando w :0, el decodificador
superior se habilita y el otro se inhabilita. Las salidas del decodificador
inferior son todas ceros y las ocho salidas superiores generan los términos
m í n i m o s 0 C C 0a 0 1 1 1 . C u a n d o u : 1 se invierten las condiciones de habili-
tación; el decodificador inferior genera los términos mínimos 1000 a 1111,
mientras que las salidas del decodificador superior son todas ceros. Este
ejemplo demuestra la utilidad de las entradas activadoras de los CI. En
general, Ias líneas activadoras son una característica conveniente para
conectar dos o más CI con el propósito de expandir la función digital a una
función similar con más entradas y salidas.

Figura 5-14 Un decodificador de 4X16 const¡uido con dos decodificadores de 3x8

Codificadores

lJn codificador es una función digital que produce una operación inversa
a Ia del decodificador. Un codificador tiene 2" (o menos) líneas de entrada
v n líneas de salida. Las líneas de salida generan el código binario para las
I80 L o G I c A c o M B I N A C I o N A Lc o N M S I Y L S I
CAP. 5

2n variables de ent¡ada. Un ejemplo de un codificador


se muestra en la
Figura 5-1s. El codificador octál a binario
consisteu., oÁo entradas,una
para cada uno de los ocho dígitos y tres
.ariaa, pai"-;;;;;r, er número bi_
nario correspondiente.Este-se-"orrrtruy" con conpuertas
oR, cuyas entra-
das se determinan a partir de la tabla de verdad
J"d" ;; tl r"utu b_4. Los
bits de salida de bajb orden e rorr-f.i los
dígitos octales de ent¡ada son
impares' La salida y, l para ros dígitos octales 2,8,6 ó 7. Lasalida
":
l para los dígitosoctales-4, ¡ es
5:6 ó z.i.üóteseq;;.t;;"; conectaa ningu_
nl.cgmprerta oR; la salida binaria debe sef
sólo"cerosLn este caso. una
salida de sólo ceros se obtiene también cuando
todas las entradas sean
cero' Esta discrepanciapuede resolverseagregando
indicar el hecho áe que tádas las entradas una salida más para
no son ceros.
.El-c"o{ificadoren la Figura 5-15 asume que solamenteuna línea de enj
trada puede
ser igual en cualquie-r;il;;";";;*#f#ilT:ü;i;
_1.1
no tienesignificado..
Nótesequ. él circuitotieáeocho;;r;;;.=';"Jili],
tene¡ 28 : 2b6
combinaciones de entrada po.ibi;.. s"iá-."t"
tas combinacionestienen significado. Las otras ocho de es_
combinaciones
vv¡¡rv¡rrqu¡! son condi-
ciones de no importa.
Los codificado¡es de este tipo (Figura 5-15)
no se encuentran en
clrya que se pueden construir rácilmente co¡r
compuertas oR. El tipo de
codificador que se encuentra en la forma d"
sru¿" es el codi-
ficadol de prioridad.* Estos codificadores establecen
"i;;;;;l"-
d"
entrada *r-lá"j"-a;
-para asegurar que solamente la línea du ru más alta
prioridad se codifica. Así, en la Tabla "rrliaal-i" es
5-4, si la prioridad dada a una
entrada con un número s'scrito mayor con respecto
a un numero suscrito
menor, entoncessi ambosDz y Ds son lógica 1-simultáneamente,
será 101 porque D". tiene urr" -uyo. prloridad la salida
."bt" b;. por supuesto,
la tabla de verdad de .r' codificado"ráe prioridad
es diferénte de la Tabla
5-4 (ver Problema5-21).

x: D¿i Dtl D6rD|

t : D2i_D'* Dul O,

z: D1lDrl D5l D,

Figura 5_lb Codificador octal a bina¡io

'Por
eiem¡rlo el CI tipo 24149.
Tabla 5-4 Tabla de verdad de codificador octal a binario

Entradas
Do Dl D2 D3 D4 Ds D6 D.l

10000 0 00 0 00
01000 0 00 0 0l
00100 0 00 0 l0
00010 0 00 0 ll
00001 0 00 00
00000 I 00 0l
00000 0 l0 l0
0 0l ll
1 00000

5-6 MULTIPLEXORES

Multiplexar significa trasmitir una gran cantidad de unidades de infor-


mació; por un nú*e.o pequeñode canaleso líneas.IJn.multiplexor digitaL
es un circuito combinacional que seleccionainformación binaria de una

t de muchas líneas de entrada pára dirigirla a una sola línea de salida. La


selecciónde una línea de entrada en particular es controlada por un con-
junto de líneas de selección. Normalmente hay 2" Iíneas de entrada y n
iín"u, de selección cuyas combinacionesde bits determinan cuál entrada
se selecciona.
un multiplexor de 4 líneasa I línea se muestra en la Figura 5-16.cada
una de las cúatro líneas de entrada Io a Ir, se aplican a una entrada de
una compuerta AND. Las líneas de selecciónsr Y s6 se decodificanpara
seleccionáruna compuerta AND en particular. La tabla de función en la fi-
gura lista el camino de entrada a salida para cada comiinación posible de
tit* d. las líneasde selección.Cuando esta función MSI se usa en el diseño
de un sistema digital ésta se representaen la forma de diagrama de bloque
como se muestra en la Figura 5-16(c).Para demostrarla operacióndel cir-
cuito' considéreseel caso cuando srso:10' La compuerta AND asociada
con la entrada 12 tiene dos de sus entradas iguales a 1 y una tercera entra-
da conectada a 12. Las otras tres compuertas AND tienen al menos una
entrada igual a 0 lo cual hace su salida igual a 0. La salida de la compuerta
OR es igual al valor de /2 generando así un camino de la entrada
"ñot" ala salida. Un multiplexor se llama también un selector de
seleccionada
datos ya que seleccionauna de muchas entradas y guía la información bi-
naria a la línea de salida.
Las compuertas AND y los inversoresen un multiplexor se asemejana
un circuito decodificadory sin embargoellos decodifican las lineas de selec-
ción de entrada. En"general, un multiplexor de 2" a I Iínea se construye
con un decodificador de n a 2" agregándolé2" líneas de entrada, cada una
para cada compuerta AND. Las salidas de las compuertas AND se aplican
,rttu sola compuerta OR para generaruna salida de 1 línea. El tamaño del
"multiplexor se Lspecifica por el número 2" de sus líneas de entrada y de la
t8l
Entradas Salida

Selección

( c ) Diagrama de bloque

(a) Diagrama lógico ( b ) Tabla de funcion

Figura b-16 Un multiplexor en línea de 4 a 1

sola línea de salida, implicando así que contiene n líneas de selección.


un
multiplexor es a menudo abreviado como MUX.
como en los decodificadores, los cI m*ltiplexores pueden tener una
entrada de activación para controrar Ia operación de la unidad.
-binario cuando la
entrada de activación esté en un estado dado, Ias salidas se inha_
bilitan o cuando está en el otro estado (el estado de habilitación)
er cir-
cuito funciona como un multiplexor normal. La entrada de habilitación
o
activación (algunas veces llamada strobe) puede ser usada para
expandir
dos o más cI multiplexores a un murtiplexor digitar co" .r., g."r,
número
de entradas.
En algunos casos se encapsulan dos o más multiplexores dentro de
u n c I . L a s e n t r a d a s d e s e l e c c i ó ny a c t i v a c i ó n e n l o s c I d e m ú l t i p l e u n i d a d
pueden ser comunes a todos los multiplexores. como ilustración
se mues_
tra en la Figura 5-17* un cI multiplexor cuádruplede 2líneas a 1línea.
Este tiene cuatro multiplexores cada uno de los cuales puede seleccionar
u n a d e d o s l í n e a s d e e n t r a d a . L a s a l i d a y , p u e d e s e r s e l e c c i o n a d ap a r a
s - e ri g u a l a A t ó B r . D e m a n e r a s i m i r a r , l a s a i i d a y , p o d r í a t e n e r e r
valor
d e á . . . ó B ¿ y a s í s u c e s i v a m e n t e .u n a l í n e a d e s e l e c c i á n d e e n t r a d a ,
s, es
suficiente para seleccionaruna de dos líneas en todos los cuatro multiple_
xores. La entrada de control E habilita los multiplexores en el
estado 0 y
los inhabilita en el estado 1. Aunque ei circuito contiene cuatro
multiple_
xores se podría pensar que es un circuito que selecciona una en
un pui d"
*
Este es similar al circuito integrado tipo 74157.

182
Tabla de lunción

É's Salida Y
lx todo 0
00 s e l e c c i ó nA
0l s e l e c c i ó nE

s
( s e l e c c i ó n)

L
(habilita)

Figura 5-17 Multiplexores cuádruples en linea de 2 a I

4 líneas de entrada. Como se ve en la tabla de la función, la unidad se


selecciona cuando E:0. Entonces, si S:0 las cuatro entradas A tienen
una vía hacia las salidas. Por otra parte, si S: I se seleccionan las otras
cuatro entradas B. Las salidas serán todas ceros cuando E:1 sin tener en
cuenta el valor de S.
EI multipl€xor es una función MSI muy útil y' tiene una multitud de
aplicaciones. Se usa para conectar dos o más füentes a un solo destintr
entre las unidades del computador y es útil para construir un sistema de
bus común. Estos y otros usos del multiplexor se discutirán en capítulos
posteriores conjuntamente con sus aplicaciones particulares. Aquí se de-
muestran las propiedades generalesde este elemento y se muestra cóm()
puede ser usado para ejecutar una función de Boole.
t83
Ejecución de una función de Boole

se habría demostradoen la sección anterior que


el decodificado,puedJ,
ser usado para configurar una función ge-Boore-
;rol."t" una compuerta ,
oR externa. un rápido vistazo al multiprexái-á. i'" ir-igrr"
5-16 revera que,
es esencialmenteun decodificadorcon una compuerta
oR v" ái.p"""ilr;. i;;
términos mínimos fuera del decodificad' q;.:;;-;
pueden con_.)
trolarse con las líneasde entrada. Los términ". "-.iáÉ".."
-i"i-oli;;;;;;i;;ffi :
se con la función que. se está ejecutando se
r.*g." l"liendo sus líneas ,
de entrada correspondientes,iguátes a 1 y aque¡os
términos mínimos no i
incluidos en la función se inhaÉilitan al- ú""r'i;;
i;"*'a'"."trilñ;ñ
a cero' Esto presenta un método para
configurar cuarluier función de ¡
Boole de n variabres ñltTire*o, a"'il' u-i]^si., embargo, es
posiblehacer algo meJor _":¡
que :;
eso. ,
.
si se tiene una función de Boole de n -¡ I variables
se toman n de estas
variablesy se conectana las ríneasa"..te.ci¿r,
áü'.riiiprexor. La varia_
ble restante de la
-función se usa p"." tr. entradas del murtiplexor. si A
es esta sola variable, las entradas del multipl."-
..]..'Jg.n pur" ser A ó
A' ó | ó 0. Mediante un concienzudouso
dé cu"iro'valores para las
entradas y conectando ras otras variables "sto,
a r", ú;;;;- de selección, se
puede configurar cuarquier función ae goole
.o; u;-;;ltiple*or. De esta
es
fgtp" -posible genetát cualquier función de n * 1 variabres con un mul_
tiplexor de 2." a l.
Para demostra¡ este procedimientocon un
ejemproconcreto,considé-
rese la función de tres vaiiables:

F ( A ,B , C ) : X 1 , 3 , 5 , 6 )
La función puede ser configu¡ada con un
multiplexor de 4 a ._como se
muestra en la Figura 5-1g.Dos de las variabrer
aíó." frii.u'a las líneas
de selecciónen eseorden, es decir, b s"
conects I s1 y c ase. Las entra-
das del multiplexor son 0,.1, ,l y Á',.-clundo
BC : oo rá .rtia" F: 0 ya que
Io :0. Por tanto, ambosd¿.irri"á.*ín"iiros
mo_: A,B,C, y mn: AB,C,pro-
ducen una salida 0, ya que la salida es 0 cuando
BC: 00 sin tener en cuen-
t a e l v a l o r d e A . ; C u a n d bB C : 0 t , l a s a l i d a¡ =
ambostérminos mínimosryt_:^A,B,C ^u: AB,C i;" o*1, :,. por tanto,
i producenuna salida de 1
ya que la salida es 1 cuandoBc :0r sin
tener en cuentaer varor de A. cuan_
do BC:10 la entrada /, es seleccionada.como
A se conectaa esta entra-
da, la salida será igual á 1,soramentepara el
término mínimo ma:ABC,,
pero no para el término.mínimorn2:A,BC,,
debido qu"¿,: t,'entonces
A 0 como r, : 0 se tiene enton"". F: 0. Finalmente " cuandoBC: rl
= I se
seleccionala entrada r, . como A' se conectaa
esta entrada, ra salida será
igrral a 1 solamente para el término minimo ,{ :
t;e;; no para rnz :
ABC. Esta información se sumariza en la Figuru
s-rsol,-ücr"l
' -- ra tabla
de verdad de la función que se requiere ejecütar. . " ""
La anterior discusión muestrá por análisis que
er multiplexor confi-
gura la función requerida. se representará
ahora un procedimiento generar
para configurar cualquier función de Boole
de n vaiiabll.- un multi_
plexor de 2"-1 a 1. "o.,
184
00 0
Io
001
It MUX 010
v'
r 4xl 0l.l
13 J1
r 0. 0
s6
l0t
l l0
ltl

(a) Configuración del multiplexor (b) Tabla de verdad

(c ) Tabla de configuración

Figura 5-18 ConfigurandoF (A, B, C ) : t (1,3, 5, 6) con un multiplexor

Primero se expresala función en su forma de suma de términos míni-


mos. Se asume que la secuenciaordenadade variables escogidaspara los
términos mínimos es ABCD . . ., donde A es Ia variable de Ia extrema iz-
quierdaen una secuenciaordenadade n variablesy BCD ... son los n-1
variables restantes. Se conectan las n - 1 variables a las líneas de selec-
ción del multiplexor con B conectadaa una línea de selecciónde mayor
orden, C a la siguiente línea menor de seleccióny así sucesivamentehasta
la últinia variable la cual se conecta'a la línea de seleccióri'demás bajo
orden s6. Considérese la variableA. Como esta variableestá en la posi-
ción de más alto orden en una secuenciade variables,será complementada
en los términos mínimos o hasta (2"/2) - 1 los cuales comprendenIa pri-
mera mitad en Ia lista de los términos mínimos. La segundamitad de los
términos mínimos tendrán su variable A sin complementar.Para una fun-
ción de tres variables,A, B, C se tiene ocho términos mínimos. La variable
A se complementaen los términos mínimos0 a 3 y no se complementaen los
términosmínimos4a7.
Lístese las entradas del multiplexor i bajo ellas los términos mínimos
en dos columnas.La primera fila incluye todos los términos mínimos en los
cuales A es complementaday la segundafila todos los términos mínimos
con A no complementadade la manera mostrada en Ia Figura 5-18(c).En-
ciérreseen un círculo todos los términos mínimos de Ia función e inspec-
ciónesecada columna separadamente.
Si los dos términos mínimos en una columna no están en círculo aplí-
quése0 a la entrada correspondientedel multiplexor.
185
186 L O G I C AC O M B I N A C I O N ACLO N M S I Y L S I CAP.5

Si los dos términos mínimos están en un círculo aplíquese 1 a la entra-


d a c o r r e s p o n d i e n t ed e l m u l t i p l e x o r .
S i e l t é r m i n o m í n i m o i n f e r i o r e s t á e n c e r r a d oe n u n c í r c u l o y e l s u p e r i o r
n o l o e s t á a p l í q u e s eA a l a e n t r a d a c o r r e s p o n d i e n t ed e l m u l t i p l e x o r .
S i e l t é r m i n o m í n i m o s u p e r i o r e s t á e n c e r r a d oe n u n c í r c u l o y e l i n f e r i o r
n o l o e s t á a p l í q u e s eA ' a l a e n t r a d a c o r r e s p o n d i e n t ed e l m u l t i p l e x o r .
I
Este procedimiento se desprende de las condiciones establecidas durante I
el análisis previo.
La Figura 5-18(c) muestra la configuración de la función de Boole:
Ili
F ( A ,B , C ) : > ( 1 ,3 , 5 ,6 )
de la cual se obtienelas conexiones
del multiplexorde la Figura5-18(a).
N ó t e s e q u e B d e b e c o n e c t a r s ea s r y C a s , , .
No es necesarioescoger la variable de la extrema izquierda de la se-
cuencia ordenada de una lista de variables para las entradas del multi-
plexor. De hecho, se pueden escogercualquiera de las variables para las
entradas del multiplexor si se tiene en cuenta la modificación de la tabla
de ejecución. Supóngase que se va a configurar la misma función con un
multiplexor, pero usando las variables A y B para la línea de seleccións,
y so, y la variable C para las entradas del multiplexor. La variable C se
complementa en los términos mínimos pares y no se complementa para los
i m p a r e s y a q u e e s I a ú l t i m a v a r i a b l e e n l a s e c u e n c i ad e l a s v a r i a b l e s I i s t a -
das. El arreglo de las dos filas de términos mínimos en este caso debe ser
como se muestra en Ia Figura 5-19(a). Encerrando en un círculo los tér-
minos mínimos y usando las reglas establecidas anteriormente se obtienen
las conexiones del multiplexor para la configuración de la función como se
ve en la Figura 5-19(b).
En forma similar, es posible usar cualquier variable de la función en
Ias entradas del multiplexor. Se pueden formular varias combinaciones
para configurar una función de Boole con multiplexores. De cualquier ma-
nera, todas las variables de entrada a excepción de una, se aplican a las
líneas de selección. La variable restante o su complemento ó 0 ó 1 se apli-
can a las entradas del multiplexor.

Io
/r MUX
Io It 12 13
r.
, 4xl
C, 0 : 4-7d
C coot 13 Jr Jo

( a ) Tabla de configuración (b) Conexióndel multiplexor

Figura 5-19 Configuración alterna p a r a F ( 4 , B , ( ' ) : I (1,3,5,6)


1,,

ll

t.
MLjX
r, r )
8r I
l1
A, I,
A
It,

/r .f: \l .!r,

Figura 5-20 C o n f i g u r a c i ó nd e F ( A , B , C , D l : I ( 0 . 1 ' ; 1 , 4 '8 , 9 ' 1 5 r

EJEMPLO 5-4; Ejecutar la siguiente función coll utr mul-


tiplexor:
F ( A ,B , C , D ) : > ( 0 ,l , 3 , 4 ,8 , 9 ,1 5 )
Esta es una f'unción de cuatro variables y por tanto se neceslt¿t
Se
un multiplexor con tres líneas de selección y ocho entradas'
e s c o g ea p l i c a r l a s v a r i a b l e s B , C y D a l a s l í n e a s d e s e l e c c i . r " r .L ¿ r
pri-
tablá ds configuración es la mostrada en la l'igura 5-20. l,a
mera mitad de los términos mínimos e s t á I l a s o c i a d g sc ( ) n A ' ¡ ' l a
S e g u n d am i t a d c o n A . B n c e r r a n d c l e n u n c í r c u l o l o s t é r m i n o s n rl-
nimos de la función y a p l i c a n d o l a s r e g l a s p a r a e n c ( ) l l t r a r l ( , s \ ' ¿l-
lores p a r a l a s e n t r a d a s d e l m u l t i p l e x o r , s e o b t i e n e e l c i r c u i t rr
mostrado.

C o m p á r e s e a h g r a e l m é t o d o d e l m u l t i p l e x o r c 1 ¡ t re l m é t o d o d e l c o d i t i -
cador paia configurar los circuitos combinacio¡ales. El método del decodi-
sólo
ficadoi requiere .,na comprrerta OR para cada función de salida, más
se necesitÁ un decodificaáor para generar todos los térmings m í n i m o s ' El
método del multiplexor usa unidades de menor tamaño p e r t ) r e q u l e r e ull
s a l i d a . P o d r i a 5 ' s ¡ ¡ ¿ 2 o t t n b l ea s u m i r q ue
multiplexor para cada tunciórl de
c o l l u n a p e q u e ñ a c a n t i d a d d e s a I i c l a s se
los circuitos combinacionales
p u e d a n r e a l i z a r c o n m u l t i p l e x o r e s . L o s c i r c u i t o s c o m b i t l a c i o n a l e sc ( ) n m u -
del
c h a s f ' u n c i g n e sd e s a l i d a p r o b a b l e m e n t e u s a n m e n o s C I c o n e l m e t ¡ c l o
decodificador.
para lir
A u n q u e l o s m u l t i p l e x o r e s y d e c o d i f i c a d o r e ss e p u d i e r a n u s a r
c o m b i n a c i o n a l e s , d e b e t e t r e r s e e n c u e n t a que l()s
ejecución de los circuiios
decodificadores s e u s a n p r i n c i p a l m e n t e p a r a d e c o d i f i c a r l a i n f b r maciti¡
lexorei para fbrmar un camino selecto e¡tre múltiples
ü i r r u r i u y , l o s m u l t i p^destino.
i¡,entu. y ,r., solo .Se deberían considerar cuando se diseñan pe-
187
r
188 L O G I c Ac O M B I N A C I O N ACLO N M S I Y L S I CAP. 5

queños circuitos combinacionales especiales que no se consiguen como


funciones MSI. Para los grandes circuitos combinacionales con múltiples
entradas y salidas, hay un componente de CI más adecuado y este se pre-
senta en la siguiente sección.

5-7 M E M O R I AD E S O L O L E C T U R A( R O M )

Se vió en la Sección 5-5 que un decodificadorgenera los 2n términos mí-


nimos de las n entradas variables. Colocandolas compuertasOR para sumar
los términos mínimos de las funcionesde Boole se podrá generarcualquier
circuito combinacional.Una memoria de solo lectura (ROM) que viene de
Read Only Memory) es un. elemento que incluye el decodificadory las
compuertas OR dentro de una sola cápsula de CI. Las conexionesent¡e las
salidas del decodificadory las entradas de las compuertas OR pueden espe-
cificarse para cada configuración particular "programando" la ROM. La
ROM se usa a menudo para configurar un circuito combinacionalcomplejo
en una cápsulade CI y así eliminar Ios cablesde conexión.
Una ROM es esencialmenteun dispositivo (o acumulador) de memoria
en el cual se almacena un conjunto fijo de información binaria. La infor-
mación binaria debe especificarsepor el usuario y luego enclavarseen Ia
unidad para formar el patrón de interconexiónrequerida.Las ROM vienen
con enlacesinternos especialesque pueden esta¡ fusionadoso abiertos. La
interconexión deseadapara una aplicación particular requiereque ciertos
enlaces estén fusionadospara formar los caminos del circuito necesarios.
Una vez que se establezcaun patrón para una ROM, este permaneceráfijo
aunque se haga un corte de corriente y luego se restablezca.
Un diagrama de bloque de una ROM se muestra en la Figura 5-21.
Este consisteen n líneas de entrada y m líneas de salida. Cada combina-
ción de bits de las variables de entrada se llama una direccírín.Cada com-
binación de bits que sale por las líneas de salida se llama una palabra. EI
número de bitr por palabra es igual al número de líneas de salida m.Una
dirección es esencialmenteun número binario que denota uno de los tér-
minos mínimos de n variables. El número de direccionesdiferentesposi-
bles con n variables de entrada es 2". Una palabra de salida puede ser
seleccionadapor una dirección única y como hay 2" direccionesdiferentes

n entradas

¡n salidas

Figura 6-21 Diagrama de bloque de una ROM


i
h'l

sEc. 5-7 M E M O R I AD E S O L O L E C T U R A( R O M ) 189 H


:il
*l
ljl
f
¡l
Él
enunaRoM,hay2"palabrasdiferentesquésediceque.estánacumula.
salida, en cualquier
áu, u" la unidad. iu puiuU.udisponibleen las líneasde
aeperiá" del valor de la dirección aplicada a las líneas de
momento aado,
palabras 2" y el núme-
;;1;;d". una ÉOú se caracterízapor el número de
se usa debido a la similitud
."-á"-¡it. por palabra m. Esta teiminología que se
fu -á-o.iu de solo lectura y la memoria de lectura-escritura
""tr.
presentaen la Secci6n7-7.
en 32 palabrasde 8
Considéreseu"u iiOü de 32 X 8. La unidad consiste
salida y 32 palabras
bits cada una. Esto ,ig"ifi"u que hay ocho líneas de puede aplicar-
una de las cuales
distintas almacenadasi' la urridud, cada que está pre-
.r-u fu. Iíneas de salida. La palabra particular seleccionada
partir 4" l^1tcinco líneas de
sente en las líneas á" .ufiao se determinan a porque 2s :
Hay solume'te cinco entradasen una ROM de 32X 8
direcciones o términ.s
32 y con .l.r"o uuii"bles se puede especificar32
""ii"a".
para cada dirección de entrada hay una pala-bra,únicaseleccio-
mínimos.
00000, se'selecciona la palabra
nada. Así, si una Jireccl¿n de entrada es entrada
de salida. si la dirección de
número 0 y esta up"t."" ." las líneas de sa-
palabra número 31 y se aplica a las líneas
es 11111,se seleccionala que pueden
lida. Entre ta prim"iu-y'tu tttti-a hay otras 30 direcciones
seleccionarotras 30 Palabras'
se determina del
El número ¿" Jut"¡tut direccionadasen una ROM
n Iíneas de entrada para especificar 2" pala-
hecho de que r" r;;l;
por el núm_ero total de bits que
bras. una ROM se especificaalgunas veces
de 2048bits puede
contiene, el cual ,"ia Z" x -. Éo, ejemplo, una ROM
significa que la
á.g".,irut." .o-o Sii pututtu. de 4-biti cada una. Esto

Términos mínimos
Direccción de entrada

0
I

2
decodificador
5x32

128 enlaces +

Fr f1 13

Figura 5-22 Const¡ucciónlógica de una ROM de 32x 4


190 L O G I C A C O M B I N A C I O N A LC O N M S I Y
LSI CAP, 5

unidad tiene 4 líneas salida y 9 ríneas de entrada para especificar


. l n ú.de
2 s: 5 1 2 p a l a b r a sE m e r ot o t a r d e b i t s e n r a u n i d a l e s 5 1 2 X 4 : 2 . 0 4 g .
Internamente,la ROM es un circuito combinacio.,ui
.u., compuertas
AND conectadascomo decodificadory un número
de compuertasoR igual
al número de salidas de la unidad. La Figur
a !-22muestrauna construcción
lógica interna de una RoM de g2a¡. Lis
cinco u;rñi;; de enrradase de_
codifican en 32 líneas por medio de 32
compuertasAND y 5 inversores.
cada salida del decodiiicador.ep.".".,tu
uno de los términos mínimos de
una función de cinco variabies.óada una de
ras 32 direccionesselecciona
una y sólo una salida der decodificador.La
direcciónes un númer. de 5
bits aplicado a las entradasy er tJrmir.ro
mínimo seleccionado por fuera
del decodificadores er marcado .on 'u-u.o-á".i-ái'.qriralente.
32 salidas del decodificadorestán conectadas "i Las
por medio de errocesa cada
compuerta oR. solamente cuatro de
estos se muestran en el dia_
grama pero realmentecada compuerta ".riucu.
oR tiene á1";tr;;. y cada entrada
pasa a través de un enraceque puede
estar cortadosi así se desea.
La RoM es u-na configuración de dos niveles
términos mínimos. No tiene qrrusu. una configu.u"i¿., de suma de
"r,-fo.-u
Áñó-oR, pero puede
ser cualquierotra posibleconfiguraciónde
tármino. -í.,i-o* de dos nive_
les. El segundonivel es normarinenf" ,,.,,
conexión de rógicacabreada(ver
Secc_ión 3-7) para facilitar la fünción de los enlaces.
Las RoM tienen muchas aplicacionesimportantes
sistemas de computadoresdigitaüs. su en el diseño de
uso para ra configuraciónde cir-
cuitos combinaciona-res- es justamente una de eüs apricaciones.
otros usos de las RoM-complejos se'prásentarien otras partes del ribro conjunta-
mente con aplicacionesparticulares.

C o n f i g u r a c i ó nd e l ó g i c a c o m b i n a c r o n a l

Del diagrama lógico de-la RoM, es claro que


cada salida producera su-
ma de todos los té¡minos mínimos de n variables
de urrtruáu.nucuérdeseque
una función de Boore puede ser expresada
en forma d;-*ini-u,
.;rrru de términos
mínimos' Al romper,ros enlaces.de aqueilos
términos que no se
incluyen en la función, cada salida,le-ia
RoM puedehacerrepresentarra
función de Boole de una de las va.iables
de sariáa u,, combina_
cional. Para un circuito combinacionarde "n "ii"uito
n .ntruaá. v'.'suriaa. se nece_
sita una ROM de 2.
mación de la RoM. El l,^-.La ruptura de los enlaces,é ,"liur" a la progra_
diseñadornecesita.olu-*i"-urpá"ifi.ur una tabla
del programa RoM que da la info.mación para
los caminos necesariosen
la RoM. La programaciónactual ur-u.r pro""dimiento
del material (hard_
ware) que sigue las especificaciones ristadas en la tabl; áe programación.
Para aclarar er procesoes necesa¡ioun ejemplo
específico.La tabla
en la. Ficu{g.5-23_(a) un circuito combinacionalcon
9:-uutlud,
dos entradas y dos salidas. Las ".p".ifi.,
frnciones de Boole p".a"" expresarseen
suma de términosmínimos:

F , ( A , ,A ) : > ( 1 ,2 , 3 )
Fr(Ar, Ao): >(0, 2)
H
ti
*
t;
';
t;

'i

z¿

¿C

a
:
F
'i

9a

O-:

óN
C,^

(J bc

t9l
192 L O G I c Ac o M B I N A C I o N A Lc o N M S I Y L S I CAP. 5

Cuandose configuraun circuito combinacionalpor medio de una ROM, las


funciones deben expresarseen suma de términos mínimos o mejor aún por
una tabla de verdad. Si la salida de las funcionesse simplifica, se encuen-
tra que el ci¡cuito necesita solamente una compuerta OR y un inversor.
obviamente, este es un circuito combinacionalsimple para ser ejecutado
con una RoM. La ventaja de las RoM es su uso en circuitos combinacio-
nales complejos.Este ejemplo solamentedemuestrael procedimientoy no
debe considerarseen una situación práctica.
La ROM que configura el circuito combinacionaldebe tener dos en-
tradas y dos salidas de tal manera que su tamaño deberá ser 4 X 2. La
Figura 5-23(b) muestra la construcción interna de una ROM. Es necesa-
rio determinar cuál de los ocho enlacesdisponiblesdeben rompersey cuá-
les deben dejarse sin tocar. Esto puede hacersefácilmente de las funciones
de salida listadas en la tabla de verdad. Aquellos términos mínimos que
especificanuna salida de 0 no deben tener un camino a la salida a través
de una compuerta OR. Así, pera este caso particular la tabla de verdad
muestra tres ceros y sus correspondientesenlaces con las compuertas OR
que deben quitarse. Es obvio que se debe asumir que un circuito abierto
a una compuerta OR se comporta como una entrada de 0.
Algunas ROM vienen con un inversor despuésde cada una de las com-
puertas OR y como consecuenciase especificaque inicialmente tienen todos
0 en sus entradas. El procedimiento de programaciónde tales ROM re-
quiere que se abran los enlaces de los términos mínimos (o direcciones)
que especifiquenuna salida de 1 en la tabla de verdad. La salida de la com-
puerta oR complementa la función una vez más para producir una salida
normal. Esto se muestra en la ROM de la Figura b-28(c).
El ejemplo anterior demuestrael procedimientogeneralpara ejecutar
un circuito combinacionalcon una ROM. A partir del número de entradas
y sahdas en el circuito combinacional,se determina primero el tamaño de
la ROM requerido.Luego se obtiene la tabla de verdad de programaciónde
la ROM; no se necesitaninguna otra manipulación o simplifieación. Los
ceros (o unos) en las funcionesde salida de la tabla de verdad especifican
directamente aquellos enlaces que deben ser removidos para producir el
circuito combinacionalrequeridoen la 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 necesariomostrar enlaces de las conexionesde las compuertasin-
ternas dentro de la unidad como se hizo en la Figura 5-23;lo cual fue mos-
trado 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 Figura 5-23(a).La tabla de verdad
da toda la información para programar la ROM. No se necesita un dia-
grama interno que acompañe la tabla de verdad.

EJEMPLO 5-5.' Diseñar un circuito combinacional usando


una ROM. El circuito acepta un número de 3 bits y generaun nú-
mero binario de salida igual al cuadrado del número de entrada.
El primer paso es deducir la tabla de verdad para el circuito
combinacional. En la mayoría dé los casoses todo lo que se nece-
üH
¡l

Tabla 5-5 Tabla de verdad para el circuito del Ejemplo 5-5 I


ii

:.4

Entradas Salidas i?

At Ao 85 84 83 82 Bt Bo

0 0 000000 0
0
0 I 000001 I
0
I 0 000100 4
0
I I 001001 9
0
0 0 010000 l6
I
0 0ll00l 25
I I

I 0 100100 36
I
ll000l 49
I I t

^2 ^
ñl ro

A2 At Ao Fr F2 F3 F4
0 00 0000
0 0l 0000
0 l0 000I
ROM 0 ll 0010
8x4 00 0100
0l 0ll0
10 l00l
Ft F2 F3 F4 1l ll00

D
Bs B ^ B3 B2 Bl

(a) Diagramade bloque (b) Tabla de verdadde la ROM

de la ROM del Ejemplo5-5


Figura 5-24 Configuración
verdad más
sita. En algunos casosse puede encajar una tabla de
p"i" r" ROM usándo ciertas propiedades I.u.tabla de
;"Ñ; -ttt
La Tabla 5-5 es la tabla de ver-
uerd"d dél circuito combinacional'
se necesitan las tres entra-
aáa p"r" el circuito combinacional.
ralidas para acomodar. todos los números posibles.
il ;l-[ tres
S. que la saliáa Éo siempre igual a la entrada Ao de tal
manera"otu que no es necesariogenera-r86 c9n la ROM.ya que es
",
es
ig";i; i.ta lrariuble de entrada' Sin embargo' la salida B'
ó, d" t"l manera que siempre es conocida' Se necesita
dos
g"""iut sólamente cuatro entradas con una ROM; las otras
"i"*p*
debe tener
3e obtienen fácilmente' El tamaño mínimo de la ROM
ocho
tres entradas y cuatro salidas. Las tres entradas especifican
la ROM debe ser 8X 4. La
p"fu¡ru, de taÍ maneraque el tamaño de
con ROM se muestra en la Figura 5-24' Las tres
i""fig*".i¿n
Las
er,traáas especifican ocho palabras con cuatro bits cada una.
de los clrcuitos combinacionales son igrrales a
;l;;; d". ,"lidur
193
194 L o c r c Ac o M B t N A c t o N Ac Lo N M S ty L S t cAp. 5

0 y Au. La tabia de verdad de Ia Figura 5-24 especificatoda Ia


información necesaria para programar la RoM y el diagrama de
b l o q u e r ¡ ¡ u e s i r e l a s c o n e x i o n e sr e o u e r i d a s .

Tipos de ROM

Los caminos necesarios en una RoM pueden ser programados de dos ma-
neras diferentes. La primera se llama programación por mascara y la hace
e l f a b r i c a n t e d u r a n t e e l ú l t i m o p r o c e s od e f a b r i c a c i ó n d e l a u n i d a á . E l p r o -
cedimiento para fabricar una RoM requiere que el cliente llene la tábla
de verdad según lo que se desea que la RoM satisfaga. La tabla de verdad
debe ser entregada en una forma especial suministrada por el fabricante.
Muy a menudo, se entrega en cinta de papel o tarjetas perfbradas en el
formato especificado en la hoja de datos de una RoM parficular. El fabri-
cante hace Ia máscara correspondiente para que los caminos produzcan
unos y ceros de acuerdo a Ia tabla de verdad del cliente. Este procedimien-
to es muy costoso ya que el vendedor le carga al cliente una tarifa especial
por hacerle una RoM con máscara. Por esta razón, Ia programación con
máscara es económica solamente si se van a fabricar grandes cantidades
del mismo tipo de configuración de ROM.
Para pequeñas cantidades, es más económico usar un segundo tipo
d e R o M l l a m a d o m e m o r í a p r o g r a m a b L ed e s o l o l e c t u r a o p R o M ( d e p . o g r a -
mable read-only memory). cuando se ordenan, las unidades pRoM .onti.-
nen ceros (o unos) en cada bit de las palabras almacenadas. Los enlaces
en el PROM se rompen por medio de pulsos de corriente a través de los
terminales de salida. un enlace roto define un estado binario y uno no
roto representa el otro estado. Esto le permite al usuario programar Ia
unidad en su propio laboratorio para lograr la relación deseáda*entre las
direcciones de entrada y las palabras almacenadas. Comercialmente se
obtienen unidades especiales llamadas programadores de pVoM para faci-
litar este procedimiento. De todas formas, todos los procedimientos para
programar las RoM son procedimientos de los materiales (hardware) aun-
que se use la palabra programación.
EI procedimiento de los materiales para programar RoM o pRoM es
irreversible y una vez programados el patrón dado es permanente y no
puede alterarse. una vez que se ha establecido un patrón de bits se debe
descartar la unidad si se quiere cambiar el patrón de bits. Un tercer tipo
d e u n i d a d e s l a l l a m a d a P R O M b o r r a b l e o E p R o M ( d e e r a s a b r ep R o M ) .
Las EPROM pueden ser recuperadas a su valor inicial (todos unos o todos
ceros) aunque se hayan cambiado previamente. cuando una EpRoM se
coloca bajo una luz ultravioleta especial por un periodo dado de tiempo, Ia
radiación de onda corta descarga los puentes internos que sirven de con-
tactos. una vez borrada la RoM regresa a su estado inicial para ser re-
programada. Ciertas RoM pueden ser borradas con señales eléctricas en
v e z d e l u z u l t r a v i o l e t a y s e l e s l l a m a a l g u n a s v e c e sR O M e l é c t r i c a m e n t e
o l t e r a b l eo E A R O M .
La función de una RoM puede interpretarse de dos maneras diferen-
tes. La primera interpretación es la de una unidad que configura cualquier
circuito combinacional. Desde este punto de vista, cada terminal de sálida
t!?
{i

SEC.5-B A R R E G L OL O G I C OP R O G R A M A B L(EP L A ) 195


1
s e c o n s i d e r a s e p a r a d a m e n t ec o m o u n a s a l i d a d e u n a f ' u n c i ó n d e B o o l e e x -
presada .n .,,Áu de términos mínimos. La segunda interpretación consi-
fijo
hera Ia ROM como una unidad de almacenamiento que tiene un patron
de c a d e n a s d e b i t s l l a m a d a s p a L a b r a s V
. i s t o d e e s t a f o r m a , l a s e n t r a d as
e s p e c i f i c a n u n a d í r e c c i ó n p a t a u n a p a l a b r a e s p e c í f i c aa l m a c e n a d a
que se ir
1
upii.u luego a las salidas. Por ejemplo, la ROM de la Figura 5-24tiene tres
líneas de dirección las cuales especificanocho paiabras acumuladas de la
manera dada en la tabla de verdad. Cada palabra tiene cuatro bits de
,f
Iongitud. Esta es Ia razón por Ia cual se le ha dado a la unidad ei nombre '::q
d e " m e m o r i a d e s c , l o I e c t u r a . l l t l p ¡ n t t r i os e u s a c o m u n m e n t e p a r a d e s i g n a r
u n a u n i d a d d e a l m a c e n a m i e n t o .L e c t u r o s e u s a p a r a i m p l i c a r q u e e l c o t r - ;
tenido de una paiabra especificada por una dirección en una unidad de
almacenamiento se localiza en los terminales de salida. Así' una ROM es
una unidad de memoria con un patrón fijo de palabra que puede ser leídtr
bajo la aplicación de una dirección dada. El patrón de bits en la ROM es
permanente y no puede cambiarse durante la operación normal'
Las ROM se usan extensamente para ejecutar circuitos combinacio-
nales complejos directamente de sus tablas de verdad. Son muy útiles para
convertir á".rtt código binario a otro (tal como ASCII a EBCDIC 9 vice-,
versa), para funciones aritméticas como multiplicadores, para mostrar
caracteres en un tubo de rayos catódicos, y en cualquier otra aplicación
que requiera un gran número de er,tradas ¡,'salidas. Se emplean tambiérl
en el dlseño de unidades de control de los sistemas digitales. Como tales,
s e u s a n p a r a a l m a c e n a r p a t r o n e s f i j o s d e b i t s q u e r e p r e s e n t e nu n a s e c u e n -
c i a d e v á r i a b l e s d e c o n t r o l n e c e s a r i o sp a r a h a b i l i t a r l a s d i f e r e n t e s o p e r a -
ciones en el sistema. Una unidad de control que utiliza una ROM para
almacenar infbrmación de control binario se llama una unidad de c'tntrttl
m í c r o p r o g r a m a d a .E l C a p í t u l o 1 0 t r a t a r á e s t e t e m a e n m á s d e t a l l e s .

5-8 L O G I C OP R O G R A M A B L(E
ARREGLO PLA)

Un circuito combinacional puede tener ocasionalmente condiciones de ntr


importa. Cuando se configura con una ROM una condición de no importa
se convierte en una dirección de entrada que nunca ocurre. Las paiabras
en las direcciones de no importa no necesitan ser programadasy pueden
dejarse en su estado original (todos ceros o todos unos). El resultado es
qr. no todos los patrones de bits disponibles en la ROM se usan, lo cual
se considera como un desperdiciode equipo disponible.
Considéresepor ejemplo, un circuito combinacional que convierte utr
código de tarjeta de 12 bits a un código alfanumérico interno de 6 bits, co-
rno J" lista en Ia Tabla 1-5. El código de tarjeta de entradas consiste en
1 2 l í n e a s d e s i g n a d a sp o r 0 , 1 , 2 , . . , 9 , 1 1 , 1 2 . E l t a m a ñ o d e I a R O M p a r a
c o n f i g u r a r e l ó o n v e r s o r d e c ó d i g o d e b e s e r 4 0 9 6X 6 , y a q u e h a y 1 2 e n t r a d a s
y O salidas.Hay solamente 4? entradas válidas para el código de tarjeta
y el resto de cómbinaciones son condiciones de no importa. Se usan así
iolamente 47 palabras de las 4096 disponibles. Las 4049 palabras restantes
no se usan y se desperdician.
Para aquellos casos en los cuales el número de condiciones de no im-
porta es excesivo, es más económico usar un segundo tipo de componente
I96 L O G I C AC O M B I N A C I O N ACLO N M S I Y L S I
CAP. 5

LSI Ilamado arreglo Iógicoprogramabreo pLA (viene d,eprogramabre


rogic
arrayl. un PLA es similara una RoM en concepto;sin embargo pl,A;lo
el
produce la decodificacióncompleta de las variáblÁ y no genera
todos los
términos mínimos como en una RoM. En un pLA, eidecodificador
se rem-
plaza mediante un grupo de compuertas AND, cada
una de las cuales pue-
den ser programadaspara generar un término'producto ¿e-las
variables de
entrada. [,as compuertasAND y oR dentro del pLA se fabrican inicialmen_
te con enlaces entre ellas. Las funciones específicasde Boole se
ejecutan
en la forma de suma de productos al abrir los enlaces adecuadosy
d;ja; ú;
conexionesdeseadas.
un diagrama de bloque de un pLA se muest¡a en la Figura 5-25.
Este
consiste en n entradas, rn salidas, ft términos de producto y rn términos
de
sunra. Los términos de producto constituyen un grupo de á compuertas
y los términos de suma co-nstituyenun g,upo ae"-'comprr"rtu. AND
oR. Los en-
laces se colocan ent¡e todas las entradá, ,, y ,us valores complementados.
otro grupo de enlaces en ros inversores de salida p"r-ii" q"e se genere
la
función de salida o en la forma de AND-oR o ü forma AND-O:R inver_
tida. con el enlace del inve¡sor en su rugar, se "r,puentea dando
una configuraciónAND-OR. cuando se rompe elinlace el"l'irr.r"rro. inversor se vuel_
be parte del circuito y la función se configuraen la forma AND-oR
inve¡_
tida.
EI tamaño del PLA se especificaoor el número de entradas,
el número
de términos de producto y el número de salidas (el número
de términos de
suma es igual al número de salidas). Un típico pLA tiene
16 entradas,4g
términos producto y 8 salidas.* El número de enlaces programados
es
2 ¡ t x k * h x m f r n m i e n t r a sq u e l o sd e l a R O M s o n2 ,
x;.'
La Figura 5-26 muestra una construccióninterna de un pLA
específi-
co. Tiene t¡es entradas,tres términos producto y ao.
Tal pLA es
muy pequeñopara encontrarsecomercialmente;se presenta "utiáus.
aquí solamente
para propósitode demostración.cada entrada y su
tomplemento se conecta
por medio de enlacesa las entradas de todas las compueitas-eN¡.
Las sali_
{as -de-las compuertas AND se conectan por medio de enlaces a cada entra-
da de las compuertasoR. se suministran dos enlacesmás con los
inversores
de sa.lida' Al romper los enlaces seleccionadosy dejar olro.
rugar, es
posible,ejecutar configuracionesde funcionesde Éoolé ".r de suma
en la fbrma
oe productos.
De la misma fo1la que la ROM, el pLA puede ser programablepor
máscara o programablepor el usuario (programaciónde óu,opol. con
un

& términos ¡n términos


producto suma
(compuertas (compuertas
AND) oR)

Figura b-2b Diagrama de bloque del pLA


*El
CITTL tipo 82S100.
o

(!

.ir

!6
\o

a .-/

;:-
6o

<?
F¡ O.
qE

)!z :

tri'6
6
¡r '=

b¡E
llI

197
198 L O G T CCAo M B | N A C | O NCAOL NM S ty
LSt
C A p .5
PLA programable por máscara,
el cliente debe entregar una
gramación der pLA al fabricante tabla de pro_
Est.a tabra.se,r.u
producir un pLA hecho puru io, el fabricante para
ui-"tl'nte con to. rnrernos requeri_
dos enrre las enrradas
v'las.áliá"]. u " . " g r " i r _"; u
; ;-"i ' o . pLA disponible
se llama arregto tógryo
iroer"iitt"2n ,t ,o,ip, fi,Te field prosram_
:i"b^1:-tlqt"
arrav.).nt .pie p""J" ser.programuao " po. tde
-H;;ñil.iu0o.",
oe crerros procedimientosrecomendadás. usuariopor medio
"i comerciales
de materiales (hardwa..l pu.u-
u.u.-"on¡u.rta-e.,te-"o., ciertos F'LA.
Tabla de programadel pLA

El uso de un PLA debeser considerado


q u e t i e n e nu n g r a n n ú m e r o para los circuitoscombinacionales
d e e n t r a J a sy s a r i d a s E
. s s u p e r i o ra u n a R o M
para circuitos que tienen
un gran ^i^rro de condici,onls
El ejemplo presentadou .oniinuu"io" de no importa.
PLA' Manténgaseen mente cuando ¿"-r.r*;;; se programa un
se obse.rve el ejemploque tal circuito
sencillo no necesitaun pLA
vu ñ su configuraciónpuedeejecutarse
económicamente con compuertasSSI. más
considéresera tabla d" ;;.;;J'd-el
en la Figura E-27(a).Aunque circuito combinacionalmostrado
ñóu rá.'i,]""l"rrs en la fbrma
de suma de términos mínimos ""u
un pLA, "o.,rigu." r". r,i"."i"res
de suma de productos. cada t¿i,'ino en ra forma
¿""otrriñ-,ia
p.;;;;r';;^ü'u"p.".ron requiere
una compuerta AND. como
el número.d" pLA es
finito, es necesariosimplificar-u "o-puu.l".^año en un
r"""i¿" ñi",_" de términos
de producto nara poder m-i;i;";"i ";;-;il;
r,,i-"ro de compuertas AND usadas.
l":'J:'Ut"¡'ffiT*1$;; ,1,-"ia" productos
."'oüii""".,derosma-
Ft: AB' + AC

Fz: AC + BC

Hay tres términosde productodistintos


AB" AC v BC. El circuiro ri";;-;.;";nrradasen estecircuito cc¡mbinacionar:
la Figura b-26 puede y dos salidas;asÍ el pLA de
;";; ;;;g".u.
rrs.arse
La programación-qe-l pLÁ .ig"iii"u que "rt"-.rr"rliJ ""*¡inacional.
se especificanlos caminos en
su patrón AND-oR-Nor. una taÉla
de programaáe pLA típica se muestra
en la Figura 5-27(c).Esta consist"
t.". columnas. La primera columna
lista los rérminos de producto-;;;¿;i;"-ente.
"r,
cifica los caminos necesariosentre ras-l.rtradas La ,"g";í; columna espe_
y las compuertasAND. La
terceracolumnaesnecificalos caminos
-r"-^il"riü"
entre las_ compuertás AND y las oR.
Bajo cada variable de salüa,
una v (verdadero)si ra función
debe complementarsecon el i.r,u"rro,
de salida. Los términos de,Boole lis_
tados a la izquierda no son parte de
la tabra; ;;^i;;;uyen solamente
como ¡eferencia. "ll;.
Para cada término producto,se
marcan las entradascon 1,0, ó - (guión).
si la variable en
tildada), la va¡iable"11it.-i"g i,."a""t" aparece en su forma normal (no
de..entrada
rece complementada(tirdada) "o..".po.rai"rrt" ." ^u.i;;;; ." 1. si apa_
r" -u."i un 0. Si la variabreestá ausente
"on
A R R E G L OL O G I C OP R O G R A M A B L (EP L A ) 199
sEc. 5-8

e n e l t é r m i n o p r o d u c t o s e m a r c a c o n u n g u i ó n . C a d aentradas
t é r m i n oyp rlaso d c,m-
uctose
entre las
asocia con una .o-prrarü AND. Los caminos
puertas AND se ru columna llamada entradas.un 1en la
"!p;^fi;;¡u:o Ia correspondienteentrada
columna de entraoal-s;;;ili"" Ln camino desde producto. un 0 err la
que forma el término
a la entrada ¿" ru
"o*pir"ilu-AND Éa*i'o entre la entrada correspondiente
columna de entrada;;;;ift;";
complementaday t" de la compuerta AND' Un guión no especifica
"rri."d" los que quedan forman los
conexión. Los enlaces adecuadosse rompen.y
ü Figura 5--26-Se asurne que los
caminos deseadoscomo se muestra "n
terminales abiertos ;;1"";";;"erta AND se óomportan como una entrada
de 1.
L o s c a m i n o s e n t r e l a s c o m p u e r t a s A N D y o R s e e s p e ccon i f i cunos
a n b apara
jolasco
se marcan
lumn'rs llamadas sat'idas.Las variables de salida de la
f'unción' En el ejemplo
aquellos términos pr"J".t" que formulan la
Figura 5-27 se tiene:
F, : AB, + AC
producto 1 y 2 y
de tal forma que Ft 'i¿r-i"" se marca con un 1 para los términos
producto g. Cudu término producto que tiene
con un guión Para el IJ

,{
\------Y---,

00 00 L
0l 00 ¡'1 =AB,+AC
l0 00
ll 0l
l0 B
00
OI 1l
l0 00
l1 I
1l
(a) Tabla de verdad
,{ I

\_---r--J
C
¡:. -_AC + BC
(b) SimplificaciónPormaPa

l'érmrno Entradas Salidas


producto ABC F, F)

AB, I 10 1
AC l ll l1
3 1l -l
BC
TT TiC

(c) Tabla de Programa del PLA

Figura 5-27 Pasos necesarios en la configuración del PLA


200 L O G I C AC O M B I N A C I O N ACLO N M S I Y L S I CAP. 5
j,
un 1 en la columna de salida requiere un camino desde la compuerta AND
correspondientehasta la compuerta de salida OR. Aquellos marcados con
un guión no especificanconexión. Finalmente una salida V (verdadera)
indica que el enlace a través del inversor de salida permaneceen su lugar
y un c (complemento)indica que el enlace correspondienteestá roto. Los
caminos internos del PLA para este circuito se muestran en Ia Figura 5-26.
Se asume que un terminal abierto en una compuerta OR se comporta como
un 0 y que un corto circuito a través del inversor de salida no daña el cir-
cuito.
cuando se diseña un sistema digital con un PLA no es necesariomos-
trar las conexionesde Ia unidad como fue hecho en la Figura b-26.Todo lo
que se necesitaes una tabla de programacióndel PLA mediante la cual se
puedeprogramarel PLA para dar los caminos adecuados.
cuando se configura un circuito combinacionalcon pLA, se debe ha-
cer una investigación cuidadosa para poder reduci¡ el número total de
términos producto ya que un PLA podría tener un número finito de térmi-
nos AND. Esto puedehacersesimplificando cada función al mínimo número
de términos. El número de literales en un término no es importante ya que
se tienen disponibles todas las variables de entrada. Los valore. ue.áa-
derosy de complementode la función debensimplificarsepara ver cual se
puede expresar con menos términos producto y cual produce términos
producto que son comunesa otras funciones.

EJEMPLO 5-6.. Un circuito combinacionalse define nor las


funciones:
Ft(A,B, C) : )(3, 5,6,7).
F 2 ( AB, , C ) : ) ( 0 , 2 , 4 , 7 )

configúreseel circuito con un PLA de 3 entradascuatro términos


productoy dos salidas.
Las dos funciones se multiplican en los mapas de la Figura
5-28. Ambos valores verdaderosy complementosde Ia función se
simplifican. Las combinacionesque dan un número mínimo de
términos producto son:

Fr: (B'C' + A,C, + A,B,),


Fz: B'C' + A'C' + ABC

Esto produce solamente cuatro términos producto diferentes:


B'C' , A' C' , A'B' y ABC. La tabla programadel pLA paraestacombi-
nación se muestra en la Figura 5-28. Nóteseque la salida F, es la
salida normal (verdadera)aunquese marque una c bajo ella. Esto
es debidoa que Fí se generaantes del inversor de salida. El inver-
sor complementala función para producir F, a la salida.

El circuito combinacionalpara este ejemplo es muy pequeñopara una


configuraciónpráctica con un PLA. Este se ha presentadoaquí solamente
B B

A)' I o{ I I
L L
--_-J -_
L C
F1=AC+AB+BC FI.=8,C,+A,C,+ABC

B
I

U 0 0 0 0

,{ 0 ,tI 0 0
-r--/ \____Y_/
L

F i = s ' c ' + A ' C ' +A ' B ' Fi=B'C+A,C+ABC

Tabla de prog¡ama de un PLA


Términos Entradas Sali{as
productos A B C Ft F2
B,C, I -00 ll
A,C, 1 0-0 ll
A'8, 5 00 l-
ABC 4 tll -l

CT ttL

Figura 5-28 Solucióndel Ejemplo5-6

para propósitos de demostración. Un PLA típico comercial tiene más de 10


entradas y cerca de 50 términos producto. La simplificación de las funcio-
nes de Boole con tantas variables debe llevarse a cabo por medio del méto-
do de tabulado u otro método de simplificación a base de computador. Aquí
es donde el programa de computador puede ayudar al diseño complejo
de Ios sistemas digitales. El programa del computador debe simplificar
cada función del circuito combinacional y su complemento al mínimo nú-
mero de términos. El programa selecciona el número mínimo de términos
diferentes para cubrir todas las funciones en su forma verdadera o de
complemento.

5-9 N O T A SC O N C L U Y E N T E S

Este capítulopresentauna variedadde métodosde diseñopara los circui-


tos combinacionales. También presenta y explica un número de circuitos
MSI y LSI que pueden ser usados para diseñar sistemas digitales más

201
t¿
202 L O G I c Ac o M B I N A c I o N A LC o N M S I Y L S I CAP. 5 .

complicados. El énfasis aquí fue sobre Ia lógica combinacional MSI y las


f ' u n c i c ¡ n e sL S L L a s f u n c i o n e s d e l a l ó g i c a s e c u e n c i a l M S I s e d i s c u t i r á n e n
e l c a p í t u l o 7 . E l p r o c e s a d o ry c o n t r o l M S I y l a s f u n c i o n e s L S I s e p r e s e n -
tarán en los capítulos 9 y 10. Los componentes del microcomputador LSI
se iritroducirán en el Capítulo 12.
Las funciones MSI presentadas aquí y otras disponibles comercial-
mente se describen en los libros de especificaciones o catálogos. Los libros
d e C I c o n t i e n e n d e s c r i p c i o n e se x a c t a s d e m u c h o s M S I y o t r o s c i r c u i t o s
integrados. Algunos de estos libros de datos se listan en las ref'erencias
que se darán más adelante.
Los circuitos MSI y LSI pueden usarse en una variedad de aplicacio-
nes. Algunas de estas aplicaciones fueron discutidas a lo largo de este
capítulo, algunas fueron incluidas en problemas y otros serán encontradas
en capítulos siguientes conjuntamente con sus aplicaciones particulares.
Los diseñadores recursivos pueden encontrar muchas otras aplicaciones
que se ajusten a sus necesidades particulares. Los fabricantes de circuitos
integrados publican numerosas notas de aplicación que sugieren la utili-
zación posible de sus productos. Una lista de notas de aplicación puede
obtenerse escribiendo a los fabricantes directamente o sólicitándola di-
r e c t a m e n t e a s u s r e p r e s e n t a n t e sl o c a l e s .
A,-

R E F ER E N C I A S

t.
Yu.lo'-M. M., computer S-ysfemArchitecture. Englewoodcriffs, N. J.: prentice-
Hall, Inc., 1976.
z- M o r r i s , R . L . , y J . R . M i l l e r , e d s . , D e s l g ni n g w i t h r r L Integratedcircuits.
Nueva Yo¡k: McGraw-Hill Book Co., 1921.
3 . Blakeslee,T. R., Digítal Design with standlrd MSI and LSI. Nueva york: John
Wiley & Sons, 19?5.
A
Barna A., y D. I. Porat, Integrated Circuíts in Dígitat Electronics.Nueva york: -t-
John Wiley & Sons,1973.
5 . I,.9, s. c., Digital Circuíts and Logic Design, Englewoodcliffs, N. J.: prentice-
Hall, Inc.,1976.
SemiconductorManufacturersData Books (consultar la última edición):
(a) The TTL Data Booh for Design Engineers.Dallas, Texas: Texas Instru-
m e n t s ,I n c .
( b I T h e t r ' a i r c h i l ds e m í c o n d u c t o Tr T L D a t a B o o k .M o u n t a i n V i e w , c a l i f . : F a i r -
child Semiconductor.
( c l D i g i t a t I n t e g r a t e dC i r c u i t s . S a n t a C l a r a , c a l i f . : N a t i o n a l s e m i c o n d u c t o r
Corp.
( d ) S i g n e r i c sD i g i t a l , L i n e a r , M O S . S u n n y v a l e ,C a l i f . : S i g n e t i c s .
(e) MECL Integrated circuits Data Booh. Phoenix, Ariz.: Motorola semicon-
t
ducto¡ Products,Inc. JI

( f ) R C A s o l i d s t a t e D a t a B o o hS e r i e s .s o m e r v i l l e ,N . J . : R C A s o l i d s t a t e D i v .
PROBLEMAS
5-1. Diseñe un convertidor de código de exceso 3 a BDC usando un circuito MSI
de sumadores completos de 4 bits.
5-2. Usando cuatro circuitos MSI, construya un sumador paralelo binario para
sumar dos números binarios de 16 bits. Marque todos los arrastres entre
ios circuitos MSL
5-3. Usando 4 compuertas OR-exclusivas y un circuito MSI de sumadores comple-
tos de 4 bits, construya un sumador sustractor paralelo. Use una variable
de selección de entrada V de tal manera que cuando V:0, el circuito suma
y cuando V: t, el circuito resta. (Sugerencia: use la sustracción por com-
plementode 2.)
5-4. Deduzca la ecuación de dos niveles para el bit de arrastre de salida C, mos-
trado en el generador de bit de arrastre posterior de la Figura 5-5.
5-5.' (a) Usando el procedimiento de configuración AND-OR invertida descrito en
la Sección 3-7, demuestre que el bit de arrastre de salida en el sumador
completo puede expresarse como:

C¡+t : Gi + PiCí : (Ci Pi + GiCi)'

(b) El CI tipo 74182 es un circuito MSI generador de bit de arrastre poste-


rior que genera los bit de arrastre conjuntamente con las compuertas
AND-OR invertida. El circuito MSI asume que los terminales de entrada
tienen los complementos de G, P y de Cr. Deduzca las funciones de
Boole para los bits de arrastre posteriores Cr, C, y C¿ en este CI. (Su-
gerencia: use el método de ecuación sustitución para derivar los arrastres
en términos de C,')
5-6. (a) Redefina la programación y generación de los arrastres de la siguiente
forma:

P': A' * B'


G¡: A,B,

Demuestre que el arrastre de salida y la suma de salida de un sumador


completo se convierte en:

C¡*r: GiGi + Pi)': G,+ PiCi


E:(P,ci)@c,
(b) El diagrama lógico del primer estadodel sumador en paralerode 4 bits
como se configura en el CI tipo 74288y se muestra en la Figura pb_6.
Identifique los terminales Pj y Gi, como se definieronen (a) y demuestre
que el circuito puedeconfigurarun sumadorcompleto.
(c) Obtenga los arrastres de salida C., I C, en función de pi, pl, p!, Gí,
G;, C;, y C1 en la forma de AND-OR invertida y dibujeel circuito de arras-
tre posterior de dos niveles para este circuito integrado. fsugerencia:
use el método de ecuación-sustituciónde la forma como se hizo en el
texto al deducir la Figura 5-4, pero usandola función AND-OR invertida
d a d ae n ( a ) p o r C , * , . 1

203
rl
Figura P5-6 Primeraetapade un sumadorparalelo

5-7.!, (a) Asuma que la compuerta oR-exclusiva tiene una demora de propagación
de 20 ns y que las compuertasAND y OR tienen una demora de propaga-
ción de 10 ns. ¿Cuál es el tiempo total de demora de propagaciónen el
sumador de 4 bits de la Figura b-5?
(b) Asuma que C5 se propagaen el recuadrode la Figura b-b al mismo tiem-
po que otros bits de arrastre (ver Problema 5-4).¿Cuál será el tiempo de
demora de propagacióndel sumador de 16 bits del Problema 5-2?
l.
5-8. Diseñe un multiplicador binario que multiplique un número de 4 bits B:
b3b2btbo por un número de 3 bits A -- ararao para formar el producto
C : c 6 c 5 c a cca2 c t c o . E s t o p u e d e l o g r a r s ec o n 1 2 c o m p u e r t a sy d o s s u m a d o -
res paralelos de 4 bits. Las compuertasAND se usan para formar los produc-
tos en pares de bits. Por ejemplo, el producto de o6 y b6 pueden generarse
sacando la función AND de o¡ con ó¡. Los productos parciates formados por
Ias compuertasAND se suman con los sumadoresparalelos.
5-9., ¿Cuántas entradasde no importa hay en un sumadorBDC?
5-10. Diseñe un circuito combinacionalque genereel complementode 9 del dígito
BDC.
5-11. Diseñe una unidad aritmética decimal con dos variables de selección,vt y
vo y dos dígitos BDC, A y B. La unidad debe tener cuatro operacionesarit-
méticas que dependen de los valores de las variables de selección de la ma-
nera como se muestraa continuación.

Función de salida
00 A + 9's complementode B
0l A+B
l0 I * lO's complementode B
ll A + | (agreguelaA)

use funciones MSI en el diseño y el complementador de 9 del problema b-10.


5-12. Es necesario diseñar un sumador decimal de dos dígitos representados In
un código de exceso 3 (Tabla 1-2). Demuestre que la corrección después de
sumar los dos dígitos con un sumador binario de 4 bits es de la siguiente
,1,
manera:

204
,
P R O B T E M A S 205

(a) El arrastre de salida es igual al bit de arrastre del sumadorbinario'


( b ) S i e l a r r a s t r ed e s a l i d a : 1 , a g r e g a r0 0 1 1 '
( c ) S i e l a r r a s t r ed e s a l i d a : 0 , a g r e g a r1 1 0 1 '
Construyae]sumadorcondossumadoresbinariosde4bitsyuninversor.
5 . 1 3 , D i s e ñ e u n c i r c u i t o q u e c o m p a r e d o s n ú m e r o s d e 4 b i t s A y B , p a r a c o nys t a t a r
si A: B
s i e l l o s s o n i g u a l e s .E l c i r c u i t o t i e n e u n a s a l i d a ¡ ' t a l q u e ¡ : l
r:0 siA+ B.
de 4 bits similar
5-14. EI circuito integrado74L85 es un comparadorde-nrggnitud
internos
al de la Figura i-7, exceptoque tiene tres entradasmás y circuitos
que configur"., uqniuuiente lógico mostrado en la Figura P5-14. Por medio
"1 de mayor
de estos circuitos integrados, se pueden comparar los _números
longitud .o.r".iu, los'comparadoies en cascaáa.Las salidasA<B' A> B y
A: B de "l
una etapa que contenga bits menossignificativos.quese conectana
e t a p aq u e
l a s c o r r e s p o n d i e n i eesn t r a d a sA < 8 , A > B y A : B d e l a s . i g u i e n t
más significativos. La etapa que manipula los bits menos sig-
manipula bits
en Ia Figura 5-?. Si se usa el
nificativos debe ser có-o el circuito -o.t."áo
un 1 a la entrada A: B y un 0 a las entradas A <B
cl74L85,se debe-aplicar
bits menos significativos.usando
i ,q, n á" .r ci qie r.rariprrlalos cuatro
un circuito .o*o .i de la Figura 5-7 y un cI ?4L85,obtengaun circuito para
circuito'
comparar dos números de 8-bits. Justifique la operación del

^3
A<B
12

Al

Ao
C ircuito
dela A>B A>B
Figura 5-7
B3
B2

Bl

Bo A=B

A<B

A>B

A=B
I
al CI tipo 74L85
lógicamente
Figura P5-14 Circuitoequivalente

, 5-15. Modifique el decodificadorde BDC a decimal de la Figura 5-10 para obtener


inválida'
una salida de sólo ceros cuando ocurra una combinaqión de entrada
/5-16. Diseñe ün convertidor de código BDC a exceso3 con un decodificador BDC
a decimal Y cuatro comPuertasOR.
fun'
b-lTY'Un circuito combinacionalse define por medio de las tres siguientes
ciones:

Ft: x'/' * ryz'


Fz:x'*Y
Fr: xy * x'y,

Diseñe un circuito con un decodificador y compuertas externas.


y'o-18. Un circuito combinacional
se define por medio de las dos sizuientes fun-
clones:
F,(x,y) : >(0,3)
Fr(x,y) : >(1,2, 3)
Configure el circuito combinacional por medio del decodificador mostrado
en
la Figura 5-12 y compuertas NO-y externas.
r 5-79. Construya un decodificador de 5x 32 con cuatro decodificadores
demulti-
plexores de 3 x 8 y un decodificador de 2 x 4. Use la
construcción de diagrama
de bloque de la Figura b-14.
t 5-20. Dibuje el diagrama lógico de un decodificador demultiplexor
de 2 a 4 líneas
usando solamente compuertas NO-O.
5-21' Especifique la tabla de verdad de un decodificador de prioridad
de octal a
binario. coloque una salida para indicar que al -.r,o. unu
de ras entradas
es 1. La tabla puede ser listada con b filas-y algunas de las
entradas pueden
tener valores de no importa.
5-22. Diseñe un codificador de prioridad de 4 a 2 líneas. Incluya ¿_-
una salida E para
indicar que al menos una de las entradas es 1.
5-23. Configure la función de Boole del Ejemplo 5-4 con un multiplexor
de g x 1 con
A' B y l) conectados para seleccionar ias líneas s2, sr y s6 respectivamente.
5-24. Configure el circuito combinacional especificado en el problema
5-1T con
un doble multiplexor de 4 a 1 línea, una compuerta o y un inversor.
5-25. Obtenga un multiplexor de 8x I con un doble multiplexor
de 4 a 1 línea con
entradas de habilitación (enable) separados pu.o .o., Iíneas de
selección
comunes. Use la construcción por diagrama de bloque.
5-26. configure un circuito sumador completo con multiplexores.
5-27. La RoM de 32 G conjuntamente con ra línea 20 como se muestra
" en la Fi-
gwa P5-27 convierte un número binario de 6 bits a su A
correspondiente nú-
mero BDC de 2 dígitos. por ejemplo, er binario 100001se convierte
al BDC
011 0011 (decimal 83). Especifique la tabla de verdad para la ROM.

23 22 2l

ABCD

32x6ROM
Ft F2 F3 Ft Fs

\___Y-_i L____T____-_J

l0r 100
Figura P5-27 Conversorde binario a decimal
206
PROBLEMAS 2O7

que
5-28. .Pruebe que una ROM de 32 X 8 puede usarse para configurar un circuito
de un número de 5 bits de entrada con Bo : Ao !
genere ei cuadrado binario
É, : 0. Como en la Figura 5-24(a). Dibuje el diagrama de bloque del circuito
y lirt. las primeras y últi*u. entradas de la tabla de verdad de la ROM.
5-29.,7¿Qué tamaño de ROM se usaría para configurar:
(a) Un sumador sustractor BDC con una entrada de control para seleccio-
nar entre Ia suma Y la resta?
(b) un multiplicador binario que multiplica dos números de 4 bits?
(c) unos multiplexores dobles de 4 a 1línea con entradas de selección co-
munes?
/ remplaza con una
S-gO/ Cada inversor de salida en el PLA de la Figura 5-26 se
OR-exclusiva. Cada compuerta OR-exclusiva tiene dos entradas.
compuerta
la compuerta oR y la otra entrada se
una entrada se conecta a Ia salida de
por medio de enlaces a una señal equivalente a cero o uno' Demues-
conecta
tre cómo ."leccionu. la salida verdadera,/complemento en esta configuración'
que
S-gf l Deduzca la tabla de programación del PLA para el circuito.combinacional
el número de términos
eleva al cuadrado ,r., iú.n".o de 3 bits. Minimice
producto. (Ver la Figura 5-24 para la configuración con ROM equivalente')
de código de
5-32. Liste la tabla de programación del PLA para el convertidor
BDC a exceso 3 definido en la Sección 4-5'

You might also like