UNIVERSIDAD NACIONAL DE COLOMBIA
Ingeniería Electrónica
ng. Jhon Jairo RamírezEcheverry
1
Circuitos lógicos combinacionales Síntesis
2
Circuitos lógicos combinacionales Síntesis Formas
Estándar de expresiones Boo
(4)
Síntesis
de circuitos lógicos (24) Diseño de circuitos lógicos (29) Taller de la clase (39)
3
Formas Estándar Literal:
Variable o complemento
de ésta Un término producto: Literal simple o producto lógico de dos o más literales Ej: z, w.x.y, x.y’.z Expresión
Suma de productos (SOP): Suma lógica de términos producto Ej: z + w.x.y + x.y’.z
4
Formas Estándar Un
término suma: Literal simple o una suma lógica de dos o más literales. Ej: z, w+x+y, x+y’+z
Expresión
Producto de sumas (POS): Producto lógico de términos suma. Ej: z .(w+x+y).(x+y’+z) 5
Formas Estándar El dominio de una expresión booleana es el conjunto de variables (o sus complementos) contenido en una expresión. Ejemplo: z + w.x.y + x.y’.z El dominio es el conjunto de variables: w,x,y,z 6
Formas Estándar Un término producto o término suma es: Estándar, canónico o normal Cuando incluye en él todas las variables del dominio (complementadas o sin complementar) 7
Formas Estándar
Mintérmino: producto normal.
Es
un
término
(Es “uno” en exactamente un renglón de la tabla)
Ej:
f ( a , b, c )
Maxtérmino: normal.
m = a ⋅ b ⋅ c , a ⋅ b ⋅ c, a ⋅ b ⋅ c Es un término suma
(Es “cero” en exactamente un renglón de la tabla)
Ej: f (a, b, c)
M = (a + b + c), (a + b + c ) 8
Formas Estándar Una suma de productos estándar o canónica o normal es aquella en la que todas las variables del dominio aparecen en cada uno de los términos producto de la expresión. (suma de productos estándar o de mintérminos) Ejemplo: w.x.y’.z + w.x.y.z +
w’.x.y’.z
9
Formas Estándar Un producto de sumas estándar o canónico o normal es aquel en el que todas las variables del dominio aparecen en cada uno de los términos suma de la expresión. (producto de sumas estándar o de maxtérminos) Ejemplo: (w+x+y’+z).(w+x+y+z).(w’+x+y’.z)
10
Formas Estándar SOP f (a, b, c) = a ⋅ b ⋅ c + a ⋅ b ⋅ c + a ⋅ b ⋅ c a b c f m0 0 0 0 1 m1 0 0 1
0
m2 0 1 0
1
m3 0 1 1
0
m4 1 0 0
0
m5 1 0 1
0
m6 1 1 0
0
m7 1 1 1
1
Relación con la tabla de verdad:
a ⋅b ⋅c
a ⋅b⋅c
Cada mintérmino está asociado con la línea de la tabla, tal que: • Las variables que tienen 1 no están complementadas • Las variable que tienen 0 aparecen complementadas
a ⋅b ⋅c
•Permite obtener la expresión de Boole a partir de la tabla 11 de verdad
Formas Estándar POS f (a, b, c) = (a + b + c) ⋅ (a + b + c ) ⋅ (a + b + c) a b c f M0 0 0 0 0 M1 0 0 1
1
M2 0 1 0
1
M3 0 1 1
0
M4 1 0 0
1
M5 1 0 1
1
M6 1 1 0
0
M7 1 1 1
1
a+b+c
Relación con la tabla de verdad: Cada maxtérmino está asociado con la línea de la tabla, tal que:
a + b + c • Las variables que tienen 0 no están complementadas
• Las variable que tienen 1 a + b + c aparecen complementadas •Permite obtener la expresión de Boole a partir de la tabla 12 de verdad
Representación de una función
Especificación decimal: SOP:
f ( a , b, c ) = a ⋅ b ⋅ c + a ⋅ b ⋅ c + a ⋅ b ⋅ c + a ⋅ b ⋅ c f (a, b, c) = m1 + m3 + m6 + m7 f (a, b, c) = ∑ m(1,3,6,7) POS:
f ( a , b, c ) = ( a + b + c ) ⋅ ( a + b + c ) ⋅ ( a + b + c ) ⋅ ( a + b + c ) f ( a , b, c ) = M 1 ⋅ M 3 ⋅ M 5 ⋅ M 7 f (a, b, c) = ∏ M (1,3,5,7)
13
Relación Mintérminos - Maxtérminos mi = M i M i = mi
f (a, b, c) = ∑ m(2,3,6,7) = ∏ M (0,1,4,5) Ilustrar con ejemplo haciendo la tabla de verdad
14
Formas Estándar Todas las expresiones booleanas, independiente de su forma, pueden convertirse en cualquiera de las dos formas estándar: Suma de términos producto o producto de términos suma. Lo anterior posibilita que la evaluación, simplificación e implementación de las expresiones booleanas sea más sistemática y sencilla
15
Formas estándar o canónicas
Fundamentalmente existen dos métodos para llevar una expresión lógica cualquiera a SOP o POS: Por teorema o por regla de Boole 16
Conversión a Formas Canónicas Teorema de desarrollo de Shannon o de expansión
a) f ( x1 , x2 ,..., xn ) = x1 ⋅ f (1, x2 ,..., xn ) + x1 ⋅ f (0, x2 ,..., xn )
[
b) f ( x1 , x2 ,..., xn ) = [ x1 + f (0, x2 ,..., xn )] ⋅ x1 + f (1, x2 ,..., xn )
17
]
Convertir a SOP Canónica a f (a, b, c) = a ⋅ b + a ⋅ c + a ⋅ c 0 = a ⋅ f (1, b, c) + a ⋅ f (0, b, c) 0 = a ⋅ (b + c ) + a ⋅ c 0 = b ⋅ f (a,1, c) + b ⋅ (a,0, c) 0 = b ⋅ (a + a ⋅ c) + b ⋅ (a ⋅ c + a ⋅ c) 1 = a ⋅b + a ⋅b ⋅c + a ⋅b ⋅c + a ⋅b ⋅c 1 = c ⋅ f (a, b,1) + c ⋅ (a, b,0) 1 = c ⋅ (a ⋅ b + a ⋅ b + a ⋅ b ) + c ⋅ (a ⋅ b + a ⋅ b ) 1 = a ⋅b ⋅c + a ⋅b ⋅c + a ⋅b ⋅c + a ⋅b ⋅c + a ⋅b ⋅c
= ∑ m(1,3,4,6,7)
b 0 0 1 1 0 0 1 1
c 0 1 0 1 0 1 0 1
f 0 1 0 1 1 0 1 1
18
Convertir a SOP Canónica Por regla de Boole consiste en multiplicar cada término producto no estándar de la expresión original por la suma de la variable(s) complementada(s) y no complementada(s) que haga falta para completar el dominio.
19
Convertir a SOP Canónica Por Re gla : a ⋅ b + a ⋅ b = a f ( a , b, c ) = a ⋅ b + a ⋅ c + a ⋅ c a ⋅ b = a ⋅ b ⋅ c + a ⋅ b ⋅ c = m7 + m6 a ⋅ c = a ⋅ b ⋅ c + a ⋅ b ⋅ c = m6 + m4 a ⋅ c = a ⋅ b ⋅ c + a ⋅ b ⋅ c = m3 + m1 f (a, b, c) = ∑m(1,3,4,6,7)
20
Convertir a POS Canónica Por regla consiste en sumar a cada término suma no estándar de la expresión original la multiplicación de la variable(s) complementada(s) y no complementada(s) que haga(n) falta para completar el dominio.
21
Convertir a POS Canónica Por Re gla de Boole : f (a, b, c) = a ⋅ (a + c ) = (a + b ⋅ b + c ⋅ c ) ⋅ (a + b ⋅ b + c ) = ((a + b) ⋅ (a + b ) + c ⋅ c ) ⋅ ((a + b) ⋅ (a + b ) + c ) = (a + b + c ⋅ c ) ⋅ (a + b + c ⋅ c ) ⋅ (a + b + c ) ⋅ (a + b + c ) = (a + b + c) ⋅ (a + b + c ) ⋅ (a + b + c)(a + b + ⋅ c ) ⋅ (a + b + c ) ⋅ (a + b + c ) = ∏ M (0,1,2,3) 22
Convertir a POS Canónica Ejercicios: Convierta la siguiente expresión a SOP canónica:
f ( A, B, C ) = [ A + ( B.C )].( A + C )
Convierta la siguiente expresión a POS canónica:
f ( A, B, C ) = AB + BC + AC (3) 23
Síntesis de circuitos lógicos Consiste en obtener el circuito combinacional a partir de la tabla de verdad o de un enunciado. Puede tener una o varias salidas. En general se puede considerar la síntesis del circuito como el diseño del circuito combinacional.
24
Síntesis de circuitos lógicos Ejemplo: Halle el circuito lógico que podría implementar la siguiente tabla de verdad (por mintérminos). a b c f 0 0 0 1 a.b.c f (a, b, c) = a.b.c + a.b.c + a .b.c + a.b.c + a.b.c a.b.c 0 0 1 1 f (a, b, c) = ∑ m(0,1,2,4,5) a.b.c 0 1 0 1 0 1 1 0 a.b .c 1 0 0 1 a.b.c 1 0 1 1 1 1 0 0 1 1 1 0 25
Síntesis de circuitos lógicos A partir de la expresión de Boole se halla el circuito a implementar, el cual es el siguiente:
f (a, b, c) = a.b.c + a.b.c + a .b.c + a.b.c + a.b.c
26
Síntesis de circuitos lógicos
Ejemplo: Diseñe un circuito lógico que tenga 3 entradas A,B,C cuya salida D sea alta cuando dos de las entradas sean altas (por mintérminos). A B C D f (a, b, c) = a.b.c + a.b.c + a.b.c 0 0 0 0 0 0 1 0 f (a, b, c) = ∑ m(3,5,6) 0 1 0 0 a.b.c 0 1 1 1 1 0 0 0 a.b.c 1 0 1 1 a.b.c 1 1 0 1 27 1 1 1 0
Síntesis de circuitos lógicos A partir de la expresión de Boole se halla el circuito a implementar, el cual es el siguiente:
f (a, b, c) = a.b.c + a.b.c + a.b.c
(3) 28
DISEÑO TOP-DOWN
En el diseño Top - Down se captura una idea en un nivel de abstracción alto y se implementa a partir de esta descripción, en un proceso hacia abajo incrementando el nivel de detalle según lo requerido.
29
Metodología De Diseño Top Down
30
Síntesis de circuitos lógicos (DISEÑO) 1.
2. 3. 4. 5. 6.
Descripción del problema a resolver (enunciado, Diagrama de flujo) Diagrama de bloques Tabla de verdad Plantear ecuaciones ( ∑ ó ∏ .) Simplificación (manual o software)** Implementación: Discreta (30) PLD’s (Herramientas CAD)**(31) (32) 31
Síntesis de circuitos lógicos (DISEÑO)
Discreta: Diagrama esquemático: Nombres numeración
Simulación
de
integrados
(Diagramas
y
de
tiempo)
Implementación
ó MSI
física con SSI (29) 32
Síntesis de circuitos lógicos (DISEÑO)
PLD’s (Herramientas CAD): Herramienta de esquemático o HDL (CUPL, ABEL, VHDL) Compilación
y síntesis (GAL, p.ej) Simulación (Diagramas de tiempo) Diagrama esquemático: .DOC ó .RPT Implementación física (“Quemado”) (29) 33
Síntesis de circuitos lógicos (DISEÑO) EJEMPLO: 1. Descripción
resolver
del
problema
a
Suponga que las entradas A,B,C,D representan un número binario de 4 bits, con A como el MSB y D el LSB. Diseñe un circuito lógico que produzca una salida alta sólo cuando el número binario sea mayor que 0110(2) 34
Síntesis de circuitos lógicos (DISEÑO) 2. Diagrama de bloques MSB
A B C
LSB
Circuito Lógico
OUT
D
35
Síntesis de circuitos lógicos (DISEÑO) 3. Tabla de verdad A 0 0 0 0 0 0 0 0
B 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1
D Out 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1
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 0 0 0 0 0 0 0 0
B 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1
D 0 1 0 1 0 1 0 1
Out 1 1 1 1 1 1 1 1 36
Síntesis de circuitos lógicos (DISEÑO) 4. Ecuaciones: f ( 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)
)
f ( A, B, C , D) = ∏ M (0,1,2,4,5,6)
5. Simplificación (Ver siguiente clase) 6. Implementación (Diagrama esquemático) 37
38
Síntesis de circuitos lógicos (DISEÑO) 6. Implementación (Simulación)
39
Síntesis de circuitos lógicos (DISEÑO)
6. Implementación Física (SSI ó MSI)
(3) 40
Taller de la clase 1. Realice la expansión en mintérminos de y luego muestre su tabla de verdad.
f ( x, y , z ) = ( x + y ) ⋅ z + x + y ⋅ z 2. Escriba f (a, b, c) como una S.O.P. si:
f (a, b, c) = a + (b + c) ⋅ (a + c)
41
Taller de la clase 3. Si f ( a, b, c, d ) : a) Escriba la suma de productos si:
f = ∑ m(1,3,5,7)
b) Escriba el producto de sumas de: f 4. Exprese las siguientes funciones como una S.O.P. canónica y un P.O.S. canónico. a) f ( a, b, c, d ) = a ⋅ b + b ⋅ (c + d ) b)f ( a, b, c ) = ( a + c ) ⋅ ( a + d ) ⋅ (b + c ) 42
Taller de la clase 5. Determine la tabla de verdad de la siguiente función de conmutación y luego muestre la SOP canónica por cualquiera de los métodos
f (a, b, c) = a ⋅ c + b ⋅ c + a ⋅ b ⋅ c 6. Para la figura: Dado el diagrama, expresar Z como una S.O.P y un P.O.S.
43
Taller de la clase x Y
z
w 7. Seaf = (a + b ⋅ c) ⋅ (c + b ⋅ d ) + h ⋅ d ⋅ (e + g ) exprese como una S.O.P. 8. Seaf ( a, b, c, d ) = (a + b ⋅ c) ⋅ (b + c ) + a ⋅ d exprese como un P.O.S. 44
Taller de la clase 9. Sea f (a, b, c, d ) una función lógica verdadera cuando al menos 2 de sus entradas sean verdaderas, se pide escribir como una S.O.P. canónica y un P.O.S. canónico. 10. Diseñe una función de conmutación f(D,C,B,A) que acepte entradas BCD y proporcione una salida 1 sólo cuando el dígito decimal de entrada sea divisible entre 3. 45
Taller de la clase 11. Sea f (a, b, c, d ) una función lógica verdadera cuando al menos 2 de sus entradas sean verdaderas, se pide escribir como suma de mintérminos y como un producto de maxtérminos. 12. Deduzca la ecuación lógica y el diagrama de circuito para un circuito con tres entradas a, b y c. La salida será alta sólo cuando exactamente una de las entradas sea alta. 46
Taller de la clase 13. Diseñe e Implemente un Multiplicador de dos palabras binarias de dos bits a1a0 y b1b0.
47
Taller de la clase 14. Suponga que tiene un sistema de ascensor en un edificio con 4 pisos. En cada piso existe un interruptor que al ser pulsado por el usuario le indica a la central de control “petición de servicio”. Se pide que diseñe un circuito que detecte el interruptor que ha sido pulsado generando una salida binaria que corresponda con el número de piso donde el interruptor ha sido pulsado. En caso de tener dos o más interruptores pulsados al tiempo, se deberá dar prioridad al piso más alto. 48
Actividades Post-clase
49