Anda di halaman 1dari 20

Captulo 7

Diseo con Circuitos M.S.I.

Diseo con Circuitos MSI


La evolucin de la electrnica digital ha llevado a la comercializacin de circuitos integrados de
media escala de integracin (MSI) que representan soluciones ya hechas a una gran variedad de problemas de lgica combinacional y secuencial. En este captulo se presentan las funciones tpicas de lgica combinacional que han encontrado su realizacin en circuitos integrados comerciales MSI as como su utilizacin y adaptacin a diversos problemas mediante la lgica SSI (pequea escala de integracin) adecuada. 7.1.- INTRODUCCIN La evolucin de los circuitos integrados ha producido una gran variedad de circuitos que realizan ms que una simple funcin lgica. Estos circuitos, dependiendo de su complejidad y de la cantidad de compuertas lgicas internas han sido clasificados como circuitos de: Baja Escala de Integracin (SSI).- Hasta 12 compuertas lgicas o menos (funciones lgicas bsicas) Media Escala de Integracin (MSI).- Hasta 100 compuertas lgicas Alta y muy Alta Escala de Integracin (LSI y VLSI) .- Ms de 100 compuertas lgicas Hay varias ventajas en el uso de los circuitos MSI. Adems de que estos bloques funcionales realizados en circuito integrado representan la experiencia y el trabajo de diseadores de funciones lgicas que es conveniente tener en cuenta para no repetir esfuerzos, su uso conlleva las siguientes ventajas:

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)

Facilidad de mantenimiento (por la misma razn que el punto anterior).


Por esto, al abordar un problema de diseo de circuitos lgicos, antes de aplicar el procedimiento visto en el captulo anterior, primero hay que responderse las siguientes preguntas: Existe un circuito integrado que ya realiza la funcin requerida? Es posible adaptar con poca lgica adicional un circuito integrado (o varios) para realizar la funcin requerida? Si la respuesta a alguna de estas preguntas es afirmativa casi seguro que esta opcin nos dar la mejor solucin comparada con el procedimiento de diseo visto en el captulo anterior (lo nico que faltara es un anlisis comparativo de costos en donde se considere cuntos circuitos se desea construir, cual es el costo por unidad, si se van a comercializar, etc...)

80

Captulo 7

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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

DATO BCD exc 3

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.

Si el resultado es menor que 10 es correcto tanto en binario como en BCD

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

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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

Esta expresin nos lleva a la siguiente Implementacin usando puertas NAND.

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

Diseo con Circuitos M.S.I.

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

D8 D9 D10 D11 D12 D13 D14 D15 D C B A

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

Diseo con Circuitos M.S.I.

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.

F Obsrvese que de acuerdo a las definiciones anteriores, un demultiplexor se convierte en un


decodificador si su lnea de entrada se considera fija (en alto o en bajo). Esto justifica el nombre de demultiplexor/decodificador Como una manera de entender mejor como estn construidos internamente los demultiplexores enseguida ilustraremos el diseo de un demux sencillo Ejemplo. Diseo de un demux de 2 a 4, El diagrama de bloques correspondiente a un demux de 2 a 4 es como sigue E Demultiplexor B A Cuya tabla de verdad es la que se muestra a continuacin E 0 1 1 1 1 B X 0 0 1 1 A X 0 1 0 1 Y0 0 1 0 0 0 Y1 0 0 1 0 0 Y2 0 0 0 1 0 Y3 0 0 0 0 1 de 2 a 4 Y0 Y1 Y2 Y3

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

Diseo con Circuitos M.S.I.

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

Vcc Y0 A B C G2A G2B G1 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Gnd


1 2 3 4 5 6 7 8

La tabla de verdad correspondiente es como sigue

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

Diseo con Circuitos M.S.I.


Y6 1 1 1 1 1 1 1 1 1 0 1 Y7 1 1 1 1 1 1 1 1 1 1 0

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

G2A G2B G 74138 demux de 3 a 8 C B A

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

Y8 Y9 Y10 Y11 Y12 Y13 Y14 Y15

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

Diseo con Circuitos M.S.I.

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

Vcc f B C LT Bi/Rbo Rbi D g a b c d e A Gnd


1 2 3 4 5 6 7 8

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

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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

Con lo cual, la implementacin usando un mux de 4 a 1 queda como sigue

Captulo 7
Vcc D0 D1 D2 C D3 MUX de 4 a 1 A B B A Y f

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

Esta tabla se puede expresar en un Mapa de Karnaugh reducido como sigue

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

Con lo cual, la implementacin usando un mux de 4 a 1 queda como sigue D D0 D1 D2 C D3 MUX de 4 a 1 A B B A Y f

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

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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

Diseo con Circuitos M.S.I.

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