Circuitos combinacionales

Anuncio
Unidad
Circuitos
combinacionales

Introducción
Hemos descrito las entradas y salidas de los circuitos digitales como
señales eléctricas de tensión o voltaje que representan los valores lógicos. Por
otra parte, teniendo en cuenta que la síntesis de un sistema digital de cierta
complejidad implica la interconexión de distintos subsistemas, la salida de un
circuito lógico puede actuar como entrada de otro u otros. Así, describiremos en
esta unidad los aspectos más relevantes a tener en cuenta desde el punto de vista
eléctrico en el funcionamiento de dichas interconexiones. También
presentaremos en esta unidad el concepto de estado de alta impedancia.
Otra descripción que se presenta en esta unidad es la de circuitos lógicos
que implementan funciones básicas en los sistemas digitales. Aunque estos
circuitos pueden ser construidos en base a compuertas lógicas, su
implementación a nivel de compuertas es más complejo debido a la cantidad de
componentes necesarios (considere por ejemplo, el circuito completo de un
convertidor de código BCD a siete segmentos). Por esta razón, y por la
generalidad de su aplicación, los fabricantes ofrecen estos circuitos sintetizados
integralmente en forma de componentes. Desde el punto de vista del diseño,
estos componentes representan bloques que implementan funcionalidades
completas. Veremos aquí los más representativos de estos bloques funcionales.
Nomenclatura de señales y terminales. Especificación del nivel activo
Nomenclatura y niveles activos de señales
Los nombres utilizados en las
líneas o buses que sirven para
transmitir señales entre distintas
partes de un sistema digital
también deben ser significativos
de la función, carácter o uso del
grupo de señales que se
transportan en ellos.
En las formas de representación de un circuito o sistema digital se
utilizan nombres para designar las señales de entrada y de salida. En los
sistemas simples, puede ser suficiente utilizar nombres de un solo carácter, sin
embargo en sistemas más complejos es necesario designar las señales con
nombres elegidos convenientemente para facilitar la comprensión del sistema
digital representado en esquemas, símbolos, diagramas, etc.
Para ello, tendremos en cuenta la función que cumplen las señales, ya
sean de entrada o de salida. El valor que adopta una señal de entrada indica que
el circuito debe realizar cierta acción o debe considerar ciertas condiciones para
su funcionamiento, según su diseño. En forma similar, el valor que adopta una
señal de salida indica que el circuito se encuentra en un estado particular o que
debe ejercer una determinada acción sobre otro circuito. Teniendo en cuenta
esto, es evidente la conveniencia de designar las señales del circuito lógico con
nombres que indiquen la función que cumplen dichas señales.
89
Por otra parte, dado que los sistemas lógicos tratan con señales binarias
cuyos valores son representados mediante los niveles lógicos ALTO y BAJO,
uno de estos valores será el que debe utilizarse para que la señal realice la
acción o refleje la condición que le ha sido asignada en el funcionamiento del
sistema. Por ello, definimos como nivel activo de una señal lógica al nivel
lógico que debe adoptar dicha señal para cumplir el objetivo indicado por su
nombre. Este objetivo depende del diseño del circuito y puede consistir en
realizar una acción, producir un efecto o reflejar una condición.
El nivel activo de una señal puede ser ALTO o BAJO. Una señal es
activa en ALTO cuando su valor debe adoptar el nivel ALTO para realizar la
acción o reflejar la condición referida por su nombre. Análogamente, una señal
es activa en BAJO cuando su valor debe adoptar el nivel BAJO para realizar la
acción o denotar la condición que indica su nombre.
Convencionalmente, el nombre con el que se designa a una señal también
se utiliza para especificar su nivel activo. Un criterio ampliamente utilizado a
este fin es el siguiente: Si el nombre de la señal está expresada en forma directa
(esto es, sin negar), su nivel activo será el nivel ALTO. En caso contrario, si la
señal lógica posee un nombre expresado en forma de complemento (esto es,
negado), su nivel activo será el nivel BAJO.
Nomenclatura, niveles activos y símbolos de terminales
Al igual que las señales de entrada y de salida, los terminales de entrada y
de salida de un circuito lógico también deben identificarse mediante nombres.
Al aumentar la complejidad del circuito deben utilizarse nombres de acuerdo a
la función del terminal. Así, el nombre de un terminal de entrada debe coincidir
con el efecto que se pretende conseguir sobre ese circuito al actuar sobre dicha
entrada y el nombre de un terminal de salida debe indicar el estado que dicha
salida refleja o la acción que se desea lograr con ella. De esta manera, las
etiquetas de los nombres asignados facilitarán la lectura de representaciones
como circuitos, símbolos, diagramas y esquemas.
En forma coherente, el nivel activo de un terminal es aquél que logra el
efecto indicado por el nombre del terminal y nuevamente, este nombre puede
estar expresado en forma directa o inversa, indicando así cuál es su nivel activo.
En resumen, la nomenclatura de terminales de un circuito lógico sigue las
mismas convenciones y criterios utilizados para la designación de señales.
En el caso de los terminales, los símbolos de los dispositivos también
especifican el nivel activo. Se utiliza un círculo pequeño, denominado círculo
de negación, para indicar que el terminal es activo en BAJO, mientras que la
ausencia de este círculo significa que el terminal es activo en ALTO.
Interconexión de circuitos
Al definir el concepto de terminal de entrada hemos planteado que el
terminal de salida de un circuito puede constituir la señal de entrada a otro
circuito. Esta es una situación muy común en los circuitos digitales, como
puede observarse, por ejemplo, en la implementación de funciones lógicas
mediante interconexión de compuertas lógicas. En la Figura 4.1 se muestran los
bloques funcionales de dos circuitos o dispositivos interconectados de manera
tal que la salida del circuito 1 se conecta a la entrada del circuito 2. Se dice así
que el circuito 1, o mejor dicho, la salida del circuito 1 excita la entrada del
circuito 2.
90
Figura 4.1 Bloque funcional
representativo de un dispositivo
eléctrico / electrónico cualquiera:
Cuando la salida de un circuito se encuentra desconectada de cualquier
otro dispositivo se dice que la salida está en vacío o sin carga. En la
interconexión, el circuito 1 se denomina circuito excitador y el circuito 2 se
denomina circuito de carga o simplemente carga. De esta forma, refiriéndonos a
la Figura 4.1, decimos que el circuito 2 es la carga del circuito 1, y a la vez,
como la salida del circuito 2 se muestra sin conectar a ningún otro dispositivo,
el circuito 2 está en vacío.
Cabe acotar que la fuente de alimentación de ambos circuitos puede ser la
misma o bien pueden ser fuentes distintas, pero de cualquier manera puede
observarse que los terminales de masa o tierra de cada circuito están
eléctricamente conectados al mismo punto, que es el punto de referencia de
tensión cero.
En la interconexión se establece un flujo de corriente entre la salida y la
entrada de los dispositivos interconectados. En la Figura 4.1 se muestran
corrientes que circulan en ambos sentidos, solamente a fin de resaltar que en la
interconexión la corriente puede ser entrante o saliente respecto a la salida del
circuito excitador, pero en un momento dado, sólo una de ellas estará presente.
El sentido de circulación de la corriente depende del valor lógico que el
dispositivo excitador vuelca a su salida. La magnitud de esta corriente depende
de las características eléctricas de salida y entrada de los dispositivos
interconectados y para determinarla primero debemos definir los conceptos de
impedancia de entrada e impedancia de salida de un circuito.
Impedancia de entrada
La impedancia de entrada (Zin) de un circuito es una medida de la
oposición al paso de la corriente eléctrica que presenta dicho circuito ante la
aplicación de una señal eléctrica en su entrada (excitación). De esta manera,
mientras mayor sea la impedancia de entrada de un dispositivo, menor será la
corriente absorbida por dicho dispositivo al ser conectada como carga de otro
dispositivo. Es decir, el dispositivo consume menos corriente al aumentar su
impedancia de entrada, siendo ésta una condición de diseño buscada en todo
circuito.
Impedancia de salida
La impedancia de salida (Zout) de un circuito es una medida de la
oposición al paso de la corriente eléctrica que presenta dicho circuito en su
salida al conectársele una carga (cuando la salida del circuito se encuentra en
vacío o sin carga, no hay circulación de corriente en la salida). Recordemos que
la salida de un circuito es el terminal por donde el circuito vuelca o coloca, a
modo de fuente de alimentación, una diferencia de potencial eléctrico respecto
del terminal de masa del circuito.
91
Para aclarar este concepto analizaremos el caso de la impedancia de
salida Zout de una fuente de alimentación cualquiera. Toda vez que hemos
analizado un circuito hemos considerado fuentes de alimentación “ideales”, y
como tal, el dispositivo mantiene una diferencia de potencial eléctrico constante
entre sus bornes o terminales, independientemente de la corriente que
suministra al circuito. En realidad esto no sucede así, sino que las fuentes
brindan una tensión que decae ante aumentos de la intensidad de corriente
suministrada al circuito de carga. Por esta razón, las fuentes de alimentación
tienen entre sus especificaciones técnicas el valor de corriente máxima, que es
aquella que puede circular sin que la tensión de la fuente caiga por debajo de su
valor nominal. Esto sucede así porque las fuentes de alimentación poseen una
impedancia interna o impedancia de salida Zout que normalmente es muy
pequeña (para que sea una buena fuente de alimentación esta impedancia debe
ser pequeña).
Consideremos el caso de un circuito sencillo como el mostrado en la
Figura 4.2a, que consiste en una fuente ideal que alimenta una resistencia R. De
esta forma, cualquiera sea el valor de la resistencia (es decir para cualquier valor
de corriente consumida por la carga), la tensión aplicada sobre la resistencia es
siempre la tensión de la fuente: VR = Vf. En cambio, en la Figura 4.2b, la
resistencia está alimentada por una fuente real que tiene una impedancia interna
o impedancia de salida Zout = Ri de valor muy pequeño. Así, la tensión
aplicada sobre la resistencia R será la tensión de la fuente menos la caída de
tensión producida sobre la impedancia de salida de la fuente V Ri, como se
demuestra a continuación:
⇒
Figura 4.2
a) Circuito con una fuente de
alimentación ideal.
b) Una fuente de alimentación real
posee una impedancia interna Rin
de pequeño valor que constituye
la impedancia de salida Zout del
dispositivo
La tensión aplicada sobre la resistencia R depende ahora de la corriente
consumida por el circuito y su valor decrece con el aumento de corriente
suministrada por la fuente. Para que este valor de tensión no descienda a valores
inconvenientes, la corriente suministrada por la fuente no debe superar un valor
máximo. Así, para que este valor máximo de corriente suministrada sea lo más
elevado posible, la impedancia interna de la fuente o impedancia de salida Zout
debe ser lo más pequeña posible. De esta manera, la condición o criterio de
diseño buscada para la fuente de alimentación es que su impedancia de salida
Zout sea lo menor posible, y así, la tensión de salida que suministra disminuya
lo menos posible cuando la corriente aumente.
La intensidad del flujo de corriente que se establece depende de la
impedancia de entrada Zin del dispositivo de carga. La impedancia de entrada
de la carga es Zin = R, y a mayor valor, su efecto es que disminuye la corriente
suministrada por la fuente y en consecuencia, VR se acerca más al valor de Vf.
Por el contrario, cuando Zin disminuye, la corriente I aumenta, y por ende. VR
disminuye, alejándose del valor de Vf.
Concluyendo, el criterio de diseño para el circuito excitador es tener una
baja impedancia de salida Zout, para que el valor de tensión que vuelca en su
salida difiera lo menos posible ante la conexión de la carga. Asimismo, el
circuito de carga debe tener una alta impedancia de entrada Zin, de manera que
consuma la menor corriente posible.
92
Flujo de corriente y valor de tensión entre dispositivos interconectados
Analizaremos ahora el flujo de corriente y el valor de tensión entre la
salida y la entrada de dos circuitos lógicos interconectados, para ambos niveles
lógicos.
Interconexión en estado ALTO
En la Figura 4.3 se considera el caso en que la salida del circuito 1 está en
nivel ALTO. En este caso la salida suministra una corriente I a la entrada del
circuito 2. Esta entrada actúa como una impedancia a tierra cuyo valor es la
impedancia de entrada Zin del circuito 2 (recordar que la circulación de
corriente se produce de un punto de mayor potencial eléctrico a otro de menor
potencial). La salida del circuito 1 se representa como la impedancia de salida
Zout conectada al borne positivo de la fuente de alimentación Vcc del circuito.
Figura 4.3 Tensión y corriente para la salida en
ALTO de un circuito lógico conectado a la entrada
de otro.
Para mantener el valor ALTO en el punto de interconexión, el valor de
tensión V debe ser lo más cercano posible al valor de la fuente Vcc. Calculamos
este valor V como:
Esta expresión indica que el valor de V es igual al valor de la tensión de
la fuente menos la caída producida en la impedancia de salida, por lo que
mientras más pequeña sea la caída en la impedancia de salida, el valor de V será
más cercano a Vcc. Para un determinado valor de I, esta caída (I.Zout) es menor
mientras más chica sea la impedancia de salida, en un todo de acuerdo al
criterio de diseño ya visto. A su vez, mientras menor sea la intensidad de
corriente I suministrada, la tensión V será más cercana a Vcc y como la
intensidad de esta corriente es función del valor de la impedancia de entrada Zin
del circuito 2, mientras mayor sea esta impedancia Zin menor será la corriente I
que debe suministrar la salida del circuito 1.
Dispersión de salida en estado ALTO
Es muy común que la salida de un circuito lógico maneje varias entradas,
como se muestra en la Figura 4.4a. En este caso observamos que todas las
entradas están conectadas a una salida única, por lo que todas las impedancias
de entrada de los circuitos de carga quedan conectadas entre esta única salida y
la masa o tierra del circuito, conformando una asociación de impedancias en
93
Para garantizar que el valor de
tensión de salida no disminuya
por debajo del intervalo de
tensión definido para el 1 lógico
los fabricantes especifican en la
hoja de datos del dispositivo el
máximo valor de corriente que
puede suministrar la salida del
circuito en estado ALTO.
paralelo. La corriente I que debe suministrar la salida excitadora es la suma de
las corrientes consumidas por cada una de las entradas.
Como ya hemos analizado, al aumentar la corriente I aumenta la caída de
tensión en Zout y disminuye el valor de tensión V en la salida del circuito. Este
aumento de corriente puede tomar una magnitud tal que la tensión V caiga por
debajo del nivel de tensión mínimo que representa el estado ALTO (sale fuera
del intervalo de tensión especificado para el nivel ALTO). Si esto ocurriese, la o
las entradas excitadas por dicha salida no podrán discriminar a dicho valor de
tensión como un 1 lógico. Esto limita la cantidad de entradas que una salida
puede excitar en ese estado y a este valor se le llama abanico de salida o
dispersión de salida (fan out) para el estado ALTO.
En el otro extremo, ver Figura 4.4b, tenemos el caso en que la salida del
circuito se encuentra en vacío (salida sin carga). Al no existir circulación de
corriente no hay caída de tensión sobre Zout y el valor de tensión V en la salida
del circuito es igual a la tensión Vcc de la fuente. Cualquier carga que se
conecte a esta salida hará que la tensión V disminuya en proporción a la
corriente suministrada por dicha salida.
Figura 4.4
a) Tensión y corriente para la salida en ALTO de un
circuito lógico que maneja 3 entradas
b) Salida en ALTO para un circuito en vacío o sin carga.
Ejemplo
Supongamos que la salida del circuito 1 de la Figura 4.4a puede suministrar una corriente máxima de 0,4
mA = 400 µA en su estado ALTO (este valor es referido por los fabricantes como “IOH = máxima
corriente de salida de nivel ALTO”). Supongamos también que cada entrada de los dispositivos de carga
consume una corriente de 0,02 mA = 20 µA cuando son excitados con un nivel ALTO (este valor es
referido por los fabricantes como “IIH = corriente de entrada de nivel ALTO”).
94
Ejemplo (continuación)
De esta forma, la corriente I que debe suministrar la salida excitadora será la suma de las corrientes
consumidas por cada una de las entradas:
I  IIH1  IIH2  IIH3  3  20 uA  60 uA
Este valor de corriente es menor que IOH = máxima corriente de salida de nivel ALTO = 400 µA. Esto
quiere decir que la salida del dispositivo puede todavía manejar más entradas de este tipo. Calculemos
entonces el abanico o dispersión de salida (fan out) para el estado ALTO de este dispositivo, es decir, la
cantidad máxima de entradas de este tipo que el dispositivo puede manejar en este estado:
dispersión de salida (ALTO) 
IOH 400 uA

 20
IIH
20 uA
Es decir que la salida del circuito 1 en nivel ALTO puede manejar hasta 20 entradas de este tipo sin que
la tensión de salida V caiga por debajo del intervalo de tensión especificado para el nivel ALTO
Interconexión en estado BAJO
En la Figura 4.5 se considera el caso en que la salida del circuito 1 está en
nivel BAJO. En este caso, la circuitería de salida está representada por la
impedancia de salida Zout conectada a la masa o tierra del circuito y la
circuitería de entrada del circuito 2 está representada por la impedancia de
entrada Zin conectada al borne positivo de la fuente de alimentación Vcc del
circuito de carga. De esta manera la corriente I fluye desde la entrada del
circuito 2 de regreso a tierra a través de la impedancia de salida Zout del
circuito 1 (recordar que la circulación de corriente se produce de un punto de
mayor potencial eléctrico a otro de menor potencial). En otras palabras, en el
estado BAJO la salida del circuito excitador debe ser capaz de “consumir” o
“drenar” una corriente I que proviene de la entrada del circuito de carga. Lo que
se pretende en este caso es que el valor de tensión V en el punto de
interconexión sea lo más cercano a 0 volt. Calculamos este valor V como:
es decir que la tensión a la salida es igual al valor de la caída de tensión
producida en la impedancia de salida (I.Zout), por lo que mientras más pequeña
sea esta impedancia más cercano a 0 volt será el valor de la salida para un
determinado valor de I (en un todo de acuerdo al criterio de diseño ya visto para
la salida de un circuito). A su vez, mientras menor sea la intensidad de corriente
I consumida por la salida, también el valor de V será más cercano a 0 volt y
como la intensidad de esta corriente es función del valor de la impedancia de
entrada Zin, mientras mayor sea esta impedancia de entrada Zin del circuito 2,
menor será la corriente I que debe drenar la salida del circuito 1.
95
Figura 4.5 Tensión y corriente para la salida en
BAJO de un circuito lógico conectado a la entrada
de otro.
Dispersión de salida en estado BAJO
En la Figura 4.6a se muestra el caso de varias entradas conectadas a una
misma salida que provee un nivel BAJO. En estas condiciones, la salida
excitadora debe ser capaz de drenar las corrientes que provienen de todas las
entradas de carga y por lo tanto, la corriente I consumida por la salida será la
suma de las corrientes provenientes de todas las entradas.
Figura 4.6
(a) Tensión y corriente para la salida en BAJO de un
circuito lógico que maneja 3 entradas
b) Salida en BAJO para un circuito en vacío o sin carga.
Como ya se analizó, al aumentar la corriente I aumenta la caída de
tensión en Zout aumentando así el valor de tensión V en la salida del circuito;
este aumento de corriente puede tomar una magnitud tal que la tensión V
aumente hasta un valor superior al nivel de tensión máximo que materializa al
estado BAJO (sale fuera del intervalo de tensión especificado para el nivel
BAJO) y así la o las entradas excitadas por dicha salida no podrán discriminar a
96
Para garantizar que el valor de
tensión de salida se mantenga
dentro del intervalo de tensión
definido para el 0 lógico los
fabricantes especifican en la hoja
de datos del dispositivo el
máximo valor de corriente que
puede drenar la salida del
circuito en estado BAJO.
dicho valor de tensión como un 0 lógico. Esto limita la cantidad de entradas que
una salida puede excitar en ese estado y a este valor se le llama abanico o
dispersión de salida (fan out) para el estado BAJO. En el otro extremo, ver
Figura 4.6b, tenemos el caso en que la salida del circuito 1 se encuentra sin
carga y no habiendo circulación de corriente no hay caída de tensión sobre Zout.
Por eso, la salida en valor BAJO del circuito 1 en vacío es V = 0 volt. Cualquier
carga que se conecte a esta salida hará que la tensión aumente en proporción a
la corriente drenada por dicha salida.
Ejemplo
Supongamos que la salida del dispositivo de la Figura 4.6a puede drenar o consumir una corriente
máxima de 8 mA = 8000 µA en su estado BAJO (este valor es referido por los fabricantes como “IOL =
máxima corriente de salida de nivel BAJO”). Supongamos también que cada dispositivo de entrada
suministra a la salida excitadora una corriente de 0,1 mA = 100 µA cuando son excitados con un nivel
BAJO (este valor es referido por los fabricantes como “IIL = corriente de entrada de nivel BAJO”). De
esta forma, la corriente I que debe drenar o consumir la salida excitadora será la suma de las corrientes
suministradas por cada una de las entradas:
I  IIL1  IIL2  IIL3  3 100 uA  300 uA
Este valor de corriente es menor que IOL = máxima corriente de salida de nivel BAJO = 8000 µA. Esto
quiere decir que la salida del dispositivo en valor BAJO puede todavía manejar más entradas de este tipo.
Calculemos entonces el abanico o dispersión de salida (fan out) para el estado BAJO de este
dispositivo, es decir, la cantidad máxima de entradas de este tipo que el dispositivo puede manejar en
este estado:
dispersión de salida (BAJO) 
IOL 8000 uA

 80
IIL
100 uA
Es decir que la salida del dispositivo en nivel BAJO puede manejar hasta 80 entradas de este tipo sin que
la tensión de salida V aumente por arriba del intervalo de tensión especificado para el nivel BAJO.
Es de hacer notar que el abanico o dispersión de salida (fan out) de un
dispositivo es distinto para cada uno de los estados, por lo que para el diseño
debe tomarse el valor más bajo, en este caso el correspondiente al fan out
ALTO cuyo valor es 20 de acuerdo a lo calculado en el ejemplo anterior.
Circuito integrado
Un circuito integrado (CI) es una pastilla o chip de material
semiconductor que contiene desde cientos a millones de componentes
electrónicos interconectados, (principalmente resistencias, diodos y transistores)
en un área que puede ser de un cm2 o incluso inferior.
La fabricación de un circuito integrado se realiza a partir de obleas de
silicio muy puro, sobre las que se “dibujan" circuitos microscópicos por medio
de máscaras litográficas atacadas químicamente. De este modo, quedan intactas
las zonas protegidas por la máscara y se dopa con el material deseado el silicio
que quede expuesto a través de las ventanas abiertas en las máscaras. Luego, se
añaden los "cables" también por medio de máscaras de conexionado.
97
Posteriormente, se corta la oblea en circuitos individuales por medio de una
sierra de diamante y el chip resultante se introduce en el encapsulado,
conectando los pines.
La Figura 4.7 presenta una imagen en corte de un circuito integrado,
mostrando la disposición de sus elementos internos.
Figura 4.7 Esquema de un circuito integrado
Hoja de datos
Para identificar la función que cumple el circuito integrado, el
fabricante le asigna un código identificatorio y publica la hoja de datos o
datasheet, donde se detalla la función que cumple, disposición de pines,
parámetros eléctricos y demás especificaciones técnicas del circuito integrado.
Figura 4.8 Ejemplo de hoja de
datos. Circuito integrado 7408,
cuádruple compuerta AND de
dos entradas.
98
En las hojas de datos, los niveles
lógicos se designan como HIGH
(nivel lógico ALTO) y LOW (nivel
lógico BAJO). Y de estos términos
se derivan los símbolos de los
valores lógicos 1 y 0, los cuales se
representan con las letras H y L,
respectivamente.
La Figura 4.8 muestra a modo de ejemplo parte de la hoja de datos del
CI 7408, que contiene cuatro compuertas AND de dos entradas cada una. Se
muestra el diagrama de conexiones, que indica la distribución de pines del
circuito integrado. El ejemplo mostrado contiene también algunas
especificaciones del fabricante para el correcto funcionamiento del dispositivo.
Las hojas de datos pueden contener además diagramas temporales y tablas de
verdad. Hay que tener en cuenta que la nomenclatura utilizada en las hojas de
datos (nombres de niveles lógicos, siglas, abreviaturas, etc.) se basa en el
idioma inglés, aunque la hoja de datos se encuentre traducida.
Familias lógicas
Los circuitos lógicos pueden ser implementados mediante la
interconexión de compuertas lógicas. Estas compuertas son circuitos
electrónicos construidos en base a diodos, transistores y resistencias. En la
Figura 4.9 se muestran circuitos muy simples que implementan compuertas
lógicas fundamentales utilizando solamente diodos y resistencias (lógica con
diodos) y en la Figura 4.10, utilizando solamente transistores y resistencias
(lógica con transistores).
Figura 4.9 Lógica con diodos; utilización de diodos y
resistencias (componentes discretos) para la
implementación de compuertas lógicas.
Figura 4.10 Lógica con transistores:
utilización de transistores y
resistencias (componentes discretos)
para la implementación de
compuertas lógicas.
Estos circuitos tienen la ventaja de ser muy sencillos pero presentan
algunos inconvenientes eléctricos cuando las compuertas se interconectan para
conformar el circuito lógico (por ejemplo, inconvenientes debido a valores no
óptimos de las impedancias de entrada y salida). Para solucionar estos
inconvenientes y lograr un aumento de la performance de las compuertas hubo
que diseñar circuitos más complejos, lo que se hizo posible gracias al empleo de
la tecnología de circuitos integrados (CI) que permite la síntesis de la circuitería
completa en un sustrato de silicio contenido en un encapsulado pequeño. A la
99
implementación de sistemas lógicos basada en el uso de circuitos integrados se
le denomina lógica con CI.
Podemos agrupar a los CI de acuerdo a los componentes principales
utilizados en la implementación de su circuitería, en lo que se denominan
familias lógicas de circuitos integrados. Cada familia lógica tendrá diferentes
características eléctricas y propiedades de operación. A continuación se
enumeran cuatro tipos de familias lógicas de CI, que por su aparición en orden
cronológico son:
Hay distintos tipos de
transistores unipolares y de
acuerdo a que los CI empleen
uno u otro tipo o una
combinación de ellos tendremos,
entre otras, las sub familias
NMOS, PMOS y CMOS, siendo
esta última la más representativa
de las familias MOS.

Familia RTL (Resistor Transistor Logic: Lógica Resistor Transistor).
Fue la primera familia lógica desarrollada y está construida a base de
resistencias y transistores.

Familia DTL (Diode Transistor Logic: Lógica Diodo Transistor). Sus
componentes principales son diodos y transistores y constituyó una
mejora sobre la familia RTL.

Familia TTL (Transistor Transistor Logic: Lógica Transistor
Transistor). Sus componentes principales son los transistores bipolares
(estos son los transistores estudiados en este curso) y es la que posee
mejores características eléctricas y propiedades de operación.

Familia CMOS (Complementary MOSFET Logic). Sus componentes
principales son los transistores unipolares o transistores de efecto de
campo MOSFET, constituye la familia de mayor uso en la actualidad.
Las tres primeras familias lógicas emplean transistores bipolares, diodos
y resistencias y se clasifican como familias bipolares. La familia bipolar más
representativa es la familia TTL. La última familia enumerada pertenece a las
familias MOS, que son aquellas que emplean transistores unipolares o
transistores de efecto de campo.
Resumiendo, podemos decir entonces que las familias lógicas son
conjuntos de circuitos integrados digitales fabricados con una tecnología de
transistores determinada. Cabe aclarar que este conjunto de CI puede ir desde
simples compuertas lógicas y circuitos lógicos de diversa complejidad, hasta
llegar a los CI más complejos como los microprocesadores.
La tecnología de transistores utilizada determina para cada familia lógica
características eléctricas y propiedades de operación. Algunas de ellas son:
 Niveles de tensión para determinar los unos y ceros.
 Velocidad de respuesta: la velocidad de una compuerta lógica es
medida por el retardo de propagación de un inversor básico o compuerta
NAND.
 Capacidad de carga o cargabilidad de salida (fan out): determina la
cantidad de compuertas de la misma familia que puede manejar la salida
de una compuerta o circuito lógico; mientras mayor sea la impedancia
de entrada de los circuitos lógicos más grande será su fan out.
 Tensión de alimentación: es la tensión que la fuente de alimentación
debe entregarle al CI para su funcionamiento normal.
 Potencia consumida: es la potencia eléctrica (en miliwatts) que una
compuerta o un circuito integrado toma de la fuente de alimentación.
100
Niveles de integración
De acuerdo a su complejidad circuital, los CI pueden contener distinto
número de transistores y diodos, equivalente a una determinada cantidad de
compuertas básicas. Se denomina nivel de integración al número de
componentes contenidos en un CI, y de acuerdo a este número, se clasifican en:






SSI (Small Scale Integration: nivel de integración pequeño) Inferior a
100 compuertas, se utilizan en el lógica de conmutación, compuertas
AND, NAND, OR, NOR, etc.
MSI (Medium Scale Integration: nivel de integración medio) De 101 a
1000 compuertas, se utiliza en codificadores, decodificadores,
sumadores, comparadores, multplexores, etc.
LSI (Large Scale Integration: nivel de integración grande) De 1 001 a
10 000 compuertas, utilizados en memorias.
VLSI (Very Large Scale Integration: nivel de integración muy grande)
De 10 001 a 100 000, utilizados en microprocesadores.
ULSI (Ultra Large Scale Integration: nivel de integración ultra grande)
De 100 001 a 1 000 000 de compuertas, se utiliza en la construcción de
microprocesadores complejos.
GLSI (Giga Large Scale Integration) más de un millón de compuertas.
Retardo de propagación
Figura 4.11 Retardo de
propagación.
En muchas compuertas el
retardo de propagación para una
transición en la salida de ALTO a
BAJO es diferente al retardo
asociado a un cambio de BAJO a
ALTO. Estos valores son
indicados por el fabricante en las
hojas de datos.
Hasta ahora, hemos descrito la relación entre las entradas y salidas de un
circuito lógico asumiendo que cuando ocurre un cambio en la entrada, el
cambio correspondiente en la salida sucede en forma instantánea. En los CI
reales estos cambios requieren un tiempo para producirse. Este retraso es
inherente al funcionamiento del componente y su valor depende en el nivel más
elemental de la tecnología o familia lógica en la que se basa el componente.
Se denomina retardo de propagación o tiempo de retardo al intervalo de
tiempo que transcurre entre el instante de tiempo en que cambia la entrada y el
instante de tiempo en que ocurre el cambio correspondiente en la salida. Así, el
tiempo de retardo representa la velocidad de respuesta que posee un circuito, y
por ende, un límite para la frecuencia máxima de operación. Por ejemplo, un
circuito lógico con un tiempo de retardo de 10 nanosegundos no funcionará
correctamente si se lo somete a cambios que se presenten con períodos de
tiempo menores a este valor.
El tiempo de retardo es acumulativo cuando la salida de un componente
actúa como entrada de otro y por lo tanto, el retardo total de un circuito lógico
depende de su complejidad. Para poder realizar comparaciones de velocidad de
funcionamiento, se toma como referencia el tiempo de retardo de la compuerta
lógica más sencilla, o sea, la compuerta inversora.
La Figura 4.11 muestra el diagrama de tiempo de las señales de entrada y
salida de un inversor. Por tratarse de un INVERSOR, cada vez que la señal de
entrada cambia de nivel, la señal de salida también debe cambiar de nivel, para
̅ . El diagrama temporal de la señal S muestra que cada cambio de
generar
nivel en la señal de salida ocurre con un pequeño retraso respecto al instante en
que ocurre el cambio de nivel de la señal entrada E. La figura indica el tiempo
de retardo
del primer flanco de subida de la señal de salida. Los tiempos de
retardo correspondientes a los demás flancos de la señal de salida se resaltan
con líneas de puntos.
Debe tenerse en cuenta que en esta representación simplificada se
considera que los cambios de un nivel a otro se producen en forma instantánea.
Por esta razón, los flancos de subida y de bajada de las señales mostradas en la
101
Figura 4.11 son líneas verticales. En los circuitos reales las señales eléctricas
requieren un tiempo para hacer la transición de un nivel a otro y por lo tanto los
flancos tienen cierta pendiente.
Familia lógica TTL
Los circuitos TTL se basan en
transistores bipolares y algunas
resistencias de polarización. Esta
tecnología utiliza una tensión
nominal de alimentación de 5
volts.
Esta fue la familia de CI que dio lugar a la difusión de la tecnología
digital, convirtiéndose en estándar de la industria de fabricación de CI entre
1965 y 1985. Aunque actualmente su uso se encuentra en declive frente a la
tecnología de las familias MOS, aún se emplean CI TTL en circuitos de interfaz
para dispositivos que requieren el manejo de altas corrientes de salida y existen
varias subfamilias TTL que presentan mejoras en algunas de las características
eléctricas tales como la velocidad y la potencia consumida.
Describiremos el funcionamiento de los CI lógicos de esta tecnología, ya
que han tenido una gran influencia en las características de todos los
dispositivos lógicos.
Intervalos de voltaje de entrada y salida
Se representan los niveles lógicos mediante intervalos de voltaje porque
el valor de la tensión de salida del circuito dependerá de la intensidad de la
corriente que circula a la salida. Esta corriente puede ser suministrada a la carga
(ver Figura 4.3) o drenada desde la carga (Ver Figura 4.5).
En la Figura 4.12a se muestran los intervalos de tensión que el fabricante
“garantiza” a la salida del circuito lógico para la representación de los niveles
lógicos.
Observamos que el nivel BAJO (0 lógico) estará dado por un intervalo de
tensión de entre 0 y 0,4 volt y el nivel ALTO (1 lógico) estará dado por un
intervalo de tensión de entre 2,4 y 5 volt. El fabricante garantiza estos valores
siempre y cuando la intensidad de corriente a la salida del circuito no supere la
máxima corriente de salida especificada (o lo que sería equivalente a decir que
no se supere el fan out especificado) ya que si esto sucede, el valor de la tensión
a la salida se situará dentro del “intervalo no permitido” (0,4 V < Vsal < 2,4 V).
5V
Figura 4.12 Intervalos de
tensión TTL para la
representación de valores
lógicos.
5V
Nivel ALTO
Nivel ALTO
2,4 V
2V
Intervalo no
permitido
Intervalo no
permitido
0,8 V
0,4 V
0V
Nivel BAJO
(a) Intervalos de tensión de salida
0V
Nivel BAJO
(b) Intervalos de tensión de entrada
En la Figura 4.12b se muestran los intervalos de tensión que se deben
“respetar” a la entrada del circuito lógico. Nótese que los intervalos de tensión
102
de entrada válidos para los niveles lógicos son mayores que los respectivos
intervalos de tensión asignados para la salida. Esto provee un margen de
seguridad para asegurar que cuando la salida de un circuito excita a varias
entradas, el valor de tensión en el punto de interconexión estará dentro de los
intervalos preestablecidos (siempre y cuando la salida no esté sobrecargada, es
decir que no se supere la máxima corriente de salida o se exceda el fan out). La
diferencia de los intervalos también otorga cierta inmunidad a la tensión
eléctrica inducida en los cables de conexión entre los circuitos lógicos (ruido
eléctrico) generado por los campos eléctricos y magnéticos presentes en el
medio.
Para una operación adecuada un circuito debe distinguir en cada una de
sus entradas uno de los dos valores lógicos. Para que esto sea posible, las
tensiones de entrada deben ubicarse en uno de los intervalos válidos. Las
tensiones de entrada ubicados en los intervalos no permitidos producirán una
respuesta impredecible del circuito y por lo tanto se deben evitar. A su vez, las
tensiones de salida de un circuito lógico deben asegurar que sus valores se
ubiquen en los intervalos asignados para que al ser utilizados como entrada de
otros circuitos lógicos, éstos operen correctamente.
Circuito TTL básico
El circuito lógico TTL básico es la compuerta NAND mostrado en la
Figura 4.13. Haremos un análisis muy simple de cómo funciona este circuito
para extraer algunas conclusiones que nos permitirán entender las características
de todos los dispositivos lógicos.
Figura 4.13 Circuito TTL básico (Compuerta NAND). (a) Símbolo; (b) Circuito; (c) Circuito equivalente de la unión baseemisor múltiple de Q1.
Es muy conveniente comprender la naturaleza de la circuitería en la
entrada y en la salida de la compuerta básica TTL ya que esto nos ayudará para
el análisis y el diseño de circuitos digitales tanto con esta familia lógica como
también con familias más actuales como la CMOS.
103
El transistor de entrada de
emisor múltiple puede tener
hasta ocho emisores, es decir,
puede conformar una compuerta
NAND de hasta ocho entradas.
Las características de las entradas TTL provienen de la configuración
de emisor múltiple del transistor de entrada Q1. Los emisores múltiples de este
transistor se pueden interpretar, tal como muestra la Figura 4.13c, como un
arreglo o unión de dos diodos unidos por sus ánodos. Así, los diodos D2 y D3
representan las dos uniones base-emisor de Q1. Por lo tanto, la polarización en
directo de una o ambas de estas uniones de diodos lleva al transistor Q1 a
saturación. Sólo cuando todas las uniones están polarizadas inversamente el
transistor estará en corte o desactivado. Por otro lado, la salida de la compuerta
es un circuito tipo totem pole conformado por dos transistores, QA y QB, que
trabajan al corte y saturación, a modo de dos llaves electrónicas accionadas en
oposición, es decir que cuando QA está al corte (llave abierta) QB debe estar
saturado (llave cerrada) y viceversa. La función de QA es conectar Vcc a la
salida cuando está saturado colocando un nivel ALTO en la misma. La función
de QB es conectar la salida a tierra cuando está saturado, colocando un nivel
BAJO en la misma.
Operación del circuito: salida en nivel BAJO
Cuando los diodos D2 y D3
quedan polarizados
inversamente, sólo circula por
ellos una pequeña corriente
inversa de fuga del orden de los
10 μA.
Vamos a considerar el caso en que la salida está en BAJO. En la figura
2-5 se muestra el estado de los transistores y las entradas para esta situación:
ambas entradas E0 y E1 deben estar en valor ALTO, es decir, en un rango de
tensión de entre 2 y 5V. Consideraremos el caso de que estén conectadas a Vcc
= 5 V. Así, los dos diodos D2 y D3 que conforman las uniones base-emisor de
Q1 quedan polarizados inversamente y no conducen corriente, con lo que Q1
permanece al corte (no hay circulación de corriente de colector a emisor).
Figura 4.14 Circuito TTL básico
(Compuerta NAND). Valores lógicos de
entrada y estado de los transistores para
la salida en nivel BAJO.
En un transistor npn el circuito
base-colector es una unión pn, o
sea, un diodo cuyo ánodo es la
base y cuyo cátodo es el colector.
En esta situación, el transistor Q2 queda saturado, ya que la fuente de
alimentación Vcc inyectará corriente en la base de Q2 a través de R1 y del
diodo que conforma la unión base-colector de Q1 (como Q1 está al corte, la
unión base-colector queda polarizada en forma directa, estableciéndose una
circulación de corriente desde la fuente hacia la base de Q2 a través de R1 y la
unión base-colector de Q1).
104
La de tensión en la salida S en
nivel BAJO aumenta ante el
incremento de la corriente que
dicha salida drene o consuma de
las entradas TTL conectadas a
ella (ver Figura 4.6).
Con Q2 saturado se establece una circulación de corriente a través del
circuito colector-emisor de Q2 que fluirá hacia la base de QB con lo que dicho
transistor va a la saturación. Al mismo tiempo, la tensión del colector de Q2 que está conectado a la base de QA- se establece en aproximadamente 0,8 V ya
que es la suma de la diferencia de tensión entre base-emisor de QB saturado
(0,7 V) y la diferencia de tensión entre colector-emisor de Q2 saturado (0,1 V).
Este valor de tensión de 0,8 V está aplicado en la base de QA y es insuficiente
para polarizar a la unión base-emisor de este transistor ya que su emisor está
conectado a tierra a través del diodo D1 y el circuito colector-emisor del
transistor QB saturado, por lo que se necesita una tensión mayor a 0,1 V + 0,7 V
+ 0,7 V = 1,5 V aplicado sobre la base de QA para que este conduzca y así QA
permanece al corte. De hecho el diodo D1 se coloca para provocar una caída de
0,7 V en la malla y asegurar el corte de QA con QB saturado.
De esta manera, con QA al corte (interruptor superior del circuito totem
pole abierto) y QB saturado (interruptor inferior del circuito totem pole cerrado)
la salida S tendrá un voltaje de entre 0,4 V y 0,1 V, que es la diferencia de
tensión entre colector-emisor de QB saturado y que se corresponde con el nivel
lógico BAJO que debe producirse a la salida de la compuerta NAND cuando
ambas entradas están en ALTO.
Operación del circuito: salida en nivel ALTO
La corriente que fluye a tierra a
través de cada unión baseemisor de Q1 que se encuentre
polarizada en directo es de
aproximadamente 1,1 mA para
una compuerta TTL estándar.
Vamos a considerar ahora el caso en que la salida está en nivel ALTO.
Este nivel lógico en la salida se puede producir conectando alguna o ambas
entradas a nivel BAJO. En la Figura 4.13 se muestra el estado de los transistores
y las entradas para esta situación. En este caso, la entrada E1 está conectada a
tierra. Esto polarizará en directo al diodo que conforma la unión base-emisor
correspondiente a esta entrada, con lo que fluirá una corriente desde la fuente de
alimentación, a través de R1 y de dicho diodo base-emisor y a través del
terminal de entrada B hacia tierra y el transistor Q1 permanecerá saturado. El
colector de este transistor saturado tratará de drenar corriente de la base del
transistor Q2, con lo que este transistor quedará despolarizado -ya que es un
transistor npn- pasando así al estado de corte.
Figura 4.15 Circuito TTL básico
(Compuerta NAND). Ejemplo de valores
lógicos de entrada y estado de los
transistores para la salida en nivel ALTO.
105
La tensión de salida de nivel
ALTO disminuirá en la medida
que aumente la corriente que
dicha salida suministre a las
entradas TTL conectadas a ella.
(ver Figura 4.4)
Con Q2 al corte no hay circulación de corriente por el circuito de
colector-emisor con las siguientes dos consecuencias: no hay suministro de
corriente para la base del transistor QB, con lo que éste último queda al corte y
la tensión en la base del transistor QA será lo suficientemente grande como para
polarizar en directo a la unión base-emisor de QA y al diodo D1, de manera que
QA quedará saturado.
De esta manera, con QA saturado (interruptor superior del circuito
totem pole cerrado) y QB al corte (interruptor inferior del circuito totem pole
abierto) la salida X tendrá un voltaje cercano a la fuente de alimentación de 5 V,
que se corresponde con el nivel lógico ALTO que debe producirse a la salida de
la compuerta NAND cuando alguna o ambas entradas están en BAJO.
Otras compuertas TTL.
Si reemplazamos el transistor de entrada de emisor múltiple por un
transistor de un solo emisor y mantenemos la misma configuración de salida
tipo totem pole de la compuerta NAND ya vista, obtenemos una compuerta
inversora o compuerta NOT.
Si reemplazamos el transistor de entrada de emisor múltiple por varios
transistores de un solo emisor dispuestos en forma conveniente y de manera que
los terminales de los emisores de estos transistores sean las entradas del circuito
y mantenemos la misma configuración de salida tipo totem pole de la compuerta
NAND ya vista, obtenemos una compuerta NOR.
Disponiendo entonces los transistores de entrada en forma conveniente
para lograr a la salida la función lógica buscada, se pueden obtener los circuitos
de las otras compuertas.
Circuitos lógicos TTL
Finalmente, se pueden obtener circuitos lógicos más complejos con una
o más salidas (decodificadores, multiplexores, biestables, contadores, etc.)
combinando en forma conveniente los circuitos de entrada de las compuertas
lógicas necesarias para la implementación del circuito y manteniendo, para cada
salida del circuito, la misma configuración de salida tipo totem pole de la
compuerta NAND ya vista.
Figura 4.16 Diagrama en bloques que representa a
un circuito lógico cualquiera con n entradas y una
sola salida.
En la Figura 4.16 se muestra el diagrama en bloques que representa a un
circuito lógico cualquiera con una sola salida. El bloque funcional “lógica de
106
control” contiene la circuitería necesaria para generar sobre las salidas YA e YB
los valores de tensión que excitarán convenientemente las bases de los
transistores QA y QB (mientras un transistor está cortado, el otro permanece
saturado) de acuerdo al valor lógico que debe adoptar la salida S en función de
los valores presentes en las entradas del circuito lógico.
Los transistores QA y QB actúan a modo de interruptores electrónicos,
por lo que en el diagrama en bloques podemos reemplazar los transistores por
los esquemas usados para representar a estos interruptores. Así, en la Figura
4.17 se muestran los estados de estos interruptores para cuando la salida X se
encuentra en valor BAJO y ALTO (por simplicidad, se omite la representación
del diodo D1).
Figura 4.17
Diagramas en bloques que representan a un circuito lógico cualquiera con n entradas y una sola salida
mostrando los estados de los interruptores para ambos estados de la salida.
Por último, podemos extender este diagrama para que represente a un
circuito lógico con varias salidas, en donde para cada salida tendremos una
configuración tipo totem pole y el bloque “lógica de control” generará todos los
pares de salidas necesarios para manejar adecuadamente cada configuración de
salida.
Resumen:
Todos los circuitos TTL tienen una estructura similar. En las
compuertas NAND y AND se usan entradas de transistor con emisor múltiple;
en las compuertas NOR y OR se usan transistores de entrada (de un solo
emisor) separados. En cualquier caso, la entrada será el cátodo (región n) de una
unión pn, de modo que un voltaje ALTO de entrada llevará la unión al corte y
sólo fluirá una pequeña corriente de fuga. A la inversa, un voltaje BAJO de
entrada llevará la unión a la saturación y fluirá una corriente relativamente
grande. La mayoría de los circuitos TTL tendrán algún tipo de configuración de
salida tipo totem pole. Hay algunas excepciones que no se analizarán en este
curso.
Salida lógica de tres estados
La salida lógica de tres estados o triestado es un tipo de circuitería de
salida que se usa en las familias lógicas TTL y CMOS. Este tercer estado se
consigue haciendo que el terminal de salida presente una impedancia muy alta
107
respecto de tierra (nivel de referencia de cero volts) y respecto de la fuente de
alimentación. En estas condiciones, se considera que la salida queda
eléctricamente desconectada del resto del circuito, como si se tratara de un
circuito abierto. También decimos que la salida permanece sin referencia a
ninguna tensión o punto del circuito o que permanece en un estado flotante.
Llamaremos a este tercer estado de salida estado de alta impedancia
(High Z o Hi-Z) o estado de desconexión eléctrica o simplemente tercer
estado.
Figura 4.18 Diagrama en bloques
de un circuito lógico con una salida
de tres estados.
En la Figura 4.18 se muestra el diagrama en bloques que representa a un
circuito lógico cualquiera con una salida de tres estados, donde se ha separado
el circuito de salida del resto del circuito lógico. El bloque funcional Lógica de
control recibe las señales de entrada de la función lógica y una entrada de
habilitación que llamaremos EN (de ENABLE = habilitar). Este bloque lógica
de control contiene la circuitería necesaria para generar las señales internas YA
e YB, que gobiernan el valor de la salida S, de acuerdo a la función
implementada y los valores presentes en las entradas del circuito lógico. El
circuito de salida está conformado por los transistores QA y QB en disposición
totem pole. Las señales YA e YB son valores de tensión que excitarán
convenientemente las bases de los transistores QA y QB, que trabajan al corte o
saturación a modo de interruptores electrónicos. Analizaremos a continuación
cada caso.
Cuando la señal de habilitación está activa, EN = 1, las señales YA e YB
operan en forma normal, esto es, aplicando valores de tensión a las bases de QA
y QB para que la salida adopte el valor BAJO o ALTO, de acuerdo a las
entradas del circuito lógico.


Para generar el nivel lógico BAJO en la salida S, la señal YA debe poner al
transistor QA en estado de corte (interruptor abierto) y la señal YB debe
poner al transistor QB en estado de saturación (interruptor cerrado). En
tales condiciones, la salida S se encontrará a un valor de tensión
aproximado de 0,1 V, que es la diferencia de tensión entre colector y
emisor del transistor QB saturado y se corresponde con el nivel lógico
BAJO.
Para generar el nivel lógico ALTO en la salida S, la señal YA debe poner
al transistor QA en estado de saturación (interruptor cerrado) y la señal YB
debe poner al transistor QB en estado de corte (interruptor abierto). En
tales condiciones, la salida S se encontrará a un valor de tensión cercano a
la tensión de alimentación de 5 V, ya que solo existen las caídas de tensión
entre colector y emisor de QA saturado (0,1 V) y el diodo D1 en
108
conducción (0,7 V), y este valor de tensión se corresponde con el nivel
lógico ALTO.
En resumen, cuando EN = 1, el bloque lógica de control genera las
señales YA e YB para operar los transistores QA y QB en oposición: mientras
un transistor esté al corte el otro estará en saturación, colocando así el valor
lógico ALTO o BAJO en la salida S, de acuerdo a las entradas de la función
lógica. Observe los estados de salida del circuito para EN = 1 en el diagrama en
bloques de la Figura 4.19, donde los transistores QA y QB se han reemplazado
por sendos interruptores.
Cuando la señal de habilitación está inactiva, EN = 0, las salidas YA e
YB adquieren valores tales que ambos transistores QA y QB pasan al estado de
corte. En tales condiciones, la salida S se encontrará esencialmente aislada del
resto del circuito (interruptores abiertos). Entonces, decimos que la salida del
circuito está deshabilitada, pasando a su estado de alta impedancia Hi-Z o de
desconexión eléctrica, tal como se ilustra en la Figura 4.19.
Figura 4.19 Condiciones de salida para un
circuito lógico de tres estados:
Ventajas de esta configuración
Las salidas de los dispositivos lógicos triestados presentan la ventaja de
poder conectarse compartiendo el uso de un mismo conductor (por ejemplo, las
líneas de un bus común), siempre y cuando solamente una de ellas, o ninguna,
109
se encuentre habilitada para volcar su valor lógico a la línea común, ya que si
más de una salida es habilitada en un mismo tiempo, dichos terminales de salida
quedarán cortocircuitados, generando un flujo de corriente que puede dañar los
transistores de las salidas interconectadas.
Buffer o controlador (driver)
Figura 4.20 Símbolos de los
búferes no inversor e inversor
a) Buffer no inversor
b) Buffer inversor
En electrónica digital, un buffer o controlador es un circuito lógico que
posee una entrada y una salida y ha sido diseñado para tener una corriente de
salida o capacidad de carga mayor que un circuito lógico común, de manera de
poder excitar muchas compuertas o entradas de circuitos lógicos. Su lógica de
funcionamiento puede ser inversora o no inversora. En la Figura 4.20 (a) y (b)
se muestran los símbolos de los buffers no inversor e inversor respectivamente
y como puede verse, es similar al símbolo de una compuerta inversora.
Estos buffers son utilizados a modo de amplificadores de corriente.
Cuando la salida de un circuito lógico no es capaz de manejar un determinado
número de entradas, entonces se coloca, a modo de una interfaz, un buffer entre
la salida del circuito y las entradas a ser excitadas. El buffer consume poca
corriente de la salida del circuito lógico y a su vez es capaz de suministrar o
drenar, según sea el caso, una corriente mayor a su salida para poder manejar
todas las entradas que se le conecten.
Buffer de tres estados
Este es el circuito lógico con salida de tres estados más sencillo. Tal
como se ilustra en el diagrama en bloques de la Figura 4.21, se agrega una
entrada de habilitación a la lógica de control de un buffer común para conseguir
así un buffer de tres estados.
Las señales de habilitación de los circuitos lógicos de tres estados, al
igual que cualquier otra señal de control, pueden ser activas en nivel ALTO o
bien activas en nivel BAJO, es decir que habilitan la salida del circuito cuando
adquieren un valor lógico ALTO o BAJO respectivamente.
Figura 4.21 Diagrama en bloques
de un búfer no inversor de tres
estados
En las Figura 4.22 (a) y (b) se muestran los símbolos y las tablas de
verdad de un buffer no inversor triestado con una entrada de habilitación EN
activa en ALTO y una entrada de habilitación
activa en BAJO,
respectivamente.
110
Figura 4.22 Símbolos y tablas de verdad de
buffers no inversores triestado.
a) Buffer no inversor de tres estados con
entrada de habilitación activa en ALTO.
b) Buffer no inversor de tres estados con
entrada de habilitación activa en BAJO.
En la Figura 4.23 (a) y (b) se muestran los símbolos y las tablas de verdad
de un buffer inversor triestado con una entrada de habilitación EN activa en
ALTO y una entrada de habilitación
activa en BAJO, respectivamente.
Advierta que el símbolo X en las columnas de entrada de las tablas
mostradas en la Figura 4.22, no representan inespecificaciones, sino que sirven
para representar la tabla de verdad en forma condensada. En lugar de presentar
todas las combinaciones, el símbolo X se usa para representar tanto 1 como 0, y
por ende, en la tabla de la Figura 4.22a la entrada mostrada como 0X representa
las combinaciones de entrada 00 y 01.
Figura 4.23 Símbolos y tablas de verdad de
buffers inversores triestado.
a) Buffer inversor de tres estados con entrada
de habilitación activa en ALTO.
b) Buffer inversor de tres estados con entrada
de habilitación activa en BAJO.
Aplicaciones
Los buffers triestado tienen muchas aplicaciones en circuitos en los que
varias señales se conectan a líneas comunes (buses), ya que manejando su
entrada de habilitación, un buffer puede hacerse funcionar en estado de baja
impedancia (Low Z) o de alta impedancia (Hi-Z). Así, es posible permitir o no
el paso de una señal lógica a través del buffer mediante la conexión o
desconexión eléctrica de su salida respecto de la o las entradas de otros
dispositivos.
A partir de lo ilustrado en la Figura 4.24a podemos obtener la idea básica
de la utilidad de los buffers triestado. En este caso tenemos tres señales lógicas
A, B y C conectadas a una línea de bus común mediante buffers triestado no
inversores con señal de habilitación activa en ALTO. Esta configuración
permite transmitir a través del bus cualquiera de las señales A, B y C hacia otros
circuitos, mediante la habilitación del buffer apropiado. Las señales de
habilitación de los buffers son generadas por sendos circuitos compuestos por
un interruptor en serie con una resistencia en configuración de pull down.
111
Por ejemplo, considere la situación que se muestra en la Figura 4.24b
donde las posiciones de los interruptores generan EB = 1 y EA = EC = 0. Esto
deshabilita los buffers superior e inferior, de modo que sus salidas están en
estado de alta impedancia y esencialmente están desconectadas del bus. El
buffer ubicado al medio está habilitado, de manera que la señal lógica B
aplicada en su entrada, es aplicada también sobre el bus, desde donde es
transmitida a otros dispositivos conectados al bus.
Figura 4.24 a) Buffers triestado usados para conectar varias señales a un bus común. b) Condiciones para la transmisión
de la señal lógica B al bus.
Cuando las salidas triestado se conectan juntas, como en la Figura 4.24,
es importante recordar que no se debe habilitar más de una salida a la vez. De
otro modo, dos o más salidas activas estarían interconectadas, lo que produciría
corrientes dañinas. Incluso si no ocurriera daño sobre las salidas, el voltaje
resultante sobre el bus correspondería a un estado lógico inválido.
Buffer bidireccional
Figura 4.25 Búfer bidireccional
de una línea implementado con
dos búferes triestados.
El buffer bidireccional (a veces llamado transceptor bidireccional)
permite transmitir señales lógicas en ambas direcciones. Esto permite la
interconexión de dispositivos que pueden enviar o recibir información a través
de líneas de datos que en un momento actúan como entradas y en otros como
salidas (como por ejemplo memorias, puertas de entrada / salida, etc.) Se puede
construir un buffer bidireccional usando dos buffers triestados dispuestos en
oposición, tal como se muestra en la Figura 4.25.
De esta manera, sólo uno de los buffers estará habilitado para la
transferencia de datos de acuerdo al valor de la señal de habilitación DIR. Si
DIR = 1, el buffer superior queda habilitado y el inferior queda en estado de alta
impedancia (Hi-Z) gracias al inversor, con lo que se transfieren datos de A hacia
B; caso contrario, con DIR = 0, la transferencia se realiza de B hacia A (el
buffer superior queda en Hi-Z y el inferior habilitado).
112
El buffer bidireccional mostrado en la Figura 4.25 implementa la
transferencia de datos con una sola línea. La Figura 4.26 muestra un buffer
bidireccional de dos líneas. Observe que la lógica para controlar la habilitación
de los buffers es común a las dos líneas y puede extenderse para implementar
una interfaz de n líneas. La Figura 4.26 muestra también un símbolo propuesto
para la interfaz y la tabla de verdad que describe su funcionamiento.
Figura 4.26 Buffer bidireccional de
dos líneas, símbolo y tabla de
verdad.
Buffer bidireccional triestado
Figura 4.27 Buffer bidireccional
triestado.
EN
DIR
0
1
1
X
0
1
Transferencia
de datos
Ninguna
A -> B
B -> A
En un buffer bidireccional no se tiene la posibilidad de interrumpir la
transferencia de datos. Observe que los buffers colocados en oposición son
habilitados por el inversor en forma complementaria, de manera que siempre se
encontrará habilitada la transferencia de datos en alguna de las dos direcciones.
Al analizar el buffer bidireccional de la Figura 4.25 puede observarse que
para poder deshabilitar la transferencia de datos en ambos sentidos se debería
tener la posibilidad de poner en estado de alta impedancia ambos buffers. En la
Figura 4.27 se muestra cómo se puede obtener esta posibilidad mediante el
agregado de una lógica de control muy sencilla.
El funcionamiento del circuito es el siguiente: Cuando la señal de
habilitación EN = 0, las salidas de ambas compuertas AND se hacen 0 y la señal
de habilitación de ambos búferes permanecen inactivas, con lo que ambos
quedan en Hi-Z y se interrumpe la transferencia de datos en ambas direcciones.
Si la señal de habilitación toma el valor EN = 1, entonces sólo una de las salidas
de las compuertas AND se colocará en 1, en función del valor de la señal DIR.
Cuando DIR = 1, la salida de la compuerta inferior se coloca en 1 y habilita la
transferencia de datos desde A hacia B. Si DIR = 0, la salida de la compuerta
superior se coloca en 1 debido al inversor, habilitando la transferencia de datos
desde B hacia A.
La Figura 4.27 muestra un buffer bidireccional triestado de una sola línea,
pero puede utilizarse la lógica de control para gobernar las señales de
habilitación de n líneas.
El uso de estos buffers permite que varios dispositivos que posean líneas
de datos bidireccionales puedan ser conectados a un bus común y que cuando se
habilite uno de estos dispositivos, éste pueda enviar o recibir información a
través del bus. Tanto las salidas del bus de datos de un microprocesador (µP)
como las líneas de datos de una memoria RAM, poseen buffers bidireccionales
triestados que les permiten realizar la transferencia de datos en ambas
direcciones (lectura y escritura).
113
Circuitos combinacionales
Los sistemas lógicos se pueden clasificar en dos clases: circuitos
combinacionales y circuitos secuenciales.
Un circuito combinacional es un sistema lógico cuya salida depende en
todo momento de los valores que adopten las variables de entrada. Es decir, en
cada instante de tiempo, el estado de la salida depende únicamente del estado de
sus entradas y no influyen los valores de las entradas de instantes anteriores.
En cambio, un circuito secuencial es un sistema lógico cuyas salidas
dependen de los valores presente en sus entradas y de los valores de dichas
entradas en instantes anteriores. Este tipo de circuitos se tratará más adelante.
En el diseño de un circuito combinacional, cada salida queda especificada
por una función lógica, de acuerdo a la lógica que se debe lograr. Cada función
es representable en una tabla de verdad y simplificable por métodos como el de
Karnaugh. La implementación de la función minimizada puede realizarse en
forma directa en base a compuertas lógicas (compuertas básicas, compuertas
NAND, compuertas NOR, etc.) disponibles en CI de escala SSI.
En relación con su funcionalidad, se pueden agrupar los circuitos lógicos
combinacionales en algunos tipos fundamentales debido a que implementan
funciones de base comúnmente requeridas en el diseño de sistemas lógicos.
Entre los de mayor aplicación figuran los codificadores, decodificadores,
conversores de código, multiplexores, demultiplexores, comparadores de
magnitud y sumadores. Aunque estos circuitos combinacionales pueden ser
implementados en base a compuertas lógicas, se trata de bloques funcionales
completos. Por esta razón, los fabricantes ofrecen una serie de CI que sintetizan
estos circuitos lógicos. Por su complejidad, estos CI pertenecen a la escala de
integración MSI y en comparación a la implementación basada en compuertas,
su uso representa ventajas tales como son la disminución de los CI necesarios,
menor tiempo de diseño, menor número de conexiones externas y
simplificación del mantenimiento.
En los próximos apartados se presentan de forma simplificada los
circuitos combinacionales que ofrecen las funcionalidades típicas, pero se debe
tener en cuenta que los fabricantes de CI suelen definir diseños con entradas y
salidas adicionales para agregar otras características a la funcionalidad básica.
En tal caso, estas características se encontrarán completamente detalladas en la
hoja de datos respectiva del CI.
Codificadores
Una funcionalidad básica en el diseño de sistemas digitales consiste en
asignar a una señal de entrada un código binario que permita su posterior
tratamiento.
Esta funcionalidad se implementa mediante bloques combinacionales
denominados codificadores. Un codificador cumple esta función para un
conjunto de entradas, de las cuales se supone que solamente una de ellas puede
encontrarse activa a la vez. Las salidas del codificador formarán una
combinación binaria representativa de la entrada activa. En otras palabras, las
salidas del codificador forman el código binario correspondiente a la entrada
activa.
De la funcionalidad descripta se deduce que si el codificador tiene n
entradas y m salidas, se debe cumplir que
.
La Figura 4.28 muestra el símbolo lógico y la tabla de verdad de un
codificador de cuatro entradas. Observe que en la figura se muestra una tabla de
114
verdad educida, ya que no muestra todas las combinaciones de entrada posibles,
sino sólo aquellas que comprenden una sola entrada activa a la vez.
E0
1
0
0
0
E1
0
1
0
0
E2
0
0
1
0
E3
0
0
0
1
S1
0
0
1
1
S0
0
1
0
1
Figura 4.28 Símbolo lógico y tabla de
verdad de un codificador de 4 a 2
líneas.
En la Figura 4.29 se muestran las salidas de un codificador de 4 a 2 líneas
para los distintos casos de entrada activa. Nótese que se ejemplifica para un
codificador con entradas activas en ALTO y salidas activas en ALTO.
Figura 4.29 Salidas de un codificador de 4 a 2 líneas según la entrada activa.
Considere, por ejemplo, un sistema digital que recibe como entradas las
señales provenientes de un teclado numérico. Cada tecla tiene asociada una
señal que presentará un estado activo cuando la tecla sea pulsada. Estas señales
se conectan como entradas del codificador. Cuando se presiona una tecla, se
activa la señal respectiva y el codificador presenta en sus salidas el código
binario correspondiente a la entrada activada y por ende, a la tecla pulsada.
Codificadores con prioridad
Una limitación del tipo de codificador mostrado en la Figura 4.28 es
que solamente una entrada puede estar activa en un momento dado, pero no
siempre es posible impedir que se active más de una entrada en forma
simultánea. Para resolver esta limitación los codificadores establecen una
prioridad para cada entrada, garantizando que en caso que se presenten varias
entradas activas en forma simultánea, solamente se codificará una entrada. En
caso que haya más de una entrada activa a la vez, sólo se generará el código de
salida correspondiente a la entrada de mayor prioridad.
115
E0
1
X
X
X
X
X
X
X
E1
0
1
X
X
X
X
X
X
E2
0
0
1
X
X
X
X
X
E3
0
0
0
1
X
X
X
X
E4
0
0
0
0
1
X
X
X
E5
0
0
0
0
0
1
X
X
E6
0
0
0
0
0
0
1
X
E7
0
0
0
0
0
0
0
1
S2
0
0
0
0
1
1
1
1
S1
0
0
1
1
0
0
1
1
S0
0
1
0
1
0
1
0
1
Figura 4.30 a) Tabla de verdad de un codificador de 8 a 3 líneas con prioridad. b) Estado de las salidas cuando se
encuentran activas las entradas E1 y E6.
En la Figura 4.30 se muestra la tabla de verdad de un codificador de 8 a
3 líneas, con prioridad y con entradas y salidas activas en nivel ALTO. Al
presentarse más de una entrada activa, el codificador genera la salida
correspondiente a la entrada activa de mayor prioridad, ignorando el estado de
las entradas de menor prioridad. Observe que la tabla de verdad refleja estas
condiciones con el símbolo X en las columnas de entrada.
Decodificadores
La funcionalidad inversa a la de un codificador consiste en identificar
un código binario de n bits de entrada mediante la activación de una salida entre
m posibles. Esta tarea es la que realizan los circuitos decodificadores. Es decir
que el funcionamiento del decodificador consiste en activar la salida
correspondiente al código binario que forman los valores de entrada.
De acuerdo a esta funcionalidad, si el decodificador posee n entradas y
m salidas, se cumple que
,
En la Figura 4.31 se muestra un decodificador de 2 a 4 líneas con
entradas y salidas activas en ALTO.
E1
0
0
1
1
E0
0
1
0
1
S0
1
0
0
0
S1
0
1
0
0
S2
0
0
1
0
S3
0
0
0
1
Figura 4.31 Símbolo lógico y tabla de
verdad de un decodificador de 2 a 4 líneas.
El decodificador presenta sólo una salida en nivel activo. La salida que
se activa es la que corresponde al código binario de entrada, como se muestra a
continuación:
116
Figura 4.32 Salida activa de un decodificador de 2 a 4 líneas según el código binario presente en las entradas.
Entradas de habilitación
Además de las n líneas de entrada descriptas, los decodificadores se
diseñan con una o más entradas de habilitación que sirven para controlar su
funcionamiento. La Figura 4.33 muestra como ejemplo el símbolo lógico y la
tabla de verdad de un decodificador de 2 a 4 líneas con una entrada de
habilitación.
ENABLE
0
1
1
1
1
Figura 4.33 Símbolo lógico y
tabla de verdad de un
decodificador de 2 a 4 líneas
con entrada de habilitación.
E1
X
0
0
1
1
E0
X
0
1
0
1
S3
0
0
0
0
1
S2
0
0
0
1
0
S1
0
0
1
0
0
S0
0
1
0
0
0
El decodificador de la Figura 4.33 tiene una entrada de habilitación
ENABLE activa en ALTO. Cuando la entrada ENABLE se encuentra en nivel
activo, el decodificador funciona normalmente, de manera que ante el código
binario formado por las entradas el decodificador pone en nivel activo la salida
correspondiente. En caso que la entrada de habilitación ENABLE se encuentre
inactiva, todas las salidas se forzarán a nivel inactivo, sin importar el valor de
las entradas, tal como indican los símbolos X en las columnas de entrada de la
tabla de verdad.
Decodificadores especiales
Algunos decodificadores especiales, diseñados para una funcionalidad
particular, se apartan de la definición en cuanto a la relación entre la cantidad de
entradas y salidas, Tienen n líneas de entrada pero no presentan
salidas.
Veremos a continuación dos de los decodificadores especiales más utilizados.
Decodificador BCD a decimal
Este decodificador recibe como entradas los bits de un número
codificado en BCD natural y activa una de sus salidas en forma
correspondiente. Dado que las entradas forman un número codificado en BCD,
este decodificador posee cuatro líneas de entrada (
), pero sólo tiene 10
líneas de salida (
). Cuando en las entradas se presenta una combinación
BCD válida, se activa la salida correspondiente. Cuando en las entradas se
presenta una combinación no válida, no se activa ninguna de las salidas. En la
117
Figura 4.34 se muestra el símbolo lógico y la tabla de verdad del decodificador
BCD a decimal.
Figura 4.34 Símbolo lógico y tabla de
verdad de un decodificador BCD a
decimal.
D
C
B
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Salida
activa
O0
O1
O2
O3
O4
O5
O6
O7
O8
O9
Ninguna
Ninguna
Ninguna
Ninguna
Ninguna
Ninguna
Decodificador BCD a siete segmentos
Este decodificador recibe como entrada un número codificado en BCD
natural y proporciona las salidas necesarias para mostrar en un visualizador led
de siete segmentos el dígito decimal correspondiente. Dado que el código de
entrada se debe expresar en BCD, el decodificador presenta cuatro líneas de
entrada (
), pero sólo requiere 7 líneas de salida (
).
Observe que cuando en las entradas se presenta una combinación BCD
válida, no se activa una sola salida, sino el patrón de salidas correspondiente al
dígito decimal representado.
En la Figura 4.35 se muestra un esquema de conexión de este
decodificador y los patrones de encendido del visualizador led de siete
segmentos para cada dígito decimal. Nótese que el nivel activo de las salidas
debe ser compatible con el tipo de visualizador. En este ejemplo, el
decodificador posee salidas activas en BAJO, por lo que las líneas de salida
deben conectarse a los cátodos de un visualizador led con ánodo común. Otro
aspecto a tener en cuenta es la asociación de resistencias con cada led para
limitar la circulación de corriente a valores nominales.
118
Figura 4.35 Esquema de conexión de un decodificador BCD a siete segmentos.
Multiplexer
Un multiplexer es un circuito combinacional que actúa como
seleccionador de una de sus entradas, presentando en su salida el valor de la
entrada seleccionada. Por esta razón este circuito combinacional también se
conoce como selector digital. El multiplexer posee una sola línea de salida y
dos grupos de entradas: n entradas de datos y p entradas de selección (p =
log2n). La salida presenta el valor de la entrada de datos seleccionada por la
combinación presente en las entradas de selección.
En la Figura 4.36 se muestra el símbolo lógico y tabla de verdad de un
multiplexer de ocho entradas.
S2
0
0
0
0
1
1
1
1
Figura 4.36 Símbolo lógico y tabla de
verdad de un multiplexer de 8 entradas.
119
S1
0
0
1
1
0
0
1
1
S0
0
1
0
1
0
1
0
1
Z
I0
I1
I2
I3
I4
I5
I6
I7
Además de las entradas descriptas, los circuitos multiplexer
normalmente incluyen una entrada de habilitación. Otra característica común en
estos módulos es que disponen de una segunda salida, que presenta el valor
negado de la entrada seleccionada. En la Figura 4.37 se muestra un multiplexer
con entrada de habilitación activa en ALTO y salidas en forma directa y
complementada.
EN
0
1
1
1
1
Figura 4.37 Símbolo lógico y tabla de
verdad de un multiplexer de 4
entradas con entrada de habilitación.
S1
X
0
0
1
1
S0
X
0
1
0
1
Z
0
I0
I1
I2
I3
En la Figura 4.38 se muestra el funcionamiento de un multiplexer de 4
entradas con entrada de habilitación activa en ALTO. Observe que en ambos
casos del ejemplo, la entrada de habilitación se encuentra activa (EN = 1) y por
ende, la salida presenta el valor lógico de la entrada seleccionada. En caso que
la entrada de habilitación se encuentre en nivel inactivo (EN = 0), la salida del
multiplexer valdrá 0, sin importar los valores de las demás entradas.
Figura 4.38 Ejemplos del funcionamiento de un multiplexer de 4 entradas.
Demultiplexer
Un demultiplexer es un circuito combinacional cuya función consiste en
transferir a una de sus m líneas de salida el valor lógico presente en su única
entrada de datos. La línea de salida a la cual se transfiere el valor lógico de la
entrada de datos, se selecciona mediante la combinación de p entradas de
selección (p = log2m). Como surge de esta descripción, el demultiplexer cumple
la funcionalidad inversa a la de un multiplexer.
En la Figura 4.39 se muestra el símbolo lógico y tabla de verdad de un
demultiplexer de ocho salidas.
120
S2
0
0
0
0
1
1
1
1
S1
0
0
1
1
0
0
1
1
S0
0
1
0
1
0
1
0
1
O0
I
0
0
0
0
0
0
0
O1
0
I
0
0
0
0
0
0
O2
0
0
I
0
0
0
0
0
O3
0
0
0
I
0
0
0
0
O4
0
0
0
0
I
0
0
0
O5
0
0
0
0
0
I
0
0
O6
0
0
0
0
0
0
I
0
O7
0
0
0
0
0
0
0
I
Figura 4.39 Símbolo lógico y tabla de verdad de un demultiplexer de 8 salidas.
En la Figura 4.40 se muestra el funcionamiento de un demultiplexer de
4 salidas. En el ejemplo, se mantiene constante el valor de las entradas de
selección para resaltar que el valor lógico de la línea de entrada se transfiere a la
salida seleccionada.
Figura 4.40 Ejemplos del funcionamiento de un demultiplexer de 4 salidas.
Sumadores
Existen múltiples sistemas digitales que deben realizar operaciones
aritméticas. Los circuitos combinacionales aritméticos para operaciones de
suma y resta se implementan en base a bloques sumadores. Desde luego, estas
operaciones se llevarán a cabo en forma binaria, adecuándose a las
especificaciones particulares, tales como la longitud de palabra y el sistema de
representación.
Semisumador
El semisumador es un circuito combinacional que realiza la suma de dos
bits de entrada, produciendo como salidas un bit de resultado y un bit de
acarreo.
La Figura 4.41 muestra la tabla de verdad de la suma binaria de dos
números de un bit y la formación del resultado para todos los casos posibles,
incluyendo el acarreo. Puede observarse que tratándose de números de un bit, el
121
caso 1 + 1 = 102, genera un resultado que excede la capacidad de representación
de un bit.
A0
0
0
1
1
B0
0
1
0
1
S0
0
1
1
0
C0
0
0
0
1
Figura 4.41 Símbolo lógico, resultados posibles y
tabla de verdad de un semisumador.
Sumador completo
La suma binaria de números de n bits debe tener en cuenta que cuando
se suman los bits de peso i, puede producirse un acarreo hacia los bits de peso
i+1. La Figura 4.42 muestra el procedimiento para dos números de cuatro bits,
que puede generalizarse fácilmente a números de n bits. Obsérvese que si la
longitud de la representación es n, el último bit de acarreo no podrá incluirse en
la representación del resultado. Independientemente de esta limitación, el
circuito sumador debe generar la salida correspondiente a este último bit de
acarreo.
Donde:
Ai
Bi
Ci
Si
:
:
:
:
bit i del
bit i del
acarreo
bit i del
número A
número B
de la suma individual Ai-1 + Bi-1 + Ci-1
resultado S. Si = Ci + Ai + Bi (0 < i ≤ n)
Figura 4.42 Procedimiento de la suma binaria de números de cuatro bits.
El sumador completo es un circuito combinacional que presenta tres
líneas de entrada, por medio de las cuales recibe dos dígitos binarios A y B y un
bit de acarreo de entrada, Ci (Carrier in). Las salidas presentan el bit resultado
de la suma S y el bit de acarreo de salida Co (Carrier out).
La Figura 4.43 muestra el símbolo lógico y la tabla de verdad del
sumador completo.
Ci
0
0
0
0
1
1
1
1
Figura 4.43 Símbolo lógico y tabla de
verdad del sumador completo.
122
A
0
0
1
1
0
0
1
1
B
0
1
0
1
0
1
0
1
Co
0
0
0
1
0
1
1
1
S
0
1
1
0
1
0
0
1
A partir de esta unidad sumadora básica se puede formar un sumador
para números de n bits, conectándolos en cascada, como se muestra en la Figura
4.44.
Figura 4.44 Sumador de dos bits
implementado con dos
sumadores completos básicos
conectados en cascada.
Restadores
Como se mencionó anteriormente, los circuitos restadores se
implementan en base a los bloques sumadores. Para ello, se aplica la aritmética
de complemento a dos, es decir, para calcular A - B :
A  B  A  ( B) .
( B)  C 2( B)  C1( B)  1  B  1
luego: A  B  A  B  1
De esta forma, se puede implementar el restador de un bit mediante el
circuito sumador completo analizado en el apartado anterior.
Como se muestra en la Figura 4.45, para obtener el complemento a dos
del sustraendo B se debe colocar un inversor a la entrada B y poner el acarreo
de entrada siempre a uno.
Figura 4.45 Restador de un bit implementado con el
sumador básico.
En forma análoga al caso del sumador, se puede formar un restador para
cualquier número de bits, conectando bloques básicos en cascada.
-----------------------------------------------------123
Descargar