54
SISTEMAS DIGITALES CONTENIDO: TEMA I GENERALIDADES ANTECEDENTES SISTEMAS DE NUMERACIÓN ÁLGEBRA DE BOOLE FUNCIONES BOOLEANAS TEMA II LÓGICA COMBINACIONAL CIRCUITO COMBINACIONAL DE UNA FUNCIÓN CIRCUITO COMBINACIONAL DE N FUNCIONES MULTIPLEXORES DECODIFICADORES TEMA III MEMORIAS MEMORIA ROM MEMORIA RAM DESARROLLO Y CONSTRUCCIÓN DE MEMORIAS TEMA IV LÓGICA SECUENCIAL DIAGRAMAS DE ESTADO REDUCCIÓN DE ESTADOS CONTADORES AUTÓMATAS FINITOS DETERMINÍSTICOS TEMA V

Logica Digital 2

Embed Size (px)

DESCRIPTION

Logica Digital

Citation preview

Page 1: Logica Digital 2

SISTEMAS DIGITALES

CONTENIDO:

TEMA IGENERALIDADES

ANTECEDENTES

SISTEMAS DE NUMERACIÓN

ÁLGEBRA DE BOOLE

FUNCIONES BOOLEANAS

TEMA IILÓGICA COMBINACIONAL

CIRCUITO COMBINACIONAL DE UNA FUNCIÓN

CIRCUITO COMBINACIONAL DE N FUNCIONES

MULTIPLEXORES

DECODIFICADORES

TEMA IIIMEMORIAS

MEMORIA ROM MEMORIA RAM DESARROLLO Y CONSTRUCCIÓN DE MEMORIAS

TEMA IVLÓGICA SECUENCIAL

DIAGRAMAS DE ESTADO

REDUCCIÓN DE ESTADOS

CONTADORES

AUTÓMATAS FINITOS DETERMINÍSTICOS

TEMA VANÁLISIS DE:

PLA PLD MICROPROCESADOR

Page 2: Logica Digital 2

TEMA I.- GENERALIDADES

ANTECEDENTES

CONCEPTO DE NÚMERO.- Representación abstracta por medio de un símbolo de una cantidad.

NÚMEROS POSICIONALES.- EJM:2

dos22

veinte

NÚMEROS ORDINALES.- Ejm: MMCCCXLI

SISTEMAS DE NUMERACIÓN

El sistema de numeración decimal es familiar a todo el mundo. Este sistema utiliza los símbolos 0,1,2,3,4,5,6,7,8 y 9. El sistema decimal tiene una característica de valor por posición (número posicional). El sistema de numeración decimal también se llama sistema de base 10. Se denomina de base 10 porque tiene 10 símbolos diferentes. En general, un número en base r contiene los dígitos, 0,1,2,3,...,r-1 y se expresa con una serie de potencias en r.

Los números binarios (base 2) se utilizan mucho en electrónica digital y en computadoras. Los números del sistema hexadecimal (base 16) y octal (base 8) son utilizados para representar grupos de dígitos binarios. Todos los sistemas de numeración pueden utilizarse para contar. También tienen todos una característica de valor por posición. Para distinguir entre números de diferentes bases, se acostumbra encerrar los coeficientes en paréntesis y colocar un subíndice después del paréntesis de la derecha con el fin de indicar la base del número. Sin embargo, cuando el contenido hace obvio que el número está en notación decimal, no se necesita usar los paréntesis. P.ej: (18)10 (10010) 2

10n-1 ... 103 102 101 100 ... .

Base 10 (0-9)

2n-1 ... 23 22 21 20 ... .

Base 2 (0-1)

Page 3: Logica Digital 2

CONVERSIÓN A BASE 10

(221)3 (25) 10

2X32 + 2X31 + 1X30 = 18 + 6 + 1 = 25

(1212)3 (60) 10

1X33 + 2X32 + 1X31 + 2X30 = 27 + 18 + 3 + 2 = 60

Base r

bhrn-1 + bh-1r

n-2 + bh-2rn-3 + . . . + b0r

0 = ( )10 ó b rn

ii

i

i

0

donde:

bh = dígito en la posición hn = número de dígitos

(4322)5 (587) 10

r=5n=4b0=2b1=2b2=3b3=4

(238)9 (197) 10

b rn

ii

i

i

0

= 8 x 90 + 3 x 91 + 2 x 92 = 8 + 27 + 162 = 197

(243)5 (73) 10

b rn

ii

i

i

0

= 3 x 50 + 4 x 51 + 2 x 52 = 3 + 20 + 50 = 73

(354)6 (142) 10

b3rn-1 + b2r

n-2 + b1r n-3 + b0r

n-4 =

4 x 53 + 3 x 52 + 2 x 51 + 2 x 50 = 500 + 75 + 10 + 2 = 587

rn-1 . . . r3 r2 r1 r0

Page 4: Logica Digital 2

b rn

ii

i

i

0

= 4 x 60 + 5 x 61 + 3 x 62 = 4 + 30 + 108 = 142

(10111011)2 (187) 10

b rn

ii

i

i

0

= 1 x 20 + 1 x 21 + 0 x 22 +1 x 23 + 1 x 24 + 1 x 25 + 0 x 26 + 1 x 27 =

= 0 + 2 + 0 + 8 + 16 + 32 + 0 + 128 = 187

(AA3)Hex (2723) 10

b rn

ii

i

i

0

= 3 x 160+ 10 x 161 + 10 x 162 = 2560 + 160 + 3 = 2723

Para la parte decimal:

.

.d1 1/r1 + d2

1/r2 + d3 1/r3 + d4

1/r4 + . . . + dm 1/rm ó b r

mi

i

i

1

(223.34)5 (63.76) 10

b rn

ii

i

i

0

= 3 x 50 + 2 x 51 + 2 x 52 = 3 + 10 + 50 = 63

b rm

ii

i

1

= 3 x 5-1 + 4 x 5-2 = 3/5 + 4/25 = 19/25

= 63. 19/25 63.76

(0.10111)2 (0.71875) 10

b rm

ii

i

1

= 1 x 2-1 + 0 x 2-2 + 1 x 2-3 + 1 x 2-4 + 1 x 2-5 = 1/2 + 1/8 + 1/16 + 1/32

= 22/32 0.71875

(0.234)6 (0.43518) 10

1/10 1/100 1/1000 1/10m. . .

Page 5: Logica Digital 2

b rm

ii

i

1

= 2 x 6-1 + 3 x 6-2 + 4 x 6-3 = 2/6 + 3/36 + 4/216 = 94/216 0.43518

MÉTODO POR DIVISIONES SUCESIVAS

Este método es utilizado para convertir la parte entera de un número que está en base 10 a cualquier otra base. P.ej:

(73)10 (243)5

(3245)10 (23005)6

MÉTODO POR MULTIPLICACIONES SUCESIVAS

Este método es utilizado para convertir la parte decimal de un número que está en base 10 a cualquier otra base. P.ej:

(0.25)10 (0.02)3

(0.25)10 (0.01)2

NúmeroCocienteResiduo73142

0142034

273/514/52/5

NúmeroProductoEntero0.250.750.250.752.250.75

020

0.25x3

0.75x3

0.25x3

NúmeroCocienteResiduo324554090152

054090152

050032

3245/6

540/6

90/6

15/6

2/6

Page 6: Logica Digital 2

(234.28)10 (1414.12)5

EQUIVALENCIAS ENTRE LOS SISTEMAS DE NUMERACIÓN

Base 10 2 3 4 5 6 7 8 9 11 12 13 14 15 160 0 0 0 0 0 0 0 0 0 0 0 0 0 01 1 1 1 1 1 1 1 1 1 1 1 1 1 12 10 2 2 2 2 2 2 2 2 2 2 2 2 23 11 10 3 3 3 3 3 3 3 3 3 3 3 34 100 11 10 4 4 4 4 4 4 4 4 4 4 45 101 12 11 10 5 5 5 5 5 5 5 5 5 56 110 20 12 11 10 6 6 6 6 6 6 6 6 67 111 21 10 12 11 10 7 7 7 7 7 7 7 78 1000 22 20 13 12 11 10 8 8 8 8 8 8 89 1001 10

021 14 3 12 11 10 9 9 9 9 9 9

10 1010 101

22 20 14 13 12 11 A A A A A A

11 1011 102

23 21 15 14 13 12 10 B B B B B

12 1100 110

30 22 20 15 14 13 11 10 C C C C

13 1101 111

31 23 21 16 15 14 12 11 10 D D D

14 1110 112

32 24 22 20 16 15 13 12 11 10 E E

15 1111 120

33 30 23 21 17 16 14 13 12 11 10 F

NúmeroProductoEntero0.250.5

00.510

10.25x2

0.5x2

Para la parte decimal:NúmeroProductoEntero0.28

0.401.421

20.28x5

0.4x2

Para la parte entera:NúmeroCocienteResiduo234

4691

046910414

1234/5

46/59/5

1/5

Page 7: Logica Digital 2

Cuando se quiera convertir de una base r1 a una base r2 debe utilizarse como puente la base 10. P.ej:

(2234.22)5 ( 634.3234 )7

a) Convertir a base 10:

b rn

ii

i

i

0

= 4 x 50 + 3 x 51 + 2 x 52 + 2 x 53 = 4 + 15 + 50 + 250 = 319

b rm

ii

i

1

= 2 x 5-1 + 2 x 5-2 = 2/5 + 2/25 = 12/25 = 0.48

(2234.22) 5 (319.48)10

b) Una vez que se haya convertido a base 10, se realizará la conversión a la base deseada:

(319.48)10 (634.3234 )7

CASO PARTICULAR A:

Si se desea convertir un número de base r1 a una base r2 y es posible encontrar un valor de n entero que satisfaga la siguiente condición: r1

n = r2, entonces la conversión se podrá simplificar mediante las siguientes reglas:

1. Debe separarse el número en base r1 en grupos de n elementos del punto decimal hacia la izquierda y del punto hacia la derecha, completando con ceros en caso de ser necesario.

2. Debe convertirse directamente a base 10 cada uno de estos paquetes de n dígitos y así tendremos el nuevo número en base r2.

(011011.110)2 (33.6 )8

Para la parte decimal:NúmeroProductoEntero

0.480.360.520.640.48

0.363.362.523.644.483.363

2343

Para la parte entera:NúmeroCocienteResiduo3

19456

04560436

Page 8: Logica Digital 2

r1 r2

r1n r2

2n = 8n=3Por lo tanto, el número en base 2 se va a agrupar en paquetes de 3 dígitos y se

convertirá cada paquete para obtener el nuevo número en la base deseada:

011 011 . 110

(11011.1100)2 (1B.C )Hex

r1 r2

r1n r2

2n = 16n=4Por lo tanto, el número en base 2 se va a agrupar en paquetes de 4 dígitos y se

convertirá cada paquete para obtener el nuevo número en la base deseada:

1 1011 . 1100

(11101110111.111101101)2 (3567.755 )8

r1 r2

r1n r2

2n = 8n=3Por lo tanto, el número en base 2 se va a agrupar en paquetes de 3 dígitos y se

convertirá cada paquete para obtener el nuevo número en la base deseada:

1B

.

33

.6

C

35

.

67

755

11 101 110 111 . 111 101 101

Page 9: Logica Digital 2

(1221.22101)3 (57.833 )9

r1 r2

r1n r2

3n = 9n=2Por lo tanto, el número en base 3 se va a agrupar en paquetes de 2 dígitos y se

convertirá cada paquete para obtener el nuevo número en la base deseada:

12 21 . 22 10 10

CASO PARTICULAR B:

Si se desea convertir un número de base r1 a una base r2 y es posible encontrar un valor de n entero que satisfaga la siguiente condición: r1= r2

n, entonces la conversión se podrá simplificar de la siguiente manera:

Debe desarrollarse cada dígito del número en base r1 en su correspondiente en la base deseada en n dígitos y se obtendrá entonces el nuevo número en

número en base r2.

(F83.A2)Hex (111110000011.10100010)2

r1 r2

r1 r2n

2n = 16n=4Por lo tanto, cada dígito del número en base Hex se va a desarrollar en n dígitos:

F 8 3 . A 21111 1000 001

1. 1010 0010

57.8

El cero está completando el paquete.

33

Page 10: Logica Digital 2

(2751.557)8 (010111101001.101101111)2

r1 r2

r1 r2n

2n = 8n=3Por lo tanto, cada dígito del número en base 8 se va a desarrollar en n dígitos:

OPERACIONES ARITMÉTICAS

Las operaciones aritméticas con números en base r siguen las mismas reglas que los números decimales. Cuando se usa una base que no sea la 10, se debe emplear sólo r dígitos admisibles y realizar todos los cálculos con dígitos de base r.

SUMA

MULTIPLICACIÓN

RESTA

COMPLEMENTO A LA BASE

Los complementos se usan en las computadoras digitales para simplificar la operación de sustracción y para realizar la manipulación lógica. Existen dos tipos

2 7 5 1 . 5 5 7010 111 101 001 . 101 101 111

112)109)1

021)10+111122)3201)3

1100)3+1123)534)5112)5+

111111101)211101)2

111010)2+1FA3)Hex22C)Hex

11CF)Hex+

112)109)10108)10x

2223)54)5202)5x

112223)534)52021241442)5x

11FA2)Hex12)Hex11F44FA211964)Hexx

12)1019)1

003)10-

23)534)5-11)5

-FA)Hex2C)HexC8)Hex

-11011)201110)21101)2-

Page 11: Logica Digital 2

de complementos para cada sistema de base r: el complemento r base y el complemento r base disminuída.

COMPLEMENTO r BASE DISMINUIDA

Dado un número positivo N en base r con una parte entera de n dígitos y una parte fraccionaria de m dígitos, se define como el complemento r base disminuída:

Ncr-1 = rn - r-m - N

P.ej: Complemento r base disminuida en base 10

(25.639)10 = 102 - 10-3 - 25.639 = 100 - 0.001 - 25.639 = 74.36

(52520)10 = 105 - 100 - 52520 = 47479BASE NORMAL

Ncr = rn - Nr = baseN = Númeron = número de dígitos

Obtener el complemento a la base de:

(2392)10 = 104 - 2392 = 10000 - 2392 = 7608

Para un número que está en base 2, el complemento a la base se forma si después del primer uno (de derecha a izquierda), se cambian unos por ceros y ceros por unos. P.ej:

(1011101)2 = (0100011)

(00011101)2 = (11100011)

La sustracción de 2 números positivos, M - N , en base r se puede hacer de la siguiente manera:

1. Se suma el minuendo M al complemento a la base del sustraendo N.2. Se inspeccionan los datos obtenidos en el paso anterior para ver si ocurre una

"lleva" final.a) Si ocurre una "lleva" final, se debe descartar.b) Si no ocurre una "lleva" final, se toma el complemento a la base del

número obtenido en el paso 1 y se signa negativa la magnitud.

Ejemplo 1.

Page 12: Logica Digital 2

Ejemplo 2.

CÓDIGO

Un código es un conjunto de símbolos o variables discretas que se asocian a otro conjunto de variables discretas y contínuas. Pueden ser instrucciones, letras, caracteres, valores de resistencia, etc. Entendemos por variables contínuas aquellas que se pueden subdividir en forma infinita. Las variables discretas son aquellas que no se pueden subdividir en forma infinita, es decir, tienen un límite de divisibilidad. Si tenemos n dígitos en base r, se pueden codificar rn elementos.

LÓGICA BINARIA

La lógica binaria tiene que ver con variables que asumen dos valores discretos y con operaciones que asumen un significado lógico. A los dos valores que toman las variables se asumen en términos de bits 0 y 1. La lógica binaria es una herramienta para manipuleo de información binaria y para el diseño de sistemas digitales. Las variables se identifican mediante las letras del alfabeto y cada una tendrá dos y sólo dos valores posibles 1 y 0. Existen tres operaciones básicas en la lógica binaria y son AND, OR y NOT.

1. AND. Esta operación se representa por un punto o por la ausencia de un operador. Por ejemplo, X Y = Z o XY = Z se leen como "X y Y es igual a Z" o "X and Y es igual a Z. La condición de esta operación es que Z=1 si y sólo si X = 1 y Y = 1.

2. OR. Esta operación se representa por un signo más (+). Por ejemplo, X + Y = Z se lee "X o Y es igual a Z" o "X or Y es igual a Z". La condición para esta operación es que Z = 1 si X = 1 o Y = 1, o si X = 1 y Y = 1.

18)1010010)2M Se suma M con el10010)29)1001001)2Ncomplemento de N:10111)2 9)101 01001

Por lo tanto, el resultado es: 01001)2 9)10

+

Se descarta la "lleva"

28)10011100)2M Se suma M con el011100)241)10101001)2Ncomplemento de N:010111)2-13)10110011

El resultado es: -001101)2 -13)10

+

No ocurrió una lleva, por lo que se tomará el complemento a la base del resultado y se le agregará un signo negativo.

Page 13: Logica Digital 2

3. NOT. Esta operación se representa por una barra colocada arriba de una variable o por la variable seguida de un apóstrofe. Por ejemplo: Y' = Z se lee "Y negada es igual a Z", que quiere decir que Z es lo que no es X.

Los circuitos digitales electrónicos se llaman circuitos lógicas ya que con las entradas adecuadas establecen caminos de manipuleo lógico. La unidad mínima de un circuito capaz de ejecutar una operación fundamental se llama compuerta lógica o circuito de conmutación.

ALGEBRA DE BOOLE

El álgebra booleana es la que tiene que ver con variables binarias y operaciones lógicas. Las variables se designan por letras del alfabeto, y las tres operaciones lógicas básicas son AND, OR y el complemento. Una función booleana consta de una expresión algebraica formada con variables binarias, las constantes 0 y 1, los símbolos de las operaciones lógicas, paréntesis y un signo igual. Para un valor dado de las variables binarias, la función booleana puede ser igual a 1 o 0.

PROPIEDADES DEL ÁLGEBRA DE BOOLE

Propiedad de cerradura o conjunto cerrado. Si se realiza una operación con n operador y dos elemento pertenecientes al espacio de Boole Boole = {0,1}, sólo nos dará un resultado en el espacio de Boole.

Propiedad asociativa. Se dice que un operador binario es asociativo si satisface la siguiente condición para un espacio S. Sea el operador binario * y

XY

XY=Z XY

X+Y=ZX X'

AND OR NOT

XYZXYZXX'0000000101001110100101111111 XY=Z X+Y=Z X'=Z

AND OR NOT

Tablas de verdad de las tres operaciones lógicas

Page 14: Logica Digital 2

X,Y,Z variables binarias, entonces * es asociativo sí y sólo sí X*(Y*Z) = (X*Y)*Z.

Propiedad o ley conmutativa. Se dice que un operador binario * es conmutativo sí y sólo sí X*Y = Y*X.

Elemento neutro. Un espacio algebraico tiene un elemento neutro si existe un valor de n dentro del mismo espacio que satisfaga la operación (X + n = 0) X*n = X. Las funciones AND y OR existe elemento neutro, pero NOT no tiene este elemento.

Elemento inverso. Para que exista un inverso para * si X*I = n, se dice que un operador * sobre un espacio algebraico tiene un elemento inverso sí y sólo sí X * I = n. Para la función AND y OR no existe I.

POSTULADOS Y TEOREMAS BÁSICOS DEL ÁLGEBRA DE BOOLE.

Postulado 2 a) X + 0 = X b) X 1 = XPostulado 5 a) X + X' = 1 b) X X' = 0Teorema 1 a) X + X = X b) X X = XTeorema 2 a) X + 1 = 1 b) X 0 = 0Teorema 3 Convoluciòn (X')' = XPostulado 3 a) X + Y = Y + X b) X Y= Y X ConmutativaTeorema 4 a) X + (Y + Z)= (X + Y) +

Zb) X(YZ) = (XY)Z Asociativa

Postulado 4 a) X(Y+Z) = XY + XZ b) X+YZ = (X+Y)(X+Z) DistributivaTeorema 5 a) (X+Y)' = X'Y' b) (XY)'=X'Y' DeMorganTeorema 6 a) X + XY = X b) X (X + Y) = X

FUNCIONES BOOLEANAS

Como ya sabemos, na función de boole está formada por variables binarias, los operadores lógicos AND, OR, NOT , paréntesis y el signo igual ( = ). Una función lógica puede tener dos y sólo dos valores: 0 y 1. P.ej.

X1

X X0

X

AND ORXYZ01011

1XYZ00010

1

Page 15: Logica Digital 2

F1 = XYZ'

Una compuerta AND puede tener, en teoría, de 2 hasta n entradas.

F2 = X + Y' Z

F3 = X' Y' Z + X' Y Z + X Y'

F4 = X Y' + X' Y

F5 = X' Y' Z + X' Y Z' + Z

X

Z

Y F1

X

YF4

F4

X

Y

Z

X

Z

Y

F3

X

ZY

F2

Page 16: Logica Digital 2

Tabla de verdad:

MANIPULACIÓN ALGEBRAICA

Cuando una función de Boole se ejecuta por medio de compuertas lógicas, cada literal o letra de la función designa una entrada a cada compuerta y cada término se realiza con una compuerta. La minimización del número de literales el número de términos dará como resultado un circuito con menos componentes. No es siempre posible minimizar ambos simultáneamente.

Reducir las siguientes funciones al mínimo de literales:

X + X'Y = (X + X') (X + Y) = 1(X + Y) = X + Y

X (X' + Y ) = X X' + X Y = 0 + X Y = X Y

X' Y' Z + X' Y Z + X Y' = X' Z( Y' + Y ) + X Y' = X' Z + X Y'XYZ

XYZX'ZXY'X'Z+XY'00000000110101000001110110001

1101011110000111000

XY

XY

XYXY0000101001

11

XY

XY

XYX+Y000011101111

X Y Z F1 F2 F3 F4 F5

0 0 0 0 0 0 0 00 0 1 0 1 1 0 10 1 0 0 0 0 1 10 1 1 0 0 1 1 11 0 0 0 1 1 1 01 0 1 0 1 1 1 11 1 0 1 1 0 0 01 1 1 0 1 0 0 1

Page 17: Logica Digital 2

COMPLEMENTO DE UNA FUNCIÓN

El complemento de la función f es f ' y se obtiene del intercambio de 1 por 0 y 0 por 1 en el valor de f. Los complementos de una función pueden obtenerse a partir de una extensión general del teorema de DeMorgan.

(X + Y)' = X' Y' (X Y)' = X' + Y'(X + Y + Z)' = (X + B)' haciendo B = Y+Z (XYZ)' = (X B)' haciendo B =

YZ= X' B' = (X' + B')= X' (Y +

Z)'= (X' + (YZ)'

= X' Y' Z' = X' + (Y' + Z')

= X' + Y' + Z'

El complemento de una función de Boole se obtiene cambiando las compuertas AND por OR y complementando o negando cada literal.

Ejemplo: Encuentre el complemento de las funciones siguientes aplicando el teorema de DeMorgan tantas veces como sea necesario.

F1 = X' Y Z' + X' Y' Z

F1'= (X' Y Z' + X' Y' Z)' = (X + Y' + Z) (X + Y + Z')

X

Y

Z F1'

X Y Z F1 F1'0 0 0 0 10 0 1 1 00 1 0 1 00 1 1 0 11 0 0 0 11 0 1 0 11 1 0 0 11 1 1 0 1

XYZ

F1

Page 18: Logica Digital 2

F2= X( Y' Z' + Y Z ) = X Y' Z' + X Y Z

F2'= ( X ( Y' Z' + Y Z))' = X' + ( Y + Z) ( Y' + Z')

FORMAS CANONICA Y NORMALIZADA

Una variable binaria puede aparecer en su forma normal o complementaria. Considérese 2 variables binarias X y Y combinadas con la operación AND ; como cada variable puede aparecer de cualquier forma, habrá 4 combinaciones posibles.

XY ANDXYXY'X'YX'Y'

A cada una de estas combinaciones se les llama términos mínimos o mintérminos de producto normalizado. De manera similar, las variables relacionadas por una operación OR darán como resultado 2n combinaciones posibles llamadas términos máximos o Maxtérminos de un producto normalizado.

Nota : todas las funciones booleanas pueden expresarse en mintérminos o Maxtérminos.

Los mintérminos hacen 1 a la función y los Maxtérminos le dan un valor de 0.

X Y Z F2 F2'0 0 0 0 10 0 1 0 10 1 0 0 10 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 0

XYZ

F2

F2'

X

YZ

Page 19: Logica Digital 2

Mintérminos MaxtérminosX Y Z Término Designación Término Designació

n0 0 0 X'Y'Z' m0 X +Y+ Z M0

0 0 1 X'Y'Z m1 X +Y+ Z' M1

0 1 0 X'Y Z' m2 X +Y'+Z M2

0 1 1 X'Y Z m3 X +Y'+Z' M3

1 0 0 X Y'Z' m4 X'+Y +Z M4

1 0 1 X Y'Z m5 X'+Y+Z’ M5

1 1 0 X Y Z' m6 X'+Y’+Z M6

1 1 1 X Y Z m7 X'+Y'+Z' M7

El conocimiento de los mintérminos y Maxtérminos nos permite relacionar en forma directa una función en forma algebraica con su tabla de verdad o viceversa.

F1 = X'Y'Z+ X'Y Z = m1+m3

F2 = X Y Z + XY'Z'+X Y'Z'+X Y'Z +X'Y Z'= m2+m4+m5+m7

Cuando una función se expresa en mintérminos o en Maxtérminos se dice que está en forma Canónica.

X Y Z F2 F2'0 0 0 0 10 0 1 1 0 F2 = m1+ m3+m6 = (1,3,6)0 1 0 0 1 F2 = X'Y'Z + X'Y Z + X Y Z'0 1 1 1 01 0 0 0 1 F2 = M0

. M2 . M4

. M5 . M7 = (0,2,4,5,7,)

1 0 1 0 1 F2 = (X+Y+Z)(X+Y'+Z)(X’+Y+Z)(X'+Y+Z')(x’+y’+z’)

1 1 0 1 01 1 1 0 1

DEMOSTRACIÓN

F2' = m0 + m2 + m4 + m5 + m7 F2'= X'Y'Z' + X'Y Z'+ + X Y'Z' ++ X Y'Z + X Y Z(F2') '= F2 =

(X + Y + Z) (X + Y'+ Z) (X'+ Y + Z) (X'+ Y + Z') (X'+Y'+Z')

M0 M2 M4 M5 M7

Page 20: Logica Digital 2

FORMA NORMALIZADA

F4 = X'Y'Z + X'Y Z+ X'Y'Z (SP) CANONICAF5 = (X+Y)(X'+Y'+Z) (PS) NORMALIZADAF2 = (Y'Z'+YZ) (X+Y’) No tiene forma ordenada.

Convertir la siguiente función de Boole a las dos formas canónicas SP y PS.

F1 = a' + ab + b'c'= a' (b+b') + ab (c+c') + b'c' (a+a')= a'b + a'b' + abc + abc' + ab'c' + a’b'c'= a'b (c+c') + a'b' (c+c') + abc + abc' + ab'c’ + a'b'c'= a'bc + a'bc' + a'b'c + a'b'c' + abc + abc' + ab'c' + a'b'c' (SP)

m3 m2 m1 m0 m7 m6 m4 m0

F1 = m 0+ m1 + m2 + m3 + m4 + m6 + m7

F1 = (0,1,2,3,4,6,7) a b c F1

F1 = (5) = a'+ b+ c' (PS)

0 0 0 1

0 0 1 10 1 0 10 1 1 11 0 0 11 0 1 01 1 0 11 1 1 1

Escribir la función en sus formas Canónicas

F2 = A + B'C= A (B+B') + B'C (A+A')= AB + AB' + AB'C + A'B'C= AB (C+C') + AB' (C+C') + AB'C + A'B'C= ABC + ABC' + AB'C + AB'C' + AB'C + A'B'C

m7 m6 m5 m4 m5 m1

F2 = m1 + m4 + m5 + m6 + m7

F2 = (1,4,5,6,7) A B C F2

F2 = (0,2,3) 0 0 0 0 = (A+B+C)(A+B'+C)(A+B'+C')

0 0 1 1

Page 21: Logica Digital 2

0 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 1

OTRAS COMPUERTAS LÓGICAS

Existen operaciones no fundamentales que se aplican en múltiples ocasiones al implementar funciones lógicas con compuertas, los fabricantes de CI (Circuitos Integrados) ponen en nuestras manos compuertas capaces de ejecutar operaciones lógicas compuestas con el fin de tener un ahorro general en el diseño (tiempo - dinero).

P.ej. :

F = XYAND

X Y XY0 0 00 1 01 0 01 1 1

F = X+Y

XY

F

AND

Page 22: Logica Digital 2

ORX Y X+

Y0 0 00 1 11 0 11 1 1

F = X'Y + XY'EX-OR

X Y X Y0 0 00 1 11 0 11 1 0

EX-OR (EXCLUSIVE-OR)

F = (XY)'= X'+Y'NAND

X Y X Y0 0 10 1 11 0 11 1 0

NAND (NOT-AND)F = (X'Y') = (X+Y)'

NORX Y XY0 0 10 1 01 0 01 1 1

NOR (NOT-OR)

Nota : Todas las compuertas no básicas satisfacen la propiedad conmutativa. Las compuertas no básicas, negadas no son asociativas

Demuestre que la operación NOR no es asociativa.

(X Y) Z X (Y Z)((X+Y)'+Z)'= ((X+Y)')'Z' = (X+Y)Z'X (Y Z) = X'(Y+Z)'' = X (Y+Z)(X+Y)Z' X'(Y+Z)

X

NOR

F

XY

OR

F

XYZ

XY

F

NAND

XY

F

Z

(XY) Z

XYZ

XY

F

EX-OR

Page 23: Logica Digital 2

(A B) C A B C((AB)'C)'(A B) C = ((AB)'C)' = AB +C'A B C = (ABC)' = A' +B'+ C'

Compuerta de multinivel:

F = ((ABC)'(DE)' )' = ABC + DEEl Ex-or si es asociativo

FAMILIAS DE LOS CIRCUITOS INTEGRADOS

Las compuertas digitales de circuitos integrados se clasifican no solamente por su operación lógica, sino por la familia de circuitos lógicos a la cual pertenecen. Cada familia tiene un circuito electrónico básico propio, mediante el cual se desarrollan funciones y circuitos digitales más complejos. Generalmente los circuitos básicos son compuertas NAND o NOR.

Hay muchas familias de compuertas básicas en el mercado, a continuación, mencionaremos algunas que han alcanzado mayor prestigio o popularidad :

TTL (Transistor-Transistor-Logic). Su compuerta básica es la NAND y sus series más conocidas son 5400 y 7400, Su aplicación. La familia TTL tiene una lista muy extensa de circuitos digitales. Las ventajas de esta, son : costo accesible, utilización de circuitos MSI y SSI (M= Medium, S=Small, SI=Scale Integration).

AB

(AB)CC

ABC

ABC

ABC

DE

((ABC)'(DE)')'

ABC

DE

Page 24: Logica Digital 2

Las desventajas : alto consumo de potencia y no se pueden manejar circuitos integrados con LSI (Large Scale Integration) .

ECL (Emiter- Copler -Logic). Esta familia se designa con la serie 10,000 y tienen 3 terminales para suministro de poder. Se utilizan en las compuertas LSI, MSI y SSI. Las ventajas son las mismas de TTL y las desventajas son : incompatibilidad electrónica con otras familias.

MOS (Metal- Oxide -Semiconductor). Se usa en compuertas de todas las escalas de integración. Las ventajas son: pueden usarse en circuitos que requieren alta densidad de componentes y tienen mediano consumo de poder. Mientras que las desventajas son: la susceptibilidad a la estática. Las series de MOS son: 4000

CMOS (Complementary - Metal - Oxide - Semiconductor). Maneja la serie 4000, su compuerta básica es la NOR, se utiliza en grande y mediana escala de integración (LSI o MSI), las ventajas de ellos son : pueden utilizarse en circuitos con altísima densidad de componentes y requiere de un pequeño consumo de energía. Las desventajas son : el precio y su susceptibilidad a la estática.

EJERCICIOS :

1. Demuestre por medio de tablas de verdad la validez del teorema de DeMorgan para 3 variables :

(X'+Y')=X'Y' = (XY)'X'+Y'

Sean X,Y,Z ; haciendo Y+Z=B(X+Y+Z)'= (X+B)'=X'B' = X'(Y+Z)'=X'Y'Z'(XYZ)'X'+B'= X'+(YZ)'= X'+Y'+Z'

2. Encuentre el complemento de las siguientes funciones de Boole :

a) (AB'+C'D)A' (A'B+CD')A (AB'+C'D)A' (A'B+CD')A = (A'+B)(C+D')+A

b)XY+X'Y'XY+X'Y' = (X'+Y')(X'+Y')

Page 25: Logica Digital 2

3. Para las siguientes funciones, obtenga la tabla de verdad para F y F', la forma Canónica en mintérminos y en Maxtérminos para F y F' y dibuje los circuitos o diagramas lógicos de F y F'.

a) F1= XY'+XY'Z+X'Y'Z

F1= XY'+XY'Z+X'Y'Z = X Y'(Z+Z')+XY'Z + X'Y'Z' = XY'+ X'Y'Z'+XY'Z +X'Y'Z = XY'Z +XY'Z'+X'Y'Z

b)F2= B'D+A'BC'+ACD+A'BC

F2 = B'D+ A'B C'+ ACD+ A'B CF2 = B'D (A+A')+ A'B C'(D+D')+ A'B C(D+D')F2 = AB'D+A'B'D +A'BC'D+ A'BC'D'+A'BCD+A'BCD'F2 = AB'CD+AB'C'D +A'B'CD +A'B'C'D + A'BC'D + A'BC'D' + A'BCD +

A'BCD'+ABCD + AB'CDF2 = AB'CD + AB'C'D + A'B'CD +A'B'C'D + A'BC'D + A'BC'D'+ A'BCD +

A'BCD'+ ABCD

F2 = (11,9,3,1,5,4,7,6,15)F2 = (0,2,8,10,12)

XY YY X+Y X Y X Y XY XY0 0 0 0 1 1 0 10 1 0 1 1 0 1 01 0 0 1 1 0 1 01 1 1 1 0 0 0 1

Z

X

YF1

X Y Z F1 F1'0 0 0 0 10 0 1 1 0 F1= m1+ m4+m5 = (1,4,5)

0 1 0 0 1 F1 = (0,2,3,6,7)0 1 1 0 1 F1' = (0,2,3,6,7)1 0 0 1 0 F1' = (1,4,5)1 0 1 1 01 1 0 0 1 F1 = (X+Y+Z')(X'+Y+Z)(X'+Y+Z')1 1 1 0 1 La función anterior es posible reducir

Page 26: Logica Digital 2
Page 27: Logica Digital 2

MAPAS DE KARNAUGH

La complejidad de las compuertas lógicas digitales, se relacionan directamente con la complejidad de la expresión. Aunque la representación de la tabla de verdad de una función es única, existen múltiples formas algebraicas que la representan. Las funciones se pueden reducir por métodos algebraicos pero ya mencionamos que no existe una que nos garantice obtener la expresión mínima. El método del mapa de Karnaugh nos ofrece un procedimiento simple y directo para minimizar las funciones de Boole.

El mapa es un diagrama hecho de cuadros. Cada cuadro representa un mintérmino. Como cualquier función de Boole puede ser expresada en mintérminos entonces se puede reconocer cualquier función en el mapa de Karnaugh. (cada una de las áreas del mapa de Karnaugh se llama celda. Las celdas en el mapa deben tener adyacencia lógica y sólo debe presentarse el cambio de un bit entre celda y celda respectivamente).

MAPAS DE 2 Y 3 VARIABLES

PARA 2 VARIABLES

Antes de representar una función en el mapa de Karnaugh hay que llevarla a la forma Canónica.

F1=XY+XY'F1=m3+m2

F = X(Y+Y') = XY + XY'

Y

X01001101

Y

X010X'Y'00X'Y011XY'10XY

11

Y

X010m0m11m2m3

Y

X01000111

Y

X01000111

Page 28: Logica Digital 2

F(XY) = Y = Y (X + X') YX + YX'

F = X'Y'+XYF(XY) = X Y

F = X'Y + XY'F(XY) = X Y

SIMPLIFICACION DE FUNCIONES DE BOOLE

F4 = m0 + m2

F4 = (XY)= Y'

YX

0 1 F4=X'Y'+XY'

0 1 0 =Y'(X'+ X)

1 1 0 =Y'

F5(XY) = m0 + m1

F5 (XY)=X'

YX

0 1 F(XY) = X'Y'+ X'Y

0 1 1 = X'(Y'+ Y)

1 0 0 = X'

Y

X01010101

Y

X01001110

Page 29: Logica Digital 2

PARA 3 VARIABLES

YZX

00 01 11 10

0 0 0 1 0 F1= X'YZ+XY+XZ'

1 1 0 1 1 = X'YZ+XYZ+XYZ'+XYZ'+XY'Z'

= X'ÝZ+XYZ'+XY'Z'+ XYZ

YZX

00 01 11 10

0 0 0 0 0 F1= XYZ + XY'Z+ XYZ' + XY'Z'

1 1 1 1 1

SIMPLIFICACIÓN DEL MAPA DE KARNAUGH

Primero es necesario presentar la función en el mapa de Karnaugh. El siguiente paso es subdividir el área del mapa mediante lazos que encierren a 2^n cuadros adyacentes. De los lazos que encierran a 2^n mintérminos dan lugar a términos producto reducidos, en los cuales se elimina la variable o las variables que conmuten su valor lógico en la trayectoria del lazo.

Para que la función se reduzca en forma conveniente deben trazarse los lazos lo más grande posible y deben quedar encerrados en un lazo todos los números 1 del mapa. Es posible encerrar un 1 en 2 o más lazos.

YZ

X000111100m0m1m3m21m4m5m7m6

Page 30: Logica Digital 2

Por ejemplo :

Minimizar la función de Boole :

F2 (XYZ)= m2 + m3 + m4 + m5 YZ X

00 01 11 10

F2(XYZ)=XY'+X'Y = X Y 0 0 0 1 1

1 1 1 0 0

YZ X

00 01 11 10

F(XYZ) =X'YZ + XY'Z'+ XYZ + XYZ' 0 0 0 1 0

F(XYZ) = XZ'+YZ 1 1 0 1 1

F1(ABC) =A'C + A'B + A B'C + BC BC A

00 01 11 10

F1(ABC) = C + A'B 0 0 1 1 1

F1(ABC) = (1,2,3,5,7) 1 0 1 1 0

F1(ABC) = (0,4,6)

A

F1B

CUtilizando maxtérminos

Page 31: Logica Digital 2

F1'= m0 + m4 + m6 BC A

00 01 11 10

F1'= B'C'+ AC'= C'(B'+ A ) 0 1 0 0 0

1 1 0 0 1

Encuentre la forma más económica de implementar la siguiente función de Boole. F1(ABC) = (0,3,4,7)

BCA

00 01 11 10

F1(ABC) = (0,3,4,7) 0 1 0 1 0F1(ABC) = B'C'+ BC = B C 1 1 0 1 0

BCA

00 01 11 10

F1'(ABC)= B'C + BC' = B C 0 0 1 0 1F1'(ABC) = (1,2,5,6) 1 0 1 0 1

A

BC

F1'AB

C

F1'

Función reducida

F1

AB

C

Función reducida

B

C

F1

BC

F1

Page 32: Logica Digital 2

BCA

00 01 11 10

G1 ( ABC) = m0 + m1 +m2 + m3 0 1 1 1 1

G1( ABC) = A' 1 0 0 0 0

En el siguiente ejemplo se reduce de manera no óptima

BCA

00 01 11 10

G2 (ABC) = m0+m4 + m2 + m6 0 1 0 0 1

G2 (ABC) = B'C'+BC' 1 1 0 0 1

= C'(B'+B) = C'

G3 (XYZ)= m2 + m4 G3(XYZ) =X'Y Z'+ XY'Z' YZ

X00 01 11 10

= (X'Y +XY')Z' 0 0 0 0 1

=( X Y )Z' 1 1 0 0 0

G1A

G2C

B

C

F1' BC

F1'

XY

G3

Z

Page 33: Logica Digital 2

PARA 4 VARIABLES

F (ABCD) = (5,7,13,15) = A'BC'D + A'BCD + ABC'D + ABCD

CDAB

00 01 11 10 F(ABCD) =

BD (A'C'+AC) + (BD (A'C + AC')

00 0 0 0 0 = BD (A ) BD (A C)

01 0 1 1 0 = BD (A C + A C)

11 0 1 1 0 = BD

10 0 0 0 0

F (XYZW) = (0,3,8,12,14)

ZWXY

00 01 11 10 F(XYZW) = Y'Z'W'+ XYW'+ X'Y'Z W

00 1 0 1 0

01 0 0 0 0

11 1 0 0 1

10 1 0 0 0

ZWXY

00 01 11 10

00 m0 m1 m3 m2

01 m4 m5 m7 m6

11 m12 m13 m15 m14

10 m8 m9 m11 m10

BD

F

W

XF

Y

Z

Page 34: Logica Digital 2

XY ZW

00 01 11 10

00 1 1 0 0

01 1 1 0 0 F (XYZW) = (0,1,4,5,8,9,12,13) = Z'

11 1 1 0 0

10 1 1 0 0

XY ZW

00 01 11 1000 1 1 1 1

01 1 0 0 0 F (XYZW) = (0,1,2,3,4,8,12) = Z'W'+ X'Y'

11 1 0 0 0

10 1 0 0 0

XY ZW

00 01 11 10

00 0 0 0 0

01 0 1 1 1 F' (XYZW) = (5,6,7,9,10,11,13,14,15)

11 0 1 1 1 = YW + XW +XZ +YZ

10 0 1 1 1

FZ

F

X

Y

Z

W

W

X

Y

Z

F'

Page 35: Logica Digital 2

Tema II.- LÓGICA COMBINACIONAL

CIRCUITO COMBINACIONAL 

Es un circuito en el cual la salida en un instante (tiempo presente) depende única y exclusivamente de las entradas en el tiempo presente.

CIRCUITO SECUENCIAL

Es un circuito lógico en el cual la salida presente depende de la entrada presente y también de entradas anteriores.

PASOS PARA EL DISEÑO DE CIRCUITOS COMBINACIONALES

1.- Se enuncia el problema

2.- Se determina el número requerido de variables de entrada y el número requerido de variables de salida.

3.- Se le asignan letras a las variables de entrada y de salida.

4.- Se deduce la tabla de verdad que define las relaciones entre las entradas y las salidas.

5.- Se obtiene la función de Boole simplificada para cada salida.

6.- Se dibuja el diagrama de compuertas.

Esquema de bloque

n Entradas

mSalidas.

.

.

.

.

.

Page 36: Logica Digital 2

Ejemplo :

Diseñar un circuito combinacional que detecte un número en código BCD múltiplo de 3.

X Y Z W F1 F1

0 0 0 0 0 00 0 0 1 0 00 0 1 0 0 0 BCD0 0 1 1 1 10 1 0 0 0 0 Se trata de un número binario de 4 bits 0 1 0 1 0 0 Cuyo valor decimal varía entre 0 y 9,0 1 1 0 1 10 1 1 1 0 01 0 0 0 0 01 0 0 1 1 11 0 1 0 0 X1 0 1 1 0 X1 1 0 0 0 X CONDICIONES 1 1 0 1 0 X DE1 1 1 0 0 X NO IMPORTA1 1 1 1 0 X

XY ZW 00 01 11 10

00 0 0 1 001 0 0 0 1 F1(XYZW) = (3,6,9) 11 0 0 0 010 0 1 0 0

F1 (XYZW)= X'Y'ZW+X'YZW'+XY'Z'W = X'Z (Y'W + YW') + XY'Z'W = X'Z (Y W)

XYZW

F1

BCD

Page 37: Logica Digital 2

Una condición de NO IMPORTA, puede considerarse en el mapa de Karnaugh como 1 o 0 según convenga para hacer mínima la función.

ZWXY

00 01 11 10

00 0 0 1 0

01 0 0 0 1 F1(XYZW) = XW + Y'ZW + YZW'

11 X X X X

10 0 1 X X

HACER EL DIAGRAMA DE COMPUERTAS.

F1

W

X

Y

Z

CIRCUITO COMBINACIONAL QUE DETECTA UN NÚMERO EN CÓDIGO BCD MÚLTIPLO DE 3.

Page 38: Logica Digital 2

Diseñar un circuito que acepte un número binario de 4 bits (Nibble) y que indique de alguna forma cuando el número es par, non o primo.

X Y Z W F1 F2

0 0 0 0 0 10 0 0 1 1 10 0 1 0 0 1 NIBLE0 0 1 1 1 10 1 0 0 0 1 Número binario de 4 bits0 1 0 1 1 10 1 1 0 0 1 CODIGO DE SALIDA0 1 1 1 1 1 F1 F21 0 0 0 0 1 PAR 0 11 0 0 1 1 0 PRIMO 1 11 0 1 0 0 0 NON 1 01 0 1 1 1 11 1 0 0 0 11 1 0 1 1 11 1 1 0 0 11 1 1 1 1 0

XY ZW 00 01 11 10

00 0 1 1 001 0 1 1 0 F1 (XYZW) = W11 0 1 1 010 0 1 1 0

XY ZW 00 01 11 10 F2(XYZW) = W'+ X'+ YZ'+ Y'Z

00 1 1 1 101 1 1 1 111 1 1 0 110 1 0 1 1

XYZW

Nibble F1 F2

Page 39: Logica Digital 2

XY ZW 00 01 11 10 F2' (XYZW) = XY'Z'W +XZYW

00 0 0 0 0 = XW( Y'Z' + YZ)01 0 0 0 011 0 0 1 010 0 1 0 0

ZX Y WF1

F2

ZX Y WF1

F2

Utilizando compuertas NAND:

Page 40: Logica Digital 2

CONVERSIÓN ENTRE CÓDIGOS

Frecuentemente los sistemas digitales realizan conversiones entre diferentes códigos dependiendo del nivel de operación o proceso que se requiere efectuar.

Por ejemplo : Existen algunos códigos apropiados para el intercambio de información,

como el código ASCII (American Standard Code for Information Interchange). Existen otros códigos apropiados para el manipuleo lógico como es el código NBC (Natural Binary Code). Para acoplar 2 sistemas con diferente código debe diseñarse un circuito combinacional capaz de realizar la codificación en forma eficiente.

NBC GRAY REFLEXX Y Z W A B C D0 0 0 0 0 0 0 00 0 0 1 0 0 0 10 0 1 0 0 0 1 10 0 1 1 0 0 1 00 1 0 0 0 1 1 00 1 0 1 0 1 1 10 1 1 0 0 1 0 10 1 1 1 0 1 0 01 0 0 0 1 1 0 01 0 0 1 1 1 0 11 0 1 0 1 1 1 11 0 1 1 1 1 1 01 1 0 0 1 0 1 01 1 0 1 1 0 1 11 1 1 0 1 0 0 11 1 1 1 1 0 0 0

A B

XY ZW 00 01 11 10 XY

ZW 00 01 11 10

00 0 0 0 0 00 0 0 0 001 0 0 0 0 01 1 1 1 111 1 1 1 1 11 0 0 0 010 1 1 1 1 10 1 1 1 1

XYZW

ABCD

Page 41: Logica Digital 2

C D

XY ZW 00 01 11 10 XY

ZW 00 01 11 10

00 0 0 1 1 00 0 1 0 101 1 1 0 0 01 0 1 0 111 1 1 0 0 11 0 1 0 110 0 0 1 1 10 0 1 0 1

A = XB = X YC = YZ'+ Y'Z = Y ZD = Z'W + W'Z = Z W

DISEÑAR EL CIRCUITO ANTERIOR CON COMPUERTAS NAND

ZX Y WA

B

C

D

CONVERTIDOR DE CÓDIGOS NBC A GRAY

Page 42: Logica Digital 2

Diseñar un convertidor de código BCD a Exe-3

AB CD 00 01 11 10 AB

CD 00 01 11 10

00 0 0 0 0 00 0 1 1 101 0 1 1 1 01 1 0 0 011 1 0 0 0 11 1 0 0 010 1 1 1 1 10 0 1 1 1

AB CD 00 01 11 10 AB

CD 00 01 11 10

00 1 0 1 0 00 1 0 0 101 1 0 1 0 01 1 0 0 111 1 0 1 0 11 1 0 0 110 1 0 1 0 10 1 0 0 1

AB CD 00 01 11 10

00 0 0 0 001 0 0 0 011 0 1 1 110 0 0 0 0

F1 = ABD + ABCF2 = AB'+ AC'D'+ A'BD + A'BCF3 = B'D + B'C + BC'D'F4 = C'D'+ CDF5 = D'

ABCD

F1

F2

F3

F4

F5

Convertidor de código

BCD a EXE-3

Page 43: Logica Digital 2

A B C D

F1

F2

F3

F4

F5

CONVERTIDOR DE CÓDIGO BCD A Exe-3