Introducción al Algebra de Boole
-
Upload
braian-estrada -
Category
Documents
-
view
212 -
download
2
Transcript of Introducción al Algebra de Boole
![Page 1: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/1.jpg)
Introducción al Algebra de BoolePrincipios de Lógica Digital
Universidad Tecnológica NacionalFacultad Regional Buenos Aires
Departamento SistemasArquitectura de Computadores
2011Elvira Quiroga
![Page 2: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/2.jpg)
Esta presentación es de carácter conceptual y tiene la finalidad de acompañar el desarrollo del tema en el aula.
NO sustituye la bibliografía indicada por la Cátedra.
![Page 3: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/3.jpg)
Introducción
• En esta Unidad se analizan los principios básicos de la lógica digital que se aplican al diseño de una computadora digital.
• En 1884 George Boole publicó su trabajo sobre un Álgebra para representar la Lógica. Boole estaba interesado en capturar la matemática del pensamiento y desarrolló una representación para las declaraciones como "la puerta está abierta" o "la puerta está no abierta".
• El Álgebra de Boole, en su forma actual fue desarrollada por Shannon.
![Page 4: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/4.jpg)
Algebra de Boole
• En el Algebra de Boole las variables son binarias y sólo pueden tomar dos valores que son complementarios entre si.
• Estos valores se designan como:• 1 SI / ALTO / VERDADERO /
ON• 0 NO / BAJO/ FALSO / OFF
Recordar que en este símbolo si la porción clara representa un estado o valor A, la porción oscura
representa el estado complementario, “No A”.
![Page 5: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/5.jpg)
Operadores Fundamentales
• El algebra de Boole reconoce dos operadores fundamentales: – SUMA LOGICA (+; OR):– PRODUCTO LOGICO (; AND).
• Algunos autores también consideran al COMPLEMENTO (NO) entre las operaciones fundamentales.
• Estos operadores y cualquier función booleana quedan definidos mediante sus Tablas de Verdad.
![Page 6: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/6.jpg)
Esquema Conceptual
Operación Fundamental
Tabla de Verdad
Compuerta Lógica
Operación Especial
definida mediante
realizada por AND
OR
NOT
«es una»
realizada por
definida mediante NAND
NOR
Patrones Repetitivos
Cuestiones Técnicas
XOR
Compuerta Especial
determinada porrequieren
![Page 7: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/7.jpg)
Compuertas Lógicas
• Los dispositivos físicos que implementan una función booleana simple –es decir un operador booleano, se denominan compuertas lógicas o simplemente compuertas.
• En lenguaje técnico también se las denomina «gates»
![Page 8: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/8.jpg)
• Realiza la Suma Lógica• La función lógica OR
es Falsa sólo cuando todas las variables de entrada están en “0”
A B F
0 0 00 1 11 0 11 1 1
Compuertas Lógicas: OR
Se lee A “o” B (OR)
A
B
F = A + B
![Page 9: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/9.jpg)
• Realiza el Producto Lógico
• La función lógica AND es verdadera sólo cuando todas las variables de entrada están en “1”
A B F
0 0 00 1 01 0 01 1 1
Compuertas Lógicas: AND
Se lee A “y” B (AND)
A
B
F = A B
![Page 10: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/10.jpg)
• Realiza la Complementaicón
• Este operador “invierte” el valor lógico de la entrada.
A F
0 11 0
Compuertas Lógicas: NOT
Se lee “no A” (NOT)
A F = A
El círculo indica “negación”
![Page 11: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/11.jpg)
• Esta función lógica especial, OR-Exclusiva es verdadera sólo cuando es IMPAR la cantidad de variables de entrada que están en “1”
A B F
0 0 00 1 11 0 11 1 0
Compuertas Lógicas: OR-EX
A
B
F = A + B
Se lee A “exclusive-or” B (OR-EX)
![Page 12: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/12.jpg)
• La función lógica NOR es Verdadera sólo cuando todas las variables de entrada están en “0”
A B F
0 0 10 1 01 0 01 1 0
Compuertas Negadas: NOR
Se lee A o B “negado” (NOR)
A
B
F = A + B
![Page 13: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/13.jpg)
• La función lógica NAND es Falsa sólo cuando todas las variables de entrada están en “1”
A B F
0 0 10 1 11 0 11 1 0
Compuertas Negadas: NAND
Se lee A y B “negado”(NAND)
A
B
F = A B
![Page 14: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/14.jpg)
Propiedades del Algebra de Boole
• El Algebra de Boole tiene un conjunto de propiedades que se definen en el siguiente conjunto de reglas:
• Postulados– Conmutativa– Distributiva– Regla de Identidad– Regla del Complemento
• Teoremas– Asociativa– Idempotencia– Teorema de De Morgan– Regla de Involución– Reglas del cero y del uno
Nos proporcionan los formalismos que “soportan”
las manipulaciones de las funciones destinadas a optimizarlas –reducir la
cantidad de componentes y de conectores
![Page 15: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/15.jpg)
Funciones booleanas
• Un conjunto de variables booleanas vinculadas entre sí mediante los operadores de suma lógica, producto lógico y complementación constituye una función booleana. – La Tabla de Verdad es una de las formas de expresar
una función booleana.– También se usan expresiones literales (polinómica y
factorial) y expresiones simbólicas.– La forma canónica de un función booleana es una
expresión cuyos términos contienen la totalidad de las variables del problema.
![Page 16: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/16.jpg)
Funciones Booleanas: Ejemplo
• El sistema de seguridad contra incendios de un depósito funciona en base a tres sensores S0, S1 y S2. Cuando dos de estos sensores están activados (en “1”) se enciende una alarma luminosa [AL]. Además, si S2 se activa, también se enciende la alarma sonora [AS].
![Page 17: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/17.jpg)
Ejemplo: Tabla de Verdad
s2 s1 s0 AL AS
0 0 0 0 0
0 0 1 0 0
0 1 0 0 0
0 1 1 1 0
1 0 0 0 1
1 0 1 1 1
1 1 0 1 1
1 1 1 1 1
SistemaContra-Incendios
s2 s1 s0
AL AS
![Page 18: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/18.jpg)
Ejemplo: Formas Literales
• Expresión Literal Completa –Suma de Productos
• Expresión Literal en Minitérminos
AL = S2.S1.S0 + S2.S1.S0 + S2.S1.S0 + S2.S1.S0
AS = S2.S1.S0 + S2.S1.S0 + S2.S1.S0 + S2.S1.S0
AL = m3 + m5 + m6 + m7
AS = m4 + m5 + m6 + m7 Dado que todos los términos de
esta forma POLINÓMICA contienen todas las variables, esta expresión se denomina
CANÓNICA
![Page 19: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/19.jpg)
Minitérminos
S2.S1.S0= m7
S2.S1.S0 = m4
S2.S1.S0 = m2
S2.S1.S0 = m1
S2.S1.S0= m3
S2.S1.S0= m5
S2.S1.S0= m6
S2.S1.S0 = m0
La expresión “minitérmino” alude a
que estos términos designan las áreas
mínimas de un diagrama de Euler-
Venn.
![Page 20: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/20.jpg)
Ejemplo: Minitérminos
# s2 s1 s0 Leído como
0 0 0 0 S2S1S0
1 0 0 1 S2S1S0
2 0 1 0 S2S1S0
3 0 1 1 S2S1S0
4 1 0 0 S2S1S0
5 1 0 1 S2S1S0
6 1 1 0 S2S1S0
7 1 1 1 S2S1S0
![Page 21: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/21.jpg)
Minitérminos y Mapa de Karnaugh
S2.S1.S0
S2.S1.S0
S2.S1.S0
S2.S1.S0
S2.S1.S0
S2.S1.S0
S2.S1.S0
S2.S1.S0
S2
S2
S1S1
S0S0 S0
m0 m1 m3 m2
m4 m5 m7 m6
![Page 22: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/22.jpg)
Ejemplo: Mapas de Karnaugh
S2
S2
S1S1
S0S0 S0
m0 m1 m3 m2
m4 m5 m7 m6
1
11 1
AL
S2
S2
S1S1
S0S0 S0
m0 m1 m3 m2
m4 m5 m7 m6
1 11 1
AS
![Page 23: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/23.jpg)
S0S2 S1
AL
Ejemplo: Circuitos
![Page 24: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/24.jpg)
S0S2 S1
AS
Ejemplo: Circuitos
![Page 25: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/25.jpg)
S0S2 S1
Ejemplo: Circuitos Minimización
AL = S2.S1.S0 + S2.S1.S0 + S2.S1.S0 + S2.S1.S0
AL = (S2 + S2).S1.S0 + (S1 + S1).S2.S0 + (S0 + S0).S2.S1
AL
AL = S1.S0 + S2.S0 + S2.S1
![Page 26: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/26.jpg)
Ejemplo: Circuitos Minimización
AL = S2.S1.S0 + S2.S1.S0 + S2.S1.S0 + S2.S1.S0
AL = S1.S0 + S2.S0 + S2.S1
S2
S2
S1S1
S0S0 S0
m0 m1 m3 m2
m4 m5 m7 m6
1
11 1
AL
![Page 27: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/27.jpg)
Entender Problema
Especificar Problema
Levantar la función
Diseñar solución (Circuito)
Implementar solución (Componentes estándar)
![Page 28: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/28.jpg)
Aplicaciones
![Page 29: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/29.jpg)
Concepto de UAL
• La Unidad Aritmética y Lógica es el componente de la CPU que realiza las operaciones lógicas (AND, OR, XOR, etc.) y aritméticas (en principio suma y resta).
• Podemos pensar entonces en una estructura con dos operadores básicos, uno lógico –UL y uno aritmético –UA, como muestra la figura adjunta
UL
UA
ORDEN OP
OPERANDO A
OPERANDO A
OPERANDO B
ORDEN OP
OPERANDO B
Como se observa en esta figura, los operadores reciben los operandos (datos) y una orden de
operación (para indicar QUE operación deben hacer).
![Page 30: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/30.jpg)
Operadores Elementales
• Un operador elemental es un artefacto “para un bit” que puede realizar una operación aritmética o lógica– El operador lógico elemental recibirá dos bits “a” y
“b” que pertenecen a los operandos A y B respectivamente y entregará como resultado el valor que resulte de realizar la operación lógica –AND, OR, XOR, NOT, solicitada.
– El operador aritmético elemental recibirá dos bits “a” y “b” pertenecientes a los operandos A y B respectivamente y entregará como resultado el valor que resulte de realizar la operación aritmética –suma o resta, solicitada.
![Page 31: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/31.jpg)
Operador Lógico Elemental
• Entrada: Los bits “a” y “b” y las señales de control C0 C1;• Mecanismo Interno:
– Realiza simultáneamente todas las operaciones lógicas permitidas.
– Un multiplexor permite seleccionar la operación de interés.– Los bits de control de este MUX son generados por la Unidad de
Control a partir del código de operación.
• Salida: El bit cuyo valor resulta de la operación indicada (AND, OR, XOR, NOT)
![Page 32: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/32.jpg)
C1 C0 Función
0 0 a b0 1 a + b
1 0 a + b
1 1 b
MUX
ab
C1C0
F
Unidad Lógica Elemental
AND AX, BX
Ordenes de operación Decodificación de una instrucción
ULE
![Page 33: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/33.jpg)
Ejemplo: Circuito Multiplexor
C0C1
(a.b)
(a+b)
(a + b)
b
F= (a.b) + (a+b) + (a + b) + b
Un MUX tiene 2n entradas de dato y n entradas de control. La salida toma el valor de la entrada de datos
“seleccionada” por las señales de control
![Page 34: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/34.jpg)
• La conclusión más importante es que aquí vemos cómo se transforma el código de operación dado en la instrucción, en las señales binarias –comandos, a nivel del hardware que está involucrado en el funcionamiento de la máquina.
Unidad Lógica Elemental
![Page 35: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/35.jpg)
Operador Aritmético Elemental
• Entrada: Los bits “a” y “b” y la señal de control que indica suma o resta [a+b; a-b];
• Mecanismo Interno: – Realiza la operación de suma sin modificar los bits recibidos y
la de resta utilizando el complemento auténtico del sustraendo.– La operación es ejecutada por un sumador elemental – El bit de comando S/R –suma/resta es generado por la Unidad
de Control a partir del código de operación (ADD, SUB).
• Salida: La suma y el acarreo
![Page 36: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/36.jpg)
Sumador Elemental: Semisumador
• El sumador elemental será capaz de sumar un par de bits “a” y “b”.
• La Tabla de Verdad se deriva a partir de la Tabla de Suma Aritmética.
0 1
a
0
1b
0
101
1
0
00
a b Ssuma
Cacarreo
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
S = a b
C = a b +
![Page 37: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/37.jpg)
• Para sumar dos cantidades de n bits es necesario disponer de n bloques funcionales como el obtenido.
• Si bien permiten sumar bit a bit, al no tener en cuenta el acarreo no implementan correctamente la suma. Por este motivo este bloque se denomina semisumador o half adder.
ss
ab
S
C
ss
a
b
S
C
Sumador Elemental: Semisumador
![Page 38: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/38.jpg)
• Para realizar la suma de dos cadenas de bits es necesario tener en cuenta el acarreo que cada “etapa” le pasa a la siguiente. La Tabla de Verdad adjunta tiene en cuenta esta situación.
• Ahora las funciones son
• El bloque funcional que las
implementa se denomina sumador completo o full adder.
a b c-1 S C
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
C = (a b) + (a b) c-1 +
Sumador Elemental: Sumador Completo
++ S = a b c-1
![Page 39: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/39.jpg)
• Este bloque se denomina sumador completo o full adder.
• Permite sumar bit a bit, y dado que tiene en cuenta el acarreo posibilita la implementación correcta de una suma de n bits. – Justificar la implementación
propuesta para el sumador completo.
Sumador Elemental: Sumador Completo
sc
ab
S
C
c-1
a
b S
C
ss
sc
ssc-1
a + b
a b
![Page 40: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/40.jpg)
Sumador de 8 bits
c-1= 0
SC6 SC5 SC4 SC3 SC2SC7 SC1 SC0
a7 b7 a6 b6 a5 b5 a4 b4 a3 b3 a2 b2 a1 b1 a0 b0
S1 S0S3 S2S5 S4S7 S6Cc0c6 c5 c4 c3 c2 c1
bits A bits B
bits Sbit C
![Page 41: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/41.jpg)
La Resta en la UAL
• La resta se implementa utilizando el mismo dispositivo sumador, gracias a la propiedad de la notación posicional de cantidades denominada COMPLEMENTO.
• Para un número N de “p” dígitos expresado en base “b” se definen:
– COMPLEMENTO DIRECTO ( a la base menos uno)
CD(N) = (bp –1) - N
– COMPLEMENTO AUTENTICO ( a la base)
CA(N) = (bp ) - NY de allí
CA(N) = CD(N) + 1• Según se ha visto, la resta puede obtenerse “sumando” al minuendo el
complemento auténtico del sustraendo.• En binario el complemento directo se obtiene invirtiendo todos los bits del
registro. Por lo tanto, es sencillo deducir el esquema del sumador-restador elemental que realice las operaciones (a + b) y (a - b), según se indique.
![Page 42: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/42.jpg)
Sumador – Restador en Complemento Auténtico
S/R b b' 0 0 0 0 1 1 1 0 1 1 1 0
Si S/R es cero (0) el bit “b” se transfiere sin cambios; si es uno (1), el
bit transferido es el complemento directo del recibido
sc
a b
b'
c-1
SC
S/R
![Page 43: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/43.jpg)
Sumador-Restador de n bits
a0 b0 S/Ra1 b1ai bian-1 bn-1
sc
b'
c-1
S/R0
sc
b'
c0
S/R1
sc
b'
ci-1
S/Ri
sc
b'
cn-1
S/Rn-1C
c1
ci
S/R = 0 SumaS/R = 1 Resta
bits A bits B
bits S/Rbit C
S/R
![Page 44: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/44.jpg)
Lógica Digital
![Page 45: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/45.jpg)
Circuitos Combinacionales
• Son dispositivos cuya salida depende exclusivamente de la entrada en un instante dado
• Se implementan mediante compuertas, en forma exclusiva.
![Page 46: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/46.jpg)
Dispositivos Combinacionales Típicos
• Generador y Verificador de Paridad; • Comparador de magnitud;• Codificadores y Decodificadores• Multiplexores y Demultiplexores;• Bus asociado a un Multiplexor-Demultiplexor; • Circuitos "programables" para multiples funciones;• Memorias sólo de Lectura;• Dispositivos tipo PLD
![Page 47: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/47.jpg)
Circuitos Secuenciales
• En estos dispositivos el valor de la salida depende de la entrada y del historial, es decir de las entradas y consecuentes salidas previas.
• Se puede decir que un dispositivo secuencial se caracteriza porque a partir de una entrada y un estado (interno) actual, produce una salida y un nuevo estado interno.
• La implementación de estos dispositivos requiere la incorporación de elementos de memoria destinados a retener los estados internos.
![Page 48: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/48.jpg)
Elementos de Memoria
• Un elemento de memoria es un componente electrónico capaz de almacenar el valor de un bit.
• Vamos a considerar el arreglo de compuertas NOR mostrado en la figura adjunta.
• El funcionamiento del dispositivo queda especificado en la Tablas de Funcionamiento que describen como evolucionan los estados conforme cambian las estradas.
A
B
Y
Y'
![Page 49: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/49.jpg)
Elementos de Memoria
B = 0
Y = 0
Y'0
1
1
A = 0
A= 0; B= 0; Y=0
![Page 50: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/50.jpg)
Elementos de Memoria
B = 0
Y = 1
Y'1
0
0
A = 0
A= 0; B= 0; Y=1
![Page 51: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/51.jpg)
Elementos de Memoria
B = 1
Y = 0
Y'0
0
0
A = 0
A= 0; B= 1; Y=0
Y = 1
1
![Page 52: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/52.jpg)
Elementos de Memoria
B = 1
Y = 1
Y'1
0
0
A = 0
A= 0; B= 1; Y=1
![Page 53: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/53.jpg)
Elementos de Memoria
B = 0
Y = 0
Y'0
1
1
A = 1
A= 1; B= 0; Y=0
![Page 54: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/54.jpg)
Elementos de Memoria
B = 0
Y = 1
Y'1
0
0
A = 1
A= 1; B= 0; Y=1
Y = 0
01
1
![Page 55: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/55.jpg)
Tablas de Funcionamiento
# A BEstadoActual
(Y)
Próxima Salida(Y+1)
Y'
0 0 0 0 0 1
1 0 0 1 1 0
2 0 1 0 1 0
3 0 1 1 1 0
4 1 0 0 0 1
5 1 0 1 0 1
6 1 1 0 Estados Prohibidos7 1 1 1
# A BEstadoActual
(Y)
Próxima Salida(Y+1)
2 0 1 0 1
3 0 1 1 1
1 0 0 1 1
# A BEstadoActual
(Y)
Próxima Salida(Y+1)
5 1 0 1 0
4 1 0 0 0
0 0 0 0 0
Tabla Nº 1 Tabla Nº 2
Tabla Nº 3
El comportamiento de este artefacto no es determinístico cuando ambas entradas son “1”
![Page 56: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/56.jpg)
Dispositivos Biestables
• Para comprobar si este circuito se comporta de manera secuencial se toman las instancias de la Tabla Nº 1 en forma encadenada:
• Se puede ver (Tabla Nº 2) que la entrada B hace que la salida tome el valor 1, por lo tanto se la denomina Set;
• Por otra parte (Tabla Nº 3) la entrada A obliga a que la salida tome el valor 0 y se la denomina Reset.
• El arreglo de compuertas obtenido es un biestable, es decir un artefacto que tiene dos estados estables.
• Cuando se alcanza un estado estable la salida se mantiene aunque la entrada que lo ha originado esté inactiva.
• Este circuito biestable o flip-flop recibe el nombre de SetReset o simplemente SR.
![Page 57: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/57.jpg)
Biestables o flip-flops
«flip flop»
SR
S
R Q
Q
Para impedir que ambas entradas tomen el valor 1 en forma
simultánea se agrega un inversor
«flip flop»
SR
S
R Q
Q
El resultado es un flip flop D, cuya salida repite la entrada.
«flip flop»
D
D
Q
Q
![Page 58: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/58.jpg)
Diagramas Temporales
• Se puede realizar un diagrama temporal para presentar el comportamiento de la salida de un flip-flop en función de los cambios de sus entradas.
• Para el FF D se obtiene el gráfico de la figura adjunta
t
EntradaInput
t
SalidaOutput
D
Q
![Page 59: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/59.jpg)
Sincronización
• En un flip-flop D convencional todos los cambios experimentados por la entrada se copian directamente en la salida.
• Por lo tanto se dice que tienen baja inmunidad al ruido.
• Para conseguir un comportamiento menos vulnerable al ruido se implementan dispositivos sincronizables.
• Los FF sincronizables poseen una entrada adicional de control o sincronismo (a veces llamada entrada de reloj).
• La entrada tiene efecto sobre la salida solamente cuando está presente la señal de sincronismo, de lo contrario los cambios quedan bloqueados
t
EntradaInput
SalidaOutput
t
D
Q
Efecto de ruido
![Page 60: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/60.jpg)
Sincronización
t
EntradaInput
SalidaOutput
t
t
Señal ClockClock Signal
«flip flop»
D
D
Q
Q
clock
La sincronización puede realizarse por nivel (alto-bajo) o por flanco
(ascendente-descendente)
![Page 61: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/61.jpg)
Otros Biestables
• Biestable R-S sincrónico;• Biestable J-K sincrónico;• Biestable T sincrónico;• Master-Slave
![Page 62: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/62.jpg)
Registros y Operaciones con Registros
• Registros• Registros contadores• Registro contador progresivo de 8 eventos (una
aplicación con biestables T); Contador regresivo de 8 eventos (con biestables T);
• Registros con facilidad de desplazamiento:– Desplazamientos lógicos;– Desplazamientos circulares;– Desplazamientos aritméticos;– Desplazamientos concatenados.
![Page 63: Introducción al Algebra de Boole](https://reader034.fdocuments.net/reader034/viewer/2022052304/557202144979599169a2ebc0/html5/thumbnails/63.jpg)
FIN