Download presentation
Presentation is loading. Please wait.
Published byFrancisco Herrera Mora Modified over 8 years ago
1
Organización del Computador 1 Lógica Digital 1 Algebra de Boole y compuertas
2
Representación de la Información La computadoras necesitan almacenar datos e instrucciones en memoria Sistema binario (solo dos estados posibles) Por qué? Es mucho más sencillo identificar entre sólo dos estados Es mucho más sencillo identificar entre sólo dos estados Es menos propenso a errores Es menos propenso a errores
3
Lógica digital Circuitos que operan con valores lógicos (Verdadero=1, Falso=0) Idea: realizar diferentes operaciones lógicas y matemáticas combinando circuitos
4
George Boole, desarrolló un sistema algebraico para formular proposiciones con símbolos. George Boole 1815-1864 Algebra de Boole Su álgebra consiste en un método para resolver problemas de lógica que recurre solamente a los valores binarios: verdadero y falso on y off 1 y 0 Y tres operadores: AND (y) OR (o) NOT (no)
5
Las variables Booleanas sólo toman los valores binarios: 1 ó 0. Una variable Booleana representa un bit que quiere decir: Binary digIT Algebra de Boole
6
Operadores básicos Un operador booleano puede ser completamente descripto usando tablas de verdad. El operador AND es conocido como producto booleano (.) y el OR como la suma booleana (+) El operador NOT se nota con un ¬ o una barra
7
Funciones booleanas Tabla de verdad de esta función: El NOT tiene más precedencia que todos El AND más que el OR
8
Identidades del Algebra de Boole Identidad1.A=A0+A=A Nula0.A=01+A=1 IdempotenciaA.A=AA+A=A InversaA.Ã=0A+Ã=1 ConmutativaA.B=B.AA+B=B+A Asociativa(A.B)C=A.(B.C)(A+B)+C=A+(B+C) DistributivaA+B.C=(A+B).(A+C)A.(B+C)=A.B+A.C AbsorciónA.(A+B)=AA+A.B=A De Morgan
9
Ejemplo Usando identidades booleanas podemos reducir esta función: (X+Y)(X+ Y)( X+Z) DeMorgan (XX + X Y+YX+Y Y)( X+Z) Distributiva (X + X Y+YX + 0) ( X+Z) Indempotencia e Inversa (X + X( Y+Y)) ( X+Z) Nula y Distributiva (X) ( X+Z) Inversa, Identidad y Nula X X+XZ Distributiva XZ Inversa e Identidad
10
Fórmulas equivalentes Varias fórmulas pueden tener la misma tabla de verdad Son lógicamente equivalentes Son lógicamente equivalentes En general se suelen elegir las formas “canónicas” Suma de productos: Suma de productos: F(x,y,z) = xy + xz +yzF(x,y,z) = xy + xz +yz Producto de sumas: Producto de sumas: F(x,y,z) = (x+y). (x+z).(y+z)F(x,y,z) = (x+y). (x+z).(y+z)
11
Suma de Productos Es fácil convertir una función a una suma de productos usando la tabla de verdad. Elegimos los valores que dan 1 y hacemos un producto (AND) de la fila (negando si aparece un 0) Luego sumamos todo (OR) F(x,y,z) = (¬xy¬z)+(¬xyz)+(x¬y¬z)+(xy¬z)+(xyz)
12
Circuitos booleanos Las computadores digitales contienen circuitos que implementan funciones booleanas Cuando más simple la función más chico el circuito Son más baratos, consumen menos, y son mas rápidos! Son más baratos, consumen menos, y son mas rápidos! Podemos usar las identidades del algebra de Boole para reducir estas funciones.
13
Compuertas lógicas Una compuerta es un dispositivo electrónico que produce un resultado en base a un conjunto de valores de valores de entrada En realidad, están formadas por uno o varios transitores, pero lo podemos ver como una unidad. En realidad, están formadas por uno o varios transitores, pero lo podemos ver como una unidad. Los circuitos integrados contienen colecciones de compuertas conectadas con algún propósito Los circuitos integrados contienen colecciones de compuertas conectadas con algún propósito
14
Compuertas Lógicas Las más simples: AND, OR, y NOT. Se corresponden exactamente con las funciones booleanas que vimos
15
Compuertas lógicas Una compuerta muy útil: el OR exclusivo (XOR) La salida es 1 cuando los valores de entrada difieren. Usamos el simbolo para el XOR.
16
Componentes digitales Combinando compuertas se pueden implementar funciones booleanas Este circuito implementa la siguiente función: Simplificando las funciones se crean circuitos más chicos!
17
Ejemplo: La función Mayoría ABCM 0000 0010 0100 0111 1000 1011 1101 1111
18
NAND y NOR son dos compuertas muy importantes. Con la identidad de Morgan se pueden implementar con AND u OR. Son más baratas y cualquier operación básica se puede representar usándolas cualquiera de ellas (sin usar la otra) Compuertas lógicas Multiplexores
19
NAND y NOR
20
Ejercicio Ejemplo: NOT usando NAND Utilizando solo NAND o NOR realizar circuitos con la misma funcionalidad que el AND y OR
21
Circuitos combinatorios Producen una salida específica al (casi) instante que se le aplican valores de entrada Implementan funciones booleanas La aritmética y la lógica de la CPU se implementan con estos circuitos
22
Sumadores Como podemos construir un circuito que sume dos bits X e Y? F(X,Y) = X + Y (suma aritmética) Que pasa si X=1 e Y=1?
23
Podemos usar un XOR para la suma y un AND para el “carry” A este circuito se lo llama Half-Adder Half-Adder X Y C Half Adder
24
¿Cómo se suman números de dos bits? Ej: 1 + 1 1 ___________________
25
¿Cómo se suman números de dos bits? Ej: 1 + 1 1 ___________________ 0
26
¿Cómo se suman números de dos bits? Ej:1 1 + 1 1 ___________________ 1 0
27
¿Cómo se suman números de dos bits? Ej:1 1 + 1 1 ___________________ 1 1 0 Full Adders
28
¿Cómo se suman números de dos bits? Ej:1 1 + 1 1 ___________________ 1 1 0 Se necesita un Full Adder que considere el acarreo. Full Adder X Y Ci Co
29
Cómo es la tabla de verdad de un Full Adder? Podemos mejorar nuestro half-adder para considerar un “acarreo” en la entrada. Full-Adder
30
¿Podemos adaptar nuestro half-adder para convertirlo en un full adder? Full-Adder
31
Half Adder X Y Ci Co Full Adder Half Adder C C X Y
32
He aquí el full adder Full-Adder
33
Ejercicio:diseñar un sumador de cuatro bits usando half y/o full adders. Ae B As Full Adder A A B As Half Adder A 4 A 3 A 2 A 1 B 4 B 3 B 2 B 1 + C 5 C 4 C 3 C 2 C 1
34
A 4 A 3 A 2 A 1 B 4 B 3 B 2 B 1 + C 5 C 4 C 3 C 2 C 1 A1A1 B1B1 As HA As FA As FA Ae As FA Ae A2A2 B2B2 A3A3 B3B3 A4A4 B4B4 C1C1 C2C2 C3C3 C4C4 C5C5 sumador de cuatro bits
35
Decodificadores Decodificadores de n entradas pueden seleccionar una de 2 n salidas Son muy importantes Por ejemplo: Seleccionar una locación en una memoria a partir de una dirección colocada en el bus memoria Seleccionar una locación en una memoria a partir de una dirección colocada en el bus memoria
36
Decodificadores - Ejemplo Decodificador 2-a-4 Si x = 0 e y = 1, que línea de salida queda habilitada?
37
Selecciona una salida a de varias entradas La entrada que es seleccionada como salida es determinada por las líneas de control Para seleccionar entre n entradas, se necesitan log 2 n líneas de control. Multiplexores Demultiplexor Exactamente lo contrario Exactamente lo contrario Dada una entrada la direcciona entre n salidas, usando log2n líneas de control. Dada una entrada la direcciona entre n salidas, usando log2n líneas de control.
38
Así luce un multiplexor 4-a-1 Si S 0 = 1 y S 1 = 0, que entrada es transferida a la salida? Multiplexor - Ejemplo
39
Función Mayoría
40
Ejercicio: Implementar la función Mayoría con un Multiplexor
42
Ejercicio Construir una ALU de 1 bit 3 entradas: A, B, Carry A, B, Carry Cuatro operaciones: A.B, A+B, NOT B, Suma(A,B,Carry) A.B, A+B, NOT B, Suma(A,B,Carry) Salidas Resultado, Carry Out Resultado, Carry Out
43
Alu de 1bit Decoder Full Adder
44
Alu de 1bit
45
Un ALU de 8 bits
46
Memoria ROM
47
ROM usando un decoder
48
Links Libro Tanenbaum Demo compuertas: http://www.play- hookey.com/digital/derived_gates.html http://www.play- hookey.com/digital/derived_gates.htmlhttp://www.play- hookey.com/digital/derived_gates.html Para ver Compuertas logicas en detalle: http://www.csc.sdstate.edu/%7egamradtk/ csc317/csc317notes.html http://www.csc.sdstate.edu/%7egamradtk/ csc317/csc317notes.html http://www.csc.sdstate.edu/%7egamradtk/ csc317/csc317notes.html
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.