Apuntes Electronica Digital

  • 3,448 views
Uploaded on

 

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,448
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
150
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ELECTRÓNICA DIGITAL: Una señal digital varía de forma discreta o discontinua a lo largo del tiempo. Parece como si la señal digital fuera variando «a saltos» entre un valor máximo y un valor mínimo. Por ejemplo, el interruptor de la luz sólo puede tomar dos valores o estados: abierto o cerrado, o la misma lámpara: encendida o apagada. Por otra parte, una señal analógica es una señal que varía de forma continua a lo largo del tiempo. La mayoría de las señales que representan una magnitud física (temperatura, luminosidad, humedad, etc.) son señales analógicas. Las señales analógicas pueden tomar todos los valores posibles de un intervalo; y las digitales solo pueden tomar dos valores posibles. CIRCUITOS COMBINACIONALES: Son aquellos circuitos digitales que en cada instante representan un estado de salida que depende únicamente del estado de sus entradas. Puertas lógicas: AND, OR, NAND, NOR, etc Tipos MSI: Codificadores Decodificadores Multiplexores, etc… SISTEMA BINARIO: El sistema binario, en matemáticas e informática, es un sistema de numeración en el que los números se representan utilizando solamente las cifras cero y uno (0 y 1). Los ordenadores trabajan internamente con dos niveles de voltaje, por lo que su sistema de numeración natural es el sistema binario (encendido 1, apagado 0). BIT: unidad mínima de información con dos estados posibles, el cero y el uno. Para pasar un nº en sistema binario en su equivalente en sistema decimal: 11011,01 2= 1.24+1.23+0.22+1.21+1.20+0.2-1+1.2-2 = 27,25 10 Bit de menor peso o menos significativo Bit de mayor peso o más significativo Otros ejemplos: 11101 2= 1.24+1.23+1.22+0.21+1.20 = 29 10 11101,11 2 = 1.24+1.23+1.22+0.21+1.20+1.2-1+1.2-2 = 29,75 10 1
  • 2. Para pasar un número decimal entero a binario: se divide por dos sucesivamente hasta que el último cociente sea inferior a 2. El último bit será el bit más significativo, seguido de los restos comenzando del último al primero. Ejemplo: transforma 27 en su equivalente binario: 27 2 1 13 2 1 6 2 Bit menos 0 3 2 significativo 1 1 Bit más significativo Orden ascendente Luego: 2710= 11011 2 Pasar un número decimal fraccionario a binario: la parte decimal se multiplica por 2 y se toma la parte entera. La parte decimal del número obtenido se vuelve a multiplicar por 2 y el proceso se repite hasta que el resultado sea 0 ó lleguemos a la precisión necesaria: 0,25 x 2 = 0,50 1er dígito fraccionario : 0 0,50 x 2 = 1,00 2o dígito fraccionario : 1 0,00 x 2 = 0,00 3er dígito fraccionario : 0 0,25 10 = 0,010 2 Ejercicio: pasa el número decimal fraccionario 128,45 a binario: 1.- Se transforma la parte entera dividiendo sucesivamente por 2: 128 2 0 64 2 0 32 2 0 16 2 Bit menos 0 8 2 significativo 0 4 2 Orden ascendente 0 2 2 0 1 Bit más significativo 2.- Se transforma la parte decimal multiplicando sucesivamente por 2: 0,45 x 2 = 0,90 1er dígito fraccionario : 0 0,90 x 2 = 1,80 2o dígito fraccionario : 1 0,80 x 2 = 1,60 3er dígito fraccionario : 1 0,60 x 2 = 1,20 4o dígito fraccionario : 1 0,20 x 2 = 0,40 5o dígito fraccionario : 0 0,40 x 2 = 0,80 6o dígito fraccionario : 0 0,80 x 2 = 1,60 7o dígito fraccionario : 1 0,60 x 2 = 1,20 8o dígito fraccionario : 1 2
  • 3. 3.- Quedaría así: 128,45 10 = 10000000,01110011 2 3
  • 4. Código binario natural : es un código que hace corresponder a un número digital su correspondiente binario, es decir utilizando solamente los símbolos 0 y 1. Existen otros códigos binarios, como BCD, hexadecimal, etc que no son objeto de este curso. DECIMAL BINARIO 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111 4
  • 5. TABLA DE ESQUEMA CIRCUITO FUNCIÓN VERDAD ELÉCTRICO ELECTRÓNICO 1 SUMA S = a+b Ó UNIÓN a b s OR +V 0 0 0 0 1 1 1 0 1 1 1 1 1 +V 2 PRODUCTO Ó S = a.b a b s INTERSECCIÓN 0 0 0 0 1 0 & AND +V 1 0 0 1 1 1 a s +V S=a 0 0 3 IGUALDAD 1 1 1 +V 4 NEGACIÓN a s NOT S=a 0 1 1 0 a b s 0 0 1 5 SUMA 0 1 0 NEGADA S = a+b 1 0 0 1 1 0 1 NOR = a.b +V a b s 0 0 1 6 PRODUCTO S=a.b 0 1 1 NEGADO 1 0 1 = 1 1 0 NAND a+b & +V a b s 0 0 0 7 OR s = a⊕b 0 1 1 EXCLUSIVA 1 0 1 1 1 0 =1 XOR a.b + a.b 5
  • 6. ALGEBRA DE BOOLE: Opera con dos variables que admiten sólo dos valores (V ó F, 0 ó 1 ). Estos símbolos no representan números, sino dos estados diferentes de un dispositivo: lámpara encendida (1) apagada (0) interruptor abierto (0) cerrado (1) Lógica de niveles: Establece correspondencia entre los niveles de tensión y los estados lógicos 0 y 1. +5V 0V PROPIEDADES tDEL ÁLGEBRA DE BOOLE: Lógica negativa 1 0 Lógica positiva Conmutativa: a+b=b+a 0 1 a.b=b.a Asociativa : a + ( b + c ) = (a + b ) + c = a + b + c a . ( b . c ) = (a . b ) . c = a . b . c Distributiva: a + b . c = ( a + b) ( a + c ) a . ( b + c ) = a .b + a . c POSTULADOS: a+1=1 a.1=a a+0=a a.0=0 a+a=a a.a=a a+ a =1 a. a =0 a =a 6
  • 7. TEOREMAS: • a + a . b = a (si se saca factor común de a, queda: a ( 1 + b ); y 1 + b = 1 ) • a(a+b)=a • a+ a .b = a + b (aplicando la propiedad distributiva: (a + a ) (a + b) = a + b ) • a ( a + b ) = a a + a b = ab TEOREMAS DE DEMORGAN: 1º a + b = a.b 2º a.b = a + b 7
  • 8. OBTENCIÓN DE UNA EXPRESIÓN A PARTIR DE UNA TABLA DE VERDAD. Formas canónicas. Cuando diseñemos circuitos combinacionales, será muy normal que tengamos una tabla de verdad que haya que convertir a expresiones booleanas. El proceso es sencillo, sin embargo ocurre que dada una tabla de verdad se pueden obtener multitud de expresiones diferentes, todas ellas equivalentes. Nuestra misión consistirá en obtener la expresión más simplificada posible. FORMAS CANÓNICAS A partir de una tabla de verdad, podemos obtener múltiples expresiones para la misma función. Todas esas expresiones son equivalentes y podemos obtener unas expresiones de otras aplicando las propiedades del Álgebra de Boole. Existen dos tipos de expresiones que se obtienen directamente de la tabla de verdad, de forma inmediata. Se denominan formas canónicas. Se caracterizan porque en todos los términos de estas expresiones aparecen todas las variables. PRIMERA FORMA CANÓNICA Una función que esté en la primera forma canónica se caracteriza porque está formada por sumas de productos o minterms. Y recordemos que por ser una forma canónica, en todos sus términos se ecuentran todas sus variables. Un ejemplo de una función de 3 variables, expresada en la primera forma canónica es la siguiente: f = a.b.c + a . b .c + a .b.c Vemos que está constituida por la suma de tres términos y en cada uno de los términos están todas las variables. La obtención de la primera forma canónica, a partir de una tabla de verdad es inmediato. El proceso se denomina “desarrollo de la tabla de verdad por unos”. Tomamos la tabla de verdad y sólo nos fijamos en las filas en las que la función vale ’1’, olvidándonos del resto. Por cada una de estas filas tendremos un sumando, constituido por el producto de todas las variables, aplicando la siguiente regla: Si una variable está a ’0’, en la fila escogida, usaremos la variable negada, y si está a ’1’ usaremos la variable sin negar. Ejemplo: Obtener la primera forma canónica, a partir de la siguiente tabla de verdad: a b c f 0 0 0 1 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 8
  • 9. Nos fijamos en las filas en las que f=1. Vemos que hay 5 filas, por tanto la función f se podrá expresar como suma de 5 términos. Tomemos la primera fila en la que f=1. En ella vemos que a=0, b=0 y c=0, por tanto el primer término será: a.b.c . De esta forma vamos obteniendo el resto de términos. La función f será la suma de estos 5 términos: f = a bc + a bc + abc + a bc + abc Esta función está constituida por la suma de 5 términos y en cada uno de ellos es el producto de las tres variables, bien negadas o no. La primera forma canónica también se puede representar así: f= ∑ 3 m (0,1,3,5,6) ; donde m significa minterm o producto de variables, el nº3 debajo del símbolo sumatorio es el nº de variables y los nº s entre paréntesis corresponden a las posiciones que ocupan los “unos de la función” en la tabla de verdad. SEGUNDA FORMA CANÓNICA Una función en la segunda forma canónica se caracteriza porque está formada por un producto de sumas o maxterms. Y en todos sus términos deben aparecer todas sus variables, bien negadas o no. Está constituida por términos que van multiplicados, y cada uno de ellos está formado por sumas. La obtención de la segunda forma canónica, a partir de una tabla de verdad es inmediato. El proceso se denomina “desarrollo de la tabla de verdad por ceros”. Tomamos la tabla de verdad y sólo nos fijamos en las filas en las que la función vale ’0’, olvidándonos del resto. Por cada una de estas filas tendremos un término, constituido por la suma de todas las variables, aplicando la siguiente regla: Si una variable está a ’1’, en la fila escogida, usaremos la variable negada, y si está a ’0’usaremos la variable sin negar. Es decir, que esta regla es justo la contraria que cuando estábamos trabajando con la primera forma canónica. En el ejemplo anterior, nos fijamos en las filas en las que f=0. En este ejemplo hay tres. Cada fila representa un término, que estará multiplicando al resto. Tomamos la primera fila en la que f=0 y vemos que a=0, b=1 y c=0. Aplicando la regla, el término que obtenemos es: a + b + c . De esta forma vamos obteniendo el resto de términos. La función f será el producto de estos 3 términos: 9
  • 10. f = ( a + b + c )( a + b + c )( a + b + c ) La segunda forma canónica también se puede representar así: f= ∏3 M (2,4,7) ; donde M significa maxterm o suma de variables, el nº3 debajo del símbolo producto es el nº de variables y los nºs entre paréntesis corresponden a las posiciones que ocupan los “ceros de la función”. Demostación de que la 1ª FORMA CANÓNICA y la 2ª FORMA CANÓNICA son iguales: La primera forma canónica desarrollada mediante los unos de la tabla de verdad es: f= ∑3 m (0,1,3,5,6) La función negada es: f= ∑ 3 m (2,4,7) Si la negamos dos veces: (Aplicando f = ∑ 3 m (2,4,7) = m 2 + m 4 + m 7 = abc + a bc + abc = DeMorgan) = (a + b + c)(a + b + c)(a + b + c) = M2.M4.M7 = ∏ M (Aplicando = abc . a bc . abc = DeMorgan) 3 (2,4,7) 10
  • 11. SIMPLIFICACIÓN DE FUNCIONES ALGEBRAICO Utilizaremos dos métodos GRÁFICO DE KARNAUGH ALGEBRAICO Utilizando los teoremas y propiedades del Álgebra de Boole: Ejemplo: Simplificar la función f = abc + abc + abc = = (a + a ) bc + abc = bc + abc = b(c + a c) = b(c + a)(c + c) = b(c+a) = bc+ba MÉTODO GRÁFICO DE KARNAUGH Se agrupan los unos adyacentes de la tabla de 8 en 8, de 4 en 4, de 2 en 2 y se elimina la variable que cambia de valor. La tabla es cerrada, es decir, la fila de arriba es adyacente a la de abajo, y la columna de la izquierda es adyacente a la de la derecha. Ejemplo 1 con 3 variables: f = abc + abc ab ab 0 0 11 10 c 0 1 0 1 Luego: 1 1 f = ab Ejemplo 2 con 3 variables: f = abc + abc + a bc + abc + a bc ab ab 0 0 11 10 c 0 1 c 0 1 Luego: 1 1 1 1 1 f = ab + c 11
  • 12. Ejemplo 3 con 3 variables: (es el ejemplo de simplificación algebraico anterior) f = abc + abc + abc ab 0 0 11 10 c 0 1 ab 0 1 bc Luego: 1 1 1 f = ab +bc Ejemplo 4 con 3 variables: f = a bc + a bc + abc + abc + a bc + a bc ab 0 0 11 10 a c 0 1 0 1 1 1 b Luego: 1 1 1 1 f = a +b Ejemplo 5 con 4 variables: f = abcd + abcd + abcd + abcd + a bcd + a bcd + a bcd + a bcd + a bcd bd ab 0 0 11 10 cd 0 1 bd 00 1 1 abc Luego: 01 1 1 f = bd + abc + bd 11 1 1 1 10 1 1 Ejercicio 1: Simplifica mediante el método algebraico la siguiente función: f = cba + cba + cba + c ba + c ba = cb(a + a ) + cba + c b(a + a ) = cb + cba + c b = (*) = b(c + ca ) + c b = b(c + c)(c + a ) + c b = bc + ba + c b (*) Obtenemos dos resultados posibles, según si sacamos factor común de b ó de c. Si sacamos c : = cb + c( b + ba ) = cb + c b + ca 12
  • 13. Ejercicio 2: Dada la función f , simplificar mediante Karnaugh, implementar mediante puertas lógicas, implementar con puertas NAND, implementar con puertas NAND de dos entradas: f = a bc + a bc + abc + abc + a bc + abc ab 0 0 11 10 c 0 1 bc 0 1 1 1 bc Luego: 1 1 1 1 f = bc +bc+ a a Implementar mediante puertas lógicas: a a b b c c a bc f = bc +bc+ a bc Implementar mediante puertas NAND: Se niega dos veces la función f para poder expresar los sumandos como productos negados, es decir, puertas NAND f = a + bc + bc = a + bc + bc = a.bc.bc a b b c c a bc f = a.bc . bc bc 13
  • 14. Implementar mediante puertas NAND de dos entradas: a b b c c a a bc a bc bc f = a.bc . bc bc c Ejercicio 3: Dada la función f , simplificar mediante Karnaugh, implementar mediante puertas lógicas, implementar con puertas NAND, implementar con puertas NAND de dos entradas: f = a bcd + abcd + abcd + a bcd + abcd + abcd + abcd + a bcd + abcd + abcd + a bcd d ab 0 0 11 10 cd 0 1 ab 00 1 1 1 1 bc Luego: 01 1 1 f = d + bc + a b 11 1 10 1 1 1 1 Implementar mediante puertas lógicas (no se permiten puertas de tres entradas): a a b b c c d d ab bc f = a b + bc + d 14
  • 15. Implementar mediante puertas NAND de 2 entradas: Se niega dos veces la función f para poder expresar los sumandos como productos negados, es decir, puertas NAND f = d.( bc).(ab) a ab b c c d d d bc d bc f = d.( bc).(ab) bc ab 15
  • 16. CIRCUITOS MSI: DECODIFICADOR, CODIFICADOR, MULTIPLEXOR. DECODIFICADOR: Circuito integrado por el que se introduce un número y se activa una y sólo una de las salidas permaneciendo el resto de salidas desactivadas. n entradas 2n salidas Decodificador 2 a 4: D La señal de inhibición pone A D 0 Dec 1 todas las salidas a 0. B D 2:4 2 D 3 INH Tabla de verdad: INH A B D0 D1 D2 D3 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 0 1 1 x x 0 0 0 0 Ejemplo de aplicación: controlar un semáforo: Si utilizamos un decodificador de 2 a 4, conseguiremos controlar el semáforo asegurándonos que sólo estará activa una luz en cada momento. Además, el circuito de control que diseñemos sólo tienen que tener 2 salidas. Si el circuito de control envía el número 2, se encenderá la luz verde (que tiene asociado el número 2) y sólo la luz verde!!!. Un decodificador activa sólo una de las salidas, la salida que tiene un número igual al que se ha introducido por la entrada. En el ejemplo del semáforo, si el circuito de control envía el número 3, se activa la salida O 3y se encenderá la luz azul (y sólo esa!!). 16
  • 17. Diseño de un decodificador 2 a 4: De la tabla de verdad: D0 = A.B D1 = A.B D2 = A.B D3 = A.B A A B B D0 D1 D2 D3 Decodificador 3 a 8: Se utiliza la señal de inhibición para hacer el decodificador más grande y equivalente: S2 S1 S0 INH A B INH A B D0 D1 D2 D3 D0 D1 D2 D3 Q4 Q5 Q6 Q7 Q0 Q1 Q2 Q3 17
  • 18. Tabla de verdad: S2 S1 S0 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 1 CODIFICADOR: Es un circuito integrado que permite compactar la información generando un código de salida a partir de la información de entrada. Realiza la función inversa al decodificador. 2n entradas n salidas Ejemplo: Circuito de control de una cadena de música, y 4 botones de selección. D 0 D A D 1 Cod 2 4:2 B D 3 Sol válida Tabla de verdad: D0 D1 D2 D3 A B Sol válida 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 La solución válida será “1” siempre que haya un “1” en las señales de entrada. 18
  • 19. MULTIPLEXOR: Es un circuito integrado en el que las entradas de control seleccionan una entrada entre varias para llevar la información de ésta entrada a una única salida. 2n entradas de señal n entradas de control 1 salida D Puede haber una entrada de habilitación (E): D 0 MUX Y D 1 si está a “1” la salida sigue igual, si está a 2 D 3 E “0”, la salida es “0”. A B Tabla de verdad: E A B Y 1 0 0 D0 1 0 1 D1 1 1 0 D2 1 1 1 D3 0 X X 0 Diseño de un multiplexor 4:1 D0 D1 Y D2 D3 E Q0 Q1 Q2 Q3 Dec 2:4 A B 19
  • 20. Aplicación del multiplexor: generar funciones lógicas. ab 0 0 11 10 c 0 1 0 1 1 1 1 1 1 Las entradas se asocian a “0”, “1”, “c” ó “ c ” de la tabla de Karnaugh. c 00 c 01 Y 1 10 c 11 A B Ejercicio: Realizar la función “f” con el mínimo número de multiplexores de 8 entradas y de 4 entradas: f(a,b,c,d) = a cd + b(ad ) = a cd + b(a + d ) = a cd + ba + bd Solución: a b c d f Con 8 entradas: 0 0 0 0 0 0 0 0 1 0 0 000 0 0 1 0 0 0 001 1 0 0 1 1 0 010 1 011 0 1 0 0 1 d 100 0 1 0 1 1 0 101 0 1 1 0 1 1 110 0 1 1 1 1 d 111 1 0 0 0 0 1 0 0 1 1 a b c 1 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 20
  • 21. Con 4 entradas: Realizamos una tabla auxiliar, que no es la tabla de Karnaugh: abc 000 001 010 011 100 101 110 111 d 0 0 0 1 1 0 0 1 1 1 0 0 1 1 1 0 1 0 En el primer decodificador introducimos los valores de f para d y en el segundo los de d. En las entradas de señal se introducen “1”, “0”, “c” ó “ c ”. Los valores de f para d y para d se unen en el tercer multiplexor. 0 00 f (a,b,c,d) d 1 01 0 10 1 11 a b 00 a 01 Y 10 11 0 00 1 01 f (a,b,c,d) d d d c 10 a a c 11 a b a NOTA: Algunos ejemplos están sacados de Apuntes de clase Juan González Gómez 21