Práctica 1

SISTEMAS LÓGICOS COMBINACIONALES
Plancha de Problemas:
1) Boole
2) Karnaugh
3) Diseño Combinacional
Sistemas Digitales 1
F.C.E.I.A. – U.N.R.
2016
Práctica de manipulación algebraica de funciones booleanas
Se pretende que todos los problemas sean resueltos mediante una manipulación
algebraica, haciendo uso de las leyes y teoremas del álgebra de Boole.
Problema nº 1:
Simplificar las siguientes funciones booleanas:
a) f1=A’+B’+ABC’
b) f4=ABC+A(B.C)’+A’BC
c) f5= A+B’+ABC’
d) f7=A’D’+A’B’+C’D’+BC
e) f9=Σ3(1,3,6,7)
f) f10=Σ4 (0,1,2,3,6,12,14)
Problema nº 2:
Determinar las condiciones que deben cumplir las variables booleanas A y B para que se
verifiquen las siguientes ecuaciones:
a) A’+AB=0
b) AB=AC
c) ABD+BCD+A’CD=ABD+A’CD
Problema nº 3:
Determinar ambas formas canónicas, expresadas tanto algebraica como numéricamente,
de las siguientes funciones lógicas:
a) f1=A(B’+C’)+C
b) f2=AB+AB’C+A’B’
c) f3= ABCD’+ABC’+A’BD
d) f4=AB+(A+C)B’+A’B’C
e) f5=Σ3 (0,1,3,4,5,7)
f) f6=Σ4 (0,1,2,3,12,15)
g) f7=(A+B)’ + A’BC+ (A.(B+C))’
h) f8=∏4 (0,3,11,15)
i) f9=A’(B+C)(B’+A)+AB’C
j) f10=(A’BC+AB’D’)(C+BD)’
Problema nº 4:
Demostrar que las siguientes funciones lógicas son EQUIVALENTES:
f1= ABC+AB’+AC’+A’BC
f2= A+BC
Sistemas Digitales 1
Problema nº 5:
Dada una función cuya expresión algebraica es: f=(A+B+C)’ ⊕ D’
obtener las expresiones canónicas numéricas de suma de productos y de producto de
sumas.
Problema nº 6:
Demostrar las siguientes propiedades de la función OR-exclusiva:
a) A ⊕ B=A’ ⊕ B’=(A’ ⊕ B)’=(A ⊕ B’)’
b) (A ⊕ B)’=AB+A’B’
c) (A ⊕ B)’= A ⊕ B’=A’ ⊕ B
d) A(B ⊕ C)=AB ⊕ AC
e) A ⊕ 1= A’
f) A ⊕ 0 = A
g) Si: A ⊕ C=B ⊕ C , entonces : A=B
h) Si: A ⊕ B=0, entonces : A=B
i) Si: A ⊕ B ⊕ C=D, entonces: A ⊕ B= C ⊕ D y A= B ⊕ C ⊕ D
j) Demostrar si esta identidad es cierta o falsa: A ⊕ (B+C)=(A ⊕ B) + (A ⊕ C)
k) A+B= A ⊕ B ⊕ AB
l) Usando la ecuación k) cualquier expresión puede ser convertida en otra equivalente
conteniendo sólo las operaciones XOR y AND. Transformar la siguiente expresión de
esa manera:
f=ABC’+AB’C+A’C
Problema nº 7:
Siendo f= Σ4(5,6,13) y f1=Σ4(0,1,2,3,5,6,8,9,10,11,13) encontrar una función f2 tal que
se verifique:
f=f1.f2’
Sistemas Digitales 1
Soluciones a los Problemas:
Veamos un sumario de las leyes y teoremas del álgebra de Boole que usaremos en la
resolución de los problemas:
Nro.
Orden
1
2
3
4
5
6
7
8
9
11
12
Nombre
a) Forma OR
b)Forma AND
Ley
de
IDEMPOTENCIA
Existencia
de
ELEMENTOS
NEUTROS
(Ley de Identidad)
Ley de ANULACION
(Propiedad
de
los
elementos neutros)
Ley CONMUTATIVA
Ley ASOCIATIVA
A+A=A
A.A=A
A+0=A
A.1=A
A+1=1
A.0=0
A+B=B+A
(A+B)+C=A+(B+C
)
A+A’ =1
A.(B+C)=A.B+AC
A+A.B=A
A+(A’.B)=A+B
(A+B)’=A’.B’
(A’)’=A
A.B=B.A
(A.B).C=A.(B.C)
Ley del INVERSO
Ley DISTRIBUTIVA
Ley de ABSORCION
Ley de MORGAN
DOBLE NEGACION
(Ley de Involución)
A.A’=0
A+B.C=(A+B).(A+C)
A.(A+B)=A
A.(A’+B)=A.B
(A.B)’=A’+B’
En las columnas a) y b) se indican las formas DUALES de representación de cada ley,
ya que el PRINCIPIO DE DUALIDAD establece que si en una identidad se
intercambian entre sí las operaciones suma y producto lógicos, y los elementos 0 y 1, la
identidad permanece válida.
De ahora en adelante, para hacer referencia a una determinada identidad la
identificaremos por la fila y la columna del cuadro. De esta manera, el indicador(6.a)
hará referencia a la identidad A+A’=1. Esto nos permitirá explicar en forma concisa las
respectivas leyes usadas en la manipulación algebraica.
Solución Problema nro. 1:
a) f1=A’+B’+ABC’ 4.b
f1=A’+B’+B.AC’ 9.a
f1=A’+B’+AC’ 4.a
f1= A’+AC’ 9.a + B
Sistemas Digitales 1
f1=A’+C’+B’ 4.a
f1=A’+B+C’
Aplicando (11.b) podría expresarse: f1=(ABC)’
b) f4=ABC+A(B.C)’ 11.b+A’BC
f4=A (BC+(BC)’)+A’BC
f4=A+A’BC = A+BC
c) f5= A+B’+ABC’ 4.a
f5=A+ABC’ 8.a+B’
f5=A+B’
d) f7=A’D’ 2.b+A’B’+C’D’+BC
f7=A’D’.1 6.a +A’B’+C’D’ 4.a+BC
f7=A’D’(C+C’) 7.a+C’D’+A’B’+BC
f7=A’D’C 4.a+A’D’C’ 4.a+C’D’+A’B’+BC
f7=A’CD’ 2.b+A’C’D’+C’D’ 7.a+A’B’+BC
f7=A’CD’.1 6.a+C’D’(A’+1) 3.aA’B’+BC
f7=A’CD’(B+B’) 7.a+C’D’.1 2.b+A’B’+BC
f7=A’BCD’+A’B’CD’+C’D’+A’B’+BC
4.a⇒f7=A’BCD’4.b+BC+A’B’CD’+A’B’ 8.a+C’D’
f7=BCA’D’+BC 8.a+A’B’+C’D’
f7=BC+A’B’+C’D’
Sistemas Digitales 1
e) f9=∑3(1,3,6,7)
Tener presente que esta forma de notación indica la correpondiente SUMA DE
PRODUCTOS CANÓNICOS (minterm). Es decir daría el equivalente decimal de
TODAS las filas donde la tabla presenta un “1” a su salida.
ABC
f9
0
000
0
1
001
1
Para evitar ambigüedades entre la notación NUMÉRICA y la
ALGEBRAICA hay que convenir en el ordenamiento que
tendrán las variables (literales) en la tabla. Convendemos en
asignar el literal que aparezca en primer término entre paréntesis
al bit más significativo (MSB) y de ahí en adelante ordenando
en forma correlativa. Por ejemplo :
2
010
0
f(X,Z,W)=∑3(1,4)=X’Z’W+XZ’W’
3
011
1
4
100
0
5
101
0
Se deja constancia que esta CONVENCIÓN no es universal
(hay autores que ordenan las tablas al revés). Es simplemente
una manera de ponernos de acuerdo en la notación. En caso de
no estar especificadas las variables, asignaremos el MSB al
literal A, el siguiente al B,etc. Por lo dicho resulta:
6
110
1
7
111
1
Nº
F9=∑ 3 (1,3,6,7)=A’B’C+A’BC+ABC’+ABC
001
011
110
111
Notar que cada minterm puede escribirse pensando en la notación binaria del equvalente
decimal, sin armar la tabla, negando la variable cuando en la respectiva combinación de
entradas el respectivo bit es “0” y dejándola sin negar en caso que sea “1” .
f 9= A’C(B’+B) ( 6 a ) +AB(C’+C) (6a) = A’C . 1 (2a) + AB .1 (2a) = A’C+AB
f) f 10= ∑ 4 (0,1,2,3,6,12,14)
f10= A’B’C’D’+A’B’C’D
(7a)
+A’B’CD’+A’B’CD(7a) +A’BCD’+ABC’D’+ABCD’(7a)
f 10= A’B’C’(D’+D) + A’B’C(D’+D) +A’BCD’+ ABD’(C’+C)
f 10= A’B’C’+A’B’C+A’BCD’+ABD’
f 10= A’B’(C’+C) +BD’(A’C+A) (9a)
f 10 = A’B’+BD’(C+A) = A’B’+BCD’+ABD’
Observación: notar que la manipulación algebraica no constituye una manera
sistemática de simplificación, y no asegura el logro de la máxima simplificación, es
decir, la obtención de una expresión MÍNIMA EQUIVALENTE
Sistemas Digitales 1
Solución problema Nº 2
a) Para que sean A’+AB (9 a) = A’+B= 0 deben ser A’=0 o sea A=1 y además B=0
Por lo tanto, las condiciones que deben cumplir son:
A=1
B=0
b) Para que se verifique
AB=AC
bien que sea B=C ( A cualquiera)
c) ABD+BCD+A’CD= ABD+A’CD
⇒
debe ocurrir que sea A=0 ( ByC cualesquiera) o
⇒
D(AB+BC+A’C) = D(AB+A’C)
AB+BC+A’C=AB+A’C
Por ley de CONSENSO (10a) la identidad es válida siempre
Solución problema Nº 3
a) f1= A(B’+C’)+C
dada una expresión algebraica, aplicando la propiedad DISTRIBUTIVA (( 7 a) y (7 b))
primeramente se le lleva a suma de productos o a producto de sumas según cual sea la
forma canónica buscada.
En el caso de suma de productos, se multiplica cada producto por la suma de las
variables que faltan en él y sus inversas ((2b)(6a)), y se distribuye (7a) y se suprimen los
términos repetidos (1a) . Es decir :
f1= A(B’+C’)+C=AB’+AC’+C
f1 = AB’.(C+C’)+AC’.(B+B’)+C.(A+A’).(B+B’)
f1 = AB’C+AB’C’+ABC’+AB’C’+.(AC+A’C).(B+B’)
f1 = AB’C+AB’C’+ABC’+AB’C’+ABC+AB’C+A’BC+A’B’C
f1 = AB’C+AB’C’+ABC’+ABC+A’BC+A’B’C
Expresión algebraica de la primer forma canónica tambien llamada SUMA DE
PRODUCTOS CANÓNICOS o EXPRESIÓN NORMAL DISJUNTA .
La expresión numérica de la primer forma canónica se obtiene reemplazando
directamente cada minterm. de la expresión algebraica por su equivalente decimal:
Sistemas Digitales 1
f1= ∑ 3 (5,4,6,7,3,1) = ∑ 3 (1,3,4,5,6,7)
En el caso de Producto de sumas, se le suma a cada una de las sumas el producto de
cada variable que falta en ella por su inversa ((2a) y (6b)), y se distribulle (7 b) y se
suprimen los términos repetidos (1 b). Es decir:
f1= A.(B’+C’)+C = (A+C).((B’+C’)+C) = A+C = (A+C)+BB’
7b
=1
f1 = (A+C+B).(A+B+C’) = (A+B+C).(A+B’+C)
Expresión algebraica de la segunda forma canónica también llamada PRODUCTO DE
SUMAS CANÓNICAS o Expresión normal Conjunta. La expresión numérica de la
segunda forma canónica se obtiene reemplazando directamente cada maxterm. de la
expresión algebraica por su equivalente decimal, teniendo presente en éste caso, para
determinarlo, a cada variable negada le corresponde un “1” y a la variable sin negar le
corresponde un “0”. Es decir:
f1= Π 3 (0,2)
Además, podría haberse obtenido la expresión NUMÉRICA DE LA PRIMER FORMA
CANÓNICA a partir de la expresión NUMÉRICA DE LA
SEGUNDA FORMA CANÓNICA (y viceversa),
Nº
ABC
f
reemplazando los símbolos de ∑ y Π (o viceversa), y
completando con los números correspondientes a los eventos
0
000
-de entrada no considerados en la expresión de origen para
los cuales la función esté ESPECIFICADA. Los eventos de
1
001
1
la entrada para los cuales la función no esté especificada
(REDUNDANCIAS), mantienen sus números. Veamos un
2
010
1
ejemplo:
3
011
0
f= ∑ 3 (1,2,5,7)+ ∑ 3 φ (0,4)
4
100
f= Π 3 (3,6). Π 3 φ (0,4)
5
101
1
6
110
0
7
111
1
Si se necesita determinar la expresión numérica de una función partiendo de la
expresión NUMERICA de su COMPLEMENTO, bastarí intercambiar los símbolos de
∑ y Π manteniendo los números. Es decir:
Sistemas Digitales 1
Si: f = ∑
3
(1,2,5,7) + ∑ 3 φ (0,4)
Si: f = Π 3 (3,6) . Π 3 φ (0,4)
⇒
⇒
f’ = Π 3 (1,2,5,7) . Π 3 (0,4)
f’ = ∑ 3 (3,6) + ∑ 3 φ (0,4)
b) f2 = AB+AB’C+A’B’
F2 = ABC+ABC’+AB’C+A’B’(C+C’)
f2 = ABC+ABC’+AB’C+A’B’C+A’B’C’
f2 = ∑ 3 (7,6,5,1,0)
⇒
⇒
⇒
f2 = Π
3
(2,3,4)
f2 = ∑ 3 (0,1,5,6,7)
f2 = (A+B’C).(A+B’+C’).(A’´B´C)
c) f3 = ABCD’+ABC’+A’BD
f3 = ABCD’+ABC’.(D+D’)+A’BD.(C+C’)
f3 = ABCD’+ABC’D+ABC’D’+A’BCD+A’BC’D
f3 = ∑ 4 (14,13,12,7,5)
⇒
f3 = ∑ 4 (5,7,12,13,14)
f3 = Π 3 (0,1,2,3,4,6,8,9,10,11,15)
f3=(A+B+C+D).(A+B+C+D’).(A+B+C’+D).(A+B+C’+D’).(A+B’+C+D).
(A+B’+C’+D).(A’+B+C+D).(A’+B+C+D’).(A’+B+C’+D).(A’+B+C’+D’).
(A’+B’+C’+D’)
d) f4 = AB+(A+C)B’+A’B’C
f4 = AB+AB’+B’C+A’B’C 8.a = AB+AB’+B’C
Sistemas Digitales 1
f4 = (AB+AB’).(C+C’)+B’C.(A+A’)
F4 = ABC+ABC’+AB’C+AB’C’+AB’C+A’B’C
f4 = ABC+ABC’+AB’C+AB’C’+A’B’C
f4 = ∑3 (7,6,5,4,1)
⇒
f4 = Π3 (0,2,3)
f4 = (A+B+C).(A+B’+C).(A+B’+C’)
Ésta última expresión podría haber sido obtenida expandiendo la expresión algebraica
original, de esta manera:
f4 = AB+AB’ 7.a y
6.a +B’C
= A+B’C
f4 = ((A+B’)+CC’).((A+C)+BB’)
7.b
= (A+B’).(A+C)
distribuyendo:
f4 = (A+B’+C).(A+B’+C’).(A+B+C).(A+B’+C)
f4 = (A+B’+C).(A+B’+C’).(A+B+C)
e) f5 = ∑3 (0,1,3,4,5,7)
⇒
f5 = Π 3 (2,6)
f5 = A’B’C’+A’B’C+A’BC+AB’C’+AB’C+ABC
f5 = (A+B’+C).(A’+B’+C)
f) f6 = ∑ 4 (0,1,2,3,12,15)
f6 = A’B’C’D’+A’B’C’D+A’B’CD’+A’B’CD+ABC’D’+ABCD
f6 = Π 4 (4,5,6,7,8,9,10,11,13,14)
f6=(A+B’+C+D).(A+B’+C+D’).(A+B’+C’+D).(A+B’+C’+D’).(A’+B+C+D).(A’+B+C
+D’).(A’+B+C’+D).(A’+B+C’+D’).(A’+B’+C+D’).(A’+B’+C’+D)
Sistemas Digitales 1
g) f7 = (A+B)’+A’BC+(A.(B+C))’
f7 = A’B’+A’BC+(A’+(B+C)’)
f7 = A’.(B’+BC+1)+B’C’ = A’+B’C’
f7 = A’.(B+B’).(C+C’)+B’C’.(A+A’)
f7 = (A’B+A’B’).(C+C’)+AB’C’+A’B’C’
f7 = A’BC+A’BC’+A’B’C+A’B’C’+AB’C’+A’B’C
f7 = A’BC+A’BC’+A’B’C+A’B’C’+AB’C’
f7 = ∑ 3 (3,2,1,0,4) = ∑ 3 (0,1,2,3,4)
⇒
F7 = Π 3 (5,6,7)
f7 = (A’+B+C’).(A’+B’+C).(A’+B’+C’)
Solución problema Nº 4:
f1 = ABC+AB’+AC’+A’BC
f2 = A+BC
Dos funciones lógicas son equivalentes si tienen la misma TABLA DE VERDAD.
Dado que la forma canónica extraida de una determinada tabla de verdad es única, si dos
funciones tienen la misma expresión CANÓNICA, es que son EQUIVALENTES. Por lo
tanto, sacaremos las respectivas formas canónicas de f1 y f2 para ver si son iguales.
f1 = ABC+AB’(C+C’)+AC’.(B+B’)+A’BC
f1 = ABC+AB’C+AB’C’+ABC’+AB’C’+A’BC
f1 = ABC+AB’C+AB’C’+ABC’+A’BC
f1 = ∑ 3 (7,5,4,6,3)
⇒
f1 = ∑ 3 (3,,4,5,6,7)
f2 = A.(B+B’).(C+C’)+BC.(A+A’) = (AB+AB’).(C+C’)+ABC+A’BC
f2 = ABC+ABC’+AB’C+AB’C’+ABC+A’BC
Sistemas Digitales 1
f2 = ABC+ABC’+AB’C+AB’C’+A’BC
f2 = ∑ 3 (7,6,5,4,3)
⇒
f2 = ∑ 3 (3,4,5,6,7)
Por lo tanto, f1 y f2 son EQUIVALENTES.
Éste ejemplo permite observar que aunque una forma canónica requiera más símbolos,
es más fácil de identificar visualmente por la regularidad de su estructura.
Solución problema Nº 5:
f1 = A + B + C) ′
donde: 
 f2 = D ′
f1 = A ′B′ C ′ = A ′B′ C ′(D + D ′) = A ′B′ C ′D + A ′B′ C ′D ′ ⇒ f1 = ∑ (1,0) = ∑ (0,1)
f = f1 ⊕ f 2
4
4
f2 = D ′
Aparecerán todos los términos cuyo bit menos significativo (LSB) sea cero, es decir,
todos los términos pares, por lo tanto:
f 2 = ∑ (0,2,4,6,8,10,12,14)
4
Por definición de OR-exclusiva, la función f = f1 ⊕ f 2 adoptará al valor lógico “1”
para aquellas combinaciones de entrada para las que las funciones f1 y f2 adopten valores
diferentes. Es decir, aparecerán los minterm que aparezcan en una sola de las funciones.
Es decir:
f = ∑ (1,2,4,6,8,10,12,14) ⇒ f = ∑ (0,3,5,7,9,11,13,15)
4
4
Solución problema Nº 6:
Sistemas Digitales 1
a) f1 = A ⊕ B
f 2 = A ′ ⊕ B′
f 3 = (A ′ ⊕ B) ′
f 4 = (A ⊕ B′ ) ′
f1 = A ′B + AB′
f 2 = A ′ ⊕ B′ = (A ′) ′B′ + A ′(B′ ) ′ = AB′ + A ′B
⇒
f 2 = f1
f 3 = (A ′ ⊕ B) ′ = ((A ′) ′B + A ′B′ ) ′ = (AB + A ′B′ ) ′ = (AB) ′.(A ′B′ ) ′ =
= (A ′ + B′ ).(A + B) = 0 + A ′B + B′ A + 0
⇒
f 4 = (A ⊕ B′ ) ′ = (A ′B′ + A(B′ ) ′) ′ = (A ′B′ + AB) ′ = f 3 ⇒
b) f1 = (A ⊕ B) ′
f 3 = f1
f 4 = f1
f 2 = AB + A ′B′
f1 = (A ′B + AB′ ) ′ = (A ′B) ′.(AB′ ) ′ = (A + B′ ).(A ′ + B) = 0 + AB + B′ A + 0 = f 2
c) f1 = (A ⊕ B) ′
f 2 = A ⊕ B′
f3 = A ′ ⊕ B
f1 = AB + A ′B′
f 2 = A ′B′ + A(B′ ) ′ = A ′B′ + AB
⇒
f 2 = f1
f 3 = (A ′) ′B + A ′B′ = AB + A ′B′
⇒
f 3 = f1
d) f1 = A(B ⊕ C)
f 2 = AB ⊕ AC
f1 = A(B ⊕ C) = A(B′ C + BC ′) = AB′ C + ABC ′
f 2 = AB ⊕ AC = (AB) ′(AC) + (AB)(AC) ′ = (A ′ + B′ )AC + AB(A ′ + C ′)
f 2 = 0 + AB′ C + 0 + ABC ′ = AB′ C + ABC ′
∴ f1 = f 2
e) A ⊕ 1 = A ′.1 + A.1′ = A ′ + 1.0 = A ′
f) A ⊕ 0 = A ′.0 + A.0 ′ = 0 + A.1 = A ′
A ⊕ C = A ′C + AC ′ 
g) A ⊕ C = B ⊕ C ⇒ 
 ⇒ A ′C + AC ′ = B′ C + BC ′ ⇒ A = B
 B ⊕ C = B′ C + BC ′ 
A ′B = 0
h) A ⊕ B = 0 ⇒ A ′B + AB′ = 0 ⇒ 
⇒A = B
AB′ = 0
i) Probaremos primero que si: x ⊕ α = y entonces x = y ⊕ α (1)
Si x = α ⇒ y = 0 ⇒ 0 ⊕ α = α =
Si x ≠ α ⇒ y = 1 ⇒ 1 ⊕ α = α ′ =
x
 ⇒ queda demostrado (1)
x
Por lo tanto:
Sistemas Digitales 1
A ⊕ (B ⊕ C) = D ⇒ A = (B ⊕ C) ⊕ D (2)

(A ⊕ B) ⊕ C = D ⇒ (A ⊕ B) = C ⊕ D (3)
Faltaría demostrar: A ⊕ B ⊕ C = A ⊕ (B ⊕ C) = (A ⊕ B) ⊕ C (4)
A ⊕ (B ⊕ C) = A ′(B ′ C + BC ′) + A(B ′ C ′ + BC) = A ′B ′ C + A ′BC ′ + AB ′ C ′ + ABC = ∑ (1,2,4,7)

3
(A ⊕ B) ⊕ C = (A ′B ′ + AB)C + (A ′B + AB ′ )C ′ = A ′B ′ C + ABC + A ′BC ′ + AB ′ C ′ = ∑
(1,7,2,4)

3
Además, por definición de XOR, la función adopta el valor “1” cuando hay un número
impar de entradas en “1” ⇒ A ⊕ B ⊕ C = ∑ (1,2,4,7)
3
Con lo que queda demostrado (4)
3


 (A ⊕ B) ⊕ C = D ⇒
A⊕B = C⊕D
A ⊕ B ⊕ C = D ⇒
demostrado
2
A ⊕ (B ⊕ C) = D ⇒ A = (B ⊕ C) ⊕ D = B ⊕ C ⊕ D
4
j)
(A ⊕ B) + (A ⊕ C) = A ′B + AB′ + A ′C + AC ′ = A ′(B + C) + A(B ′ + C ′)
A ⊕ (B + C) = A ′(B + C) + A(B + C) ′
Por ley de Morgan:
(B + C) ′ = B′ C ′ ≠ B′ + C ′ ⇒ (A ⊕ B) + (A ⊕ C) ≠ A ⊕ (B + C)
k) f1 = A + B f 2 = A ⊕ B ⊕ AB
f 2 = (A ⊕ B) ⊕ AB = (A ′ ⊕ B) ′AB + (A ⊕ B)(AB) ′ =
= (A ′B′ + AB)AB + (A ′B + AB′ )(A ′ + B′ ) =
= 0 + AB + A ′B + 0 + 0 + AB′ = A(B + B ′ ) + A ′B = A + A ′B = A + B = f1
l) f = ABC ′ + AB
A4
B′) =
′ C2+4
′C = ABC ′ + C(A
′ +2AB
14
4
3
14
4
3′) = ABC ′ + C(A
12
4′ +4
3
7a
9a
12
= ABC ′ + C.[(A
B′) ′]′ = ABC ′ + C(AB) ′ = AB ⊕ C
12
4′ +4
3
11a
Solución problema Nº 7:
f = ∑ (5,6,13)
4
f1 = ∑ (0,1,2,3,5,6,8,9,10,11,13)
Sistemas Digitales 1
Como f = f1 .f 2′ , si expresamos las funciones como producto de sumas canónicas
(maxterm), los maxterm de f2’ deben completar los maxterm que le falten a f1’ para
lograr f, sin agregar ningún maxterm que no esté en f.
f = ∏ (0,1,2,3,4,7,8,9,10,11,12,14,15)
4
f1 = ∏ (4,7,12,14,15)
4
Por lo dicho anteriormente será:
f 2′ = ∏ (0,1,2,3,8,9,10,11)
∏ ∅(4,7,12,14,15)
•
4
14 44424443
puede aparecer o no
(seran redundanciasen la tabla de verdad)
Aplicando la Doble Negación (12) y la ley de De Morgan (11.b) resulta:
f = (f 2′ ) ′ = (∏ (0,1,2,3,8,9,10,11) • ∏ ∅(4,7,12,14,15)
Según lo explicado en pág.12, será:
f 2 = ∑ (0,1,2,3,8,9,10,11) + ∑ ∅(4,7,12,14,15)
4
4
Notar que los términos redundantes podrían ser incluídos o no, a los efectos de lograr
una mayor simplificación en el proceso de minimización de la función.
Sistemas Digitales 1
PRÁCTICA de Modelización Algebraica Directa
ENUNCIADOS
En todos los problemas, escribir de manera directa la/s expresión/es algebraica/s de la/s salida/s.
Problema N° 1: La salida Alarma debe activarse (A=1) cuando esté la alarma Habilitada (H=1) y se
produce alguna de estas situaciones: Ventana abierta (V=1) o Puerta abierta (P=1).
Problema N° 2: Un DEMULTIPLEXOR de 2 canales (C0, C1), una entrada de selección (S) y una
entrada de habilitación (H) debe generar una salida (Z), cuyo valor coincida con el valor del respectivo
canal de entrada:
S=0
Z = C0
S=1
Z = C1
cuando el DEMUX esté habilitado (H=1) o que sea Z=0 cuando el DEMUX esté inhabilitado (H=0).
Problema N° 3: Un TANQUE DE AGUA cuenta con 3 sensores de nivel (N1, N2 y N3), una llave
selectora (M) y una bomba (B) para su llenado, con los siguientes significados físicos de sus valores
lógicos:
N1 = 1 nivel por debajo del valor mínimo
N2 = 1 nivel igual o por encima del valor intermedio
N3 = 1 nivel por debajo del valor máximo
M = 1 Modo Manual
M = 1 Modo Automático
B = 1 bomba encendida
A = 1 luz de alarma encendida
Escribir de manera directa:
a) La expresión algebraica de la función que maneja la bomba de agua (B), de manera
que esté encendida si está en Modo Manual y el nivel por debajo del máximo, o si está
en Modo Automático y el nivel por debajo del valor intermedio.
b) La expresión algebraica de la función que maneja la luz de alarma (A), de manera
que esté encendida si el nivel está por debajo del mínimo cuando está en Modo
Automático.
Problema N° 4: Un SILO DE GRANOS cuenta con sensores de temperatura y de humedad y con
una llave selectora de programa, con los siguientes significados físicos de sus valores lógicos:
temperatura del silo ≤ admisible
T1=1
T2=1
temperatura del silo ≤ temperatura ambiente
H1=1
humedad del silo ≥ admisible
H2=1
humedad ambiente ≥ 90%
P=1
programa manual
P=0
programa automático
Escribir de manera directa directa, la expresión algebraica de la función que maneja el ventilador (V),
si se espera el siguiente comportamiento del mismo:
Estará encendido (V=1) si la temperatura del silo es mayor a la admisible o mayor a la
temperatura ambiente, en ambos casos, con una humedad ambiente < 90%, o si la humedad
del silo es mayor o igual a la admisible en cualquier caso. Todo esto, siempre y cuando esté
seleccionado el programa automático. En caso de estar seleccionado el programa manual,
debe permanecer encendido permanentemente.
SOLUCIONES A LOS PROBLEMAS
Problema N° 1:
A = H. (V+P)
Problema N° 2:
Z = (S´.C0+S.C1). H
Problema N° 3:
a) B = M.N3 + M´.N2´
b) A = N1.M´
Problema N° 4:
V = [(T1´+T2´).H2´+H1]. P´+ P
Se puede observar que en realidad no es necesario multiplicar el [ ] por P´ ya que si fuese
P=1 el otro término forzaría que sea V=1. Esto que puede razonarse intuitivamente, podría
haberse deducido aplicando el teorema del Álgebra de Boole: P + P´. X = P + X ,
quedando:
V = (T1´+T2´).H2´+ H1 + P
PRÁCTICA de Diseño mediante Interconexión de Bloques Funcionales
ENUNCIADOS
Diseñar los siguientes circuitos, mediante interconexión de bloques funcionales (en este caso los
bloques funcionales serían las compuertas lógicas):
Problema 1:
Para generar un Código de Paridad, se agrega un Bit de Paridad (Bp) de manera que el nuevo código
tenga un nùmero de unos siempre Par (Código de Paridad PAR) o siempre Impar (código de Paridad
IMPAR). Estos son Códigos Detectores de Errores de 1 bit, ya que si en el proceso de transmisión un
bit llegara cambiado esto afectaría la paridad y el error sería detectado.
Se pide diseñar un Generador de Paridad.
I3
I2
I1
I0
a)
Generador de Paridad PAR
b)
Generador de Paridad IMPAR
Generador de Paridad
I3
I2
I1
I0
Bp
Problema 2:
Se pide diseñar un Comparador de Palabras de 2 bits (A = A1A0, B = B1B0).
A1
A0
B1
B0
Si A>B
Si B>A
Si A=B
Comparador
de Palabras
MA
MB
I
MA=1
MB=1
I=1
Problema 3:
Se pide diseñar un Detector de Paridad. Al recibirse el código (4 bits de Información y 1 bit de
Paridad), se genera una salida P=1 si la paridad es la esperada.
I3
I2
I1
I0
Detector de Paridad
a)
PAR: P=1 si la Paridad es PAR
b)
IMPAR: P=1 si la Paridad es IMPAR
Generador de Paridad
P
Problema 4:
Diseñar un Inversor Controlado de 4 bits:
E3
E2
E1
E0
C
Inversor Controlado
S3
S2
S1
Si C=1
Sn=E´ (invierte)
Si C=0
Sn=E (no invierte)
S0
Problema 5:
Como ejemplo típico de Diseño mediante Bloques Funcionales podemos nombrar a los circuitos
aritméticos.
Supongamos que se pretende diseñar un Sumador Total (Full Adder) capaz de sumar los 2 bits
correspondientes a la posición “n” de los números A y B y el acarreo de la etapa anterior.
an
cn+1
bn
FULL ADDER
sn
Resolverlo por interconexión de compuertas lógicas.
cn
PRÁCTICA de Diseño Tabular (mediante Tablas de Verdad)
ENUNCIADOS
En todos los problemas se pide hacer el diagrama de E/S con diccionario, la Tabla de Verdad, los
mapas de Karnaugh y las ecuaciones mínimas e implementar circuitalmente con compuertas lógicas.
Problema 1:
Diseñar un Circuito de Mayoría, con 3 entradas y 1 salida, la cual debe ponerse en alto cuando haya
mayoría de “1´s” a su entrada.
Problema 2:
Diseñar un conversor de código Binario de 4 bits a código Gray.
B3
B2
B1
B0
Binario / Gray
G3
G2
G1
G0
Problema 3:
Diseñar un conversor de código BCD (decimal codificado en binario) a 7 segmentos, para excitar un
display.
B3
B2
B1
B0
a
f
g
b
e
d
c
BCD / 7 seg
a
b c
Problema 4:
Diseñar un conversor de código Binario de 4 bits a código BCD.
A3
B3 B2 B1 B0
A2
A1
A0
C3 C2 C1 C0
d
e
f
g
Problema 5:
Diseñar un conversor de código Gray de 4 bits a código Binario.
G3
G2
G1
G0
Gray / Binario
B3
B2
B1
B0
Problema 6:
Diseñar un dispositivo integrado por 4 teclas y 2 lámparas indicadoras, al cual llega la señal de un
Reloj (R), de manera que:
T3 T2 T1 T0
La lámpara intermitente (LI) se enciende y apaga a la
frecuencia del reloj cuando:
R
t
•
No se pulsa ninguna tecla
•
Se pulsa sólo una tecla
•
Se pulsan sólo T2 y T0
La lámpara fija (LF) se enciende cuando no se cumple ninguna
LI
LF
de las condiciones anteriores.
Problema 7:
Diseñar un Multiplicador binario de dos números de 2 bits:
A1
A0
B1
B0
Multiplicador
C3
C2
C1
C0
Problema 8:
Para controlar el llenado de un tanque de agua se dispone de 2 sensores ubicados a distintos niveles
(N1 inferior, N2 superior). Éstos presentan un nivel lógico “1” a su salida cuando les toca el agua.
Para el llenado del tanque se dispone de 2 bombas A y B, y hay una válvula de consumo cuya
posición también es sensada (V=1 válvula abierta).
El llenado del tanque debe hacerse de la siguiente manera:
• Si el nivel del agua está por debajo de los dos sensores, deben funcionar ambas bombas.
• Si el nivel del agua está entre sensores y la válvula está abierta, deben funcionar ambas bombas.
• Si el nivel del agua está entre sensores y la válvula está cerrada, sólo debe funcionar la bomba A.
• Si el nivel llega al sensor superior (tanque lleno), deben estar ambas bombas apagadas.
Problema 9:
A un sistema ingresa un código de 4 bits que nunca puede contener más de 3 bits en “1”. El sistema
debe encender una lámpara L1 cuando el número de variables de entrada en “1” sea superior al
número de variables de entrada en “0” y encender una lámpara L2 cuando sean iguales.
C3
L2
C2
C1 C0
L1
Problema 10:
Un codificador de posición de eje proporciona una señal
de 4 bits que indica la posición de un eje en pasos de
30º usando un código reflejado (Gray), como se indica
en la tabla siguiente.
Se puede suponer que las 4 combinaciones posibles de
4 bits no usados, no se producirán jamás.
Se desea diseñar un sistema que dadas estas señales,
genere una señal S que sea “1” siempre que el eje se
encuentre dentro del primer cuadrante (0º - 89º)
Al resolver el problema, respetar la definición de Tabla
de Verdad en cuanto a la manera de estructurarla.
Posición
del eje
0º - 29º
30º - 59º
60º - 89º
90º - 119º
120º - 149º
150º - 179º
180º - 209º
210º - 239º
240º - 269º
270º - 299º
300º - 329º
330º - 359º
E1
0
0
0
0
0
0
1
1
1
1
1
1
Salida del
Codificador
E2 E3
0
1
0
1
1
1
1
1
1
0
1
0
1
0
1
0
1
1
1
1
0
1
0
1
E4
1
0
0
1
1
0
0
1
1
0
0
1
Práctica de Implementación de Funciones lógicas con circuitos MSI
Implementar la siguiente función lógica: F(A,B,C)=∑mi(3,5,6,7) mediante Multiplexor y Decodificador.
3
Implementación con MUX
“1”
7
6
5
4
3
2
1
0
F
Z
MUX
2 1 0
“0”
A B C
AB
C
0
1
00
0
0
01
0
1
11
1
1
10
0
1
Si se conectan las variables de entrada (A,B,C) a las
entradas de Selección (S1S2) del Mux y “1” a los Canales
3,5,6,7 y “0” a los Canales 0,1,2,4, a la salida tendremos la
función F, ya que las variables seleccionan el canal por
donde viene el respectivo valor de la salida.
Siempre Se puede implementar una función de N variables
con un Mux de 2N canales.
En realidad también se puede implementar con un Mux de
2N-1 canales ingresando una de las variables por los canales
de entrada. En caso de necesitar hacerlo, elegir para
“fusionar” una de las que aparezca sin negar a la entrada,
de manera de no necesitar una NOT.
“1”
C
“0”
3
2
1
0
F
MUX
1 0
A B
Implementación con DECOD
A
7
6
B
C
2 1 0
DECODIF
5 4 3 2
A
1 0
7
B C
2 1 0
DECODIF
6 5 4 3
2
1
0
Para implementar la función basta con conectar una OR a los respectivos minitérminos (en caso que
las salidas del DECOD fuesen normales) o una NAND (en caso que las salidas del DECOD estuviesen
negadas). Esto es así porque por De Morgan: (A´. B´)´= A´´+B´´ = A+B