Arquitectura de Computadoras Morris Mano
Arquitectura de Computadoras Morris Mano
Arquitectura de Computadoras Morris Mano
lr
PREFACIO v l
t S I S T E M A SE I N A R I O S
't-'l
Computadores digiialesy sistemasd¡gitales
t-z Númerosbinarios 4
t-5 Conversiones entre númerosde based¡ferente
1-4 Númeroshexadecimales y octales 9
-5 Comolementos I I
-6 Códigosb¡nar¡os | 6
Almacenamiento de binariosy regislros 23
I -8 Lógicabinaria 26
-q Circuitosintegrados3l
Referencias 33
Problemas 33
A L G E B R AD E B O O L EY C O M P U E R T A S
LOGICAS 36
z-l Def¡n¡cioneslógicas 36
2-2 Definiciónaxiomáticadel álgebrabooleana 38
2-3 Teoremasbásicosy propiedadesdel álgebrade
Boole 4l
2-4 Funcionesbooleanas 45
2-5 Formascanónicay normalizada 49
2-6 Otrasoperacioneslógicas 55
Compuertaslógicas digitales 58
2-8 Familiasde circuitosintegradoslógicodigitales 62
Referencias 70
Problemas 7l
CONTENIDO
S I M P L I F I C A C I ODNE F U N C I O N E S
DE BOOLE
75
3-1 E l m é t o d od e l m a p a 7 5 ,
3-2 Mapas de dos y tres variables
3-3 7Sr/
M a p a d e c u a t r ov a r i a b l e s g O
3-4 X
M a p a s d e c i n c o y s e i s v a r i a b l e sx . g 3
3-5 S i m p l i f i c a c i ó nd e u n p r o d u c t o
d e s u m a sy , g 6
3-6 E j e c u c i ó nc o n N A N D y N O R
Sg
3-7 O t r a s e j e c u c i o n e sc o n d o s n i v e l e s g 6
3-8 C o n d i c i o n e sd e N O i m p o r t a
I 03
3-9 E f m é t o d od e l t a b u l a d o I O s
3 -1 0 D e t e r m i n a c i ó nd e f o s p r i m e r o s
3-11 implicados lOs
S e l e c c i ó nd e l o s p r i m e r o s i m p l i c a d o s
3 -1 2 O b s e r v a c i o n e sc o n c l u y e n t e s | ||
| |s
Referencias | | s
Problemas | | 6
L O GI C A C O MB I N A C I O N A L
120
4-1 fntroducción | 20
4-2 P r o c e d i m i e n t od e d i s e ñ o
4-3 | 2l
Sumadores 123
4-4 Sustractores | 27
4-5 C o n v e r s i ó ne n t r e c ó d i g o s
4-6 l30
P r o c e d i m i e n t o d e a n á "i sf i s
4-7 | 3g
C i r c u i t o sN A N D d e m u f t i n i v e
4-8 l | 36
C i r c u i t o sN O R d e m u ¡ t ¡ n ¡ v á i
4-E t44
L a s f u n c i o n e so R e x c r u s i v ay
' de equivarencia r4g
Referencias I 54
Problemas I 54
L O GI C A C O MB I N A C I O N A L
C O N M S I Y L SI
159
5-1 fn t r o d u c c i ó n I S g
5-2 S u m a d o r p a r a l e l ob i n a r i o
5-3 | 60
S u m a d o rd e c i m a l | 6 6
5-4 C o m p a r a d o rd e m a g n i t u d e s
5-5 | 70
Decodificadores | 7 |
5-6 Muftiplexores I gl
5-7 M e m o r i a d e s o l o l e c t u r a( R O M )
5-8 188
A r r e g f o l ó g i c o p r o g r a m a b l e( p L A )
5-9 195
Notas concluyentes 20l
R e f er e n c i a s 2 0 2 I
Problemas 2O3
I
CONTENIDO v
LOGICA
SECUENCIAL 208
6-1 fn t r o d u c c i ó n 2 0 8
6-2 F l i p - lf o p s 2 l O
6-3 D i s p a r od e l o s F l i p - lf o p s ( t r i g g e r i n g ) 2 t 6
6-4 A n á l i s i sd e l o s c i r c u i t o ss e c u e n c i a l e st e m p o r i z a d o s 2 2 4
6-5 R e d u c c i ó nd e e s t a d o sy a s i g n a c i ó n 2 3 1
6-6 T a b l a sd e e x c i t a c i ó nd e l o s F l i p - f l o p s 2 3 7
6-7 P r o c e d i m i e n t od e d i s e ñ o 2 4 0
6-8 D i s e ñ od e c o n t a d o r e s 2 5 1
6-9 D i s e ñ od e e c u a c i o n e sd e e s t a d o 2 5 5
R e f er e n c i a s 2 5 9
Problemas 260
R E GI S T R O S
C O N T A DR
OE SY U NI D A DD E M EM OR I A 265
7-1 lntroducción 265
7-2 Registros 266
7-3 R e g i s t r o sd e d e s p l a z a m i e n t o 2 7 2
7-4 C o n t a d o r e sd e r i z a d o 2 8 2
7-5 C o n t a d o r e ss i n c r ó n i c o s 2 8 6
7-6 S e c u e n c i ad se tiempo 295
7-7 L a u n i d a dd e m e m o r i a 3 O O
7-8 E j e m p l o sd e m e m o r i a d e a c c e s oa l e a t o r i o 3 0 6
R e f er e n c i a s 3 l 2
Problemas 3l3
L O GI C A D E T R A S F ER E N C I AD E R E GI S T R O S 316
8-1 lntroducción 3 | 6
8-2 T r a s f e r e n c i ae n t r e r e g t s t r o s 3 l 9
8-3 M i c r o o p e r a c i o n e sa n t m é t i c a s ,l ó g i c a sy
desplazamiento 327
8-4 P r o p o s i c i o n e cs o n di c i o n al e s de control 332
8-5 D a t o sb i n a r i o sd e l p u n t o f i j o 335
8-6 S o b r e c ap a c i d a d 3 3 I
8-7 Desplaza m i e n t o sa r i t m é t i c o s 3 4 1
8-8 D a t o sd e c i m a l e s 3 4 3
8-9 D a t o sd e l p u n t o f l o t a n t e 3 4 5
8 -1 0 D a t o sn o n u m é r i c o s 3 4 8
8-11 C ó d i g o sd e i n s t r u c c i ó n 3 5 2
8 -1 2 D i s e ñ od e u n c o m p u t a d o rs e n c i l l o 3 5 7
Referencias 366
Problemas 366
--
V¡ CONTENIDO
9 D I S E Ñ OL O G I C OD E P R O C E S A D O R E S 372
10 D I S E Ñ OD E L O G I C AD E C O N T R O L 423
1 O -1 Introducción 423
1O-2 O r g a n i z a c i ó nd e l c o n t r o l 4 2 G
10-3 C o n t r o ld e c o m p o n e n t e sa l a m b r a d o s- E j e m p l o1 431
10-4 C o n t r o ld e m i c r o p r o g r a m a 4 4 1
10-5 C o n t r o ld e l a u n i d a d p r o c e s a d o r a 4 4 7
1O-6 C o n t r o l a b a s e d e c o m p o n e n t e sc o n e c t a d o s -
E j e m p l o2 4 5 2
1O-7 C o n t r o ld e l P L A 4 6 1
10-8 S e c u e n c i a d od r el microprograma 464
Referencias 471
Problemas 472
11 D I S E Ñ OD E C O M P U T A O O R E S 477
1 1 -1 Introducción 477
11-2 C o n f i g u r a c i ó nd e l s i s t e m a 4 7 8
11-3 I n s t r u c c i o n eds e c o m p u t a d o r 4 8 2
11-4 Sincronización de tiempo y control 4Sg
11-5 E j e c u c i ó nd e i n s t r u c c i o n e s 4 g O
11 - 6 D i s e ñ o d e l o s r e g i s t r o sd e c o m p u t a d o r 4 9 7
11-7 D i s e ñ od e l c o n t r o l 5 O 3
11 - 8 C o n s o l ad e l c o m p u t a d o r S l 2
Referencias 5l3
Problemas 5l4
CONTENIDO vii
12 D I S E Ñ OD E L S I S T E M AD E L M I C R O C O M P U T A D O R 518
13 C I R C U I T O SI N T E G R A D O SD I G I T A L E S 579
13 - 1 Introducción 579
13-2 C a r a c t e r í s t i c adse l t r a n s i s t o rb i p o l a r 5 8 1
13-3 C i r c u i t o sR T L y D T L 5 8 5
13-4 L ó g i c ad e i n y e c c i ó ni n t e g r a d a ( l ' z L ) 5 8 9
13-5 Lógica de transistor-transistor (TTL) 591
13-6 L ó g i c ad e e m i s o r a c o p l a d o ( E C L) 600
13-7 S e m i c o n d u c t o rd e ó x i d o d e m e t a l ( M O S ) 6 0 4
13-8 M O S c o m p l e m e n t a d o( C M O S ) 6 0 8
Referencias 6lO
Problemas 6l O
A P E N D I C E : R e s p u e s t a sa p r o b l e m a ss e l e c c i o n a d o s 613
INDICE 625
Prefacio
4^^idE
f, .Á
-/-
PREFACIO
-4
?,s
--:7
PREFACIO
M. Mor.nls M¡No
Sistemas
bi nar ros
ffi
1 - 1 C O M P U T A D O R EDSI G I T A L E S
Y S I S T E M ¡ SO I C I T A L E S
Los computadores digitales han hecho posible muchos avances científi-
cos, industriales y comerciáIesque no se hubiesenpodido lograr por otros
medios. Nuestro programaespacialhubiesesido imposiblesin la vigilancia
continua de tiempo real del computador y muchas empresas de negocios
funcionan eficientemente sólo con la ayuda del procesamientoautomático
de datos. Los computadores se usan para cálculos científicos, procesa-
mientos de datos comerciales y de negocios, control de tráfico aéreo, di-
rección espacial, campo educacionaly en muchas otras áreas' La propie-
dad más impactante de un computador es su generalidad.Puede seguir
una serie de instrucciones, llamadas programa, que operan con datos da-
dos. El usuario puede determinar y cambiar los programas y datos de
acuerdo a una necesidadespecífica.Como resultado de esta flexibilidad,
los computadoresdigitales de uso general pueden realizar una serie de
tareas de procesamientode información de amplia variedad.
El computador digital de uso general es el ejemplo más conocido de
sistema digital. Otros ejemplos incluyen conmutadorestelefónicos, vol-
tímetros digitales, contadores de frecuencia, máquinas calculadoras,y
rnáquinasteletipos. Típico de un sistema digital es su manejo de elemen-
tos discretos de información. Tales elementos discretos pueden ser im-
pulsos eléctricos, Ios dígitos decimales,las letras de un alfabeto, las ope-
racionesaritméticas, los símbolosde puntuación o cualquier otro conjunto
de símbolos significativos. La yuxtaposición de elementos discretos de
información representanuna cantidad de información. Por ejemplo, las
letras d, o y g forman la palabra dog. Los dígitos 237 forman un número'
De la misma manera una secuencia de elementos discretos forman un
lenguaje,es decir una disciplina que con lleva información. Los primeros
computadoresfueron usados principalmente para cálculos numéricos, en
este caso los elementos discretos usados son los dígitos. De esta aplica-
ción ha surgido el término computador digital. Un nombre más adecuado
para un computador digital podría ser "sistema de procesamiento de
información discreta".
S I S T E M A SB I N A R I O S CAP, 1
Almacenador
o unidad
de memoria
Dispositivos Dispositivos
de entrada de salida
y control y control
digital
debloquede un computador
Figura l-1 Diagrama
4 STSTEMAS
B|NARTOS
CAp. l
Un computador digital es sin em,bargo,.un
una calculadora; puede usar muchos.otros"disposiíivÁaparato más poderosoque
puede realizar nó solament" áe entraü y salida,
' a¡itméticos y operacioneslóeicas
sino que puede ser "et"rlo.
.programadopara tomar decisioíes basadasen cJndi_
ciones internas y externas.
un computador digital es una interconexión
Para poder óomprender"¡" opl.""ioi de módulos digitales.
de cada má-"ü digital es necesario
tener lbs conocimientosbásicos de
los."rst"-* áigül!, , a" su compor-
tamiento. La primera mitad ae
este.ribro versa ,iúr" ,r.t"mas digitales
en general proporcionandolos conocimiento"
La segundamitad del libro trata puru su diseño.,
"""".iio.-"oauto*
sob¡e ros direil.,tes
putador digital' su operacióny de un com_
,u diseRo.r,m operaciona_
les de la unidad de memoria só explican
y diseño de la unidad de proceso en el "".""t"rísticas
T. La organización
.Jir"tu" .capíturo
para diseñar la unidad de cont¡ol -en el capítulo g. varios métodos
'3 deun computa -ffi
sslnrroduc; ;;;i'ó;píruro 10. La orga_
:i":f lr?,i,T dái;ü t; r r"ffi';#rueñosep.*.,iü
1T
un procesadorcombinado con la
unidad de control
nente llamado uní.dad.centrard" pri"ro
o cpu. ú" ciri-, .formaun compo-
una pastilla de circuito integradá encapsuladoen
,e de'o- i"; ;;;r;;ror"rodor. La
dad de memoria, de ra mism; i;;;q;;'i;ñ;';;"".'ltror, uni_
nexión entre el microprocesgao-f la interco_
io* elementosde éntrada y sarida,
ser encapsulada dentio de ra pÁtiit" puede
-de a"f -i"i";;";;;il, o puede encon_
trarse en pastilras pequeñas
circuitos integrados. un cpu
nado con u'u -u.noiia y un combi_
¿" i.,ter.o.r?¡ár,- ro.-".¿ un compu_
tador de tamaño nequeñóa"ro-in"a'o
"o"t.át-
m i c ro-c
ompui o-ii r'."ru disponibi ridad
de los aer -ic.o"o-ii,"r.ao"
"om'o.t"ttie"
de diseño de los sistemas aigitái"i-permitiendo h; ;;;;ñ"i"r,^"ao t" tecnología
de c¡ear estructuras que antes al diseñador la libertad
eran antieconómicas.Los diferentes
ponentesde un sistema de com_
microcomputador,r;;;;;;;i"., .., el capítulo
Ya se ha mencionadoel hecho de que
elementosdiscretosde informa;i¿;; un computadordigital manipula
que estos eÉmentos se p¡esentan
fo¡ma binaria. Los operando., .r.ldou en
sados en el sistema áe n.i*"io.-üI""rio.. .en ros ser expre_
- "¿r."l"r-p"eden
o;;-;;;;"íL.
cluidos los dígitos_ aiscretos, in_
,deci*"1"., r"- ,u!.u.".rru' con códigos binarios. Er
procesamientode datos se lleva a cabo por medio ¿e los
binarios, usando señales¡irra.ias. álementoslógicos
iL- ca'tidades se acumulan en los
mentos de almacenamientobinario. ele_
u.propo.itá"¿1".i.'.apítulo es el de
introducir ros diferent_esconceptos
para un posterior estudio de los bi;uñr- ;;;; ^"*^" de referencia
;;".;
capítulos .".t""i"r.
1-2 N U M E R O SB I N A R I O S
un número decimal tal como T3g2
.;;; representauna cantidad igual
dades de mil, más 3 center,as, a T uni-
;;"""nas, más 2 unidades.Las unida_
des de mil, las centenas,etc.,^sonpoJencias
de 10 implícitamente indica-
de roscoeficienies.
para .", ;á-;;;ctos, ?3e2puede
3r"g;,#rrosición
s E c .1 - 2 N U M E R O SB I N A R I O S 5
L o s c o e f i c i e n t eas¡ s o n u n o d e I o s d i e z d í g i t o s( 0 , l , 2 , . . . , 9 ) y e l s u s c r i t o
por el cual debe ser
.l da el lugar y poi tanto el valor de la potencia de 10
multiplicado el coeficiente.
1054,+ l}aao* lda3 * 102a2*lOra,* l00ao* l0-ra-,
+10-2a-2+ l0-3a-,
Nótese que los valores para coeficientes de base 5 pueden solamente ser
2,3 y 4.
0 ', 7 ,'Es
cbstumbre presentar los r dígitos necesarios para los coeficientes
del sistema decimal en caso de que la base del número sea menor qge 10'
Las letras del alfabeto se usan para completar los diez dígitos decimales
cuando la base del número sea mayor que 10. Por ejemplo, en el sistema de
números hexadecimal (base 16) se presentan los primeros diez dígitos del
sistema decimal. Las letras A, B; C, D, E y F se usan para los dígitos 10,
-{
/
É
SISTEMAS EINARIOS
t CAP. 1
00 0000 00 0
0l 0001 0l I
02 00r0 02 2
03 00rr 03 J
M 0r00 04 4
05 0l0l 05 5
06 0ll0 06 6
07 0lll 07 7
08 1000 l0 8
09 l00l ll 9
l0 r0l0 t2 A
ll l 0 lI IJ B
t2 I 100 l4 C
l3 Il0l l5 D
t4 lll0 ló E
I5 lllt l7 F
sus reglas son las mismas que en el caso del sistema decimal excepto que
la "lleva" en una posición significativa dada agrega 2 al dígito del mi-
nuendo. (Una lleva en el sistema decimal agrega 10 al dígito del minuen-
do). La multiplicación es muy simple. Los dígitos del multiplicador son
siempre 1 ó 0. Por tanto, los productos parciales son iguales al multipli-
cando o a 0.
ES
1-3 CONVERSIONE N T R EN U M É R O SD E B A S ED I F E R E N T E
Cocíente
entero residuo ,o"ürr!!:
T: ,O
I
do: I
,
+= ro at=0
-l =
0 '\ az: 0
2-
I
+ 4l: \
;:2 2
id
?
cocLente
entero residuo coefíciente
-2: dq:0
2
_I : ds: I
2
r e s p u e s t a : ( 4 1 ) r o: ( a r a . a s a z a t a o ) , : ( 1 0 1 0 0 1 ) ,
entero residuo
4l
20 I
l0 0
5 0
? I
I 0
0 I l0l00l : respuesta
153
l9 I
2 3
0 2L :1zl¡,
- : (0'l0ll)2
respuestl: (0,6875)r0 (0,a-P -2a -3a-4)2
0 , 5 1 3X 8 : 4 , 1 0 4
0 , i 0 4x 8 : 0 , 8 3 2
0,832X 8: 6,656
0,656x 8: 5,248
0,248x 8: 1,984
0 , 9 8 4x 8 : 7 , 8 7 2
La respuestacon siete cifras significativas se obtiene de la parte
entera de los Productos:
( 0 , 5 1 3 ) r:o ( 0 , 4 0 6 5 1 1. ) a
( 4 1 , 6 8 7 r5o) : ( 1 0 1 0 0 1 , 1 0 1 1 ) 2
1-4 Y OCTALES
N U M E R O SH E X A D E C I M A L E S
''':í¿
aa'/
IO S I S T E M A SB I N A R I O S CAP.
(glgggIIgg pgsgrg
J_11 ), : (26153,7406)
r
'3
2 6 I 5 7 4 0 6
La conversión de binario a hexadecimal es simirar excepto que
el número
binario se divide en grupos de cuatro dígitos:
( l 0 1 1 0 00 l l 0 l 0 l I )': (2C68,F2),u
t_J
/
I
L__J I l__l I! EI
2C 6B F2
: ( ¿g
(6i3,r24)8
E_L gE Eg Ig t
J-l_L
673124
(306,D) ,0 : ( 001I 0000 0l l0 I l0l )"
??? ?
Los números binarios son dificiles de trabajar ya que necesitan
tres
o cuatro veces más que su equivalente decimal-. por ejemplo, el
_dígitos
número binario 111111111111 es equivalente al decimal aOos.
Empero,
los computadores digitales usan los ñú.nu.o, binarios y uigr.,",
veces se
hace necesario que el operador humano o usuario se comunique
directa-
mente con la máquina en términos de números binarios. un eiquema que
retiene el sistema binario en el computador pero que ¡educe el número
de
dígitos que el humano debe considerar, utilüa la relación que hay
entre
el sistema de números binarios y el sistema hexadecimal u octal. Median_
te este método, el humano piensa en.términos de números octales o
hexa-
decimalresy hace la conversión por medio de la inspección, cuando se
hace
necesaria la comunieación directa con la máquina. Así el número
binario
1 1 1 1 1 1 1 1 1 1 1 1 t i e n e 1 2 d í g i t o s y s e e x p r e s ae n o c t a l c o m o 7 7 7 7 ( . " u i . o
dígitos) o en hexadecimal como FFF (lres dígitos). Durante la comuni-
cación de 1a gente (relativa a números binarios en el computador), se hace
más deseable la representación hexadecimal u octal yá qu" puede
ser
usada de manera más compacta con una tercera o cuarta parte del número
de dígitos necesarios para expresar el número binario equivalente.
cuan-
do un humano se comu4.icq.col la máquina (a través ae tos interruptores
de la consola, las luces indicadoras o por medio de los programas escritos
en lenguaje de maquína), la conversión de octal o hexádeiimal a binario
y viceversa se hace por inspección de parte del usuario.
sEc. 1-5 COMPLEMENTOS I I
1-5 COMPLEMENTOS
Áfr
--r F
f
I |2 S I S T E M A SB I N A R I O S CAP. 1
I 52520: 47479.
Como no hay parte fraccionaria,entonces10--:100 :1.
El complementode 9 de (0,3267),nes (1-tO-+ -0,3267):0,9999-
0.3267:0.6732.
Cqmo no hay parte entera entonces10" : 100: 1.
El complemento d e 9 d e ( 2 5 , 6 3 9 ) 1ees ( t 0 , - 1 0 - 3 - 2 5 , 6 3 9 ) : 9 9 , 9 9 9 -
:74.360.
25.639
2 s ( 2 6- 1 ) - ( 1 0 1 1 0 0 ) :( 1 1 1 1 1 1 -
E l c o m p l e m e n t od e 1 d e ( 1 0 1 1 0 0 ) e
101100)2 : 0 1 0 0 1 1 .
2 s ( 1 - Z - + ) r o * ( 1 , 0 1 1 0 ): 2 ( 0 , 1 1 1 1
E l c o m p l e m e n t od e 1 d e ( 0 , 0 1 1 0 ) e
- 0,0110)2 : 0,1001.
S u s t r a c c i ó nc o n c o m p l e m e n t o sd e r
M:03250 03250
N :72532
respuesta: I00[lA
complementode 2 d e N : 0 1 0 1 1 0 0
nrnguna l l e v a
S u s t r a c c i ó nc o n c o m p l e m e n t o d e ( r - 1)
sEc.1-5 COMPLEMENTOS I5
I
0010000
respuesta: 10000
C o m p a r a c i ó ne n t r e l o s c o m p l e m e n t o s
de2ydel
I 100
T
001I
+ llll
I 100
-r
0100
+ 0000
Mientras que el complementode 2 tiene solamenteun cero aritmético, el
0 complemento de 1 puede ser negativo o positivo lo cual podría complicar
la situación.
Los complementosútiles para los cálculos aritméticos en los compu-
tadoresse tratan en los capítulos 8 y 9. El complementode 1, sin embargo,
es muy útil en los manipuladoreslógicos (como se mostrará más adelante)
ya que el cambio de urros a ceros y viceversa es equivalente a la operación
de inversión lógica. El complementode 2 se usa solamenteen asociode las
aplicacionesaritméticas. En consecuenciaes convenienteadoptar la sig¡ien-
te convención:cuando,se use la palabra complemenúo, sin mencionarel tipo,
en asocio con una aplicación aritmética, se asume que es el complemento
de 1.
1-6 C O D I G O SB I N A R I O S
Los sistemas digitales electrónicos usan señales que tienen dos valores
distintos y elementosde circuito que tienen dos estadosestables.Existe
una analogía directa entre las señalesbinarias. los elementosde circuito
bina-riosy los dígitos binarios. un número binario de r dígitos, por ejemplo,
puede ser representadopor n elementos de circuito binaiio con se¡áleJ de
salida equivalentesa 0 ó 1 respectivamente.Los sistemas digitales tepi"-
sentan y manipulan no solamente los númerosbinarios sino también mu-
chos otros elementosdirectos de información. Cualquier elementodiscreto
de información específico entre un grupo de cantidades puede ser repre-
sentado p9r un código binario. Por ejemplo el rojo es un color específicodel
espectro. La letra A es una letra específicadel alfabeto.
un óif por definición es un dígito binario. cuando se usa en asocio
con un código binario es mejor pensar que denota una cantidad binaria
igual a 0 ó 1. Para representar un grupo de 2n elementos diferentes en
código binario se requiere un mínimo de N bits. Ello es debido a que es
posible arreglar r bits en 2" mane¡as diferentes. por ejemplo, ,r.t grnpo
-!
C O O I G O SB I N A R I O S t 7
C ó di g o s d e c i m a l e s
Digito ( B D C) (Biguinario)
decimal u2\ Excesoa 3 u.2-l 5043210
o"",,lli,l"l"u'jff jl-.'j"$":ir:jffi
J:'::"r",::T,"?,J:t'"""11r1':Tli":
datos, el usuario gusta dar los datos f;;;; j*i."i.
L"" _"r,ur"" d",
crmales recibidas se almacenan inte¡namente "" en el computadorpor medio
del código decimal. Cada dígito a""irn"l ."q,li"i"
mentos de almacenamientobinario. Los n,i-".o.. ;;;;"".. 'a""iaules cuatro ele-
se convrenen
cuando las operacionesaritméticas ." hr"un-lnt".numente
:..1i1*
numeros representadosen binario. Es posible con
también realizar operacio_
nes aritméticas directamente en decimál
con todos lo" n"¡n"ro. ¡,a deja_
dos en forma codificada. por ejemplo, ,,,i_".o J""i-"i -"ueve ¡9b, ."
da igual a 1100b1011 "t y ",rundo
:j:ri:rl"_1^lirrio
rrus. or mrsmo nume¡o representadoalternamente dígitos bina-
"on"i"t" en "i, código BóC,
paracada.digrrd ocupa
, re c i m a lp a r a u n t o t a f a e i Z ú i i s : 0 0 1 1 1 0 0 1 0 1 0 1 .
:L.,fs
r ^ 1 rprrmeros
1"_,b1"
c't¡tro bits representanel 3, los siguientes
ultrmos cuatro el 5. cuatro el g y los
!¿
r Tabla l-3
(a) Mensaje
Generacióndel bit de paridad
0000 1 0000 0
0001 0 0001 1
00r0 0 0010 I
001I I 001I 0
0r00 0 0100 I
0 1 0| I 0l0l 0
0 ll 0 I 0ll0 0
0l 0 0lll I
1000 0 1000 I
l00l I t 00l 0
l0l0 I l0l0 0
l 0 lI 0 l 0 lI I
I 100 I | 100 0
l0l 0 Il0l I
I l0 0 nl0 I
l I ll 0
El código reflejado
Los sistemas digitales pueden ser diseñados para procesa¡ datos solamen-
te en forma disc¡eta. Muchos sistemas fisicos suministran salida continua
de datos. Estos datos pueden convertirse en forma discreta o dieital antes
de ser aplicados a un sistema digital. La información análoga o continua
s_e.convierte a forma digital por medio del convertido¡ análógo a digital.
Algunas veces es conveniente usar el código reflejado mostrado en la Tabla
1-4 para representar los datos digitales convertidos en datos análosos.
-ou.
La ventaja del código reflejado sobre los números bina¡io, pu.o"
".
el número en el código reflejado cambia en sólo un bit cuando cambia'de
un número al siguiente. Una aplicación típica del código reflejado ocurre
cuando los datos análogos se ¡epresentan por un cambio continuo de la
posición de un eje. El eje se divide en segmentos y a cada segmento se le
asigna un número. Si se hace corresponder segmentos adyacentes con
núme¡os de código reflejados adyacentes, se reduce la ambigüedad cuan
do se sensa la detección en la línea que separa cualquier par de segmen,
tos. El código reflejado que se muestra en la Tabla l-4 es solamente uno
de los muchos códigos posibles. Para obtener un código reflejado diferente
se puede comenzar con cualquier combinación de bits y proceder a obtener
la siguiente combinación, cambiando solamente un bit de 0 a I ó de 1 a 0
de cualquier modo deseado, al azar, siempre y cuando dos núme¡os no
tengan códigos asignadtx idénticos. El código reflejado se conoce como el
código Groy.
20
\
Códigoreflejado Equivalentedecimal
0000 0
0001 I
001I 2
0010 3
0ll0 4
0lll 5
0l0l 6
'l
0100
l100 8
I l0l 9
llll l0
l 0 ll
l0l0 t2
l0l I
lml t4
1000 t5
_- .- .1
Tsbla l-5 ( odrgos de caracte¡€s alfanuméricos
-
uoolgo L odlgo
Códigointemo AS CII EBCDIC Códisode taljeta
C a r a c te ¡ 6.bits ?-bits 8-birs 12-bits
0t0 001 lm 0001 I 100 0001 t2,1
B 010 010 100 0010 l 100 0010 1))
C 010 0 100 001I I 100 001I 1) 1
D 010 r00 100 0100 I 100 0100 12,4
E 0t 0 r 0 l 100 0r0l r 100 0 1 0|
F 010 I l0 100 0l l0 I 100 0 l t 0 12.6
G 010 l 1000lll I100 0 l t2,7
H 0lt 000 100 1000 | 100 1000 12,8
I 0l l 001 r00 l00l l l m 1001 t2,9
J 100 001 100 l0r0 I l 0 l 0001 lt,t
K 100 010 100 101 | I l 0 l 0010 11,2
L t00 0tI t00 llm I l 0 l 00 I1,3
M 100 100 100 I tol I l 0 l 0100 I t,4
N 100 l0l 100 Il t0 I l0l 0l0l I1,5
o 100 I l0 100 l l l 1 0 l 0ll0 I 1,6
P 100 Il I r0r 0000 Il0l 0lll 11,7
a l0l m0 l0l 0001 I l 0 l t000 I1,8
R t 0| 0 0 1 l0l 0010 I l 0 l t 00l I 1,9
s 0 0r0 l 0 l 0 0 1I l ll0 ml0 o,2
T Il0 0ll l0l 0100 l I 0 001I 0,3
U I l0 100 r0l 0l0l I l 0 0100 0,4
I l0 r0l I0l 0ll0 l r0 0l0l 0,5
Il0 ll0 l0l 0lll l l 0 0 ll 0 0,6
X ll0 lll l0l l0ü) lll0 0 r 0,1
Y llt 000 t0 l l 0 0 l lll0 r000 0,8
z ll I 001 l0l l0l0 lll0 t 00l 0,9
0 000 000 0l I 0000 I I Il 0000 0
I 000 001 0lt 0001 l l 0001 I
2 000 0r0 0l l 0010 l l l l 0010 2
3 000 0l I 0 001I Illl 00ll 3
4 000 100 0l I 0100 l l l t olm 4
5 000 l0r 0lI 0l0l ll 0l0l 5
0 000 l r0 0lI 0ll0 ll 0ll0 6
'l
000 I Il 0ll 0llt llll 0llt 7
8 001 m0 0l I 1000 r l ll 1000 8
9 00r 001 0l I t00l ll l00l 9
espacio l r0 000 010 0000 0100 m00 no perforado
0ll 011 0t0 I n0 0100 l0l I t2.8,3
( I lt I00 010 1000 0100 I l0r 12,8,5
+ 010 000 010 l o tI 0100 | I l0 12,8,6
$ I o t 0 lI 010 0100 0l0t lot I I1,8,3
l0 t 100 010 l0l0 0r0| I100 I1,8,4
)_ 0lI 100 010 r00l 0t0l Il0l I1,8.5
100 000 010 l l0l 0l l0 0000 ll
I l0 001 0t0 llll 0l r0 0001 0,1
ll I 0 010 l r00 0l l0 l0 0,8,3
001 0rl 0lr Il0l 0l lll0 8,6
T
SEC ]7 OE E I N A R I O SY R E G I S f R O S 2 3
A L M A C E N A M I E N TD
1.7 Y REGISTROS
A L M A C E N A M I E N TDOE B I N A R I O S
Los elementos discretos de info¡mación en un computador digital deben
tener una existencia fisica en algún medio de almacenamiento de infor-
mación. Además, cuando los elementos discretos de info¡macion se re'
presentan en forma binaria, el medio de almacenamiento de información
debe contener elementos de almacenamiento bina¡io para Ia acumulación
de los bits individuales. Una celd.a binaría es un elemento que posee dos
estados estables y es capaz de almacenar un bit de info¡mación. La entra-
da a la celda ¡ecibe las señales de exitación que la coloca en uno de los
dos estados. La salida de la celda es una cantidad ñsica que distingue
entre los dos estados. La información almacenada en la celda es un I
cuando está en su estado estable y un 0 cuando está en el otro estado
estable. Algunos ejemplos de celdas bina¡ias son los circuitos flip-flops, los
núcleos de ferrita usados en la memoria y las posiciones perforadas o no de
una tarJeta.
I I 0 0 0 0 I I I 0 0 0 0 I
| 2 3 4 5 6 7 8 9 l0 1l 12 13 14 15 16
Físicamente se podría p€nsar que el registro está compuesto de 16 celdas
b i n a ¡ i a s , c o n c a d a c e l d a a l m a c e n a n d o u n 1 ó u n 0 . S u p o n g a m o sq u e l a c o n -
fizuración de bits almacenados es como se muestra en la figu¡a. El estado
*t
24 S I S T E Ñ 4 ABSI N A R I O S CAP, 1
T r a s f e r e n c i ae n t r e r e gi s t r o s
UNIDAD DE MEMORIA
roH
I
I I1110I 0 1 0 0 I0010 1 1
010010100100
1
PROCESADOR
..-:-.--.--.!
CONTROL
conregistros
de información
Figura l_2 Traslerencia
0000000000
0011100001
0001000010
00010000r0
Circuitos de
lógica digital
para la
01001000 r l
suma binaria
001 l 100001
U N I D A DD E P R O C E S A D O R
1-8 L O G I C AB I N A R I A
D e f i n i c i ó nd e l ó g i c a b i n a r i a
_*Á
Tabla l-6 Tablas de verdad de las operaciones lósicas
AND OR
x'Y x y
0 0 00 0
0 0 0l I
I 0 l0 I
l I
ll I
S e ñ a l e s b i n a r i a s y c i r c u i t o sd e c o n m u t a c i ó n
Fuente
Fuente
de voltaje
de voltaje
L
f
Voltios
Tolerancia
Lógica l nominal permitida para
la lógica 1
La transiciónocur¡e
entre estosIímites
Tolerancia
Lógica 0 nominal permitida para
la lógica0
-0,5
Compuertaslógicas
-J
I x
' ol-T--Tlo o
_v o, ofTlo
AND: ;r . y o o.f--Tl o o
OR:¡*y fr
NOT: ¡' W
Figura l-7 señales de entrada-salida para las compuertas (a), (b) y (c) de la Figura l-6
30
1-9 I N T E G R A D O S3 I
CIRCUITOS
.-9
C I R C U I T O SI N T E G R A D O S
Pastilla plana
Pastilla de hilera doblede patillas
PROBLEMAS 33
REFERENCIAS
1. Richard, R. K., Arithmetíc Operations in Digítat Computers. Nueva York: Van
Nostrand Co., 1955.
2. Flores, 1., The Logic of computer Arithmetic. Englewoodcliffs, N. J.: Prentice-
Hall, Inc., 1963.
3. Chu, Y., Dígitat Cornputer Design Fundamentals. Nueva York: McGraw-Hill
Book Co., 1962,CaPítulos 1 Y 2.
4. Kostopoulos,G. K., Digital Engineering. Nueva York: John wiley & sons, Inc.,
1975,Capítulo 1.
N. J.:
5. Rhyne, Y. T., Fundamentalsof Digitat sysüemsDesign. Englewood cliffs,
Prentice-Hall. Inc., 19?3, Capítulo 1.
PROBLEMAS
PROBLEMAS 35
I'Lrente de
voltaje
2-1 DEFINICIONES
LOGICAS
(b) * e s d i s t r i b u t i v os o b r e . : r + ( y . z ) : ( x * y ) . ( x - t z ) .
5. Para cada elemento ¡ € B, existe un elementor' € B (llamado el com-
p l e m e n t od e ¡ ) t a l q u e : ( a ) x + x ' : 1 V ft) x.x':0.
6. Existen al menos dos elementos r, ye B tales que xty.
*Ver por
ejemplo Birkoff y'Bartee (4),'Capítulo b.
?9
-\
sEc. 2-2 A X I O M A T I C AD E L A L G E B R AB O O L E A N A 3 9
DEFINICION
5. EI álgebra ordinaria trata con los números reales, Ios cuales cons-
tituyen un conjunto infinito de elementos. EI álgebra de Boole
trata con los elementos B hasta ahora no definidos pero que se
definen a continuación para el álgebra de Boole de dos valores
(de mucho interés para el uso ulterior de esta álgebra), B está
definido como un conjunto de solamente dos elementos, 0 y 1.
Estas reglas son exactamente las mismas que las operaciones AND, OR y
NOT respectivamente y que se han definido en la Tabla 1-6. Se debe demos-
j
ñ
r
40 A L G E E R AD E B O O L EY C O M P U E R T A S
LOGTCAS C A P .2
0 0
0 0
I 0
I I
(a)0+0:0 0+l:l*0=l
(b)l.l:l l'0:0'l:0
lo cual establecelos dos elementosde identidad 0 para f y 1 para .
de la manera como se definen en el postulado2.
3. Las leyes conmutatíuasson obvias de la simetría de las tablas de
los operadoresbinarios.
4. (a) La ley distributiua x. (y * z) : (x.y ) * (¡. z ), puede dernos-
trarse que es verdadera de las tablas del operador,al formar
la tabla de verdad de todos los valores posibles de x, y y z.
Para cada combinaciónse puede de¡ivar x.(y*e) y demos-
trar que esevalor es el mismo que (¡.y) + (x.z).
s E c .2 - 3 T E O R E M A SB A S I C O SY P R O P I E D A D EDSE L A L G E B R AB O O L E A N A 4 1
Teoremas básicos
TEOREMA l(a): ¡ * x: x.
TEOREMA 2(a\: x + 1: 1.
Los teoremas que comprenden dos o tres variables pueden ser probados
algebraicamentéde los postuladosy de los teoremasya probados.Tómese
por ejemplo el teorema de absorción.
xy x+ xy
0 0 0
0 I 0
I 0 0
I I I
P r i o r i d a dd e l o P e r a d o r
La prioridad del operadorpara la evaluaciónde las expresionesde Boole es
(1) él paréntesis,(l) NoT, (3) AND y (4) OR. En otras palabraslas expresio-
nes déntro de un paréntesis deben ser evalUadasantes de otras operacio-
nes. La siguiente óperaciónen orden prioritario es el complemento,luego
sigue la AÑn y finálmente la OR. Como ejemplo, considéresela tabla de
u".dud del teorema de De Morgan. El lado izquierdo de la expresión es
44 LOGICAS
A L G E B R AD E B O O L EY C O M P U E R T A S CAP. 2
Diagrama de Venn
Una figura útil que puede ser usada para visualizar las relaciones entre
las variables del álgebra de Boole es el diagrama de Venn. Este diagrama
consiste en un rectángulo tal como el que se muestra en la Figura 2-1, en
el cual se dibujan círculos traslapados para cada una de Ias variables.
Cada círculo es designado por una variable. Se asignan todos los puntos
dentro del círculo como pertenecientes a dichas variables y todos ios
puntos por fuera del círculo como no pertenecientes a Ia variable. .Tóme-
se por ejemplo el círculo designado r. Si estamos dentro del círculo, se
dice que ¡:1 y cuando estamos fuera de él se dice que r:0. Ahora bien,
con dos círculos traslapados se forman cuatro áreas distintas dentro del
r e c t á n g u l o : e l á r e a q u e n o p e r t e n e c en i a ¡ n i a y ( x ' y ' ) , e l á r e a d e n t r o d e l
círculo y pero por fuera de r (r',r'), el área dentro del círculo y pero por
fuera de -v (rJ') y el área dentro de ambos círculos (ry).
Los diagramas de Venn se usan para demostrar los postulados del
álgebra de Boole y para demostrar la validez de los teoremas. La Figura
2-2, por ejemplo, muestra que el área que pertenece a :r1' está dentro del
círculo r y por tanto ¡*¡-r':.r. La Figura 2-3 ilustra la ley distributiva
r (y + zl: xy f rz. En este diagrama se tienen tres círculos traslapados
para cada una de las variables-r, J'y z. Es posible distinguir ocho áreas
diferentes en el diagrama de Venn de tres variables. Para este ejemplo
en particular, se demuestra la le¡' distributiva al notar que el área de
.¡ (.r' ¡)
Figura2-3IlustracióndeldiagramadeVennparalaleydistributiva
2-4 F U N C I O N E SB O O L E A N A S
es una
una variablebinaria puedetomar el valor 0 ó 1. una función de Boole
formada cán variables binarias, dos operadores binarios OR y
".p.ñ¿" paréntesis y- el signo igual' Para un valor dado de
AÑD, el operadorNOT, el -Consid¿resé
p-t"á"'t"t 0 ó 1. por ejemplo la función de
.ruri"út"r,'la función
Boole:
Ft: xvz'
Ft:0'
L a f u n c i ó nF , e s i g u a la 1 s i r : 1 y y : 1 y z ' : l ; d e o t r a m a n e r a
es una función de Boole representada como una ex-
Et e;emplo anterio'r
por me-
p.u.iór, algebraica.Una función de Boole puede ser representada
lista de 2"
dlo d" .rná t"blu de verdad. Para hacerlo se ttecesita una
y ceros de las n variables binarias y una- column^a
combinacionesde r.ro,
para las cuales la función es igual a 1 ó 0'
-ártr"'¿o las combin""ion",
Como se muestra en la Tabia 2-2 existen ocho posibles combinaciones
diferente, para asignar bits en las tres variables. La columna demarcada
La Tabla
F1 contiene un 0 ó-u.r l para cada uxa de estas combinaciones.
1 solamente cuando x: !, y -- I
mlestra que la función i, es igual a
i ):0. Para cualquierotra'combilnación F' :0' (Nóteseque la afirmación
z' :1 es equivalenie a decir que z : 0.) Considéresela siguiente función:
Fz: x * )"2
x : 1 e n l a sú l t i -
F z : l s i ¡ : 1 ó s i ! : 0 , m i e n t a s - e : 1 ' 8 " l a T a b l a2 - 2 ,
en las filas 001 y 191'La última combinaciónse
mas cuatro filas y ít:Ot
hay cinco óombinaciones para hacer Fr:1.
u¡i"u también páíu-r: i. A"i,
io-o tercer ejemplo, considérese la función:
Fn es lo
Esto se muestra en la Tabl a 2-2 con cuatro unos y cuatro ceros.
mismo que F3 y se considera a continuación:
45
Tabla 2-2 Tablas de verdad para F, :
ry2,, Fz: x * y,z,
Ft: x'y,z * x,yz * A,, ! Fa: ry,+ x,z
Fl F2 F3 F4
000 00 00
001 0l ll
010 00 00
0ll 00
100 0l
r0l 0l
ll0 ll 00
lll 0l 00
cualquier función
^deBoole puede ser representadapor una tabla de
verdad. El número de filas en la tabla es de 2" donde n es el número de
variables binarias de Ia función. Las combinacio.res
pueden obtener fácilmente para cada fila de unos y ceros se
de los n,imerosbi.rario. contan-
do desde0 a2" - 1. para cada fira de la tabra, hay
un valor para la función
igual a 1 ó 0' se formula ahora la pregun_ta:
íHuv e"f.esio' algebraica
única para una función de Boole^dáa? n" ""upulutrur,
encontrar dos expresionesalgebraicaspara especificar
"t.", ¿Es posibre
la misma función?
L.a respuestapara estas preguntas es sí. De hecho,
la manipulación del
álgebra de Boole se aprica rirayormenteal proble.n"
J" éncontrar expre_
siones más simples para ra mlsma función.
considéresepor ejernplo la
función:
Fq: xY'* x'z
De la Tabla 2-2 se.encuentraque es idéntica a Fr, ya que ambastie-
nen unos y ceros idénticos para cada
"n combinació.tdó'uJor"s de las tres
variables binarias. En general, dos funciones
de n variables binarias son
iguales si ellas tienen el mi.mo uulo. puru
todas ras 2^ combinaciones
posiblesde las n variables.
una función de Boole puede ser trasformada
de una expresión alge-
braica a.un diagrama lógico óompuestoa"
realización de las cuatro funciónes introducidas oR y NoT. La
"o*p""rt";lñi;,
en la anterior discusión
se muestra en la FigurT,2.-4.Los diagramas
lógicos i""I,tv.., un circuito
para cada va.¡iablepresente""n ,u forma
ll-I:::"r de complemento. (El
rnversor no es necesariosi se cuenta con
el complementodé la uuri"bi*)
Hay una compuertaAND para cada té¡mino de
la y una compuerta
oR para combina¡ dos o más términos.-be l;; "*pr".io.,
;i"";;;; ouuio que para
completar Fo se requieren menos compuertasy "i que F3. como
entradas
$ v Fr son funciones de Boolg igoui;., es más económicollevar a cabo
la.forma F, que la fo¡ma Ir. Paü
encontrar circuitos más sencillos, se
debe conocercómo manipula"rlas funliones de
Boole para-obtenerfuncio-
nes iguales pero simplificadas_I,o que constituye
la iiejo, fbrma de una
expresión de Boole, dependede la áplicación párti"rrür.'
ñ., esta sección
se considerael criterio de minimizacibn de
"q.ripo.
46
f
.
(c) F3 :x'Y'2. +.r'-): ir)'
M a n ip u l a c i ó na l g e b r a i c a
cuando una función de
:lJn literal es una variable tildada o no tildada.
B o o l e s e e j e c u t a c o n c o m p u e r t a s l ó g i c a s , c a d a l i t e r a l realiza
o l e t r a dcon
e l auna
función
il.""; entrada u compuertay cada término se-
";á La minimi zación ""du def ,rúmeó de literales y el número de tér-
compuerta.
menos componentes'No es
minos dará como ," ,rltu¿o un circuito con tie-
siempre posible *i";;i;;; unl¡o, simultáneamente.Por lo regular se
Por el momento se limitará el criterio de
nen disponiblesotros.'it"'io''
minimización a la -l"iÁir".ión de literales. Posteriormentese discuti-
rán otros criterios 5. EI número de literales en una función
""'.i-ó"pit"lo manipulacionesalgebraicas'
de Boole puede ser minimizado por medio de
47
I
48 A I - G E B R AD E B O O L EY C O M P U E R T A S
LOGICAS C A P ,2
C o m p l e m e n t od e u n a f u n c i ó n
sEc.2-5 F O E M A SC A N O N I C AY N O R M A L I Z A D A 4 9
EJEMPL,2.S..EncontrarelcomplementodelafunciónF1
y Fz del Ejemplo 2-2 tomando los d¡*ales y complementando cada
literal.
I Ft: x'Yz'+x'Y'2.
El dual de F, es (x' * Y * z')(x' * Y' I z).
Complemeniandocada literal: (¡ *y' * z)(x *y * z'): FI'
2. Fz: x(Y'z'+Yz).
E l d u a l d e F 2 e sx + ( Y ' * z ' ) ( Y * z ) .
Complemenlando cadaliteral: r' + (y ¡ z)(l' t z') : Fí'
2.5 F O R M A SC A N O N l C A
Y NORMALIZADA
Términosmínimos Términosmáximos
00 0 x'y'z' mo x+y+z Mo
00 I ml x+y+z' Ml
0l 0 x'yz' m2 x+y'+z M2
0l I l7l3 x+y'+z' M3
l0 0 xy'z' m, x'+y+z M4
l0 I m5 x'+y+z' Ms
ll 0 m6 x'+y'+z M6
ll I xyz tlt7 x'+y'+z M1
50
Tabla 2-4 Funciones de tres variables
xy z Funciónft Función/2
0 0 0' 0 0
00 t I 0
010. 0 0
0l I 0 I
100 I 0
i
101 0 I
I l0 0 I
lll I I
S u m a d e t é r m i n o sm i n i m o s
EJEMPLO
.2-4: Expresa¡ la función de Boole F : A + B, C
como suma de términos mínimos. La función tiene tres variables:
A, B y c. como el primer término A no tiene las otras dos va¡ia-
bles por tanto:
A : A(B + B'): AB + AB,
A:AB(C+C,)+AB,(C+C,)
= ABC + ABC' + AB'C + AB,C,
F: A + B,C
: ABC + ABC' + AB'C + AB'C' + AB'C +
A'B'C
Pero como AB'c aparecedos veces,y de acuerdo al teorema
1
(¡*¡: ¡), es posible quitar uno de óllos. Rearreglandolos tér-
minos en orden ascendentese obtendrá finalmentei
F ( A ,B , C ) : ) ( 1 , 4 , 5 , 6 , 7 )
El símbolo de sumatoria I implica los términos a los cuales
se les
lplica la función OR. Los térm-iios entre paréntesisson los
términos míni-
s E c .2 - 5 FORMAS CANONICAY NORMALIZADA 53
F ( A ,B , C ) : X l , 4 , 5 , 6 , 7 )
Esta función tiene un complernentoque puede expresarse
así:
t
F'(A, B, C) : )(0, 2,3) : mn * m, * m,
Ahora si se obtiene el complementode F' por el teorema
de De Morgan
obtendremosuna F de manéra diferente:
F : (mo I m, * mt)' : m[. mL. m\: MoMzM3: fI(0, 2,
3)
II
La última definición se de¡iva de la definición de
los términos mínimos
y términos máximos que fig'ran en la Tabra
2-3. De i" t"¡tu, .ú;; qr;
es válida la siguienterelación: ".
^j: M¡
I
I
, El último ejemplo demuestra Ia óonversiónent¡e una función expre-
sada como una suma de términos mínimos a su equivalente
to de términos máximos. con- un. arg'umentosimilar se
como produc-
mostrará que la
I
conversiónentre el producto de términos máximos y
i minos mínimos es similar. Se estableceahora
ü **" de los tér_
pro""¿imiento de con-
versión general. Para hacer la conversión de "" rir-"
i
lanónica a otra,
intercámbieselos símboros
I v II y lístese""u que fal_
tan en la forma original. Comñotro ejemplo,la función:
"qu"iiá.-ntmeros
F(*,y,2): II(0,2,4,5)
se.expresa como producto de la forma de términos
máximos. su conver_
sión a la suma de términos mínimos será:
F(r,y,z): )(1,3,6,7)
Nótese que para poder encontrar los términos faltantes,
se debe tener en
cuenta que el número total de términos mínimos y tr;;i;o.
-función. máximos es
2n en donde n es el número variable binario en la
Formas normalizadas
Las dos formas del álgebra de Boole son formas
básicas que se obtienen
al leer la función de la tabla de verdad. n.tu.
io.-u. ,,iuj ,uru-ente son
las que tienen el menor número de literales
d"tú;-"-i; cada término
mínimo o término máximo, debe contener por definiciónl
Ldos las varia-
bles complementadaso no.
otra forma de expresar ras funciones de Boole es la forma
normariza-
do. En esta configuraiión, los términos que forman la
función deben con_
I
LOGICAS 55
OTRAS OPERACIONES
s E C .2 - 6
2-6 O T R A S O P E R A C I O N E SL O G I C A S
entre las dos variables
cuando los operadoresbinarios AND y oR se colocan
de x'y y
t y y, ellas iorman las funciones Poole !+y'respectivamente'
n variables binarias'
é.'"".iubt..ió previarnenteque hay 22' funciones de
para dos variables,'i-Z númeio de funcionesde Boole posiblese-s^16'
las 16 fun-
p.ri""t" las funciones AND y OR son solamente dos del total de
"l'
do, variables primarias. Sería muy instruc-
;ilr";; posibles for-udu.
"o.,
14 funciones e investigar sus,propiedades'
tivo encontrar las otras
Las tablas d" ;; i;t- i6 f,r.t"iott"s"formadásóon dos variables
";;á;d
binarias x y !,." ri.f"" la Tabla 2-5. En esta tabla, cada una de las 16
po-
""
columnas Fo a F,r-i"prr.."tan una tabla de verdad de una función
las funcionesse de-
sible para las dos u"rüb1"" dadas x y y'Nótese.que
que pueden ser asig-
terminan a partir d; l;. 16 combinaóiott". binarias,
símbolooperador'
nadas a F. Algunas de las funcionesse muestran con un y Ft represen-
pói ej"-plo, F, .upr*enta la tabla de verdad para una AND
I Tabla 2-5 Tablas de verdad para las 16 funciones
de dos variables binarias
Y
v Fo Ft F2 F3 F4 F5 F6 F7 Fs Fs Fto F,, F,z F,¡ Ft. F,,
00 0 0 0 0 0 0 0 0 I I I I I I
0l 0 0 0 0 I I
t I I I 0 0 0 0 I
l0 0 0 I I I I
I 0 0 I I 0 0 I I
ll 0 I 0 0 I I
0 I 0 I 0 I 0 I 0 I 0 I 0 I
Símbolo
operador
o + ú c f I
ta la tabla de verdad para la oR. Los
símbolos operadorespara estas fun_
cionesson (.) y (*) iespectiva-".ri*
Las 16 funciones lisiadas Luu.de verdad pueden ser expresa-
das algebraicamente.pormedio "*ude expresio.ru.
ver en la primera columna ae la a"- go;lJ]'n.to se puede
rabiá 2-6. Las expresionesde Boole
tadas están simplificada. lis_
-i"iÁJ".r?,...o de rite¡ares.
"t
Aunque cada función puede .",
res de Boole AND, oR v ñot, en t¿rminou de ros operado-
"rp""."dapara
operadores especiales para expresa¡ no poder asignar símboros
";-itü;;"ón
las otras funciones. Tales símbolos
operadoresse listan t" ."guiráu
"rt ¿" r" i"¡l"l_0. si., embargo,
"ol-ürru
Tabla 2-G Expresionesde Boole para
16 funciones de dos variables
56
LOGICAS 57
OTRAS OPERACIONES
sEc.2-6
oR-
todos los símbolos nuevosimostrados, con excepción d9J símbolo de la
por parte de los.diseñadores digitales'
exclusiva O, no.ott á. uso común
su correspon-
Cada una de las funcionesen la Tabla 2-6 se lista con
que explica su función de forma simple. Las
diente nombre V .ot"""l"tio
io n listadas pueden subdividirse en tres categoias:
""io""s
1. Dos funcionesque producen una constante0 ó 1'
y tras-
2. Cuatro funciones con operacionesunarias de complemento
ferencia.
3. Diez funciones con operadoresbinarios que definen ocho operacio-
nes diferentesAND, ÓR, NINO, NOR, OR-exclusiva,equivalencia,
inhibición e imPlicación.
58
Nombre Símbolo Función Tabla de
gráfico algebraica verdad
x-----ñ 00 0
AND | )-F F:x./ 0l 0
v -------l-/ l0 0
ll I
0'|
OR
i--1-\ ' F:x*v
0
I
'l F
.Inversor " ->- F F:x', 0lt
ll0
x-----ñ.
NAND I F_-F F:(xy)'
)'-----l-/
¡ =-ñ. 00 I
NOR I >--F F:(x+y)' 0l 0
, -----1-/ l0 0
ll 0
ri
x
NoR-exclusiva F : ry + x'y'
o Jf\_. ' :xoy
y---lLJ-
equivalencia
59
60 A L G E B R AO E B O O L EY C O M P U E R T A S
LOGICAS CAP.2
E x p a n s i ó na e n t r a d a s m ú l t i p l e s
l . rl y ) I r : ( x * , r , ) z ,
A
B
C --
F = |(ABC)' ' (DE)'l' ABC + DE
y compuertas NAND
Figura 2-7 Compuertas NOR en cascada y de multi-entrada
debeescribir-
cuito de la Figura 2-7(c).La función de Boole para el circuito
SE ASí:
F=Yoy@z
0 00 0
0 0l I
(a) Usando compuertas de dos entrad¿
0 l0 I
0 tl 0
--t{-\. 00 I
".t ____#
---H-/ >- t' = Y +.1'+ : 0l 0
z l0 0
ll I
(b) Una compue¡tade tres entradas
(c) Tabla de verdad
2-8 F A M I L I A S D E C I R C U I T O SI N T E G R A D O S
L O G I C OD I G I T A L E S
siónalaspropiedadesgenerales'delasdiferentescompuertasencrrcul.
;;:'i"t" g;"dfs disponibles comercialmente'
L O G I C OD I G I T A L E S 6 3
INTEGRADOS
F A M I L I A SD E C I R C U I T O S
los tran-
l
Debido u ru urtu'áJ"tiá;e con l1 qü. puedatt:"t -f1b-tl:udos
sistorescon MOS ; I;il;t;. dg: fuyiliás se usan principalmente^-nllf
LSL Las ;;;'t; i;milias BCL v 9y9S se usanen las
funciones TTL,
LSI y ;;;'ñ;o d. .o.npnertasMSI v. SSI. Las com-
compuertas ";';; un número pequeñode compuer-
puertas SSI son uq""ff"t'q"e contienen de circuito
.r, Ia Sección 6-2) en una pastilla
tas o flip_flops (preJe-nl"áu. sSI es el
de_circuitosen un componente
integrado. El límite'áJ*--.ro por ejemplo'
Una n"ttifl" q" t1 tllt'll"s'
número de patillas de la pastilla' de dos entradas cada una' ya
puede alojar solamente cuatro tornptt"tt"t dos para entradas v una
que cada compu"tti ;;t;tit; 3 patiila^sexternas:
patillas' Las dos patillas restantes
para la salida,.p"; á;;;; totai de 1.2
para el 'u-i]litt'o de potencia a los circuitos'
se usan 2-9' Cada circuito
Algunos SSI se muestran eT la Figura patillas se nu-
"i,c"iiot pa*till" d9 f,a o 16 pati[as' Las
está encapsrrluao y se especifican las cone-
"'i""'iu at la pastilia
nteran a lo largo d; bt*¿5; üáát áib":udas áentro del circuito
xiones que pueden hace'se' Lu' "otp'i"it* t'o ptt"d"tt verse ya que en la
totut"tt"l
integrado son para i"r**áti¿"
el circuito integrado aparece at l" forma ilustrada en la Figura
realidad
t-t. por la de-
circuitos integrados TTL. se_distinguen_comúnmente t,u designación numérica
s¿óo v z"+oo.
"o" nrr*¿ri.u^i'"-t'.orrro ra .e.ie
signación int"g.udo. están numerados
de la serie ?400 implica que los "ir'Ñár TTL
7 400,7 40I, Z¿Ozetc.''Ñ*""1 fabricant"ei^ti"""" clrcuitos integrados
como la serie
disponibles iilu'*i"' ¿t"ignu"io""t tuméti"ut tales
"o,,
n*J"tffi;ra ssl. El ?404viene con cua-
2-9(a) ilustra dos circuitos TTL marcados v¿6' y
io. terminales
tro compuertas ÑÁNO de 2 entra¿".. un voltaje
GND son p"r" r""'p"inf* la fue.ntedel poder que requieren
-a"
de 5 voltios para la adecuadaoperaclon' La Figura
El tipo ECL;;;;;;;" t" a"1g"a 99-9 la serie 10'000'
-gcL.
El" 10102viene con cuatro compuertas
2_g(b) muestra ¿"""";r."ii""
que la .o-p.r"*u ECL pry{e tener dos entradas,
NoR de 2 entradas. ñót"." r""ción oR, (pin 9 del circuito
pu"u-ü
una para la función Ñon y Ia otra contiene tres compuertas OR-
i.,i"gr"ao i0i0?
integrado 10102).iii .ir*iil da Ia
h;;á"t üri¿"t á" t"a" compuerta' La otra
exclusiva, .n.*tJtui; Las compuertas EcL tienen tres
función ¿" NOn-e*"jrr".i.r"'o ó"iualencia. v""' t" conectan por lo ge-
i
terminales ot" t'iilil.itt'o-JJn9a"t-1" - 5'2 voltios'
;'";;;i;t í" v v* a un voltaje de.
4000se muestran en la Figura 2-9(c)'
Los circuit*'ai{ób'i"-iá-."ri" de cuatro entradas
d"t ;;;ÑJl"'
Solamente ." pr't"iut' á"orro¿u' ry91 seis circui-
ñtit"tio" d";;iil.";'
en el 4002 ¿"¡ia"?l' "tl-o-tg,::ntiene terminales
integrados tienen dos
tos separador". &Jfi"r). Ámbos circuitos marcado V" requiere
nr l"tirinat
sin uso, *ur."ai"Ñ?'(tá "o"e*i¿"i'
g y vss comúpmente-se conecta
un voltaje au .rr*i.riJro d" a t5 íoltios
a tierra.
r
vcc vcc
t4 13 t4 13
23456 7 34s67
Tie¡ra Tierra
740<t-Seisinverso¡es 7400-Cuatro compuertasNAND de dos entradas
CompuertasTTL
vccz vccz
16 t5 tó 15
8l
vcct vre
vcct
NC Vte
10102-cuatro compuertasNoR de dos entradas 10107-Tres
compuertasoR_exclusiva,/NoR
(b) CompuertasECL
voo
NC NC
t4 13 16 13 12
123456.7
34567 zss
NC l/ss voo
4002-Dos compuertas NOR de 4 entradas
4050-Seis separadores
(c) CompuertasCMOS
tipo de lógica
Figura 2-1O Asignación de amplitud de señal v
(V)
Nivel alto de.'/oltaje(v) Nivel bajo de voltaje
Tipo de familia Voltaje de
tuente (V) Rango TíPico
de CI
x---ñ
/______1.
lF_:
'
( c ) Tabla de verdad
(d) Símbolográficopara la
para la lógica
compuertaNAND de
positiva;
lógicapositiva.
H:T,L:0.
(e ) Tabla de verdad
( f ) Símbolográficopara
de lógica negativa
ra compuertaNOR
L:r,H:0.
de lógicanegativa.
Característicasespeciales
Las característicasde las familias de cI lógico digitales
se comparan
analizando el circuito de la compuerta básica"¿e cadá familia.
Los pará-
metros más importantes que son evaluados y comparados
-*u.g"r, son fu.r'orri,
disipación de poder,
{ego1a de propagación y
cará primero las propiedades
de ruido. Se expli_
de estbs-parámétrosp".u trregousarlos plra
compararlas familias lógicasde CI.
, l?l-o"f especificael número de cargos normaresque puede accionar
la salida de la compuertasin menoscabai"" op"i".i*liJrmal.
u.a carga
normal se define como la cantidad de corrientó necesitadapara
la entrada
de.otra compuertaen la misma familia de cI. argu"". u""es se
usa el tér-
mino cargadoen vez de fan-out. Este té¡mino se*deducedel hecho
de que
la salida de la compuerta suministra una cantidad limitada
de corriente
por encima de la cual no opera cofrectamentey
se dice por este caso que
está sobrecargada.La salida de la compuerta generalmente
se conecta a
las entradas de otras compuertassimilares. cuáu
cierta
cantidad de potencia de la compuerta de entrada de ""iráj" "or,rrr-"
tal -u.,"ru que cada
conexión adicional se.agrega a ra carga de la compuerta. ,,Las
,Lglas Je
I
carga" se listan comúnmentepara uná familia de circuitos digitalás i
nor_
malizados. Estas reglas especificanla máxima cantidaá de cJrga p".Ái-
sible para cada salida de cada circuito. Al excedersela carga
máxima
especificadase podría causar mal funcionamiento ya que el
circuito no
puede suministrar el poder demandado.El fan-out es el
número máximo
de entradas que pueden conectarsea la salida a. rá-compuerta y
se ex-
presa con un númer<¡.
_ Las capacidadesde fan-out de la compuertadeben considerarsecuan-
do se simplifican las funcionesde Ebole. Se debe tener mucho cuidado
de
no desarrollar expresionesque resulten en una compuerta con sobrecarga.
Los amplificadores no inversores o separadosse ú.""
fu* suministrar
capacidadadicional de accionamientopara el caso de cargaspesadas.
Disipación de potencio es la pot-enciasuministrada necesaria para
operar la compucrta. Este parámetro se expresa en milivatios (mw) y
representa Ia porencia real designada por lá compuerta. El número quá
representa este parámetro no incluye la potenciá suministrada
de oira
compue-rtao seu que representa la potencia suministrada a la
compuerta
por la fuente de poder. un cI con óuatro compuertas exigirá
de la fuente
cuatro veces la potencia disipada por cada óompuerta. En
un sistema
dado puede haber muchos ciriuitos integrado. y ,rr. potencias
deben te-
nerse en cuenta- El poder total disipado en un sistema es la
suma total
del poder disipado de todos los CI.
. .,Retardo de propagación es el tiempo promedio de demora en la tran-
srclon de programaciónde una señal de la entrada a la salida,
cuando las
L O G I C OD I G I T A L E S 6 9
SEC.2.8 F A M I L I A SD E C I R C U I f O SI N T E G R A D O S
toman
valor' Las señalesen una compuerta
señalesbinarias cambian de la salida'
para propag"i." a" las entradas a
cierta cantidad de tiempo demora de propaga"tul 9:'11
t";;l;
Este intervalo de tiempo se define
compuerta.EstaúltimaSeexpresaennanoseconds(ns).UnnseSlgu'al
to;t"rt".1;1!l'o,r" digital a las
" viajan cre las entradas de un circr¡ito
Lu 'u-u de' las demoras de
salidas pasan po' serie de to'opu"tt"t' propagación
""" t" ¿"-ora total de
propagación u t."u¿t de las compuertas "t es 'importante' cada com-
de operación
del circuito' cu"nál l^ *fotiaád y el. circuito digital
puerta debe tener,ri" p"qrr"na''ni"i-o demora á"-piopug"ción entre las entradas
¿" t"tit
debe tener ,r. .tt-ut "o*p""ifut """
t t"Lt"Tt3ff;adas digitales se apli-
digitales en ra mayoría de los circuitos
To{a1 aquellas compuer-
can simultan""*""t? a mát de una -compuerta' de entradas externas cons-
tas que reciben .ul"""truáas exclusivamenteLas compuertasque reciben
del circuito.
tituyen el primer ;r;i';;l¿gica primer
a partir de u¡a salida de una compuertadel
al menos una entrada, y manera
el segundo nivel de -t^óq1ca de
nivel de lógica, "t- to"tiá"'an en propaga-
y top"'"iot"s' La demora total de
similar para los niveles tercero compuerta por
ción del circuito is";i;lu Aé*ot" d.epropagacl"l 9:^t"
reducción en el núme-
"t crrcuito'.Así, una
el número de niveles lógicosen eI *drr".ió-n de la demora de
dirá como ,""rrtüJá'onu'
ro de niveles lógicos propaga-
La reducción de la demora de
la señal y circuitái #;-J;id"s. que- lq.reducción en el
más^i*p.it""t"
ción en los circuitos podría ser q"t la velocidad de operación
número total de compuertas"" "l "uto-át
""^ lr:::;::5:'HlT:Tli'*u',,,'o vortaje de
o: ::d:^Tl:gadoa raseñar
indeseable' a la
entrada de un áigit"t que no cause un cambio El
"i""it" d; ;;tJ; que debe.r considerarse.
salida del circuito. Hay dos tipos de se-
t" los niveles de voltaje
.rr¡¿s (DC) cp ti"'"dJ poi-rt.á"tui"tiá" que puede,ver creado por otras
prrt* ,trutorio
ñal. El ruido cA ?;ó;"-';i una
es el término usado para denotar
señales conmutadi;.-A"l; et ,ui¿o normal' La ha-
una tt¡ut de operación
señal indeseablesuperimpuestaa en un ambiente de
lá"n"uitl¿ad
bilidad de los circuitos para operar "o"- El margende ruido se expre-
ruido es importaniJ';;;;¿h..^aplicaciones. señal dJ ruido que puede ser
la -¿*iÁu
sa en voltios (V) y representa
tolerada Por una compuerta'
lógicos
Característicasde las familias de Cl
E l c i r c u i t o b ¡ í s i c o d e l a f a m i l i a "cuates
l ó g i c a se
d elistan
T T L e tres
s l a cen
o m p uTabla
e r t a N2-8'
A NEsta
D.Hay
muchas versiones;; Til d" ta, -la
familias de CI lógicos' Los
tabla da tu" g".r"rut""-d" ias
"uruJi"ri.t[u.
valoreslistadosSontepresentativosco,'baseenlacomparación.Para
.""fq"l"t familia o ut"ión los valores puedenvariar'
de la familia
La compue,," fii normalizada fue la primera versión
ha progresado.
TTL. S. ;;"r* u *"¿ia" qrre'tu tecnología
innovaciones que reducen la de-
La TTL Schottü "g.ug"io;e";;;'a; t"" ltti*".
en un aumento de asignación de
mora de propagación pero que '"t"iiá
j
--á
r Tabla 2-8 Características de familias
de CI lógicos
REFE
RENCIAS
t G'' An Inuestígation
of theLawsof Thought.Nuevayork:
#a':' Doverpub..
70
PROBLEMAS7I
PROBLEMAS
básicas (con¡unto cerrado asociativa, conmutativa,
¿Cuál de las seis leyes son cumplidas Por el Par de oPerado-
áe identidad, inversa y distributiva)
ies bir.,arioslistadosa continuación?
.10 | 2
2-2.Demuestrequeelconjuntodelostreselementosl0'1'2lylosdosopera-
d o r e s b i n a r i o s + y d e l a m a n e r a d e f i n i d a e n l a t a b l a a n t e r i o r , nde
o cHuntington
onstl-
cuál de los postulados
tuyen el álgebrJ ¿"' S""it' EtluUtt"u
no se cumple.
2-S.Demuestrepormediodetablasdeverdadlavalidezdelossiguientesteo-
remas del álgebra de Boole'
( a t L a s l e Y e sa s o c i a t i v a s '
(b) Los teoremas de De Morgan para tres variables'
(c) La ley distributiva de * sobre "
de Venn'
2-4. Repita el Problema 2-3 usando ios diagramas
2-S.simplifiquelassiguientesfuncionesdeBoolealmenornúmerodeliterales.
(d) zx + zx'Y
@) xy + ry'
(b) (x + Y)(¡ + Y') (e) (l + B)'(A' + B')'
(c) ryz * x'Y 1 ryz' (f) Y(wz'I wz)* ry
72 A L G E B RD
AE BOOLE
Y COMPUERTA
LOS GICAS
I
I
I
CAP. 2 I
2-6. Refuzga- las siguientes expresiones
de Boole al número de literales solici_
I
tado al frente de cada una áe ellas.
(a) ABC + A,B,C + A,BC + ABC,
+ A,B,C, a cinco literales
(b) BC + AC' + AB + BCD
a cuatro literales
(c) [(CD| + A], + A + CD + AB
a tres literales
(d) (A + C + DXA + C + D')(A + C' +
D)(A + B') a cuatro literales
Encuentre el complementode las sigui
rentes funciones de Boole y redúzcalas
al mínimo número de literales.
'(a) (BC'
+ A'D)(AB, + CD,)
.(b) B'D + A'BC' +
ACD + A'BC
(c) I@B)'AI[@B),Bl
@)¿n'+ C'D'
2-8. Dadas dos funcionesde Boole F, y
Fr:
(a) Demuestre^quela función
de Boole
función OR a las dos funcionÁ !: F:*F2, obtenida al aplicar la
contiene i" .uiu J. to¿o, los términos
mínimos en F, y F, .
( b ) D e m u e s t r e - q u el a f u n c i ó n
d e B o o l e . G : F ¡ F 2 , o b t e n i d aa l
función AND a las dos funcionesl aplicar la
contiene to. t¿r-i'o. mínimos comunes
a ambas Ft ! F,
2-9. Obtengala tabla de verdad de la siguiente
función:
F:xl+ry,+y,z
2 10' Ex'rese funciones de Boole simplificadas
del problema 2-6 con compuer_
ulas
2-ll. Dada la función de Boole:
F=x!*x,y,*y,z
(a) Expréselacon compuertas
AND, OR y NOT.
(b) Expreselacon compuertas
OR y NOT solamente.
(c) Expréselacon compuertas
AND y NOT solamente.
2-12' simplifique las funciones ?r
J ?, al mínimo número de riterales.
00 r0
00 l0
0l t0
0t 0l
IO 0t
t0 0l
tl 0l
ll 0t
2-13. las siguientesfuncionesen suma
9-*f1....
d . ¡t é r m i n o sm á x i m o s . de términos mínimos y producto
(a) F(A, B, C, D): D(A,+ B) +
B,D
O) F(r, x,y, z) - y,z I wxy, + wxz, * w,x,z
P F O B L E M A S 73
+ C' + D')
'ri'+ B' + CXA! l'XA+ c' + D')
(c) F(A,B, C, D) = (A
* t + c + D'XB
+ C)
(d) F(A, B, C) = (A' + B)(B'
(e) F(r, Y, z) : I
(fl F(x, Y, z) - (ry + z)(Y + xz)
2.L4.Conviertalassigrrientesexpresionesalaotraforma:
(a) F(x,Y,z) = )(l' 3' 7)
2' 6' 11'13't4)
a ,tn, B, c, D):>(0'
(c) F(x, Y, z) : II(0' 3' 6' 7)
2' 3' 4' 6' t2)
(d) F(A, B, C' D) : Ír(0' I'
I" 'f9t11 normalizada?¿Cuál
es Ia dif'erencia entre la forma canónica y
2-15. ¿Cuál
iuiJ'" un¿o'1:Hl;ji ¡ ll,"m"l"i:'ff "l:'""1" iJT;
ó.Iarormap'"'r'''
;;.t;Cuál ós la forma que se obtrel
""iü de Boole de n varia-
de rodos los términos mínimos de una función
, ,a. ;::*a
bles es 1'
para n : ó'
(a) Pruebe la anterior afirmación
para una prueba general'
(b) Sugiera un procedimiento
2-|7'Elproductodetodoslostérminos-á*i.o.deunafuncióndeBooleden
variables es 0'
:'"':"""111,:"""1g"-i3¡;'Á\-¿l'-r"
l;]:ü:n'ilTü,üffi
principioi't'¿i"iir¿iadespuétdt-;;"ütlapárte(b)delProblemaz-ro:
igual a su complemento'
dual de la oR-exclusiva es
2-1g. Demuestre que el a las funciones binarias
la función de, Boole equivalente
2-19. Por sustitución de demuestreque:
definidasen la Tabla 2-6
(a)Losoperadoresdeinhibicióneimplicaciónnosonniconmutativosnl
v aso-
sonconmutativos
y de equivalencia
,r, ilJt:il:ilres oR_exclusiva
ciativos'
(c) El operadorNAND no es asocratrvo'
no son distributivos'
(d) Los o*'"áot"t NOR y NAND l si Ia ma-
digital c'uyasalida es
2-20' Una compuerta mayorista:t:l :i"tito 0' Por medio de
las entradas son l. De ¡uriáa,será
voría de "i;i;;;"i"
¿ ' d e . B o o l elal l función'
u n a t a b l a d e v e r d a d . E n c u e n3t r e , j ' " ñ " . i Simplifique evadaacabocon
de
una compue'ta mayotitaria "tit"átt' lis-
OR-exc!il:" O" 3 entradas z'
!srifique- la-tabla d" yq'd'".dde,l^a,comPlerta de r' 1'y
2-21' Ia lil;"d" las ocho combinaciones
tada en Ia rigura 2-8(c)' Eaga. z - - x @ Y @ z '
E v a l ú ee : r " é i Y luegoF:A O
enpastillas-
¿¿LEl sSIdeTTL vienemavormente
2'22. t^ti:XliltÍ";iXffiilil ;
deeste
Hill'"T
l¿nji*:f,*í,US;:.i;' ;::*Sl¡jl'."i'il;;;st-iila
t";;i;;; tt-tigoit"t" tipo de compuertas?
si
estilo
de 2 entradas'
(a) Compuertas OR-exclusivas
(b) ComPuertasAND de 3 entradas'
{
74 ALGEERA
DE EOOLEY COMPUERTAS
LOGICAS
cAP. 2
(c) Compuertas
NAND de 4 entradas.
(d) Compuertas
NOR d" 5;;;d;,
(e) Compuertas
NAND ,";;;;".
2-23. Demuestreque
I
nná corrpüerta AND de
d" ló;i;;';.üc lógica positiva es
una compuerta oR
224u";"i;-,,,""#'üiirJiliJllli;
cornpue
$j"i,lx..":ñffi:.ñtHtilitt",",""..#fri1
puertas separada
Simplificación de
funciones de Boole
:ffi
3-1 E L M E T O D OD E L M A P A
3-2 M A P A S D E D O S Y T R E SV A R I A B L E S
ma m-
) m1 m o.
L=-Y-
(a) /hr
catenan estos dos números darán el número binario 101, cuyo equivalente
decimai es 5. Qtra manera de mirar el cuadrado ñs: x!,2 es considerar
que está en la fila marcada r y en la columna que petieneceay'z (columna
01). Nótese_que hay cuatro cuadrados donde cada variable ei igual a 1 y
cuatro donde cada una es igual a 0. La variable aparece ,,o tildud"
aquellos cuatro cuadrados donde sea igual a 1 y tiláada en aquellos que "n
sea igual a 0. Por conveniencia, se escribe la variable usando un símbólo
de letra que abarca aquellos cuatro cuadrados donde la primera no esté
tildada.
Para entender la utilidad del mapa en la simplificación de funciones
de Boole, se debe reconocer la propiedad básica que tienen los cuadrados
adyacentes. cualquier par de cuadrados adyacenles en el mapa difieren
por una va¡iable tildada en un cuadrado y no tildada en el otro. por ejem-
plo, m, y m, están en dós cuadrados adyacentes. La variable y
está til-
dada en m5 y no tildada en m7, mientras que las otras dos uaiiable, ,o.,
iguales en ambos cuadrados. A partir de los postulados del álgebra de Boole,
se desprende que la suma de los términos mínimos en cuadiados adyacen-
tes pueden ser simplificados a un simple término AND consistente
en dos
literales. Para aclarar lo anterior, considérese la suma de dos cuadraáás
adyacentes tales como m5 y m7 i
m s - l m ¡ : x J ' ' z+ x y z - x z ( y ' * y ) : xz
Aquí los dos cuadrados difieren en la variable y, que puede ser removida
cuando se forme la suma de los términos mínimos. Así, a cualquier par de
té¡minos mínimos en cuadrados adyacentes a los cuales se le aplica la fun-
ción oR se les causará la remoción de la variable diferente. El siguiente
ejemplo explica el procedimiento para minimizar una función de Boóle con
un mapa.
77
)'
lr- 'A-
t--
0 1 -_Ll
t,
rl¡ tr r'l
t
+
3-1;r'-r'z
Figura 3-4 MapadelEjemplo + xJ-'2:r''\'+ 'x'\''
+ r'l'z'+ xJ-'z'
va y
tl
0 0
i
0 ¡
t , -it
x) | I l_1_.1l r
t
+J
Figura 3-5 Mapadel Ejemplo3-2; x'12+ ¡.r''z'+ xJ'z+ r.t'l,: \.2+ xz,
II A
I
All
t
C
0 I
(
' 1 ' , --t-'-T
lr
t
I Lr
Figura 3-7 l(x, y, z) : X0, 2,4,5,6) : z' * U'
3-3 M A P A D E C U A T R O V A R I A B L E S\ .
t,
ml m"
-t
^z w'x'y':,' w'x'y'z v)'x' y: w ' x ' \
I
m5 m1 m- 0 1 tt'xy' a w'xy'i \9'.xya w'.ryz'
"t
ma
o
m m ^14
II I wxy'a' w-r)'rl w.ry: rrxyl
12 l3 15
(a) ( b.)
ü
I
FS=--
r I
I
0l
1t tr
t_.1 L'
I I
82
l"
r
D
B
CDE
0 I 3) 2 6
ll
'7
) 4
I
il'fi
;.:l
ü
8 9 ll l0 t4 l5 l-t t2 .u
^T
:' il
{
ll 24 25 27 26 30 3l 29 28 q
¡.
t l0 l6 t7 l9 t8 22 23 2l 20 1?
I
E
F
ü
D tI
¡
I
Figura 3-11 Mapa de cinco variables ¡
83
I
fr
I
-/¡
frr
DEF
A B C 000 00r 0l I 010 110 lti 1 0 1 100
,7
000 0 3 2 6 5 4
I
001 8 9 u t0 l4 l5 l3 l2
\C
0lt a1
l5 27 26 30 JI 29 i6
010 l6 17 t9 18 22 l.t 2l 20
ll0 48 49 5l 50 54 )f 53 52
lll )t) 57 59 58 o¿ 63 61 60
'c
r 0 1 40 4l 43 /1
46 Á1
45 44
FF
Figura 3-12 Mapa de seis variables
Número
de
cuadrados Número de literales de un término en un
adyacentes mapa de n variables
F ( A ,B , C ,D , E ) : > ( 0 ,2 , 4 , 6 , 9 ,l l , 1 3 ,1 5 , 1 7 , 2 1 , 2 5 , 2 7 , 2 9 , 3 1 )
F: BE + AD,E + A,B,E,
85
\-D
E
3-5 S I M P L I F I C A C I ODNE U N P R O D U C T O
DE SUMAS
Las funciones de Boore minimizadas, derivadasdel
mapa en los ejemplos
anteriores fueron expresadasen la forma de suma a" pio¿u"tos.
pequeñamodificación se puede obtene¡ el producto con una
¿e'*rnu..
El procedimiento para obtener una función minimizada
en producto
* :"q"r se desprende-de las propiedades básicas de las funciones
Boole. Los unos colocadosen los cuadradosdel ;ó";pise'ta' de
ros tér-
minos mínimos de la función. Los términos mínimos
no incruidos en Ia
función denotan el comprementode una funció.
t ;; i"p."."ntr' en un
mapa por cuadrados no marcados por unos. si au
-"ra"., los cuadrados
vacíos con ceros y se combi.,utr .n cuadruáo, aátr;;;;r""álidos,
se ob-
tiene una expresión simplificada del complementóde la
función es decir
de F'.
.El complementode F' dará de nuevo la función F. Debidoal teorema
generalizadode De Morgan el producto así
obtenido qr"á, automática-
mente en la fornra de producto de sumas. La mejor -"rr"ru-á"
mostrar esto
es mediante un ejemplo.
EJEMPI,-O B-8; Simplificar la siguiente función de Boole
en (a) suma de productosy (b) productó de sumas.
il
I.
in
I'
^\
r--+
l0l
._ 0 OI IE
i] I 3.1
D
I
Figura 3-14 M a p a d e l E j e m p l o3 ' 8 ; F ( A ' B ' C , D \ :
>(0, l, 2, 5, 8, 9, l0) : B' D' + B'C' + A'C' D
: (A' + B'XIC'+ D')<B'+ D)
B' A'
D' B'
,;,
(a) F - . . . 8 ' D-' B ' C ': A ' C ' D lhr F - tA' I B't t(" t l) ¡t.[] Dt
I
00 0l
0 0 I 0
f
11l 0 I
I
1
88
sEc. 3-6 EJECUCION
CON NAND Y NOR 89
primero los unos para cada término mínimo en que la función sea 1. Los
cuadradosrestantesse marcan como ceros. Si por otra parte se da inicial-
mente el producto de términos máximos se puedecomenzarmarcandoceros
en aquellos cuadradosque comprendeIa función; los cuadradosrestantes
se marcan con unos. Una vez que se hayan marcado los unos y los ceros,
la función puede ser simplificada en cualquiera de las dos formas norma-
lizadas. Para la suma de productosse combinan los unos para obtener:
F: x'z * xz'
Para el producto de sumas se combinan los ceros para obtener la función
simplificada del complemento:
F': xz * x'z'
lo cual muestraque la función oR-exclusiva es el complementode la función
de equivalencia(Sección2-6). Tomando el complementode F'se obtiene
la función simplificada en producto de sumas:
p : (x,.* z')(x + z)
F: ( A ' + B , + C ) ( B+ O )
puede colocarseen el mapa obteniendoprimero su complemento:
3-6 E J E C U C I O NC O N N A N D Y N O R
AND-inversor lnversor-OR
OR-inversor AND-inversor
J_{
\q U Q l¡¡
T
'd
.oq
h!
\a uQ k¡
9l
r.s
92 S I M P L I F I c A c I o ND E L A S F U N c I o N E SD E B o o L E CAP. 3
F(t,y, z) : )(0, 6)
F: x'y'z' * xyz'
La función NOR es el dual de la función NAND. Por esta raz6n, todos los
procedimientosy reglas para la lógica NOR son el dual de los correspondien-
tes procedimientosy reglasdesarrolladaspara la lógica NAND.
La ejecución de una función de Boole con compuertas NOR requiere
que la función se simplifique en la forma de producto de sumas. Una expre-
sión de producto de sumas especifica un grupo de compuertas OR para la
j'
t'z
Y00 0l lt i0
0 I 0 0 0 F = r' jJ z' * x!.2'
F-'= x'.v*,rr" # :
"{' 0 0 0
\_YJ
.X
_f
f:'
E
(a)
(h)
rcr
Figura 3-2O Tres manerasde ejecutarF: (A + B)(C + DrE
94
r'
CON NAND Y NOR
EJECUCION
s E c .3 - 6
€er complementaday aplicada
una sola entrada, o compuerta inve¡sora,o
nivel'
áii""t"to""te a la compu;rta NOR de segundo
una segund" ;":";; á; ejecutar la función con compuertas NOR po-
para el complemento de la función
dría ser el usar f" li:91:l:
"" eJecucron
"ü.".1¿"
una ejeiución de dos niveles para F'- y una
á" ."r""r. Esto dará
á" i*" el caso dó necesitarsela salida F normal'
"itJ". "n
P a r a o b t e n e r e l p r o d u c t o d e S u m a s s i m p l i f i c a d o a p a r t i r d eIa
unmapa'
y luego complementar fun-
es necesariocombinai los ceros en el mapa
sumas simplificadas para
ción. para obtener ia erpre.ión en producto de el mapa
;i';;;pl;;ento de la función, es necesariocombinar los unos en
demuestra el pro-
y luego complemen; I" funciór,. El siguiente ejemplo
cedimientopara una ejecucióncon NOR'
EJEMPL|S-10:EjecutarlafuncióndelEjemplo3-9con
compuertasNOR. Pri-
El *;;';; esta tunción se dibuja en la Figura 3-19(a).
para obtener:
mero, se ¿áU"n combinar los ceros en el mapa
F':x'yrry'12
de productos' Se
Este es el complementode la función en suma
la función simplificada en producto
complemenü i:i pur" obtener
desumasdelamaneranecesariaparalaejecuciónconNoR:
F: (x + y')(x' * y)z'
se muestra en
La ejecuciónde dos niveles con compue¡tas.NOR
El término con un solo literal z, requiere una com.
la Figrrra3-21(a).
Esta com-
prárt" Nón d"'""a sola entrada o compuertainversora.
la entrada z a la
puerta puede quitarse Para¿plicar directamente
fntrada de la óompuert-aNOR de segundo nivgl'
partir de la fun-
u"" ."g";á;-?or-u de ejecució.,e. porible a primero
ción en práducto de surnas' Para este caso combínese
los unos en el mapa con el fin de obtener:
F: x'y'z'* xYz'
Número
de
Función a Forma normal Como Ejecutarse niveles
Caso simplificar de usar derivarla con de F
3-7 O T R A S E J E C U C I O N E SC O N D O S N I V E L E S
!-
(a) AND-cableado en compuertas NAND (b) OR-cableado en compuertas ECL
TTL de colector abier¡o
(AND.ORINVERSOR) ( O R . A N DI N V E R S O R )
Figura 3-22 Lógica de cableado
r : ( A + B ) ,+ ( C + D ) ,: l ( A + B ) ( C+ D ) 1 ,
Formas no degeneradas
AND-OR OR-AND
NAND-NAND NOR-NOR
NOR.OR NAND-AND
OR-AND AND.OR
97
98 S I M P L I F I C A C I OD
NE L A S F U N C I O N E S
DE BOOLE CAP. 3
E j e c u c i ó nc o n A N D - O R i n v e r t i d a
F: (AB + CD + E)'
E j e c u c i ó nc o n O R - A N D i n v e r t i d a
F : l ( A + B ) ( C+ D ) E ) ' ,
Q
-1-
IA
v\
é:kffi
l\
z.=
zY
^z
--
u0
z
z
(!
¡
ll
,:
v \
;l
r
;!
t{ l1
f
IJ
99
I I
+
z:-
ia
+
U
+
-
E
49
z
xz
$
N
¡r
D'
z?
z
too
sEc.3-7 O T R A SE J E C U C I O N ECSO N D O S N I V E L E S I O I
(a,l (b)*
*La forma (b) requiere una compuerta NAND de una ent¡ada a una NOR (inversor) para
el término de un solo literal.
F':x'y*ry'*z
F:(x'y*ry'*z)'
AND-NOR NAND-AND
( a )F = ( - r ' r*, , r r ' ' * : ) '
)'
Z
-r
)'
z
OR.NAND NOR-OR
( b ) . r : = [ ( " x1 -. t ' * z ) ( x ' + 1 ' + : ) ) '
F: x'y'z'* ryz
En seguidase toma el complementode la función:
F,:(r*y*z)(x,+y,*z)
d(w, x, y, z) : >(0, 2, 5)
t03
"yi ya
00 01 ll l0 00 0l
)1 ,f
ñ.t l
X
i- -l X 0( it I X
0l 0
r _'J 0 I 0 0
t
0 0 0
lr'1
I I
tr ol 0
0 0 I 0 ll loi
_f
0l io
3-10 DETERMINACIO
DNE LOSPRIMEROS
IMPLICADOS*
F: ) ( 0 , 1 , 2 , 8 , 1 0 l, l , 1 4 ,1 5 )
*
Esta sección y la siguiente pueden ser omitidas sin perder continuidad.
105
/06 S I M P L I F I C A C I ODNE L A S F U N C I O N E D
SE B O O L E CAP, 3
g i*'"tl,l;13:,x11""1-?i"i::?\?$"
ffit*'#'";';fi
\ (b) de la tabla. La variable eliminada durante el proceso de apa-
reamiento se remplaza por un guión en su posición original. En
1000 2, l0 -0 r 0 v
8, l0 l0-0 f
l0 1010 \/
t0,ll l0l
ll l0ll v 10,14 l - l 0v
t4 lll0 \/
It. 15 r-l r v
15 llll \/ 1 4 .l 5 l l l - \/
S E C .3 . 1 0 D E T E R M I N A C I ODNE L O S P R I M E R O S
I M P L I C A D O SI O 7
F:w'x'y'*x'z'*wy
II
il tl I
t''{
Tl
I'o
l L' tr
7
ll, l5 (4)
illl 15v
\
Binario
Decimal uxYz Términos
1 , 9( g ) _U 0l
4,6 (2) 0l -0 w'xz'
6 , 7( t ) 0l l- w'xy
7, 15(8) -t tl xyz
r l , 1 5( 4 ) l- lt wyz
8 , 9 , 1 0 ,I l ( 1 ,2 ) l0 wx'
00
!_l
0 't
.I t;
t-
,J' I
Ll_l
I' I
3-11 S E L E C C I O ND E L O S P R I M E R O S I M P L I C A D O S
l0 ll
f x'v'z l,9
n/w'xz' 4,6 X
tp'xy 6,7 X X
xyz 7 t5 X X
wyz I l, l5 X X
v wx' 8,9,10,11 X X
3-12 O B S E R V A C I O N E SC O N C L U Y E N T E S
0l
Y
00 0l ll l0 00 0 +
i 0 2 6 0l 5
I
zf 1
I '7
I J 7 5 lil J
L -v-'l
l
q_J
v
I'o 2 6
(a) (b)
A
AB __j_
CD 0 0 0l ll l0
0 q t2 8 t2 t4 6
,{
.{
0t
n
l0
3
2
5
!----y-
--..-Y-
IJ
l5
l4
9
il
l0
i l3
8
\-J
ll
t0
7
J
5
0
l
BC
(a) (b)
Figura 3-30 Variaciones del mapa de cuat¡o variables
tt4
S E C .3 - 1 2 CS
OBSERVACIONE O N C L U Y E N T EISI 5
R E F ER E N C I A S
1 . Veitch, E. W., "A Chart Method for Simplifuing Truth Functions". Proc. of the
ACM (mayo 1952),127-33.
Karnaugh, M., "A Map Method for Synthesisof CombinationalLogic Circuits".
Trans. AIEE, Comm. and Electronics,Vol. 72, Parte I (noviembre1953),593-99.
Quine, W. V., "The Problemof Simplifying Truth Functions".Am. Math. Month'
ly, Vol. 59, No. 8 (octubre1952),521-31.
^ McCluskey, E. J., Jr., "Minimization of BooleanFunctions". BeII System Tech.
J., Vol. 35, No. 6 (noviembre1956),1417-44.
F
Humphrey, W. S., Jr., Switching Circuits with Computer Applícations. Nueva
York: McGraw-Hill Book Co., 1958,Capítulo 4.
6 . Hill, F. J., y G. R. Peterson,Introduction to Stl)itchingTheory and Logícal De-
sign,2a. ed. Nueva York: John Wiley & Sons,Inc., 1974,Capítulos6 y 7.
s r M p L t F t c A c t oDNE F U N c t o N EDs E B o o L E cAP.3
!16
{ohav-i, 2., suitching and Finite Automata Theory. Nueva york: McGraw-Hill
Book Co., 1970.
N a g l e ,H . T . J r . , B . D . c a r r o l , y J . D . I r w i n , A n I n t r o d u c t i o n t o c o m p u t e rL o g i c .
EnglewoodCliffs, N.J.: Prentice-Hail,Inc., 1925.
PROBLEMAS
obtenga las expresionessimplificadas en suma de productos de las s-iguien-
tes funcionesde Boole;
(a) F(x, y, z) : >(2, 3, 6,7)
@ ) F ( A , B , C , D ) : > ( 7 , 1 3 ,1 4 ,1 5 )
( c ) F ( A , B , C , D ) : > ( 4 ,6 , 7 , 1 5 )
( d ) F ( w ,x , y , z ) : 2 ( 2 , 3 , 1 2 ,1 3 ,1 4 ,1 5 )
3-2. obtenga las expresionessimplificadas en suma de productosde
tes funcionesde Boole:
(a) xy + x'y'z' * x'yz'
(b) A'B + BC' + B'C'
(c) a'b' I bc * a'bc'
(d) xy'z I ryz' * x'yz * ryz
obtenga las expresionessimplificadasen suma de productosde las siguien-
tes funcionesde Boole:
(a) D(A', + B) + B'(C + AD)
( b ) A B D + A ' , C ' , D '+, A ' B + A ' C D ' + A B ' D '
(c) k'lm' * k'm'n + klm'n' I lmn'
( d ) A ' B ' , C ' , D '+, A C ' D ' + B ' C D ' + A ' B C D + B C ' D
(e) x'z * w'ry' + w(x'y + xy')
3 - 4 . Obtenga las expresionessimplificadas en suma de productosde las
siguien-
tes funciones de Boole:
(a) F(A, B, C, D, ¿/ : >(0, 1,4, 5, 16,t7,21,25,29)
(b) BDE + B'C'D + CDE + A'B'CE + A'B'C + B'C'D'E'
( c )A ' B ' C E ' + A ' B ' C ' D ' + B ' D , E , + B , C D , + C D E , + B D E ,
J-O. Dada la tabla de verdad:
000 0 U
001 I 0
010 I 0
0ll 0 I
100 I 0
l0l 0
ll0 0
ltl I
Il" ' R O B L E M A S| | 7
3-12. Ejecute las siguientes funciones con compuertas NOR. Asuma que se cuen-
ta con las entradasnormal y complementada.
(a)AB'+ C'D'+ A'CD'+ DC'(AB+ A'B')+ DB(AC'+ A'C)
b ) A B ' , C D ' , + A ' , B C D ' , +A B ' , C ' , D+ A ' , B C ' , D
3-13. Haga una lista de las formas degeneradasde dos niveles y demuestreque se
reducen a una sola operación. Explique cómo las formas degeneradasde dos
niveles pueden ser usadas para aumentar el fan-out de las compuertas.
3-14. Ejecute las funciones del Problema 3-9 con las siguientes formas de dos ni-
v e l e s :N O R - O R , N A N D - A N D , O R - N A N D y A N D - N O R .
3-15. Simplifique las funcionesde Boole F en suma de productosusando las con-
diciones de no importa d;
(a) F: y' + x'z'
¿l: yz * rl
o ) F : B ' , C ' , D ' , +B C D ' + A B C D '
d: B'CD' + A'BC'D
CAP.3
, i ( t , S i m p l i l i q u ei ¿ rl u u c , ¡ i r rd e B o o l eI i u s a n d ol a . ; c o n d i c i o n e (sl ¿ n o i m p o r t ad e n
i l r s u r l a d e 'p r o d u c t o sy ( 2 ) p r o d u c t od e s u m a s :
( a ) F : A ' B ' , ' . - . 4 ' C D+ A ' B C
d: A'BC'L,+ACD I AB'D'
O) .F : w'(x'y * x'!' + 4t¿) + x'z'(y + w)
d: w'x(y'z + yz') + nyz
lc) F: ACE + A'CD'E'+ A'C'DE
d: DE' + A'D'E + AD'E'
(d)F: B'DE'+ A'BE + B'C'E'+ A'BC'D'
d: BDE' + CD'E'
: l - 1 ; . l l j e c u t . el a s s i g u i e n t e sl u n c i o n e su s a n d ol a s < , , l d i c i o n e sd e n o i m p o r t a . A s u -
m a q u e s e c u e n t ac o n I r r se n t r a d a sn o r m a l e s ' , s u s t t t m p i e m e n t o s .
( a ) F : A ' B ' C ' + A B ' D + A ' B ' C D ' c o n d o s c o m p u e r t aN s OR a lo sumo.
d: ABC+ AB'D'
(b) f = U + D)(A'+ B)(,1'+ C') c o n t r e s c o m p u e r t a sN A N D a l o s u m o .
(c) f': B'D + B'C + ABCD c o n c o m p u e r t aN
s AND.
d:A'BD+AB'C'D'
BL + B'DE'
e s l a v e r s i ó ns i m p l i f i c a d ad e l a f i r n c i ó n :
S u g e r e n c i c tV
: e¡ el Problema 2-8(b).
: l - 2 2 . S i m p l i f i q u e l a f ' u n c i r j nd e B t x ¡ l e d e l P r o b l e m a S - 2 ( a ) u s a n d o e l m a p a d e f i n i d o
en ia l'igura il-29(a). Repita el ejercicio con el mapa de la Figura 3-29(b).
I I9
PROBLEMAS
3-24. Simplifique las siguientesfuncionesde Boole por medio del método del ta-
bulado.
(;a)F(4, B, C, D, E, F, G): >(20,28,52,60)
(b) F(A, B, C, D, E, F, G) : >(20, 28,38,39, 52, 60, r02, 103,127)
( c ) F ( A ,B , C , D , E , F ) : > ( 6 , 9 ,1 3 ,1 8 ,1 9 , 2 5 , 2 1 , 2 9 , 4 1 , 4 5 , 5 7 , 6 1 )
4-1 INTRODUCCION
Los circuitos lógicos para los sistemas digitales pueden ser combinacio-
nales o secuenciales.Un circuito combinacional consiste en compuertas
lógicas cuyas salidas se determinan directamente en cualquier momento
de la combinación presentede entradas sin tener en cuenta las entradas
anteriores. Un circuito combinacional realiza una operación de procesa-
miento de información específicacompletamentelógica por medio de un
conjunto de funciones de Boole. Los circuitos secuencialesusan elemen-
tos de memoria (celdas binarias), Además de compuertas lógicas. Sus
salidas son una función de las entradas y del estado de los elementosde
la memoria. El estado de Ios elementosde Ia memoria, a su vez es una
función de las entradas previas. Como consecuencia,Ias salidas de un
circuito secuencial dependen no solamente de las entradas presentes,
sino también de las entradas pasadas,y el comportamientodel circuito
debe especificarsepor una secuenciade tiempos de las entradas y estados
internos. Los circuitos secuencialesse discuten en el Capítulo 6.
En el Capítulo 1 se aprendió a reconocerlos númerosy códigosbina-
rios que representan las cantidades discretas de información. Estas va-
riablei binarias se representan por medio de voltajes eléctricos o por
cualquier otra señal. Las señalespueden ser manipuladas por compuertas
Iógicásdigitales con el f,rn de ejecutar las funcionesdeseadas.En el Capí-
tulo 2 se lntrodujo el álgebra de Boole como vehículo para expresaralge-
braicamente funciones lógicas. En el Capítulo 3 se aprendió a simplificar
las funciones de Boole para lograr ejecuciones con compuertas de tipo
económico.El propósito de este capítulo es el de usar los conocimientos
adquiridos en los Capítulos anteriores y el de formular varios diseños
sisfemáticos y procedimientos de análisis de los circuitos combinacio-
nales. La solución de algunos ejemplos típicos dará una recopilaciónútil
de funciones elementales importantes para Ia comprensión de computa-
dores digitales y sistemas.
Un circuito combinacional consisteen variables de entrada, compuer-
tas lógicas y variables de salida. Las compuertaslógicas aceptan señales
120
n variables m variables
de entrada de salida
4-2 DE DISEÑO
PROCEDIMIENTO
1. Se enuncia el problema.
2. se determina el número requerido de variabres de entrada v el nú-
mero requerido de variables de salida.
3. Se le asignan letras a las variables de entrada y salida.
4. se deduce la tabla de verdad que define las relaciones entre las
entradas y las salidas.
5. Se obtiene la función de Boole simplificada para cada salida.
6. Se dibuja el diagrama lógico.
$
**
!
i
F
S E C ,4 ' 3 S U M A D O R E IS2 3
4-:i SUMADORES
Sumador medio
i ) t , I a r : x p l i c a c i ó nv e r b a l d e l s u m a d o r m e d i o s e e n c u e l r l r aq u e e s t e t ' i r t r t i i , ,
¡ecesita dos entradas binarias y drrs salidas binarias. Las varialtles cle
e n t r ¿ r d ad e s i g n a n l o s b i t s d e l o s s u m a n d o s , l a s v a r i a l l l e s d e s a l i d a l t r o c i u -
cen la suma v el bit dc arrastre. Es necesario especificar dc¡sr'¿triabk's
d e s a l i d a p o r q u e e l r e s u l t a d o p u e d e c o n s i s t i r d e d o s d í g i t , r s l ¡ i n ¿ r r i o s .S e '
a s i g n a n a r b i t r a r i a m e n t e l o s s í m b o L r s . I ] ' . 1 a l a s c l l " t ' n i r a d ¿ l s ,\ ' ( p a r a i ¿ r
s u m a ) ¡ ' C ( p a r a e l b i t d e a r r a s t r e i p a r ¿ il a s s ¿ r l i d a s '
U n a v e z q u e s e h a y a e s t a b l e c i d oe l n r i m e r r, 1 ' 1 , , 1 ,¡ r o n r l t r e sd e l ¿ t st , , r -
r i a b l e s d e e n t r a d a y s a l i d a s e e s t á l i s t o p a r a f r r r i ¡ i u i ¿ t il a t a b l ¡ d e r . e r r l . r t i
p a r a i d e n t i f i c a r e x a c t a m e n t e l a f ' u n c i ó n d e l s u m a t l ¡ r r n r e d i o . E s t a l ¿ r i , i'
de verdad se muestra a c'ontinuación:
(t 0
0 0
I 0
I 1
tll bit de arraslr* e:. r) ¿r n(; ser qrte ambas enl u l. l,,i ;,t.id.,
r e p r e s e n t ae l b i t n r e n , l s" i g n i f i c a t i v o d e l a s u m a .
.l -fl-
)' --L-/ l__ñ
x' -t'
IH
)"
'--ñ (-l-
j'1_/
tT - -L
] 1J
(a) .l : .r)' : .r') (b) J - (r -,-.v)(r' { -y')
C=xl C: .r)
.I r
.t
c;"
(c) S-(C*¡'y')' (d) S.(¡f r)'(.r'*r')
C:xy ¿-:1-r',',v',)',
n'N
=i,*'
Figura 4-2 Varias configuracionesdel sumador medio
Las funciones de Boole simplificadas para las dos salidas pueden ob-
tenerse directamente de una tabla de verdad. Las expresionessimplifica-
das en suma de productosson:
S: x,y i ry,
C: xY
Sumador comPleto
que forma la suma
Un sumador completo 'bit. es un circuito combinacional
aritmética de treÁ d" entrada. Este consiste en tres entradas y dos
salidas. Dos de las variables de entrada denotadas por I y y representan
los dos bits significativos que se aglegan. La tercera entrada z representa
el bit de arraslre de la poiición previa menos significativa' Se necesitan
dos salidas porque la suma aritmética de tres dígitos binarios varía en
valor de 0 a-3 y-los binarios 2 ó 3 necesitandos dígitos. Las dos salidas se
designanpor lós símbolosS para la suma y C para el bit de arrastre. La
variáble binaria S da el valor de la suma del bit menos significativo' La
' variable binaria C da el bit de arrastre de salida. La tabla de verdad del
sumador completo es como sigue a continuación:
000 00
001 01
010 0l
0ll l0
100 0l
l0l l0
110 l0
lll ll
Las ocho filas debajo de las variables de entrada designantodas las com-
bi*.ione. posibles <le unos y ceros que pueden tener esas variables' Los
V d" las variables-de salidá se determinan por la suma aritmé-
tica de los bits de entrada. Cuando todos los bits de entrada sean ceros'
""o. ""ro,
la salida es cero. La salida S es igual a 1 cuando solamenteuna entrada
I
.{ 0 0 0r r 0
0 I
f .ll
I
es igual a I ó cuando todas las tres entradas sean iguales a uno. La sali-
da c tiene un bit de arrastre de I s,i dos de las tres"entradas son iguales
.. 1
c¡ t.
t26
E
1,ff
F
$
Í'
t-
ii
il
it
i1
it
ii
t:l
i1
*t
FI
b
&i
S: z O (r Oy)
: z'(x/' + x'y) I z(xy' * x'y)'
: z'(xt' + x'y) + z(xy + x'y')
: xy'z'+ x'yz'* xyz* x'y'z
y el bit de arrastrede salida será:
C: z ( x y ' + x ' y )* x y : x y ' z * x ' y z i x y
4-4 SUSTRACTORES
127
128 LOGTCA
coMBtNACtONAL
cAP. 4
al siguiente par de bits mayorgs por
medio de Ias señaresbinarias que
vienen (salida) de un estadl a"gá-y
van al (entrada) siguiente estado
mayor' De la misma manera que hay
sumadores;;Ji*'y completos.Hay
sustractoresmediosy completos.
S u s t r a c t o rm e d i o
00 0
0l I
l0 0
ll 0
L a s a l i d ap r e s t a d aB : : 0 . s i e m p r e y c u a n d o
x . 2 y . S e r ál p a r a ¡ : 0 y y : 1 .
La salida D es el resultado¿" iu oóurucrón
aritméti ca 28 + x _ y.
Las funcionesde B-oolepurá la, ao,
,unaá, o.r lur,ru.tor medio se
derivan directamentede la tabia de ueraad,
D: x,y | ry,.
B: x'y
Es interesantenotar g"g
J" lógica para D es exactamentela misma que la
lógica para Ia salida S ¿"1 ."riuaoi-.Ai".
sustractor completo
000 00
001 ll
010 lt
0ll l0
i
100 0l i
l0l 00
ll0 00
lll ll
Las ocho filas debajo de las variables de entrada designantodas las com-
binacionesposiblesde unos y cerosque puedenadoptar las variablesbina-
rias. Los unos y ceros para las variables de salida se determinan por la
resta de x -y - z. Las combinacionesque tienen entrada prestada z:0
se reducena las mismas cuatro condicionesdel sumador medio. Para ¡:0,
y:0 y e: 1 es necesarioprestar un 1 del siguiente estado, lo cual hace
B : \ y a g r e g a2r a x . Y a q u e 2 - 0 - 1 : l , D : 1 . P a r a¡ : 0 y y z : l 1 . , e sn e c e -
s a r i op r e s t a rd e n u e v oh a c i e n d oB : l y x:2.Ya que2-1-1:0. D:0.
P a r ar : I y y z : 0 1 , s e t i e n er - y - z : 0 l o c u a l h a c eB : 0 y D : 0 . F i n a l -
m e n t ep a r a¡ : l y y : I , z : 1 s e t i e n eq u ep r e s t a r1 , h a c i e n d B o :ly x:3
p a r a 3 - 1 - 1 : t h a c i e n d oD : I .
Las funciones de Bpole simplificadas para las dos salidas del sustrac-
tor completo se derivan de los mapas de la Figura 4-6. Las funcionessim-
plificadas en suma de productosserán:
0 0
-R
; 0 tr I r tl
L{---++ -I
l-
t.
r'{ I I
f
¡{l
t I
+
7. 7.
4.5 C O N V E R S I OENN T R EC O D I G O S
Entrada Salida
BDC código exceso3
0 0 00 0 ll
0 0 0l 0 00
0 0 t0 0 0l
0 0 ll 0 r0
0 00 0 tl
0 0l I 0 00
0 l0 I 0 0l
0 ll I 0 l0
I 00 I 0 ll
I 0l I I 00
!
S E C .4 . 5 CONVERSIO C O D I G O SI 3 I
ENTRE
r
F
C
CD -ll 'lo- CD
AB OO ol LB 0
00 lt I 00 r-l ta
01 I I
II
t)
I
( lB
^l' x X ^
]' ^j ll X
lx
^ I
I
I' l_l X I
l-r L
D D
D' \'-CD iC'D'
L
CD CD
B B 00 0l ll
I lll
-T
rl
I f-
f I
0l
I 'l it
I
,l
AI
t
I
[.]
Ir ^
I
=
lxl
'\
rl
J'^u ll ^
I
^
I
A
^
I'
D D
t B'C - I]'D BC'D' v¡'-. A BC BD
z: D',
y: CD + C'D' : CD + (C + D\,
X: B'C + B'D + BC'D' : B'(C + D) + BC'D'
: B'(C + D) + B(C + D),
w:A+BC+BD:A+B(C+D)
Fz:AB+AC+BC
Tt:A+B+C
TZ: ABC
Tt: FiT,
F': T' + T'
La función de Boole de salida F, está ya expresada como una función de
las entradas solamente. Para obtener F, comó función de A, B y c se for-
man una serie de sustituciones como sigue a continuación:
A
B
C
A
B
(-
B
C
nocer una operación familiar. Para este ejemplo nótese que el circuito es
un sumador completo, con Fr siendo Ia suma de salida y Fz el bit de
arrastre de salida. A, B y C son las tres entradas sumadas algebraica-
mente.
La derivación de la tabla de verdad para el circuito es un proceso di-
recto una vez que se reconozcan las funciones de Boole de salida. Para
obtener la tabla de verdad directamente del diagrama lógico sin pasar por
las derivaciones de Ias funciones de Boole, se procede de la siguiente
manera:
F2 Tl T3 Fl
000 0 000
00r 0 0ll
010 0 0ll
0tl I 0 000
r00 0 I 0ll
l0l I 0 000
rt0 I 0 000
lll I 0 r0l
r
Estas salidas pueden derivarse por medio del método del análisis de la
tabla de verdad esbozado en esta sección. En este caso particular, las sa-
lidas pueden obtenerse directamente de los mapas de la Figura 4-7. por
inspección de los mapas, se determina cuando las X en los iuadrados de
los términos mínimos correspondientes a cada salida, han sido incluidos
como unos o ceros. Por ejemplo, el cuadrado del término mínimo m,6 (1010)
se ha incluido con los unos para dar salidas w, x y z pero tro paü y. por
tanto, las salidas para mro son wxyz:1101 tal como están listadas en la
tabla anterior. Se nota que las primeras tres salidas en la tabla no tienen
significado en el código de exceso 3 y por lo menos tres salidas correspon-
den al decimal 5, 6 y 7 respectivamente. Esta coincidencia es totalmónte
una función de Ia escogencia de X durante el diseño.
4-7 C I R C U I T O SN A N D D E M U L T I N I V E L
Compuerta universal
NOT (inversor)
AND
: * u
( A ' , B ' ) ' ,A oR
F: A ( B + C D )+ B C '
R
(''
(a) ConfiguraciónAND-OR
C
D
B
('
Figura 4-ll C o n f i g u r a c i ód
ne I ' : A ( B + ( ' l ) t t B ( ' c o n c o m p u e r t aN
s AND
IJJ
(a) ConfiguraciónAND-OR
(c) ConfiguraciónNAND
F:(A+B,)(CD+E)
P r o c e d i m i e n t od e a n á l i s i s
El procedimiento anterior considera el problema de derivar un diagrama
togico NAND de una función de Boole dada. El procesoinverso es el análi-
siJdel problema que comienza con un diagrama lógico N4ND dado y que
culmina con una expresiónde Boole o una tabla de verdad. El análisis de
los diagramas lógicoi NAND sigue el mismo procedimientopresentado.en
la Secc-ión4-6 pára el análisis de los circuitos combinacionales.La única
diferencia -se NAND requiere una aplicación repetida-del teo-
qul la lógica
"t
rema de De Morgan. demostrará la deducción de la función de Boole
a partir de un dlagrama lógico. Luego se demostrará la deducción de la
taÉla de verdad diiectamente del diagrama lógico NAND. Finalmente, se
presentará un método para converti¡ u¡r diagrama lógco- NAND a un dia-
gr"*u lógico AND-OR por medio de la manipulación de un diagrama de
bloque.
5
f
Tabla 4-3 Tabla de verdad para el circuito de la Figura 4-13
T2 T3 T4
0000 0 l0
0001 0 l0
0010 0 l0
00ll I l0
0100 I ll
0101 I ll
0ll0 I l0
0lll I l0
1000 0 l0
l00l 0 l0
l0l0 0 t0
l0ll 0 0l
ll00 I 0l
ll0l I 0l
lll0 I 0l
llll 0 0l
l
I AB
00
0l
Il'
I
t Figura 4-14
D
F:AIJTI.JC,_ACt)
,1-\a
B--------{ *-¡ ABC i A---{ - B' - C
c----l_J é--4_z )-¿'
, ,nurr'
(a) AND invertido (b) OR invertido
4.8 C I R C U I T O SN O R D E M U L T I N I V E L
D'
l B'.
A
B
B'
A
B
( c ) Diagrama lógicoAND-OR
NOT (inversor)
¿---l ffA'
t
A: B OR
C o n f i g u r a c i ó nd e l a s f u n c i o n e sd e
Boole_
Método del diagrama de bloque
u
C'
(a) ConfiguraciónAND-OR
Sustituyendolas funcionesNOR
equivalentesde la Figura 5-19
^
B,
C
(c) ConfiguraciónNOR
c i e n d o u n a l i s t a d e l a s n v a r i a b l e s c o n 2 ' f i l a s d e u n o s y c e r ose
s . Ldeducen
atabla
compu-ertasNoR
de verdad de las ,piiá", de las diferentes
en cadena hasta obtenrri"Lui" de verdad de salida. La función de salida
de una compuertaNOR trpü;, ¿r lu forma T : (A+ B', +C)" de tal ma-
;;t;^*; üiutru ¿. para T se m.arca con un 0 para aquellas combi-
".ia"á : las filas se llena con unos.
nacionesen que A:l 6¡: ó ¿ c \.El restode
T r a s f o r m a c i ó nd e l d i a g r a m a d e b l o q u e
lógico
para convertir un diagrama lógico NOR a su equivalente diagrama
NOR mostrados en la
AND_OR, se usan ior"i-iofor"para las "o-pr*itu* compuerta NOR
símbolo noimal para una
Fizura 4-1g. La OR i"";id"
;'i;';,Ñó"f;;td;-;;-;;;
". "l
alternativa convenienle que utiliza el teorema
que
á.'b;^Iü'";;-;l; convención de pequeños círculos en las entradas
denotan comPlementación'
diagramaAND-OR se
La conversiónde un diagrama lógico NOR a un
logra ¡xrr medio ¿u I"Jü;; l;. .i-bolo. de OR invertida a AND inver-
"" y en niveles alternos' Los pares de
tida comenzando ,rr-"i rifti-o nivel
c í r c u l o s p e q u e ñ o s " n r r t t " m i s m a l í n e a s e e l i m i n a n ' s e q u i t a n l a s c círculo
ompuer'
que tengan un'pequeño
tas AND u OR de una .ola entrada a no ser
en un lnversor'
a t salida o a Ia entrada, en cuyo casose convierten el diag¡ama
Este procedimiento se muestra en la Figu'7!-?\tld"
Elsímbolo para la
lógico NOR en t"l *-"ár*ierte a un diagrami¡,NO-On. Al observar
."-ñiu a un AND invertida'
;;"";;;;;-""
"f',iiti-á "l""liál.u en el nivel 3 y dos en dl
los diferentesniveles, se encuentrauna "o-p""*"
un cambio de símbolos como se muestra
nivel 1. Estas comp-iertas sufren Los
línease remueven.
en (b). cualquierp;; il circulosen una misma
quitansiemprey cuandosehayan
círculosquevan a entradasexternasse La compuerta
;;;;ü*;;lado las variablesde entradacorrespondientes,
e n e l n i v e l s s e c o n v i e r t e e n u n a c o m p u ebuscado,
rtaAND sedmuestra
e u n a s oen
l alae n t r a d a
tanto se elimina.El diagramalógicoÁÑó-on
Figura4-20(c).
4-9 OR EXCLUSIVA
LAS FUNCIONES
Y DE EOUIVALENCIA
ivav.deequ
La oR-exclus iv"l'-Y:, X1 ffiHi:" ffitl;
;"
|e, binarias
oPeraciones
$".1"ff
que realt: #:"3.t"?.
xOY:ry'+x'Y
xOY:ry*x'Y'
C'
D'
C'
D'
B
C'
(c) Diag¡ama lógico AND-OR
Las dos operaciones son complementos entre sí. Cada una de ellas es aso-
ciativa y commutativa. Debido a las dos anteriores propiedades, una
función de tres o más variables, puede expresarse sin paréntesis de la
siguientemanera:
(A @B)o c: A@(B e c) : A @B @ c
A@
Boce,
+A,
1,,u, ',,(cD,
+c,D)
:v,iii,1,4,ii,í:i,'
re)
0l I 0l I 1
I
lu
^1
I I ll I
l
I
D D
F-AaBfiCeD F .= A ABOCAD
(4, (b)
( A o B o c ) ' : A o B @c
I
All I All
t t
C L
(a) l:-A@B0c: AaBa,c (bl F: A@B'..C : A rBOC
p:xOy@z
Bit de paridad
generado
P
C: xOYOzOP
00 I
0t 0
t0 0
ll I
00 0
0l I
l0 I
ll 0
00 0
0l I
l0 I
ll 0
00 I
0l 0
10 0
ll I
REFERENCIAS
PROBLEMAS
154
I
H
'l
PROBLEMAS I 55
fr
il
(a) Obtenga Ia tabla de verdad.
ii
(b) Encuentre la función de salida simplificada en suma de productos'
(c) Encuentre la función de salida simplificada en producto de sumas.
(d) Dibuje los dos diagramas lógicos'
y gene-
4-2. Diseñe un circuito combinacional que acepte un número de tres bits
re un número binario de salida igual al cuadrado del número de entrada'
bits para
4-3. Es necesario multiplicar dos números binarios, cada uno de dos
en binarios. Asuma Ios dos números representados por
formar su producto
at, ao ! ó,, b,, donde el suscrito 0 denote el bit menos significativo'
(a) Determine el número de líneas de salida necesarias'
(b) Encuentre las expresiones de Boole simplificadas para cada salida.
producto) de los dos
4-4. Repita el Problema 4-3 para formar la suma (en vez del
números binarios.
que repre-
4-5. Diseñe un circuito combinacional con cuatro líneas de entrada
que generan el
senten un dígito decimal en BDC y cuatro líneas de salida
complemento de 9 del dígito de entrada'
de cuatro bits
4-6. Diseñe un circuito combinacional cuya entrada es un número
y cuya salida es el complemento de 2 del número de entrada'
por 5 una entrada en dí-
4-7. Diseñe un crrcuito combinacional que multiplique
gito decimal representada en BDi. La salida debe ser también en BDC.
Demuestre que las salidas pueden obtenerse de las líneas de entrada sin
usar ninguna compuerta lógica'
la representaciór
4-8. Diseñe un crrcuito combinacional que detecte un error en
lógico
de un dígito decimal en BDC. En otras palabras obtenga un diagrama
las entradas tengan una combinación poco
cuya .alida sea lógica 1 cuando
usual en el código.
medios y una com-
4-g. configure un sustractor completo con dos sustractores
Duerta oR.
4-10. Demuestre cómo un sumador completo puede ser conveitido a un
sustractor
completo con Ia adición de un circuito inversor'
a
-l -t
rll s l l, | | lo -l _l t_ l: I_-tt--l
ll I t_tll _r_l
.l , l. lc _l
(b) Designación numérica para el tablero numérico
(a t Designación de segmentos
Figura P4-14
Figura P4-15
C:xl+xz+yz
S.:C'(x+y+z)+ry2
B
Figura P4-20
(b)
Figura P4-21
157
I58 LoGIcAcoMBINACIoNAL CAP. 4
F: A B , C D , + A , B C D ,+ A B , C , D + A , B C , D
con compuertasOR-exclusivav AND.
*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
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
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'
P,: A,@ B,
G,: A,B,
S,:4Oq
C¡*t: Gi + PiCi
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
5-3 S U M A D O RD E C I M A L
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
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
5-5 DECODIFICADORES
*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
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
,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
Dz: x'Yz'
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.
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.
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
Demultiplexores
Do Do
decodificador Dl demultiplexor Dl
2x4 2x4
D2 u2
D3 t)-
E
Act ivación
Selección
(a) Decodificador con activado¡ (b) Demultiplexor
178
I-
:a
,i
sEc.5-5 I79
DECODIFICADORES
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
t : D2i_D'* Dul O,
z: D1lDrl D5l D,
'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
Selección
( c ) Diagrama de bloque
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)
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
(c ) Tabla de configuración
Io
/r MUX
Io It 12 13
r.
, 4xl
C, 0 : 4-7d
C coot 13 Jr Jo
ll
t.
MLjX
r, r )
8r I
l1
A, I,
A
It,
/r .f: \l .!r,
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
5-7 M E M O R I AD E S O L O L E C T U R A( R O M )
n entradas
¡n salidas
Términos mínimos
Direccción de entrada
0
I
2
decodificador
5x32
128 enlaces +
Fr f1 13
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
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
:.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
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
5-8 L O G I C OP R O G R A M A B L(E
ARREGLO PLA)
(!
.ir
!6
\o
a .-/
6É
;:-
6o
<?
F¡ O.
qE
)!z :
Tó
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
Fz: AC + BC
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
AB, I 10 1
AC l ll l1
3 1l -l
BC
TT TiC
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
CT ttL
5-9 N O T A SC O N C L U Y E N T E 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 .
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:
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)
204
,
P R O B T E M A S 205
^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
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'
t
á
Lógica
secuencial
I
I
t,l
6- 1 INTRODUCCION
Los circuitos digitales hasta ahora consideradoshan sido combinacio-
nales, es decir, las salidas en un instante dado de tiempo son enteramen-
te dependientes de las entradas presentes en ese mismo tiempo. Aunque
cada sistema digital debe tener circuitos combinacionales,la mayoría de
los sistemas encontradosen la práctica incluyen también elementos de
memoria, los cuales requieren que el sistema se describa en términos de ¡
la lógica secuencial.
Un diagrama de bloque de un circuito secuencialse muestra en la
Figura 6-1. Este consiste en un circuito combinacionalal cual se le co-
nectan elementosde memoria para formar un camino de realimentación.,
Los elementosde memoria son capacesde almacenar información binaria
dentro de ellos. La información binaria almacenada en los elementos de
memoria en un tiempo dado define el estado del circuito secuencial.El
circuito secuencial recibe la información binaria de las entradas exter-
I nas. Estas entradas, conjuntamentecon el presenteestado de los elemen- i
tos de memoria, determinan el valor binario de los terminales de salida.
También determinan la condición de cambio de estado en los elementos {
de rnemoria. El diagrama de bloque demuestra que las salidas externas -t
en un circuito secuencialson una función no solamente de las entradas
externas sino del presente estado de los elementos de memoria. El si-
guiente estado de los elementos de memoria es también una función de
las entradas externas y del estado presente. Así, un circuito secuencial
se especifica por medio de una secuencia de tiempo de las entradas,
salidas y estadosinternos.
Hay dos tipos de circuitos secuenciales.Su clasificación depende
del tiempo de sus señales.Un circuito secuencialsincrónico es un siste-
ma cuyo comportamiento puede definirse a partir del conocimiento de
sus señales en instantes discretos de tiempo. El comportamiento de un
circuito asincróníco depende del orden en que cambien las señales de
entrada y puedan ser afectadas en un instante dado de tiempo. Los ele-
mentos de memoria comúnmente usados en los circuitos secuencialesasin-
crónicos son mecanismosretardadoresde tiempo. La capacidad de memoria
de los mecanismosretardadoresde tiempo se debe al hecho de que la señal
208
Entradas
Circuito
combinacional
6-2 FLIP-FLOPS
Circuitobásicode un flip-flop
se mencionó en las secciones 4-7 y 4-g que un circuito flip-flop
puecre
construirse con dos compuertas NAND o dos compuertas NoR.
Estas
construccionesse muestran en los diagramas lógicos de las
Fig*. o-i
y 6-3. cada circuito forma un frip-flop iá.i"o deicual
,e p,r"ae construir
u.nomás complicado.La conexión de acoplamientointercruzado
de la sa-
lida. de una.
.compuertaa ra entrada de ü otra ."";;i;;; un camino de
realimentación. Por esta razón, los circuitos se clasifican
como circuitos
secuencialesasincrónicos.cada frip-flop tiene dos salidas, y
entradas S (seú) y R (res-e.t). Q e, y dos
Este-tipo de flip-flop ,; iümu fúp_ftop RS
acoplado directamenteo bloquead,orSR (sR latctr). La, ietra.,R y
s ron
las iniciales de los nombres en inglés de las entra¿as-ireset,set).
Para analizar la operación del circuito de la Figuru o z se
debe re-
cordar que la salida de una compuerta NoR es 0 ; ;;;rq"ier
entrada es
1 y que la salida es 1 solamente cuando todas las entradas
sean 0. como
punto de partida asúmaseque la entrada de puesta
; ;;" (set) es 1 y
que la entrada de puesta a cero (reset) sea 0. óo-o
ú la compuerta2 tiene
una entrada de 1, su salida Q'debe ser 0, lo cual colocaambas
entradas
;-J-1" (puesta
a
l0 l0
00 l0 ( d e s p u édse S : 1 , 8 : 0 )
0l 01
00 01 (después
de S: 0, .R: 1)
:-J-L, (puesta o,
au l¡ 00
(a) Diag¡ama lógico (b) Tabla de verdad
I
FL|P-FLoPS 2l I
sEc. 6_2
f
q
l!
de la compuerta 1a 0 para tener la salida Q como 1. Cuando la entrada
de puesta a uno (set) vuelva a 0, las salidas permanecerán iguales ya
que la salida Q permanece como 1, dejando una entrada de la compuerta
2 -e n t . E s t o c a u s a q u e I a s a l i d a Q ' p e r m a n e z c a e n 0 l o c u a l c o l o c a a m b a s
entradas de la compuerta número 1 en 0 y así la salida Q es 1. De la mis-
ma manera es posible demostrar que un 1 en la entrada de puesta a cero
(reset) cambia Ia salida Q a 0 y Q'a 1. Cuando la entrada de puesta a cero
cambia a 0, las salidas no cambian.
cuando se aplica un 1 a ambas entradas de puesta a uno y puesta a
cero ambas salidás I y Q' van a 0. Esta condición viola el hecho de que
las salidas Q y Q' son complementos entre sí. En operación normal esta
condición debe evitarse asegurándose que no se aplica un 1 a ambas en-
tradas simultáneamente.
Un flip-flop tiene dos entradas útiles. Cuando Q : 1 y Q' : 0 estará en
el estado áe púesta o uno (o estado 1). Cuando Q:0 y Q': 1 estará en el
estado de puósta a cero (o estado 0) . Las salidas Q y Q'son complenientos
entre sí y se les trata como salidas normales y de complemento respecti-
vamente. El estado binario de un flip-flop se toma como el valor de su salida
normal.
Bajo operación normal, ambas entradas permanecen en 0 a no ser que
el estado del flip-flop haya cambiado. La aplicación de un 1 momentáneo
a Ia entrada de puesta a uno causará que el flip-flop vaya a ese estado.
La entrada de puesta a uno debe volver a cero antes que se aplique un 1
a la entrada dg. puesta a cero. Un 1 momentáneo aplicado a la entrada de
puesta a cero causará que el flip-flop vaya al estado de borrado (o puesta
á cero). cuando ambas entradas son inicialmente cero y se aplica un 1a
la entrada de puesta. a uno mientras que el flip-flop esté en el estado de
puesta a uno o se aplica un 1 a la entrada de puesta a cero mientras que
ut ftlp-ftop esté en él estado de borrado, quedarán ias salidas sin cambio.
Cuando sl aplica un 1 a ambas entradas de puesta a uno y de puesta a
cero, ambas ialidas irán a 0. Este estado es indefinido y se evita normal-
mente. Si ahora ambas salidas van a 0, el estado del flip-flop es indeter-
minado y depende de aquella entrada que permanezca por mayor ttempo
en 1 antes de hacer Ia transición a 0.
El circuito flip-flop básico NAND de Ia Figura 6-3 opera con ambas
entradas normalmente en 1 a no ser que el estado del flip-flop tenga que
, cambiarse. La aplicación de un 0 momentáneo a la entrada de puesta a
'_lr
9 l-JS(puestaauno)
( d e s p u édse S : 1 , f i : 0 )
0 (después
de S: 0, fi: 1)
I
:l-J-"*uestaace
I (a) Diagrama lógico (b) Tabla de verdad
I
Flip-flop FS temirorizado
I
1
El flip-flop básico por sí solo es un circuito secuencialasincrónico.Agre- I
gando compubrtas a las entradas del circuito básico, puede hacerseque
el flip-f'lop responda a los niveles de entrada durante la ocurrencia del
pulso del reloj. El flip-flop RS temporizado mostrado en la Figura 6-a(a)
consiste en un flip-flop básico NOR y dos compuertasAND. Las salidas
de dos compuertas AND permanecen en cero mientras el pulso del reloj
(abreviado en inglés CP) sea 0, independientementede los valores de
entrada de S y rt. Cuando el pulso del reloj vaya a 1, la información de
las entradas S y .B se permite llegar al flip-flop básico. El estado de pues-
ta a uno se logracon S: 1, R:0 y CP: 1. Para cambiarel estadode pues-
ta a cero (o borrado) las entradasdeben ser S:0, R: I y CP: 1. Con
S : 1 y R: I, la ocurrenciade los pulsosde reloj causaráque ambassalidas
vayan momentáneamentea 0. Cuando se quite el pulso, el estadodel flip- J
flop será indeterminado, es decir, podría resultar cualquier estado,
QQ+I\
o 0 00
0 0l
C 0 l0
(Pulsos 0 ll
de reloj) 00
01
10
(a) Diagrama lógico ll
SR
-¡
V 'l
tl
I
o1 !I lx
tr
w
rftfl
*_l--
rlr Q(t+t):s+R,o
SR:0
CP
(b) Símbolográfrco (d) Ecuación característica
(1 binario). Las salidas del flip-flop se marcan con Q y Q', dentro del re- H
cuadro. Se le puede asignar át lip-nop un nombre de variable diferente
Áu"q"" ," ur.rib" u.t" Q dentro del recuadro.En este caso Ia letra esco-
;id;;"t; la variable del ilip-flop se marca por fuera del recuadrov a Io largo
áe ta tír,ea de salida. El eitadó del flip-flop se determina del valor de su
salida normal Q. Si se deseaobtener ei complementode la salida normal,
no es necesariousar un inversor ya que el valor complementadose obtiene
directamentede la salida Q'.
La tabla característicadel flip-flop se muestra en la Figura 6-4(c).
Esta tabla resume la operación de1 flip-flop en forma-.detabulado. Q es
el estado binario del flip-flop en un tiempo dado (refiriéndose,aI es.tado
I presente),las columnas S y B dan los valores posiblesde las entradas y
'O pulso de
t¿+ 1) !s el estado del flip-flop despuésde la ocurrenciade un
reloj (refiriéndoseal siguiente estado).
-La
ecuación caracierística de un flip-flop se deduce del mapa de la
Figura 6-4(d). Esta ecuaciónespecificael valor del siguiente estado como
un"a función del presente estado y de las entradas. La ecuación caracte-
rística es una expresiónalgebraicápara la información binaria de la tabla
característica.Lós dos estádos indeterminadosse marcan con una X en
la relación
-0 ya que pueden resultar como 1 o como 0. Sin embargo
el mapa,
Sn : aéUeinctuirse como parte de la ecuación caracteústica para espe-
que S y E no puedenser iguales a 1 simultáneamente'
-__:ttt""t
Ftip-flopD
El flip-flop D mostrado en la Figura 6-5 es una modificación del flip-flop
BS sincronizado.Las compuertasNAND 1 y 2 forman el flip-flop básico y
las compuertas 3 y 4 las modifican para conformar el flip-flop RS- sincro-
nizado. La entrada D va directamente a la entrada S y su complemento É
r:
se aplica a la entrada R a través de la compuerta5. Mientras que el pulso 11
de rólo¡ de entrada sea un 0, las compuertas 3 y 4 tienen un 1 en sus sá- $
lidas, independientemente del valor de las otras entrad_as.-nlto ":!4 -9g tr
l¿
acuerdo á ios requisitos de que las dos entradas del flip-flop básico-N{ND ér
(a no E
compuerta 3 va a 0, cambiando el flip-flop a!. estado-de puesta a uno
;;¡ó"; ya esté
"tr
cambiando el flip-flop
é." estado). Si es 0, la
al estado de borrado.
salida de la compuerta 4
f
(a) Diagrama lógico con compuertas NAND
a:
cP
Qr't - l¡'-'¡1
(b) Símbolo gráfico (c) Tabla caracte¡istica (d) Ecuación ca¡acterística
F l i p - f l o pJ K
un flip-flop JK es un refinamiento del flip-flop -RSya que el estado inde-
terminado del tipo fis se define en el tipo ix. tá, entradas ./ y K se
comportan como las entradas v n para poner a uno o cero (set ó clear)
I
al flip-flop (nóteseque en el flip-¡leo-¿¡4 la letra J re u.u para la entrada
d,epuesta o u,noy la_.letraK para ra entrada d.e puestaa' cero¡. cuando
ambas entradas se aplican a J y K simultánea.n"r,i", el flip-flop cambia a
su estadode complemento,esto es, si Q : 1 cambiaá q:0 y viceversa.
^ un flip-flop oIl( sincronizadose muestra en la Figüra 6-6(a). La salida
Q se aplica con K y cP a.una compuertaAND de tal manera que el flip-
flop .seponga a cero (clear) dura4te un pulso de reloj ,olamente si
previamente.De manera similar la salida e fue 1
e' se aplica con J y cp a una
compuertaAND de tal manera que el flip-flop .e p-ong"a uno con un pulso
de reloj, solamentesi Q, fue 1 préviamente.
como se muestra en la tabra característicaen la Figura 6-6(c), el
flip-flop JK se comporta como un flip-flop RS excepto
v ¡i ,Lun
"rrurráo"r
214
E
ia
ii
&
g
p
fl
¡!
tl
000
001
0
I -T
tr l
l-'
EH
0r0 o- ltl -l
011 t-
100
rll 101
1r0
K
CP Q ( r+ t ) - t Q ' + K ' Q
111
(b) Símbolográfico (c) Tabla característica (d) Ecuación característica
tl
5Tr {i
ll
CP
(b) Símbolográfico (c) Tabla ca¡acterística
Q ( t+ t ) . - r Q ' + - r ' Q
(d) Ecuación característica
I
Figura 6-7 Flip-flop ? temporizado
. Flip-flop f
6-3 D I S P A R OD E L O S F L I P - F L O P S( T R I G G E R I N G )
tt
tl
tt
II
Flanco Flanco Flanco Flanco
positivo negativo negativo positivo
que el pulso de entrada sea 1 todavía. Si las otras entradas del flip-flop
cambian mientras que el pulso sea 1, el flip-flop empezará a responder a
esos valores nuevos y puede ocurrir un nuevo estado de salida. Cuando
esto pasa, la salida de un flip-flop no puede ser aplicada a las entradas de
otro flip-flop cuando ambos sean disparados por el mismo pulso de reloj.
Sin embargo, si se puede hacer que el flip-flop responda al flanco positivo
(o negativo) de transición solamente, en vez de la duración total del pul-
so, entonces se puede eliminar el problema de la múltiple transición.
Una manera de hacer que el flip-flop responda solamente al pulso de
transición es usar un acoplamiento capacitivo. En esta configuración, se
inserta un circuito fiC (resistencia-condensador) en Ia entrada de reloj
del flip-flop. Este circuito genera un pico en respuesta al cambio momen-
táneo de la señal de entrada. Un flanco positivo emerge de tal circuito
con un pico positivo y un flanco negativo con un pico negativo (spike). La
activación de los flancos se logra diseñando el flip-flop para ignorar un
pico y dispararse con la ocurrencia del siguiente. otra forma de lograr el
disparo de los flancos es el uso de un maestro esclavo o flip-flop de disparo
por flancos como se discute a continuación.
t¡
:t i *t
i.f
:4
,4
"q
i ir
i.i
iÉ
lll
iil
|' ¡;
Figura 6-12 Flip-flop tipo D disparado por flanco positivo
I.f
221 i.
r,t¡
lÉ
ig
H
(a) Con CP:0
cambiarse
o el
opuestamente
fácilmente
Ia transi-
flanco nega-
a la
agregán-
alterno es
ambos pulsos positivos y negativos medio de un inver-
I suministrar
;;;t t luego aplicar' los púlro. posiiivos a los flip-flops
fl".,"o negativo y loi pulsos negativos
-(por-
a los
que se disparan
flip-flops que se
I dura.,te
"f
disparan durante el flanco positivo, o viceversa' .--{r.
I E n t r a d a sd i r e c t a s
I Los flip-flops
tradas
disponiblesen cápsulasde cI vienen algunas veces con en-
^".p""iul".-para
puesta a uno o cero del flip-flop de manera asin-
crónica. Estas entira¿u.." Ilaman d.epuesta a Ltnodirecta
(direct preset)
y de puestoo ,rro- áirecta (direct clear). Ellas afectan el flip-flon e.n
íalor positivo (o
"ugutiuol
de la señal de entrada sin que sea necesario
e|
el
Entradas
Tabla de función t
Salidas
I
BorradoiReloj J K oo' I
t
XXX 0l I
.1.00 I
No cambio
J0l 01 I
tl0 l0 i
+ll Conmuta
6-4 A N A L I S I SD E L O S C I R C U I T O S
SECUENCIALES T EM P OR I Z A D O S
t
El -comportamientode los circuitos secuenciares
se determina de las en_
tradas, las salidas y ros estados de los flip-flops.
224
Ambas entracrasv el J
sEc. 6-4 A N A L I S I SD E L O S C I R C U I T O S E C U E N C I A L ETSE M P O R I Z A D O S 225
U n e j e m p l o d e u n c i r c u ¡ t os e c u e n c i a l
Un ejemplo de un circuito secuencialtemporizadose muestra en la Figu-
ra 6-1S.Tiene una variable de entrada, una variable de salida y dos flip-
flops temporizadosRS llamados A y B. Las co4exionesrealimentadasde
las salidas de los flip-flops a las entradas de las compuertasno se mues-
tran en el dibujo para facilitar el trazado del mismo. En vez de ello, se
reconocenlas conexionespor su letra marcada en cada entrada. Por ejem-
plo, la entrada marcada ¡' en la compuerta1 designauna entrada del com-
plemento de ¡. La segundamarcada A designauna conexión a la salida
normal del flip-flop A.
Se asume que hay disparo por flanco negativo en ambos flip-flops y
en la fuente que produce la entrada externa ¡. Por tanto, las señalespara
.r l-'
t----) I r'
B'-_-.1-/
l
L
226 LoGIcA SECUENCIAL
CAP. 6
Tabla de estado
Estadosiguiente Salida
AB AB AB
00 00 0l 0 0
0l ll 0l 0 0
l0 l0 00 0 I
ll l0 lt 0 0
cada estado. Lut tócciotte. del siguiente estado y de salida tendrán cada
una 2" columnas,una para cada combinaciónde entrada. I
Las salidas externas para un circuito secuencial pueden venir de
compuertas lógicas o eleméntos de memoria. La sección de salida en el
estaáo estable es necesariasolamente si hay tres salidas de las compuer-
tas lógicas. Cualquier salida externa tomada directamente de un flip-
flop se lista en la columna de presenteestado de la tabla de estado. Por
tanto la sección de salida de la tabla de eslado puede ser excluida si no
hay salidas externasde las compuertaslógicas.
D i a g r a m ad e e s t a d o
00
r/1
t/0
-\ ol l0
o/o
0/0
ll
/0
E c u a c i o n e sd e e s t a d o
una ecuación de estado (también conocida como
una ecuación de aprica_
ción)
.e.s.ula expresión algebraica que especificalas condicionespara Ia
transición de estado de.un flip-flop. bt lu¿o i"q"Lrd"
i""l;;;"""i0í{;.1
ta el estado siguiente d€l flii-flop y el lado a".""rro-""á
que especifica las condiciones del presente tr.ci¿n de Boole
estado que hacen el siguiente
estado igual a 1. una ecuación de estado
.i-ilu.'"; f;^" a una ecua_
ción característica,de un ", que especifica
excepto
_flip-flop,
del siguiente estado en té¡minor a" ta. variables'de las condiciones
enirada externas y
otros valo¡es de los flip-flops. La ecuación
de estados.áLriu" directamen-
te de la tabla de estadó..por_ejemplo,la e^cuación_de estadoil"lJh'i3:ii;;
A se-deriva por inspecciónde la'Ta'bla 6-1. De
f"" .i'oi""ies columnas de
estado,se nota que el flip-flop A va al estado
-t Ecuatri
s ; ; - ; ; "uáces:
d " ; . o r cuando
e s a r s e ¡:0
v A B : 0 1 ó 1 0ú 1 1 'o . 1 y " a ! r : 1 v AB.:11
braicamenteen la ecuaciónde estadáde la siguie.rt"-.rr"rráru, alge-
B(r+t):A'x+(Ax')'B fl
:Fi
:t¡ j
La ecuación de estado puede derivarse directamente a partir del '¡Il
F u n c i o n e sd e e n t r a d a d e u n f l i p - f l o p
B
C'
6.5 R E D U C C I O ND E E S T A D O SY A S I G N A C I O N X
rf,
*i
ü
H
1.
-¡l
Reducción de estado
232
¡
sEc. 6-5 REDUCCION
O E E S T A D O SY A S I G N A C I O N 2 3 3
estadoaabcdeJÍCfga
entrada0l0l0ll0l00
salida 0 0'0 0 0 I I 0 I 0 0
a a b 0 0
b c d 0 0
c a d 0 0
d e f 0
e a f 0
f c Í 0
o a f 0
234 LoGIcA SECUENCIAL CAP. 6
Estadosiguiente Salida
a a b 0
b c d 0
c a d 0
d e fd I
e a ld I
Í te f I
g a f I
estado a a b c d e d d e d e
entrada 0 I 0 I 0 I I 0 I 0 0
salida 0 0 0 0 0 I I 0 I 0 0
sEc. 6-5 D E E S T A D O SY A S I G N A C I O N
REDUCCION 235 T
iü
De hecho, esta secuencia es exactamente la misma que se obtuvo de la
Figura 6-19, si se remplaza e por g y d por f .
a a b 0 0
b d 0 0
0 d 0 0
d e d 0 I
e d 0 I
I
L-
Tabla 6-7 Tablas característicasdel flip-flop
QQ+I)
QU)
0
I
@) JK
l
0 0 0
I 0 I
0 I 0
I I I
(a) RS O) /,K
0 0 0 0
0 0
I 0 I I
0 I
0 I 0 I
I 0
I I I 0
I I
(c) D (d) r
Flip-flop FS
en la Tabla 6-8(a)' La
La tabla de excitación del flip-flop RS se muestra
primera fila muestr" nip-noP estado 0 en el tiempo Ú' Se desea
á;j;;i;";
"f
el estado o-áu"Ñ¿, de^la ocurrencia del pulso. De Ia tabla ca-
"l "l
el flip-flop no cam-
racterística, se encuent.a que si S y X son ambos 0,
entradas v S x rteben ser 0' Sin embargo'
biará estado. Por t";;;;;;úas
;;t;;;il rl se hace'ñ ,r,t I ocurre el pulso' vq qYe resulta dejan-
""uttdo permane-
;; ;i-hi;-flop en el estado 0. Así, R puede ser 1 ó 0 v 9l flip-flop
por tanto, la entrada debajo de R se marca
;;J;^eI estadoo en ¿*1.
por la condiciónX de no imPorta'-
Si el flip-flop en ei estado0 y se deseaque vaya al estado 1' en-
".la la única forma
torr"J. u pur?i, ¿L tá iatta característica, se encueltra. o^g.e
a 1 e s h a c e rs : 1 y R : 0 . s i e l f l i p - f l o pv a a t e n e r
á;ú;;.; Qtr+1) igual y R : 1'
1 al estado0 se debe tener S: 0
u.r. trur,rüiór, d"t es estar en el
".luao
La última .""á;;ió" ;; ;;;dt ocurrir en un flip-flop
e s t a d o l y p e r m a n e c e r e n e s e m i s m o e s t a d o . C i e r t a m e n t e R dser
e b0e ós e1'r 0
S.debe
ya que no se requl"t"-p"""t a 0 el flip-flop' Sin embargo
estado1; si es 1 se llevará
Si es 0, el flip_flop no cambia y permanecéen el
elflip.flopalestadolcomo."d"."u.Así,sselistacomounacondición
de no importa.
E l f l i P - f l o PJ K
en la Tabla 6-8(b)'
La tabla de excitación para el flip-flop JK se muestra
presente y estado siguiente t91"..0' la entrada J
Cuando ambos estado
i" K puede sór 0 ó 1. Similarmente cuando
debepermar,""", .rJól
""t*aá
239
2& LOGICASECUENCIAL
CAP. 6
Flip-flopD
La tabla de excitación para u.n fli!-flop tipo
D se muestra en ra Tabla
6-8(c). De la tabla. característica,f"ú¡i O_Z(c),
* ;;;"qre el siguiente
estado es siempre igual a la entrada D i;á¿p;"ai"nl"'a"r estado pre_
s e n t e .P o r t a n t o , D d e b e . s e 0
r s i e { r a 1 ) - "t i e n e t u ; ; ; ; - ó , y 1 s i
tiene que ser l, independientementedel valor "' e(¿+t)
de Oirll--
Flip-ftopf
La tabla de excitació" p1rq el flip_flop ? se
muestra en la Tabla 6_g(d).De
la tabla característica,-Tabrao-?(d),-seencuentra
que cuando la entrada
T:1 el estadodel flip-flop-."
cuando T:0 er estadodel
flip-flop permanece sin cambiar."o-pl"-enta,
poi tanto cuando el
estado del flip-flop
debe_permanecer igual, el requerimiento es que T:0. cuando
-' el estado
del flip-flop debe cómpiu-""tái.", i á"¡" .". iguui
u 1".'
Otros flip-flops
El procedimiento de diseño que se va a describir
en este capítulo puede
ser usado con cuarquier flip-flop. Es necesarioque
." la tabla
característica del flip--flop,
-La "orror."
de la cual es posible desarrollar
tabla de excitación. una nueva
iabla a" se ;;;;;es para deter_
minar las tuncionesde ent¡ada der"*"it""ión
nip-¡oo, ;;" "."
;;;;ü;; en la sisrien-
te sección.
6-7 PROCEDIMIENTD
OE D I S E Ñ O
i;
En contraste con el circuito combinacional,el cual está especificadocom- ii
Estado siguiente
00 00 0l
0l 10 0l
l0 l0 ll
ll ll 00
I
Estado Siguiente
presente Entrada estado Entradas de los flip-flops
JA JB KB
00 0 00 OXOX
00 I 0l OXIX
0l 0 l0 IXXI
0l I 0l OXXO
r0 0 l0 XOOX
l0 I ll XOIX
ll 0 II XOXO
ll I
I 00 XIXI
JA : Bx' KA: BX
JB:x KB: AOx
244
Salidas
A' externas
(ninguna)
A Circuito
B' combinacional
B
Bx B
-lr--^-T0-
A 0
0 I X X x X
I
All
l,
X x x X I
x
tA: Bx' KA -- Bx
I v X X x lj - 1
x X X X
lB:x KB:A@x
Tabla 6-9 y comparándola con los valores binarios del siguiente estado
correspondiente. Las condiciones de entrada necesarias, como se espe-
cifican por Ia excitación de los flip-flops en la Tabla 6-8, se determinan
entonces. En vez de insertar el 0, 1 ó ¡ así obtenidos en la tabla de excita-
ción, se pueden escribir directamente en el cuadrado apropiado del mapa
apropiado.
La tabla de excitación de un circuito secuencial con m flip-flops, fr
entradas por flip-flop y n entradas externas consiste en m * n columnas
para el estado presente y las variables de entrada y hasta 2-+" filas lis-
tadas en alguna cuenta binaria conveniente. La siguiente sección de esta-
do tiene m columnas, una para cada flip-flop. Los valores de entrada de
los flip-flops se listan en mh columnas, una para cada entrada de cada
flip-flop. Si el circuito contiene j salidas, la tabla debe incluir j columnas.
La tabla de verdad del circuito combinacional se toma de la tabla de exci-
tación considerando el estado presente m + n y las columnas de entrada
como entradas, y los valores de entrada del flip-flop mk+j y las salidas
externas como solldos.
246
Tabla 6-11 Tabla de excitación para el Ejemplo 6-1
Estado Estado
presente Entrada siguiente Entradas de flip-flops Salidas
ABC ABC SA RA SA RB SC RC
001 0 001 0 x 0 X XO 0
001 I 0l0Oxl 0 0l 0
010 0 011 oxx 0 l0 0
0r0 I 100 l 0 0 OX 0
0ll 0 001 0 x 0 XO 0
0ll t
100 I 0 0 0l 0
100 0 10tx00 X l0 0
100 1 100x00 X OX I
l0l 0 001 0 I 0 X XO 0
l0l I 100x00 X 0l I
i''
i
247
C
Cx
AB 00 0t ll l0
r-
X ^ X t4 tl I
el
["
L'o
0l
X
t-;
t^
l¿ !_)
X
;1
Y
i" Y v
U
Y A X
L_J
RA=Cx SB = A'B'x
SA=Bx
^ X
-¡
X A X Y
F I
f-T E
il|
'l x I
A
I
l^
g JJ
x Y A ^
X X x x I X ^ rl
I
x ^
r; ¡ A
Li r_J
.v=Ax
inválidos 000, 110 ó 111, irá a alguno de los estados válidos en unc
de Ios dos pulsos siguientes. El circuito será así de autocomienzo
y autocorrección ya que eventualmente irá a un estado válido a
partir del cual continuará operando de acuerdo a lo requerido'
Una situación indeseable hubiera ocurrido si el estado si-
guiente de 110 para r: t hubiera sido 111 y el estado siguiente
de 111 para r : 0, 110. Entonces, si el circuito comienza de 110 ó
111, circulará y se mantendrá entre estos dos estados para siem-
pre. Los estados no usados que causan tal comportamiento inde-
seable deben ser evitados; si se detecta su existencia, el circuito
debe ser rediseñado. Esto puede hacerse más fácilmente espec.i-
ficqn{o un estado siguiente válido para cualquier estado sin usar
que se haya encontrado circulando entre estados inválidos.
I I
A-rLI I I I I I
4O
Pulsos
de cuenta
JA JB JC
0 00 OXOXIX
0 0 ll OXIXXI
0 l0 IXXIOX
00 XOOXIX
0l XOIXXI
l0 XIXIOX
JA:B KA: B
JB:C KB:I
JC: B, KC: I
6-9 D I S E Ñ OC O N E C U A C I O N EDSE E S T A D O
QQ+t):D I
Esta ecuación estable"",.qu" er siguiente
I
valor presentede su sarida ¿ est¿do del flip-flop es igual al
v-ü-i"aependiente
estado' Esto sisnifica que ra* enrradu. a"i áto. del presente
pa.u el siguienteestadoen Ia
bla de estadosón exactamentelas ta_
mismas que ras'entradas,. por tanto,
no es necesarioderivar las condiciones
t'abla de excitación porque esta información de^".,truau--á"r"nip_noppara la
columnasdel siguienteestado. está disponible ya en las
por ejemplo,la tabla de excitación
-,-Tó*":",
gurente de la Tabla 6-10. La si-
columna de estado para A tiene
que la columna para el sigurente cuatro unos, de la misma manera
;hd" d; t. p; ;;.;;", esre circuito
co,' flip-flop. D,.se escribe-n tu..*u.innes de estadoy se fbrma
crón con ellos a las entrada. D la ecua_
"o.."rpondientes:
A(t + r) : DA(A,B, x) : >(2,4,s,6)
B ( t + l ) : D B ( A ,B , x ) = > ( 1 , 3 , 5 , 6 )
DA = AB'* Bx,
DB:A'x*B,x+ABx,
A(t+l):COD
B(t+r):A
C(t+t¡:3
D(t + l): C
Este circuito especificaun registro de corrímientopor realimen-
tación (feedbackshift register). En este registro, cada flip-flop
trasfiere o desplaza su contenido al siguiente flip-flop cuando
ocurre un pulso de reloj, pero el siguiente estado del primer flip-
flop (A en este caso) es alguna función del estado presente de
otros flip-flops. Como las ecuacionesde estado son muy simples,
el flip-flop más convenientede usar es el tipo D.
Las funciones de entrada del flip-flop para este circuito se
toman directamente de las ecuacionesde estado, con la siguiente
variable de estado remplazadapor la variable de entrada del flip-
flop:
DA:C@D
DB: A
DC: B
DD: C
E c u a c i o n e sd e e s t a d o c o n f l i p - f l o p sJ K *
La ecuación característica para el flip-flop JI( se deriva en la Figura
6-6(d):.
e Q+ t ) : ( J ) e ,+ ( K , ) e
Las variables de entrada J y K se encierran en paréntesis, de tal manera
que no se confunda los té¡minos AND de la ecuación característica con la
convención de dos Ietras las cuales se han usado para representar las
variables de entrada de los flip-flops.
El circuito secuencial puede derivarse directamente de las ecuaciones
de estado sin tener que dibujar la tabla de excitación. Esto se hace por
medio de un proceso de apareamiento entre la ecuación de estado para
cada flip-flop y la ecuación general característica del flip-flop J1(. El pro-
ceso de apareamiento consiste en manipular cada ecuación de estado
hasta que esté en la forma de ecuación característica. Una vez que se hace
esto, las funciones para las entradas J y K pueden ser extractadas y sim-
plificadas. Esto debe hacerse para cada ecuación de estado listada, y su
nombre de variable de flip-flop A, B, C, etc., debe remplazar Ia letra Q en
Ia ecuación característica.
J: A,C + CD,
y: ( A ' C + C D , + A , C , ) ,: A C , + A D
REFERENCIAS259
como
La ecuación de estadopara el flip-flop C puede manipularse
sigue:
C ( r + t ) - - S '- B ( C ' + C ) : B C ' + BC
: ( J ) C '+ ( K ' ) C
D(t+,,_:!r,,r:r,,
manera:
i ,i rrl
lo cual da la función de entrada:
J:K:l
y
Las tünciones de entrada derivadas pueden acumularse
listarseconjuntamente.Laconvencióndedosletrasparadesig-
narlauu,iabt"deentradadelflip-flop,nousadaenlaanterior
derivación, se usa a continuación:
alterno pa-
El procedimiento de diseño introducido aquí es un método
de entrada del flip-flop del circuito secuencial
ra determinar las trrr"lont.
flip_¡1oo, JK. parc usar este procedimiento cuando un
;;^"d" se usan
es nece-
ái;g;;-" de estado o tábla de estado se especifica inicialmente,
por el procedimiento esbo-
,urñ q"" Ias ecuaciones de estado se deriven
de la ecuación de estado para encon-
,uao u" la Sección 6-4. El método
trar las funciones dá l"tr"d" del flip-flop puede extenderse para cubrir
de no importa'
estados sin usar los cuales se considéran como funciones
la forma de una ecua-
Los términos mínimos de no importa se escriben en
que estén en la forma de la ecuación
ción de estado y se -a.,ipulan Éasta
particular considerado' Las funciones J y
característica para el flii-flop
mínimos
K en Ia ecuación de estado denó importa se toman como términos
importa cuando se simplificutt lu. funciones de entrada de un flip-
de no
flop particular.
R E F ER E N CI A S
1. Marcus, M. P., Suitching Circuits for Engineer.s, 3a. ed' Englewood Cliffs'
N.J.: Prentice-Hall, 1975.
2@ L o G t c As E c u E N c t A L
cAp. 6
2 Mccluskey, E. J.,_Introciuctionto
the Theory of ,switching círcuits. Nueva
York: McGraw-Hill Book Co., 1965.
' swítching Theory, dos volúmenes.Nueva york:
s*f i#; .E'' John wiley and
n M', Bosic swítcrting circuít Theory.Nueva york:
f;;;*r' The Macmilran co.,
5 ' H i l l , F ' J ' v G . R . p e t e r s o n ,I n t r o d . u c t i o n , t o _ s w í t c h i n g
srgn. Nueva york: John Wiley and Son., T h e o r ya n d L o g í c a rD e _
fgZ¿.
6' Givone,D. D., Introduction to suitching
Hill Book Co., 1920.
Circuit Theory. Nuevayork: McGraw_ J
t
ff#"¿;l''
suítching and Finite Automata Theorv.
Nueva york: McGraw-Hill
I
I
8 LosicatDesig,t
of Dígitatcomputers.
l'i',it!?l,Yi#e Nuevayork:Johnwiley
9 Paull, M' c'y s' H. unger,"Minimizing
t h e _ N u m b eor f s t a t e s i n I n c o m p l e t e l y
specified Sequenriars*itching Fr;;;;;;.;;.'IRE
úers,Vol. EC-8, No. 3 (setiemblergSgl, Trans.ár-linr^rro,c compu_
áSO_OO.
1 0 . Hartmanis, J', "on the.state fusignment problem
IRE Trans. on Electroní, Co^putír.r,-ü"i. for sequential Machines L,,
BC-fo, No. 2 gunio 1961),Ib| -68.
1 1 . Mccluskey, E' J' y S.. H. unger, "A
Note on the Number of Internar Assign-
ments for sequential circuits". 1áE Trans.
in Etectroniccomputer,vol. EC-g,
No. 4 (diciembre1959),439-40.
PROBLEMAS
6-1' lógicode un flip-flop -RStemporizadoconcuatrocompuer-
|;SntirtLtma
6-2' Dibujeel diagramarógicode un flip-flop
D temporizadoconcompuertas AND
v NOR.
6-3' Demuestre que el frip-flopD temporizado de la Figura6-5(a)puedesimplifi_
carseen una compuerta.
6-4' considere un flip--flop JK' es decir un
flip-flop JK con un inversor entre la
entrada externa K' y la entrada interna
K.
(a) Obtengala tabla característica
del flip-flop.
(b) Obtengala ecuacióncaracterística.
(c) Demuestreque atando las
dos entradas externas entre sÍ se forma
flip-flop D. un
6-5' un flip-flop con.entradan1inciq11de puesta
a uno, tiene entradasde puesta
a.uno v de puesta a cero. Esta difiere ^d"
r;flip-¡i;;;;;;;;"".ional en que
uno y a cero simultáneamente, et tiip-nop
;H""ffi.a comá resultado ,u pá.,-
(a) Obtenga ," ,ilti...:i1.1.:i.r].1 y ecuación característica de un flip-flop
con dominio de puesta a uno (set_dominate).
(b) obtenea el diagrama lógico
de un flip-flop con dominio de puesta a
asincrónico. uno
P R O B L E M A S2 6 1
Figura P6-10
Figura P6-ll
6-12. un circuito secuencialtiene cuatro flip-flops A, B, c y D y
una entrada ¡.
Este se describe por medio de las siguie.,tes .c,racio.reri
6 . 1 5 ' C o m e n z a n d o c o n e l e s t a d o o d e l a t a b l a d e e s t a d o e n e l P r o de
b ] eentrada
ma6-14,en.
la secuencia
cuentre la secuencia de salida generada con
01110010011.
6-16.RepitaelProblema6.lsusandolatablareducidadelProblema6-14.De-
de salida'
muestre que se obtiene la misma secuencia
6 - | T . s u b s t i t u y a l a a s i g n a c i ó n b i n a r i a - 2 d e l a T a b l a 6 - S a l o s asignación
e s t a d o s e nbinaria
l a T a b l3.
a
6_4 y obteng^ l;t?;i; de estado binario. Repítalo con la
6-13.obtengalatabladeexcitacióndelflip-flopJK'descritaenelProblema6-4.
6-19.obtengalatabladeexcitacióndeunflip-flopcondominiodepuestaauno
(set-dJminate) descrita en el Problema 6-5'
y una salida. Ei diagrama de es-
6-20. un circuito secuencial tiene una entrada
iu riguru p6-20. Diseñe un circuito secuencial con (a)
tado se muest;;;
ifio-¡oo. ?, (b) flip-flops 'RS v (c) flip-flops Jl('
6 - 2 | . D i s e ñ e e l c i r c u i t o d e u n r e g i s t r o d e 3 b i t s q u e c o n v i e r t e - e l n ia
ú mentrada
e r o a c u ¡:
m u .1'
duj cuando
lado en .f ,.gi.irl a su valo"r de complemeto
Losflip-flopsdelregistrosondeltipofisT'Esteflip-floptienetresentradas:
d o s e n t r a d a s t i e n e n c a r a c t e r í s t i c a s R s y u n a t i e n e . c a r a c t e r í s t i c a sentrada
T.Las
entradas nS *.-"ü" pu* f.á.f"tir el nú"mero de 4 bits cuando una
para la conversron'
}: 1. Use la entrada ?
6.22.RepitaelEjemplo6.lconIaasignaciónbinariaSdela'|abla6.5.Uselos
flip-flops JK.
6-23. Diseñe un contador BDC con flip-flops JK'
0/0
001
0/0
I/1
r00 ll
0/o
t/r 0/0 / /oto
010/
lt/
000
Figura P6-20
6.24.Diseñeuncontadorquecuentedígitosdecimalesdeacuerdoalcódigo2'4'
2, 1, (Tabla 1-2)' Use fliP-floPsT'
la siguiente secuenciabinaria
G-ru. Diseñe los contadoresbinarios que tienen
!' repetida. Use fliP-floPs JK'
i
2il L o G I c AS E C U E N c I A L
(a) 0, 1,2
CAP 6
J
(b) 0, 1, 2, 3, 4
(c) 0, 1,2,3, 4, b,6
6-26. Diseñe un contador-con la siguiente
s e c u e n c i ab i n a r i a : 0 , 1 , l i , 2 , 6 , 4 , 5 , i y
repetición. Use flip_flops r?S.
6-27' Diseñe un contador con la siguiente
s e c u e n c i ab i n a r i a : 0 , 1 , J , i , 6 , 1 y repe-
tición. Use flip-flops ?.
6 - 2 8 ' D i s e ñ e u n c o n t a d ' r - - c - o nl a s i g u i e n t e
s e c u e n c i aL ¡ i n a r i a : 0 , 4 , 2 , 1, 6 y repeti-
ción. Use flip-flops J1(.
6-29. Repita el Ejemplo 6-5 usando flip-flops
D.
6-30' Verifique el circuito obtenido en el Ejemplo
6-b usando el método de ra tabla
de excitación.
6-31' Diseñe el circuito secuencial descrito por
medio de las siguientes ecuaciones
de estado. Use flip-flops JK.
.='
7-1 INTRODUCCION
I
en un computador digital. EI conocimiento de las operaciones de estos
componentes es indispensable para la comprensión de la organización y
diseño de los sistemas digitales.
7-2 REGISTROS
varios tipos de registrosestándisponibles
en circuitosMSI. El circuito
más simple es aquel que consiste en flip-flops sin ninguna compuerra ex-
terna. La Figura 7-1 muestra tal registro construido con cuatro flip-flops
tipo D y un pulso de reloj común de entrada. El pulso de reloj de entrada,
cP, habilita todos los flip-flops de manera que Ia información disponible
al presente en las cuatro entradas pueda ser trasferida al registro de 4
bits.'Las cuatro salidas pueden ser cateadas para obtener Ia información
acrrmulada en el registro.
I3
R e g i s t r oc o n c a r g a e n P a r a l e l o
como la
La trasferenciade nueva información a un registro se denomina
carga del registró. si-!-g!os los bits del registro se cargan simultáneamen-
q.r" lu carga_se hace en paralelo.Un
;;;;";" "bpse dice
sio pulro de'reloj,
p"fr. a la entrada a"t .egi.tto de _la Figura 7-1 cargarátod¿s
iu. entradas en paralelo. En esta configuración,el pulso de reloj
"pfi"ado
debe aislarse del terminal CP si el contenido del registro se debe dejar
"rruiro
sin cambio. En otras palabras, Ia entrada CP actúa como una señal de
habilitación Ia cual co.ttrola la carga de la nueva información al registro'
Cuando CP va a 1, la información de entrada se carga al registro. Si 9P
p.t-u"".. en 0, el contenido del registro no cambia. Nóteseque el gampio
de estadoen la entrada ocurre en el flanco positivo del pulso. Si el flip-flop
cambia de estado en el flanco negativo, habrá un pequeñocírculo debajo
del símbolo de triángulo en la entrada CP del flip-flop'
La mayoría de Tos sistemas digitales tienen un generadorde pulsos
pul-
de reloj maestro que suministra un tren de pulsos de reloj. Todos los
flip-flops y registros en el sistema. El
*or ¿. reloj se upii.un a todos los
*Por 7 ' 1 1 7 5e s
ejemplo el cI tipo 7475es un retenedo¡ de 4 bits, mientras que el cI tipo
un registro de 4 bits.
268 REGISTROS.
CONTADORES
Y UNIDAD
DE MEMORIA CAP.7
generadorde pulsos de reloj maestro actúa como
una bomba que suminis-
tra un ritmo a todas las partes del sistema. una seiral de
control separada
decide e.ntoncesqué pulso de reloj específicotendrá un
erectoen un regis-
tro particular. En tal sistema, los pulios de reloj debenser,
con¡untamente
con la señal de control, aplicadosá un, .o-pueit, AND pár" qu"
ra salida
de esta última se aplique al terminal cp d;l ."gi.f.o-r;;trado
gura 7-1. cuando la señal de control es 0, la saliáa en la Fi_
de la compuertaAND
será 0 y la información almacenadaen el registrop..Áun.cárá
sin cambiar.
Solamentecuando la señal de control 1, er pulso de reloj p".u.l fo, '{
la compuertaAND y llegará al terminal -u¡t
". cp pára.iru l" nu"uu información
s€ cargue al registro. Tal variable de controi se lllma terlÁinaL
de control
de carga.
El colocar una compuerta AND en.el camino de los pulsos
de reloj
significa que la lógica se ejecuta con pursos de reloj. Ei-ágr"gu,
compuer-
tas lógicas produce
.retardos_de propagaciónentre ér g"*?"a", ¿er prrl.o
maestro y las entradas de reloj de los flip-flops. para "sincronizarcomple_
I
Carga
\
sEc. 7-2
Carga
}H
t.it
ir
ii{
l;1
l5 i
rti-
,li ¡
uti
Borrado l+
lir
¡t
H
:3
270 R E G I S T R o Sc,o N T A D o R E SY U N I D A D D E M E M o R I A CAP, 7
ren por el flanco negativo de los pulsos entrantes. El propósito del inversor
es reducir la carga del generador de pulsos maestros. Eslo es debido a que
el terminal CP se conecta solamente a una compuerta (el inversor) en vez
de a las entradas de las cuatro compuertas qne .e hubieran podiáo nece-
sitar si las conexiones se hubieran hecho directamente a loi terminales
cie reloj de los flip-flops (marcados con pequeños triángulos).
El terminal de borrado (clear) o de puesta u ceio va a un terminal
especial en cada flip-flop a través de una compuerta separadora no inver-
sora (noninverting buffer gate). Cuando este terminal va a 0 el flip-flop
se borra asincrónicamente. La entrada de puesta a cero se usa p"ru il"rrui
al registro a ceros antes de la operación en cadencia. La entredá de puesta
a cero debe mantenerse en 1 durante las operaciones normales tempori-
zadas (ver Figura 6-14).
El terminal de carga pasa a través de una compuerta separadora (para
reducir la carga) y a través de una serie de compuértas ANb va a los-ter-
minales I y s de cada flip-flop. Aunque los pulsos de reloj están presentes
continuamente, en el terminal de carga que controla la óperación del re-
gistrc. Las dos compuertas AND y el inversor asociado con cada terminal
1 determinan los valores de ^R y s. si el terminal de carga es 0, ambos R
y s son cero, y no ocurrirá cambio de estado con ningún pulso de reloj.
Así, la señal del terminal de carga es una variable de controi la cual puedl +
prevenir cualquier cambio de información en el registro siempre qué esté
su señal en 0. Cuando el control de carga vaya a l-. las entradas 1, hasta
1., especificarán qué información binaria se carga al registro en el siguien-
te pulso de reloj. Para cada 1 que sea igual a 1, las entradas del flip-flop
c o r r e s p o n d i e n t e ss o n s : 1 , R : 0 . Para cada 1 que sea igual a 0, lás en-
t r a d a s d e l o s f l i p - f l o p s c o r r e s p o n d i e n t e ss o n S : 0 , n : 1 . Así, el valor de
la entrada se trasfiere al registro, si el terminal de carga es 1, el terminal
'Je borrado es 1, y el pulso de reloj pasa de 1 a 0. Este tipo de
trasferencia
se llama trasferencia de carga en paraLelo porque todos los bits se cargan
simultáneamente. Si la compuerta separadora asociada con la entrada de
carga se cambia a una compuerta inversor, entonces el registro se carga
cuando el terminal de carga es 0 y se inhibe cuando es 1.
un registro con-carga paralela puede ser construido con flip-flops D
como se muestra en la Figura 7-3. Los terminales de reloj y de borradó son
los mismos que antes. cuando el terminal de carga i, lu, entradas 1
s-etrasfieren al registro en el pulso siguiente de reloj. "." Cuando el terminal
de carga es 0, las entradas del circr.¡ito se inhiben y ios flip-flops D se car-
gan con su valor presente, manteniendo así el contenido del iegistro. La
conexión de realimentación en cada flip-flop es necesaria cuarráo se usa
del tipo D ya que el flip-flops tipo D no tiene una condición de entrada de
"no cambio". La entrada D determina el siguiente estado de la salida con
cada pulso de reloj. Para dejar la salida sin cambiar, es necesario hacer
la entrada D igual a la salida presente Q en cada flip-flop.
Registro
C ircuito
combinacional
Salidas
es convenientealgunas
están disponiblesfácilmente como circuitos MSI,
un registro como parte d.e.un circuito secuencial'un dia-
veces emplear
-áá'Utoqrr"
de irn circuito secuencial que usa u¡ registro se muestra
;;;;" y las entradas externas
:;il risr;\-a. El estado presente del registro
y los valores. de las salidas
determinan el siguienle estaio del registro"
el siguiente estado
externas. Parte del ci."uito combinaciánal d-etermina
valor del estadodel circui-
y la otra parte generála. sulidas. El siguiente
óott un pulso de reloj' Si el registro
to combinacionalse cargaen el registro si el
te dJbe establecer a 1; de otra manera'
tiene un terminal ¿" li.gu,
el siguiente
registro no tiene t".-i.,"i á" ."rgu (como en la Figut&'i-'t\,
pulso.de reloj'
valor del estado será trasferido automáticamenteen cada puede
un circuito secuencial
La parte de ciicuito combinacionalde 5'
de losrnétodos discutidos en el capítulo
ser ejecutada por.""rq"i.t"
con ROM' o con trn arreglológico
Se puedeconstruir;;;;;*p";rtas.SSI
registro,es posible reducir-el diseño de un
o-ár"rrá¡i" tplnl.-ü.u"ao^un conectadoa un registro'
cicuito secuencialal de un circuitó "o-'bittu.ional
cuya tabla
EJEMPLO 7-I: Diseñar un circuito secuencial
de estadose lista en Ia Figura 7-5(a)'
42. una en-
La tabla de estado eJpecificados flip-f loPSA r Y
y' Ét tiguiente.estado e información de sa-
trada r y una
".t.uáa la tabla:
iidu ." o"bti.tt" directamentede
A,(t + l) : )(4, 6)
Ar(t + l) : )(1, 2,5,6)
y(Ap Az,x) : )(3, 7)
A" At y
Los valores de términos mínimos son para las salidas
presente y las variables de entrada' Las
r, i". ."^i"s son el estado
para el siguiente v la salida pueden ser simpli-
il;;io".;
"*iráo
ficadaspoi medio de maPasPara dar:
At(t + l): Aé'
A z Q+ l ) : Az@x
l:Azx
EI diagramalógicose muestraen la Figura 7-5(b)'
271
Estado Entra Estado
presente da siguiente Salrda
At A2 x At A2 v
000 00 0
001 0l 0
010 0l 0
011 00 I
100 l0 0
l0l 0l 0
ll0 ll 0
lll 00 I
Di¡ección Salidas
r23 123
000 000
001 010
010 010
0ll 001 I I
100 100
l0l 010 2 2
rl0 rl0
lll 001
3 3
7-3 R E G I S T R ODSE D E S P L A Z A M I E N T O
Un registro capaz de desplazar su información binaria
hacia la izquierda
o hacia la derecha se llama registro de desplazamiento.
ia confieuración
272
sEc.7-3 R E G I S T R OD
SE DESPLAZAMIENTO
273
Trasferencia en serie
Entrada Salida
serial serial
Reloj
Cont¡ol de
desplazamiento
I
Cont¡ol de
d6plazamiento
* [LfLfLft
Tl T2 T3 T4
Desplazar
de¡echa
ap
I
Esta es una ope-
r.ació.nen serie típica porque ei resurtado de una operaci¿"
de un tiempo
de bit, puede depender no soramente en las entradai p.".."t..
sino en Ias
entradas previas.
Para mostrar que las operaciones de un tiempo der bit
. en los computa-
d . o r e se n . s e r i e r e q u i e r e n u n c i r c u i t o s e c u e n c i a l , s e d i s e ñ a r á
el sumador se_
rial considerandoel circuito secuencial.
a JQ KQ
0 000 0 OX
0 010 I 0x
0 100 I
I OX
0 lll 0 IX
I 00Ó I X1
I 0ll 0 XO
I i0l 0 XO
I lll I XO
2Bl
JQ: ,y
KQ:x'y':(x+y)'
S:x@y@e
7-4 C O N T A D O R E SD E R I Z A D O
282
.E
r¡t
Tabla 7-4 Secuencia de cuenta para un contador binario de rizado
i1
i:
I
Secuencia de cuenta Condiciones para complementar los flip-flops
A4 A3 A2 AI
0000 ComplementarAt
0001 ComplementarAt A . l irá de 1 a 0 y complementaA2
0010 ComplementafA,
00ll ComplementarA, A l irá de 1 a 0 y complementa A2 ;
0r00
f-\^l ComplementarA,
A 2 irá de 1 a 0 y complementa.4,3
^A^l
1000 y así sucesivamente
A3 irá de 1 a 0 y complemenra,4,
283
2A REGISTROS
C,O N T A D O R E Y
S UNIDADDE MEMORIA CAP. 7
@-o-@-@-@
ir
it
@-@-@-@*@
Figura 7-13 Diagrama
de estado
de un contador
BDCdecimal
Q4
o o o -j--!---qji I
Or o o tg
Figura?-lsDiagramadetiempoparaelcontadordecimaldelaFiguraT-14
285
Qs Qa Q2 Q1 Qa Q¿ Qz Qt
I o 2 dígito lo
I
dígito too dígito
E n u n c o n t a d o r b i n a r i o s i n c r ó n i c o c r e c i e n t e - d e c r e c i e n t ee l f l i p - f l o p e n l a
posición de menor orden se complementa con cada pulso. un flip-flop en
iualquier otra posición se complementa con un pulso siempre y cuando to-
dos los bits de menor orden sean iguales a cero. Por ejemplo, si el esta-
d o p r e s e n t e d e u n c o n t a d o r b i n a r i o d e 4 b i t s c r e c i e n t e - d e c r e c i e n t ee s
A l A 3 A 2 A t : 1 1 0 0 , l a c u e n t a s i g u i e n t e s e r á 1 0 1 1 .A , s i e m p r e s e c o m p l e -
menta. A, se complementa porque el estado presente de A, :0. A¡ se
complementa porque el estado presente de ArAl :00. Pero Aa no se com-
plementa porque el estado presentede A, A2At:100, el cual no es una
condición de soio ceros.
U n c o n t a d o r b i n a r i o c r e c i e n t e - d e c r e c i e n t ep u e d e s e r c o n s t r u i d o c o m o
se muestra en Ia Figura 7-17, excepto que las entradas de las compuertas
AND deben venir de las salidas complementadasde Q' y no de las salidas
287
_i
t- 6.ú
c
a
r.
¡-
!
!¡
<,J
288
o
o
4
(,
@
¡.
L
b!
6:x
< úr ;o j
289
2 9 O R E G I S T R OCSO, N T A D O R Y
E SU N I D A DD E M E M O R I A C A P .7
t
l
normales Q de l.s flip-flops previos. Las dos operaciones se pueden
com-
binar en un circuito. un contador binario d" contar hácia arriba o
hacia abajo se muest¡a, en la Figura T-1g. Los" ufiip-flops pu, r empleados en este
circuito pueden considerarse como flip-flops JK coi los terminales J
v K
unidos entre sí. cuando la entrada del cóntrol creciente es 1, el circulio
cuenta hacia arriba, ya que las entradas ? se determinan a partir de los
valores previos de las salidas nori:iales en
e. cuando la entráda del con-
trol decreciente es 1, el circuito contará hácia abajo, ya que las salidas
complementadas Q' determinan los estados de las eniradás ?'. cuando
a m b a s s e ñ a l e s c r e c i e n t e y d e c r e c i e n ú es o n 0 , e l r e g i s t r o n o c a m b i a
de es-
t a d o p e r o p e r r n a n e c ee n l a m i s m a c u e n t a .
Contador BDC
TQt: I
rQz: QáQ'
TQq: QzQt
TQa: QaQt + QoQrQt
y : QeQt
0000 0001 0
0001 00ll 0
0010 0001 0
00ll 0lll 0
0100 0001 0
0l0l 0011 0
0ll0 0001 0
0lll llll 0
1000 0001 0
l00l 1001 I
tabla por medio de las entradas X, Ias cuales sirnbolizan las condiciones
de no_importa para las otras entradas, bien sea que su valor sea 0 ó 1. La
entrada de borrado debe ir al estado de 1 para Las operaciones temporiza-
das listadas en las siguientes tres entradas en ia tabla. con las eniradas
de carga y, cuenta iguales a 0, las salidas no cambian bien sea que se apli-
que un pulso en el terminal CP o no. ttna entrada.de carga
d e 1 - c a u s au n a
trasf'erencia de las entradas /1 a 1., al registro durant'e el flarrco posi_
ti.'o de un pulso de entrada. La información de entrada se carga a
un re-
giritro a pesar del valor del terminal de cuenta, porque la entracla
de cuenta
se inhibe cuando el terminal de carga es 1. Sl ei terrninal de cuenta se
mantiene er.r 0, Ia entrada de cuenta controla la operación del contador.
l,as salidas cambia' a Ia siguie'te cuenta binaria, en la transición
dei
flanc'positivo de cada pulso de reloi, pero no ocurre ningún cambio
de
estadc si la entrada de cuenta es 0.
El contador de 4 bits mostrado en la Figura 7-19 puede encapsularse
en un ci. Se necesitan dos cI para la construcción clé un contador
de g
b i t s : - c u a t r o c I p a r a u n c o n t a d o r d e 1 6 b i t s y a s í s u c e s i v a m e n t e .E l a r r a s -
tre de salida de u;: cI debe ser conectadoal ierminal de cuenta del cI que
almacena los cuairo bits siguientes de mayor orden del contador.
Los contadores con la característica áe carga en paralelo que tienen
un número especifico de bits son muy útiles en el disóño de ioi sistemas
digitales. Más tarde se tratarán como registros con carga y característi,
cas de incremento. La función de incremento es u.ru op"ru"ión que agrega
1 al contenido presente del registro. Al habilitar el control de cuentá
d.-u-
rante el período de un pulso de reloj. er contenido del registro
se puede
incrementar en 1.
un contador con- carga en paralelo puede ser usado para generar cual-
quier número deseable de secuencias de cuenta. un co'lador
de r\ módu-
los (abreviado en inglés mod N) es un contador que pasa por una secuencia
repetida de N cuentas. Por ejemplo, un contadór binarió de 4 bits
es un
contador de 16 módulcrs(mod-16 counter). Un contador BDC es un conta_
d o r d e 1 0 m ó d u l o s ( m o d - t O c o u n t e r ). E n a l g u n a s a p l i c a c i o n e s , s e p u e d e .
no estar interesado ccn ios ly' estados particulare. qúe uru el contaáor
de
\' ¡nódulos. Si este es el caso, entonce; el contador con carga en paralelo
puecte usarse para co;rstruir cualquier cc¡ntador de l/ módulos, siendo
ly'
c'ralquier valor escogirio. Esto se explica en el siguiente ejemplo.
.-:
X x X Borrar a 0
X 0 0 No cambiar i,u
1 I X Cargar entradas
:
t 0 I Contar siguienteestadobinario
r¡
r- l
ZJJ i, r
T1
kt
294 R E G I S T R OC
SO, N T A D O R EYS U N I D A DD E M E M O R I A CAP 7
i
se cargan al registro. Así, el contador pasa por los estados binarios
0 , 1 , 2 , 3 , 4 y 5 p a r a r e g r e s a rl u e g o a c e r o . E s t o p r o d u c e u n a s e c u e n -
cia de seis cuentas.
La entrada de borrado del registro es asincrónica es decir,
que no depende del reloj. En la Figura 7-20(b), la compuerta NAND
detecta la cuenta de 0110, pero tan pronto ocurra esta cuenta, el
registro se borra. La cuenta 0110 tiene oportunidad de permane-
cer por algún tiempo porque el registro va inmediatamente a cero.
Un pico momentáneo ocurre en la salida 42 cuando la cuenta va
de 0101 a 0110 e inmediatamente a 0000. Este pico momentáneo
puede.ser indeseable y por ello no se recomienda esta configrra-
ción. Si el contador tiene una entrada de borrado sincrónica, es
posible borrar el contador con el reloj después cle ocurrir Ia cuen-
ta 0101.
En vez de usar las primeras seis cuentas,se puede desear
escogerlas últimas seis cuentas desde 10 hasta 1 5 . E n e s t e c a s o
es posible tomar ventaja del arrastre de salida para cargar un
A
A3 ''¿ Al A ^ ^A3 A
Al
Cuenta: I Cuenta: 1
Borrado - I +Carga: 0
CP CP
Entradas- 0
Las entradas no tienen efecto
( a ) E s t a d o sb i n a r i o s 0 , 1 , 2 , 3 , 4 , 5 ( b ) E s t a d o sb i n a r i o s 0 , 1 , 2 , 3 , 4 , 5
A4 A3 A) A1
AA A. A
Al
Cuenta: I
Contador de Contador de
la Fig. 7-19 Borrado - I la Fig. 7-19
14 13 12 Il CP
t0l0 0011
(c) Estadosbina¡ios10,11,12.13,14,l5 ( d ) Estados binarios 3, 4, 5, 6,
7 - 6 S E C U E N C I ADSE T I E M P O
s n u n s i s t e m a d i g i t a l s e p r o d r r c ee n l a u l i i -
L a s e c u e n c i ad e l a s t . ' p e r a c i o n e e
dad de control. L-A."unidadde con_trol que superviza las operactotresen un
sistema dieital Cóiiilsti.ia normalmente en señales de tiemp<' que deter-
m i n á " i a s ó c u e n c i a c l e t i e m p o e n l a c u a l s e e j e c u t a n l a s o p e r a c i c , t r e sL' a s
s e ó u e . r ó i a ld e t i e m p o e n l a u n i d a d d e c o n t r o l p u e d e n g e n e r a r s ef á c i l m e n t e
por medio de co¡t¿dores g registros de desplazamiento.Esta sección de-
muestra el uso de estas funciones MSI en la generación de señales de
tiernpo para la unidad de control.
Señales de tiempo
c"
2
C o mi e n z o J
Pa ¡ada
| .-Tiempo
? de pala[ra . g prrlsos*l-
Contador Johnson
Un contador de anillo de ft-bits circula un solo bit por los flip-flops para
suministrar A estados distinguibles. El número de estados pueden doblar-
se si el registro de desplazamiento se conecta como un contador de anillo
de final conmutado (switch-tail ring counter). Un contador de anillo de
de final conmutado es un registro de desplazamiento circuiar con la salida
complementada del último flip-flop conectado a Ia entrada del primer flip-
flop. La Figura 7-23(a) muestra tal registro de desplazamiento. La conexión
circuiar se hace de la salida complementada del flip-flop del extremo de-
recho a la entrada del flip-flop del extremo izquierdo. El registro desplaza
su contenido una vez a la derecha con cada pulso de reloj y al mismo tiem-
po, el valor complementado del flip-flop E se trasfiere al flip-flop A. Comen-
zando de un estado de borrado, el contador de anillo de final conmutado
pasa por una secuencia de ocho'estados de la manera Iistada en la Figura
7-23(b). En general un contador de anillo de final conmutado de A-bits pa-
sará a través de una secuencia de 2ft estados. Comenzando en 0, cada ope-
ración de desplazamiento inyecta unos por la izquierda hasta que el regis-
tro se llene de sólo unos. En las secuencias siguientes, se inyectan ceros
por la izquierda hasta que el registro se llene con 0.
Un contador Johnson es un contador de anillo de final conmutado de
A-bits con 2k compuertas decodificadoras para suministrar salidas para
2É señales de tiempo. Las compuertas decodificadoras no se muestran en
(al Contadorde anillo lvalrlr inicial = 10001
To Tt T) T3
Decodificador
2x4
Habilita
cuenta
a"
a,
n l--l
tl
T2 -,
( c ) S e c u e n c i a d e c u a t r o s e ñ a l e sd e t i e m p o
298
1r
I 0000 A'E'
2 1000 AB'
J 1100 BC'
4 lll0 CE'
5 llll AE
6 0l1l A'B
'7 B'C
00ll
8 0001 C'E
requerida
deconteoy decodificador
(b) Secuencia
Figura 7'23 Construcciónde un contadorJohnson
UNIDAD
DE MEMORIA
lectu ra
n palabras Señales
m bits por palabra de control
escntura
Registro separador
de memoria
ent¡ada salida
Información
43
0000101010 42 0-l0lll0
4l
Registro de direcciones
de memoria (MAR) 40
10010010
Registroseparadorde memoria(MBR)
Unidad
Uniüad
de memoria
de memoria
MAR = 42 0l10llr0 00000000 0ll0l I I 0
304
Unidad Unidad Unidad
de memoria de memoria de memoria
MAR = 42 0r101110 00000000 r0010 010
una memoria de núcleo magnético requiere dos medios ciclos para leer
o escribir. EI tiempo que se toma la memoria para cubrir los doi medios
ciclos se llama tiempo de un ciclo de memoria.
E l m o d o d e a c c e s od e u n s i s t e m a d e m e m o r i a s e d e t e r m i n a p o r e l t i p o
de componentes usados. En una memoria de acceso aleatorio. se debe oen-
sar que los registros están separados en el espacio, con cada registr., n"rj-
pando un lugar espacial particular en una memoria de núcleos magnéticos.
E n u n a m e m o r i a d e a c c e s os e c u e n c i a l , l a i n f o r m a c i ó n a l m a c e n a d a e n a l s ú n
medio no es accesibleinmediatamente pero se obtiene solamente en ciertos
intervalos de tiempo. Una unidad de cinta magnética es de este tipo. Cada
lugar.de la memoria pasa por las cabezasde lectura y escritura a la vez,
pero la información se lee solamente cuando se ha logrado la palabra soli-
citada. El tiempo de acceso de una memoria es el tiempo requerido para
seleccionaruna palabra o en la lectura o en la escritura. En una memoria
de acceso aleatorio, el tiempo de acceso es siempre el mismo a pesar del
l u g a r e n e l e s p a c i o p a r t i c u l a r d e l a p a l a b r a . E n u n a m e m o r i a s e c u e n c i a l ,e l
tiempo de acceso depende de la posición de la palabra en el tiempo que se
solicita. Si la palabra está justamente emergiendodel almacenamienlo en
e l t i e m p o q u e s e s o l i c i t a , e l t i e m p o d e a c c e s oe s j u s t a m e n t e e l t i e m p o n e c e -
sario para leerla o escribirla. Pero, si la palabra por alprna razón está en
l a ú l t i m a p o s i c i ó n , e l t i e m p o d e a c c e s oi n c l u y e t a m b i é n e l t i e m p o r e q u e r i d o
para que todas las otras palabras se muevan pasando por los terminales.
A s í , e l t i e m p o d e a c c e s oa u n a m e m o r i a s e c u e n c i a l e s v a r i a b l e .
L a s u n i d a d e s d e m e m o r i a c u y o s ' c o m p o n e n t e sp i e r d e n i n f o r m a c i ó n a l - '¡.
m a c e n a d a c o n e l t i e m p o o c u a n d o s e c o r t a e l s u m i n i s t r o d e e n e r g í a ,s e d i c e {,,
q u e s o n u o L á t i l e s . U n a u n i d a d d e m e m o r i a d e s e m i c o n d u c t o r e se s d e e s t a :'.
categoría ya que sus celdas binarias necesitan potencia externa para man- ,
I
I
tener las señales necesarias. En contraste, una unidad de memoria no vo-
látil, tal como un núcleo magnético o un disco magnético, retiene la infor-
mación almacenada una vez que se haya cortado el suministro de energía.
Esto es debido a\que la infbrmación acumulada en losrcomponentes magné-
ticos se manifigstan por la dirección de magnetizacion, la cual se retiene
cuando se cor*,a la energía. una propiedad no volátil es deseable en los'
computadores'digitales po.q.," muchás programas útiles se dejan perma-
;"j
kil
3A6 REGISTRoS
co, N T A D o R E SY U N I D A DD E M E M o R I A CAP. 7
Entrada Salida
Selección
Entrada Salida
Lectura,'' escrttura
¡'¡ I
i-r:'l
Entrada
de datos
Palab¡a 0
D1
Entradas
de dirección decodi-
ficador
2x4
lJl
Hal¡ilitación
de memoria
Lectura,, escritura
Figura
"ixT?;.
7_3O Memoria de circuito intesrado
q o*-
Corriente
' Cor¡iente
Corriente
negativa positiva
Almacenar0 (b) Almacenar 1 (c) Figura de histéresis
i¿,
310 REGISTRoS
co, N T A D o R E SY U N I D A DD E M E M o R I A CAP, 7
$
rándola con Ia unidad de memoria de CI de la Figura 7-30, se nota que Ia
celda binaria es ahora el núcleo magnético y los álambres que lo encade-
nan. La excitación del núcleo se logra por medio de un pulso de corriente
i
generadopor un circuito accionador (DR: Driver). La información de sa-
J
lida pasa por un amplificador sensor (sA: Sense Amplifier) cuyas salidas
ponen a uno los flip-flops en el registro separador. Cada núcleo está enla-
zado por tres alambres. El alambre de palabra es excitado por un acciona-
dor de palabras y pasa por tres núcleos de una palabra. El álambre de bits
es excitado por un accionador de bit y pasa a través de cuatro núcleos en
la misma posición de bit. El alambre sensor enlaza los mismos núcleos que
el alambre de bits y se aplica a un amplificador sensor que conforma el
pulso de voltaje cuando se lee 1 y rechaza la pequeña distorsión cuando
se lee 0.
I
I
Alambre
sensor
Tiempo
Corriente
de lectura Salida de alambre sensor
=.&
orc
x@
6p
@o
D.R: Accionado¡
SA: Amplificador
sensor
Entrada de
direcciones
Información
de entrada
Registro
separador
B1 82 83
lnformación de salida
3tl
312 R E G I S T R OC
SO, N T A D O R EYS U N I D A DD E M E M O R I A CAP. 7
REFERENCIAS
]. The TTL Data Book for Design Engineers.Dallas, Texas: Texas Instruments,
Inc., 1976.
Blakeslee,T. R., Dígital Design with Standard MSI and LSI. Nueva York: John
Wiley & Sons,1975.
3. Barna A. y D. I. Porat, Integrated Circuits in Digital Electronics. Nueva York:
John Wiley & Sons,1973.
A
Taub, H. y D. Schilling, Digital Integrated Electronics. Nueva York: McGraw-
Hill Book Co., 1977.
5 . Grinich, V. H.y H. G. Jackson,Introduction to Integrated Electronics. Nueva
York: McGraw-Hill Book Co., 1975.
6 . Kostopoulos,G. K., Digital Engineering.Nueva York: McGraw-Hill Book Co.,
1975.
7 . Scott, N. R., Electronic Computer Technology.Nueva York: McGraw-Hill Book
Co., 1970,Capítulo 10.
Kline, R. M., Digital Computer Design. EnglewoodCliffs, N.J.: Prentice-Hall,
Inc., 1977,Capítulo 9.
PRO BLEMAS
Estado Estado
presente Entrada siguiente
00 0 00
00 I 0l
0l 0 l0
0l I 0l
l0 0 10
l0 I ll
ll 0 l0
ll I 0l
Pulsos de
cuenta
;i.
Lógica d e trasfe rencia
entre registros
8 -1 I N T R O DU C C I O N
A
,
n8 A. A. I A3 ^)
A I
ñl
I6
bits se divide en dos partes en (d). Los bits 1a 8 se designan por medio de
la letra L (viene de low) y los bits 9 a 16 se les asigna la letra H (viene de
high). El nombre del registro de 16 bits es PC. El símbolo PC(H) se refiere
a las ocho celdas de mayor orden y PC (L\ se refiere a las ocho celdas de
menor orden del registro.
Los registros pueden especificarse en el Ienguaje de trasferencia entre
registros con una afirmación declaratoria. Por ejemplo, los registros de la
Figura 8-1 pueden definirse con las afirmaciones declaratorias tales como:
A<_B
x'Tr: A <__
B
La función de control se determina con dos puntos. Esta simboliza las ne-
cesidades que la operación de trasferencia puede ejecutar por medio de
los materiales, solamente cuando la función de Boole x'Tr:1, es decir,
cuando la variable ¡:0 y la variablede tiempo Tt:1.
Cada proposición escrita en el lenguaje de trasferencia de registros
implica una construcción con materiales para configurar la trasferencia.
La Figura 8-2 muestra la configuración para la proposición escrita ante-
riormente. Las salidas del registro B se conectan a las entradas del regis-
tro A, y el número de líneas en esta condición es igual al número de bits
en los registros. El registro A debe tener una entrada de control de carga
de tal manera que pueda habilitarse cuando la función de bontrol es 1.
'cj
il
RegistroB
FiguraS-2Configuraciónconcomponentesdelaproposiciónx,T'..A_B
entrada adi-
Aunque no se muestra, se asume que.el registro A tiene una
de reloj. La función de
cional que acepta pulro* continuos sincronizados
de un inversor y una compu€rta AND. Se asu-
control se genera por medio
que la unidad de control que genera la variable de tiempo T1
*" i"-¡i¿i
A'
.u-ri.r".o'iza con los mismos pulsos dé reloj que se aplican al registro
activa durante un período de pulso de
La función ¿, .o.,iroi p.r-u.r"""
igual a 1) y la trasferencia ocurre
."lo¡ 1.,rundo la variable de tiempo es
d.r.átti" la siguiente transición de un pulso de reloj'
lista¡
Los símbolos básicos de la lógica de trasferencia de registros se-
8-1. Los registros se denotan por letras mayúsculas y los nú-
en la Tabla
para dis-
meros pueden estar coniiguos a las letras. Los suscritos se usan
Los paréntesis se usan para
tinguir las celdas individuales del registro.
Lá flecha denota una trasferencia de
aefinir una porción de un registro.
y lu di."""ión de la misma. Dos puntos terminan una función
l"iá.*u.i¿"
de control y i, Se usa para separar dos o más operaciones que se eje-
"o-u
cutan al mismo tiempo. La proposición:
Tt: A<-8, B<-A
de dos
denota una operación de intercambio que trasfiere los contenidos
pulso de reloj común. Esta operación simultánea es
registros durante un
los .ugirt-r con flip-fiops maestro esclavo o por disparo de
po"ri¡tu en
flanco.
- de
Las llaves cuadradas se usan conjuntamente con la trasferencia
palabra de memoria y el registro ence-
memoria. La letra M designa una
para la memoria'
rrado dentro de las llaves Juadradas significa la dirección
Esto se explica en más detalle a continuación'
de dos
Hay ocasiones cuando el registro de destino recibe información
tiempo. Considérese dos propo-
fuentes pero evidentemente tro Ll -it-o
siciones:
Tt: C<-A
Tsi C<-B
A va a ser tras-
La primera línea establece que el contenido del registro
u n a v a r i a b l e d e t i e m p o 71. La segunda
ferido al registro C cuando ocurre
mismo registro de destino que la primera pero con un
proposición usa el
321
Tabla 8-l Símbolos básicos de la lógica de trasferencia entre
resistros
Bus de trasferencia
Multiplexor
cuádruple
Habilitar 2xl
MUX (Figura5-17)
')
T.
Il
322
323
N T R ER E G I S T R O S
T R A S F E R E N CEI A
sEc. 8-2 it
como
ejemplo los requerimientos de trasferencia entre los tres registros
8-4. Hay seis líneas de datos y cada registro re-
.á -rrertra en ia Figura
multiplexó para selecóionar entre dos fuentes. Si cada registro
é"1.r. r"
y tres multipiexores.
áá.,siste de n flip-flop., huy necesidad de 6 n líneas
A medida qrru u,r^.rria'el número de registros, aumertta el número de mul-
tipiu*or". y el número de líneas d e i n t e r c o n e x i ó n . S i s e restringe la tras-
ferencia a uno a uno, el número de caminos entre los registros, pueden
donde la
."¿n.it.u considerablemente. Esto se muestra en la Figura E-5'
común a través de
,uiiáu y entrada de cada flip-flop se conecta a la línea
interruptor. Todos los interrup-
un circuito electrónico que actúa como un
trasferencia'
tores están abiertos normalmente hasta que se requiera una
Para una trasferencia de F, a F3 , por ejemplo, se cierran los interrupto-
y S] para formar el camino requerido' El esquema puede ser exten-
raa S,
- - a io,,.girt.os
dido con n flip-flops, y este requiere n Iíneas comunes.
la información
Un grup; de alambres a'través áe Ios cuales se trasfiere
binaria ñlt u ¡it, un bit a la v e z e n t r e r e g i s t r o s s e l l a m a . b u s . Para la tras-
paralelo, el número de líneas en el bus es igual al número de bits
rerencia en
al sistema de
lo. regisiros. La idea de un bus de trasferencia es análoga
"" lado para el otro' En vez de
i.u.porte""entral usado para llevar gente de un
privado para ir de un lugar a otro. se usa un
que'cada viajero use traiporte
que esté dispo-
sistema de bls y los viajeros espelan en fila su turno hasta
nible el trasporte.
y uu
IJn sistema de bus común puede construirse con multiplexores
pueda seleccionarse pol
registro de destino para que el bus de trasferencia
seleccionan un registro fuen-
,"Eaio de un decodiiicador. Lo. multiplexores
para
l" pu.u el bus y el decodificador selecciona un registro de destino
desde el bus. La construcción de un sistema de
trasferir la infoimación
para cuatro registros se dibuja en la Figura 8-6. Los cuatro bits en Ia
bus
-i.áu posición sijnificativa de ios registros pasan a_través de un multi-
multi-
;i.;;; á. ¿ u 1 líñea para formar una línea de bus. Solamente dos
uno para dos bits significativos de
plexores se muestran en el diagrama:
y uno para dos bits significativos de mayor orden. Para re-
*".rol. orden
(¡{
irr
1.1
;
1
:-
í:l
Seleccionar
RegistroD
n LINEAS DE BUS
LíneaNo.1
324
q
sEc. 8-2 T R A S F E R E N C IEAN T R ER E G I S T R O S3 2 5
Trasferenciade memor¡a
R: MBR <- M
W: M <- MBR
Unidad
de memoria
Figura 8-7 unidad de memoria que se comunica con dos registros externos
q
S E C .8 - 3 M I C R O O P E R A C I OANREIS S D E D E S P L A Z A M I E N3T2O7
T M E T I C ALSO. G I C AY
W : M l A t f < -8 2
E s t a e s u n a o p e l a c i ó n d e e s c r i t u r a , c o n e l r e g i s t r o A 1 e s p e c i f i c a n d ol a d i -
rección. Las llaves cuadradas después de la letra M dan el registro direc-
cionado usado para seleccionar el registro de memoria M. La proposición
no especifica explícitamente Ios buses. Empero, ésta implica las entradas
de seiección requeridas por los dos multiplexores que forman los buses de
dirección y de datos.
La operación de lectura en una memoria con buses puede especificarse
de manera similar. La proposición:
R : B 0< - M l A 3 l
8-3 M I C R O O P E R A C I O NAERSI T M E T I C A L
SO Y
, GICAS
DESPLAZAMIENTO
,
Las microoperaciones de trasferencia entre registros no cambian el conte-
nido de infórmación binaria, cuando ésta pasa del registro fuente al regis-
tro de destino. Todas las demás microoperaciones cambian el contenido
de la infbrmación durante la trasferencia. Entre todas las operaciones
posibles que pueden existir en un sistema digital, hay un_conjunto básico
áel cual iodás Ias demás operaciones pueden obtenerse. En esta sección
se define un conjunto de microoperaciones básicas, su notación simbólica
y los materiales digitales que las configuran. Se pueden definir otras mi-
trooperaciones con símbolos adecuados, si es necesario, para amoldarse
a una aplicación particular.
L a s m i c r o o p e r a c i o n e sa r i t m é t i c a s b á s i c a s s o n : s u m a r , r e s t a r , c o m p l e m e n -
tar y desplázar. Los desplazamientos aritméticos se explican en la Sección 'Iodas
8-? conjuntamente con el tipo de representación en datos binarios.
las demás opelaciones aritméticas pueden obtenerse de una variación o
secuencia de estas microoperaciones básicas.
Entradas
Lectura
Bus de Unidad
dirección de
memoria
Esc¡itura
Carga
Selecci<ín
Decodi-
Selección ficador
de destino
F<-A-I B
F<-A+8+l
Tzi A<-Al B
Ts: A<-A * |
Designación
simbólica Descripción
RegistroB
¡umaoor f
paralelo
(Fis.5-1)
S uma¡
T2 RegistroA
Incrementa¡ ( F i e .7 - 1 9 )
Ts
F<_A@ B
Esta especifica una operación lógica que considera cada par de bits en los
registros como variables binarias. Si el contenido del registro A es 1010 y
el del registro B 1100, Ia información trasferida al registro F es 0110:
l0l0 contenidode A
I 100 contenido de B
0l l0 contenido de F .-A O B
q
'q
S E C .8 - 3 S D E D E S P L A z A M T E t \3r O
T M E T I C ALSO, G I C AY
M I C R O O P E R A C I OANREIS 31
Designación
simbólica Descripción
A <--shlA, A, <_An
e-sun desplazamiento-.circular
que trasfiere el bit de la extrema izquierda
desde An hasta el flip-flop ae ta extrema derecha
¿,.-n. manera si-
milar:
? z : s i ( C : 0 ) e n t o n c e (sF * 1 ) p o r t a n t o( F * 0 r
C'Tr: F<- I
CTt: F<--0
xTr: F <- I
x'Tr: lf<- 0 .; .l
¡
,i
La variable¡: 1 si C:0 peroes igual a 0 si C I 0'
Cuando se escribenproposicionesde control condicional,se debe tener
parte
en cuenta que la proposiiión establecidadespuésde la palabra sl, es
de la función de cbntrol y no parte de la proposiciónde microoperación.La
condición debe establecerse claramente y debe poder configurarsecon un
circuito combinacional.
.: 'i
.'.'
8-5 DATOS BINARIOS DEL PUNTO FIJO
1. Signo-magnitud.
de 1.
2. Signo-complemento
de 2.
3. Signo-complemento
Suma aritmética
negativos
I
están representados_9n-la forma de signo-magnitud, requiere que se
com-
paren estos signos. Si los dos signos no son iguales, se
óo*pu.án las mag-
nitudes relatir-asde los números y luego se resta el menor-del mayor.
ñs
necesa¡io determinar tamtlién el signo del resultado. Este es
un proceso
q u e r e q u r e r e u n a s e c u e n c i a d e d e c i s i o n e sd e c o n t r o l d e l a
misma que cir_
cultos que puedan co-mparar, sumar y restar números, cuando ."
con materiales digitales. "orrfigu.u
compárese ahora el procedimiento anterior con el procedimiento que
forma la suma de dos números binarios con signo, los números ne-
g a t i r o - r e s t á n r e p r e s e n t a d o se n l a f o r m a d e c o m p l e".ru.rdo
mento de 1ó 2. Estos
procedimientos son muy simples y pueden fo¡mularse
de la sizuiente ma_
nera:
+ 6 0 000110 6 I il1010 F
-r+
+ 9 0 001001 + 9 0 001001
+6 000110* 9 I Il0lll
,+
9 ll0lll ¡ 9 l Il0lll
3 I llll0l * rt 18 I l0lll0 \
+6 0001l0 6 l lll00l
+
+9 001001 +9 0 001001
+15 0 00llll
C':
+3 0 00001l
+6 0001l0 9 I ll0ll0
9 I l0ll0 9 I I10110
3 I llll00 t}tt00
¡tt -
\-l
-18 I l0l l0l
+9 0 001001
-9 I ll0ll0
-0 l llllll
y e l r e s u l t a d o e s u n c e r o n e g a t i v o , e s d e c i r , el complemento de 0 000000
(ceropositivo).
+0 -0
En signo-magnitud 0 0000000 l 0000000
En signo-complemento
de 1 0 0000000 l illllll
En signo-complemento
de 2 0 0000000 ninguna
Ambas representaciones de signo-magnitud y complemento
de 1 tienen
asociadas con ellas la posibilidad de "r.r negativo. La representación
del "".o un cero positivo.
.signo-complemento de 2 tiene solamente Esto ocurre
debido a que el complemento de 2 de 0 000000 ("".n pá.itiro)
0 000000 y
puede ser obtenido del complemento de 1
m á s t ( e s d e c i . 1 1 1".1 1 1 1 * 1 ) t e -
niendo en cuenta que se descarta el arrastre
final o lleva final de reinicio.
El rango de los números enteros binarios q"" pr"aarr^r".
u"orrrodados
en un registrode n:&+t u r t e s - r ( 2 É - 1 ) , d o n d e s e r e s e r v a n& b i t s p a r a
el. número y un bit para el signo. u.r regisiro
s ¡it, lu.a" almacenar
números binarios en el rango á" *
12, _ 1) : -+"o" 127. Sin embargo, como la
representación de signo complemento de 2 tiene
soramente un cero, debe
acomodar un número_más que las otras dos represe";¿;;;;r.
considérese ¡
la representación de los números mayores y menores:
Signo Signo
I
complemento de 1 complemento de 2
*126:0 llllll0 - 126: I 0000001
r 0000010
+127:0 lllllll -127 : I 0000000 l 0000001
+ 128(imposible) - 128(imposible) I 0000000
En la representación
.de signo-complementocre 2, es posibre representar
- 128 con ocho bits. En general, la representaciónde sig.ro-complemento
de 2 puede acomodarnúmeros en er rango
- I y n es el número de bits en + (20- 1) a - 2k, d.ond.e
h: n
el registro.
Sustracción aritmética
(!A)-(-B):(t.q)+(+r)
(t¿) - (+ B) : (tA) + (_ B)
cambiar un número positivo a un número negativo
se hace fácilmente to-
t"1q9 el complementode 2 (incluyendo el blt a"
sig.,oj. Lo contrario es
también verdad, por.queel complementodel
ro a su valor original. ar núme-
"o."pi"."É"1á'.Jgr".u
S E C .8 - 6 S O B R E C A P A C I D3A
39D
L a s u s t r a c c i ó n c o n n ú m e r o s e n c o m p l e m e n t od e 1 e s s i m i l a r . e r c e D l { '
por el arrastre final o lleva final de reinicio. La sustraccion con signtr-n,-g-
nitud requiere que solamente el bit signo del sustraendo se complemente.
La suma y resta de los números binarios en la representaciónde signo-
magnitud se demuestra en Ia Sección 10-3.
Debido a que el procedimiento más sencillo para sumar ¡' restar nú-
meros binarios con números negativos lo constituye la forma de signo-
complemento de 2, la mayoría de las computadoras adoptan esta represen-
tación sobre la forma más familiar de signo-magnitud. La razón por la cual
e l c o m p l e m e n t o d e 2 s e e s c o g e ,e n v e z d e l c o m p l e m e n t o d e 1 . e s p a r a e v i t a r
el arrastre final o lleva final de reinicio v la ocurrencia de un cero negativo.
8-6 SOBRECAPACIDAD
Crrando dos números con n dígitos cada uno se suman y la suma ocupa
n f 1 d í g i t o s , s e d i c e q u e h a y u n d e s b o r d a m i e n t o p o r s o b r e c a p o c i d o d .E s t o rf
es verdadero para los números binarios o números decimales con o sin i
signo. cuando se hace una suma con lápiz y papel, una sobrecapacidad
no ,rtt problema ya que no hay limitaciones por el ancho de la página I
arrastre: 0 I arrastre: l0
+35 0 10001I -35 I 0lrl0l
+40 0 10r000 -40 I 0l 1000
*75 0 l l0l0l
En amb.s casos, se observa que el resultado de T bits, que debería ser po-
s i t i ' t ¡ . e s n e g a t i v o o v i c e v e r s a . o b v i a m e n t e , l a r e s p u e s t ab i n a r i a e s i n c o -
rrecta v el algoritmo para sumar números binarios representados en la
to¡ma de complemento de 2, como se ha establecido antes, falla en producir
: e s u l t a d o s c o r r e c t o s c u a n d o o c u r r e u n a s o b r e c a p a c i d a d .N ó t e s e q u e s i e l
arrastre que se ernana de la posición del bit de signo se toma como el signo
del ¡esultado, entonces los 8 bits de la respuesta serán correctos.
Lina condición de sobrecapacidad puede ser detectada observando el
rrrasire c lo posición del bit del signo y el arrastre de la posición del bit
oel signo. Si estas dos categorías no son iguales, se producen condiciones
' i e s ' r b ¡ s c ' ¿ p a c i d a dE. s t o s e i n d i c a e n e l e j e m p l o a n t e r i o r e n e l c u a l s e m u e s -
I fan explícitamente las dos categorías. El Iector puede tratar varios
e,emplos de números qué no producen una sobrecapacidad para observar
cue estos dos arrastres se convertirán ambos en 0 ri 1. Si estos se aplican
a u n a c o m p u e r t a O R e x c l u s i v a , s e d e t e c t a r á u n a s o b r e c a p a c i d a dc u a n d o
i ¿ ls a l i d a d e i a c o m p u e r t a e s 1 .
La suma de dos números binarios con signo, cuando se representan
Lrs numeros negativos en la forma de signo y complemento de 2, se confi-
gi.rracon funciones digitales como se muestra en la Figura 8-10. El registro
.f aimacena un sumando con su bit de signo en la posición ,4". EI regis-
t r o B ¿ r l m a c e n ae l o t r o s u m a n d o c o n s u b i t d e s i g n o e n B n . L o s d o s n ú m e -
r o s s e - q u m a np o r m e d i o d e u n s u m a d o r e n p a r a l e l o d e n b i t s . E l c i r c u i t o
sumador completo (FA) en la etapa n (los bits de signo) se muestra explí-
citamente. El arrastre que va a este sumador completo es C, . El arrastre
que sale del sumador €S C,11. La función OR exclusiva de estos do= arras- r
tres se aplica a un flip-flop de sobrecapacidad V. Si despues de ia sun-ra. I
V:0, entonces la suma cargada en A es correcta. Si y:1. hav una :''hre-
capacidad y la suma de n bits es incorrecta. El circuito mt'st¡ado en ia .:
F i g u r a 8 - 1 0 p u e d e e s p e c i f i c a r s ep o r m e d i ó d e l a s i g u i e n t e p r . p r 5 ¡ 6 ¡ q ¡ '
¡
T: A<-A+8, V<-C,OC,*t I
1
L
I
Las variables de la declaración se definen en Ia Figura 8-10. \otese que las
variables C, y Cn+r no representan registros, ellas representan arras-
tres del sumador paralelo.
8-7 AS
DESPLAZAMIENTO RITMETICOS
E n l a r e p r e s e n t a c i ó nd e s i g n o m a g n i t u d , I o s b i t s d e l n ú m e r o s e d e s p l a z a n
a la izquierda con un 0 colocado en la posición menos significativa. En ia
cle signo-complementode I todo el registro se desplaza v el bit del signo
s e c o l o c a e n l a p o s i c i ó n m e n o s s i g n i f i c a t i v a . E I s i g n o - c o m p l e m e n t od e 2 e s
. i m i l a r . e x c e p t o q u e u n 0 e s d e s p l a z a d oa l a p o s i c i ó n m e n o s s i g n i f i c a t i v a .
C ' o n s i d é r e s ee l n ú m e r o 1 2 d e s p l a z a d o a l a i z q u i e r d a p a r a p r o d u c i r 2 4 :
8-8 D A T O SD E C I M A L E S
+0043 85
1. Signo-magnitud.
2. Signo-complemento
de 9.
3. Signo-complementode 10.
o 375
f
9 760
0 135
E_
] ? el segundonúmero representaun menosy 260 es el complementode
10,de"" Se
^240. .detectauna sobrecapacidad".r "ttu representacióna partir
del uR exclusiva de los arrastres que entran y salen de la posición áe los
dígitos del signo.
, Las operacionesaritméticas decimales pueden usar los mismos sím-
bolos que las operacionesbinarias siemprey óuandola base de los números
se entienda como 10 en vez de 2. La proposición:
A<-A+B+l
SEc, 8-9 DATOS DEL PUNTO FLOTANTE345
primer registro
E
segundoregistro
(coeficiente) (exponente)
02601000
coeficiente
E
xponente
t2601000
coeficiente exponente
0100111000
coeficiente exponente
I l l p u n t o d e c i m a l s e i n t e r p r e t a e n l a r e p r e s e n t a c i ó nd e u n
ia siguiente manera:
c.r-
srgno srgno
t f
-t
l0r732l
Punto octal inicial I
coeficiente exponente
C u a n d o l a r e p r e s e n t a c i ó no c t a l s e c o n v i e r t e a b i n a r i a , e l v a l o r b i n a r i o d e l
registro se convierte en:
000llll0ll0l0 1000010
coeficiente exponente
3 4 8 L o G I c AD E T R A S F E R E N C
EINAT R ER E G I S T R o S cAP. 8
I
nencial debe hacerse igual antes de que los coeficientes se sumen o resten.
Esta alineación se hace desplazandoun coeficiente mientras que su expo-
nente se ajusta hasta que sea igual al otro exponente. La multiplicación o
división de punto flotante no requiere aiineación del punto del radical. El
producto puede formarse multiplicando los dos coeficientes y agregando
los dos exponentes. La división se logra de la división con los coeficientes
y la sustracción del exponente del divisor menos el exponente del dividendo.
8 - 1 O D A T O SN O N U M E R I C O S
Los tipos de datos considerados hasta ahora representan números que el
computador usa como operandos para las operaciones aritméticas. Sin
embargo, un computador no es una máquina que sólo almacena numeros
y hace aritmética a alta velocidad. A menudo, un computador manipula
símbolos en vez de números. La mayoría de programas escritos para los
usuarios de computador están en forma de caracteres, es decir, un con-
junto de símbolos que abarcan letras, dígitos y varios caracteres especia-
Ies. Un computador es capaz de aceptar caracf,eres 1en código binario),
almacenarlos en la memoria y realizar operaciones con los caracteres tras-
feridos a un componente de salida. Un computador puede funcionar como
una máquina manipuladora de una cadena de caracteres. Por cadena de
caracteres se implica una secuencia finita de caracteres escritos uno
después de otro.
Los caracteres se representan en los registros del computador por
medio de un código binario. En la Tabla 1-5, se listaron 3 códigos de ca-
racter diferentes de uso común. Cada componente del código representa
un. carácter y consiste de seis, siete u ocho bits dependiendo del código.
El número de caracteres que pueden ser almacenados en un registro
depende de la longitud del registro y el número de bits usados en el códi-
gc. Por ejemplo, un computador con una longitud de palabra de 36 bits que
usa un código de 6 bits y puede almacenar seis caracteres por palabra. Las
cadenas de caracteres se almacenan en la memoria en lugares consecuti-
vos. El primer carácter en la cadena puede ser especificado a partir de la
dirección de la primera palabra. El último carácter de la cadena puede
encontrarse a partir de la dirección de la última palabra, o por especifica-
ción de una cuenta de caracteres, o por una marca especial que designa el
final de la cadena de caracteres. La manipulación de caracteres se hace en
los registros de la unidad de proceso con cada carácter representando una
unidad de información.
Otros símbolos diferentes pueden ser almacenados en los registros del
computador en forma de código binario. Un código binario puede ser adop-
tado para representar notas musicales para la producción de música por
computador. Códigos binarios especialei rotr nécesarios para representar
patrones de lenguaje para un sistema automático de reconocimiento de
lenguaje hablado. La representación de caracteres por medio de una ma-
triz de puntos en pantalla CRT (tubo de rayos catódicos) requiere una re-
presentación en código binario por cada símbolo que se representa. La
información de campo para supervisar la operación de un proceso contro-
sEc.8-10 D A T O S N O N U M E R I C O S3 4 9
0l0l 0101 A
llll 0000 B
llll 0l0t A<_ A\/B
,' j
,:
3Ñ L o G I c A D E T R A S F E R E N c IE
A N T R ER E G I S T R o S CAP. 8
0l0l 0l0l A
0 0 0 0l l l l B
0000 0l0l A <_ A A B
0lr0 0t0l A
0 0 0 0l l l l B1
0000m A<-Af¡Bl
y luego se agrega el nuevo valor:
00000t0l A
I 1000000 B2
t r 0 00 1 0 1 A<-A\ut Bl
I lOt 0l0l A
llll 0000 B
00100101 A<-A@B
Los cuatro bits de mayor orden de A se complementan después
de la opera-
ción oR-exclusiva con el operando B. L; microoperacién
oR-exclusiva
qy"qe usarse para complementar selectivamente lós bits de un registro.
Si el operando B tiene s-olounos, Ia operación oR-exclusiva complenrerrta.¿
t o d o s l o s b i t s d e A . S i e l c o n t e n i d o d e A s e a p l i c a c o n s i g om i s m o a u n a
com-
puerta OR-exclusiva, se borrará el registro ya que ¡
O ¡ : 0:
D A T O SN O N U M E , a t c o s3 5 ! I
I
s E c ,8 - 1 0
0l0t 0l0l A
\g
.r.
0 1 0 10 l 0 l A
0000 0000 A*A@A
j
E l r a l o r d e l g s b i t s i n d i v i d u a l e s d e u n r e g i s t r r lp u e d e - e r l e t e r m i n a d r '
enmascarando primero todos los bits excepto aquel en cuestión l' luego
c o m p r o b a n d o s i e l r e g i s t r o e s i g u a l a 0 . S u p ó n g a s eq u e s e r e q u i e r e d e t e r -
m i n a r s i e l b i t 4 e n e l r e g i s t r oA e s 0 ó 1 :
l0lx0l0 A
0001000 B
000x000 A<-BAA
EI bit marcado r puede ser 0 ó 1. Cuando todos los demás bits estan enmas-
'i 4
carados con el operando en B, el registro A conte¡drá sólo cerc's ei bit
hubiera s i d o 0 . S i ¡ i t 4 o r i g i n a l m e n t e f u e u n 1 . e s t e b i t p e r m a n e c e r á e n
" t s i e l b i t c u a t r o
1. Comprobando si el contenido de A es 0 ó no se determina
fue0ó1.
Si cada bit del registro debe comprobarse para 0 ó 1, es mas convenlen-
orden,o
te desplazar el registio a la izquierda y trasferir el bit de mavor
t"gi"tt" especia"l de 1 bit que comúnmente se llama el flip-ilop del bit de
""
;;.;;;.". Después de cada dósplazamiento, el arrastre puede comprobarse
si es 0 ó 1 y se toma una decisión dependiendo del resultado.
Las operaciones de desplazamiento son útiles para agrupar o disper-
sar informlción binaria codificada. Agrupar información binaria tal como
palabra'
caracteres es una clperación que une dos o más caracteres ell una
Dispersar es la operación inversa que Separados o_más c a r a c t e r e s alma-
en una pulrbr^ a caracteres individuales. c o n s i d é r e s e l a a grupa-
.*iaor
i n t r o d u j e r o n p r i m e r o c o m ( , . c a r a c t e r e s A SCII'
.i¿" ¿" dígitos ÉOC qn" se
,qSCII para los dígitos 5 y 9 se. obtiene de la Tabla
El código áe caracter"r
mayor
i-S. Cuáu uno contiene siete bits v se coloca un 0 en la posición de
5 s e t r a s f i e r e a l r e gistro
orden como se muestra a continuación. El carácter
n o t i e n e n n i n g ú n uso ,1
i, V
" f
g al registro B. Los cuatro
para una represenración B D C , d e
b
m
i t s
a n
d
e
e
r
m
a q
a
u
y
e
o r
s
o
e
r d
d
e
e
n
s e n m a s c a r a n . E l agru- q
e l re- ,{
pá-i*tá ¿e ¿ o s d í g i t o s B D C e n e l r e g i s t r o A c o n s i s t e e n d e s p l a z a r .J
I
do de los registros:
AB :
' ¡i¡
8 - 1 1 C O D I G O SD E I N S T R U C C I O N
'-i
:á
C ódigo-operacirin (a) Implícito
(-ódigo-operacion Dirección
a"f operanclo ( c ) D i r e c c r ó nd i r e c t a
I
Figura 'Ires
8-12 fbrmatos posibles de instrucción
A<-R
A. operando
A -- Mldirecciónl
cod-oPer: i 4*R
fiü
i
cod-oper: 2 A. Operando
cod-oPer: 3 A. MlDirecciónl
0 r 0 0 0 1l 0 dirección - 70
0 0 0 1I 1 0 0 operando: 28'
.-l
t'-
ril
3 5 6 L o G I c A D E T R A S F E R E N C IEAN T R ER E G I S T R o S
CAP. 8
A . operando
S E C .8 . 1 2 RE N C I L L O3 5 7
D I S E Ñ OD E U N C O M P U T A D O S
8 - 1 2 D I S E Ñ OD E U N C O M P U T A D OS
RE N C I L L O
El diagrama de bloque de un computador sencillo se muestra en la Figura
8-14. El sistema consiste de una unidad de memoria, siete registros y dos
decodificaciones. La unidad de memoria tiene 256 palabras de 8 bits cada
una, lo cual constituye poca capacidad para un computador real pero sufi-
ciente para demostrar las operaciones básicas encontradas en la mayoría
de los computadores. Las instrucciones y los datos se almacenan en Ia
unidad de memoria, pero todo el proceso de información se hace en los
3 5 8 L o G I C AD E T R A S F E R E N CE
I AN T R ER E G I S T R o S CAP,8
f "*-l
Decodificador
de operaciones
f f l
I)ecodificador f ^l
de t iempo
Figura 8- l.l I ) i a g r a m a d e b l o q i l e d e r . r i rc c m p u t a d o r . q i m p l e
q
.
Tabla 8-4 l,ista de registros para un computador sencilio
Número
Símbolo de bits Nombre del registro Función
L.
3 6 0 L o G I c A D E T R A S F E R E N C IEAN T R ER E G I S T R o S CAP. 8
Las tres variables de tiempo que siguen el ciclo de envío mientras QueQz
: i i""" el operandode la memoria y lo trasfieren al registroA' Como el
operando está en un lugar de la memo¡ia en seguida del código de opgl-
.i¿n,.u lee de la memo"riaa partir de la dirección especificadapor "!!C.
nl operandoleído al MBR se trasfiere entoncesa A. Nótese qu9 ef P.c se
incrementa una vez más para prepararlo para la dirección del siguiente
códigode operaciónantes de regresaral ciclo de envío'
La i.rsfrucción LDA ADRS tiene un código de operaciónque hace q¡
:1. Las microoperacionesnecesariaspara ejecutar esta instrucción se
listan a continuación:
{:
362 L O G I C AD E T R A S F E R E N C IEAN T R ER E G I S T R O S
CAP,8
Qt
q3
R e c u é r d e s eq u e u n a f u n c i ó n d e c o n t r o l e s u n a f u n c i ó n d e B o o l e . E l * e n t r e
Ias funciones de control denotan una operación de Boole OR, y la secuencia
de un operador entre q2 y t3 denota una operación de Boole AND. La
anterior proposición combina todas las condiciones de control para la tras-
ferencia de PC hasta MAft. La configuración de los componentes de la pro-
posición ante¡ior se dibuja en la Figura 8-15. La función de control puede
ser manipulada como una fun¡ión de Boole para dar:
3& LoctcA DETRASFERENC
ETNAT R ER E G t s r R o s CAP 8
Direcciona¡
Memo¡ia
Cargar
Ql Qz Qt
"y ó
^
.x1 x5
x5
Circuito
x2
combinacional
x3 x7
x4 tl ta ¡o
Incrementar
365
366 LOGICA
DETRASFERENC
EINAT R ER E G I S T R O S C A P ,8
R E F ER E N C I A S
1 \ 1 a n o . \ { . M . , c a m p u t e r^ 5 v s f e ¡An r c h í t e c t u r e E
. n g l e w o o dc l i f f s , N . J . : p r e n t i c e _
H a l l . I n c . .1 9 7 6 .
I (-hu. \'., Computerorganízutiortand Microprograrnming.Englewood
cliffs, N.J.:
P r e n ti c e - H a l l ,I n c . , 1 9 2 2 .
;3 Dietmeyer, D., Logical Desígn ,f DigitaL
sy.s/em.s. Boston, Mass.: Allyn y Ba-
con,1971.
+ B e l l , c . G y A . N e w e l l , c o m p u t e r s t r u c t u r e s :R e a d i n g sa r t dE , x a m p r e s .N u e v a
\-ork:McGraw-HillBookCo.,19?1.
' " . H i l l , F . y G . P e t e r s o nD
, i g i t a t s ] ' s t e m s :H a r d w a r eo r g a n i z a t i o na n d D e s i g r tN u e -
va York: John Wiiey & Sons,1973.
6. Rartee,T. C., I. L. Leb_ow S. Reed,Thertryand Desígnof Di¿]itaL Muchines.
lL
Nueva York: McGraw-Hill Book Co., 1g62.
i. t^9mputer,Special Issueon computer Hardware Description Languages, l
vol. ?,
N o . 1 2 ( d i c i e m b r et,9 T 4 ) .
8. computer, Special Issue on Hardware Description LanguageAppiicati.ns,
Vol.
10,No. 16 (junio, 192?).
PROBLEMAS
8-1. Muestre el diagrama de bloque que ejecuta ia proposición:
T: I <-- I l0l0l l0
To: A <- R0
T,: A+Rl
362
PROBLEMAS
Tzi A r- R2
Tti A <- R3
8-5. Sean s1, s,' las variabies de selecciónpara el multiplexor de la Figura "
d,du'las variables de selección para el decodificador de destino. La
"variable
ean e se usa para habilitar el decodificador'
(a) Establezca las trasferencias que ocurren cuando las variables de selec-
(3) 11100;(4) 01101'
ción s1s¡d,d¡e son iguales a: (1) 00010: (2) 01000;
(b) Dé los valores de las variables de selección de las siguientes trasferen-
c i a s :( 1 ) A ' B : ( 2 ) B ' C ; ( 3 ) D ' A '
haói-
8-6 Una unidad de memoria tiene dos entradas de control marcadas como
(como se explica conjuntamente con la Figura
l¡to, y Lectura/escritura
MBR
?-30).'Las entradas de clatos de memoria se conectan a uil registro
registro ex-
como en la Figura 8-?. EI MBR puede recibir información de un
lectura.
terno EX.R o áe la unidad de memoria después de una operación de
Di-
El MBR suministra los datos para la operaciór"rde escritura en memoria.
bloque usando multip,lexores y compuertas que nues-
buje un diagrama de
tren la del MBR o la memoria. El sistema debe tener capacidad
"onJ*ión
para ejecutar las siguientes tres trasferencias:
de ia
8 - 7 . Las siguientes trasferencias de memoria se especifican para el sistema
Figura 8-8.
(a) MlA2l+ 83
(b) 82 + MlA3)
Especifique la operación de memoria y determine las variables de selección
binarias para los dos multiplexores y el decodificador de destino.
y cuatro
8 - 8 . usando los multiplexores cuádrupies de 2 a 1 línea de ia Figura 5-17
proposiciones:
inversores, dibujé un diagrama de bloque para configurar las
Ti R2 <- R\
Tzt R2 <- R2
Tl R2 <-0
8-9. considere un registro A de 4 bits con el bit A., en la posición más significa-
tiva. ¿Cuál es lá operación especificada por la siguiente declaración?:
AaC: A<-A+l
A¿'. A -0
en pa-
Muestre la configuración del sistema usando un contador con carga
ralelo.
g-10. Muestre los componentes necesarios para config.rrar las siguientes mlcro-
operaciones lógicas:
3 6 8 L o G I c AD E T R A S F E R E N C
A*B: F<-C\/D
C + D: F<-A + B
8-14. un sistema digital.tiene tres registros: AR, BR y pft. Los tres flip-flops
su-
ministran las funcionesde control del sistema. s es un flip-flop'el cual
es
habilitado por una señal externa para comenzar la operaciónáel sistema;
F y R se usan para dar secuenciaa las microoperacio.r...u., cuarto flip-flop,
!, se pone a 1 por el sistema digital utta uei se complete la operación.La
función del sistema se describe por medio de las siguientes operaciones
de
trasferencia entre registros:
(a) Signo-magnitud?
(b) Signo-comPlemento de 2?
Dé las respuestas en representación decimal equivalente'
8-19. (a) Muestre que el contenido de un registro de 8 bits que almacena los nú-
meros * 36 y - 36 en binario y en tres representaciones diferentes, es
decir, signo-magnitud, signo-complemento de 1 y signo-c,¡mplemento
de 2.
(b) Muestre el contenido del registro después de que los números se despla-
cen aritméticamente una posición a la derecha (en todas las tres repre-
sentaciones).
(c) Repita (b) para un desplazamiento a la izquierda'
la
8-20. Dos números en representación de signo-complemento de 2 se suman de
manera mostrada ..r lu Figu.u 8-10 y la suma se trasfiere al registro A. Mues-
tre que el desplazamiento aritmético a la derecha simbolizado por:
8-22. l,os registros para sumar y restar números decimales representados en signo-
complJmento de 10 es similar a los algoritmos para los números binarios re-
presentados en signo-complemento de 2'
(a) Enuncie l6s algoritmos para la adición y sustracción con representación
y
en signo-complemento de 10. un signo positivo se representa por un 0
un sig r negativo por un 9 en la posición más significativa'
3 7 O L o G I c A D E T R A S F E R E N CEI AN T R ER E G I S T R o S
(b) Aplique los algoritmos para los conjuntos decimales ( - 63g) (Tgb)
CAP
I
+ v
( 6 3 8 )- ( 1 8 5 r "
8 23. Un número binario de punto flotante cle 36 bits liene 8 bits más el signo para
ei exponente. El coeficiente se asume como una fracción normajizáda.-Los
núrneros en el r:oeficiente y exponente están en la forma de signo-rnagnitud.
¿cuáles son las mayores y menores can'.idades positivas q.r" p.,".i.n ."1"
acomodadas, excluyenclo el cero?
8-24. lln registro de 30 bits almacena un número decimal de punto flotante repre-
s e n t a d o e n B D C . L o s c o e f i c i e n t e so c u p a n 2 1 b i t s d e l r e g i s t r o y s e a s u m e c o -
mo un entero normalizado. Los números en el coeficiente y exponente se asu-
m e n r e p r e s e n t a d o se n f o r m a d e s i g n o - m a g n i t u d . ¿ , c u á i e s s o n l a s c a n t i d a d e s
mayores y menores que ¡rueden ser acomodadas erciuvendo el cer.?
825. R e p r e s e n t ee l n ú m e r o ( + 3 1 , 5 ) r 0 c o n u n c o e f i c i e n t e e n t e r o n o r m a l i z a d o d e
l 3 b i t s y u n e x p o n e n l e c l e? b i t s c o m o :
( a ) L I n n ú m e r o b i n a r i o ( a s r r m ab a s e d e 2 ) .
lbi [.]r;número octal bir:a¡io codificado (asuma base de g).
( c i I . r . n ú ¡ n e r o h e x a d e c i r o a i b i n a r i o c o d i f i c a - d oi a s u m a b a s e d e
16).
8 2 6 . E i r e g i s t r o A a l m ¿ r c t ' n al a i n l b r m a c i ó n b i n a r i a 1 l i 1 1 1 0 0 1D
. etermine el operan-
d o r 3 ¡ ' l a r n i c r o o p e r a c i o nl ó g i c a q u e s e v a a r e a l i z a r e n t r e A y B p a r a c a m b i a r
el valor de A a:
(a) 011011i,r1
{bi 1111110i
8-2'i. f)etermine la operación lógica que borrará selectivame¡te los bits del regis-
tro A en aquellas posiciones donde hay I en los correspo¡dientes bits áel
registro .B.
A . M f d i r e c c i ó n l* R
donde ^R puede ser cualquiera cie los ocho registros posibles en el procesador.
8 - 3 0 . A s u m a q u e l a u n i d a d d e m e m o r i a d e r a F i g u r a g - 1 4 t i e n e 6 5 , 5 3 6p a l a b r a s
de
8 bits cada una.
P R O B L E M A S3 i I
i
I
,s 1,-.
(a) ¿,Cuál debería ser el rrúmero de bits rle los cinco primeros registr.
tados en ia ]'abia 8-4?
(b)¿Cuántaspalabrasdememoriaserequierenparaalmacenarlainstruc.
ción:
LDA A/)Ti.S
g-32. Repita el diseño del computador sencillo presentado er.r11 Figura 8-12' Rem-
p l a c e l a s i r t s t r u c c i o n e se n i a ' f a b l a 8 - 5 ¡ r o r i a s s i g u i e n t e s i n s t r t r c c i o t l e s :
Codigo
cleoperación Mnemónico Descripción F-uncion
l'¿ * n
00000010 ADI OPRD SumareloperandoaA AeA +OPRD
00000011 ADA ADRS SumarRaA AeA +MIADRSI
de componentes
3-33. Dibuie un cliagrama de bloque mostrando la configuracior.r
de comien-
del sistema especificado en ei Problema 8-14. Incluya una entrada
y salida de /¡echo (dor]ei para el flip-fiop D'
¿o para poner a I el flip-flop S una
Diseño fógico
de procesadores
9- 1 INTRODUCCION
9-2 O R G A N I Z A C I O ND E L P R O C E S A D O R
Salida de datos
Figurag-lRegistrosprocesadoresyALUconectadospormediodebusescomunes
375
3 7 6 D I S E Ñ oL o G l c o D E P R o c E S A D o R E S
CAP. 9
Rl<_R2+R3
Los registros de una unidad procesadora pueden ser metidos dentro de una
unidad pequeña de memoria. Cuando estos se incluyen en la unidad de
proceso, la memoria pequeña se llama memoria tapón o de borrado. El uso
de una pequeña memoria es una alternativa muy económica para conectar
los registros procesadores a través del sistema de bus. La diferencia entre
dos sistemas es la manera en la cual la información se selecciona para la
trasferencia al ALU. En el sistema de bus, la trasferencia de información
se selecciona por medio de los multiplexores que forman los buses. Por otr¿r
parte, un solo registro dentro de un grupo de registros organizados como
una pequeña memoria puede ser seleccionado por medio de una dirección de
la unidad de memoria. Un registro de memoria puede funcionar justamente
como cualquier otro registro procesador ya que su única función es alma-
cenar información binaria para ser procesada en el ALU.
Una memoria tapón o de borrado debe distinguirse de la memoria prirr-
cipal del computador. En contraste con la memoria principal. la cual alma-
cena instrucciones y datos, una pequeña memoria de una unidad de proceso
es meramente una alternativa irara conectar un número de registros pro-
cesadores por medio de un camino de trasferencia común. La información
almacenada en una memoria tapón o de borrado debe venir normalmente
de la memoria principal por medio de instrucciones en el programa.
Considérese, por ejemplo, una unidad procesadora que emplea ocho re-
gistros de 16 bits cada uno. Los registros pueden incluirse dentro de una
memoria pequeña de ocho palabras de 16 bits cada una, o un RAM de 8 x 16.
Las ocho palabras de memoria pueden designarse como R0 hasta R7, corres-
pondiendo a las direcciones 0 hasta 7 y constituyen los registros para el
procesador.
[Jna unidad procesadora que usa una memoria tapón o de borrado se
muestra en la Figura 9-2. Un registro fuente se selecciona de la memoria
y se carga al registro A. Un segundo registro fuente se selecciona de la me-
moria y se carga al registro B. La selección se hace especificando las di-
recciones de palabra correspondientes y activando la entrada de lectura
de la memoria. La información de A y B se manipula en el ALU y en el re-
gistro de desplazamiento. El resultado de la operación se trasfiere a un
registro de memoria especificando su dirección de palabra y activando el
control de entrada de escritura en memoria. EI multiplexor a la entrada de
la memoria puede seleccionar datos de entrada de una fuente externa.
Asúmase que la memoria tiene ocho palabras, de manera que una di-
rección puede especificarse con tres bits. Para realizar la operación:
Rl<--R2+R3
378 D I S E Ñ OL O G I C OD E P R O C E S A D O R E S CAP. 9
Memoria tapón
Di¡ección
o de borrado
Saiida
de datos
Carga Carga
Selección
de función
Selección de
desplazamiento
DirecciónA DirecciónB
Memoria tapón
o de borrado
Habilitación Habilitar
WE ME
escritura (WE) memoria (ME)
Rl+-Rl+R2
R e g i s t r oa c u m u l a d o r
Entrada de datos
Registros procesadores
Selección o
fuente B unidad de memoria
Salida de datos
A4 A3 A2 Ar 84 nr nr-d,
J2 (Selección de modo)
Ft Ft F2 f.l (-.
..D (Arrastre de entrada)
9.4 D I S E Ñ O D E U N C I R C U I T OA R I T M E T I C O
ElcomponentebásicodelasecciónaritméticadeunALUesunsumador
de cir-
purri"lo. Ur, .,r-"dár en paralelo se construye con un número
"r,
ABAB
cin=o
F=A+B Í'=A+B+l
F=A+B F=A+B+l
(c) A más el comPlemento (d) Sustracción
deldeB
AO
Lir - u
,{
r-n F=A+1 :i
1.
(e) Trasferir A (f) Incrementa¡,4
Cou, ci' =o
F=A
F ==AA--t l
F
(g) DecrementarA (h) T¡asfe¡i¡A
grupo
Figura 9-6 Operaciones obtenidas mediante el control de un
de entradas de un sumador en paralelo
3U D I S E Ñ OL O G I C OD E P R O C E S A D O R E S
CAP. 9
cuitos sumadorescompletosconectados
en cascada(ver sección s-2). con-
trolando la entrada de datos al sumador
p"*rl,lá, rs posible obtener
diferentes tipos de operacionesaritméticas. ""
r," Tis"."-ó-é' -.r".t.a las ope_
racionesaritméticas obtenidas cuando un grupo
de entradasa un sumador
en paralelo se controlan externamente.El
iriá"ro a" bi; er sumadoren
paralelo puedetener_cualquier valor.
El u.."rtr" á";;;;1" "" c¡n pasa al cir_
cuito sumadorcompretoa-la posiciónáel bit
.";;r;ñilativo. El arrastre
de.salida
,cou,provienedel círcuito rüuao, completode la posicióndel bit
más significativo.
La suma aritmética se rogra cuando un grupo
número binario A, el otro coniunto de entradás de entradas recibe un
recibe un número bina¡io
B y el arrastre de entrada se mantiene en
0. Esto se **.tru en la Figura
9-6(a).Haciendo Cr" :1como en la Figura
9_6(b),;; o".i¡f. agregar1a la
suma en F. considé¡ese ahora el efectó a"
entrada B' cuando-c,n 0',la-saridap.áa*" "o-ói"tr.:;J", los bits de la
r ¡]il'E; cual es la suma
de A más el complementode 1 de B. Agregando
t , ..iu-iu,'a y haciendo
Cn : I se obtiene F: A+ B'+ t lá
ru .;;; más el comple_
mento de 2 de B- Esta es"""r}.Jáu""
simiür ;E"p";;;l¿"'a"
-operación
se descartael arrastre dó salida. si se colocan sustracción si
sólé;";;;; los terminalesB,
se obtiene F: A * 0: A, lo cuar trasfiere
la entrada A ala sali¿a F. Agre-
gandoun 1a Ci' comoen la Figura g-6(f),
se obtienep:i+1 ro cual es la
operaciónde incremento.
La condición ilustrada en la Figura g-6(g)
colocarátodos los 1 en los
terminales B. Esto produce la oper"ación
de"'decre^""tá"r:A_1. para
mostrar que esta condición e. u.ru operación
de decremento,considérese
un sumador en paralelo con n circuiios
sumadores
arrastre de salida es 1_ésterepresenta-"1,;;";;;,;ñ;" completos. cuando el
consistede un 1 seguidopo. r, ."ro.. Restando Z, en binario
I di í;,^ le obtiene 2n -r,
lo cual en binario ,r.r núm"ro de n unos. suma ndo 2, - | a A
F:A+2" - r : 2 " ". se obtiene
ne F: A-r. Pa¡a thacer A - 1 . s i s e " u f r i m e e l a r ¡ a s t r ed e s a r i d a2 n s e o b t i e -
una demostración numérico, sea
n:8y A:9. Entonces: """-"1"":"r"pro
I : 0000 l00l : (9)ro
2n:t 0000 0000:(256)10
2-|: illl llll:(255)ro
A+2n _l_l 0000 1000:(256+8)r0
Bi
Selector Y Sa!ida
de función iguala igual a Función
J¡ Jg Ctt
F:A+2n-l-B:2n+A-B-l
Tabla g-2 Efecto del a¡rast¡e de salida en el circuito aritmético de la Figura 9-8
J¡ Ss Cin
387
388 D I S E Ñ OL O G I C OD E P R O C E S A D O R E S
CAP. 9
Si A¡8, entonces
\ l - n ¡ > 0 y F 2 2 " , d e m a n e r aq u e C . , u:,1 . R e m o v i e n _
do el arrastre de salida 2' se obtiene:
F:A-B
F:2-(B-A)
lo.cual
.es el conplementode 2 de B-A. Así, la salida de la sustracción
aritmética es correctasiemprey cuandoA > É. ru,utiau ¿-A
si B; Á,
pero-el circuito genera el complemento de 2 le este
T,a operaciónde decrementose obtiene
- 1. El arrastre de salida es s-iempre d; tr'"ir-"ro.
:;;"i2" _I):2^ +A
1 exceptocuando A:0. sustrayendo
1de O-da-1y - 1 e n c o m p l e m e n tdoe 2 á s 2 " - i ; l
cualesun número
con sólo unos. La última entrada en la Tabla s-i g"""t;i: (2" - 1) +A + 1
:2" + A. Esta operacióntrasfiereA
a F y aa ur,"a.raJre de salida de 1.
C' =0
J
A.
' - l
Ci¡cuito
combinacional
B¡
C¡* I
(b) Especificación del circuito combinacional
00 00
0l 0l X ¡ =A ¡
l0 l0
1l ll Y¡--B¡es
00 0l
'm
0l 00
l0 ll
ll I0
9-5 D I S E Ñ O D E L C I R C U I T OL O G I C O
I
F,= A, t B, OR
MUX
Fi=Ai@Bi XOR
2 F,= A¡8, AND
F ¡ =A i NOT
3 Selección
F¡:X¡O)iOq
F,: X,@ Y,
391
Una etapa de un
circuito aritmético
Una etapg de un
circuito lógico
Operación
J2 sl J0 X, Y, C, F , : X , @ Y , Operación requerida
A,@l:Ai
392
q
sEc. 9-6 D I S E Ñ OD E U N A U N I D A DL O G I C AA R I T M E T I C A3 9 J
La tabla tiene una columna más la cual contienela lista de las cuarr,
operacio_neslógicas que se van a incluir en el ALU. Dos de estas operacrc,_
nes, la oR-exclusiva y el NoT están disponibles.La preguntaque áebe
ser
contestadaes de si es posible modificar el circuito árit"m¿tico-demanera
que generelas funcioneslógicas oR y AND en vez de las funciones
de tras_
ferenciay equivalencia.Este problema se investiga en la siguientesección.
9-6 D I S E Ñ O D E U N A U N I D A D L O G I C AA R I T M E T I C A
señar una etapa del ALU y luego duplicarla para conseguirel número de
etapas requeridas.Hay seis ent¡adas a cada etapa: A,,8,, C¡, s2, s1
y s0. Hay dos salidas de cada etapa: la salida 4 y el alrastre de sálida
,'.,
c,*,. Se puedeformular una tabla de verdad con 64 entradasy simplificar
las dos funcionesde salida. Aquí se escogeel uso de un procedimientoal-
terno que usa la disponibilidadde un sumadorparalelo.
Los pasosde que se componeel diseño de un ALU son los siguientes:
X,: A,
Y , : s o B+, s r B i
Z,: C,
las cuales son las funcionespara el circuito aritmético de Ia Figura 9-g. Las
operacioneslógicas se generancuando sz : 1. para s2srso: 1ó1 ó 111, las
funcionesse reducena:
X¡: A,
Y,:srB,*srBi
c:0
.q
!
.!
l
,Í
.:
': 1
395
3 9 6 D I S E Ñ OL O G I C OD E P R O C E S A D O R E S
CAP. 9
I
La. salida d es igual a X¡ @ { y produce las operacionesoR-exclusiva
y de complementocomo se especificáen la Tabl" g-g. cada A,
con B, se
aplican a una función OR cuandos2s1s6 :110, para producir lá operación
oR como se ha discutido antes. caaa a, óon Bi sé aplióan a una función oR
cuando s2srso:110 para producir una operaciónAND como se ha ex-
plicado previamente.
_ !". 12 operacionesgeneradasen el ALU se sumarizan en la Tabla 9-4.
La función particular se sele-ccionapor medio de s2, sr, so y C,.. Las
operacionesaritméticas son idénticas a aquellas listádas para el circuito
aritmético. El valor d9 c,. para las cuatro funcioneslógicasno tienen efec-
to en la operaciónde la unidad y aqueilasentradas." á"r"u' con X de no
importa.
Tabla 9-4 Tabla de función para el ALU de la Fizu¡a g_13
Selección
J2 J¡ Salida Función
0 0 0 0 F:A Trasferir A
0 0 0 I F:A+l IncrementarA
0 0 I 0 F:AtB Suma
0 0 I I F=A*B*l Suma con arrastre
0 0 0 F:A-B-l Restacon préstamo
0 0 I F:A-B Sustracción
0 I 0 F:A-l DecrementarA
0 I I F=A Trasferir A
I 0 0 X F:AVB OR
I 0 I X F=A@B OR-exclusiva
I I 0 X F:AAB AND
I I I X F=f ComplementarA
9-7 REGISTRO
DE CONDICION
Las_magnitudes relativas de dos núme¡os pueden ser dete¡minadasres-
tando un número de otro y luego combinando ciertas condiciones de los
bits en la diferenciaresultante. Si los dos númerosestán sin signo las con-
diciones de los bits de algún interés, son el arrastre de salida y un resul-
tado posible de cero. si los dos números incluyen un bit de signo en la
posiciónde mayor orden, las condicionesprincipálesde los bits, so-nel signo
del resultado, una indicación de cero y una cbndición de sobrecapacidád.
Es -conv-eniente algunas vecessuplementarel ALU con un registro de con-
dición donde se almacenan aquellas condicionesde los bits para análisis
posterior. El estado de los bits de condición se llama algunas vecescódí-
go de condición de los bits o bits indicadores
La Figura 9-14 muestra un diagrama de bloque de un ALU de g bits
con un registro de condición de 4 bits. Los cuatro bits de condición se sim-
bolizan por medio de c, s, z y v. Los bits se ponena uno ó cero comoresul-
tado de una operaciónrealizadaen el ALU.
sEc,9-7 D E C O N D I C I O N3 9 7
REGISTRO
Selección
Registro de
condición
C- Arrast¡e
S- Signo
Z- Cero
V- Sobrecapacidad
9-8 DE DESPLAZAMIENTO
D I S E Ñ OD E U N R E G I S T R O
Salida
se¡ial Salida
serial
04 13 .t2 ,Sl
Hl Ho Operación Función
registros
RlaRT
Selector
de destino
Registrode condición
Registro de
desplazamiento
Datos de salida
1 e l0 ll12 13 141516
B D F lCr H
UNIDADPROCESADOR&
^3
sEc. 9-9 I
para F:A' En
cificada en la Tabla 9-4. Nótese que hay dos posibilidades
d
y
,rr ."ro el bit de arrastre C se boria en el otro caso se pone a 1 (ver Tabla
e-2).
9-16
Tabla g-g Funciones de las variables de control para el procesadorde la Figura
F con I con
Código
B D C,.: 0 Cn: I H
binario
especifica-nlas
Las cuatro primeras entradas del código en e-l campo H
d. la Tabla 9-?. Una tercera variable de se-
opuru"iá"* á. d".pi"ráLi"trto I' ó
un 0 para las entradas de serie I, e
lección se usa pu," se
"'p".ificar C. Por conveniencia
,rn-a..pt"ramiento ci-rála. con el bif de arrastre crc y a
con arrastre como
á.*ig"á un desplazamientocircular a la derecha right-shift
(crc: circular
la izquierda como .ir. n"to"ces la declaración
with carry; clc: circular left-shift with carry):
R<-crcR
R +- shr R, Rn<- C, C +- Rt
Rsedesplazaa|aderecha,subitme{lgssignificativoR.vaaCyelvalor
a.-C uu a la posición del bit más significativo Rn'
Se necesita J" .onirol de 16 bi[s para especificaruna mi-
gene-
lá unidad de proceso. La manera más eficiente de
",'|'p"Iil;á
"rooñ"tu.lá;;|* tattiot bits es almacenarlas en una unidad de
rar palabra. d.
"orrlrJf;; d,e control donde están almacenadas
memoria que funciona como rnemoria
palabras de control se lee
todas las palabras de control. La secuencia de
de la memoria de a palabra para-iniciar la secuenciadeseada
";t;i;;I"bra se llama micropro-
de microoper".iorr"..-ütt" tip" de or'ganizaciónde control
el Capítulo10'
i*Áot¡¿i y se discute en más detalle en
"'-";" á"-"""tio1 pu1" una microoperación dada puede ser deriva-
iálát.á en la Tabla 9-8' La
da directamente¿e-ür-""tüúr.t de seleccién definidas
microoperaciónde sustracción:
Rl<-Rl- R2
& DIsEÑoLoGIcoDEPRocEsADoRES
cAP.9
especificaftl para la entrada izquieida
del ALU, R2para la entrada dere_
cha del ALU. A - B para,l" op"r""iór, d"iÁLü;;i"*o'T;o;zamiento
el^registrode.desprazamiento Rr paia para
v r";i.;;?;'d;.;i;". De ra Tabra
9-8 se deriva la palabra de control "r esta operación
óuru qu" sea
0010100010101000:
A BD q,H F
001 0 r0 001 0 r 0 r 000
Las palabras de control para esta microoperación
y algunasotras se listan
en la Tabla 9-9.
La operaciónde comparar es similar a la
microoperaciónde sustrac-
ción, exceptoque la diferencia no se tr".n"."
;**;;;'ie ¿e.tirro y sola_
mente los bits de condición se afectan. El "f de destino D
campo en este caso
debe ser 000. La trasferencia de ,Rau ns
ryc,ri"re una operaciónALU F : A.
La fuente A es r(x) v el destino D esrói.
.oru porqlu el ALU _nr.¿J,g" á".ii"J.io" B podría ser
::¡l:T"_t ü;; Este campo se marca con 000 en la
tabla por convenienciapero-cuarquier ";
otro códigoá" úil;;dría
Para trasferir la enrrada de datos á ná,-Já"b";;;;i:000 ser usado.
leccionar la entrada exte¡na D:110 para para se_
I seleccionarel registro de des-
tino' De nuevo el valor de.B-n_o_irnp"_rt" y la función ALU es F:A. para
s a c a ¡d a t o sd e R 7 s e h a c eA : 1 1 1 n : g 0 0 ( ó 1 1 1 ) .L a o p e r a c i ó nd e A L U
F: Lcoloca la informaciónde nZal i
bus de salida.
Es necesarioalgrrnasvecesborrar o po.ru.
a 1 el bit de arrastre antes
de-una
-operacióncirculjrr_de despla"amie'to. n.io-pu"áu-¡r.".se con un
códigode selecciónde ALU 0000ó'01ri.
co' el ñ;.;;;;igo se tiene el bit
c bo*ado v con el segundoel bit c *l lu tr"Jr"r"""iá"ñi"-nr,
carnbia el contenido.áel c*0 no
,registro, p".o borrará c y v. Los bits de selección
A y s se afectan de ifual -"netá.'si ni:
o entoncesz se ponea 1, de otra
manerase borrará. El bit s se pone a uno con
el valor delbii-signo en ^R1.
El pulso de reloj, que,disiara el registro de
destino trasfiere también
los bits de condición dei ALU at.egi.tro'¿e
condición.t;.;it, de condición
Palabra de control
Microoperación F C¡n Función
Rl+--Rl-R2 001 0t0 001 010 I 000 Sustrae¡ R2de Rl
R3-R4 0ll 100 000 010 I 000 Comparar RBy R4
R5 <--fi4 r00 000 l0l 000 0 000 Trasferir R4 a R5
Itó <-.Entrada 000 000 ll0 000 0 000 Entrada de datos a g6
Salida <- R7 ul 000 000 000 0 000 Salida de datos de.RT
Rl<-¡Rl,C<-0 00r 000 001 000 0 000 Borrar el bit de arrastre C
R3 <- shl R3 oil 0ll 0ll t00 0 010 trsspl¿pr a la derechaR3 con.L : 0
Rl<-crcRl 001 001 001 100 0 l 0 l C i r c u l a r a l a d e r .R l c o n b i t d e á r r a s t r e
R2<-0 000 000 010 000 0 0l I Borrar.R2
j!
sEc. 9-9 U N I D A DP R O C E S A D O R ^4 O 5
R<-R!R
R3 <- shl R3
Rl<-crcRl
9 - 1 O D I S E Ñ OD E L A C U M U L A D O R
Algunasunidadesprocesadoras
distinguenun registrode otrosy lo llaman
registro acumulador. La organización de una unidad procesadora con un
registro acumulador se muestra en la Figura 9-4. El ALU asociado con el
registro puede ser construido como un circuito combinacional del tipo dis-
cutido en la Sección 9-5. En esta configuración, el registro acumulador es
esencialmente un registro de desplazamiento bidireccional con carga en
paralelo el cual es conectado a un AL[I. Debido a la conexión de retroali-
mentación de la salida del registro a una de las entradas en el ALU el re-
gistro acumulador y su lógica asociada, cuando se toman como una sola
unidad, constituyen un circuito secuencial. Debido a la anterior propiedad
un registro acumulador puede ser designado por técnicas de circuitos se-
cuenciales en vez de usar un ALU de circuito combinacional.
Ci¡cuito
combinacional Variables de control
Ent¡adas de datos
Variable
de control Microoperación Nombre
Pt A<_A+ B Sumar
Pz A <-0 Borrar
Ps A e-.f Cornplementar
Pq A<-A \B AND
Ps A<_A\/ B OR
Pe A<-.A@B OR-exclusiva
Pt A <-shr A Desplazara la derecha
Ps A +-sl:JA Desplazara la izquierda
Ps A<-A*l Incremento
Si (A : 0) entonces(Z: l) Comprobarel cero
4 O 8 D I S E Ñ OL O G I C OD E P R O C E S A D O R E S
CAP. 9
P r o c e d i m i e n t od e d i s e ñ o
Bi
I X X X I
A ., L
{ X X A
w
x I I
g--J
L,¡
Ai
(a) AND
Entradas de
lA¡,=3' KAi'-- O
o) oR
B¡
Estado Estado Entradas de
presenteEntrada siguiente los flip-flops
TAi KA¡
OX
tX
X0 I A¡: Bi KA¡:3'
XI
(c) OR-exclusiva
t r a s f i e r e e l r e s u l t a d o a A , . L a t a b l a d e e x c i t a c i ó n p a r a e s t a o p € r a c r L ) ns E
da en la Figura 9-19(a). La siguiente etapa de A, es l solamente cuancitr
B, y el estado presente de A, sea igual a 1. Las funciones de entrada dei
flip-flop, las cuales se simplifican en Ios mapas, indican que la entrada /r
del flip-flop se habilita con el valor del complemento de .B,. Este resultado
puede ser verificado de las condiciones listadas en la tabla de estado. Si
B, : I el estado presente y siguiente de A, son iguales de manera que el
flip-flop no tiene que sufrir un cambio de estado. Si B, :0, el siguiente es-
tado de A, debe ir a 0 y para lograrlo se habilita la entrada K del flip-flop.
Las funciones de entrada para la microoperación AND deben incluir las va-
riables de control que inician esta microoperación:
JA,: g
KA,: Bipa
JA, : B¡tt
KA,: g
JA,: A,*tp,
KA,: Ai*tpt
D e s p l a z a m i e n t o a l a i z q u i e r d a ( p ¡ ¡) : E s t a o p e r a c i ó n d e s p i a z a e l
registro A una posición a la izquierda. Para este caso el valor de A, r , el
4 12 D I S E Ñ OL O G I C OD E P R O C E S A O O R E S CAP. 9
cual está una posición a la derecha de la etapa i, debe ser trasferido a Ai.
Esta trasferencia se expresa por medio de las funciones de entrada:
JA, : A,-rps
KA': A"-tPa
JA,: E,
KA,: E,
E,*r: E,A, i:1,2,...,n
Et:Ps
Et: ps
L--- ----J
Una etapa típica del acumulador consistede todos los circuitos que fueron
deducidáspara las microoperaciones individuales. Las variables de control
p1 hasta pn rotr excluyenles mutuamente de manera que los circuitos Ió-
!i.or puedenser combinadoscon una operaciónOR. Com-
Éinandotodas las funcionesde entrada para las entradasJ y K del flip-flop
"or.l.pondientes
Etapa 3
% AND
Ps oR
Po OR-exclusiva
" ¡| |
P.t Desplazamiento
a la derecha
PB Desplazamiento
a la izquierda
Incremento
Figura g-22 Una etapa tipica del acumulador
D l s E Ñ oD E ' ,i -c l - \ t u * : l ' : :' '
s E c .9 - 1 O
Cadaetapaenelacumuladordebegenerartambiénlosarrastresparala
siguiente etaPa:
C+r: AiBi+ AiC¡+ BiCi
E,*r: E,A,
zr*r: z,A',
se muestra
El diagrama lógico de una etapa típica.de un.ac.umulador de Boole
la configúracián directa de las funciones
en la Figurag-22. n-r1u que incluye
""
Iistadas anteriormente.El diagrama es un circuito compuestoLos diferen-
los circuitos indirriáualesasocádos con cada microoperación'
lu. entradasJ y K del
tes circuitos se combinan con dos compuertasoR er-t
flip-flop A'.
de control p1 hasta
cada etapa del acumulador tiene ocho entradas La variable de
posibles'
ps eue indican unu a" Ias ocho microoperaciones la opera-
primera etapa para h^abilitar
control p" se apliá ,álu-"rrtu a la entradas en el
la enlrada 8,, háy olras seis
ción de incrementou-ir*¿. de las en- i
B que suministran
circuito. B, es el bi; áe datos de los termi'áles
tradas al acumulador. c¡ es el arrast-rede entrada
de Ia etapa previa a .la 1
A,,, vienl de iá salida del flip-flop que está una posición a la de- I
{
derecha. I
r e c h a y A , l l v i e n e a " t n i p - n o p q u ' u t t á u n a p o s i c i ó n ayl a i zse
el arrastre ae errtruJapurá tu bpétu.ión de incremento
mar la cadena pu* d"i"""ión áe
z¡
-e. cero. El circuito tiene cuatro salidas: A,
q uusa
i e r para
d a ' { ltor-
tj
1
u.--iu-rulidu a"inii iiáp,-ó;;'
es el arrastre de incremento para Ia siguiente
"1
urru*tre para la siguiente etapa, E'*1
etapa y. z¡aI €s para la si- 1
t
u ru iñ;i;;a;, pára formar"la cadena para la detección de cero. 1
g"r""ü"t"|"
{
1
Acumulador comPleto I
l
U n a c u m u l a d o r c o m p l e t o c o n n b i t s r e q u i e r e n e s t a d o s cla o nFigura
ectado sencas-
9-22'
mostrado en
cada con cada etáfí^"á"t."i""ao el ciicuito
aplicadasa cada eta-
Todas las variabll! de control exceptopn deben_ser
y salidat-"'-t"ti" etapa deben estar conectadasen
pa. Las otras entradas
i".*¿u para formar un acumuladorcompleto' ----r completose
acumulador
La interconexiónentre etapaspara fot-ar un Cada bloque
la Figura 9.23.
ilustra en el acum,,t,ao, de 4 bits mostradoen g-zz- nt número de Ia
circuito de la Figura
en el diagr"*",;;;;.;ta-ei
p a r t e s u p e r i < l r c l e c a d a b l o q u e r e p r e s e n t a i a p o s i c i ó n d e b i t epi
n e l a l::
cumula-
dor. Todos io. nro-qrres ;;;ii"" ocho variablés cle control pr l]:tu )
otra-qseis ent,radasy cuatro salidas en cada
;;il";--Je-.eloj del cp. Las
o
o
!
f l sv .oi
ü !4
i r58e
'rv\r{\
N,3 i-
NV\IQ
NU\QJ
d ,s" rv Í\ )kr. ] \
-É -
\J\ta
ú
<l
q"*.(r.{ao{
N
s
l b
N l ) \ f ¡ J I
b¡
l\ oco
ú-
<ü
<.9
416
) R O B L E M A S4 / 7
REFERENCIAS
PROBLEMAS
9-1. Modifique la unidad procesadorade la Figura 9-1 de manera que el registro
de destino seleccionadosea siempre el mismo registroque se seleccionacon
el bus A. ¿Cómoafectaesto al númerode multiplexoresy al númerode líneas
de selecciónusados?
9-2. Un procesadorcon un bus organizado como en la Figura 9-1 consiste de 15
registros.¿Cuántaslíneasde selecciónhay en cada multiplexor y en el deco-
dificador de destino?
9-3. Asuma que cada registroen la Figura 9-1 es de 8 bits de largo. Dibuje un dia-
grama de bloque detallado para el recuadro marcado MUX que seleccionael
4IB D I S E Ñ OL O G I C OD E P R O C E 5 A D O R E S CAP. 9
registro para el bus A" Muestre que Ia selección puede hacerse con ocho mul-
tiplexores c¡e4 a 1 iínea.
9-4. una unidad procesadora emplea una memoria tapón como en la Figura 9-2.
El procesador consiste de 64 registros de ocho bits cada uno.
(a) ¿Cuál es el tamaño de la memoria tapón? (scratchpad memory)
(b) ¿Cuántaslíneasse necesitanpara la dirección?
(c) ¿Cuántaslíneashay para los datos de entrada?
(d) ¿Cuál es el tamaño del MUX que seleccionaentre la entrada de datos y
la salida del registrode desplazamiento?
9-5. Muestre un diagrama de bloque detallado para la unidad procesadorade Ia
Figura 9-4 cuando las entradasB vienen de:
(a) Ocho registros procesadoresque forman un sistema de bus.
(b) Una unidad de memoria con direccionesy registrosseparadores.
9-6. El ALU de 4 bits de la Figura 9-5 se incluye dentro de un cI. Muestre las co-
nexiones entre tres cI para conformar un ALU de 12 bits. Asigrre los arras-
tres de entr¿:day salida en el ALU de 12 bits.
9-7' El CI TTL ti¡xr 7487es un elemento de 4 bits verdadero,/complemento,ceto/
uno. Una etapa de este CI se muestraen la Figura P9-?.
Bi
(a) Deduzca las f'unciones de Boole para las salidas { como función de las
entradas ,B,, s, y s¡ "
(b) Dibuje la tal¡ia de verdad para el circuito.
( c ) Dibuje una r..ablade función (similar a aquella mostrada en Ia Figura 9-z)
y verifique la operación del circuito.
j-.q' Modifique el circuito aritmético de la Figura 9-8 incluyendo una tercera va-
riable de selección s2. Cuando sz : 1 el circuito modificado es idéntico al
circuito original. Cuando s¿ :0, todas las entradas A a los sumadores com-
pletos son inhibidas y se colocan ceros de remplazo.
(a) Dibuje el diagrama lógico de una etapa del circuito modificado.
(bt Haga un análisis similar a aquel de la Figura 9-6 para determinar las
ocho operaciones cuando s: :0.
(c ) Liste las nuevas funciones de salida en forma de tabla.
9-9. Dete¡mine las operaciones aritméticas obtenidas en ocho bloques de la Figura
9-6, sr en cada caso la entradaA se cambia aF(complementó de¿).
9-10. Diseñe un ci¡cuito aritmético con una variable de selección s y dos entradas
de datos a y B. cuando s : 0, el circuito realízala operación de suma F : A+
B. Cuando s:1, el circuito realiza la operación de incremento F:A* 1.
T
P R O B L E M A4
S' I9
9 - 1 1 . L a s u s t r a c c i ó nb i n a r i a d i r e c t a F : A - B p r o d u c eu n a d i f e r e n c i ac o r r e c t as i
A > 8 . ¿ C u á lp o á r i " s e r e l r e s u l t a d o s i A < B ? D e t e r m i n el a r e l a c i ó ne n t r e e l
resultaáo obteniJo en F y el bit de préstamo en Ia posiciónmás significati'a'
g-12. Diseñe un circuito aritmético con dos variablesde selecciónst Y so que ge-
neralassigulentesoperacionesaritméticas.Dibujeeldiagramaiógicodeuna
etapa tíPica.
sl S6 Ctr:o Crn: I
0 F=A+B F:A+B+l
0 F:A F:A+l
I F:E F: E+r
I F:A+E r:l+E +l
Jl s0 Cr': o C¡: I
0 F:A F:A+l
0 F:A-B-l F:A-B
I F:B-A-l F:B-A
I F:A+B F:A+B+l
S2 sl S6 Salida Función
0 F:AAB AND
I F:A@B XOR
0 F:AVB OR
I F__A- NOT
4 2 O D I S E Ñ oL o G l c o D E P R o c E S A D o R E S
CAP. 9
R<-shrR, r R , < - S@ /
Gl Go Función
0 Colocar ceros a 1.
I Hacer un desplazamiento ci¡cular
0 Hacer un desplazamiento circular con arrastre
I Coloque el valor de S O Vpara el desplazamiento aritmético
(ver Problema 9-20)
9-24. Es necesario calcular el valor promedio de cuatro números binarios sin signo
almacenados en los registros R1, R2, R3 y fi4 del procesador definido en la
Figura 9-16. El valor promedio se debe alrnacenar en el registro 85. Los otros
dos registros en el procesador pueden usarse para resultados intermedios.
Se debe tener cuidado de no causar sobrecapacidad.
(a) Dé Ia lista de la secuencia de microoperaciones en forma simbólica.
(b) Liste las palabras de control binarias correspondientes.
9-25. La siguiente secuencia de microoperaciones se realiza en el acumulador defi-
nido en la Sección 9-10.
ptt A* F
ps: A<-A*l
pi A<-A* B
P{ A-l
ps; AeA * |
pio: A<-A-B
Use los circuitos sumadores completos (Sección 4-4) con bits de préstamo de
entrada y salida K, y K,+ t.
9-27. Usando flip-flops JI( diseñe una etapa típica de un registro que realice Ias
siguientes microoperaciones lógicas :
9-28. Deduzca las operaciones de Boole de una etapa típica de una microoperación
de decremento:
pt¿i A<-A-l
9-29. Usando flip-flops tipo ? diseñe un registro de 4 bits que ejecute la microope-
ración de complemento de 2:
P: A<-f +l
Del resultado obtenido, muestre que, una etapa típica puede ser expresada
por las siguientes funciones de Boole:
7-4,: p¿ i:1,2,3,...,n
E¡*t: Ai + Ei
Et:0
Diseño de lógica
d e control
10-1 INTRODUCCION
Muchas instalaciones
El procesodel diseño lógico es Yna,tarea compleja'-
rle computador automatizado para
desarrollan varias t¿.niü. de diseño para el siste-
iJil"t .r proceso¿"-áir"no. Sin embargo las especificaciones
áe procedimientos álgorítmicos para lograr las tareas
*á--V lf áé.urrollo y re-
i"q,rátiA"" de procesamiento de datos no pueden ser automatizados
q.rie.".t un razonamientomental del diseñador humano'
=---L;parte
de -"vá.-á".áno y creatividad del diseño es el establecimien-
t" d;;ú;liuo, ¿. direño y la iormulación de algoritmos y procesamientos
una cantidad
p"* f"gr- lo, objfiiuos"enunciados. Esta taréa requiere
considerabl. a. e ingenuidadpor parte.del.disenador'Un algo-
algo-
,llÁo-"" rr' pro."dl*iento para óbtutt"t una solución al problema.Un
"*puriuncia
para configurar el con una
ritmo diseñodo ,r., pro"ódi-iento -problema
""
pi"ru auau de equipo. Él desa.tollo dei algoritmo diseñado no puede comen-
;;;úú qrr" diseñadoresté segurodé dos cosas'Primero, el problema
untra -".to. dtbe
"i cJmpletamente' Segundo'^sedebe asumir
par-
u'u inicial del equipopára conformarel procedimiento'A
"o-ptenderse
"onfigoración la disponibilidad de equipo busca
li.-¿"f eriunciado dei ptoble*i v ¿" -se
medianteun
una solución y se foi."i un algoritmo. El algoritmo se-enuncia
finito de pasosde procedimientosbien definidos'
almacena
La informacién binariá encontradaen un sistema digital se
"tt-..o
y puede ser constituida por datos
en un procesadoro ,ági.l.or de memoria
elementos discretos de información
o información de control. Los datos son
por microoperaciones. La información de control suminis-
!,,";;;ipulan
ira señales de mandos para especificar la secuencia de microoperaciones'
i,u tJgi"" de diseno áe'un .irtema digital es un procesopara deducir los
circuitos digitales q""-.*li""n datos á" pto"-tu-ientos y de circuitos di-
gitales que iuministran señalesde control'
sincró_ni-
La temporir".ián á.1oáos los registrosen un sistema digital
por medio de un generador de pul'qos de.reloj maestros'Los
co se controla
en el sistema,
p"rro. a" reloj se upii.un a todos*los flip-flops y los registros
de control' Los pulsos con-
i""i"V""a" tos nip-hops y registros-en-láunidad
*tñ¡iá" e"l estado de un registro a no.ser que el registro
tinuos de reloj que
"o ¡" control. Las variábles binarias, controlan
," i,Áiiit" por l" ;;;i
423
424 D I S E Ñ OD E L O G I C AD E C O N T R O L
cAP. 10
Entradas Datos
externas de ent¡ada
Lógica P¡ocesador
de control de datos
Condiciones
del status
Salida de datos
Los primeros dos métodos resultan en un circuito que debe .rsa, ci.-
cuitos SSI v MSI para la configuración.Los diferentescircuitos se inter-
conectan con alambres para formar una ¡ed circuito de control. una uni-
dad de control configuradacon elementos sSI y MSI se denota como un
control a base de materiales interconectados.Si se necesitanalteraciones
o modificaciones,los circuitos se deben alambrar de nuevo para cumplir
con Ias nuevas especificaciones. Esto es en contraste al pLA o controi de
microprogramael cual usa un elementoLSI tal como un arreglo lógico pro-
gramableo una memoria de solamentelectura. cualquier alteracióno modi-
ficación en el microprogramade control puede lograisefácilmente sin cam-
biar de alambrado removiendola RoM de s,t baie y colocandootra RoM
programada para copar las nuevas especificaciones.
se explica ahora en términos generalescada método. Las seccionessub-
siguientesde este capítulo tratan con ejemplosespecíficosque demuestran
el diseño detallado de las unidadesde cóntrbl de lós cuatro *étodo..
426
--'
I
I Método de un flip-flop por estado
r
Este método usa un flip-flop por estado en el circuito secuencial de control.
Solamente se pone a uno un flip-flop en un tiempo dado, Ios demás se ponen
a cero. Se hace programar un solo bit de un flip-flop a otro bajo el control
de la lógica de decisión. En tal arreglo cada flip-flop representa un estado
y se activa solamente cuando el bit de control se trasfiere a éste.
Es obvio que este método no usa un número mínimo de flip-flops para
el circuito secuencial. De hecho, éste usa un número máximo de flip-flops.
Este método usa un registro para darle secuencia a los estados de control.
El registro se decodifica para suministrar una salida por cada estado. El
circuito tendrá 2" estados y el decodificador 2n salidas, p ra n flip-flops
427
Otras salidas de control
Condiciones
de entrada
exte¡nas
Lógica
de decisión
Lógica Registro
de decisión de secuencia
Estado presente
m o e n t r a d a y l a p a l a b r a c o r r e s p o n d i e n t e c o m o s a l i d a . E l c o n t e n i d o d e lque
a
p..-ur,""" en los alambres de salida por el tiempo
;;1"ú;;;peóificaia No se nece-
;f ;ü, de la di.ección pur*u.tece en el registro de dirección.
en una memoria áe acceso aleatorio. Una palabra
sita señal de lectura como
al registro 1eqT3dor,,si el registro de
á"" ,ái. ¿. la RoM i"¡. trurrurirse esté aún en uso' Si
direccionescambia *i.rirár- qte la palabia de ROM
cambio en dirección y una palabra de
pueden ocurrir simultáneamenteun
nOn¿ no es necesarioun registro
--- separador'
representauna mrcrolns-
ia putabra leída de una memoria de control para
o más microoperaciones
trucción. La microiittt""ti¿" especificauna las operaciones' la
qt" t" ejecuten.
los componentesdei sistema' Una vez de
unidad de control d;;;á.;.;-inar la siguiente.dirección.l,a ubicación
la siguiente Ini".oinrtt,tcción podríu '"t-lu siguiente-ensecuenciao podría
nece-
ser ubicada en otrol;;;;;; lu *"*otiu de control. Por esta razón es
para c-ontrolar la generación
sario usar algunos¡ilr" de la microinstrucción
La siguiente dirección
de Ia dirección para la siguiente microinstru..iótt. de entrada externas.
.", i"Á¡i¿";;; ii""ió" de las condiciones
ñ"* la siguiente dirección es com-
Mientras se ejecutari^ru.Ái.tooperaciones,
putada en et circui;;;;;.;;e;t.de,t, siguiénte dirección v luego trasferida
de direccionespara
(con el siguiente p"i.|-á. reloj) al_regi-tro de control
La ionstrucción detallada del generador
leer la siguiente -r.ioi".lr"."ién.
particular'
á" f" tidi"nte dirección dependede la aplicación -esp^ecíficos del diseño de
EI resto a. .ápñ-1i ;;;" sobre'ejemplos
".t. 10-3 demuestra el método
lógica de control. El;;i;.r,"jemplo.en la Sección
y lá Sección.10-4 presenta el mismo ejemplo con
de un flip_flop p", ejemplopara
"i"áá L; Sección 10-6 usa un segundo
un control ,-rri.roprüriiuá". y la Sec-
y de-codificador
demostrar .l *¿toij á.i r"gittto de secuencia 9l 10-5 v
ejemplocon un PLA' Las Secciones
ción 10-7.o'riguruii;;gdil más detalle.
en
10_gconsideranel'r"átáá?,A" .o'trol del microprograma \
1o-3coNTRoLDECoMPoNENTESALAMBRADoS-EJEMPLoI
E s t e e j e m p l o d e m u e s t r a e l d e s a r r o l l o d e u n a l g o r i t m o d e d idiseño
s e ñ o .para
Secomien.
lospasosdel
,i ioi t" proposicióndel problemay se prqce{gcon cinco
se lleva a cabo en
obtener la lógica de co.,tiol del sistemá. El diseño
pasoscorisecutivos.
431
432 O I S E Ñ OD E L O G I C AD E C O N T R O L
l. Se enunciael problema.
cAP. 10 I
2. Se asumeuna configuracióninicial
del equipo.
3. Se forrnula el algoritmo.
4. Se especificala parte del procesador
de datos.
5. Se diseñala lógica de control.
E n u n c i a d od e l p r o b l e m a
En la secciónt-u.^:1nuncia,un.algoritmo
para la adicióny sustracciónde
los números binarios de.punto fijo"cuando
l;;;;,o;;;;lugatirros están en
la forma de signo-complémentoá.
t.-iil;;áur"*" áüiri"Jl con
rnateriales la adición v sustracción áe "o'ng,rrar
drJ de punto fijo
representadosen forma de signo-magnitud.";;;;-ü;iio.
S" p""¿"lsJr aritmética com_
siemprey cuandJer ,"s-uli"aofinai;;t ;;
*ilT:f" formade signo_
La suma de dos números almacenados
en -los registrosde longitud fi-
nita podría resultar en una suma que
rrel registro excede r" de almacenaje
en un bit. El nit ." dr¡e que "upá"iá"á
-'ircuito debe venir crc,nun flip-flop
"*it"-pu* utmac""ri"-;;;';;*."capacidad. Er
'" por sobrecapacidad. J¡ii J" desbordamien_
C o n f i g u r a c i ó nd e l e q u i p o
tr q. (Restar)
r (Qperación
terminada)
t Deduccióndel algoritmo
La representaciónde números por medio de signo-magnitudes familiar
debido a que se usa para los cálculos aritméticos a lápiz y papel. El proce-
dimiento de sumar o restar dos números binarios con signo a lápiz y papel
es muy simple y directo. Una revisión de este procedimientopodría ser útil
para deducir el algoritmo diseñado.
Se designala magnitud de dos númerosA y B. Cuando los númerosse
suman o restan algebraicamentese encuentra que hay ocho condiciones
diferentes para considerar,dependiendodel signo de los números y de la
operaciónrealizada.Las ocho condicionespuedenexpresarseen forma com-
pacta de la siguientemanera:
(*¿)n(ta)
(tl) + (t¡)
A-A+E +l
'F * C ' o u t
435
'_-€
I
(Tabla 9-4)
ALU
,*E L (Carga)
(a) Registrosprocesadores
de datosy ALU
,t (Estado inicial)
s2 (Selección demodo)
s1
(Selecciónde función)
s0
LóBica
.,
- .
de control C¡ (Arrastre de entrada)
L (CargarAyEdelALU)
y (ComplementarB")
z (ComplementarA,)
p (Borra¡ E) -
Esta 'ariable da er
de,ra com.paración
fi.lr'^1dg
esigual -.onde signo. La
entre dos bits
a t si losdos,ic";.-;;
lffii:"r'r'o,*"r1*1""" positivoso negativos
isuul".y
El control .r-i':'::l1mbos ".
cionat,;úi;;il;Ji:i:iülÍ"T,:iiiü#,.1:Tüi:iJJ"ffi
de selecciórs'¡' s''
en fo
y c,.' iu.-oi.-"..",r"t"o
saridas;;,
,"r.,,,i;1ff;
el procesadár
dl aátár .áLJi" los registros
en el diagr"-u. au.,queno se
4?6 "üJitt",
T
sEc. 10-3 C O N T R O LD E C O M P O N E N T EASL A M B R A D O S - E J E M P L O1 437
qa Sumar
Qs Restar
S=0 Signosiguales
S= I Signosdiferentes
E Arrast¡e de salida
J2 Jt Jo C, L .t, z ^
438
I
sEc.10-3 C O N T R O LD E C O M P O N E N T EASL A M B R A D O S - E J E M P L O1 4 3 9
D i s e ñ o d e l c o n t r o l a b a s e d e c o m p o n e n t e sa l a m b r a d o s
[Jna organización del control que use un flip-flop por estado tiene la
C A P .1 0 I
característica conveniente de que el circuito p.rede deducirse directamen-
te del diagrama de estado por inspección. No ie necesitan tablas de estado
o excitación si se usan flip-flops D. Recuérdese que ei siguiente estado de
un flip-flop n es una función de la entrada D y és independiente del esta-
do presente. como el método requiere un flip-fiop po. .ud" estado, se esco-
gen ocho flip-flops D y se marcan sus salidas Tu, Tr, Tr, .
, Tr. Lu
dición p€ra poner a ulo un flip-flop dado se especiiica-en el.diagrama" ode
rr_
estado. Por ejemplo, el flip-flop 7, se pone u u.rb con el siguientJpulso de
reloj si Tt:t ó si I. : I y qo: 1. Esta condición puede áefinirse con la
función de Boole:
DT2: q o T o+ T ,
t-
tt
sEc. 10-4 C O N T R O LD E L M I C R O P R O G R A M A 4 4 1
gura 10-9(b). Por ejemplo la salida I debe ser l durante los estados ?3,
Tr,7,., ó ?r. Estas variables son disponibles en las salidas de los flip-flops.
Lo que se necesita aquí es una compuerta OR de 4 entradas para generar
el control de salida ,L
El circuito para la lógica de control no se dibuja pero se puede obtener
fácilmente de las funciones de Boole en la Tabla 10-1. Este circuito puede
ser construido con ocho flip-flops D, siete compuertas AND, seis compuer-
tas OR y cuatro inversores. Nótese que cinco salidas de control se toman
directamente de las salidas de los flip-flops.
1O-4 CONTROD
L EL MICROPROGRAMA
442 D I S E Ñ OD E L O G I C AD E C O N T R O L cAP.10
5
':1 \ 6
7
9
b! 'o
['o
I
Dirección
6
l"
l.12
Selección
f ',
I
O
[14
443
4t't D I S E Ñ OD E L O G I C AD E C O N T R O L cAP. 10
El microprograma
Dirección
deROM Microinstrucción Comentarios
0 x : 1 , s i ( q " : 1 ) e n t o n c e s( v a a 1 ) , s i ( q , : 1) Cargar0 o direcciónexterna
entonces (va a2), si (q, Aq, : g¡
entonces (va a 0)
1 B, <- B-, g" : 1, comenzarsustracción
2 If (S : l) entonces (va a 4) e " : l , c o m e n z asr u m a
3 A<-A*B,E<-Couuvaa0 Sumar magnitudesy regreso
4 A<-A*E+t,¿*Co,,, Sustraermagnitudes
5 Si (¿: 1) entonves (va a 0). E .-0 Operaciónfinalizadasi E: 1
6 A<-A- E: 0, complementarA
7 A+A*1,A,+A-,,vaaO Terminado, regresara la
dirección0
"l
sEc.10-4 C O N T R O LD E L M I C R O P R O G R A M A 4 5
simbólica en la
que debe ser almacenada en cada dirección se da en forma
Los comentarios se usan para clarificar las proposiciones
.="*f,á; .;irr-ru.
La direcciótt o e" equivalente al estado ini-
de trasferencia entre tegistros.
s a l i d - ax : L . L a s i g u i e n t e d i r e c c i ó n d e p e n d e d e los valo-
cial y produce una
proposiciones de control
,".- áu'fu, variables externas e" y eo. Las tres
proposición de ua o después
condicional en esta microinstrucción-usan una
que si la-con-
áe la palabraentonces. Su significado-se interpreta de manera
a la dirección escrita después de la palabra
dición se satisface el control*va
en ia dirección
,o-o. n"i, si arnbos Q, y Qo son cero el control permanece
pu.u' repetir lu -iótoi"ttrucción. Si q, o qo son 1, el control va a la
""ro
dirección 1 ó 2 resPectivamente.
Las proposiciónes de control condicional en las otras microinstrucciones
a sin una con-
usan las"u"riubl"r de condición s y E.La proposición de ua
la dirección indi'
dición adjunta, especifica una alteinativa incondicional a
que va a la dirección cero
.uá". pot ejemplo, va a cero significa el control
presente' pi n9 una proposición
después de ó¡ecuta. la microinsirucción \av
de ua a en lá microinstrucción, esto implica que la siguiente microinstruc-
ción se toma de la siguiente dirección de Ia secuencia. También, si la condi-
¿".p"¿s de una proposición si no se satisface, el control va a Ia siguien-
"i¿"
te dirección en la secuencia.
Las microinstrucciones asociadas con las ocho direcciones se deducen
Las mi-
directamente de las especificaciones de control de la Figura 10-9'
croinstrucciones listadas son idénticas a aquellas listadas en la Figura
de
10-9(b). La proposición de control condicional especifica la secuencia
estado de la Figura 10-9(a)' Nó-
direcciones como se da en el diagrama de
? en
tese que cada número de dirección es igual al número suscrito hajo las
el diágrama de estado. Debe ser obvio que las proposiciones de control con-
de es-
dicionál presentan una manera diferente de especificar el diagrama
puede ser
tado. Esto muestra que el método de trasferencia entre registros
usado para especificar un circuito secuencial'
Ei microprograma en la Tabla 10-2 se hubiera podido deducir directa-
para especi-
mente del flulogiama de la Figura 10-7. Este flujograma se usa
diseñar. Aunque
iica. et algoriimo para el sistéma que se está tratando de
parece necesitar muchos pasos inter-
el microprograma desarrollado aqui
q,ru fue hecho así para propósitos de la
,rr"dio., ." d"ebeterrer en cuenta
"tto
el concepto del microprograma no.hay
.rpti.u.i¿". Una vez que se entienda-
un micro-
,"rdi prru .ro poder especificar el algoritmo directamente como
estado. Una vez que
progr";u simbélico, sin la necesidad.del diagrama de
equipo para el proc_esador de datos y
ie üu e.tablecido la configuración del
se puede désairoilar el algoritmo por medio de
el control del micráprog."l-u
un microprograma.
el
La desifnación simbólica es un método conveniente para desarrollar
de una manera que la gente pueda leer entender. y Pero ésta
.rrl.-projr"ira
memoria de
no es la manera como el microprograma e. almacenado en la
traducirse a binario porque ésta
control. El microprograma simbótióo debe
L,a traducción se hace dividiendo los bits
es la forma como va i lu -"^o.ia.
en sus partes funcionales llamadas compo.s. A.quí
de cada microinstrucción
la palabra
se tienen tres partes funcionales, los bits t hasta 9 especifican
:niciar las microoperaciones. Los bits 10 hasta 12 especifi-
de control para
Tabla l0-3 Microprograma binario para la memoria cre control
Salidasde ROM
f)irección
x Ju .rl Jo C,n Ly z tr
de ROM Se lección
t2 3 4 5 6 t 8 9 l0 lt t2 13 t4
0 00 r 0 0 0 0 0 00 0 000 0l
0 0l 000000100 010 0l
0 IO 0 0 0 0 0 0 00 0 r00 l0
0 ll 0 0 0l 0 100 0 000 0l
00 0 010 I 100 0 l0l 0l
0l 0 0 0 0 0 0 00 i 000 il
l0 0l I I 0 100 0 lll 0l
ll 000011010 000 0l
26
t¡l
M U X] Selección
0t23156.
ICC,ZZ'SS'V
Bits de
Unidadprocesadora
condición
(Figura9-16
v
T a b l a9 - 8 )
Salida
Figura lO-11 Cont¡ol del microprograma para
la unidad procesadora
Para las demásoperaciones, el bit de arrastre del ALU va al bit C del regis-
tro de condición. El bit C se afecta también despuésde un desplazamiento
circular con operaciónde arrastre.
Ejemplode microprograma
Rl+R2+l
Dirección
de ROM Microinstrucción Comentarios
Contenidodel ROM
l6 17 20 2l 26
E n u n c i a d od e l p r o b l e m a
23 10111 multiplicando
l9 10011 multiplicador
10111
10111
00000 +
00000
10111
multiplicando: l0lll
multiplicador: l00l I
C o n f i g u r a c i ó nd e l e q u i p o
tr RegistroB
fplluur,iori-0,
I I cador
t
RegistroA
t ""-"""o
I q, (Multiplicar)
Producto
D e r i v a c i ó nd e l a l g o r i t m o
A"-B-qO^
¡ 1- 0 , E - 0
P-k
A-A+.B,Cuur+É-
P-P-l
AQ-shrEAQ,E+0
El algoritmo diseñado
-dado en el flujograma puede especificarse más preci-
samente por medio del diagrama de estado y una lista de operaciones de
trasferencia entre registros. Se ha hecho mención previamente al hecho de
que la conversión del flujograma al diagrama de esiado no es única. El flu-
jograma debe considerarse como una formulación preliminar
del algoritmo.
El diagrama de c<lntrol de estado, conjuntamente con su lista de mlcroope-.
raciones, es más preciso ya que toma en consideración las restricciones
de los componentes del sistema.
La secuencia de control de las operaciones se define en la Figura 10-1b.
El control tiene cuatro estados y las operaciones de trasferencia entre re- d
gistros de cada estado se listan a continuación del diagrama de estado. El
control permanece en un estado inicial ?,, hasta
eu€ go, se convierta en
1. Pasará luego al estado ?¡ para inicializar los registroi ¿,, n y p y for-
ma-rel signo del producto. El control pasa luego allstado r,.E"..i" r.-
tado se decrementa el registro P y el contenido áe B se agrega a A si
e, : 1,
qr. Multiplicar
P, = lstP=0
e,=Osif+O
Pr=0
QtTz: A<-A+B,E-Co,,
Tz: P<-P-l
para configurarlo por medio del registro de secuencia y el método dei deco-
dificador. Aunque éste es un ejemplo sencillo, el procedimiento enunciado
a continuación se aplica a situaciones más complicadas de la misma forma.
Se comienza con la tabla de excitación del circuito secuencialdado en
l a F i g u r a 1 0 - 1 7 ( a ) .L a p a r t e d e I a t a b l a d e e s t a d o s e o b t i e n e d i r e c t a m e n t e
del diagrama de estado. Las condiciones de entrada de los flip-flops son pa-
ra dos flip-flops Jl( demarcadas G, y Gr. Nótese que la tabla de excitación
tiene entradas.de no importa en la mayoría de las ent¡adas. Nótese también
que un estado presente se lista más de una vez si éste tiene dos o más
condiciones de estado siguiente. Las variables To hasta T3 se listan
conjuntamente con las variables binarias para identificación. Las excita-
ciones de entrada a los flip-flops se obtienen directamente a partir de Ia
tabla de excitación del flip-flopJIl como se muestra en la Tabla G-8(b).
EI circuito secuencial puede ser diseñado de la tabla de excitación por
medio de un procedimiento clásico. Este ejemplo tiene un pequeño número
de estados y entradas; en la mayoría de aplicaciones de lógica de control,
el número de estados y entradas es mucho ma!'or. La aplicación del método
clásico requiere un cantidad excesiva de trabajo para obtener las funciones
de entradas simplificadas para los flip-flops. El diseño puede ser simplifica-
do si se tiene en consideración el hecho de que las salidas del decodificador
están disponibles para ser usados en el diseño. En vez de usar las salidas
de los flip-flops como condiciones de estado presente, se podría usar Ias sa-
lidas del decodificador para entregar esta información. Si las salidas del
d e c o d i f i c a d o rs e d e s i g n a n p o r m e d i o d e l a s v a r i a b l e s T o , 7 , , ? 2 , T3 es-
tas variables pueden ser usadas para suministrar las condiciones de estado
presente del circuito.
Se podría decidir el obtener estas funciones directamente de la tabla
de excitación, en vez de usar los mapas para la simplificación de las funcio-
nes de entrada de los flip-flops. Aunque puede que no se logre un circuito
minimizado, el posible desperdicio de algrnas compuertas se recompensa
con el tiempo ahorrado. Por ejemplo, de la tabla de excitación se nota que
la entrada J de G2 (designada como JG2 en la tabla) debe recibir un 1
binario solamente cuando la salida presente del decodificador es Tr. La
entrada K de G¿ debe recibir un l-cuando la salida del decodificad-or es
T3 siempre y cuando P, : l. Estas observaciones pueden escribirse en
forma algebraica como:
JGr: 7
KG,: T'P,
JGr- Toq^* T,
KGr: 1
!
SEC. 10.6 SO N E C T A D O S - E J E M P L2O
C O N T R O LA B A S E D E C O M P O N E N T EC 459
La raz6n para que KG1 sea siempre 1 es que todas las entradas en Ia tabla
para esta variable de entrada son 1 ó X.
No se puede estar seguro de que las funciones hayan sido simplificadas
de la mejor manera posible cuando se derivan las funciones de entrada por
inspecciones, partiendo de la tabla de excitación. Por esta razón se debería
analizar siempre el circuito para asegurar que las ecuaciones derivadas pro-
ducen en efecto las dos transiciones de estado requeridas de la manera es-
pecificada en la tabla de estado.
El diagrama lógico de la lógica de control se dibuja en la Figura 10-17
(c). Este consiste de dos flip-flops G, y G¿ y un decodificador. Las sali-
das del decodificador se usan para obtener el siguiente estado del circuito
de acuerdo a las funciones de Boole listadas en la Figura 10-17(b). Las sali-
das del controlador deben estar conectadas a la parte del procesador de
datos del sistema de la manera mostrada en la Fizura 10-16.
?, (Decrementar)
?r (Carga)
Borrar ?r (Borrar)
I (Cargarsuma)
13 (D.esplazamiento
derecha)
Lógica
de control
Q 1 T 2= L
T¡
rl
T2
4@
1O-7 CONTROL DEL PLA
Estado Estado
presente Entradas siguiente Salidas
G2 Gl 4^ P" Qt G2 Gl ToTtT2LT3
OOOXX 0 010000
OOIXX 0 110000
OIXXX 001000
IOXXO 100100
IOXXI l00ll0
IIXOX 0 0 0 001
IIXIX 0 0 0 001
461
462 D , S E \ OD E L O G I C D
A EC O N T R O L
C A P .1 0
tado. Las salidas del PLA son las mismas que las del siguiente estado y las
salidas de la tabla de estado.
El procedimiento para diseñar la lógica de control con un PLA debe ser
evidente a partir de este ejemplo. De las especificaciones del sistema se ob-
tiene primero la tabla de cstado para el controlador. El número de estados
determina el número de flip-flops para el registro de secuencia. El PLA se
conecta al registro de secuencia y a las variables de entrada y salida. La
tabla del programa del PLA se obtiene directamente de Ia tabla de estado.
La unidad PLA en un control PLA puede visualizarse como una memo-
ria de control que almacena información de control para el sistema. Las sa-
lidas del registro de secuencia conjuntamente con las entradas externas,
podrían considerarse como una dirección para tal memoria de control. Las
salidas suministran una palabra de control para el procesador de datos y
la información del estado siguiente especifica un valor parcial para la si-
guiente dirección en Ia memoria de control. Desde este punto de vista un
control PLA puede clasificarse como una unidad de control de microprogra-
ma con el PLA remplazando la ROM para la memoria de control. Sin embar-
4& DISEÑO
DE LOGICA
DECONTROL cAP. 10
1O-8 SECUENCIADO
DRELMICROPROGRAMA
una unidad de control de.microprogramadebe visualizarse
como compues-
ta-de dos partes: la memoriade cóntiol que almacenalas microinstrucciones
y los circuitos asociadosque controlan ia generació;
d" ia srguientedirec_
c.ión._
La parte de generaciónde dirección ,é llu*u ulgu.rug,
ue"es secuencia_
dor de microprograma vista de que da la secuencii-Jul".
9n microinstruc_
cionesen la memoria de control. un secuenciadorde microprograma
puede
construi¡secon circuitos MSI para adaptarsea una aplicación particuür.
Sin-embargo,de la misma -utre.u que se encuentrandisponibles
en cI las
unidadesprocesadoras para propósitósgenerales,se encuéntranlos cI para
los secuenciadorespatu propósito. gen"er"l", uá""rruá;, p"."
la construc_
ción de las unidadesde c-ontroldel riicroprograma.para garantizar
un am-
plio rango.de aceptabilidad un secuenciadorde
cI debe suministrar una
organizacióninterna que pueda adaptarsea un amplio ,u"go-Jr-"Jri.""i"l
nes.*
un secuenciador de microprograma unido a la memoria de
control ins-
pecciona ciertos bits de la microinstrucción,
de los cuales se determina la
srguiente dirección para el control de la memo¡ia. un secuenciador
típico pre_
senta ias siguientes características de secuencimiento
de direcciones:
1. lncrementa la dirección presente para la memoria
de control.
2' Se ramifica a una di¡ección como se especifica
en el campo de direc-
ción de Ia microinstrucción.
3. se ramifica a una dirección dada, si el bit de condición
especificado
es igual a l.
*Algunos
s e c u e n c i a d o r e sc o m e r c i a l e s s o n C I t i p o g X 0 2 ( S i g n e t i c s )
940g (Fai¡child) y 2910
( A d v a n c e d M i c ¡ o D e v i c e sr .
- a
I I 3
"0
MUX
J0
Registrode
direcciónde
control ( CA,R)
Registro
indicadorde
la pila (SP)
f'l
o
Incremento o
Dirección de salida
Tabla de función
12ItIoT J¡ Jg Operación Comentarios
X O O X 0 CAR <_ EXA Trasferir la dirección externa
X O I X I CIR <- SR T¡asferir de la pila de registro
X I O X 0 CAR <--CAR + I Inc¡ementar dirección
0ll0 0 CAR <_ CAR + I lncrementar dirección
0lll I CAR <_ BRA Trasferir dirección de bifurcación
rlr0 0 CAR <_ CAR + I Incrementar dirección
llll I CAR <- ARI, SR <_ CAR + I Bifurcar a Ia subrutina
dio del registro indicador de la pila (stack pointer). Las entradas 10,.fr
e 12 especifican la operación para el secuenciador y la entrada ? es el pun-
to de prueba para el bit de condición. Ei registro de dirección puede llevar-
se a cero para iniciar el sistema y los pulsos de reloj sincronizan la carga a
los registros.
La tabla de función listada en el diagrama especifica la operación del
secuenciador. Las entradas Iy e I¡ determinan las variables de selección
para el multiplexor. Una dirección externa (EXA) se trasfiere al CAR cuan-
do .1110:00. La trasferencia del registro de Ia pila (S.R) ocurre cuando
466
sEc.10-8 S E C U E N C I A D OO
RE L M I C R O P R O G R A M A 467
Leer de
t Y""1:"
lraappi lraa
t
I I
SP+JP- | C A R- , ! R
( b ) R e g r e s od e l a s u b r u t i n a ( s a c a r d e l a p i l a )
I,1o : 01
O r g a n i z a c i ó nd e l C p U m i c r o p r o g r a m a d o
Registro de dirección
de memoria
Registrode instrucción
Bttl4:I Secuenciador
del
condrcron
microprograma
L (Figura 10-19)
Memoria de control
(ROM)
I -Selector de secuencta
SL -Selector MUX
BRA -Dirección debifurcación
MC -Control de memoria
PS -selector del Procesador
DF -CamPo de datos
469
47O D I S E Ñ OO E L O G I C AD E C O N T R O L cAP.10
REFERENCIAS 471
REFERENCIAS
ponga que las variables y y z usan las dos señales de control que ponen a uno
ó u el flip-flop de sobrecapacidad V. Si ocurre una sobrecapacidad, V es
".ró a uno con ia variable del control y. Si no ocurre una sobrecapa.cidad,
puesta
se borra V con la variable de control z.
(a) Escriba el microprograma en la forma simbólica.
(b) Liste la tabla de verdad de la ROM en binario.
10-13.Dé una microiñstrucción en forma binaria para la memoria de control de Ia Fi-
gura 10-11 que mantenga el sistema en un bucle de no operación siempre que
ia dirección externa sea igual a la dirección donde se localiza la microinstruc-
ción en la memoria. Los valores que van al registro de condición no son impor-
tantes.
10-14. Escriba un microprograma en la forrna simbólica para el sistema de la Figura
10-11que el signo del número almacenado en el registro R1. El nú-
''-'eroeitá "ortrp.rróbu
en lá presentación de signo-complemento de 2. Si el número es posi-
tivo, se divide por 2. Si es negativo se multiplica por 2. Si ocurre una sobreca-
pacidad, R1 se lleva a 0.
sin siglo alma-
10-15. Escriba un microprograma que compare dos números binarios
el número menor se borra enton-
cenados en R1 y nz."nt registro que contiene
números.on igoui"., se borran ambos registros. Use el sistema
ces. Si los dos
de microprograma de la Figura 10-11'
números bina-
-- - - El procesador de Ia Figura 9-16 se usa para multiplicar dos
10-16.
y producto
rios'sin signo. El multipiicando está en 81, el multiplicador en R3 el
y Eiíegistro R4 almacena un número binario igual al número
se forma .., Rz R3.
de bits en el multiplicadoi. Describa el algoritmo en la forma de flujograma.
d.
10-17. Liste el contenido de los registros E, A, Q y P (Figura 10-16) después- 9199
pulso de reloj durante el pro-cesode multiplicación de las dos magnitudes 10111
(multiplicando) y 10011 (multiplicador)'
Ia variable Qr
10-18. El diagrama de estado de control de la Figura ro-15(a) no-usa
se usa como
.o-o ünu condición de transición de estado. En vez de ello, Qr
el
parte de la función de control en la lista de registros de trasferencia. Diseñe
condición en el diagrama de
control de manera Que Qr aparezca como una
que pala
estado y que se elimine de la lista de funciones de control. Muestre
este caso.l di"g."tn" de estado debe tener al menos cinco estados.
en e.l
10-19. Determine el tiempo que se toma procesar la operación de muitiplicac^ión
tiene k
sistema digital desc.iio en Ia Figura 10-15. Asuma que el registro Q
bits y que él intervalo entre dos pulsos de reloj es ú segundos'
? y un de-
10-20. Diseñe la lógica de control de la Figura i0-16 usando dos flip-flops
codificador.
con carga en
10-21. Cambie el registro P de la Figura 10-16 a un contado¡ creciente
paralelo. La éntrada ?, no incrementa el registro P. ¿,Cuál es el valor inicial
que debe cargarse a P en el tiemPo ?1 ?
base r
10-22. pruebe que la multiplicación de dos números de n dígitos en cualquier
da un poroducto de no más de 2n dígitos de longitud. Muest¡e que esta decla-
dise-
ración implica que no puede ocurrir sobrecapacidad en el multiplicador
ñado en la Sección 10-6.
registro de
10-23. Diseñe el control especificado en la Figura 10-9 por el método de
secuencia y decodificador. Use los tres flip-flops JK, G3, Gz I Gt'
secuen-
10-24.Diseñe el control especificado en la Figura 10-9 usando un registro de
cia y un PLA. Liste la tabla de programa del PLA'
Multiplicador
l"-l
Producto
l-;l Lógica
de control
Qn
P+P+B
A+A-l
xT6: G<-G+l
!To: G <- l0
zT¡: G<-ll
T 1* T 2 * 7 3 : GeG+l
474
-l!
x=0
x=l.v--l
475
476 D I S E Ñ OD E L O G I C AD E C O N T R O L
Diseño de comPutadores
*¡
ffi
11-1 INTRODUCCION
ge-
Este capítulo presenta un computador digital pequeño para propósitos
nerales a partir de sus especificaciones funcionales para culminar con su
diseño. Aunque el computádor es pequeño, está muy lejos de ser útil. Su fi-
nalidad u. -.ry limitaáa cuando se compara con sistemas comerciales elec-
trónicos de prócesamiento de datos, aunque incluye especificaciones funcio-
para
nales suficiéntes para demostrar el proceso de diseño. Es adecuado
construir en el laboratorio con CI y el producto terminado puede ser un
sistema útil capaz de procesar datos digitales''
Ei computador consiste de una unidad procesadora central, una unidad
de memoria y una unidad teleimpresora de entrada-salida. El diseño lógico
de la unidad procesadora centrai será derivado aquí. Las otras dos unida-
des se asumen como elementos disponibles con características externas
conocidas.
Bl diseño de los materiales de un computador digital'puede derivarse
y diseño
en tres fases interrelacionadas: diseño del sistema, diseño lógico
y propie-
del circuito. El diseño del sistema versa sobre las especificaciones
áud". g"nurales del sistema. Esta tarea incluye el establecimiento de un
y
objetivó de diseño filosofia de diseño, Ia formulación de las instrucciones
áái y Ia investigación de su factibilidad económica. Las espe-
"oáp"tador, por el diseña-
cificaciües de iá estructura del computador son traducidas
de los materiales del sistema' El di-
áor t¿gi.o para lograr la configuración
lo. de los diferentes circuitos
seño áel óircuito- especifica
"o-pottentes de po-
iJgi."., .itcuitos de memoria, equipo electromecánico y suministro
es enorme-
teicia.'El diseño de la parte de los materiales del computador
(software) el cual
mente influenciado po. el sistema de programación
parte integral del
,rormalmente se desairolla al tiempo y constituye una
sistema de comPutador total.
debe
El diseño áel computador digital es una tarea complicada. No se
cubrimiento de todos lós aspectos del diseño en un solo capítulo'
..puo. el
477
478 D I S E Ñ OD E C O M P U T A D O R E S
c A P . 11
1'
!, descomposición.delcomputador digital en registrosque especi-
fican la configuraciór,g".,"rál del sisteáa
2' La especificaciónde las instruccionesdel computador.
3. La formulación de los circuitos de tiempo y de control.
4. La lista de operacionesde trasferencia entre registros
para ejecutar todas las instruccionesde computadir. necesaria
11.2 C O N F I G U R A C I O ND E L S I S T E M A
Unidad de memoria
4.096 palabras
16bits,/palabra
Registrode
direcciónde
memoria(MAR) Registro separador
de memoria (B)
E Registroacumulado¡
(A)
E
I Registrode | | Registrode I
Generador de l' e
- -n t r a d a ( N ) l l."lj94j
pulsos de reloj
maestros
Designación Número
simbólica de
Nombre' bits Función
A Registroacumulador 16 Registroprocesador
B Registro seParadorde memoria 16 Retieneel contenidode la Palabra
de memoria
PC Contador de Programa 12 Retiene la dirección de la siguiente
instrucción
MAR Registrode dirección de memoria 12 Retiene la dirección de la
palabra de memoria
I Registrode tnstrucción 4 Retiene el códigode operacióncorriente
E Flip-floP de extensión 1 Extensión del acumulador
Flip-flop de búsqueda 1 Controla búsqueda y ejecutaciclos
F
S Flip-floP de comienzo-Parada 1 Detieney comienzael comPutador
G Registrode secuencia 2 Entrega señalesde tiemPo
479
I
a
4ffi D I S E Ñ OD E C O M P U T A D O R E S
C A P . 11
i
l
cativo. Se puede usar un tamaño menor si se desea construir un computa-
dor en el laboratorio bajo restricciones económicas. Son necesarios
doce
bits de una instrucción para especificar la dirección de un operando,
el cual
deja cuatro bits para la parte de la instrucción. El tiempo de acceso
de la
memona se asume que
9s menor que 1 milisegundo de manera que la pala_
bra puede leerse o escribirse durante el intervaio entre dos pulsos de
reloj.
La parte del computador digital que se va a diseña. ," d"..o-pon"
subunidades de registro. Los siguientes parágrafos explican por qué "i
cada
registro es necesario y qué función realiza. Una lista de registros y
una bre-
'e descripción de s ',s func-ionesse presenta en la Tabla 1l-1.
Lo; registros
que alrnacenan palabras de memoria son de 16 bits de longitud.
Aq"uellos
que alrnacenan una dirección son de 12 bits de longitud. "otro.
."gl.r.o,
tie'nen un número diferente de bits, dependiendo de sü función.
Contador de programa
Registro acumulador
S E C 1. 1 - 2 CONFIGURAC NI S T E M4A8 7
DIEOLS
Registro de instrucción
R e g i s t r od e s e c u e n c i a
Flip-flopsE,FVS
11-3 I N S T R U C C I O N ED
SE C O M P U T A D O R
l6 IJ l4 l-l t2 ll 10 9 8 7 6 5 A
3 2 i
(a) Operandoaritmético
Palabra lógica
l6 t5 l4 l3 12 ll t0 9 8 7 f) 5 A
3 2
(b) Operandológico
Caracter Caracter
(c) Datos
Datosde entrada,/salida
entrada,/saltda
Operación Dirección
l3 l2 10 9 8 7 6 ) ^ 2
l6 l5 t4 ll
t6 l5 t4 l-l r2 ll t0 9 8 7 6 5 4 3 2 I
6 5 ^
l6 15 l4 13 l2 ull0 9 8 7 J
483
4U D I S E Ñ OD E C O M P U T A D O R E S c A P . 11
Código
hexa-
Símbolo decimal Descripción Función
S E C .1 1 . 3 INSTRUCCION
DE S
COMPUTADO
48R5
AND de .4
SUMAR a / (ADD)
B i f u r c a c i ó ni n c o n d i c i o n a l( B U N )
B i f u r c a ra l a s u b r u t i n a( B S B )
)
0l0l 00000I 000000 BUN 64
Código
hexa-
Símbolo decimal Descripción
Función
CLA 6800 Borrar A A <-0
CLE 6400 Borrar E E <-0
CMA 6200 ComplementarA A <-.4
CME 6100 Complementar,E E<--E
S H R 6080 Desplazara la derechaAy E I <--sh¡ A, A6<- E, E <- A1
SHL ó040 Desplazara la izquierdaAy E I < - s h lA , A 1 < - E , E < - A 6
INC 6020 IncrementarA A<-A*l
SPA 6010 Omitir conA positivo :0)entonces (pC<- pC +
!l(Ar6 l)
SNA 6008 Omitir conA negativo :1) entonces
9ifÁ,o (PC<-PC + t)
SZA ó004 Omitir conA cero
SZE 6m.2 Omitir con E cero li ft:0) entonces(pC <--pC + t)
S-it¿: 0) entonces(pC <- pC + l)
HLT 6001 Detenerel computador s<--0
E
s E c . 11 - 4 SINCRONIZACION DE TIEMPO Y CONTROL 489
l n s t r u c c i o n e sd e e n t r a d a - s a l i d a
Código
hexa-
Símbolodecimal Descripción Función
SKI 7800 Omitir con el indicador de entrada Si (No : l) entonces (PC <- PC + l )
INP 7400 Introducir aA A t - a + N 1- s , N e < - 0
SKO 7200 Omitir con el indicador de salida Si (Un : l) entonces(PC <- PC + r)
OUT 7100 SacardeA Ut-a+ A1-s,Ue<-0
1'I-4 D E T I E M P OY C O N T R O L
SINCRONIZACION
Pulsosde
reloj (CP)
t,
16 13 rl
BQP) I BIAD)
Funciones de contro
para rnrclar
microoperaciones
:codificad
de tiempo
Otras condiciones
de status
491
492 D I S E Ñ OD E C O M P U T A D O R E S c A P . 11
variablesde tiempo
Las instruccionesAND y ADD se ejecutancon las
El operandode
f3, áüneü€ pueden t.rru, t".-u"riables t2 como--remplazo'
de tiempo tv' La opera-
la memoria ha sido liasferido a B con lá variable
ahora entre los registros B y A'
.i¿l .or.".porrdie.rte puJe ejecutarse de A a la
La instrucción SiO espécifica una trasferencia del contenido
fueron trasferidas al MAR con Ia
putu¡* áe memoriu y
",ry".'direcciones primero a B la ope-
variable de tiempo ro. ñf contenido de A se trasfiere es-
B a la palabra de memoria
ración de escritura tiasfiete el contenido de
pecificadaPor MAR:
Fq2tzi B <--A
Fqrtr: M <- B
Fqrtr: M <- B
FqrB"tr: PC <- PC + | B,:lifB:0
el tiempo úr (ver
La palabra de la posición M fue colocadaen B durante y
t2 el nuevo valor
Tabla 11-6). El registro B se incrementa en el tiempo
este tiempo el MAR
se almacena una ur" *ár r" la memoria. Durante todo
de M. Recuérdese
no cambia, ¿. -"r,.ru Ñe especificasiempre la dirección
puede in"r"*.ntada cuando esté locali-
ñ" ;;; ñlabra de ,rr"iiorü'"o
-D;t"
"". procesador donde se
zada en la memoria. ser trasferida a un registro
el conteo. Mientras que el número incrementado se almace-
p""á"
":..rtar t;;;;"b; su valor en B; si es 0' se incrementa el PC pata
na en la memoria,
B" usada en la última
causar una omisió.r-a-"rrtt" instrucción. La variable
proposiciónes una de detecciónde cero y es igual al binario 1 si el
"uiififu
registro B contiene un número de solo ceros' en el
La instruccl¿r,gSf ;. la instrucción disponiblemás.complicada sigue:
U.ra formu po.iUf" de ejecutar esla instrucción es como
"o-prrt"áot. 495
Fqotr: B(AD) <_ pC, B(Op)<__
0101,pC <_MAR
Fqotr: M <_ B, pC <__
pC + |
La dirección de regresodisponibre
en el-pc se trasfiere a la parte
cióndel registro'J de direc_
1 "ódiq;óióü'e'uxl
de operación del mismo ." i."rñ;;;;r; partedel código
reg-istro. Recuérdese.que el
MAR contiene registro de dirección
la p1{e de i" ¿ir"".l?" de la iJrt.*"i¿i
La trasferenciadei MAR ar pc;;i;; iesignada wr m.
io anterior se hace duranle u ae la t.asie*""i"'a" m al pc. Todo
gresose almacenaen la memoria de tiempo tr. Ladirección de re-
"".*üil
e' Li tiempo ¿r. eí pcre incrementa
esre tiempo de manera.quela instrucción en
ciclo de búsquedaestaráé" U p".l"i¿" q.ru.u l"u^aiür,t" el siguiente
m * 1..
Instruccionesde referencia entre
registros
Las microoperaciones de registro que ejecutan las instrucciones
cia de registrosse ristan en"ra Tabra de referen_
tl-g.
en el terminal de salida go del á*"¿in."ao.E.tu. i".ñ";i;;es se reconocen
durante el tiemp<,ú, der i,i.r" au a" of".";tó" ; son ejecutadas
¡,iJqu"-au.p". ." define una
nueva variable r: eatz y se usa ",í"i""r*Jiu
en io.r^asr"r r"""i""uJ'L
ferenciaentre registror. Íil ."rto de re-
¿"'r"J rr.,"ior".-a";;;; "o.,tror
se determinan
a partir de uno de sus bits en et regi.iio
B; ;i;;i;;;;; resto de ra ins_
trucción permanecearmacenado
.""Áá tlempo. por ejemplo,ra instrucción
cLA tiene el código.tt"r"a.".i-ár o'gdd,
.uar correspondeal códigobinario
01i0 10000000 0000..-Ercódigoae "l
opeiación.u d."oiiii"l'"-pu.ti. del regis_
1t es igual a qu. El bir 12"en
:.:
o. .f::ro-l_,queejecuta esta instru""iZ., b;l; J;;ii; o,ru la función
"l-rláIt,o :
Las prlmerassiete instrucciones ". ,e6tsB1z rBtz.
de refeiencia-entre'iegistros ejecutan
las operacionesde borrado,
el registro A ó E. Las sig'ienñ;;;;; ;"roi;;;;il;;",T incremento en
"";;ü;";;";
ir,rt.,i""ron;";;; insrruccionesde
Tabla 11-g Ejecución de ras instrucciones
de referenciaentre registros
r : Qatt
CLA rB12: A <-0
CLE Borrar A
rB1¡: ,g<-0
Borrar E
CMA 18¡6: A<_A- ComplementarA
CME rBe: E<_E ComplementarE
SHR TB¿: I <--slr¡A, A6 <- E, E <__ A, Desplazara la derechaA v E
SHL rB7: I < - s h lA , A 1 < _E , E < _A ¡ 6
INC Desplazara la izquierdaA v E
rBu: A<-A*l IncrementarA
SPA rB5Aiu: P C < - . P C + I
Incrementar pC si A espositivo
SNA rBaA16: P C < _ P C + I
SZA IncrementarPC si A es negativo
rB3A,: P C < _ P C + 1
Incrementar pC si A es cero
SZE rB2E,: P C < - P C + I
IncrementarpC si E escero
HLT rBy: S+-0 Borra el flip-flop de comienzoy parada
E
SEC, 11-6 D I S E Ñ O D E L O S R E G I S T R O SD E C O M P L T - I ) C = J:-
o m i s i ó n e j e c u t a d a ss o l a m e n t e s i s e s a t i s f a c e n l a s c o n d i c i o n e s c S ' . & r , , - r i . c : :
La omisión de una instrucción se logra incrementando de nuevo P(' ace=--.
del incremento que se hace en el tiempo üt (ver Tabla 11-5). Ei e.i¿ü,
del bit de condición para la omisión se convierte en parte de la funcron ce
c o n t r o l . A s í , e l a c u m u l a d o r e s p o s i t i v o s i 4 1 o : 0 y n e g a t i v os i A r , , : 1 . E .
símbolo A, es una variable binaria igual a 1 cuando el registro A contiene
sólo ceros. E' es igual a 1 cuando el flip-flop E contiene 0.
La instrucción de parada (halt) borra el flip-flop de comienzo y parada
S y detiene la secuencia de tiempo. El registro de secuencia G para de con-
tar mientras que su valor sea 0. Esto causa que el computador esté latente
con fe siempre a la salida del decodificador de tiempo. Como F es.también
0, la función de control F'úo es la única que se produce mientras que el com-
putador esté inactivo. Esta función de control trasfiere el contenido del PC
al MAR continuamente (ver Tabla 11-5). Esta trasferencia continua se pue-
de tolerar cuando el computador hace una parada latente. Si esto es inde-
seable se pueden quitar los pulsos de reloj de| MAR y de la misma manera
prevenir que esta trasferencia ocurra cuando S: 0. El computador puede
recomenzar cuando se active el interruptor de "comienzo", el cual pone a 1
el flip-flop S. Esto causa que los pulsos de reloj alcancen la secuencia del
registro G y comiencen a producir Ias otras variables de tiempo.
Instruccionesde entrada-salida
P : 4tlt
SKI pBeNs: PC<-.PC+I lncrementarPC si el indicadorde No : 1
INP pBti A t - a < - N ¡ - s ,N 9 < - - 0 AlimentarA, borrar indicador
SKO pBrcUe: PC<_PC+I InprementarPC si el indicadorde salidaU,, : I
OUT pBs: U t - a + A ¡ - s ,U e < - 0 Extraer de A, borrar indicador
11-6 D I S E Ñ OD E L O S R E G I S T R O S
DE COMPUTADOR
O p e r a c i o n e sd e r e g i s t r o
Nótese que r es una variable igual a Qats Y rB, se le asigna una varia-
ble de control or. En la Tabla 11-10 bajo el registro A se tiene:
a, - rBr: E <- Ay
S: G<-G+l
ctt PC<-PC+l
Memoria de control
R-F'tt+F(qo * q1* q)t¡ Be-M Leer de memoria
Il=F(qz+ q t * q+)t{ M<--B Escribir en memoria
ReerstroA
at : Fqo!3: A<--A ¡\B AND
a2: Fq1t3: A<_A } B Sumar
a^ = rBp; A <-0 Borrar
ar: rBPi A<-r Complementar
a, : rBgi I <- shrA, A6<- E Desplazamientoa la derecha
au: rB7: I <-shlA,A1<- E Desplazamientoa la izquierdr
a1 : 186: A<-A*l Incremento
as : pBli lr-¡- {r-¡ Trasferencia
Registro B
b¡: Fq2t2: B+-A Trasferencia
b2 = Fq3tr: B<-B+l Incremento
b3 = Fqol2: B(AD) <- PC, B(Op) +- 0i0l Trasferencia
Registro PC
ct : F'tt
+(q$, * q)Ft,
+@ya\a+ B4Arc
+ B3A, + B2E')r
+(BnNe * BrcU)p: PC<-PC+I Incremento
c2: qst3: PC <- B(AD) Trasferencia
b3 = Fq4t2: PC <-_MAR Trasferencia
Registro MAR
dt : F'to: MAR <_ PC Trasferencia
d, = Fls: MAR <- B(AD) Trasferencia
Registro I
it : F'tz: r <- B(oP) Trasferencia
Flip-flop E
e 1: r B ¡ r : E <-0 Borrar
e2: rBe: E.- E Complementar
a2 : Fq1t3: -E <--arrastre Trasferencia
a5 : rBs: E+-A1 Desplazamientoa la derech
a6: rB7: E <- A¡6 Desplazamientoa la izquie:
Flip-flop F
i: F'(qo* qt* qz
+ % + q)t3i F<-l Ponera 1
fr: Ft3: F <-0 Borrar
Flip-flop S
s¡ : r-B¡: s <-0 Borrar
Registro G
.S: G < - - G+ I Contar
Registro Li
u, = PBe: Ur-ae A1-s,U9<-0 Trasferir
Registro N
as: pBn: .Ay'e
<_ 0 Borrar
F
s E c . 11 - 6 D E L C O M P U T A D O R5 O l
D I S E Ñ OD E L O S R E G I S T R O S
0l
s
MUX
B tt-rc
Registro 1
Salidas de cont¡ol
Cargar
ul-
s E c . 11 - 7 D I S E Ñ OD E L C O N T R O T5 O 3
11-7 D I S E Ñ OD E L C O N T R O L
para los
La unidad de control del computadorgeneralas variablesde control y la
."gi.tro, y unidad d" -"rno.iu . Hay i+ variables de control diferentes
11-10 como funciones de control' En el
mayoríade ellas se listan en la Tabia
métodos para el diseño de la lógica de con-
capítulo to se presentarontres
trol: el control alamb.ráo., el contr-olPLA y el control del
-i"rop.og.u-". """
l,u-rrrriiad de control del computador puede ser diseñada
"o-po"entes
usandb cualquierade estostres métodos'
C o n t r o l c o n c o m p o n e n t e sa l a m b r a d o s
LaorganizacióndecontrolpresentadaenlaFigurall-16esesencialmente
del registro
,rrru o".g^nlración con componentesalambrados por el ^método
de secuencia G en este casoes un
á" ,u"rr""rr"iay decodificadór.El registro
y ui d""oáificador de tiempo entrega cuatro estados de control
"o.r1uaá, ."gundo d_ec9{i.fi,cador se usa para el código de opera-
pái"-.i ,iit"rrru. Un
de control ge-
ción almacenadoen-el-.-"gi*tto/. El bloque de la red-delógica
nera todas las funcionesde control para el computado¡'-
comple-
La configuru.iá" a" ¡" red de lógica de contiol en la Figura 11-6
componentes alambrados. Esta configuración
ta el diseño del control con
las 24 funciones
consiste de las .o-p,r".t". combinacionales que genelan
listadas e'n la Tabla 11-10. Las funciones de Boole listadas como
de control
Boole de las cuales se
funciones de cont.oi especificanlas ecuacionesde
Este circuito no se dibujará aquí
ñ$ deducir el circuito combinacional.
las 24 funciones de Boole que definen las variables
i"ro prr"d, obtenersede
á e c o n t r o lR , W , a l h a s t aa s , b r , b r , b r , c r , c 2 , d r , d , ' í " e " € z ' f t ' f z '
sr Y ur.
/.- lI dl Bl a3
L' l> cl to el
\) R Btz A4
F ¡r Arc PLA 3 e2
Grl fl "z as
Tablas
4) C2 E 11-8 a6
11-9
Q1 u9 4.1
fz ,'9 sl
L a.l
'I-t ^
PLA 2 "'
It bl
F rabla w
tt-7
G2 b2
Gt b3
Bz cl
tu5
Tabla 1l-11 Funciones de control para el pLA t
*El
CI tipo 82S103 de Signetics.
5O8 DrsEÑo DE COMPUTADORES c A P . 11
[ncrementar
Cargar entrada
0000 0 Ninguna
0001 I dl MAR <_ PC
0010 2 C1 PC<--PC+I
0011 n B<_M
0100 4 C2 PC <- B(AD)
0l0l 5 d2 MAR <- B(AD)
0l l0 6 r Operaciónde referenciaentre registros
0l l l 7 p Operaciónde entrada-salida
1000 8 A¡ A<.A ¡\B
l00l 9 A2 A <- A + B, E <--arrastre
l0l0 l0 bl B <-.4
l0l I ll W M<_B
I100 t2 b2 B<-B+l
1l0l IJ b3 B(AD) <--PC, B(OP) <- 0101,PC <- MAR
I I l0 t4 ,:, M <- B,si(8, : l)entonces(PC +- PC + l)
llll l5 Ninguna
I
Tabla 11-14 Tabla de ve¡dad del ROM para el control del microprograma
.{\D 0001l 0l0l 001 MAR <- B(AD) CAR <_ CAR + I
00100 001l 001 B<-M CAR <_ CAR + I
00101 1000 010 A<-A \B CAR <--O
001l0 0000 010 Ninguna C A R< - O
\L \TA 00lll 0l0l 001 MAR +- B(AD) CAR <_ CAR + I
01000 0 0 1 l 001 B<_M CAR <- CAR + I
01001 l 0 0 l 010 A <- A + B, E <- arrastre C A R< - O
01010 0000 010 Ninguna C A R< _ O
0 l 0 iI 0l0l 001 MAR <- B(AD) CAR <- CAR + I
0l100 l0l0 001 B<_A CAR <- CAR + I
0 ll 0 l l0r I 010 M<--B C A R< - O
0lll0 0000 010 Ninguna CAR <_ O
510
5 1I
D E LC O N T R O L
DISEÑO
S E C .1 1 - 7
la Tabla 1l-1-1'
El microprograma para la memoria de control se da en
el RoM. Hay 32 palabras
Este es también ta ta¡tá de verdad para programar
palabra se es¡recifican en la ta-
d" ñOM; la dirección y contenido-de cáda
nueve rutinas que muestran las microinstruc-
üfu. f,u tabla se subdivide en
para
ciones que pertenecen al ciclo de búsqueda y las microinstrucciones
La columna de la
;j;;;;"r= ;"áu ,rrru de las instrucciones de computador.
en forma simbólica y la
ierig.u"ió., simbólila presenta el microprograma
secuencia de direcciones para el CAR'
mtcroopera-
El ciclo de búsqueda comienza con la dirección 0. Las tres
tu rutina de búsqueda trasfieren el contenido del
ciones consecutiva*'."
pc ul MAR,leen la instrucción al registio B e incrementan el PC. En la
a 1. El mismo pul-
áir"c"i¿r, 2 (0010) el bit 5 de Ia microinitrucción es igual
so de reloj que incrementa el PC también ejecuta la microoperación:
CAR <-228(OP) + 3
bits se despla-
B(OP) contiene los tres bits del código de operación. Estos
(multiplicando por 22 ) y el.binario 3 (11) se
,ur, ¿o¡t"-ente a la izquierda
dirección pará el CAR. La dirección recibida en el
agrega para formar una
la tabla y el control
cAR trasfiere el control a una de las rutinas listadas en
la instrucción específica. La configuración de esta
.""1i".1" ejecutando
trasformación de código se ilustra en la Figura 11-9' ^- ,
para cada instruc-
Esta configuración asigna cuatro palábras de ROM
I,/O. Por ejemplo, la instrucción ISZ tiene
ción, excepto para iÁ i"J."l.ión
que ejecuta esta instruc-
.i de operación 011. El comienzo de la rutina
el binario 0 1 1 1 1 ' L a s cuatro
., uri¿ en lá dirección 4X 3+ 3: 15 la cual es
. i ¿"¿Aigo y No
las direcciones 15, 16, 17 18.
palabras RoM para esta rutina están en
la dirección 19 porque esta dirección contiene
!" p,r"¿" usar lá pulubru de
fu ñri-"tu -i.tol".l.ucción para la rutina BSB' Como no hay capacidad de
se puede bifurcar a una
bifurcación en esta unidad áe microprograma, no
p"r"¡*deRoMnousada;portantocadarutinadebecompletarsecon
c u a t r o m i c r o i n s t r u c c i o n e so m e n o s '
La di-
La rutina AND puede configurarse con tres microinstrucciones.
t r a s f i e r e a l M A R , e l o p e r a n d o s e l e e d e la me-
rección de la instru""ió.r..
moriaaByseuj"""tulamicrooperaciónANDentrelosregistrosAyB.La
(00101) tiene el bit 6 igual a 1'
última microinstrucción en la d^irección 5
para co-
ñ.io que el CAfi se borre y el control regresea la dirección 0
"u".u Las primeras dos microinstrucciones
menzar de nuevo el ciclo de búsqueda.
que el cAft se in-
de Ia rutina AND tienen el bit r iguat a 1, lo cual causa
palabra de está rutina en la dirección 6 no se usa' Esta
cremente. La última
ya que se debe especificar_a-lgopara la tabla
;"1;b;" no puede dejarse vacía p^alabraes no especi-
á" ,r".dua d^elROM. La mejor ,''u.r"ra de ocupar esta
ñ"u, *i"roop.ru"io.,., en loá bits t hasta 4 y bo.tut el C-AR con el bit 6' De
falta y la memoria de control se encuentra en Ia
esta maneru, ai oarrr.a una
y regresará al ciclo
dirección 6 no se ejecutará ninguna operación el control
de búsqueda.
La ins-
Las rutinas de ADD y STO necesitan tres microinstrucciones'
palabras disponibles en la rutina. La
trucción BSB usa todas Ias cuatro
s o l a m e n t e u n a m i c r o i n s t r u c c i ó n . T J n a i n s t r u c c i ón
instrucción BUN necesita
512 OISEÑO
DECOMPUTADORES
c A P . 11
Inc¡ementa¡ el PC
Control de
componentes
Operaciónde registro rnte¡conectados
6
Decodificador , Operación de ent¡ada-sali Operaciones
ROM Po de
PLA 3 de registro y
la Figura 11-8 ent¡ada-salid¿
1 1 - 8 C O N S O L AD E L C O M P U T A D O R
S E C .1 1 . 8 C O N S O LD
A E LC O M P U T A D O5R
/3
REFR IAS
E ENC
1. Mano, M. M., Computer System Architecture. Englewood CIiffs, N.J.: Prentice-
Hall. Inc.. 1976.
514 D I S E Ñ OD E C O M P U T A D O R E S c A P . 11
PROBLEMAS
11-1. Repas. ,^ ,.rnjunto de instrucciones del computador diseñado en este capítulo
(Tablas 11-2, 11-3 y 11-4) y haga la lista de las instrucciones útiles para:
(a) trasferencias entre la memoria y el acumulador;
(b) trasferencias entre la entrada-salida v el acumulador:
(c ) manipulaciones aritméticas;
(d) operaciones lógicas;
(e) operaciones de desplazamiento;
(f) decisiones de control basadas en condiciones de estado;
(g) subrutina de bifurcación y regreso.
ll-2. Dé una lista de instrucciones para que el computador ponga a uno el flip-flop E.
11-3. (a) Haga una lista de la secuencia de instrucciones para que el computador
ejecute un desplazamiento aritmético a la derecha de un número almacenado
en el acumulador. El número está en la representación de signo complemento
de 2. (b) Repita lo anterior para un desplazamiento aritmético a la izquierda.
Indique cómo se detecta una sobrecapacidad.
11-1. Muestre que la lista de instrucciones obtenidas en el Problema 11-1(d) cons-
tituye un conjunto suficiente para configurar todas las 16 operaciones lógicas
listadas en la Tabla 2-6.
11-5. (a) Escriba una secuencia de tres instrucciones que se almacenen en los lu-
gares de memoria l, 2 y 3. Ellas deben constatar si hay un caracter en un
dispositivo de entrada y si es así, trasferirlo al acumulador. (b) Escriba una
secuencia de tres instrucciones que se almacenen en los lugares de memoria
5, 6 y 7. Ellos deben constatar si el dispositivo de salida está desocupado y si
es así, trasferir un caracter del acumulador.
11-6. El computador descrito en este capítulo no tiene una indicación de sobreca-
pacidad después de sumar dos números con siglo. Asuma que los dos números
agregados con la instrucción ADD están en la representación de signo com-
plemento de 2. Describa un algoritmo en forma de flujograma para un progra-
ma de computador que sume dos números y detecte una sobrecapacidad.
ll-7. El programa siguiente es una lista de instrucciones en código hexadecimal.
El computador ejecuta las instrucciones comenzando por Ia posición hexade-
cimal 100.
516 D I S E Ñ OD E C O M P U T A D O R E S cAP. t 1
Código
Simbolo hexadecimal Descripción Función
Código
Símbolo hexadecimal Descripción Función
SBA 8 m SubstraerdeA A<_A _ M
ADM 9 m Agregara la memoria M <- A + M (A no cambia)
BEA A m Bifurcar si A es igual S i ( A : M ) e n t o n c e s( P C * m )
(A no cambia)
P R O B L E M A5S17
PC <- MAR
por la proposición:
sEc. 12-2 O R G A N I Z A C I OD
NE L M I C R O C O M P U T A D O R
1 2 - 2 O R G A N I Z A C I ODNE L M I C R O C O M P U T A D O R
Microprocesador
ria que puede ser acomodadoen el sistema. Para n líneas, el bus de drrec-
cionéepuede especificarhasta 2" palabras de memoria. La capacidadtrp:-
ca de ún bus de direccionesde un microprocesadores 16, para tener una
capacidadmáxima de memoria de 216:65.536 palabras.La cantidad de me-
mória empleadaen un sistema de microcomputador dependede la aplicación
particulai y a menudo es menor que la máxima disponible en el bus de di-
recciones.
El bus de datos trasfiere los datos del microprocesa$ora la memoria
o interconexióny viceversa,la cual es seleccionadapor el bus <1e_direccio-
nes. El bus de áatos es bidireccional, lo cual significa que la información
binaria puede fluir en cualquier dirección. Un bus de datos bidireccional
se usa para ahorrar patillas en un circuito integrado. Si la unidad no usa-
ra un 6us bidireccional sería necesariocolocarle terminales de entrada y
salida, separadosen la cápsula del circuito integrado.El número de líneas
'
en el bus de datos del mióroprocesadorvaría entre 4 y 16 siendo 8 líneas el
más común.
tras-
u, grupo separadode buses de datos y de dir-eccioneses la vía de
La ventaja de este
ferencia .o-úr, encontrada en los microprocesadores.
p,t"d" una palabra en la
esquema es que el microprocesador .seleccionar
memoria v trásferir la palábra de datos al mismo tiempo. Algrnos micropro-
I \ un bus tomún el cual es multiplexado en tiempo, para tras-
""*udor"r-usan puede
ferir direccioneso datos. Por ejemplo, una baria de 16 líneas comunes
16 bits seguida de una palabra de
usarse para trasferir una dirección de
escrita en la memoria. La ventaja de este es-
datos de 16 bits que va a ser
quema es que se necesitan menos patillas y aún- así los datos pueden ser
uso
de 16 bits áe longitud. La desventaja estriba en el tiempo perdido en el
secuencialdel bus común y la necesidadde un retenedor externo para re-
tener la dirección de la memoria. Algunos microprocesadores _c-omparten
solamentepu.t" d"t bus del sistema eñtre datos y direcciones.un bus de
y
16 líneas puede usar 8 líneas bidireccionales para trasferencia de datos
16 líneas iu." tt".f.rencia de direcciones.Esto requiere compartir el bus
de datos iu q"" la dirección se divide entre las 8 líneas del bus de datos
I y las 8 líneasrestantesdisponibles.
En vez de usar la cápsulamicroprocesadora como la que se muestra en
la Figura 12-1,en algunas aplicaciones se remplaza estebloquecon una cáp-
sula microcoáputadora. Típicamente una cápsula microcomputadoracon-
tiene un CPU con 64 palabias de RAM y 1.024palabrasde ROM, todo en-
capsuladoen el circuiio integrado.Tiene ademásalgunascaracterísticasde
interconexión. Si el sistema digital que se va a diseñar no requiere más
memoria o característicasde interconexión adicionales,entoncesel siste-
ma microcomputadorpuede construirse con una sola cápsula,componente
microcomputadora.De esta manera, esta cápsula puede usarse como un
.olnpo.r"ni" de bajo costo y escasotamaño para una aplicación indepen-
diente. La mayoríá de las cápsulasmicrocomputadoraspueden ser.expan-
didas con RO-M externa, RÁM y característicasde interconexión para
sub-
. Droducir una aplicación de control más poderosa.En las discusiones
f ;lg,riente., la memoria y la interconexión estarán separadosdel C-PU, pero
debe tenerseen cuenta que algo de memoria e interconexión puede ser in-
cluido dentro de la cápsula de CI que contiene el CPU'
5 2 4 D r s E ñ oD E Ls t s r E M AD E LM t c R o c o M p u r A D o R cAP.12
Separadordel bus
Figura l2-2 Símbolo gráfico para una compuerta separadorade t¡es estados
sEc. 12-2 ORGANIZACIONDEL MICROCOMPUTADOA 525
mien-
mente una compuerta de tres estados tenga acces-oal bus de líneas
tras que las otrás compuertas estén en el estado de alta impedancia.
de bus para
ú., bus bidireccional puede construirse con separadores
línea del bus bidireccio-
controlar la direcciól á"f nir:" de información' Una
i; ng"iá fZ-g. El bus de control tiene dos líneas de
nal se muestra de
""
p"ru t"-ti"r?át""cia de entrada y so para la trasferencia
*ñó*-;, esta-
selección controlan los dos separadores de tres
salida. Esas líneas áe se
dos. Cuandos¡:1;;;:0 el separadorinferior se habilita y el supe-rior
Esto forma una vía para
inhabilita al pasar a un estado dL alta impedancia. su-
ild;;", de Lntrada-prwerriettes del bus para pasar por el separador
Cuando s, : 1 y s, 0' el separador superior
perior y pasar trrago -
"t-.i.tema. Esto forma
í"-fr"¡iflt" y el inferior pasa a un estado de alta impedancia- que pasan por
purá lo. datos dé salida provenientes del sistema y
,"" puede inha-
"i" superlo*.Ñu"1" bus de líneas. La línea de bus
la compuerta sepa-
"f ambos, lo cual coloca a ambos
bilitarse haciendot,-t .t, igual a cero
para prevenir cualquier trasferencia
radores en estado d"""it" impedancia
de información de o entrada a tiavés del bus de líneas' Esta condi-
""lidu el bus común para
ción debe existir cuando una fuente externa esté usando
dos líneas de selecciónpueden
comunicarsecon algún otro componente.Las
externos conectados al bus del es-
!' ser usadas p"r^ irrrár-a, u lo" *ódnlo.
en un momento dado de tiempo'
;;d" ;; ef cuaf está el bus bidireccional
la capacidad de carga de un bus de micro-
En la mayoría de los casos
á""ir, p.r"d" soportar un número reducido de
p-"..áao, e."li*itáái
""
Cuando eI bus se conecta a un gran número de unidades
i"rg".-".t"rnas.
Ia capaciáaá d"
-d"l del microprocesadordebe ser reforzadacon
"*iEirru.,
separadores bus los cuales se pueden encontrar en la forma
""rg"
de entrada y
de cI. Además, cualquier componente qu" iiette terminales
"*t"..ro.
microcompu-
."fiJ" ."pu."ao., debó estar conectadoal sistema de bus del
de separadores de bus externos para poder.aislar el compo-
;;il;p.i-edio
de micro-
nente cuando no se L*iá .o*,r.ticando con el bus. Así, un sistema
.rece*ita-rnu' u -u""¿o separadores de bus externos entre el
;;;p";"¡"r
t St y entre ciertos componentes LSI
microprocesadory ;;;";p.nentes
y el sistemade bus común.
Controlde salida
Control de entrada
Bus habilitado
Control s i (alta imPedancia)
de bus .r0
Fuente de poder
Petición de interrupción
Microprocesador Reconocimientode interrupción
Petición de bus
Bus garantizado
Lectura
Escritu¡a
Bus de dirección
526
sEc. 12-3 O R G A N I Z A C I O N D E L M I C R O P R O C E S A D5O2F7
E j e m p l od e C p U
al microprocesado¡
8080,/85
exceptoque los registrosF y G se llaman
"r;.}iffi%'j:t
*El
registro de condición fue discutido en la
Sección 9_2.
I
, Bus de datos
t bidireccional
(DBUS)
+I
8il
Separadores
de datos
Multiplexor
c
Contado¡ de
ú programa (PC )
Decodificador e
A U Indicador
de instrucción
de pila (SP)
Registro de
Registro di¡ección (4fi )
acumulado¡
(A) Temporizador +H+ L---->
J
control 16 9 8
Separadores de
direcciones
Otras WR RD
Iíneas (escri- (lec-
de cont¡ol tura) tura) (ABUS)
Busdedirección
C i c l od e m e m o r i a
de direcciónABIIS\
Bus de datos (DBUS )
Micro- Memo¡ia
procesador Lectura (.RD ) (RAM o ROM)
Escritura ( WB )
(para la RAM solamente
MIAR) <-A
SumarB y A Código de
A<_A* B
operación
Sumar el operando Código de Operando A?A +byte2
en turno y A operación
Sumar el operando Código de Mitad de Mitad de
especificado por una operaciórr mayor menor A<- A +M [dirección
dirección y A orden de orden de
a dirección a dirección
't
Contenido
binario de
la memoria
Dirección decimal --1
8',l 0 1 0 1 0 1 0 1S i g u i e n t e o p - c o d e
2 6 0ol o o o r r rOperando
o
Figural2-?Representacióndelamemoriadetresinstruccrones
Sumar B o A:
IR <--MlPCf, PC <- PC + 1 leer el código de oPeración
T<_B trasferir B a T
A<_A*T sumar T a A
Sumar el operandoinmediato a A:
IR <- M[PC], PC <- PC + 1 leer el código de operacrón
T <- M[PC]. PC <- PC + | leer el operando
A<-A * T sumar el operando a A
12-4 INSTRUCCIONES
Y MODOS
DE DIRECCIONAMIENTO
tra también cómo los bits de condición son afectadospor cada instrucc. :.
El código interno para cada instrucción se lista en binario, octal ¡'he¡ac¿-
cimal. En la mayoría de los casosse adopta un código equivalenteoctai -
hexadecimal porque estos códigos necesitan menos dígitos que la represen-
tación binariá. Cuando se escribeun programapara un computadorse asig-
na a cada instrucción un nombre simbólico para identificarlo.
Los nombres simbólicos y códigos asignadosa las instruccionesusa-
das en un microprocesadorson diferentes de los nombres y códigos usados
en un microprocésadordiferente aun para instruccionessimilares. Por esta
razón, el usuario debe estudiar y recordar el conjunto de instrucciones y
sus nombressimbólicos cada vez que se usa un microprocesadordiferente.
Aunque el grupo de instrucciones de diferentes microprocesadoresdifieren
de uno a o[.o, hay ciertas instruccionesque realizan operacionesbásicas
y que son incluidas en todos los microprocesadores.
l n s t r u c c i o n e sp a r a e l m i c r o p r o c e s a d o r
Códigc Símbolo
hexa- de la
decimal instrucción Descripción ¡ uncron
'A :
registroacumulador;B: registroB; FG :par de registrosF y G; fif :par de re-
gistrosB y C; D8: operandode datos de 8 bits (1 byte); D16- operandode datos dc 16
b i t s ( 2 b y t e s ) ; 4 D 1 6 : d i r e c c i ó nd e 1 6 b i t s ( 2 b y t e s ) .
5 3 8 D I S E Ñ OD E L S I S T E M AO E L M I C R O C O M P U T A D O R CAP, 12
MOV A, FG
simboliza la operación de trasferencia entre registros A *MlFGl. Es-
ta trasfiere al registroA el byte de memoria, cuya dirección está en el par
de registrosFG. Esta es llamada instrucción indirecta de registro ya que
el par de registrosFG especificanla dirección del operandoen vez del ope-
rando en sí.
La instrucción de carga inmediata:
INX FG
la cual simbolizala operaciónde trasferenciaentre registrosFG*FG*7.
De esta manera, el contador de datos o indicador puede ser incrementado
para indicar las direccionesconsecutivasen la memoria donde el progra-
mador almacenauna tabla de bytes de datos consecutivos.
t
sEc. 12-4 I N S T R U C C I O N EYS M O D O S D E D I R E C C I O N A M I E N T O 539
Modos de direccionamiento
SEC.12.4 E SM O D O SD E D I R E C C I O N A M I E N T C Y '
I N S T R U C C I O NY
PC(N + AD\
dondePC (H) denota los ocho bits de mayor orden del PC y ADS los 8 bits
de dirección de la instrucción. El resultadoes una dirección de 16 bits con
el PC (Il) dando los primeros8 bits y ADS los 8 bits restantes'
PC + AD8
Modo de Dirección
di reccionamiento efectiva Comentarios