Notas de Diseño Digital Notas de Diseño Digital Introducción El objetivo de estas notas es el de agilizar las clases, incluyendo definiciones, gráficos, tablas y otros elementos que tardan en ser escritos en el pizarrón, permitiendo con ello dedicarle mas tiempo a la explicación de los temas y a ejemplos. Ningún tema se desarrolla por completo en estas notas por lo que deberán complementarse con apuntes de lo visto en clase y con la lectura de libros donde se traten estos temas. Algunas definiciones Técnica.- Conjunto de procedimientos de un arte o ciencia. Ingeniería.- La ingeniería es la aplicación de ciertos conocimientos, habilidades y actitudes, principalmente a la creación de dispositivos, estructuras y procesos que satisfagan necesidades y deseos de la sociedad. Proceso de Diseño.- Es el procedimiento general mediante el cual el ingeniero aplica sus conocimientos, aptitudes y puntos de vista a la creación de dispositivos, estructuras y procesos. Constituye la actividad primordial de la práctica de la ingeniería. I. Sistemas de Numeración I.1. Representación de los números. Las cantidades presentes en el mundo real y en la actividad humana se representan mediante su valor numérico con la finalidad de registrarlos, medirlos, monitorearlos y manipularlos aritméticamente. Representación analógica (continua) Una cantidad se representa mediante un parámetro físico cuya magnitud es proporcional al valor de ella. Las representaciones analógicas son continuas debido a que pueden variar sobre un intervalo continuo de valores. Los sistemas que emplean este tipo de representación son llamados sistemas analógicos y presentan el inconveniente de que cuando se lee una cantidad analógica puede haber ambigüedad al determinar su valor. Ígor Clavel Herrera contacto@lamochasoft.com 1 Semestre 2004-2 Notas de Diseño Digital Representación digital (discreta) Una cantidad se representa mediante combinaciones de un conjunto de símbolos denominados dígitos. Las representaciones digitales son discretas debido a que emplean un número finito de valores. Esto reduce la ambigüedad en las lecturas de los valores. Los sistemas digitales emplean circuitos que solo trabajan con valores discretos y su principal inconveniente es que como el mundo real es analógico, se requieren elementos que permitan obtener una representación discreta de él. Sistemas de numeración digital Estos sistemas discretos de numeración se componen de un número finito (M) de símbolos o numerales que se emplean como dígitos y conocida como base numérica. Son sistemas de valor posicional ya que el valor que representa cada dígito depende de su posición relativa al resto de dígitos que representan una cantidad. El dígito de menor valor posicional se le llama dígito menos significativo o LSD, y al de mayor valor posicional dígito mas significativo o MSD. La posición p es un entero negativo para dígitos ubicados a la derecha del punto fraccional y un entero positivo, incluyendo también al cero, para los dígitos ubicados a la izquierda de éste. El valor de cada posición se obtiene elevando la base M a la potencia p, y para obtener la cantidad representada por un número digital se debe multiplicar el valor de cada dígito por su valor posicional. El valor de la posición cero es siempre uno. Valores posicionales: ... M2 M1 M0 . M-1 M-2 M-3 ... Representación mediante dígitos: ... D2 D1 D0 . D-1 D-2 D-3 ... Cantidad representada: ... + D2xM2 + D1xM1 + D0 + D-1xM-1 + D-2xM-3 + ... Mientras menos símbolos estén disponibles (mientras menor sea la base) mas dígitos serán necesarios para representar las cantidades. Para indicar la base en que se encuentra un cierto valor, se le agrega como subíndice la base y opcionalmente se le puede encerrar entre paréntesis. ValorBase o (Valor)Base Sistema decimal (dec) El sistema de numeración decimal es el mas empleado y es de uso cotidiano. Se compone de diez símbolos, del 0 al 9, de forma que M=10. I.2. Conversión de base M a base 10. Siendo el sistema decimal o de base 10 el mas empleado es importante conocer el método de conversión de un valor en cualquier base a un valor en base 10 y viceversa. Si se tiene un valor decimal en cualquier base M: (...D3D2D1D0.D-1D-2D-3...)M Ígor Clavel Herrera contacto@lamochasoft.com 2 Semestre 2004-2 Notas de Diseño Digital Su valor en base 10 se obtiene multiplicando el valor decimal de cada dígito en base M por el valor posicional de dicha base: (Valor)10 = ... + [D3·M3] + [D2·M2] + [D1·M1] + D0 + [D-1·M-1] + [D-2·M-2] + [D-3·M-3] I.3. Conversión de base 10 a base M. Si se tiene un valor representado en base 10 y se desea conocer su representación en cierta base M, se debe seguir el siguiente procedimiento: 1. Dividir la parte entera del valor decimal entre el valor de la base (M) 2. El residuo de ésta será el dígito 0 del valor en base M. 3. Tomar la parte entera de la división para repetir el paso 1 y 2, aumentando cada vez en uno el valor posicional del dígito hasta que el resultado entero de la división sea cero. 4. Cuando el resultado de la división sea menor que 1, el residuo de ésta división será el dígito mas significativo. Si el valor en base 10 tiene parte fraccional, se debe convertir ésta por separado como se indica a continuación: 1. Multiplicar la parte fraccional del valor decimal por el valor de la base (M) 2. La parte entera del resultado será el dígito -1 del valor en base M. 3. Tomar la parte fraccional de la multiplicación para repetir el paso 1 y 2, reduciendo cada vez en uno el valor posicional del dígito hasta que el resultado fraccional de la multiplicación sea cero o se tenga el número deseado de dígitos fraccionales en el valor representado en base M. 4. Cuando se cumpla lo anterior, la parte entera del resultado de la última multiplicación será el dígito menos significativo. I.4. Sistema binario, octal y hexadecimal. Sistema binario (bin) Este sistema representa las cantidades en base 2 empleando únicamente dos símbolos, 0 y 1. A estos dígitos binarios también se les conoce como bits, por lo que en el sistema binario los dígitos mas y menos significativos se les conoce como bit mas significativo y bit menos significativo, MSB y LSB respectivamente. Sus valores posicionales son los siguientes: Posición: ... 3 2 1 0 . -1 -2 -3 ... Valor posicional: ... 23 22 21 20 . 2-1 2-2 2-3 ... ... 8 4 2 1 . 0.5 0.25 0.125 ... Sistema octal (oct) Este sistema representa las cantidades en base 8 empleando ocho símbolos, del 0 al 7. Ígor Clavel Herrera contacto@lamochasoft.com 3 Semestre 2004-2 Notas de Diseño Digital Sus valores posicionales son los siguientes: Posición: ... 3 2 1 0 . -1 -2 -3 ... Valor posicional: ... 83 82 81 80 . 8-1 8-2 8-3 ... ... 512 64 8 1 . 0.12500 0.01563 0.00195 ... Sistema hexadecimal (oct) Este sistema representa las cantidades en base 16 empleando diez y seis símbolos, del 0 al 9 y las letras A a la F para representar los valores 10 al 15. Sus valores posicionales son los siguientes: Posición: ... 3 2 1 0 . Valor posicional: ... 163 162 161 160 . ... 4096 256 16 1 -1 -2 -3 ... 16-1 16-2 16-3 ... . 0.06250 0.00391 0.00024 ... Tabla comparativa Hexadecimal Decimal Octal Binario 0 0 0 0000 1 1 1 0001 2 2 2 0010 3 3 3 0011 4 4 4 0100 5 5 5 0101 6 6 6 0110 7 7 7 0111 8 8 10 1000 9 9 11 1001 A 10 12 1010 B 11 13 1011 C 12 14 1100 D 13 15 1101 E 14 16 1110 F 15 17 1111 I.5. Conversión de base binaria a octal y viceversa. Conversión de binario a octal Se agrupan los bits del valor en base 2 de tres en tres. Si hacen falta dígitos para completar las tercias, ya sea a la izquierda del MSB o a la derecha del LSB, se agregan ceros, con lo que no se altera la cantidad representada. Finalmente cada tercia se sustituye por su dígito equivalente octal. Ígor Clavel Herrera contacto@lamochasoft.com 4 Semestre 2004-2 Notas de Diseño Digital Conversión de octal a binario Se sustituye cada dígito octal del valor en base 8 por sus valor binario de tres dígitos correspondiente. I.6. Conversión de base binaria a hexadecimal y viceversa. Conversión de binario a hexadecimal Se agrupan los bits del valor en base 2 de cuatro en cuatro. Si hacen falta dígitos para completar los grupos de cuatro dígitos, ya sea a la izquierda del MSB o a la derecha del LSB, se agregan ceros, con lo que no se altera la cantidad representada. Finalmente cada grupo de cuatro dígitos binarios se sustituye por su dígito equivalente hexadecimal. Conversión de hexadecimal a binario Se sustituye cada dígito hexadecimal del valor en base 16 por sus valor binario de cuatro dígitos correspondiente. I.7. Operaciones aritméticas con números binarios no signados Las operaciones aritméticas en cualquier base se efectúan de la misma forma que en base 10 aunque se debe tomar en cuenta que el acarreo en cada caso sucede cuando se tiene un valor mayor al que se puede representar en cada base. En este curso se pondrá especial atención en la aritmética binaria, es decir, operaciones con números en base 2. I.8. Sistemas de numeración complementarios. Complementos • Complemento a la base: Es el valor que se le debería sumar a un número en base M para obtener un acarreo en el MSD. • Complemento a la base menos uno: Es el valor que se le debería sumar a un número en base M para obtener un número en que todos sus dígitos sean el mayor de la base. Los sistemas de numeración complementarios que nos interesan son los de base 2. Antes de convertir un valor binario a una forma complementaria se debe definir el número de dígitos binarios, o bits, que se ocupará para las representaciones. Este número de dígitos deberá permanecer constante para conservar las equivalencias. Forma complemento a 1 El complemento a 1 de un valor binario se obtiene cambiando cada dígito 0 por un dígito 1 y viceversa. Éste es el valor que debería sumársele al valor representado para obtener puros dígitos 1 en el resultado. Ígor Clavel Herrera contacto@lamochasoft.com 5 Semestre 2004-2 Notas de Diseño Digital Forma complemento a 2 El complemento a 2 de un valor binario se obtiene sumándole 1 al complemento a 1 del valor. Éste es el valor que debería sumársele al valor representado para obtener un acarreo en el resultado. I.9. Representación binaria de números signados. Bit de signo Es el bit ubicado a la izquierda del MSB y que sirve para indicar si el número es positivo (cuando es 0) o negativo (cuando es 1). Para un sistema de n bits se dispone de n-1 bits para representar el valor del número, según el sistema empleado para ello, pues el bit restante es el de signo. Sistema signo – magnitud Se representa mediante la magnitud absoluta del valor binario y colocando el dígito correspondiente a su signo en el bit de signo. El valor cero en binario puede representarse con signo tanto positivo como negativo, con lo que el rango de valores representables es simétrico. Sistema complemento a 2 Este sistema representa los valores negativos mediante su forma de complemento a 2 y los positivos los deja igual. Como cada número tiene solo un complemento a 2, bajo este sistema el cero solo tiene una forma de ser representado, por lo que el rango de valores representables es asimétrico. I.10. Operaciones aritméticas con números binarios signados. Se emplea la representación de números negativos mediante complemento a 2, por lo que es importante recordar que el número de bits con que se representen las cantidades debe ser constante e igual para cada operando. Negación Es la operación de cambiarle el signo a un número. Para negar un número se le debe aplicar el complemento a 2. Si el valor original representaba un número negativo en complemento a 2, al volverle a aplicar éste se tendrá el valor positivo. Suma Se efectúa igual que para números no signados. Si un o ambos operandos son negativos, deberán representarse en complemento a 2 antes de efectuar la operación. Si se presenta un acarreo (un uno después del bit de signo) este se desechará y el resultado se compondrá sólo del número de dígitos previamente definido. • Desborde aritmético: Se presenta cuando el resultado de una suma requiere mas bits de los disponibles para representarse, con lo que se ocupará Ígor Clavel Herrera contacto@lamochasoft.com 6 Semestre 2004-2 Notas de Diseño Digital erróneamente el bit de signo arrojando un resultado erróneo pues el verdadero signo estará representado por el acarreo. Resta Para efectuar la resta de dos números signados se debe negar el sustraendo y sumárselo al minuendo. Multiplicación Si uno o ambos factores son negativos, se niegan y se efectúa la multiplicación entre dos números no signados. Como resultado de esto el bit de signo no corresponderá al signo correcto, por lo que se debe utilizar la ley de los signos para corregir su valor. División Siguiendo un procedimiento equivalente al de la multiplicación. II. Códigos II.1. Introducción. • Código: Grupo de símbolos mediante los cuales se representa información en forma de números, letras o palabras. • Codificar: Representar la información mediante un código. • Decodificar: Recuperar la información a partir de un código. II.2. Bits, bytes, palabras y nibbles. • Bit: Dígito binario. • Palabra: Grupo de bits que conforman información codificada en binario. • Byte: Nombre de las palabras de ocho bits. • Nibble: Grupo de cuatro bits, superiores o inferiores, de un byte. Cada uno almacena uno de los dos dígitos hexadecimales equivalentes que componen un byte. una unidad para representar II.3. Códigos binarios, BCD, reflejados, exceso 3, alfanuméricos y Gray. Códigos binarios Codifican información binaria mediante los símbolos binarios 1 y 0. Ígor Clavel Herrera contacto@lamochasoft.com 7 Semestre 2004-2 Notas de Diseño Digital Códigos decimales Se emplean para codificar los dígitos decimales mediante representaciones binarias. • Código binario directo: Es la representación directa de un número decimal en su valor equivalente en base 2. • Código decimal codificado en binario (BCD): Cada dígito decimal se representa mediante su equivalente binario de cuatro bits. Sólo se emplean las combinaciones 00002 al 10012 debido a que son diez los dígitos que se codifican. Dígito Decimal Código BCD 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 • Código BCD exceso 3: En general un código BCD con exceso se construye sumando el valor de dicho exceso a cada código binario. En el caso del BCD x 3 (la equis representa exceso) se le suma tres a cada uno de forma que todos los elementos del código tienen al menos un uno. Dígito Decimal Código 0 1 2 3 4 5 6 7 8 9 BCD exceso 3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 • Código BCD empaquetado: Es la representación de dos dígitos codificados en BCD en un solo byte, ocupando cada código un nibble. • Código BCD extendido: Es la representación de un único dígito codificado en BCD en un solo byte. Ocupa el nibble mas bajo y el resto de los bits son ceros. Código Gray • Código contínuo o de cambio mínimo: Son aquellos códigos binarios en que los elementos contiguos del código varían su valor en un solo bit. La posición de Ígor Clavel Herrera contacto@lamochasoft.com 8 Semestre 2004-2 Notas de Diseño Digital los bits no tiene ningún valor por lo que no se emplean en operaciones aritméticas. • Código Cíclico: Son aquellos códigos binarios en que el cambio mínimo se conserva entre el último y el primer valor, por lo que se pueden recorrer de forma cíclica todos sus elementos cambiando el valor de un solo bit. El código Gray es un código cíclico y continuo para dígitos hexadecimales. Dígito Hexadecimal Valor 0 1 2 3 4 5 6 7 8 9 A B C D E F Decimal Código Gray 0 0000 1 0001 2 0011 3 0010 4 0110 5 0111 6 0101 7 0100 8 1100 9 1101 10 1111 11 1110 12 1010 13 1011 14 1001 15 1000 Códigos alfanuméricos Representan no sólo números si no además letras, signos de puntuación y caracteres especiales. II.4. Paridad y detección de errores. La paridad se refiere a la existencia de un número par o impar de unos en un grupo de bits transmitidos por medios electrónicos (en un sistema digital de comunicaciones). Se emplea como método de detección de errores. Si un grupo de bits que llega al receptor no cumple con tener un número de bits par o impar, dependiendo de lo que se establezca previamente, puede significar que el valor de algún bit es erróneo. Sin embargo solo es confiable suponiendo que un solo bit a la vez pudiera llegar mal. • Bit de paridad: Es un bit extra agregado al grupo de bits transmitidos. Su valor dependerá del método de paridad empleado y del número de unos presentes en el grupo de bits. • Paridad par: El valor del bit obligará a que se tenga una cantidad par de unos dentro del grupo de bits a transmitir, incluyéndolo a él Ígor Clavel Herrera contacto@lamochasoft.com 9 Semestre 2004-2 Notas de Diseño Digital • Paridad impar: El valor del bit obligará a que se tenga una cantidad impar de unos dentro del grupo de bits a transmitir, incluyéndolo a él. III. Álgebra de Boole Representación de variables boleanas Representación Ejemplo Variable A de un solo bit A Número A de cuatro bits A3 A2 A1 A0 Variable B de un solo bit negada /B, B Número D de 8 bits D7 D6 D5 D6 D5 D4 D3 D2 D1 D0 Teoremas de boole para una variable X•0 = 0 X+0 = X X •1 = X X•X = X X +1 = 1 X+X = X X•X = 0 X+X =1 X=X Teoremas de boole para múltiples variables X+Y = Y+X X•Y = Y•X (conmutativa) (conmutativa) X • (YZ) = ( XY ) • Z (asociativa) X + (Y + Z) = (X + Y) + Z (asociativa) X + (YZ) = (X + Y) • (X + Z) X • (Y + Z) = XY + XZ (distributiva) (distributiva) X + XY = X X + XY = X + Y XY + X Y = X XY + XZ + YZ = XY + XZ (X + Y ) • ( X + Z) • ( Y + Z) = (X + Y ) • (X + Z) Teoremas de De Morgan (X + Y) = X • Y (X • Y) = X + Y Ígor Clavel Herrera contacto@lamochasoft.com 10 Semestre 2004-2 Notas de Diseño Digital ( X 1 + X 2 + X 3 + ... + X n ) = X 1 • X 2 • X 3 • ... • X n (X1 • X 2 • X 3 • ... • X n ) = X1 + X 2 + X 3 + ... + X n Tablas de verdad Para 2 variables A 0 0 1 1 B 0 1 0 1 Para 4 variables F F0 = F (0,0) F1 = F (0,1) F2 = F (1,0) F3 = F (1,1) A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 Para 3 variables 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 F0 = F1 = F2 = F3 = F4 = F5 = F6 = F7 = F F (0,0,0) F( 0,0,1) F (0,1,0) F (0,1,1) F (1,0,0) F (1,0,1) F (1,1,0) F (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 F0 = F (0,0,0,0) F1 = F (0,0,0,1) F2 = F (0,0,1,0) F3 = F (0,0,1,1) F4 = F (0,1,0,0) F5 = F (0,1,0,1) F6 = F (0,1,1,0) F7 = F (0,1,1,1) F8 = F (1,0,0,0) F9 = F (1,0,0,1) F10 = F (1,0,1,0) F11 = F (1,0,1,1) F12 = F (1,1,0,0) F13 = F (1,1,0,1) F14 = F (1,1,1,0) F15 = F( 1,1,1,1) Minitérminos Para tres variables: Símbolo del minitérmino m0 m1 m2 m3 m4 m5 m6 m7 Minitérmino Combinación para la que vale 1. /A /B /C 0 0 0 /A /B C 0 0 1 /A B /C 0 1 0 /A B C 0 1 1 A /B /C 1 0 0 A /B C 1 0 1 A B /C 1 1 0 ABC 1 1 1 Para obtener una ecuación boleana equivalente a la tabla de verdad mediante minitérminos (para n=2m variables): F = F0·m0 + F1·m1 + F2·m2 + ... + Fn·mn Ígor Clavel Herrera contacto@lamochasoft.com 11 Semestre 2004-2 Notas de Diseño Digital Si m=3 y n=8 (tres variables): F = F0·m0 + F1·m1 + F2·m2 + F3·m3 + F4·m4 + F5·m5 + F6·m6 + F7·m7 F = F0·(/A/B/C) + F1·(/A/BC) + F2·(/AB/C) + F3·(/ABC) + F4·(A/B/C) + F5·(A/BC) + + F6·(AB/C) + F7·(ABC) Maxitérminos Para 3 variables: Combinación para Símbolo del Maxitérmino la que vale 0. maxitérmino M0 M1 M2 M3 M4 M5 M6 M7 A+B+C 0 0 0 A + B + /C 0 0 1 A + /B + C 0 1 0 A + /B + /C 0 1 1 /A + B + C 1 0 0 /A + B + /C 1 0 1 /A + /B + C 1 1 0 /A + /B + /C 1 1 1 Para obtener una ecuación boleana equivalente a la tabla de verdad mediante maxitérminos (para n=2m variables): F = (F0+M0) · (F1+M1) · (F2+M2) · ... · (Fn+Mn) Si m=3 y n=8 (tres variables): F = (F0+M0) · (F1+M1) · (F2+M2) · (F3+M3) · (F4+M4) · (F5+M5) · (F6+M6) · (F7+M7) F = (F0+A+B+C) · (F1+A+B+/C) · (F2+A+/B+C) · (F3+A+/B+/C) · (F4+/A+B+C) · · (F5+/A+B+/C) · (F6+/A+/B+C) · (F7+/A+/B+/C) Ígor Clavel Herrera contacto@lamochasoft.com 12 Semestre 2004-2 Notas de Diseño Digital Display de 7 segmentos IV. Circuitos Integrados Digitales Compuertas lógicas Son circuitos electrónicos que producen como salida niveles de voltaje en función de la combinación de los niveles de voltaje en sus entradas. Su funcionamiento se asocia a funciones boleanas. Principales características funcionales Voltaje de alimentación Temperatura de trabajo Fan-out Niveles de voltaje de entrada y salida Nivel de ruido Tiempo de propagación Disipación de potencia Escalas de integración Siglas Nombre SSI Short Scale Integration MSI Medium Scale Integration Large Scale Integration LSI VLSI Very Large Scale Integration Ultra Large Scale Integration Ígor Clavel Herrera contacto@lamochasoft.com Baja escala de integración Mediana escala de integración Alta escala de integración Muy alta escala de integración Ultra alta escala de integración 13 Compuertas Menos de 10 Entre 10 y 100 Entre 100 y 1000 Entre 1000 y 10 mil Mas de 10 mil Semestre 2004-2 Notas de Diseño Digital Convención de lógica Las compuertas lógicas trabajan con dos niveles de voltaje válidos conocidos como voltaje alto y voltaje bajo. Se representan mediante una H y una L respectivamente. Estos niveles corresponden a dos rangos de voltaje comprendidos aproximadamente entre los 4 y 5 volts para H y entre 0 y 2 volts para L. Para asociar el comportamiento de una compuerta lógica con una función boleana se debe hacer corresponder los valores lógicos 1 y 0 con los voltajes H y L. A esta asociación de valores lógicos con su correspondiente nivel de voltaje se le conoce como convención lógica y puede ser: a. Lógica positiva H representa un 1 lógico. L representa un 0 lógico. b. Lógica negativa H representa un 0 lógico. L representa un 1 lógico. Tabla de voltajes Como el funcionamiento de las compuertas lógicas no depende de la convención empleada, es común que los fabricantes representen su funcionamiento mediante una tabla similar a una tabla de verdad pero que presenta únicamente valores de voltaje, por lo que es llamada tabla de voltajes. Tabla de voltajes para Tomando lógica positiva es la función una compuerta AND: 74XX08 (AND): Pero si se considera lógica negativa se tendrá la tabla de verdad (pero en orden inverso) de la función OR: A B F A B F L L L 0 0 0 L H L 0 1 0 H L L 1 0 0 H H H 1 1 1 Tabla de voltajes para Tomando lógica positiva es la función una compuerta OR: 74XX32 (OR): A B F A B F 1 1 1 0 0 0 1 0 1 = 0 1 1 0 1 1 1 0 1 0 0 0 1 1 1 Pero si se considera lógica negativa se tendrá la tabla de verdad (pero en orden inverso) de la función AND: A B F A B F L L L 0 0 0 L H H 0 1 1 H L H 1 0 1 H H H 1 1 1 Tabla de voltajes para Tomando lógica positiva es la función una compuerta INV: 74XX04 (INV): A B F A B F 1 1 1 0 0 0 1 0 0 = 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 En lógica negativa se tiene la misma tabla de verdad, en orden inverso, debido a que la función INV solo emplea un operando: A F L H H L A F 0 1 1 0 Ígor Clavel Herrera contacto@lamochasoft.com A F A F 1 0 = 0 1 0 1 1 0 14 Semestre 2004-2 Notas de Diseño Digital Representaciones alternas de los símbolos lógicos Como se vio anteriormente, una sola tabla de voltajes puede representar a las funciones AND y OR pero a cada una en una convención de lógica distinta. Esto sucede de igual forma sucede con las funciones NAND y NOR. También sucede esto con los símbolos lógicos, pues uno solo puede representar ambas funciones pero también empleando convenciones lógicas diferentes. Si un símbolo lógico trabaja en lógica negativa emplea una burbuja para indicar que sus entradas se activan en un nivel bajo de voltaje. En la siguiente tabla se presenta esta situación. La igualdad entre las expresiones boleanas para lógica positiva y negativa de cada compuerta puede verificarse mediante los teoremas de De Morgan. Lógica positiva Símbolo Función boleana Lógica negativa Símbolo Función boleana −−−−−−−−− A·B A+ B −−−−−−−−− A+B A• B A• B A+ B −−−−−−−−− A+ B A• B A A Las equivalencias son válidas para cualquier número de entradas. Como los símbolos de la izquierda están en lógica positiva, ninguna de sus entradas tiene burbujas. Los de la derecha tienen burbujas en todas sus entradas pues están en lógica negativa. Ígor Clavel Herrera contacto@lamochasoft.com 15 Semestre 2004-2 Notas de Diseño Digital Representación mediante compuertas NAND Símbolo tradicional Representación con NAND Representación mediante compuertas NOR Símbolo tradicional Representación con NAND Ígor Clavel Herrera contacto@lamochasoft.com 16 Semestre 2004-2