Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diseño de Circuitos
Diseño de Circuitos
Realizaciones ms compactas (al tener soluciones completas en un slo circuito integrado con
algunas pocas puertas extra para realizar la adaptacin en algunos casos).
Menos alambrado (puesto que para usar los circuitos MSI slo se requiere alambrar entradas y
salidas, la funcin lgica que realizan ya est alambrada en su interior)
Soluciones modulares (toda la lgica relacionada con una subfuncin est contenida en un slo
circuito integrado)
80
Captulo 7
Los circuitos combinacionales comercializados en circuito integrado MSI se pueden clasificar dentro de cuatro grandes divisiones: Circuitos aritmticos (sumadores y comparadores) Generadores de paridad Multiplexores y demultiplexores Codificadores y decodificadores En este captulo se tratarn algunos de los circuitos anteriores, sus aplicaciones, su principio de operacin, sus principales variantes, etc. Adems, se tratar tambin el principio de construccin de las memorias ROM por su ntima relacin con los decodificadores. 7.2.- CIRCUITOS SUMADORES El sumador binario es la clula fundamental de todos los circuitos aritmticos, ya que mediante sumas (y complementos) es posible realizar restas y como ya se vi en captulos anteriores con sumas y restas (adems de corrimientos) es posible realizar multiplicaciones y divisiones, en otras palabras, las cuatro operaciones aritmticas fundamentales se pueden realizar usando sumas. A continuacin se describe el diseo paso a paso de un sumador binario expandible de acuerdo al nmero de bits de los datos a sumar. 7.2.1.- EL MEDIO SUMADOR Un medio sumador es un sumador capaz de sumar dos datos de un slo bit y producir un bit de acarreo de salida. Como se muestra en el siguiente diagrama de bloques
A B
MEDIO SUMADOR
S C
La manera como realiza la suma y produce el acarreo el medio sumador se desglosa en la siguiente tabla de verdad AB CS 00 00 01 01 10 01 11 10 De lo cual es evidente la expresin lgica para cada salida: C= A.B y S =A/B. Con lo cual, la implementacin del medio sumador es como se muestra a continuacin
A B
C 81
Captulo 7
7.2.2.- EL SUMADOR COMPLETO DE UN BIT
El medio sumador no puede ser interconectado con otros medios sumadores para formar un sumador ms grande, por ello es necesario disear un sumador que admita otra entrada aparte de los datos a sumar, es decir, un sumador de 3 datos de 1 bit, ste es denominado sumador completo y su diagrama de bloques es como se muestra a continuacin
A B Co
(acarreo de entrada)
SUMADOR COMPLETO
S C1
(acarreo de salida)
En la siguiente tabla de verdad se muestra la manera como este sumador realiza su funcin A B Co 000 001 010 011 100 101 110 111 C1 S 0 0 0 1 0 1 1 0 0 1 1 0 1 0 1 1
Un anlisis de esta tabla de verdad y el uso de Mapas de Karnaugh nos lleva a las siguientes expresiones para C1 y S: S = A / B / C 0 , C 1 = AB + (A / B)C 0 Con lo cual la implementacin del sumador completo es como se muestra en la siguiente figura
A B Co
C1
Medios sumadores
7.2.3.- EL SUMADOR BINARIO DE n BITS La ventaja del sumador completo de un bit es que permite conectarse en cascada con otros sumadores completos para realizar un sumador completo de varios bits. Por ejemplo, en la siguiente
82
Captulo 7
figura se muestra como se conectaran cuatro sumadores completos de 1 bit para construir un sumador binario de cuatro bits.
A3 B3 A2 B2 A1 B1 Ao Bo
C4
A B Sumador C1 Completo Co S
C3
A B Sumador C1 Completo Co S
C2
A B Sumador C1 Completo Co S
C1
A B Sumador C1 Completo Co S
Co
S3 (MSB)
S2
S1
So (LSB)
El sumador mostrado en la figura anterior puede realizar la suma de dos datos binarios de cuatro bits, el dato A=A3A2A1A0 y el dato B =B3B2B1B0 para producir la suma A+B +C0=S=C4S3S2S1S0 con la posibilidad de recibir un acarreo de entrada C0 y de generar un acarreo de salida C4. Estos acarreos permiten ver a este sumador como un solo bloque que se puede a su vez conectar en cascada con otro bloque idntico para formar un sumador binario de 8 bits, y as sucesivamente, uno de 16 o uno de 32, etc. 7.2.4.- SUMADORES EN CIRCUITO INTEGRADO Algunos sumadores binarios en circuito integrado de la familia TTL son los siguientes: 7480 Sumador Completo de 1 bit. 7482 Sumador Completo de 2 bits. 7483 Sumador Completo de 4 bits. 74283 igual al 7483 pero con diagrama de patitas diferente En la siguiente figura se muestra el diagrama funcional del 74LS83 (sumador binario de 4 bits)
1 3 8 10
A4 A3 A2 A1 B4 B3 B2 B1 Co
74LS83
S4 S3 S2 S1
16 4 7 11 13
15 2 6 9
Vcc
5
Gnd
12
C4
14
7.2.4.1.- CIRCUITOS CON SUMADORES A continuacin se presentan algunos ejemplos sencillos sobre el uso de circuitos sumadores binarios en aplicaciones donde se requieren funciones ligeramente diferentes a las que el circuito realiza.
83
Captulo 7
Convertidor BCD - BCD exceso tres.- Una aplicacin directa de un sumador de cuatro bits como el 7483 es un convertidor de BCD a BCD exceso tres que se puede realizar sumado al dato de entrada A, una constante B=3=(0011)2 como se muestra en la figura siguiente
1 3 8 10
DATO BCD
A4 A3 A2 A1 B4 B3 B2 B1 Co
74LS83
S4 S3 S2 S1
Vcc
16 4 7 11 13
15 2 6 9
Vcc
5
Gnd
12
C4
14
Sumador - Sustractor de 4 bits.- Utilizando el mtodo expuesto en el segundo captulo para realizar la resta A-B usando la suma de A + complemento a dos de B podemos realizar un sumador/restador binario de cuatro bits como sigue Dato A Dato B
Vcc Restar Sumar
1 3 8 10
A4 A3 A2 A1 B4 B3 B2 B1 Co
74LS83
S4 S3 S2 S1
15 2 6 9
16 4 7 11 13
Vcc
5
Gnd
12
C4
14
Obsrvese que el bloque de cuatro puertas EXOR realiza el complemento a uno del dato B cuando el switch est en la posicin de restar y Co le suma 1 a este complemento a uno de B para obtener su complemento a dos. Sumador BCD.- El problema de sumar dos datos BCD usando un sumador binario (como el 7483) ocurre cuando el resultado de la suma es mayor que 9, ya que entonces el sumador binario producir un resultado errneo en BCD. Por ejemplo, al sumar 4+7 el resultado binario ser 15=(1111)2 mientras que el resultado esperado en BCD es 15=(1 0101)BCD. Obsrvese que si al 15 producido por el sumador binario le sumramos un 6: 15+6=21 =(10101)2 El resultado sera correcto en BCD! Lo ilustrado en el caso de la suma 4+7 se cumple en general, de manera que para realizar una suma de dos datos BCD se proceder de la siguiente manera:
i.
84
Captulo 7 Diseo con Circuitos M.S.I. ii. Si el resultado es mayor o igual que 10, el resultado correcto en BCD es el resultado en binario
ms 6 Lo anterior se puede resolver usando un par de sumadores binarios: unao para realizar la primera suma y otro para realizar la correccin (sumar 6) en el caso necesario. Adems se requiere un circuito lgico comparador para que active un indicador de que el resultado es mayor o igual que 10. En la siguiente figura se muestra la implementacin del sumador de dos dgitos BCD
A4 A3 74LS83 A2 S4 A1 S3 S2 B4 S1 B3 B2 B1 Co C4 A4 A3 74LS83 A2 S4 A1 S3 S2 B4 S1 B3 B2 B1 Co C4 C5
Comparador con 10
7.3.- MULTIPLEXORES Y DEMULTIPLEXORES La idea fundamental en la utilizacin de multiplexores (MUX) y demultiplexores (DEMUX) es el ahorro de lneas de comunicacin, es decir, el uso de una sola lnea para realizar mltiples funciones, o para conectar a travs de ella mltiples fuentes de informacin o seales a transmitir. Cmo es posible utilizar una sla lnea para transmitir diversas seales de informacin?. La respuesta est obviamente en compartir por tiempo la lnea, es decir, en un momento dado slo una de las seales puede ser transmitida. El esquema fundamental para lograr esto, se muestra en la siguiente figura: MULTIPLEXOR
Dato1 Dato2
DEMULTIPLEXOR
Dato1 Dato2
...
Lnea de transmisin
Dato 2
Dato 2
...
k Lneas de seleccin
Obsrvese que con el esquema de transmisin anterior se produce un considerable ahorro de lneas de transmisin, ya que en lugar de 2k lneas se requieren slo k+1 lneas, este ahorro es ms
...
...
85
Captulo 7
importante a medida que la distancia entre el mux y el demux es mayor. Sin embargo, el esquema no solo es til para ahorrar lneas como se ver ms adelante.
7.3.1.- MULTIPLEXORES DIGITALES El esquema de la figura anterior permite la transmisin de seales analgicas, de hecho puede hacerlo en ambos sentidos, de manera que un multiplexor analgico es a la vez un demultiplexor analgico y su funcin slo depende de hacia donde viaja la informacin. No sucede as si la informacin es digital, ya que los dispositivos digitales tienen claramente definido el sentido en que viaja la informacin.
O Definiremos un multiplexor digital (mux) o selector de datos como un circuito lgico combinacional
que tiene varias lineas de entrada y que, mediante otras lineas de seleccin, determina cual de las lineas de entrada se conecta a la salida. Con el propsito de ilustrar cmo se construye y como funciona internamente un multiplexor digital, a continuacin se presenta el diseo de uno sencillo Ejemplo: Disear un mux de 4 a 1. Solucin: Para seleccionar 4=22 lineas de datos se rquieren 2 lineas de seleccin, por lo tanto, el diagrama de bloques del circuito a disear es como sigue
D0 D1 D2 D3 MUX de 4 a 1 Y
B A Como se puede ver, la tabla de verdad para describir el funcionamiento del circuito anterior requerir 26= 64 renglones, por ello, en este caso se presenta una versin reducida de dicha tabla, para lograr esta versin reducida consideramos slo como entradas las lineas de seleccin B, A y escribimos la salida en trminos de las otras cuatro entradas: B 0 0 1 1 A 0 1 0 1 Y D0 D1 D2 D3
O Este tipo de tabla de verdad se denomina Tabla de Verdad con Variables Introducidas, dado que
para formarla se han introducido las 4 variables de entrada D0, D1, D2, D3 que en una tabla de verdad normal iran afuera de la tabla.
86
Captulo 7
En este caso, un Mapa de Karnaugh no sera de mucha utilidad, ya que ste a su vez tendra variables introducidas (este tipo de mapas se ver ms adelante). Sin embargo, un anlisis del significado de la tabla de verdad anterior nos lleva a la siguiente expresin para la salida
Y = BAD 0 + BAD 1 + BAD 2 + BAD 3
D0
D1 Y D2
D3
A B
La siguiente es una lista de los MUX de circuito integrado ms populares de la familia TTL: 74157: 74158: 74153: 74151: 74152: 74150: Cuatro mux de 2 a 1 con seal strobe Cuatro mux de 2 a 1 con seal strobe salidas invertidas Dos mux de 4 a 1 con strobe Un mux de 8 a 1 (salida invertida y sin invertir), con strobe Un mux de 8 a 1 (salida invertida) Un mux de 16 a 1 con strobe
Como un ejemplo de la informacin que proporciona el fabricante sobre un multiplexor, se presenta a continuacin una descripcin del 74151, comenzando por su diagrama de patitas que se muestra en la siguiente figura. En esta descripcin slo se presentar la informacin lgica del circuito, omitiendo la informacin sobre datos elctricos que tambin proporciona el fabricante, para mayor informacin en este sentido hay necesidad de consultar el manual correspondiente.
16 15 14 13 12 11 10 9
Vcc D4 D3 D2
1 2
D5 D1
3
D6 D0
4
D7 Y
5
A W
6
B C S Gnd
7 8
87
Captulo 7
Adems del diagrama de patitas, si se tiene duda de como funciona exactamente el circuito, se puede consultar la tabla de verdad en las hojas de datos del fabricante, como se muestra a continuacin. En esta tabla se aclara el funcionamiento de la entrada strobe (S) que como se puede ver es una seal de habilitacin/deshabilitacin del mux. Tabla de verdad del 74151 Entradas S CBA H *** L LLL L L L L L L L LLH LHL LHH HLL HLH HHL HHH Salidas Y W L H D0 D 0 D1 D 1 D2 D 2 D3 D 3 D4 D 4 D5 D 5 D6 D 6 D7 D 7
La seal Strobe (S) permite la interconexin de un mux con otros mux para expandir su capacidad a un mayor nmero de entradas. Ejemplo. En la siguiente figura se muestra la implementacin de un mux de 16 a 1 usando circuitos 74151.
D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7
74151
mux de 8 a 1
C B A Strobe
D0 D1 D2 D3 D4 D5 D6 D7
74151
mux de 8 a 1
Y Y
D0 D1 D2 D3 D4 D5 D6 D7
C B A Strobe
74151
mux de 8 a 1
C B A Strobe
88
Captulo 7
7.3.2.- DEMULTIPLEXORES/DECODIFICADORES DIGITALES
Un demultiplexor (demux) es otro circuito MSI disponible para el diseo lgico, el cual puede ser usado en una gran variedad de aplicaciones. a continuacin se presenta una definicin de multiplexor uy decodificador:
Un demultiplexor es un circuito que conecta la informacin de una linea de entrada hacia una de varias lineas de salida de acuerdo a un cdigo de seleccin.
O Un decodificador simplemente habilita un cierto nivel (alto bajo) en una salida seleccionada entre
varias por un cdigo de seleccin.
De la tabla de verdad obtenemos con un poco de anlisis :Y o = BAE, Y 1 = BAE, Y 2 = BAE, Y 3 = BAE, lo cual nos conduce a la implementacin que se muestra en la siguiente figura
89
Captulo 7
B A
Y0
Y1
Y2
Y3
En la actualidad se tienen varios demultiplexores en circuito integrado. Por ejemplo, un circuito equivalente al diseado en el ejemplo es el 74155. El 74155 es un CI que se puede usar como dos decodificadores de 2 a 4 bien como dos demultiplexores de 1 a 4 , como un decodificador de 3 a 8 un demultiplexor de 1 a 8. Ya que como ya se dijo, un demultiplexor se convierte en un decodificador al conectar su entrada a un estado lgico fijo. La siguiente es una lista de los demultiplexores/decodificadores ms populares en cicuito integrado de la familia TTL 74138: 74139: 74141: 74154: 74159: 74155: 74156: Demux/decodificador de 3 a 8 Demux/decodificador de 2 a 4, doble Decodificador/driver BCD - decimal Demux/Decodificador de 4 a 16 Demux/decodificador de 4 a 16 con salidas de colector abierto Demux/decodificador doble de 2 a 4 igual al 74155, pero con salidas de colector abierto
Como una ilustracin de la informacin proporcionada por el fabricante respecto al funcionamiento lgico de un demux, se presenta a continuacin para el circuito 74138, comenzando por su diagrama de patitas
16
15
14
13
12
11
10
90
Captulo 7
G2A G2B G1 1 X X X 1 X X X 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 CBA XXX XXX XXX 000 001 010 011 100 101 110 111 Y0 1 1 1 0 1 1 1 1 1 1 1 Y1 1 1 1 1 0 1 1 1 1 1 1 Y2 1 1 1 1 1 0 1 1 1 1 1 Y3 1 1 1 1 1 1 0 1 1 1 1 Y4 1 1 1 1 1 1 1 0 1 1 1 Y5 1 1 1 1 1 1 1 1 0 1 1
Como puede verse en la tabla de verdad, las entradas G2A,G2B y G1 pueden ser usadas como dato de entrada del mux de 1 a 8 o bien, como seales tipo strobe para habilitar o deshabilitar al decodificador de 3 a 8. En el siguiente ejemplo se da una ilustracin de como pueden usarse estas seales G para interconectar el circuito con otros similares para expandir su capacidad de salidas Ejemplo. En la siguiente figura se muestra como se implementara un demux de 1 a 16 usando circuitos 74138
G2A G2B G 74138 demux de 3 a 8 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
D C B A
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
7.3.4.- DECODIFICADORES ESPECIALES Existen algunos paquetes en circuito integrado que realizan funciones lgicas muy usuales y que representan una ligera variante a los decodificadores mencionados anteriormente, tales decodificadores especiales son: 7445: Decodificador/driver de BCD a decimal (decodificador de 4 a 10 con capacidad de alta corriente (80 mA por salida). tiene salidas activas en bajo 7446, 7447: Decodificadores /driver de BCD a 7 segmentos con salidas de colector abierto. Estos circuitos manejan alto voltaje de salida (15 volts para el 7447 y 30 volts para el 7446). manejan alta
91
Captulo 7
corriente de salida y tienen salidas activas en bajo, lo cual los hace compatibles con desplegadores de 7 segmentos de nodo comn 7449: Decodificador/driver de BCD a 7 segmentos con salidas activas en alto (compatible con desplegadores de ctodo comn). A continuacin, slo para el 7447 se detalla la informacin que proporciona el fabricante comenzando por su diagrama de patitas
16
15
14
13
12
11
10
No se describir aqu la tabla de verdad del circuito, ya que en captulos anteriores ya se ha tratado la conversin BCD a 7 segmentos, en cambio, se describe a continuacin la manera como funcionan las entradas y salidas especiales de este circuito: LT (Lamp Test).- Cuando esta seal se activa (en bajo) todas las salidas de segmento se activan. Esto sirve para probar si los leds del desplegador estn o no en buen estado, ya que en esta condicin todos debern encender, si no es as, probablemente alguno este daado). RBI/RBO (Right Blank Input/Output).- Esta es una salida de colector abierto que funciona en conjuncin con la entrada RBI que se explica a continuacin RBI (Right Blank Input).- Cuando esta entrada es activada (en bajo) y el dato BCD de entrada al 7447 es cero (DCBA = 0000) en lugar de activar el cdigo de 7 segmentos del cero, apaga todos los segmentos y adems activa RBO (en bajo). Quizs pueda parecer un poco raro la manera en que actan las seales RBi, Rbo, sin embargo, si se tiene presente que en conjunto permite el blanqueo de ceros a la izquierda cuando se despliega informacin de varios dgitos se entender mjeor su funcionamiento. En la siguiente figura se muestra el despliegue del nmero 040 con el cero de la izquierda blanqueado:
92
Captulo 7
abcdefg
abcdefg
abcdefg
7447
0 Rbi DCBA 0000 7.3.5.- CODIFICACIN DE TECLADOS Rbo 0 Rbi
7447
Rbo DCBA 0100 1 Rbi
7447
Rbo DCBA 0000 1
Los teclados numricos y alfanumricos son un dispositivo extremadamente til para la introduccin de datos a un sistema digital. Las teclas de un teclado normalmente accionan interruptores que tienen dos contactos normalmente abiertos que se cierran cuando la tecla es presionada. Codificar un teclado significa asignar un cdigo binario a cada una de las teclas que componen el teclado. As como decodificarlo significa determinar cual de las teclas fue presionada de acuerdo al cdigo que la representa. La codificacin de teclados se puede realizar usando multiplexores y demultiplexores. Como ejemplo enseguida se ilustra un esquema para codificar 64 teclas arregladas en una matriz de 8x8, usando un 74155 (como decodificador de 3 a 8) y un multiplexor 74152. En este ejemplo un nivel ALTO en la salida del 74152 indica que una tecla se oprimi y la combinacin de las 3 entradas de seleccin del 74152 con las del 74155 determinan cual fue la tecla que se oprimi.
1C 2C A B 74155
1Y0 1Y1 1Y21Y3 2Y0 2Y1 2Y2 2Y3
1G 2G
74152 D0 D1 D2 D3 D4 A B C D5 D6 D7
1K
+Vcc
SALIDA
LINEAS DE SELECCION
93
Captulo 7
En la figura cada tecla representada por un pequeo crculo implica un switch en cada una de las 64 intersecciones de las 8 salidas del 74155 con las 8 entradas del 74152. La figura representa como tecla presionada la interseccin de la salida 1Y1 con la entrada D6, de manera que cuando las lineas de seleccin del 74152 tengan un 6 (CBA=110)y las lneas de seleccin del 74155 tengan un 1 (CBA=001) se activar la salida del 74152, indicando que hay una tecla presionada en esa interseccin. El cdigo de la tecla se puede formar a partir de estas seis entradas de seleccin. 7.3.6.- IMPLEMENTACIN DE FUNCIONES LGICAS USANDO MULTIPLEXORES Los multiplexores adems representan una alternativa al diseo de funciones lgicas resultando ser circuitos universales para esta aplicacin, es decir a travs de un multiplexor se puede construir cualquier funcin lgica con nmero de variables igual al nmero de lneas de seleccin del mux, como se ver a continuacin. Ejemplo. La implementacin de una funcin usando multiplexores es simplemente una consulta a la tabla de verdad de la funcin como si fuera una tabla de alambrado, por ejemplo, la implementacn de la funcin f(A,B,C) = m(0,1,3,5,7) consiste simplemente en la conexin de las entradas correspondientes a los mintrminos a Vcc y las otra a tierra, mientras que las entradas de la funcin corresponden a las lneas de seleccin del mux como se muestra en la siguiente figura
Vcc D0 D1 D2 D3 D4 D5 D6 D7 A B C C B A
MUX de 8 a 1
Otra alternativa es la utilizacin de tablas de verdad reducidas, mediante la tcnica de introduccin de variables, la cual permite reducir el tamao del multiplexor a utilizar. Ejemplo Reducir la siguiente tabla de verdad introduciendo la variable C e implementarla usando un mux de 4 a 1 f(A,B,C) = m(1,2,3,6) De la tabla de verdad completa: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 f 0 1 1 1 0 0 1 0 Obtenemos la tabla de verdad reducida AB 00 01 10 11 f C 1 0 C
94
Captulo 7
Vcc D0 D1 D2 C D3 MUX de 4 a 1 A B B A Y f
Lo anterior tambin es posible realizarlo an cuando la funcin tiene condiciones sin cuidado Ejemplo. Obtener la tabla de verdad reducida para la siguiente funcin lgica, introduciendo la variable D: f(A,B,C,D) = m(0,2,7,10,11,13)+ d(3,6,9,14) Tabla de verdad completa A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 F 1 0 1 * 0 0 * 1 0 * 1 1 0 1 * 0 Tabla de verdad reducida
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
F D D*+D 0 D+D* D* 1 D D*
En la tabla de verdad se ha enfatizando el hecho de que cada par de renglones consecutivos tiene la misma informacin en las variables A,B,C y por lo tanto, generarn un rengln de la tabla reducida Como puede verse, es posible introducir, no slo una sino dos o ms variables y cualesquiera de ellas, como se ilustra en el siguiente ejemplo Ejemplo. Para la funcin anterior, sin considerar condiciones sin cuidado, introducir las variables C y D e implementar usando un mux de 4 a 1 Solucin. La funcin original sin condiciones sin cuidado es f(A,B,C,D) = m(0,2,7,10,11,13), nos lleva a la siguiente tabla de verdad reducida (introduciendo D)
95
Captulo 7
A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 F D D 0 D 0 1 D 0
00 C 0 0 D 1
1
AB
01
2
11
6
10
4
0 D
D 0
0 1
Sobre este mapa (o sobre el original) se puede an introducir otra variable, por ejemplo C, para obtener un mapa an ms reducido con las variables C y D introducidas codificando la informacin de cada par de celdas del mapa anterior en un slo trmino como sigue
AB
0
00 D
1
01 C.D
3
11
2
10 C
C.D
7.4.- MAPAS DE KARNAUGH CON VARIABLES INTRODUCIDAS En la seccin anterior se ha ilustrado como se reduce la representacin de una funcin booleana, ya sea en una tabla de verdad o en un Mapa de Karnaugh, al introducir variables en ellos. Tambin se ha ilustrado la relacin de estas formas de expresar una funcin lgica con su implementacin mediante multiplexores, sin embargo, Cmo interpretar una funcin que ya ha sido expresado por otros en un mapa con variables introducidas?. En esta seccin se responder a esta pregunta, planteando el conocido como
96
Captulo 7
El Mtodo Extendido de los Mapas de Karnaugh
Mediante este mtodo podemos obtener expresiones booleanas mnimas para una funcin booleana expresada en un Mapa de Karnaugh con variables introducidas. No se pretende dar una justificacin del mtodo, sino ms bien presentar una receta de cocina que habr de seguirse paso por paso Observacin: El tipo de expresiones que pueden aparecer en un mapa con variables introducidas son:
0, 1, *, u, u*, u, u*, u*+u, u*+u (Cualquier 1 equivale a u+u y cualquier * equivale a u*+u*)
donde u representa una variable o una combinacin de variables lgicas cualquiera, por ejemplo, u podra ser A+BC, etc.. Paso 1 - Agrupar las expresiones del tipo u que ocupan celdas adyacentes del mapa (como si fueran unos de un mapa normal). La expresin obtenida por cada grupo es idtnica a la que se obtendra en un mapa normal, pero afectada por una operacin AND con u - Repetir lo mismo para las expresiones del tipo u. Por ningpun motivo se incluyan en un mismo grupo u con u Paso 2 Transformar el mapa de acuerdo a lo siguiente: a) Reemplazar las expresiones del tipo u, u por ceros b) Reemplazar las expresiones u+u* y u+u* por * si se agrup al menos el trmino SIN asterisco. c) Reemplazar las expresiones u+u* y u+u* por 1 slo se agrup el trmino CON asterisco o si no se agrup ninguno de los dos trminos. d) Reemplazar los 1s del mapa por * si ambos trminos (u+u) fueron agrupados de lo contrario dejarlos como estn e) Los *s y 0s del mapa se conservan Paso 3.- Hasta aqu se tiene un mapa normal, el cual se simplifica como siempre Paso 4.- Finalmente, la expresin reducida para la funcin lgica ser el OR de las expresiones obtenidas en los pasos 1 y 3. Ejemplo: Dado el siguiente M.K.
B 0 1
A 0
0
1
2
C
1
*
3
C
97
Captulo 7
Puede ser reescrito como sigue
A 0 BC 1 B
0
0 1
C
1
C*+C*
3
C+C
BC
En el mapa anterior se muestra tambin el primer paso y las expresiones obtenidas en l. a continuacin se muestra el mapa auxiliar obtenido en el paso 2
A 0 B 0 1 0
1
0 2
0
1 3
1
AB
Finalmente, al sumar las expresiones del paso 1 y el mapa auxiliar obtenemos f= BC + BC + AB Ejemplo: Sea la funcin definida como F(A,B,C,D)= m(2,4,5,10,11,13)+ d(0,1,6,15). al expresarla en un mapa con D introducida, obtenemos los siguientes mapas
AB C 00
0 1
BCD
01
0 2
11
6
10
4
AB C 00
0
01
2
11
6
10
4
*
1
D+D
3
D
7
0
5
0 1
*
1
*
3
0
7
0
5
D*
AD
D*
ABC
En el mapa de la izquierda estn marcados los grupos que se toman en e primer paso, ntese que el 1 de la celda dos se ha exrpresado en trminos de la variable introducida D, ya que esto ayuda a visualizar la agrupacin ms claramente, en cambio el 1 de la celda 5 que no se usa en el primer paso se expres simplemente como 1. El mapa de la derecha es el mapa auxiliar obtenido en el segundo paso. La expresin reducida es la suma de las expresiones marcadas en ambos mapas:
F1 = BCD + A.D + ABC
98
Captulo 7
Ejemplo: Finalmente presentamos un ejemplo con una funcin de cinco variables, con el siguiente mapa que tiene dos variables introducidas
AB 00 C
0
CH
01
2
11
6
10
4
AB C 00
0
AB
01
2
11
6
10
4
0 1
H
1
0
3
1
7
G
5
0 1
0
1
0
3
1
7
0
5
H
ABH
G+H
AG
1
BC
En el mapa de la izquierda se muestran los grupos tomados en el primer paso, obsrvese que aunque no se escribe explcitamente, el uno de la celda 7 se ha considerado como 1= 1+1= G + G + H + H, con lo cual ha podido ser usado para simplificar grupos de G y de H, en cambio el uno de la celda 3 se ha expresado slo en trminos de H y el uno de la celda 6 slo en trminos de G. el mapa de la derecha es el mapa auxiliar. Finalmente, la expresin reducida queda como
F = A.B.H + AG + CH + AB + BC
99