Está en la página 1de 45

A-1

Appendix A - Digital Logic

Unidad 3: Circuitos digitales.

Diapositivas traducidas del libro Principles of Computer Architecture Miles Murdocca and Vincent Heuring
Appendix A: Digital Logic

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-2

Appendix A - Digital Logic

Objetivos generales
El objetivo de este tema es abordar los principios bsicos de la lgica digital, que pueden aplicarse en el diseo de una computadora digital. Lograr el entendimiento de los principios de la Lgica combinatoria y de la Lgica Secuencial, utilizadas en el diseo de circuitos lgicos digitales, a partir de los cuales es posible construir integramente una computadora. Estos circuitos implementan las operaciones bsicas de mas bajo nivel , de las cuales depende el funcionamiento de una computadora.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-3

Appendix A - Digital Logic

Indice general
Lgica Combinatoria:

Definiciones Algebra de Boole Componentes digitales

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-5

Appendix A - Digital Logic

Algunas definiciones
Unidad lgica Combinatoria: un circuito lgico digital en el cual las decisiones lgicas se toman exclusivamente en base a las combinaciones de las entradas. Ejemplo: un sumador. Unidad lgica Secuencial: un circuito donde las decisiones se adoptan no slo en virtud de las combinaciones de entrada sino tambin de la historia anterior de las mismas entradas. Ejemplo: una unidad de memoria. Mquina de estado finito: Un circuito que posee un estado interno y cuya salida es funcin de las entradas corrientes y de la historia previa de sus entradas

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-6

Appendix A - Digital Logic

Unidad lgica Combinatoria


Transforma un conjunto de entradas en un conjunto de salidas de acuerdo con una o ms funciones lgicas. Las salidas de una CLU son estrictamente funciones de las entradas, y se actualizan inmediatamente luego de cualquier cambio en las entradas. La unidad recibe un conjunto de entradas i0 in y produce un conjunto de salidas f0 fm que dependeran de las funciones lgicas correspondientes. Las entradas y salidas para una CLU normalmente tienen dos valores binarios distintos : alto y bajo, 1 y 0, 0 y 1, o 5 volt y 0 volt por ejemplo.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-8

Appendix A - Digital Logic

Circuito combinacional
En general, un circuito combinacional consiste de n entradas binarias y m salidas binarias. Un circuito combinacional puede definirse de tres formas: Tabla de verdad: Para cada una de las posibles combinaciones de las n seales de entrada, se enumera el valor binario de cada una de las m seales de salida. Smbolo grfico: Describe la organizacin de las interconexiones entre puertas. Ecuaciones booleanas: Cada seal de salida se expresa como una funcin booleana de las seales de entrada. Los circuitos combinacionales implementan las funciones esenciales de una computadora digital. Pero no proporcionan memoria, que es un elemento tambin esencial para el funcionamiento. Para estos fines, se utilizan circuitos lgicos digitales mas complejos denominados circuitos secuenciales.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-9

Appendix A - Digital Logic

Algebra de Boole: Tablas de verdad


Es el sistema matemtico usado para la representacin de la logica, en el diseo de circuitos lgicos, que nos permite identificar mediante smbolos el objeto de un circuito lgico de modo que su estado sea equivalente a un circuito real.
Desarrollada en 1854 por George Boole Ms tarde mejorada por Claude Shannon (Bell Labs)

Las salidas son calculadas para todas las posibles combinaciones de entradas ( Cuntas combinaciones de entrada hay aqu ?)

Considere un cuarto con dos llaves A y B que actuan sobre la lampara Z. Cmo trabajan ?
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-10

Appendix A - Digital Logic

Asignacin Alternativa de salida en funcin del estado de las llaves


En una tabla de verdad, se enumeran todas las posibles combinaciones de entrada de las var. binarias y se asigna el correspondiente valor 0 o 1 a la salida para cada combinacin.

Aqu se presenta una asignacin logica alternativa

En general, dadas n variables de entrada se pueden obtener 2 n n) combinaciones de entradas, existen -> 2 (2 posibles asignaciones de salida.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-11

Appendix A - Digital Logic

COMPUERTAS LOGICAS

Tablas de verdad con todas las posibles funciones de dos variables binarias

Las funciones lgicas booleanas que ms frecuentemente se usan: AND, XOR, OR, NOR, XNOR, y NAND.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-12

Appendix A - Digital Logic

Puertas lgicas y sus smbolos


Una compuerta lgica es un dispositivo fsico que implementa una funcin bsica del Algebra de Boole. Smbolos lgicos de las funciones booleanas AND (Y), OR (O) , buffer, y NOT

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-13

Appendix A - Digital Logic

Smbolos lgicos para las funciones booleanas NAND,NOR, XOR y XNOR

O excluyente (XOR): Produce 1 en su salida, cuando el nro. de 1 en su entrada es impar


Principles of Computer Architecture by M. Murdocca and V. Heuring

NOR EXCLUYENTE (XNOR): Produce una salida complementaria a la de XOR.


1999 M. Murdocca and V. Heuring

A-14

Appendix A - Digital Logic

Variantes de los smbolos lgicos bsicos

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-15

Appendix A - Digital Logic

Propiedades bsicas del lgebra de Boole

Principio de dualidad: El dual de una funcin booleana se obtiene intercambiando sumas lgicas ( O ) por productos ( Y ) y productos por sumas.

Postulados

Teoremas

A, B, etc. son Literales; 0 y 1 son constantes.


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-16

Appendix A - Digital Logic

Teorema de DeMorgan ( dos variables)

Se utiliza el Teorema de DeMorgan para convertir una compuerta O en una compuerta NAND.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-17

Appendix A - Digital Logic

Conjunto de puertas
Un conjunto completo de puertas permite generar otras compuertas lgicas que no son parte de dicho conjunto. Existen 3 conjuntos de compuertas lgicas que permiten lograr una estructura completa. (Y, O y NO, las compuertas NAND y las compuertas NOR). En el ejemplo anterior vimos como una funcin O, se implementa nicamente a travs de compuertas NAND. La equivalencia funcional entre compuertas lgicas es importante en lo que hace a la aplicacin practica, dado que un tipo de compuerta lgica puede tener mejores caractersticas operativas que otro, dependiendo de la tecnologa utilizada.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-18

Appendix A - Digital Logic

Representacin en suma de productos y diagramas lgicos.


Muchas veces surge la necesidad de representar funcionas mas complejas que una simple compuerta lgica, tal como la funcin mayora. La funcin mayora es cierta cada vez que mas de la mitad de sus variables lgicas de entrada son ciertas. Este tipo de operacin es comn para la recuperacin de errores, en la que se comparan las salidas de circuitos idnticos que operan sobre los mismos datos, a partir de lo cual se determina la salida real por medio del mayor nro. de salidas similares ( como una votacin). Una forma de representar ecuaciones lgicas requiere el uso de la forma suma de productos.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-19

Appendix A - Digital Logic

La forma suma de productos (SOP)


Fig. A.15Tabla de verdad correspondiente a la funcin mayora

Ninguna de las compuertas analizadas hasta ahora puede ejecutar en forma directa la funcin mayora-> Transforma la funcin en una ecuacin lgica de dos niveles Y (producto lgico) y O Implementa la funcin con un un arreglo de compuertas lgicas, usando el conjunto {AND, OR, NOT} M es verdadero cuando A=0, B=1, y C=1, o cuando A=1, B=0, y C=1, y as sucesivamente en los restantes casos.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-21

Appendix A - Digital Logic

La forma suma de productos


La siguiente suma de productos describe la funcin mayora para tres entradas:

M = ABC + ABC + ABC + ABC = m3 + m5 +m6 +m7 = (3, 5, 6, 7)


Expresin de la funcin mayora en su forma cannica suma de productos. Cuando un producto lgico contiene todas las variables de la funcin, expresadas una sola vez, ya sea en su forma real o complementada, se denomina Termino Mnimo

Cada uno de los 2n trminos son llamados mnimos comenzando desde 0 to 2n - 1

Note las relaciones entre nmeros minitrminos y valores booleanos

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-22

Appendix A - Digital Logic

Implementacin circuital de la funcin mayora utilizando dos niveles ANDOR

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-23

Cuatro convenciones utilizadas para indicar intersecciones

Appendix A - Digital Logic

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-24

Appendix A - Digital Logic

LA FORMA PRODUCTO DE SUMA (POS)


Como expresin dual de la forma suma de productos, una ecuacin representada en su forma producto de suma contiene conjuntos de variables afectadas por operaciones de suma lgica cuyos resultados se convierten en un producto lgico. Se obtiene el complemento de la funcin suma de productos y aplicando los teoremas de DeMorgan. Seleccionando los trminos de entrada que hacen 0 a la salida:

F A * B*C A * B* C A * B *C A * B*C
Principles of Computer Architecture by M. Murdocca and V. Heuring

A.3

1999 M. Murdocca and V. Heuring

A-25

Appendix A - Digital Logic

LA FORMA PRODUCTO DE SUMA (POS) (I)


Se complementa ambos miembros de la igualdad, surge la ecuacin

F A * B*C A * B* C A * B *C A * B*C
La aplicacin del teorema de DeMorgan; en la primera negacin, en la forma siguiente:

W X Y Z W * X *Y * Z

Da origen a la ecuacin:

F = ( A* B* C) * ( A* B* C ) * ( A* B* C ) * ( A* B* C )

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-26

Appendix A - Digital Logic

LA FORMA PRODUCTO DE SUMA (POS) (II)


Una nueva aplicacin del Teorema de DeMorgan a los trminos entre parntesis, ahora en su forma:

W * X *Y * Z W X Y Z
Da origen a la ecuacin:

F ( A B C) * ( A B C) * ( A B C) * ( A B C)

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-27

Appendix A - Digital Logic

LA FORMA PRODUCTO DE SUMA (POS) (III)


Esta ecuacin esta expresada en la forma producto de sumas y contiene 4 trminos mximos, en los que cada variable de la funcin aparece una sola vez en forma real o complementada. Un termino mximo ( A + B + C ) adopta un valor 0, para una nica entrada de la tabla de verdad. Un argumento para el uso de la forma producto de sumas en reemplazo de la forma de la forma suma de productos, puede ser la obtencin de una expresin booleana mas sencilla.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-28

Appendix A - Digital Logic

La funcin mayora implementada con dos niveles AND OR (POS)


F ( A B C) * ( A B C) * ( A B C) * ( A B C)

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-29

Appendix A - Digital Logic

Formas SOP Y POS


Una expresin booleana mas sencilla puede significar un circuito mas simple. Existen adems consideraciones que no dependen del tamao de la ecuacin booleana, sino de la complejidad de la topologa de cableado. Parmetros de complejidad del circuito
Cantidad de compuertas

Cantidad de entradas en las compuertas

En funcin de lo anterior se pueden comparar ambas implementaciones de circuitos.

Dado que una ecuacin booleana mas pequea se traduce en un circuito con menor cantidad de compuertas, -> la reduccin es importante ( Mapas de Karnaugh).

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-30

Appendix A - Digital Logic

Componentes digitales
En los diseos de circuitos digitales de alto nivel, adems de las compuertas individuales, suelen utilizarse componentes ( conjuntos de compuertas lgicas ) o bloques funcionales. Objetivo: Abstraer un cierto nivel de complejidad circuital La funcin mayora puede verse como una componente. Niveles de integracin (nmero de puertas) en un nico circuito integrado:

Integrados en pequea escala (SSI): 10-100 elementos.


Integracin en escala media (MSI): 100 a 1000 elementos. Integracin a gran escala (LSI): 1000-10.000 elementos.

Integracin en mayor escala (VLSI): 10.000 y ms.


Estos son niveles aproximados, pero son tiles para comparar la complejidad relativa de los distintos circuitos.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-31

Appendix A - Digital Logic

Componentes digitales MSI


Multiplexores Demultiplexores Decodificadores Codificadores de prioridad

Matrices logicas programables Sumador con arrastre serie


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-32

Appendix A - Digital Logic

Multiplexores
Entradas de datos

Cuando se disean circuitos utilizando multiplexores, se los considera como un Bloque funcional, que se representa como una Caja negra.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-33

Circuito AND OR que implementa el multiplexor de cuatro entradas.

Appendix A - Digital Logic

Comparando con el anterior: Se evitan detalles innecesarios en el diseo de circuitos complejos


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-34

Appendix A - Digital Logic

La funcin mayora implementada con un Mux 8-1

La implementacin de funciones booleanas puede ser realizada por medio de multiplexores.


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-35

Appendix A - Digital Logic

Mayor eficiencia: Uso de un multiplexor 4-1 para implementar la funcin mayora.( 3 variables y 4 entradas de datos.)

Principle: Uso de las entradas A y B inputs para seleccionar un par de miniterminos. Las entradas de datos al MUX se toman del conjunto {0, 1, C, C}.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-36

Appendix A - Digital Logic

Demultiplexores (DEMUX)

D: Entrada de datos; A y B: Entradas de control


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-37

Appendix A - Digital Logic

El demultiplexor con su entrada en 1 es un decodificador.


Comparar con la Fig A.29

Aplicacin: Envo de datos desde un origen nico hacia un conjunto de destinos. Ej.: Circuito de llamada de ascensores que deriva la llamada al ascensor mas cercano.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-38

Appendix A - Digital Logic

Decodificadores
Decodificador: traduce una codificacin lgica hacia una ubicacin espacial. En cada momento solo una de las salidas del decodificador est en estado activo ( 1 lgico). Puede usarse para controlar otros circuitos. Para no habilitar circuitos errneamente incorpora entonces una lnea de habilitacin. Aplicacin: Traduccin de direcciones de memoria a sus correspondientes ubicaciones fsicas. En la implementacin de funciones booleanas.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-39

Appendix A - Digital Logic

Decodificadores.
Un decodificador traduce una codificacin logica hacia una ubicacin espacial. A veces se introduce una lnea de habilitacin que fuerza todas las salidas a 0, cuando se le aplica un 0 en la entrada.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-40

Appendix A - Digital Logic

Decodificador 2-4.
A.29. Circuito de compuertas Y para el decodificador 2 a 4

Demultiplexor de 4 Salidas con su entrada En 1

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-41

Appendix A - Digital Logic

La funcin mayora implementada por un decodificador 3 a 8

En c/momento, solo una de las salidas del decodificador esta en el estado activo. Las salidas no utilizadas se dejan desconectadas
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-42

Appendix A - Digital Logic

Codificadores de prioridad
Traduce un conjunto de entradas en un cdigo binario Puede pensarse como el circuito opuesto al de un decodificador Un codificador de prioridad establece un ordenamiento de las entradas. Ai tiene una mayor prioridad que Ai+1

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-43

Appendix A - Digital Logic

Matrices lgicas programables (PLAs)


Una PLA es una matriz configurable de compuertas AND seguida de otra matriz configurable de compuertas OR.
Se personalizan anulando fusibles para una funcion especifica.

Una PLA como una caja negra Diseo de la matriz puede dejarse en Manos de un programa automatizado.
Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-44

Appendix A - Digital Logic

Implementacin de la funcin mayora mediante matriz lgica programable.


PLA: Es un elemento que minimiza la cdad de conexiones del circuito. Existen programas que disean PLA a partir de descripciones funcionales.

Son componentes de gran aplicacin en los sistemas digitales.


Ventajas: Se tienen pocas entradas y salidas, aun cuando haya un importante numero de compuertas entre las entradas y las salidas.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-45

Appendix A - Digital Logic

Matriz lgica programable (PLA).


Importante: Minimizar la cantidad de conexiones del circuito para: Obtener un sistema modular formado por componentes discretos que se disean y se implementan por separado. Haciendo uso del criterio modular es que se disea una PLA como una caja negra.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

A-46

Appendix A - Digital Logic

Uso de PLAs: Diseo de un circuito digital que suma dos numeros binarios

Tabla de verdad de un sumador completo.


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-47

PLA Implementacion Circuito sumador con arrastre de un sumador en serie de 4 bits implementado completo
con sumadores completos

Appendix A - Digital Logic

conectados en cascada (Para el ejemplo anterior)

Desventaja: Los resultados de c/columna se determinan en secuencia empezando desde la derecha


Principles of Computer Architecture by M. Murdocca and V. Heuring 1999 M. Murdocca and V. Heuring

A-48

Appendix A - Digital Logic

Matrices lgicas programables (PLAs)


El uso de herramientas CAD favorecen su uso sobre el de la lgica discreta o de multiplexores Estas herramientas de diseo asistido reducen los tamaos de las PLAs, por lo que la gran cdad de compuertas aparentemente utilizadas no es tan elevada en la practica.

Principles of Computer Architecture by M. Murdocca and V. Heuring

1999 M. Murdocca and V. Heuring

También podría gustarte