La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Electrónica Digital Unidad 3

Presentaciones similares


Presentación del tema: "Electrónica Digital Unidad 3"— Transcripción de la presentación:

1 Electrónica Digital Unidad 3
Ing. Raúl V. Castillo C.

2 Lógica Combinacional

3 Representación de funciones de conmutación
Ejemplo: F(x, y, z)=xy+xz+yz x y z f(x, y, z) 1 xy z f x y

4 Tabla de Verdad La forma más intuitiva de representar una función de conmutación es por medio de una Tabla de Verdad. La Tabla de Verdad expresa el valor de salida de una función para cada combinación de entrada. La Tabla de Verdad permite modelar un tipo especial de sistema Digital llamado Sistema Combinacional.

5 Tabla de Verdad Ejemplo: Tabla de Verdad: x1 x2 x3 f 0 0 0 0 0 0 1 0

6 Formas Canónicas Problema: Dada una Tabla de Verdad, obtener la forma algebraica x1 x2 x3 f x1x2 x3 x1 x2x3

7 f(x1, x2, x3)=x1x2 x3 + x1 x2x3 + x1 x2x3 + x1 x2x3
Formas Canónicas La forma algebraica queda: f(x1, x2, x3)=x1x2 x3 + x1 x2x3 + x1 x2x3 + x1 x2x3 Para convertir se observa la combinación de entrada para la cual la salida toma el valor 1. La variable aparece sin complementar si vale 1 para la combinación en la cual la salida vale 1 y aparece complementada si vale 0 para la combinación en la cual la salida toma el valor 1.

8 Formas Canónicas: Minitérminos
Se denomina minitérmino a un factor de una expresión booleana que está formado por el AND de todas las variables. Una función de conmutación corresponde al OR de minitérminos. La función generada de esta manera se denomina OR canónico de AND. f(x1, x2, x3)=OR( m0, m1, …, mn ) f(x1, x2, x3)=( m0, m1, …, mn )

9 Formas Canónicas: Minitérminos
Para el ejemplo anterior: f(x1, x2, x3)=OR( 2, 4, 5, 6 ) f(x1, x2, x3)=(2, 4, 5, 6 )

10 Formas Canónicas: Maxitérminos
(x1+x2+ x3) (x1+ x2+x3) Una forma alternativa de expresar la función es examinando las combinaciones en las cuales vale 0. x1 x2 x3 f

11 f(x1, x2, x3)=(x1+x2+ x3 )(x1+ x2+x3 )
Formas Canónicas: Maxitérminos La función queda ahora: f(x1, x2, x3)=(x1+x2+ x3 )(x1+ x2+x3 ) ( x1+ x2+x3 )( x1+ x2+x3 ) Para convertir se observa la combinación de entrada para la cual la salida toma el valor 0. La variable aparece sin complementar si vale 0 para la combinación en la cual la salida vale 0 y aparece complementada si vale 1 para la combinación en la cual la salida toma el valor 0.

12 Formas Canónicas: Maxitérminos
Se denomina maxitérmino a un factor de una expresión booleana a que está formado por el OR de todas las variables. Una función de conmutación corresponde al AND de maxitérminos. La función generada de esta manera se denomina AND canónico de OR. f(x1, x2, x3)=AND( M0, M1, …, Mn ) f(x1, x2, x3)=( M0, M1, …, Mn )

13 Formas Canónicas: Maxitérminos
Para el ejemplo anterior: f(x1, x2, x3)=AND( 0, 2, 4, 7 ) f(x1, x2, x3)=( 0, 2, 4, 7 )

14 Conversión entre Formas Canónicas
Problema: dada una función en OR canónico de AND, obtener la forma canónica AND canónico de OR F(A, B, C)=( 0, 1, 2, 7 ) F(A, B, C)=( 3, 4, 5, 6 )=ABC+ ABC+ ABC+ ABC F(A, B, C)=(A+B+C)(A+B+C) (A+B+C)(A+B+C) F(A, B, C)=( 3, 4, 5, 6 )

15 Funciones Equivalentes
Dos funciones de conmutación son equivalentes cuando sus expansiones en formas canónicas son idénticas, es decir tienen el mismo valor de salida para las mismas combinaciones de entradas. Una forma similar de expresar lo mismo es que dos funciones de conmutación son equivalentes cuando tienen la misma Tabla de Verdad

16 Funciones Equivalentes
¿Cuántas funciones de n variables existen? La respuesta a esta pregunta se encuentra fácilmente preguntando: ¿Cuántas Tablas de Verdad existen con n variables? La respuesta está en observar la columna de salida. El número de funciones es:

17 Funciones de una y dos variables
F(x)=x NOT F(x, y)=xy AND F(x, y)=x+y OR F(x, y)=x+y NAND

18 Funciones de una y dos variables
F(x)=x y NOR F(x, y)=xy+ xy OR EXCLUSIVO F(x, y)= xy+ x y AND EXCLUSIVO Ejercicio: Construir las Tablas de Verdad de estas funciones.

19 Lógica Combinacional

20 Lógica Combinacional contra la Lógica Secuencial
Representación de entradas/salidas de circuitos lógicos: Circuitos de lógica combinacional: La salida depende solo de las entradas actuales. La relación de entrada/salida esta descrita por una tabla de verdad. Circuitos de lógica secuencial: La salida depende de las entradas actuales y de las salidas previas. La relación de entrada/salida esta descrita por una tabla de estados. Circuito Lógico X Y Z F Salida Entradas

21 Diversificación de las compuertas

22 Compuertas Lógicas Una forma alternativa de representar funciones es mediante Compuertas Lógicas. Las Compuertas Lógicas se construyen físicamente con electrónica integrada en sustratos de silicio. El éxito de los sistemas digitales se debe en gran medida al bajo costo por compuerta que se logra con este proceso y a la alta densidad de integración, llegando en la actualidad a millones de compuertas en un circuito integrado cuya área no sobrepasa 1cm2.

23 Compuertas Lógicas Una red de compuertas lógicas se denomina circuito combinacional. Los circuitos combinacionales constituyen una parte importante de una CPU moderna. ALU CPU

24 Compuertas Lógicas A B A+B AB AB AND NAND OR NOR NOT OR-EX

25 Compuertas Lógicas: Ejemplo
F(A, B, C, D) C A B D F(A, B, C, D)=AC+ABC+ABCD

26 Implementación de Funciones con Compuertas

27 Redes con AND, OR y NOT Una vez que se define la suma de productos mínima se debe de definir el diagrama lógico, compuesto por una red de compuertas que describan la función.

28 Ejemplo de un circuito de dos niveles
X Y Z X Y Z X Y Z X Y Z

29 Niveles El número de niveles corresponde al máximo número de compuertas que una señal debe pasar desde su entrada hasta la salida. En el caso anterior tenemos dos niveles, esto asumiendo que tenemos disponibles en la entradas los complementos de la literales, cuando no se dispone de los complementos es necesario complementar con compuertas NOT.

30 Problema Diagrama de la suma de productos
Diagrama de la suma de productos mínimo

31 Una red multinivel Las redes multinivel son el resultado de implementar funciones que no estén en la forma ni de suma de productos ni de productos de sumas.

32 Minimización de funciones

33 Minimización de Funciones
Minimizar una función de conmutación F(x1, x2, …,xn) es encontrar una función G(x1, x2, …,xn) equivalente a F y que contenga el mínimo número de términos y literales en una expresión OR de AND. Ejemplo F(A, B, C, D)=ACD+ ACD + ACD+ACD+ ABD =(A+A) CD+ (A+A) CD+ABD = CD+CD+ABD=(C+C)D+ABD=D+ABD

34 Mapas de Karnaugh Los mapas de Karnaugh son formas modificadas de Tablas de Verdad que permiten minimizar funciones de hasta 5 variables. Los mapas de Karnaugh permiten el diseño rápido de circuitos combinacionales de mínimo costo, es decir, con el mínimo número de compuertas.

35 Construcción de Mapas de Karnaugh
Para construir mapas de Karnaugh se siguen los siguientes pasos: Para una función de n variables, el mapa de Karnaugh tiene 2n celdas n=2 n=3 n=3 n=4

36 Construcción de Mapas de Karnaugh
2) En las coordenadas se anotan las combinaciones de variables según el código Gray n=2 n=3 n=3 n=4 1 0 1 00 01 11 10

37 Construcción de Mapas de Karnaugh
3) Se asigna un 1 a una variable sin complementar y un cero a una variable complementada. De esta forma, cada celda queda determinada por una combinación de unos y ceros A 1 AB AB B

38 Construcción de Mapas de Karnaugh
4) A cada combinación de unos y ceros de una celda se le asigna el equivalente decimal de la representación binaria 00 01 11 10

39 Ejemplo de construcción del Mapa de Karnaugh
Encontrar el mapa de la función F(A, B, C, D)=(0, 1, 5, 6, 9, 13, 15) 00 01 11 10 AB CD

40 Construcción de Mapas de Karnaugh
5) Dos celdas son adyacentes si difieren en una variable 00 01 11 10

41 Construcción de Mapas de Karnaugh
6) Un subcubo es un conjunto de 2n celdas con valor de 1, las cuales tienen la propiedad que cada celda es adyacente a m celdas del conjunto 00 01 11 10 AB CD Subcubo tamaño 4 Subcubo tamaño 2 Subcubo tamaño 1

42 Construcción de Mapas de Karnaugh
7) Un subcubo se puede expresar por un término algebraico que tiene n-m literales donde n es el número de variables y 2m es el tamaño del subcubo 00 01 11 10 AB CD CD ABD ABC ABCD

43 Construcción de Mapas de Karnaugh
8) Una función se puede expresar como la suma de los subcubos necesarios para cubrir todos los unos del mapa de Karnaugh. Para que una función sea mínima hay que buscar el mínio número de subcubos, o sea, cada subcubo debe ser del mayor tamaño posible. El método de mapa de Karnaugh es un método manual. En términos prácticos sirve para minimizar funciones de hasta 6 variables

44 F(A, B, C, D)=ABCD+ABC+ABD+CD
Construcción de Mapas de Karnaugh Minimización F(A, B, C, D)=ABCD+ABC+ABD+CD 00 01 11 10 AB CD CD ABD ABC ABCD

45 Construcción de Mapas de Karnaugh: AND de OR
Una función se puede expresar también como el producto (AND) de los subcubos necesarios para cubrir todos los ceros del mapa de Karnaugh. Ejemplo: Minimizar F(A, B, C, D)=(0, 2, 5, 8, 10, 13, 14)

46 F(A, B, C, D)=(B+D)(B+C+D)(A+C+D)
Construcción de Mapas de Karnaugh: AND de OR 00 01 11 10 AB CD F(A, B, C, D)=(0, 2, 5, 8, 10, 13, 14) F(A, B, C, D)=(B+D)(B+C+D)(A+C+D)

47 Construcción de Mapas de Karnaugh
Representación Nótese que el mapa de 5 variables se obtiene a partir de dos mapas para n = 4. A uno se le antecede un cero en la codificación de las columnas y al otro un 1. El mapa de Karnaugh de 5 variables f(A,B,C,D,E): 00 01 11 10 ABC DE

48 Construcción de Mapas de Karnaugh
Otra forma de representación A=1 A=0 ABC CD 00 01 11 10 f(A, B, C, D, E)

49 Construcción de Mapas de Karnaugh
Generalizaciones Un mapa de Karnaugh n variables tiene 2n celdas o cuadros. Cada celda o casillero de un mapa de n variables, tiene n celdas adyacentes; es decir, los códigos binarios de los minitérminos están a distancia uno. Una celda está asociada a un producto que contiene las n variables, pudiendo éstas estar o no complementadas. Agrupando dos celdas adyacentes, se logra una expresión tipo producto de (n-1) variables. Esto empleando: Considerando que dos celdas adyacentes difieren en sólo una variable, ya que están a distancia 1 (código Grey).

50 Construcción de Mapas de Karnaugh
Bloques pueden agruparse de un número de celdas que es una potencia de dos; es decir: 2, 4, 8, 16... Agrupando 2k celdas, que forman un k-cubo, la expresión booleana asociada es la que resulta de eliminar k variables de las n correspondientes a un minitérmino. Los grupos posibles de k literales, cuando se tienen n variables (k ≤ n), quedan dados por: Ejemplo: los grupos de 1 literal cuando n=4 Son

51 Construcción de Mapas de Karnaugh
Ejemplo, para n = 4 (e.g. A, B, C, D): Un minitérmino se expresa como un producto de 4 variables. Una agrupación de 2 minitérminos, que forman un 1- cubo (o que son adyacentes), puede expresarse en tres variables. Una agrupación de 4 minitérminos, que forman un 2- cubo, se expresa en dos variables. Una agrupación de 23 minitérminos (que forman un 3-cubo), puede expresarse como una variable. Una agrupación de los 24 minitérminos (forman un 4-cubo), puede expresarse como 1 (usando 0 variables). Nótese que bajo el mapa suele escribirse la función que éste representa.

52 Construcción de Mapas de Karnaugh
Ejemplo: los grupos de 2 literales (k=2), cuando n=4: Estos son:

53 Construcción de Mapas de Karnaugh
Definiciones Conjunto de unos en un mapa de Karnaugh que representa un termino producto de variables. Se denomina implicante porque cuando este termino toma el valor 1, implica que también la función toma el valor 1. Un minitérmino solo es un implicante. Un implicante primo es aquel que no está incluido completamente dentro de otro implicante. No puede combinarse con otro implicante para eliminar un literal. Un implicante primo esencial es un implicante primo que contiene uno o mas minitérminos que no están incluidos en cualquier otro implicante primo.

54 Construcción de Mapas de Karnaugh
En el siguiente mapa de Karnaugh: Los términos I II y III  son implicantes primos El término IV no es implicante primo Los términos I y III son implicantes primos esenciales El término II no es un implicante primo esenciales La función se obtiene con los términos I y III

55 Construcción de Mapas de Karnaugh
Derivación de una Expresión Mínima de un Mapa Un procedimiento para encontrar una expresión mínima como suma de productos es el siguiente: Elegir un elemento del mapa y buscar todos los grupos máximos de 1s y Xs adyacentes a ese elemento. Repetir el paso 1 para encontrar todos los implicantes primos. Visitar un elemento del mapa. Si esta cubierto por un solo implicante es esencial y va a contribuir un terminó a la expresión final de suma de productos. Repetir el paso 2 para encontrar todos los implicantes primos esenciales. Si es que faltan algunos 1s que no están cubiertos entonces seleccionar un numero mínimo de implicantes primos para cubrirlos. Tratar varias alternativas de cubrimientos para encontrar el que tenga el numero menor de implicantes.

56 Ejemplos de uso de Mapas de Karnaugh
f = Σm(0,2) Cout =Σm(3,5,6,7) f(A,B,C) = Σm(0,4,5,7)

57 Ejemplos de uso de Mapas de Karnaugh

58 Ejemplos de uso de Mapas de Karnaugh
encontrar el menor número de subcubos de mayor tamaño para cubrir el mapa (menor numero de términos con el menor número de entradas por término)

59 Ejemplos de uso de Mapas de Karnaugh con indeterminados

60 Ejemplos de uso de Mapas de Karnaugh con indeterminados
usando un indeterminado como un "1“ se puede formar un 2-cubo en ves de un 1-cubo para cubrir este nodo Los indeterminados se pueden usar como 1s o 0s, dependiendo de lo que sea mas conveniente

61 Implementación de circuitos combinacionales con SSI

62 Función lógica básica (suma)
Función lógica básica (suma)

63 Función lógica básica (suma)
Función aritmética de suma Sumador A S B Cout Cin SUMA ACARREO DE SALIDA ENTRADAS DOS NÚMEROS BINARIOS ACARREO DE ENTRADA

64 Funciones lógicas derivadas
Función aritmética de resta Función aritmética de multiplicación Función aritmética de división

65 Semisumador (Medio Sumador o Half Adder)
El circuito aritmético digital más simple es el de la suma de dos dígitos binarios. Un circuito combinatorio que ejecuta la suma de dos bits se llama semisumador.

66 Diagrama Lógico del Medio-Sumador

67 Sumador Completo (Full Adder)
Otro método para sumar dos números de n bits consiste en utilizar circuitos separados para cada par correspondiente de bits: los dos bits que se van a sumar, junto con el acarreo resultante de la suma de los bits menos significativos, lo cual producirá como salidas un bit de la suma y un bit del acarreo de salida del bit más significativo.

68 Diagrama en bloque de un Sumador Completo
SC Xi Si Yi Ci+1 Ci Sumador completo de dos palabras de un bit

69 Las expresiones mínimas de suma de producto para las salidas del SC
Funciones optimizadas

70 Implementación de las ecuaciones del Sumador Completo

71 Implementación de un SC con dos MS
Un sumador completo resulta de la unión de dos medios sumadores.

72 Sumadores de n bits Podemos construir sumadores de n bits con n copias del circuito anterior, este tipo de sumadores son conocidos como, sumadores con propagación de acarreo (Carry-ripple adder). Los sumadores completos se conectan en cascada de manera que el acarreo de salida de una etapa viene a ser el acarreo de entrada de la siguiente, como se ilustra en la figura de la siguiente diapositiva.

73 Implementación de un sumador en cascada
Para dos palabras de 4 bits. Cin Cout Podemos implementar un sumador de n bits con n copias de los circuitos anteriores

74 Sumadores del tipo con propagación de acarreo
Como lo indicamos en una diapositiva anterior, una forma posible para implementar sumadores de n bits es conectar n sumadores completos de un bit en cascada, a esta configuración se la denomina sumador con propagación de acarreo. El mayor problema con este tipo de implementación es el tiempo de retardo, ya que cada módulo depende del resultado del módulo anterior, en base a la siguiente formula: Donde: Δ es el tiempo de retardo de una compuerta. Por ejemplo para un sumador de 64 bits el retardo será de 132 Δ, este es un tiempo de propagación muy grande.

75 Sumadores basados en ecuaciones de suma de productos
Con la finalidad de incrementar la velocidad de los sumadores, se han pensado en varias aproximaciones, una de ellas es implementa un sumador multibit usando una expresión de suma de productos. Por ejemplo un sumador para dos bits consistiría de una tabla de 5 entradas y tres salidas, consecuentemente tendríamos mapas de Karnaugh de 5 variables y expresiones simplificadas para la tres funciones de salida con 23 términos y 80 literales, un circuito de dos niveles requerirá una compuerta OR de 12 entradas y otras más. Claramente podríamos seguir adoptando esta metodología para sumadores de 3 bits o 4 bits, no obstante el algebra cada vez será más compleja y el número de términos aumenta drásticamente.

76 Sumadores de tipo sumador con acarreo anticipado (Carry-look-ahead adder)
El problema en los sumadores anteriores ha sido el retardo de la señal de acarreo o de la complejidad del número de entradas. Una solución para evitar estas desventajas son los sumadores de tipo sumador con acarreo anticipado. La mayoría de los circuitos integrados comerciales usan este método.

77 Sumadores comerciales
Existe disponibles comercialmente sumadores de 4 bits: 7483, 7483A, y el 74F283 (4-bit binary full adder with fast carry) Cada uno de ellos usa un circuito de 4 niveles para producir la suma, usando una mezcla de compuertas NAND, NOR, NOT y OR-EX. El retardo desde el Cin hasta el Cout es de 3Δ para cada 4 bits y produce un retardo total de (3/4 n+1)Δ.

78 Sumador de 12 bits con tres SC de 4 bits (74HC283) en cascada
Existe una tercera aproximación para implementar sumadores que es llamada sumador con acarreo anticipado.

79 Función lógica básica (Resta)

80 Restadores y Sumadores-Restadores
Para realizar la substracción podríamos desarrollar la tabla de verdad para la resta de 1 bit y unir en cascada los módulos necesarios para el número de bits que se requiera, los que se denominaría un sustractor de propagación de préstamo (borrow-ripple subtractor). En la mayoría de los casos, cuando se realiza una resta, también es necesario realizar una suma, por lo tanto podemos sacar ventaja de la aproximación de realizar una resta usando una suma de la siguiente forma: A – B = A + Bcomp a 1 + 1

81 Sumador/Restador El uso de las compuertas OR-EX ayudan a comandar el modo de funcionamiento.

82 Sumador/Restador A-B = A+B+1, para realizar el complemento se usan las compuertas OR-EX.

83 Función lógica básica (Multiplicador)

84 Bloques Multiplicadores
La multiplicación es una operación cara (en términos de recursos) y lenta Este hecho ha motivado la integración de unidades completas de multiplicación en los DSPs y mPs Los multiplicadores son en la práctica matrices complejas de sumadores

85 Bloques Multiplicadores
Consideramos dos números binarios sin signo X e Y, de M y N bits respectivamente: Definición de la operación de multiplicación:

86 Multiplicadores Desplazamiento y Suma
La multiplicación requiere M ciclos utilizando un sumador de N bits. Se realiza la suma de N productos parciales, que se generan multiplicando un bit del multiplicador por el valor del multiplicando (operación AND) y desplazando el resultado según la posición del bit del multiplicador.

87 Multiplicador matricial: ejemplo

88 Multiplicador matricial
En hardware, la estructura del multiplicador matricial combina las funciones: generación de productos parciales, acumulación de productos parciales y suma final

89 Generación de productos parciales
Los productos parciales (PP) resultan de aplicar la operación lógica AND al multiplicando X y a un bit del multiplicador Yj Cada fila de la matriz de PP es una copia del multiplicando o una fila de ceros Optimizar la generación de los PP para reducir los retardos y el área ocupada en hardware (recodificación Booth) X X X X X X X X0 Yj PP PP PP PP PP PP PP PP0

90 Algoritmo de Booth Ejemplo: Un multiplicador de 8 bits: produce 6 filas de productos parciales distintos de cero Este número se puede re-codificar para poder reducir (sustancialmente) el número de filas distintas de cero: El número representa el mismo número, si 1 es una anotación abreviada para designar el valor -1

91 Algoritmo de Booth Ejemplo (cont.): Utilizando esta representación ( ), basta con sumar dos productos parciales, aunque el sumador tiene que ser capaz de realizar restas. Reducir el número de productos parciales es equivalente a reducir el número de sumas, lo que permite acelerar la operación y reducir el área ocupada.

92 Re-codificación de Booth modificado
No resulta demasiado práctico para el diseño de multiplicadores disponer de una matriz de productos parciales de tamaño variable. Por eso, normalmente se utiliza el esquema de re-codificación de Booth modificado, en lugar del esquema original. El multiplicador se divide en grupos de 3 bits, solapados por un bit. Cada grupo de 3 se recodifica según la tabla siguiente:

93 Re-codificación de Booth modificado

94 Re-codificación de Booth modificado

95 Re-codificación de Booth modificado

96 Multiplicador matricial
Multiplicador matricial de 4×4 bits para números sin signo

97 Multiplicador matricial
La generación de N PPs requiere N×M compuertas AND de 2 bits La mayor parte del área del multiplicador está dedicada a la suma de los N PPs, que requiere N-1 sumadores de M bits Desplazamiento: conectar apropiadamente las pistas de interconexión, sin necesidad de lógica especial ¡Estructura compacta! Se puede implementar de forma rectangular (opt. layout)

98 Multiplicador matricial
Se pueden identificar varios caminos con una longitud prácticamente idéntica

99 Multiplicador matricial

100 Multiplicador matricial
Hay dependencias verticales y horizontales en todos los niveles Todos los caminos críticos se tienen que acelerar al mismo tiempo (acelerar solo uno de ellos sustituyendo un sumador por otro más rápido, como por ejemplo un sumador Carry-Select, no tiene mucho sentido) De la ecuación anterior, se observa que la minimización de tmult requiere la minimización tanto de tcarry como de tsum Se puede utilizar un sumador Carry-Save (CSA)

101 Multiplicador Carry-Save
Observamos que el resultado de la multiplicación no varía cuando los bits de salida del acarreo se transmiten diagonalmente hacia abajo en lugar de solo hacia la derecha ¡Este es el principio del CSA que hemos visto en la clase anterior! Para generar el resultado final se incluye en el diseño un sumador adicional, denominado sumador de combinación de vectores

102 Multiplicador Carry-Save
La propagación de señales se realiza hacia la siguiente etapa y no entre elementos de una misma etapa

103 Multiplicador Carry-Save - ejemplo

104 Multiplicador Carry-Save

105 Disposición rectangular de un CSM

106 Árbol de retardos balanceado
La cadena vertical de FA en un CSM es una cadena serie. Se puede reducir el retardo de dicha cadena empleando árboles binarios

107 Multiplicador en árbol
Empleando sumadores para las sumas parciales en estructura de árbol, se pueden reducir tanto el camino crítico (retardo) como el núm. de celdas sumadoras necesarias (área) Para un multiplicador de 4×4 bits, se puede observar que solo la columna 3 de la matriz de sumadores tiene que sumar 4 bits. Todas las demás columnas son algo menos complejas.

108 Árbol de Wallace para un multiplicador de 4×4 bits

109 Árbol de Wallace para un multiplicador de 4×4 bits

110 Árbol de Wallace para un multiplicador de 4×4 bits

111 Árbol de Wallace para un multiplicador de 4×4 bits

112 Implementación del multiplicador en árbol de Wallace

113 Suma final La velocidad del sumador final tiene gran importancia La elección del estilo de sumador dependerá de la estructura de la matriz de acumulación. Se puede preferir un CLA (Carry-look ahead, sumador de predicción de acareo) si todos los bits de entrada al sumador llegan al mismo tiempo (es el sumador con el más pequeño retardo posible) Este es el caso, por ejemplo, si se utiliza una etapa de registro justo antes de la suma final. El procesamiento en cadena mediante la inclusión de registros es una técnica frecuentemente utilizada en los multiplicadores de altas prestaciones

114 Suma final En los multiplicadores que no están basados en una estructura de procesamiento en cadena, el perfil de instantes de llegada de las entradas al sumador final es bastante poco equilibrado, debido a las profundidades lógicas variables del árbol del multiplicador En estas circunstancias, otras topologías de sumador, como las de carry-select, suelen proporcionar prestaciones similares a las del CLA, pero con un costo en términos de hardware sustancialmente menor

115 Función lógica básica (Comparador)

116 Función lógica básica (Comparación)
Función comparación Comparador A A>B A=B B A<B SALIDAS TRES ESTAADOS LÓGICOS ENTRADAS DOS NÚMEROS BINARIOS

117 Comparadores Una necesidad común en la aritmética es la comparación de dos números, que indique si son iguales o si uno es mayor que el otro. Se usa la OR Exclusiva (OR-EX) para generar un 1 en el caso de que los números sean diferentes y 0 para el caso de que sean iguales. Para un caso de dos palabras de varios bits, si un par de bit son diferentes entonces las palabras son diferentes.

118 Circuito Comparador de 4 bits
a) Con OR exclusivas b) Con NOR exclusivas Estos comparadores solo son para determinar la igualdad de dos palabras de 4 bits y pueden extenderse a cualquier tamaño de palabras.

119 Comparadores Para la implementación de una comparador de 4 bits que indique si la palabra es mayor, menor o igual, debemos hacer un reconocimiento desde el bit más significativo de la siguiente forma: a>b si a4>b4 o (a4 = b4 y a3>b3) o (a4 = b4 y a3 = b3 y a2>b2) o (a4 = b4 y a3 = b3 y a2 = b2 y a1>b1) a<b si a4<b4 o (a4 = b4 y a3<b3) o (a4 = b4 y a3 = b3 y a2<b2) o (a4 = b4 y a3 = b3 y a2 = b2 y a1<b1) a = b si a4 = b4 y a3 = b3 y a2 = b2 y a1 = b1 Esta lógica se puede extender para la cantidad de bits que sea necesario o el de 4 bits puede estar en cascada con otros pasando las señales de > < =.

120 Comparador Comercial El 7485 es un comparador de 4 bits, con la opción de realizar conexiones en cascada para aumentar en número de bits que se deseen comparar. Para hacer la cascada las señales van del módulo más bajo al más alto

121 Comparador típico de 1 bit
= < >

122 Función lógica básica (multiplexor)

123 Función lógica básica (Multiplexor)
Función de selección de datos Multiplexor Demultiplexor Entrada de control de secuencia de conmutación A B C D E F

124 Multiplexores Problemática
Los datos que se generan en una localidad se van a usar en otra, para esto se necesita un método para transmitirlos de una localidad a otra a través de algún canal de comunicaciones. . . Canal de comunicaciones Salida de datos Entrada de datos demultiplexor multiplexor

125 Multiplexores Definición
Un multiplexor digital es un circuito con 2n líneas de entrada de datos y una línea de salida; también debe tener una manera de determinar la línea de entrada de datos específica que se va a seleccionar en cualquier momento. Esto se efectúa con otras n líneas de entrada, denominadas entradas de selección, cuya función es elegir una de las 2n entradas de datos para la conexión con la salida

126 Multiplexores (Selectores)
Existen dos tipos básicos de Multiplexores: De varias entradas a una salida, llamados de selectores de 2n a 1, o simplemente MUX (del inglés multiplexer) de 2n a 1. De una entrada a varias salidas, llamados selectores de 1 a 2n o simplemente DEMUX (del inglés demultiplexer) de 2n a 1.

127 Multiplexor 41

128 Multiplexor 4 a 1 El multiplexor 4 a 1 tiene seis entradas y una salida. Una tabla de verdad que describa el circuito necesitará 64 renglones, esta es una tabla excesivamente larga y no es práctica. Una manera más práctica de describir el funcionamiento es por medio de una tabla de función.

129 Tabla de función de un mux 4 a 1
Selección Salida S1 S0 Y I0 1 I1 I2 I3 Esta tabla demuestra la relación entre las cuatro entradas de datos y la salida, única como función de las entradas de Selección S1 y S0.

130 Mux 81

131 Función lógica básica (Demultiplexores)

132 Función lógica básica (Decodificadores)

133 Función lógica básica (Decodificador)
Función de decodificación Entrada binaria Decodificador (BCD a 7segmentos)

134 Decodificadores Un decodificador es un dispositivo que cuando está activado selecciona una de varias líneas de salida basándose en un código de entrada. Las cantidades discretas de información se representan en sistemas digitales con códigos binarios (ejemplo: BCD, EXCESO 3, , 2421, etc.). Un código binario de n bits es capaz de representar hasta 2n elementos distintos de información codificada. La mayoría de los decodificadores convierte información binaria de n líneas de entrada a un máximo de 2n líneas únicas de salida o menos. Estos decodificadores son denominados decodificadores n-a-m líneas, donde m  2n.

135 Decodificadores Estos dispositivos normalmente cuentan con una entrada habilitadora. Cuando esta entrada vale 0, todas las salidas del codificador son 0. Cuando la entrada habilitadora vale 1, la salida correspondiente al minitérmino formado por la combinación presente en las n entradas tomará el valor 1 y las demás tomarán el valor 0.

136 Decodificador 24 Un valor de x en las entradas indica que puede tomar el valor de 1 o 0. X X 0 0 0 1 1 1 1 DEC 24 S0 S1 S2 Hab S3 C1 C0

137 Decodificador 24 Las funciones lógicas para las salidas del codificador 2x4 son:

138 Decodificadores De forma semejante a como se define el decodificador 24, pueden definirse decodificadores de 38, 416, 532 y en forma general de n2n. La principal utilización de este dispositivo es cuando se tiene N alternativas que se pueden seleccionar, pero se desea seleccionar solamente una de ella.

139 Decodificador 38

140 Decodificador comercial
El es un decodificador de tipo 38 comercialmente disponible Ver hoja de datos Entradas con X Tipo de salidas Active High Active Low

141 Decodificador comercial 4x16
El es un decodificador comercial 416 Es un CI de 24 pins

142 Aplicación Una aplicación de los decodificadores es seleccionar uno de muchos dispositivos que tiene una única dirección. La dirección sería la entrada del decodificador, una salida estaría activa, para seleccionar el dispositivo que fue seleccionado.

143 Decodificadores de mayor tamaño
Es posible unir varios decodificadores para implementar decodificadores de mayor tamaño.

144 Función lógica básica Codificador (encoder)

145 Función lógica básica (Codificador)
Función de codificación 7 4 1 9 8 6 5 3 2 +/- . Código binario Codificador (de teclado)

146 Codificador Un codificador es un circuito digital que ejecuta la operación inversa de un decodificador. Un codificador tiene 2n (o menos) líneas de entrada y n líneas de salida. Las líneas de salida generan un código binario correspondiente al valor de entrada binario. Es útil cuando uno de varios dispositivos desea enviar señales a una computadora. Solo una entrada puede estar activada.

147 Codificador Octal a Binario
Entradas Salidas D7 D6 D5 D4 D3 D2 D1 D0 A2 A1 A0 1

148 Codificador octal a binario
El codificador puede implantarse con compuertas OR cuyas entradas se determinan directamente de la tabla de verdad. Por ejemplo, la salida es A0 será igual a 1 si el digito octal de entrada es 1 o 3 o 5 o 7. Las funciones de este codificador son las siguientes: A0 = D1+D3+D5+D7 A1 = D2+D3+D6+D7 A3 = D4+D5+D6+D7

149 Codificador BDC comercial el 74147
El es un codificador BCD, que toma 9 entradas activadas por nivel bajo y las codifica en 4 salidas activadas en nivel bajo.

150 Diplay’s

151 Función lógica básica (Memoria)

152 Memorias ROM Memorias ROM (Read Only Memory, memoria de sólo lectura).
m entradas (2m elementos direccionables, o altura de la ROM). n salidas (Cada posición contiene un dato de n bits, anchura de la ROM). Forma de la ROM = altura x anchura Aunque se llame memoria, es un circuito combinacional. Puede usarse para implementar n funciones binarias distintas dependientes de las mismas m variables de entrada. Se implementa usando dos niveles de puertas (aparte de las negaciones de las entradas): Un plano AND, con 2m puertas de m entradas cada una. Un plano OR, con n puertas de salida.

153 Memorias ROM Esquema de una memoria ROM con 8 posiciones de 4 bits cada una (3 bits de dirección, y anchura de datos 4).

154 Variantes de Memorias ROM
PROM (Programmable ROM, ROM programables). EPROM (Erasable PROM, PROM borrables). EEPROM (Electronically EPROM, PROM borrables electrónicamente). Memorias Flash (permiten el borrado y reescritura selectivos por bloques, miles de veces).

155 Arreglos Lógicos Programables
PAL (Programmable Array Logic, arreglo lógico programable). Como una ROM, pero sólo se implementan los productos necesarios. Útiles cuando hay muchas entradas, pero sólo unas pocas combinaciones se utilizan realmente. Ejemplo Forma 3x6x4:


Descargar ppt "Electrónica Digital Unidad 3"

Presentaciones similares


Anuncios Google