sta obra mmce una clara inwodaKcibn a ios pmmpmdel diseño lógico digital. A diferencia de otras &ras simiiares, la mayo...
123 downloads
5416 Views
15MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
sta obra mmce una clara inwodaKcibn a ios pmmpmdel diseño lógico digital. A diferencia de otras &ras simiiares, la mayor parte de los temas se presentan desde una perd ploratoria a semejanza de u de investigacibn, cuyo o b j tivo cmsiste en descubrir y conocimientos sobra el tema expuesto. Asi, a t abordar un 1 0, siempre se intenta que los estudiantes comprendan su importancia y se invducren en el descubrimiento de los conceptos. Características Se incluyen abundantes ilustraciones, ejemplos y ejercicios para cada tema con los cuales el estudiante puede reforzar y aplicar
los conceptos vistos en la obra. Al final de cada capitulo, el lector encontrara una serie de pro-
: S b l e m a s que van desde una aplicacien. muy rencilla de los proce.s5imMtos formulen e! t4xb hasta la soluci6n de otros m6s = comphjos y de mayar difi-qttad, 5e ha elegido el kngtiajc:&~€~ pwa presentar lar tenguaj~cda dascripEioln en hardware (HDL) como una herramienta de diJcm8 Cgt esto se r0dYáf4l esfuerzo de los estudiantes para aprender 6jl&-i In p r d e concentrarse en los tbtireptor rubyaantes d r'--"-con -- HDL.
-.
Principios de diseño lógico digital
Principios de Diseño Lógico Digital Norman Balabanian Universidad de Florida
Bradley Carlson Symbol Technologies, Inc.
Grupo k-t-dro Diogonai B5A l io 26-115Polc C'iib Far (57 1 1 1187627 Telefonos 2570895 63581 37 * A P g3925 Bcgo'o D TColombia a e-mail.info!>r-l-dru ........., .....
...................................
.
www.k-t-dra.com
\
Para establecer comunicaclón con nosotros puede hacerlo por:
m
correo:
Rmnacimlinto 180. Col. San luan
nihui-, h c a p o m l c o , 09100, MBxlco, D.F.
fax pedldos: (OIS] 561 4063 561 5231
Tttulo original de la obra: Di~itaILogic Dmign Principles / Norman Balabanian. Bradley Carlson
1SBN:0-471-2935 1-2 Copyright O 2001, John Wiley & Sons, lnc. Al1 Rights Reserved Traducción autorizada de la edici6n en inglts publicada por John Wiley & Sons, Inc.
Direcci6n editorial: Javier Enrique Callejas Coordinadora editorial: Elisa Pecina Rosas Diseño de interiores: Guillermo Roddguez Luna Diseño de portada: Perla U p e z Romo Traducci6n: Ing. Gabriel Nagore Cdzares Revisión técnica:
Dr. CuauhtCmoc Carbajai Fernhndez Profesor investigador del Depto. de Eltctrica y Electrhnica ITESM-Campus Estado de Mbxico Principios de didio lógico digitol Derechos reservados respecto a la edici6n en espaíiol: 8 2002, GRUPO PATRIA CULTURAL, S.A. DE C.V. bajo el sello & Compañia Editorial Continental Renacimiento 180, Colonia San Juan Tlihuaca, Delegaci6n Azcapotzalco, Código Postal 02400, Mtxico, D.F.
Miembro de la Cirnara Nacional de la Indiistna Editorial Registro núm. 43 ISBN 970-74-0256-5 Queda proliibida la reprtiduccihn ii rdnsniisi6n total o parcial del contenido de la presenle obro en culiirsquiea formas, sean electr6nicas o mecánicas. sin el consenijmiento previo y por escnto del editor.
Impreso en México Printed in Mexico
Primera edicihn: U)U2
Esta obra se krmini5 de imprimir en marzo del 7002 en los talleres de Litugrifica INGRAMEX, S A . de C.V Centeno No.162 Local 1, CuI. Granjas Eirneraldd C.P.098
10. Mtnico. D.F.
-- ---
....*--.
l... X u..
-__
-
Prefacio
LS32ikIN.1:
3 EL LIBRO
~ Q -1 3a ~ avals*nrilP.ln s
v 3 3 ~ 0 1 1 a i a
Éste es un libro de nivel introductorio sobre los priticipios de diseño 16gico digjtal. Se dirige a estudiantes de primero y segundo año de ingeniería elkctrica, ingeniería electrónica, ingeniería en computación o ciencias computacionales. Nu se requieren conocimientos previos de circuitos eltctricos o de electrónica. También lo enconbwhn Útil los lectores que necesiten abordar p r primera vez o revisar los principios del diseño digital.
Aspectos pedagógicos
n mano del
:M)?
iMEX,S.A. de C.V. ranjas Esmeralda
D.E
El proceso deductivo -la aplicacilin de principios generales a casos específicos- siiele ilustrarse adecuadamente en los libros de texto. A menudo, el autor aniincia un concepto general ci un upecto de un tema o resultado, seguido de ejemplos de aplicación del concepto. Cuando los estudiantes inician un tema, ni) tienen muy claras las ideas que iiiotivan una definicidn o un procedimiento general. Tampoco comprenden la utilidad o interés que reviste un tema, o su trascendencia. En este libro, adriptamos un enfoque inductivo en la presentaci6n del material, que incluye la formulación de un resultado generalmente vilido a partir del estudio de casos específicos, como el ptncedirniento que sc seguiría en un proyecto de irivestigación. Un investigador llega a un resultado por lo general valido después de varios experimentos o cáiculos específicos. Algunas veces el estudio de uno o inás casos específicos cnnduce a una conjetura generalmente válida. Postenormente, la conjeturri se analiza y justifica utilizando resultados establecidos con anterioridad. De modo siniilar, presentamos la mayor parte de los temas desde una perspectiva exploratoria, en vez de ofrecerlos a1 lector sin ninguna justificación. La exposición del texto se asemeja a un proyecto de investigación, cuyo objetivo consiste en descubrir y asimilar conocimiemos sobre 21 terna que se estudia. Al abordar un tema, se realiza un esfuerzo considerable para contribuir a que los estudianres eiitjeniiiin por qué le debemos dedicar tiempo. Una vez qiie se agota uri tenia (esto es, cuando necesitamos p a r al siguiente), se analizan las alternativas: "Podemos hacer esto o aquello", y el comentario pridría prosegiiir: "intentemos priinero lo siguiente, por las siguientes razones". Por yu& seguir un hilo particular y cúmo podría presentarse un proccdimiento, son cuestiones tan importantes como aclarar al estudiante los detalles del procedimiento o de la aplicacihn de cierto algoritmo. Cuando un teinri. como el de las circuitos digitales, alcanza un nivel avanzado un libro de texto tiende a adquirir caracten'siicas enciclopédicas: se abnrdn todo tenia concebible. Estc cnfrique oculta al estudiante el juego del descubrimiento. Se le brinda la historia completa y se le iiidica qué aprender de ella, practicando cori los ejercicios y prohleinas plaritzados en et libro. En este texto. riatamos de evitar el rrrrii de catalogar todo lo que sabemos sobre el tema. En los problemas planteados en el texto, drj;irni)sa los estudiantes el placer de generar (de manera guiiida) resultadcis que no son esenciales para continuar con el tema. por lo que no es necesario que foririen panc de la exposición. Sabemos que los estudiantes aprenden mejor si están cctiniprometidos. No hay rnuchii que los autores puedan hacer para rnnntenerlris así, aunque insistimos en que participen en la deducción de una ecuacirSn cornplelando pasos omitidris, pidiéndoles que ohcerven los rasgos relevantes de un diagrama o tabla que e1105 describzn de manera cuidadosa, o solicitándoles que analicen un plan propuesto antes de llevarlo a cabo con detaile. Con Frecuencia recurrimos a estos procedimientos.
v
VI
Prefacio
Nivel de presentación El material de este libro es introductorio, para priiiiero o segundo año de universidad. Sin cmbargo, et nivel de un libro no debe dictar el grado de rigor en la presentación. Todo tema del l i bro se trata rigurosamente.
Selección de temas La seleccidn de los temas fue la usual. La selecci6n y el orden de los temas facilita el uso del libro en instituciones con diferentes calendarios y una diversidad de enfoques. El libro puede utilizarse en cursos que abarcan un año académico, ya sea de dos semestres o tres cuatrimestres, especialmente si se presia aienci6n a la sección relativa al laboratorio (vea la descripción del manual del laboratorio). Mediante la selecci6n adecuada de capítulos y temas de cada capitulo, es posible adaptar un curso de un semestre. Los temas "supleiiientarios" se presentan en secciones que los profesores pueden omitir sin que incurran en una falta. Las secciones o problemas finales que se hrisan en este material se pueden omitir también si se desea. La inclusibn de material de este tipo permite a los estudiantes con mAs tiempo o iiiteres beneficiarse sin iifectar n los demás. La elecci6n de ABEL para aprender un lenguaje de descripci6ii de hardware (HDL) corno herramienta de diwño, reduce el esfuerzo de los estudiantes para aprenderse el lenguaje, lo que les permite concentrarse en los conceptos de diseño con un HDL. Todos los conceptos de la especificación, simulaci6n y sintesis HDL pueden enseñarse utilizando ABEL; así, el estudiante no tiene necesidad de aprenderse la sintaxis y la semhntica de un lenguaje complejo como VHDL o Verilog.
Esquema de numeración de ecuaciones y figuras En ocasiones es posible que algunos esqiicmiis de numeracion de secciones, ecuaciones y figuras, ¿\sicomo las remisiones a ellas, distraigan al estudiante que dedica tiempo de manera improductiva a la búsqueda y lectura de los números. En este libm utiljzunos un sistema de numeracihn iecuencial, que se inicia en cada capítiilci, tanto para las ecuaciones como para las figuras. (Cuando se haga referencia a una ecuación de un capitulo anterior, también se indíca el número de capitulo.) De manera similar, las secciones principaIes de un capitulo se enumeran de mane ra consecutiva, sin indicar el capítulo, pem las secciones secundarias y tercianas no se enumzran; a\< se evita la lectura improduciiva de números de sección tales como 4.3-5, que identificiin la subsecciún 5 de la sección 3 del capítulo 4. Es rara la referencia a una de estas siibseccioncs particulares. si es que se llega a hacer en algún libro; por consiguiente, no se otorga valor alguno a un esquema de numeración de este tipo. No se enumeran todas las ecuadones. sino slili) tac importantes o a las ilur se hace referencia más tarde. Cuando nos referimos iina ecu~cihno a una figura, la indic;unuc con cl tdmiino ecuación oj5gura.
Ilustraciones, ejemplos, ejercicios y problemas Al explicar un tema, se emplean ilustraciones para aclarar,lo. En reatidad. una ilustración podría preceder a la explicación del tema como parte del proceso de inducciiin. Las ilustracion~sse incorporan de ese modo en la presentación del material. %mbidn hay ejeniplos numerados, separados del teato y ficilmente distinguibles, los cuales sr. abordan utilizando los conceptos que acaban de pliintearse, junto con otras ideas recientemente asimiladas. A lo largo de la exposición y con un formato que 10s distingue del texto. se encuentran los ejercicios nunierados que los estudiantes deben resolver en el tiempo en que estudian las seccio-
;in em-
del li-
i
uso del puede tnmesripción a capíltan en o pro1
:lusión n afeccomo
lo que e la esidtante 1 como
iguras.
iroduc-
:ración iguras. itimero manemnume-
.tifican ciones r algiid o las hn ii a
pdria . sc in-
sepa3s que
,
Iris rccio-
nes iinprtantes. El objetivo de estos ejercicios consiste en reforzar los conceptos que se estudian, invitando a los estudiantes a que efectúen algunos cBlculos sitriples y apliqueii después los resultados explicados. Éstos forman parte de la idea del proy~crode investigaciriri. Los requerimientos de excitación para un tipo de Mp-flop prdrían formularse dentro del rextri, por ejemplo: Iiis requerimientos de exciiación para otros tipos de flip-flops se dejan como ejercicio a los esiudian[cs. Cuando resulte de utilidad. se ofrecen las respuestas a fin de que los estudiantes confirmen los rcsuLtados de sus esfuerzos. (Lil mayoría de las veces. en especial si las respuestds son breves y por ello fáciles para que los estudiantes les den un vistazo dentro del texto, éstas ie presentan al pie de Itls páginas.) Los ejercicios na sólo requiere11 la repeticihn de los pasos de un ejemplo analizado, cambiando valores » cnrifiguraciones de circuito. Por consiguiente, no hay necesidad de ofrecer ejeniplos analizados antes de soliciti a los estudiantes que resuelvan iin ejercicio. Al final de cada capitulo se incluye una serie de prahl~tnas.Los problemas de cada serie van desde la simple aplicación de prricedimientos formulada e n el libro, hasta la solucióii de problemas mis crimplejos, o de gran utilidad. Algunas veces un problema requiere que los estudimtes apliquen una técnica específica. En otros casus se les pide que resuelvan un problema utilizando dos o rnás enfoques y que comparen el grado de dificultad. En anibos casos, practican técnicas específicas y refuerzan el dominio de ellas. A veces el prublema es abierto de nianera que los estiidinnres tomen decisiones en torno a los métodos que aplicaran.
Complementos del texto Hay dos paquetes de complementos. Uno se facilitii ii los profesores que adoptan el libro en sus cursor. el cual no se encuentra disponible para los estiidiantes. Incluye un manual que contiene las sc~luciciriescompletas de los problcmas eii el libro. También incluye un cniijunto de transpiirencias de figuras de la obra. Éstas se amplían de manera que los profesores. tengan la posibilidad de utilizadas e n el salón de clases. El otro paqiiete corista de un manual de laboratorio. Aunque en iicaairities el libro se hace rrfrrencia a familias específicas de circuitos digitales (por ejemplo, 73LSO7), el interés principal se centra en los principios de diseño. El maniinl de laboratorio persigue involucrar a los esrudiantes en la ~ r á c t i mdel disefiu digital, utilizando lo último en la tecnología de qiie se dispone en la actualidad. En algunas paries del libro, indicamos la forma de incorporar proyectos de diseño específicos del manual. Aunque algunos estudiantes quizá aprendan diseño digital con otros textos, también pucden utilizar este manual de laboratorio para adquirir experiencia en la prActi
rclativa al manual del Iabnratono, visítese el sica del diseño digital. Si sc desea más inforriiacion t ir) web del texto (http://www.wilcy.c~mícollege/eleclhalabania293S 12).
SOFTWARE Kecomendainos desde
el principio el usa de entradas esquemáticas. asi como dc simulación temporal y funcional en el labriratcirici (incluso con rxprtimentos o prScticas de laboratorio simples). Se puede ~itilizarel softwxc Yilinx WebPack, el cual se obtiene gratuitarnenir e n el sitio web Este software apoya la versión mris reciente de AB EL, de rnoXiliiix ~hrtp:llwww.xilinx.com). do que al llegar al capítulo 8 los estiidiantzs estarán f a m i l ~ u ~ ~ i icon d o sla intcrfm de usuario.
RECONOCIMIENTOS Quisiéramos dar nuestro agradecimiento a varias personas que han contribuidu de diversas maneras n la realización de estc libro. Norman Balahanian dzsca agradecer al doctcii- Vijuy Pitchumani (ahora con Intel) y al doctor Dikran Meliksetian (ahora coii IBM), de la Iliiiveriiilad de
r
V I I ~ Prefacio
Siracmse. En diferentes etapas fueron coautores de este libro e hicieron iniportantes contribuciones en la creación del texto. Algunas de las personas que ofrecieron comentanos y observacioneb invaluables cuando se revisó el manuscrito en diferentes etapas de su creacidn fueron:
Yu Hen Hu, University of Wisconsin-Madisoii David R. K~eteli.Northeastem University Juanita DeLoach, University of Wisconsin-Milwaukee Mehmet Celenk, Ohio Uiiiversity Iames C. Harris, Cdifomia Polytechnic State University, San Luis Obispo Sotinos G. Ziavras, New Jersey Institute of Technoliigy Jaoies H. Aylor, University af Virginia Ward D. Getty, Univeruity oi' Michigan, Ann Arbor Alexandros Eleftheriadis, Columbia University in the City of New York Ike Evans, The University of Iowa y Evolutionary Heuristics Shahram Latifi, University of Nevada. Las Vegas Gregory B. Lush, University of Texas en EL Paso Por último, deseamos agradecer a Ko-Chi Kuo,quien elaboró las solucjoncs de los problemas
ibuciomdo se
Contenido
l . Sistemas digitales y analógicos 1 2. Hardware, software y firmwarc 3
3. Sistemas numéricos 4
El sistemu binurio y ntms sistemas numéricos 5 Conver5 iones de buse 6
Conversión al sistema decimal 6
Conversión a partir del sistema decimal 7
Del octal o hexadecimal al binarir) 8 Aritmética biauria 9
4.
Suma 9 Resta 10
Multiplicación 10
Divisi611 10
Complementos: a dos y a uno 11
Suma de números binarios 13
Códigos y conversión de código 15
Decimal codificado en el sisremu binarin 16
Códigos ponderado5 16
Cridigo Cruy 18
Ccjdrgo de ~ i e t ewgmentus 1 8 C ~ ~ d i ~rr!funumr'ricu~ iis 19
5 . Detecrióii y corrección de errores 20
Cridigos dr~d r r ~ c r i d nde errores 2 1 Córiigcls ti(:r!c-orn~l~cidii (le errt~res 22 Códigos tic Hrii~iiiiirig 7 3 Resumen y repaso de1 capítulo 75 Problemas 26
X
Contenido
Ca pítUIO 2.
ÁLGEBRADE CoNMuTADoREs Y COMPUERTAS L ~ G I C A S 32
1. Álgebra bouleana 3 2 Principio de dualidud 33 Erwernus ,fiinJamentules 34
Álgrbra de ronmutacidn 37
2. Operaciones de conmutación 38 La operuci6nAND 38 Lu operucibn OR 39 ,!h operucirin NOT 39 Comentario 39
3 . Expresiones de conmutación 40
Minitéminos, maxirérminos y formu~canhnicas 4 1 Generalizucicin dtl la ley de De Morgriri 43 4. Funciories de conniutaciún 45 Opemr*ioriesde conmutación sobre jufiiricinnesde conmutaciba 46 Numrm de téntiiticis en formus can6ni~iicas 47 Teorftnu de expan.qirinde Shannon 47 Forma de suma de prtiductos 48
Forma de producto dc sumas 4'1 5 . Otrüs operaciones de conmutacióti 49 OR exclusiva 50
Oprruciones NAND, NOK
p XNOR 50 h. Crinjutitos de operaciones universales 5 1 7. Compuertas lógicas 5 2 Formus rilternarii~crsde las compuertas Ni4ND y NllR 53 Compurrtrrs OR erc-litsivas 54 Comentario 55 Lógica positiva, negativa y combinada 55 9. Algunas cuestiones prácticas relativas a cotnpuertas 57 Familirrs ldgiccis 58 Carricr~rísricasde entradds,-tlirirrdtj critnpuertas lcigiras 59 Facror de carga de salida ytbc-tur d~ c,tiwrade entrada 61 Búfers o reforzadores 63
Consumo de potencia 63
Margen de ruido 64
Velocidad y rt~rnrdode propagaciría 64 10. Circuitos integrados 66 Algunus rumt~rrrí~tiror ~ f los t ~ CI 66 Economíu de dii.eño 68 Cl de aplicación especijica 69 1 1. Lógica alarnbr~da 69 Compuet?us Irjgicas de tres estlrdo,i írrltci ittipedadancia) 69 rrirnp~ltrfrislógicas de colector ({hierroy dr drenaje ubirrbo 7íl Resumen y repdw del capitulo 71 Probleiiias 72
8.
Listas de minitérminos y rnmaritkminos 76 Listas de minitémi~iusy fortnu de suma de prud~drro~77 Listas de rnaxitérmitrt)~y foiwuis de producto de sumas 78 2. Mapas lógicos 79 Adyucenciu l#gica y udyacencia geométrica 79 Cubos de orden k 84 3. Realizaciones míninias de funciones de cniirnutaciiin 87 Expresiuries irrcdircibles y mínimas 87
Implicciiiir~primos 88
Expresiones minima~de suma de productos 89 Expresiones mírtirnas dr producto de sumw 9 1 Implenlentucioaes de dos niib~les 92 Irnplementaci6n AND-OR 92 Irnplementacidn NAND 93 Iiiiplementaci6n OR-AND 94 4. Implementación de exprehiones lógicas 94 Análisis 97 Caracterfstir-a~ d p citrriiros de compuerta 97 5. Diagramas de tempurizacicin 98
6. Funciones inconipletamente especificadas 100 Valores irrelpvantes 100 7. Comparadores 102 Comparadot.es de 2 bits 102 Generalizcichi6n 104 Cnmparadores de 4 bits 104 Cnmparadores de números pares de bits 105 Comparadores de números impares de bits 105 8. Determinación del implicante ptitno: método tabular 105 Representaciones rlt. cu hos k udyacente.~ 106 Clasificación por índice 107 Funciones incompletamente especificadas 10$ Selección de unu tlxpresiijn mínima 109 Fuiiciones complclamente especificada% 109 Maiiejv de vaidres irrelevantes 112
9. Circuitos de salida múltiple t 12 Resumen y repaso del cupítulo 113 Problemas 114 l.
r
XII
Contenido
Sumadores binarios 125
Sumodor completo 126
Sumador de acarreo propagado 128
Surnadnr de acarreo anticipado 128
Rrstudor hinario 132
Sumador y restador de complemento a dos 132
Sumador y restador de complemento a uno 133
2. Multiplexores 134
Multiplexure.7 como circuiros lógicos de propdsito genera/ 136
3. Decodificadores y codificadores 139
Drsmultiplexore.~ 1 39
Decodificdor de n a 2" líneas 139
Decodijicador de &bol 14 1 DecodiJ~~udures corno circuito.^ lógicos de propdsiro getiernl: cnnver.~irirt de código 142
4. Memoria sólo de lectura (ROM) 143
5. Otros dispositivos 16gicus programables LSI t 4h Arreglo Idgico pr-ogmiiialjo (PLA) 146
Lógica de a r ~ g l pmgrniiiodo o ( PALI 148
Resumen y repaso del capítulo 150
Problemas 15 1
1.
Capítulo 5 .
CoMPoNENTEsDEclRculTos SECUENCIALES 159
l . Definiciones y conceptos bhaiciis 159
2. Cerrojos y flip-flops 1 62
Cerrojos SR 163
Problemas de temporizacllírt y cerrojos SR ron rekoj
166
Cerrojo JK 168
Cerrojo muesrro-esc¿avn 168
Un diseño posible 169
Un diseño rnaesmn-esclavo alternativo 170
Parametros de iictivaciiin por pulso 171
F¿ip-flt~p.ide retrirdo ( D) 17 1 Flip-flop D activado por flanco 172
F l i ~ ~ - f lT c ~ p 1 74 Requerimirtitt~sde e.rcitriu ~ n i i i ~ ~ l c ~ i i c t i i n a dos, como se indica en el capítulo 1 .)
126
Principiri~de diseño lógico digital
Figura 1. Suma binariv nl Sumador general, h ) Sumador completo de dos palabras de un bit.
complejidad del circuito. Esta ES, habría vanos diseños, cada uno caracterizado por cierta velocidad y cierta coniplejidad de circuito. Es necesario efectuar una valoración en cuanto a Ins crimpmmisos aceptables entre ellas. En la figura 1o se muestra un diagrama simbólico que representa un sumador binario. Cada flecha abirria representa miiltjples variables; en este caso las entradas son dos números binarios. Si cada niimero tiene n digitos, entonces cada línea indicada representa realmente n líneas. LUsuma dc dos números de n bits es un número de ( i i + 1) bits. De tal maiiera, S (suma) representa r~ + I líneas de salida. Si el circuito se diseñara por medir) de los mitodos del capitulo 3 , requeriría un circuito con n + I funciones de salida cada urio dependerfa de 2n variables. La tabla de verdad para cada utiri de los cuales de la\ funciones de salida tendría 224renglones. Puesto que n podrla estar fácilmente en la gama de 20-40, es obvio que se necesita un metodo diferente.
Sumador completo Otro método para sumar dos núriieros de n bits consiste en utilizar circuitos separados para
ca-
da par correspondiente de bits. U n circuito de estas caracceristicas aceptaría loa 2 bits que se van a suniar, junto cori el acarrea resultante de la suma de los bits menos sigiijficativos. Se ~iroducirían como salidas un hit de la suma y un hit del i i c m e a de salida del bit más significat~vo.Un circuito como éste se canucc como suwdr;rr completo. En la figura l b si: presenta un diagríima esquem8tico. Los 2 bits por sumar son x, e y,, y el ocarreo de e n t r d u es Ci. Las saldas son la suma Si y el (dcurreo de salidn Ci,,. La tabla de verdad para c l sumador compleio y los mapas lógicos para las dos salidas ce iliistran en la figura 7. Las expresiones mínimas de suma de producius para las dos salidas obtenidas de los mapas son: Si = xi'yiCir.t l-,yl'C;'+ xityilr,+ .T,?+~C~
C,, = xi4'i + .ric1 + yici = .rp,+ Ci (xl + y,)
(Asegúrese de verificar esio.) Cada minitérmiiio eIi el mapa de S, ccinstiluye un implicante priniu. En consecuencia, una expresión de suma de productos requerir6 cuatro compuerias AND de 3 enuadas y una compuerta OR de 4 entradas. El acarreo requeritg tres compuertas AND y una compuerta OR. Si suponemos que cada compuerta tiene el mismo retardo de propagación 5, entonces una implementación de dos niveles tendrh un retardo de propagación de 2t,. En el mapa del acarreo, el rninitkrmino pn7 se cubrz por medio de cada uno de los tres implicantes primos. Esto es excesivo; puesto que i i i , se cubre mediante el iniplicante primo x,y,, no hay necesidad de cubrirlo otra vez utilizándolo para formar implicantes primos con m, y m6. Si existe algún beneficio al respecto, podríamos utilizar los Últimos dos minitkminos como implicantes sin formar implicantes prirnijs con m,. La expresihn resultarite para C,,, se vuelve
Diseño Irigico coiiiliinatorio
c i . y i y ,
o
0
0
1
1
0
1
1
1
sici+, O O
1 O
10
1
1
X
,T
O
1
O
127
1O
1
1Ci
6)
c)
Figura 2. Tabla de verdad y mapas ldgicos del suinador comptzto. a ) Tabla de verdad;
I
velo;com-
b ) mapa S,:. c) mapa L;,,.
. Cada
(roiifirrne este resultado.) Ya tenemos una expresiiin para Si en 1 n. pero está en forma canónica de suma de prdiictas. Resultm'a útil buscar uiia forma alternativa para una implementacióri m á s útil.
narios. Ln sujenta n queri-
Ejercicio l. Confrii-me,con álgebra de conmutación. confirme que La expresión parU la suma en la puede convert irce en
de verque
si= xi @ y, @ e,
ri
te.
para ca-
e se van ~ducitivo. Un .iagramd 1s
IS
Empleando las expresiones piird Siy C,,,. que contienen operaciones XOR, confirme que s i es posible obtener la implementacidn del sumador coiiipleto que se muestra en la figura 3u. Advierta que el circuito consta de dos combinacionrs XOR y AND, y una compuerta OR adicioriiil. La figura 3b muestra el circuito dentro de cada caja punteada. que recibe el nombre de srmisiinaadrir. Sus únicas entradas son Iris 2 bjts que se van a sumar.sin un dcarreo de entrada. Las dos salidiis son: I ) la suma de los 2 bit5 y 2j el acarreo de salida. Supuniendo que una compuerla XOR (realizada mediante un circuito de dos niveles) tcnga un retardo de propagación de 2tp, el sumsdor completo en la figura 3a tiene un retardo de propagacidn de JI,,, tdnto para la suma como para el acarreci (verifique estas afirttiaciones).
son la mapas
: \OS
ma(la)
:ante
pri-
; AND de
I$ tres imno x ~ ; no , t, p m,. Si mo inipli:Ive
(2)
b)
rl
Figura 3. Sumador cumplcto iiiiplerrirriiado ctin sumadores medios. a ) Suiiiador complcto. b) Sernisuniador. c ) Diagrarnd esqustiiátíco del serriisum~dor.
128
Principios de distiiiu 16gico digital
En la siguiente secci6n observaremos que la velocidad total en la suma de dos núniercr~binarios de n bits depende principalmente de la velocidad con la que se propaga el acarreo desde el bit menos significativo hasta el más significativo. Por consíguientr, reílucir el rctardo experinientado por el acarreo de un sumador crimpleto es una mejora importante. Esto es un incentivo en la búsqueda de otras reatizaciorres del runilzdor conipIecu. En alguno? dc los casos en el prohlema 1 al final del capítulo, se prnpoiien realizacioiies adicionales del sumador crimpletu en las que el retardo de propagacidn para el acarreo es 25 cn lugar de 45. De zqcliií e n adelante. paru un suindor coinpleto. rupandrernos que el retartiu de prop~gacióndel acarreo corresponde a It,,.
Sumador de acarreo propagado El problema de sumar dos números binanos rnultidígito se formula de la siguiente manen. Se dispone de dos niimeros trinarius de n bits, con todos las dígitcrs en paralelo. La suma se lleva a ciibo realizando un sumador cornpletv para sutnar cada par correspondiente de dígitos, uno a partir de cada iiúinero. Los sumadores compleim se conecbn eii tándem de manera que el a c m w de salida de una etapa viene a ser el acarreo de entrada de la siguiente. como se ilustra en la figura 4 puro d caso de números clc: cuatro dígitos. Así, el acarreo se propaga a lo largo de cada etapa. En la suma binaria. el acarreo en l a primera etapa (menos significativa) es O. El acarreo final (el acarrem dti~shordadoJ se convierte en el bit mas significativo de la suma de (n + 1) bits. Puesto que el acarreo de cada su~iiadorconipIetci tieiie u11 retardo de propagacien de 2sp,el retardo total al efectuar la suma de dos númems de n.biis es 2ni, No lodos los pares de das números de n bits experimentarán este gran retra5o. Considere como ejemplo lvs siguientes dos números;
Suponiendo que el acarreo de entrada a la prirriera etapa sea ceru, al efectuar la suma no se genera ningún acarreo en ninguna etapa. En conswuencia. no habrá acarreo pmpagada y, por ello, ningún retardo de propagación zi lu largo de h caderia de acnrrco. Sin embargo, para tnanejar el caw general, debe anticiparse el peor caso; ningún número nue,vo debe presentarse para la surna arites que el rctnrdo total repres~ntadnpor el peor caso. La máxinia velocidad de suma, por tanto, está limitada por el peor caso del retardo de la propapación del acarreu.
Siirnador de acarreo anticipado A l considerar la suma de dos númcros binLuiosde n dígiios, no( pasnió Ia idla de un soIii cir.cuito cornbinatorio de todas esas entradas. Por ello coiisideramns el uso propagada de un circuito niás siriiplr, un sumiidor completo, con el menor número posible de entradas.Sin embargo, lo que se gana en simplicidad del circuito can este mktodo se pierde en velcwidad. Puesto que a €sta La limita el retado en la fiincihn de acarreo. parte de la velocidad perdida p d r i a volverse a ganar si pudieramoi diseñar un circuito -justo para el acarreo- con m i s de 2 entridas, pero no tatitas crimo ? T I . Siipnnpa que varia^ etapas del suniador completo se tratar] como una unidad. Las eiitradas a la unidad son el acarreo de entrada a la unidad, así como los dígitos de entrada a iiidos los
Figura 4. Surriiiciui de acarrc~i propagado de 4 bits.
Diseño 16gico combinatorio
129
emh bio desde experiicentivo i el proo en las para un : a 2tp.
Figura 5. Diagrama esquemático del circuito de acarreo anticipado. nera. Se
:lleva a io a paracarreo en la fide cada acarreo - 1) bits. !$, el renumeros
meros:
lo
sumadores completos en dicha unidad. Entonces quizh el acarreo de salida podria obtenerse más rápido que el acarreo propagado a través del mismo niimero de sumadores completos. Estos conceptos se ilustran en la figura 5 con una unidad que apenas conata de dos sumadores completos y un circuito de acarreo anticipado. Los cuatro digitos que se van a sumar. asi como el acarreo de entrada Ci, se presentan en forma simulthea. Es posible obtener lina expresian para el acarreo de salida, CitZ,de la unidad utilizando la expresilin para el acarreo del suniador completo en 2). Por razones que se aclararhn mhs adelante, vamos a asignar nombres ü los dcis tkmiinos en la expresi6n de acarreo en 2), cambiando los nombres de las variables en A y 3 de .r c y de acuzrdo con la figura 5. Definimos el acarreo generado Gi y el ararreri ~iroptqriiioP, para el i-tsinia sumador completo de la manera siguiente:
se ge-
por ello, número caso. La propaga-
lo circuiI circuito ;o, lo que a ésta la i ganar si no tantas .as entratodos los
Al insertar éstos en la expresión para el acarreo de salida en 2), obtenemos
Un acarreo se pencrurá en e1 i-ésimo sumador completo (esto es, Gi = 1) si Ai y Bi son ambos iguales a l . Pero si sólo lino de ello': es 1. no se generará un acarreo de salida. En ese caso, sin embargo. P, serii 1 (confirme esto). En consecuencia, el acarreo de salida será C,, = Ci. Decimos que el a c m r o se prr)pagarrí hacia adelante. La expresión p m el acarreo de salida en 5) puede actualizarse cambiando el índice i a i + 1:
Es posible iiiterpretar la última expresión de la siguiente forma. Un acarreo aparecerá en la salida de la unidad de acuerdo con tres circunstancias:
En
la ultima etapa se genera: G,,, = 1 . En In primera etapa se genera, G,= 1, y se propaga hacia adelante: Pi+l= 1 . El licmeci de entrada C, se propaga a travks de ambas etapas: Pi = Pi+,= 1. Evidcntemente, este resultado puede extenderse a cualquier número de etapas, aunque el circuito se volvzri progresivamente más complicado.
Ejercicio 2. Extienda el resultado previo una etapa más y escriba la expresi6n para C,,,. Escriba despuis Las formas en las cuales este acarreo de salida puede ser L . Confirme su resultado utilizando el resultado general que se da a continuación.
130
r
Principios de diheñri lógico digital
Extendiendo d diseño a j etapas, la expresirin en 6) se transforma en G,+,+,= G , , , P,+,G,+,-,+ Pi+,Piii-l~i+j-2+ -.. +~P#,P,,, +
... Pi)C,
(71
Esta expresión se ve rhomplicada, pero es fscil de interpretar. Puesto qiie el acarreo de siilida C1+,+,= 1 si cudqiiieni dc lus términos aditivos ii la derecha es 1 , el acarreo de salida de la unidad seri 1 para diversas posibilidades. Se gencra ya sea en la últiinü etapa (r-~sirna)de la unidad o en la etapa anterior, y se propaga a tl.iivts de las etapas sucesivas, o cl n c ~ m e ode entrada de la unidad se propaga por todas las etapa.+hacia Ia salida.
Cuarito rnayor sea el númern de etapas de sumador cniiipleto incluidas en una unidad, tanto mayor seri la mejora en la vtlocidad -aunque también m i s grande la complejidad del circuito de acarreo aiiiicipadri. Existe un compromiso obvio entre Icis dos. Considere una ~inidadde cuatro etapas, la cual va a sumar dos palahras dr 4 bits A y B. Tal ccapa puede c o n s i r l e ~ s tco: mo si tuviera u n circ.uitu de suma (S) y un circiiiio de acarreo sepürarl» (0.El circuito de suma dr cada etapa tierie conio entradas el acarrco d e la etapa anterior y los bits correspondientes de las palabras A y R. Todas las entradas a la red de acarreo de cada crapa son todos los bits de las palabras A y B basta esa etapa y el acarreo no s61o de la etapa preccdznte. sino de 1ü entrada a la unidad completa. Así, si la priniera etüpa es la i, las rritradas al circuito de acarreo dc la etapa i
+ 2 son: Ai.
A,,,, B1,B:+,, Bi+?.y Ci.
Ejercicio 3. Diiiuje u n diagrama esquemático para iina utiiciüd dc tres etapas utiliziindo rectángulos para representar los circuitos de suma y acarreo de cada etapa (suponga que la primera etapa es designada cori 1 en vez d e la i general). La figura 6 muestra iinn realizaci~iride circuito de la red de acarreo de la ultima etapa en uiia unidad de cuatro etapas. Sal\;n por L;., el acarreo de entrada de la uiiid~d,las otras entradas a las ciimpuertas AND son acarreos generados y acarreos yrripag;ldos desde las diversas etapas de Id unidad. Estos acarreos generados y propagados los producen los circuitos de seiiiisuinador de la figura 7. La figura S ilustra iin diagrama de semibloques del siiniador de acarreo anticipado de cuatro etapas. (Ncite que se supone que l a s ierminales que Ilevaii I;i misma etiqueta en diferentes subcircuitos estin conectadas.) Puesto que cada acarreo propagado Pl+,es la salida de una com-
Figura 6. Circuitn de acdmo anticipado dr cuatro etapas.
G, = A,'Li,
Figura 7.Semi~uriudorpara acarreos generado y propagado.
Diseño lógico com blnatorio
131
de biilidn
je Iii unila unidad d a de la idlid. tand dcl cirinidad de
; r m e co-
de suma lientes de iiis de las ~tradaa la la etapa i
i
io rectánmeta eta-
pa en una adas a las
lo de cua-
diferentes
Figura 8. Diagrama esquemitico del sumador de acarreo anticipadi) de 4 hiis.
puerta XOR, el retardo total de la propagaci6n del circuito de acarreo que tiene el diseño de la figura 7 corresponde a alp. Sin embargo, todos los acarreos ge tirtüdos y propagados, Gi+jy Pi+? de todas las unidades qiiedan dispimililes dentro de 2t,, despuis de que las dos palabras se presentan primero para la siimu. 'umu lu indica la figura 6. Por taiito, en todas las unidades de acarreo anticipado ridemfis dr la primera. el retardo de propagaci6n de la red de acarreo es únicamente 21,.
Ejercicio 4. Suponga que uii suniiid(ir de acarreo anticipado va a tener k unidade5 de 3 bits para efectuar la suma de dos
palabra\ de 4k bits. De la explicación anterior, a partir del diiigrnirin de
13 fip~rn8 yiie implementa cadri lino. y de la consideración de la primera y Última unidades, deieminr el retardo de propagación de este sumador en términos de ,,[ el retardi) de propagacion O traves de una compuerta. (No consulte la respuesta hasta que realice el ejerciciri.~ Respuesta2 Si un sumador tiene ocho unidades de 4 biis, el retardo de propagación a travts de un sumadcir de acarreo anticipado será 20$. El sumador de acarreo correspondiente propagada tendrá un retardo de propagación igual a 4 X 8 X 21, = 641,. Dc esta manera, el surnador de acarreo anticipado tendrá una ventaja de 320% en velocidad snbre el de acarreo propagado. Sin embargo, no todo es ganancia fácil: la ventaja de velocidad se ha pagado a costa de hardware adicionai.
Ejercicio S.
A partir del conteo del número de coinpuertas en cada implementación, estime Iii desventaja de hardware en porcenta,je del sumador de acarreo anticipado en comparación con el sumador d e acarreo propagado. Compare la desventaja con la ventaja de velocidad de 320 por ciento.
4
Los circuitos que se describen aquí se obtienen en CI monolíticos. Un sumador completa sencillo, por ejztnplo. se dispone como una unidad. Un sumador dc acarreo propagado, como se ilustra en la figura 1.y uno de acarreo anticipado para palabras d e 4 hits. como se indica en la Figura 8, se consiguen como CI MSI.
"a
suma de los retardus a triii.6~de a! e1 circuito de acarreo de cada unicid (2: cads unol. b) e l circuito de suma de la Ú l t i n u i unidad (21,) puesio que C En 21 capitulo I se concluyo que un desbordamiento aritmética pudría detectarre si resultan diferentes el acarreo de entrada y el acarreo de salida de la posición del bit mhs significativo. Así, es posible detectar el desbordamieniri con una compuerta OR exclusiva adicional. El sumador de comylemcnto a dos no es rniiy diferente del surnndnr binario para números sin signo. i.Que ocurre crin la i-esta'? Ya sugerimos que ésta debe efectuarse complementando el sustwendo y sumando. Por ello la tarea consiste en diseñar un circuito cuya salida es el complemento a dos de la entrada. y en utilizar SU salida como una entrada para un sumadur. Lln circuir0 de estas caractefisticah se diseña sin dificultad. pero ;por qué un sisrema debe contener parte del tiardware dedicado a la suma y otra püne destinado a la resta? Si la única diferencia entre estos dos circuitos er un circuito que calcula el complemento a dos, entonces ~ p oqué i no diseñar un circuito en el que cualquier suma o resta pueda elegii.se con una entrada adicional'? Cuando es-
' El intervalo de números binanos que iienen n dígitos hinarios representados en fnma de complementv a dris cs -?"-' < m < 2"'- 1.
de 4 bits labras de 4
u5
deikirdamiento
Figura 10. Sutnridorlrestador de ctiniplemcnto a do< con detección de dzshrdamiento.
le salida se is de 4 bits,
limplemenI una de las un núrnero
inal. De tal ;ira 13 suma al para prolos mismos Figura 11. Sumlidorlrcstadcx de complemento a uno
pro-
j
L1 dos
)
el resulta-
mto aritmé-
;alida de la a compuerle1 suniador indo el sus-
omplemencircuito de er parte del entre estos I diseñar un Cuando es-
ta ulrima es, digamos. 0, el circuito efectúa la suma, y cuando la entrada corresponde a 1, cjecuta la resta. Pai-ece sericiIlo: una representaci6n del circuito puede obtenerse utilizando las técnicas del capítulo 3. riutique existe una solución elegante que describirtios a continurición. Examine la tabla dc verdad de la operacihn OR exclusiva y advierta que es posible considerarla como un inversor condicional. Si una enlr~daes O, entonces la salida es idéntica a la sepunda entrada. Si una entrada cs 1, entonces la salida corresponde al complemento de la segunda entrada. Esto es conveniente para producir e1 complemento de una entrada para tiuestro circuito sumador/restador cuando queremos e i ' e c i u ~la resta. Sin embrirgo, para calcular el complemenio a dos de I número binario tenemos que sumar 1. ¿Alguna idea acerca de ccimo efectuar lo anterior sin compuertas adicionalesa? (Piense en ello antes de continuar.) El sumadvr completo para el bit menos significativo tiene una sena1 de entrada de acarreo que puede utilizarse para sumar el 1 requerido. El diseno de nuestro circuito sumador/restüdor de complemento a dos est5 completo; una versión para sumar núnieros de 4 bits se muestra en la figura 10. Si la señal de coiitrol M es 0, entonces el circuito efectúa ,4 + B; sin embarpu, si M es 1, el circuito reaiiza A - B.
Sumador y restador de complemento a uno Para efectuar la resta en complrmento ü uno es posible utilizar el circuito OR exclusivo que se empleii en el suinfidorlrestador de caniplemento a dos. La iinica diferencia es que no dcscümos
134
1
Principios de diseño lágico digital
inyectar un acarreo en el hit meniis ~ignificaiivo.La siima de complemento a uno requiere añadir 1 a la suma cuando ocurrc un acarreo de salida a partir de la posición del bit mas significa~ivo.Esto puede conseguirsc utilizando ~emisumadoresmúltiples como se niuestra en la figura 11. La deteccion de desbordamiento para la suma de coniplemento a uno se deja coma problema al lector. La suma de complemento s dos es el niétodo más común que se implemenla en las computadora~modernas debido a su reducida coniplejidad de circuitri cn comparación con el compleinentri a unti. Éste cr el plinto hastd donde Ilzga~nioseti la suma de palahra~multibit; otros circuitos sumadorcs se dejan para los problemas de fin de cüpltulo.
2
MULTIPLEXORES Eri las comunicaciones, crintrol y sistemas de computadora puedeii ejecutarse muchas operacioties nizdiatite circuitos ldgicos combinatorios. Cuando un circuito se ha di.ceñadri para efectuar algutia tarea eti una aplicacidn, a menudo también encuentra empleri eii diferentes aplicaciones. De este modo, adquiere diferentes nombres a partir de sus diversos usos. En esta y en las secciones siguientes desctihiremris varias de estos circuitos y sus empleos. Explicaremos sus principios de operación, especificando sus implementaciones MSl o LS1. Una operacivn comiin se ilustra en la figura 12. Los datos que se generan en una localidad se van a usar en otra. Se necrsita un método para transmitirlos de una localidad a otra a través de algún canal de ciimunic;iciones. Los datos están disponibles. en paralelo, en muchas líneas diferentes, p"ro deben transmitirse por un solo enlace de comunicación. Se necesita un mecanismo para elegir en forma secuencial cada una de las linziis de datos de manera que los datos que la linca seleccionada porta. puedan transmitirse en ese niomento. Este proceso recibe el nombre de multil~lexado.U n ejernplo es el multiplexiido de conversaciones en el sistema telefhnico. Varias conversaciones 211la línea telefónica se conmutan dc manera alternada muchas veces por segundo. Debido a I n iraturaleza del sistema auditivo humana. lcis oyentes no pueden detectar lo que escuchan si hay interrupciones y las conversaciones de otras personas se mezclan con las propias en e1 proceso de transmisión.
En el otro extremo dcl enlace de comunicación está un dispositivti ncccsiuio qiie d e s h u i el rnultiplexado: un desrnultiplexor. Éste debe aceptar los datos eii seiie entrantes y dirigirlos en paralelo a una de muchas líneas de salida. Los trozos interinezcladob de las conversaciones telefonicas, por ejemplo, deben sepwarse y envime a los oyeiites correctos. Un multiplexor digital es un circuito con 2" líneas de entrada de datos y una línea de salida; tanibién debe tener una manera de determinar la línea de entrada de datos cspecífica que se va a seleccionar en cualquier momento. Esto se efectiía con otras n líneas de entrada, denominadas entradas de seleccibn, cuya funci6n ec elegir una de las 2" entradas de datos para la conexión con
canal de comunicaciones
U multrplexor
Figura 12. Un problema de comiinicación de datos.
.
I
salida de dalos -
desmultiplexrir
Diseño lógico
cornhinatorio
135
iadir I. ESa de-
ifur. mpucom1s SU-
Figura 13. h~liiliiple\orw i i rishil eiitradas de datos.
la wlida. I!n ~*irciiiti) pai-a rr = 3 ac murdrii cn la rigura 13. Las n líneas de selección tienen 2" = 8 combiiiacicines de valo~+cs ~ U coiisti C tuycn números de .wlrccirin binarios.
Ejercicio 6. Esci-ibaexyi-esiiinehpara cada una de la5 5alidus de compuerm AND en términos de las entradas S, y il,, ccwfim~andoque el multiplicadrir de D,cs cl equivalente binario de k. Cuando las entradas de selecciiin tienen la comhinacirín . F ~ ~ =. FO1~1 , por ejemplo, las salidas de todas las compuertas AND serhn 0, excepto aquélla a la cual se ctinecian la línea de datos D,.Las otras entradas a la compuerta AND diferentes de D, serin l . Por consiguiente, D, aparece a la salida del circuito. De este modo, las entradas de selecciún cuya combinaci6n binaria corresponde al dzcinial 3 han elegido la entrada de datos D3 para transmitirse a la salida. Es posihle ohtetirr C I MSI estandar como multiplexores. La figura 14a muestra el circiiito para uti C1 que contietie dos riiultiplrxures independientes paran = 2. Las consideraciones prácticas no iticluidas ?ti la figura t3 explican algunos de los rasgos dc este circuito. La entrada hat~ilrtaelección tiene como carga s610 una compuerta simple (e1 inversor) en vez de varias compuertas AND. En la figura 14a las entradas de srlecci6n son comunes a ambos multiplexores, aunque cada una tiene su propio habilitador. En otros diseños, el habilitador tarnbien puede ser ciimún. Eii la figura I4b se muestra el diagrama esquematico de un inultiplexor dual de cuatro entradas IMUX) con un solo habilitador.
La NAND es la forma de compuerta preferida para muchos CI (por ejemplo, el 74LSOO y el 74LS10). Puesto que el diseño del multiplexnr en la figura 13 o 14 es un circuito AND-OR de dos niveles. la sustitución directa de todas las conipuertas AND y OR por compuertas NAND mantendrá la funcioti lógica, como se explicó en el capitulo anterior. De este modo, la implementación real del niultiplexor se efectúa con coinpuerias NAND.
Multiplexores como circuitos lógicos de propósito general Es claro que la estructura de un inultiple.rar en las figuras 1 3 y 14 es la de un circuito Idgico AND-OR de dos niveles, teniendo cada compuerta AND n + 1 entradas. donde n ec el número de entradas de selecci6n. Parece que el multiplexor constituiría una implementacihn cancínica de suma de productos de una función de conmuiaci6n si todas las líneas de datos en conjunto
Diseño lógico combinalurio
137
reprel;entan jiisto una variable de conmutación (o su complemento) y cada una di: las entradas de selecciún. una variable de conmutación. Vamos a trabajar hacia atrás desde una función especificada de m variables de cunmu tación para l a cual tenemos escrita una expresión canónica de suma de productos. El iamañu del rnultiplexor nccesmio (numero de entradas de selecciiin) no es evidente. Suponga que elesirnos un multiple~orqiie tiene m - 1 entradas de selección, dejando Gnicamente otra variable rnas para acomodar tociris lar; entradas de datos. Escribimos una funcirin de salida de esiai entradas de selecciiin y las ? m - 1 entradas de datos Di. Ahora planeamos asignar na - 1 de estas variables a las entradas de selección; ¿pero cómo hacer la a~ignacidn?~ Realmente no hay restricciones, por lo que puede realizarse de manera arbitraria. El siguiente paso es escribir la wlida del multiplexor despiigs de las entradas de selección con m - 1 de las variables de la funcirín dada. Comparando Ins dos expresiones término por término, las entradas Di pueden determinarse cn términos de la variable restante.
EJEMPLO 1 Una funci6n de conmutaci6n que
va a implrmentar con un multiplexor es:
S(X, Y, Z) = E{1, 2. 4, 7) = .r',vl: + -r'yz' + q ' ~ + xys ' Puesto que la funci6n tiene tres variables, el niultiplexor dcseado tendrri 3 - 1 = 2 entradas de selecci6n: la mitad del MüX dual de cuatro entradas de la figura 14 realizarfi la tarea. La expresi6n para la salida del rnultiplexor es: f = s ~ ~ s +~. 'FD~~ '+ s ~~ s~~ +.' slsnD2 D ~
N o hay restricciones acerca de cOmo asignar las entradas de selector a las voriablzs dr la tunción dada; dejemos arbitrariamente que S, = x y S, = y. Entonces f = x ' y r D o + x ' y D ,+x.ylv'D, +xyD3 Cotnpmtidt>ésta con la expresión original para la función dada llegamos u
Do = 0, = z DI=DZ=zl l en vez
Así, la función original se implementa con iin miiltiple.ror de cuatro entradas.
¤
Existen otras cinco maneras mediante las cuales Ias dos entradas de selecci6n podrían haber sido asignadas a dos de las tres variables de cunniutación. Ninguna condición necesita cumplirse para la elección, por lo que Csia es arbitraria. Sin embargo, el resultado especifico obtenido para las entradas Di depende de esa elecci6n inicial.
Ejercicio 7. En el problema del ejenipla 1 , elija .r = z y Respuesta5
so = x.
Determine las Di.
Ejercicw 8. Como practica, elija cada una de las restantes maneras posibles de asignar entradas de selección a las variables de conmutación, y dztrrniine despuks las Direqueridas; especifique
las compuertas externas necesarias. Para
1111soiijunto de
m - 1 variables, ¡hay in maneras de asignar m - I canlidadcs a variables esgeiíficiis'
D,=D,=y.U, =U,=!'
P ! ! I
138
Principios de diseno logico digi:al
(u1
(f))
Figura 15.Itiiplemeiit.i~iónrlc multiplexor dr f = Z(O, 1 , 6, 7, 1 I ).
Para implcmentar una función de conmutación de m variables, hemos vlstn que un ~riulliplzxor de tn - 1 cntradas de st.lzcciiin puede realizar la fiiricihn. Podría ser posible en algunos casos c l empleo de un multiplexor incluso más pequeño. Debe esperarse que estris ahorros en la crimplejidad del MUX debe11uiigiiiarsc a cxpcnsas dc :iI gún otro CON.
EJEMPLO 2
Demu
La función dc cualro variables cuyo mapa se muestra en la figura 1 5 , he v a a implemeni:ir rnediante u11 miiltiplexor. Sicrn~rr-ees posi bIe uno con 4 - I = 3 variables de selcccrdn. Sin cmbargo, varnns a explorar la posibilidad de utilizar un multiplexur con sólo dos variables de selrcción para implemeritar esta funci6n. Arbitrüriarnentr asignamas las dos zntradas dc selección .Y, y sn e w y x. La expresilin para la salida dcl muitiplexor es la n-iisiiia que la que se indich en el e j e m p ! ~1. ya que ksta tirne Iris misriifis dimensiones. Pwu nJx= A l,so = UO, csa expresicín se teduce a Do.Pcro pata lus valores IYX = 0,la expresidn que cubre los 1 en el maya cs 4'':' + y ' : = y'. Por coiisigujente, 12, = ? ' . De manera sii~rilar.eri la column,~O ! de1 mapa. la expresión se reduce a B , y el mapa produce v: + y;' = y ; por corisiguiente, U , = y. De la, misma Iriatieia, de la columna 11 cnrrintranios D , = O y de la columna 10, DI = y ? . [Confirn~e esto.) En la figl.ira l5b se muestra este circuito que es bastank simple. Enccintramos que para implenientar cierta funciiin específica dc cüairo vurzab1e.q.puede ernplcarrjc u i i i~ivliiplexordc ordcii menor qEe 3, ri costa de tina :iirnpiisrta AND adiciiinal. (El inversor seria necesario incluso con un multiplexor de orderi superior, por lo que D no cuenta como costo agregado.) Ejercicio 9. En el qemplo anterior, suponga que 7, y s, se identifican como y g .: en vez dc itby i.Deierrnine esprcciunes para 1x5 eiitmdas dc datris eri ténrinos de w y x, y especifique el hardw x e externo que se necesitriri iidemás del multiplexor. Advierta 1;i diferencia cn complejidad para las dos elccciones de entradas de seleccihn. Respiiestah 6
0 ,= DI = W ' I'. [J: = W'X. D3 = tr @ A , tres cciiipuertas AND y iina compuerta XOR, d e m i s & un MUX de cuatro b entradas.
Decod
Diseño 16gico combinatorio
139
En la implementación de una funciiin de conmutacihn arhitrana, distiiitas elecciones de las entradas de selección conducen a cantidades diferentes de hardware externo paizi un inultiplexor más pequeño que lo normal. Desaforiunadamentc, a pesar de hüberlas probado, IIO Iiay [orina de determinar cuál elección será la más econtímica.
3 DECODIFICADORES Y CODIFICADORES
ío.
i
De-
dc ü1-
La sección anterior cc iniciú explicando una aplicación: dadas 2" señales de daros, el probleriia es elegir, bajo el control de a entradas de selección, secuencias de estas 2" senales de daros p;ira enviarlas serialmente por un enlace de comunicaciones. La operaciíin invetqa en el extremo receptor del enlace de comunicación consiste en recibir los datos serialinenie en uno sula linra y transmitirlos a una de 2" líneas de salida. Esto se controla de nuevo por medio de un conjunto de entradas de control. Esta aplicación es la que necesita únicamente una linea dz enrrada; otras aplicaciones quizá requieran más de una. A continuüciiin investigaremos un CITL'UIIO genrralizado de este tipo. De modo concebible, podtfa haber un circuito combinntoio qiie acepta n aitradas lnn necesariamente 1, aunque un número pequeíio) y que ocasiona que Iris datos he dirzccionen hacia iiria de muchas, digamos hasta 2" salidas. Estos circuitos tienen el nombre genérico dr dcr,odiji~,ridor. Al menos semánticamente, si algo se va a decodificar, previamente debe haberse rodijichridüdde 48 entradas y compare su velocidad con el diseño dc la parir /). e. Supong.~q u e el codificndor dr prioridad de ocho entradas tiene señales dt. de~huhilituririríia.El y SI, en \t./. d e las scfiales de habiliiacián EH y SH. Repica las partes c y d consideründo las señales de deshahilit~cióncottio el equivaleiite dc ~.eiinlcsde acarreo. 31. I!n decuditlcador BCD a .;ist< scgmcntos tiene sehales "de litnpieza", B1 y 30,para ayudar n supriniir los priiiierns O a la irquicrdx para exhibidores de enteros y los Últimos O a la derecha para exliibidores de fracciones. Cuando B1 es 1 , si el dígito de entrada es 0, tcidns las salidas deben ser 0; csiri es. el digilo seri climinado. Cuandu B1 cs O. no tiabrá eliminaciíin, si110qiie eri ese cahci BO es una hcnal de limyie-la para el siguiente dígitu. Eii i a figiir,~P3 I r l se iiiuestra uii diagr~rn~i.
7iir 1
unidades
de la sunia,
ita.
les de atitici-
:7... 0). Un 1
respondiente aja para el O. :nvadas 1. Si 18salta y gcduce una saida en A. E1 I
Figura P31
a. F'ropaganda expresioiir~pard la5 i ~ l i d a sBO, a y f. b. Diseñe un exhibidor de 8 biii cada uno con cuatro iiigiio~para las partes enteras y fraccicinariah. El digito entero menos significati~ununca debe ser elirniiiadu, incluso si la parie enitird del núiiizni es O. c. Considerandri Ir!\ ticiiipos lentos de rrspiicsb hiitiinna, la implemcntaciíiii mediante repetici6n en la parte b dehe iet adecuada. Sin embirgci. pot propósitos pedagfigicoh, suponga que desea diseñar una implznictitación con anticipac~riiidcl cxliibidor, de manera que cada dígito se estlihle~ca con nia! rir rapide7 cn el estado di: eliminación o en el de no eliminación. Al considerar E1 y BC)
1%
hincipiiia de diseiiii Lúgicr! digital
coinn seiiales de acarreo. propi~rcioneexpresicineg para lús vanabieh generada y prupdgiidü dc este decodificarlor. e d. Stiponga quc. en lugar de 10s patiltas BI y BO. e [ decndific:ulor ti ne patillas DBI (entrada "no" cn blanco) y DBO (salida "no" e l hlanco). En este esso considere ésrtih como seiialcs de üI.arreri
y repit.~la pdnc c.
32. Dernucctre tiirrnriIniec.tz quc >ila variable prepagda Pipara tI su~nadoranticipado x define cornii 11 suma Sritileana de A, y RI en Iiigar de su OR rxclu~ira,las salidas de la s i i m y el ;i:arren del yumaJor se ido la entrada D en el momento del flanco ascendente.'* Suponga ahora que finaliza el liiilsti de reloj: C = [J. Ya vimos que los valores de S y R se volverán O pero que no ocurriri iiinguna tran>iciGncn la salida: Qt= Q.No ocurrirá otro cambio adicional en la salida hasta el flanco ascendente del siguiente pulso de reloj. La salida subsecuente (después de un retardo) s e r i cualquiera que >ea el valor de entrada en ese tiempo. En la figura 15 se niuestrari fortiiaa de onda posibles para la señal de entrada (D)y el reloj ( C ) .También se indica la forriiü de orida de aalida que resulta, bajo la suposición de que el flipflop estaba itiicidltrieritz rstabltcido (0 = 1). La no idealiziicihn del pulso de reloj se omite en esta figurd. (Teriga presrrite la situacioti atiterior.) Tanto U criino Q son 1 en el primer tlanco asceticlrtitc clrl rrinj ( 1 , ) . por lo que. ya que Q+= U = 1, no ocurre transicicín. (Compruebe cada punto en éste y en 21 siguirtitr pirrafo.) En el siguiente flanco asceriderite ti,), @+ = D = O, y se produce una transicidn. En el siguienie flanco ascendente (r,), D es otra vez O. por 10 que no ocurrir5 transicihn en la salida. Cuando se aproxima t,,, Q = O y D = 1, de manera que una transición hacia 1 ocurre de nuevo en el íianco ascendente del pulso de reloj. En todos los tiempos precedentes cuando cambia cl valor de D (t5, tb, tg, a,, t,,), e1 re1o.j está estable, por lo que no se producen transiciones en la salida. Como comentario final, iquk pasaría si fuera a cambiar la entrada D durante el intervalo sobrc cl cual sube el pulso de reloj? La respuesta es. ;el caos! Esto se debe a que el "flanco" tiene una pendiente finita. No seria del todo claro qué valor tendría la entrada durante este "flanco" lentri, por lo que la salida sería incierta. Ésta es la
razón del reyueriniieiito de que la entrada pcrmanezca estable (sin cambio) durante un intervalo de rieiiipo qiie abarque los tienipos de esta-
''I'uncioiialnieiite, '*el valor de Li eii el flaiico asceiidente" significa que Li debe mantrnrr +u i ~ l i diir.iiiit v uii iiciiipo no menor que el tiempo de e\t~hlecimientrimis el tiempri de reiencibn dlredrdiir del ll.incii d t a~-ciisi7.
174
Principios de diseiio 16gico digital
Requen
a)
b)
C)
Figura 16. Diferentes disefios para un flip-flop biestable "T'. blecimiento y retención del flip-flop. En la figura 15, por ejemplo, no se puede permitir el cambio en D de O a 1 cerca de t, si el aumento en el pulso de reloj no ha terminado.
Un dispositivo que sería útil en sistemas digitales es aquél cuya salida se alterne. Esto es, cuya salida se sustituya por su complemento siempre que haya una señal entrante. Un dispositivo de este tipo sería inherentemente de entrada simple. El dispositivo que presenta este comportamirtitri se conoce como,fiip:fiop hiestuble (T). No hay necesidad de un diseño independiente debido a que un fiip-flop de este tipo se obtiene con facilidad a partir del flip-flop JK con ciertas conexiones en las terminales. En la figura 16n se muestra un diseño posible. Las enwadas J y K de un flip-flop JK se conectan entre
sí y se reiinnibran T. La tabla de kansición se obtiene sin dificultad a partir de la correspondiente al flip-flop J K eii la figuia 9. Pai-a C = 1, la ecuacióii de transición en (4) se reduce a:
Para T = 1 (cuando C = l), n+ = Q ; esio es. el nuevo estado es el complemento del estado anterior. El estado se alterna. Pero si T = O cuando I: = 1 , entonces Q+= Q; no hay alternancia. Puesto que. en la presencia de un pulso de reloj, la alternancia ocurre sólo cuando T = I y no cuando T = O, este circuito es uii poco deficiente.
Ejerckio 8. Otro diseño para un flip-flap T síncrono se ilustra en la figura I Bc La señal J se retroalimenta desde Q' y K se retroalimenta desde Q. (Recuerde que éste es un diagrama de bloques; en el drcuiio de flip-tiop JK real de la figura 9,esto equivale a conectar las terminales J y K a un 1 lógico.) Determine la ecuacidn de transición para este circuito y compárelo con el de la figura 1 ba tanto para C = O como para C = 1. Respuesta
'
Una mídificücidn del discñci de la figura 16a que supera la deficiencia se muestra en la figu16b. Las terniinales J y K se conectan de nuevo, peru ahora se dejan permanentemente en 1. La entrüdü T se liniitu en estc caso a ser un pulso y se introduce en la terminal del reloj en lugar del teinj. El flip-tlop ttsultütite es asino.nn(i. sir) reloj. Para determinar la ecuaci6n de transición, se fija J = K = 1 y C = T eti (4) el trsuludo 2s e1 tilismo que (8). También en este caso, la alternancia ocurre cuando T = 1, pero ahora éste es prirü t(da ocurrencia del pulso T. Esto es, cada vez que el pulso de entrada T pasa al estado alto, la srilidri se alterna. Hemos considerado brevemente dos diseños de flip-flop T. Uno es síncrono pero no se alterna en cada pulso de reloj; el otro se alterna en cada pulso de entrada pero no es síncrona. ra
l3
La misma
Componenlet. de circuitos secuenciales
175
Requerimientos de excitación del flip-flop Las partes previas de esle capítulo pueden resumirse de la tiianera siguiente. A pariir de un diseño dado de flip-flop, es posible determinar una tabla de traiisición de estados, o la equivalente ecuacibn de transición, mediante el anhlisis del circuito. A panir de cualquiera de éstas, se puede determinar el estado siguiente para cada estado presente y cada combinlici6n de entradas. En un diseño de circuito secuencial. el cual que explicarfi en el capítiilo 6, no se contxeii las excitaciones del flip-fiop. En vez de eso, para cada diseño y cada combinación dc entradas, lo que se conoce son taritci el estado presente como 21 estado siguiente. A partir de esta información, debemos ~lrducirlos valores de excitación requeridos que se producirán en una tratisición determinada.
el cam-
EJEMPLO 1
es, cuya
;itivo dc rtarnien-
o se ob-
e ciineccorres-
Suponga que se rcquiere uria transición de Q = I a Qt= O para un flip-flop JK. Si estos valores se insertan en la eciiaciiin de transicicin (41, el resultado será Q+= JQ' + K'Q o O = I'*J + 1-K' = K'. Por lo que K = 1. independientemente de J. Esto es, si se desea la transición Q = 1 + Q+= 0, ¤ Iris entradas requeridas del fligtlop J K son K = 1, J = la que sea.
Los requeriniientos de excitaciicin para las otras transiciones pueden determinarse de manera similar. las resultados para los flip-flups que se estan considerando se ilustran en las tablas de excitadon de la figura 17.
ii
uce a:
Transiciún
Entradas
Transicidn
Entradas
r~quzrida
neceqaria?.
requerida
necesarias
e n
J
-
itado an,rnancia. =lyno
e
Q+
o o
O 1
S R O x I O
O 0
.1 J se rede blonales J y n el de la
3
-ansición, altercada vez
, la
no se al:rano.
K
o
O
x
1
1
x
Q+ = J ' Q + K ' Q h ) Flip-flap JK
Transición requcrida
n la Figunle en l. rn lugar
i
Entradas
Transición
Entradas
necesarias
requei-ida
iiecesarias
.
Q
a+
D
-
Q
8 '
J
176
Principios dc disciio Iíigico digitiil
Figura 18. Rcgistro de corrimientv hacia la derecha. TON -
de relojff
C4' '
J
b'l
Figura 19. Control de enirada de registro de corrirniento.
Ejercicio 9. Utilizando las ecuaciones de transición apropiadas para cada uno de los tlip-flops considerados, confirme cada una de las tablas de requerimientos de excitación de la figura 17. *
3
REGISTROS Las siguientes caractensticas disijnpuen un circuito secuencia1 de uno ~ombinaiorio: La capacidad para almacenar. en mrinoria. información acerca del estado del circuito debido a entradas pasadas. La utilización de esla infurmacibn para producir iina salida en respuesta a nuevas entradas. Las iinidades bAsica5 para el almacenariiieiiio de 1 bit de inforinacirin son flip-flops o cerrojos. Del mismo modo que las compuenas Iijgicas pueden in terccinectarse rara constituir unidades mhs grandes como mult~plexores,decodificadores y sumadores completos, así los flip-flops se organizan en grupos llamados registros. Un registro de n bits e%un conjunto de n flip-flops (casi siempre del tipo Li), todos con un reloj coniliti. No sólo dehe ser común la señal de relqj, sino que todos los flip-flops deben respridrr al reloj cle la misma manera: tudos activados pcir el Banco ascendcntc o por el flanco descendente.
Es posible alrnxtniir ti bit5 dz informdcicin que pueda o no relacionarse. La transferencia de inf(irmucihn it Lin registro se conoce conio L,argo del registro. En tkrrninos conceptuales, es posible transferir Iü infcirmiic.icin ii todos los tlip-tlop zti un regiitro de manera simultrinea (en p n 1-aleh)o un bit a la vez (en serie). De modo siniil'u. lla intormación puede trünsferirse hacia fuera del registro en paralelo o en forma serial. ResultLin viLibleslas cuatro combinaciones de carga y lectura: Paralelo-entraddpa~alelo-salida, Pxalelo-entriicIiUsene-salida (liste usted las demás). Los registros se pucdcn obtener en circiiitos MSI. La iriformación se procesa en unidades de 2" bits. (Cuanto más alto este número, tanto más rápido el procesamiento.) Con fines ilustrütivos y facilidad de visualización en lo
que sigue, se utilizarán registros con menos de 8 (2" flipflops.
Registro de corrimiento de carga en serie El diagrama esquemático para un registro en serie de 4 bits se muestra en la fisura 18. Los flipflops indicados son del tipo D, aunque también podrían ser JK. El indicadiir Jinhmicu (iriángulo) indica un flip-flop activado por flanco, y la burbuja sobre la terminal de enirnda dc rcloj
Regist
7
Componentes de ~irtuiiossecuenciales
177
quicre decir que la activación ocurre en el f l ~ n c idescendente i del pulso de reloj. Vamos a haccr v i i i i : ~observaciones ~ luego de examinar cl diagrama. En ciid;i flanco descendente del pulso de reloj, la entrada en la línea x se transfiere a la saIida del primer flip-flop. Cualquiera que seii la salida del primer flip-flop en ese tieriipu s r irnnsfiere a la salida del segundo flip-tlop. y de manera similar, en una cadena hacia la derecha. haua el último Ilip-flop. (¿.Funcionaría este esquema si hubicra habido mis flip-flops en esta cadena?) Esto es, los datos SP COITCII con cada pulso de reloj, de ahí el nombre registro de corr.irnit,riru. Si la única salida dispoiiihle externamente ru la última a la derecha (o a la izquierda eii el caso de corrimiento izquier~lrd.eiitonces el registro recibe el nombre de regibtro de corrimieiito de solidu r n serie. Sin emb:irgo. 51 cada salida de tlip-flop (cada Q, no s610 Q,) está disponible para leerse externamente. Pste es lambién un regisuo de salida en paraklo. A menudo están disponibles ambas posibilidadec, y se usan señales de control especificas para cnntrolar cuál de estas formas se utilizarh en una aplicación particular. En virtud de que la Lransferencia de datos ocurre con cada pulso dc relcij, eii el circuito de la figura 18 no hiiy control sobre la temporización de la irnnsferencia de Jütt)s. Dicho control se puede conseguir en una de dos formas. Una posibilidad s r iliistrii en la figura 19~1,donde CON es la señal de enrrada del control de corrimiento. Debido a qiie CON \e iiitroduce ü una compuerta AND con el reloj, Iris flip-flops en el registro de ccirrimicnto ce hribilitriri sólo cuando CON = l. Eti uti registro de k bits, CON debe pasar al estado alio justo después de uri flanco posierior del pulso de reloj y permanecer en el nivel alto durante f- periodiis de reloj. El registro operüi-ií como se describió antes s61o en estos k periodos de reloj.
Por tanto, i i ~ palabra i ~ de k bits se transferirá al registro. La señal de control de curriiniento cambia para CON = O en el extremo de la palabra de k bits, deshabilitando dc ese modo Iris flipflops en el registro hasta que la señal de control vuelva de nuevo al esiado alto. La principal desventaja de este e5quema es que Id lógica se efectúa con la señal de relrc. Puesto que las cornpuerias c.cm las cuales se efectúa [J. lógica (una compucrta AND en este caso) tienen retardo de propagaci6n. la señal de reloj tio llegará a todos los flip-flops en e! sistenia al mismo tiempo. Por consiguiente. el sistema quizd L~lleal efectuar todas las funciones del sistema en forma síncrona -un resultado riltanietiti: itideseable. Una rnanera simple de suprar esta dificultad dz control de la entrada sc muestra en la figura 146. En vez de hacer pasar la seiial de control por una compuerta AND con el reloj, la señal se hace pasar por una AND coi] la entrada x. También en este caso, CON debe pasar al estado alto justo después de un flanco pusterior del pulso de reloj, permaneciendo en ese misrnci zstüdo alto durante k periridos de reloj, y luego pasar al estado bajo. De esta manera, sólo se transferirá una palabra dc k bits al registro de corrimiento. Este método para el control de carga se ilustra a continuaci6n.
circuito de-
nuevas en. o cerrojos. .ir unidades
lip-flr)ps se 3flrips (casi loj, sino que el flanco assferencia de iales, es poinea (en pa:hacia fuera s de carga y 5 demis). tinidades de ir5 ilustrati8 (7" flip-
18. Los tlipico (tnángua&¿ de reloj
1
Registro de corrimiento de carga en paralelo El diagrariia esquernitico de un registro de entrada en paralelo, salida en piiriilrlu, se precenta eti la figura 70. Se disetia con flip-flops dK de activación por flanco y utiliza el mftodo de control de carga que 5e explicó antes. Obszrvarcmos algunas de sus caracteristicas estudiando el diagrama.
I . El pulso de reloj se aplica a cada uno de los flip-flops a través de un inversor, de manera tal que la activación se efectúa sobre el flanco final del pulso de reloj. El propósito principal del inversor, sin embargo, cs proporcionar un reforzamiento de la señal, reduciendo de ese modo la carga sobre la fuente de reloj: el reloj no tendrá que accionar todos Icis flip-flops, Únicamente al inventlr. 2. El esquema de control de entrada en la figura 20 se usa ~ 0 1 cada 1 seiial de control. Esta vez, para evitar la carga de la fuente de control. la setial se introduce a travks de un búfer.
178
Principicis de diseño lógico digital
Figura 20. Registrii de 4 hits cargado cti paralelo can control de carya.
3. Por últiiiio. existe una entrada de BORRAR (CLR) operada de maticra independiente que se aplica a cada Rip-flop en el registro; éht;i debe esiar en alto eri la cipcrac.irín normal del registro. Sin embargo. cuando es necesariri iiiiuliir 13 función que se esta efcziuando y borrar los coritenidas del registro, ello se Iiigrn. cn forma asíncrona, fijando CLR = 0. (¿Cual es la funcicín del búfer en esta línea?] Aunque los flip-flops son JK. cuando en la etittacla de ccintrul de carga es 1, = 1 , estos re eslán utilizando como flip-flopc D debido 3 que en ese caso K = J'.(Compruébelo.) Cuando L = O. sin embargo, J = K = O; en coniccuencia, no ocurrirán transicionrs de flip-flop. Las cnirad:is 1, se cargan de manera siinultanea en 10s flip-tlops correspondientes en rl flnricu final del pulso de reInj. siempre y cuando la entrad3 CLR sea 1 en ese tiempo y iambikn srn 1 el contml dc carga. Tiid:is las salidas del flip-flop cstaii disponibles exLernamente, dc manera que éste es un registru de enirada en paralelo, salida en paralelo. Por simplicidad, los rcgisirot;que se muestran aquí son de 4 h i t h . Evidentemente, es posible realizürliis Far;i inás bi ts agregando uii níimero mayor de flipflnps. El ~iúmerode flip-flops es la Única diftrencia entre los registros que procesan 16(2" bits -?12(2~)ri 2" para un valor superior de ti - y 10s más simples que se exponen ayiii. La totalidad de este tipo de registros se cihticnen en CI MSI. Ida figura 21 miisstrn un siiirbolo esquemático para un registro de entrada piiralelo, salida paralelo, de 8 hii\ utili~niidoflipflops D y etitrada CLR.
Conversión paralelo-serie Aunque todos los bits de una palabra est6n quizá disponibles al mismo tiempo, tal vez resiille deseable convertir esta información en la forma serie. Esie es el cain, por ejemplo, si los datos se van a transmitir serialmente a otra localidad por un ~ 3 1 1de ~ 1comunicaciiin de una sola línea.
Componentes de circuitos secuenciales
179
00 Qo CLR
Figura 21. Síinbolo para un registro de 8 bits.
h JPR Q
o-
1
4
I
CLR
-
K
A
''
J P R Q 2
-4
~ O~
J
4
KCLR
~
A
"2
PR 3
Q
4
4
KCI.R
Y
?
?
A
A
A
hit 1
hit 2
hit 3
CI,R
"
P 1
bit 4
Figura 22. Registro de cnrrimiento de 4 bits para la conversión paralelo-serie.
I"",'c Pulso dcrcloj OS
ia
se están
1
2 3 4
jl
y2
y3
(palabra de entrada) I 1 o O 1 1 0 o
0 0
1 0
palabra de salida
sola línea.
S C ~ C
y4+( 1 sb de entrada)
1
7
O (lsb de salida) 1
i
Figura 23. Conversión de datos paralelo-serie .
Con este fin, se necesita que un registro de corrimiento pucda cargarsc en paralelo. Una pcisibilidad se presenta en la figura 22. El registro de corrimiento de 4 bits está conformado por flipflops JK, aunque éstos actúan como tlip-flops D, pues K,= ./;-. Cada flip-flop tiene también tertnitiales asíncronas BORRAR O PONER A O (CLR) y PRESTABLECER O PONER A 1 (PR). Los datos entran al registro a travCs de las terminales PRESTABLECER l . (No se indican las unidades de control de carga cn cada entrada PRESTABLECER A 1 .) Las entradas J y K a1 primer flip-flop a la izquierda se fijan de manera permanente en los estados bajo (O) y alto ( 1 ) . respectivamente. Eslo garantiza que después de cada pulso de reloj, la salida del primer flip-tlop pasará al estado bajo. A menos que los estados del flip-flop se fijen asincrónjcrtmente, este valor bajo se propagará hacia la derecha y, luego de tres pulsos de reloj más, todos los flip-flops se borrarán. En un tiempo determinado por la entrada de control de carga, el registro se carga a través de las terminales PRESTABLECER A l.
1Rfi
Principios de diseño Iijgico digital
regisirti de
de 4 bits
1
2
~rliq
validas de ccrado paralelas
Figura 24. Registro universal
Suponga que la palabra qiie se va a transniitir cs I 101. En un pulso di: reloj determinado, IR cntrada de control de carga habilita las terniinales PRESTABLECER A 1 , y to~loslos bits dc la pa-
labra se c.;irgan d e nianera simultáriea en el registro. El rrsiiltado \e indica en e1 pritner rengl6n de la tabla en la figura 23. PRESTABLECEH A 1 csili ahora deshahilitadü. En cada ~iulsnde re-
loj sucesivo, los contenidtis del rzgistro se corren hacia la derecha, dejando O a la 17.qiiiei-Jii,~ o mo se muestra en Iiis i.englones sucesivns de la tabla. La salida. que aparece en Iri úlrima columna, se toma deqdc cl flip-tlop mis a 13 dei.cch;i, el primer bit menos significativo. Otra aplicacióti de cste tipo d e registro dc conversión paralelo-cr-rie es la siguieiite: supon-
ga que se disporizri di13 números binarios (que i e sumará) en forma paralela. pero que se procesarin ~nedianteun sumadcir en serie. Los nlinieros pueden convertirse en la forma scrial y
aplicarse como entradas scrialzs
rii el sumador.
Registros universales Cada tipo de rcgi stru descrito en las secciones anteiicir es (corrimiento a la derec h:~. m-riniiento a la i~quierda.c q a en paralelo. lectura en paralelo) tienc aplicaciones iinprii 1:inlzs. El que %ería de un viilor incliiso mayor es un regictro que con1bina algunas de todas esiiis características.
un tiyi) de registro universal.
En la figura 24 se prcseiitri el diagrama esqiiernático para u n rrgictrn de 4 bits de este tipo Hay cuatro terininales para la carga en paralelo y la lectiirii cn paralelo, así
ctiniri cniradas rn fen e de corrimiento i~quierdoy crirrimienlo derecho. El prtiplisito del decodificador exaerrio es producir los bits que se corrrrin y crintrolar la direccióii en la cual se efectuará r l corrimiento. Una de la5 aplicaciones de este tipo de circuiio es Iü qiie corresponde a un contador. Puesto
qiie los bits O y I piieden correrse hariii cualquier direcciiin en el pulso de relcij, e i prisible ge-
nerar un gran
tiúmerti de códigos diferentrc de longitud variable. Los problemas para Ilcvar a ccaho tales disenos se exponen en el capítiilri 6.
Para ilustrar, suponga que se va ri utilizar un registro universal dc 3 bits para diseñar un c ' i n iador de niódulo 3 de aciirrdci con el siguienti: cridigo. (¿En éste iin c6digo de distancia unii:irrdaJ)
Suponga qiie las variables de estado se denoininün y , , y2 y,, coi1 J., reprcscntando el bit m& significativo. Empezando con el estado i.,xly = 000, un hit 1 se corre hacia la izquierda, luepo u11bii I hacia la derecha, despuzs uii bit O hacia la izquierda. Los mapas liigicos para las datos que se van a correr a la izquierda y a la derecha se consiniyen en la forma quz se indica cn la figura 75n.
RESUME
del número binario es menor que su valor inrnedraiainenle aiiteriijr, entoncrc las salidas son : , z , = \O. Si el vairir presents es niayor que el valor precedente, entonces r,:, = 01. Si es e! inismo, z l t 2= 00.
a. Diseñe el circuito. b. Dibuje di~grama:.de temyurización pa:a lus tres cwos. 51. Se espera que palehral: de cinco bits qiir llegan a iina iínea sean nirr.%es eri cíulipo 7 rlc 5. Sin eiiibargo, quizá existan errores. Diseñe una miquina sfncrciiin cuyo. salida es 1 sOlo ;untido x r re2ibe rl quinto bit v la palabra sumpletadñ no una palabra vilida en aídigo 2 dc 5 . Las palabras de 5 hit< soti cirnseciilivas; tan pronto ci?mo utid p~l;ibradc 5 biis se complet~.el circuito d e k cstar listo pala recibir el primer bit d e la palabra siguiente.
a. b.
c. d. e.
52.
rcin,~iriiyaiiti di:igrama dc cstadct.. ( Sugcrc,nchid:;, h ~ u i n i o scstadui Jistiriti,i piiede hacer el circuito una transiciiiii para ~ ü d bit a cntraate después del primero?) C