Escolar Documentos
Profissional Documentos
Cultura Documentos
Universidad Tecnolgica Nacional Facultad Regional Buenos Aires Departamento Sistemas Arquitectura de Computadores 2011 Elvira Quiroga
Esta presentacin es de carcter conceptual y tiene la finalidad de acompaar el desarrollo del tema en el aula.
Introduccin
En esta Unidad se analizan los principios bsicos de la lgica digital que se aplican al diseo de una computadora digital. En 1884 George Boole public su trabajo sobre un lgebra para representar la Lgica. Boole estaba interesado en capturar la matemtica del pensamiento y desarroll una representacin 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.
Algebra de Boole
En el Algebra de Boole las variables son binarias y slo 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 smbolo si la porcin clara representa un estado o valor A, la porcin oscura representa el estado complementario, No A.
Operadores Fundamentales
El algebra de Boole reconoce dos operadores fundamentales:
SUMA LOGICA (+; OR): PRODUCTO LOGICO (; AND).
Algunos autores tambin consideran al COMPLEMENTO (NO) entre las operaciones fundamentales. Estos operadores y cualquier funcin booleana quedan definidos mediante sus Tablas de Verdad.
Esquema Conceptual
Operacin Fundamental
definida mediante realizada por AND
OR NOT
es una NAND
Operacin Especial
determinada por
Compuerta Especial
NOR
requieren
XOR
Cuestiones Tcnicas
Patrones Repetitivos
Compuertas Lgicas
Los dispositivos fsicos que implementan una funcin booleana simple es decir un operador booleano, se denominan compuertas lgicas o simplemente compuertas. En lenguaje tcnico tambin se las denomina gates
Compuertas Lgicas: OR
Realiza la Suma Lgica La funcin lgica OR es Falsa slo cuando todas las variables de entrada estn en 0 A B F
A
F=A+ B
0 0 1 1
0 1 0 1
0 1 1 1
Se lee A o B (OR)
A B
F=A B
A B
0 0 1 1 0 1 0 1
F
0 0 0 1
Se lee A y B (AND)
F=A
Se lee no A (NOT)
A
F=A+ B
A B
0 0 1 1
0 1 0 1
0 1 1 0
A
F=A+ B
B
Se lee A o B negado (NOR)
A B
F=A B
0 0 1 1
0 1 0 1
1 1 1 0
Se lee A y B negado(NAND)
Teoremas
Asociativa Idempotencia Teorema de De Morgan Regla de Involucin 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
Funciones booleanas
Un conjunto de variables booleanas vinculadas entre s mediante los operadores de suma lgica, producto lgico y complementacin constituye una funcin booleana.
La Tabla de Verdad es una de las formas de expresar una funcin booleana. Tambin se usan expresiones literales (polinmica y factorial) y expresiones simblicas. La forma cannica de un funcin booleana es una expresin cuyos trminos contienen la totalidad de las variables del problema.
s2 s1 s0 Sistema Contra-Incendios
AL
AS
m3 + m5 + m6 + m7 m4 + m5 + m6 + m7
Dado que todos los trminos de esta forma POLINMICA contienen todas las variables, esta expresin se denomina CANNICA
Minitrminos
S2.S1.S0 = m0 S2.S1.S0 = m4 S2.S1.S0 = m6
S2.S1.S0 = m5
S2.S1.S0 = m7
S2.S1.S0 = m2
S2.S1.S0 = m1
S2.S1.S0 = m3
La expresin minitrmino alude a que estos trminos designan las reas mnimas de un diagrama de EulerVenn.
Ejemplo: Minitrminos
# 0 1 2 3 4 5 6 7 s2 0 0 0 0 1 1 1 1 s1 0 0 1 1 0 0 1 1 s0 0 1 0 1 0 1 0 1 Ledo como S2S1S0 S2S1S0 S2S1S0 S2S1S0 S2S1S0 S2S1S0 S2S1S0 S2S1S0
S1
S2.S1.S0
S2.S1.S0
S1 S0 S0
S2.S1.S0
S0
S2
S2.S1.S0
S2.S1.S0
S2.S1.S0
m0
S2
m1
m3
m2
S2.S1.S0 S2.S1.S0
m4
m5
m7
m6
AL
S2
S0
1
m0 m4 m1 m3 m2
S2
1
m5
1
m7
1
m6
S1 S1 S0 S0
AS
S2
S0
m0
S2
m1
m3
m2
1
m4
1
m5
1
m7
1
m6
Ejemplo: Circuitos
S2 S1 S0
AL
Ejemplo: Circuitos
S2 S1 S0
AS
S2 S1 S0
AL
S1
S1
AL
S2
S0
S0
S0
1
m0 m1 m3 m2
1
S2
1
m7
1
m6
m4
m5
Aplicaciones
Concepto de UAL
La Unidad Aritmtica y Lgica es el componente de la CPU que realiza las operaciones lgicas (AND, OR, XOR, etc.) y aritmticas (en principio suma y resta). Podemos pensar entonces en una estructura con dos operadores bsicos, uno lgico UL y uno aritmtico UA, como muestra la figura adjunta
ORDEN OP OPERANDO A OPERANDO B
UL
ORDEN OP
UA
OPERANDO A OPERANDO B
Como se observa en esta figura, los operadores reciben los operandos (datos) y una orden de operacin (para indicar QUE operacin deben hacer).
Operadores Elementales
Un operador elemental es un artefacto para un bit que puede realizar una operacin aritmtica o lgica
El operador lgico 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 operacin lgica AND, OR, XOR, NOT, solicitada. El operador aritmtico 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 operacin aritmtica suma o resta, solicitada.
C1
C0
Funcin
0 0 1 1
0 1 0 1
ab a+b a+b b
a b
M U X
AND AX, BX
C0
Ordenes de operacin
C1
C0
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 seales de control
F= (a.b) + (a+b) + (a + b) + b
(a+b)
(a + b)
La conclusin ms importante es que aqu vemos cmo se transforma el cdigo de operacin dado en la instruccin, en las seales binarias comandos, a nivel del hardware que est involucrado en el funcionamiento de la mquina.
S C suma acarreo
0 0 1 1
0 1 0 1
0 1 1 0
0 0 0 1
0 0
0
0
1
0
b
1
1
0
S=a + b C=ab
a b
S
ss
a
0 0 0 0 1 1 1 1
b
0 0 1 1 0 0 1 1
c-1
0 1 0 1 0 1 0 1
S
0 1 1 0 1 0 0 1
C
0 0 0 1 0 1 1 1
S = a + b + c-1 C = (a b) + (a + b) c-1
El bloque funcional que las implementa se denomina sumador completo o full adder.
Este bloque se denomina sumador completo o full adder. Permite sumar bit a bit, y dado que tiene en cuenta el acarreo posibilita la implementacin correcta de una suma de n bits.
Justificar la implementacin propuesta para el sumador completo.
a b c-1
a + b
ss ss
sc
C
ab
a b
c-1
S
sc
Sumador de 8 bits
a7 b7
SC7
a6 b6
SC6
a5 b5
SC5
a4 b4
SC4
a3 b3
SC3
a2 b2
SC2
a1 b1
SC1
a0 b0
c-1= 0 SC0
c6 C S7 S6
c5 S5
c4 S4
bits A
c3 S3
c2 S2
bits B
c1 S1
c0 S0
bit C
bits S
La Resta en la UAL
La resta se implementa utilizando el mismo dispositivo sumador, gracias a la propiedad de la notacin posicional de cantidades denominada COMPLEMENTO. Para un nmero N de p dgitos 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 ) - N
Y de all
CA(N) = CD(N) + 1
Segn se ha visto, la resta puede obtenerse sumando al minuendo el complemento autntico 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), segn se indique.
S/R 0 0 1 1
b 0 1 0 1
b' 0 1 1 0
S/R
b'
sc c-1
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
Sumador-Restador de n bits
S/R = 0 Suma S/R = 1 Resta
ai bi b'
sc ci-1 c1
a1 b1 b'
sc
a0 b0 b'
sc c-1
S/R
c0
S/R1
S/R0
S/R
bit C
bits S/R
Circuitos Combinacionales
Son dispositivos cuya salida depende exclusivamente de la entrada en un instante dado Se implementan mediante compuertas, en forma exclusiva.
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 implementacin de estos dispositivos requiere la incorporacin de elementos de memoria destinados a retener los estados internos.
Elementos de Memoria
Un elemento de memoria es un componente electrnico 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
Y
Y'
Elementos de Memoria
A= 0; B= 0; Y=0 A=0 Y=0 1
0 1 B=0 Y'
Elementos de Memoria
A= 0; B= 0; Y=1 A=0 Y=1 0
1 0 B=0 Y'
Elementos de Memoria
A= 0; B= 1; Y=0 A=0 0
Y=1
Y=0
0 0 B=1 Y'
Elementos de Memoria
A= 0; B= 1; Y=1 A=0
Y=1
1 0 B=1 Y'
Elementos de Memoria
A= 1; B= 0; Y=0 A=1 Y=0 1
0 1 B=0 Y'
Elementos de Memoria
A= 1; B= 0; Y=1 A=1 0
1 Y=0
Y=1
0 B=0
Y'
Tablas de Funcionamiento
Tabla N 1 # 0 1 2 A 0 0 0 B 0 0 1 Estado Actual (Y) 0 1 0 Prxima Salida (Y+1) 0 1 1 Y' 1 0 0
Tabla N 2
# A B
Estado Actual (Y) Prxima Salida (Y+1)
2 3
0 0
1 1
0 1
1 1
3
4 5 6
0
1 1 1
1
0 0 1
1
0 1 0
1
0 0
0
1 1
Tabla N 3
# A B Estado Actual (Y) Prxima Salida (Y+1)
Estados Prohibidos
5 4 0
1 1 0
0 0 0
1 0 0
0 0 0
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 flipflop recibe el nombre de SetReset o simplemente SR.
Biestables o flip-flops
S
flip flop
SR
flip flop
SR
Para impedir que ambas entradas tomen el valor 1 en forma simultnea se agrega un inversor
flip flop
Diagramas Temporales
Se puede realizar un D diagrama temporal para presentar el comportamiento de la salida de un flip-flop en funcin de los cambios de sus entradas. Para el FF D se obtiene el Q grfico de la figura adjunta
Entrada Input
Salida Output
Sincronizacin
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 seal de sincronismo, de lo contrario los cambios quedan bloqueados
Entrada Input
Salida Output
Efecto de ruido
Sincronizacin
Entrada Input
flip flop
Q
t
D
clock
t Salida Output t
Otros Biestables
Biestable R-S sincrnico; Biestable J-K sincrnico; Biestable T sincrnico; Master-Slave
FIN