CARRERA PROFESIONAL DE ELECTRONICA INDUSTRIAL SISTEMAS DIGITALES
TEMA 6: DISEÑO DE SISTEMAS COMBINACIONALES USANDO MAPAS DE KARNAUGH 6.1. CUBOS BOOLEANOS Antes de explicar cómo se utiliza el mapa de Karnaugh en la minimización de funciones, veremos cómo se obtiene el mapa. Esto nace de la representación geométrica de los números binarios. Un número binario de n bits, puede representarse por lo que se denomina un punto en un espacio n. Para entender lo que se quiere decir con esto, considérese el conjunto de los números binarios de un bit, es decir, 0 y 1. Este conjunto puede representarse por dos puntos en un espacio 1; esto es, por dos puntos unidos por una línea. Tal representación se denomina un cubo 1. Un cubo de orden n representa las combinaciones de las n variables de una función. Un cubo de orden n con vértices marcados representa una función. Cada vértice representa un minitérmino. Cada vértice marcado representa un minitérmino 1 de la función. Figura 1. Cubo de orden n=1 Cubo booleano de dos variables, observar que el cubo se obtiene proyectando un cubo de una variable.
Figura 2. Cubo de orden n=2 Cubo booleano de tres variables, observar que el cubo se obtiene proyectando un cubo de dos variables.
Figura 3. Cubo de orden n=2 1 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Cubo booleano de cuatro variables, observar que el cubo se obtiene proyectando un cubo de tres variables. También llamado hipercubo de dimensión 4.
Figura 4. Cubo de orden n=4 6.2. Implicante primo, implicante primo esencial En una función booleana, un implicante primo es un subcubo no contenido dentro de ningún otro implicante primo. Un implicante primo esencial es aquél que contiene minterms 1 no contenidos dentro de ningún otro implicante primo. Por ejemplo si queremos Representar las funciones de suma y acarreo con cubos booleanos tenemos lo siguiente.
Figura 5. Implicante primo, implicante primo esencial 2 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
6.3. Representación de mapas Los mapas (de Karnaugh) definen funciones booleanas La representación de mapas es equivalente a cualquiera de las otras Los mapas ayudan a identificar de forma visual los implicantes primos y los implicantes primos esenciales Los mapas se emplean para optimización manual de funciones booleanas 6.4. Subcubos booleanos de orden 1, 2, 3 y 4
Figura 6. Representación de subcubos booleanos 3 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
6.5. INTRODUCCIÓN A LOS MAPAS DE KARNAUGH Esta representación gráfica de una función booleana ha sido utilizada desde 1953. Permite entender los principales conceptos sobre minimización de funciones, pero su uso práctico está limitado a un número relativamente bajo de variables, no más de 5 ó 6. Existe una relación uno a uno entre un mapa y una tabla de verdad. Una tabla tiene un renglón por cada minitérmino; y un mapa, como se verá, tiene un casillero o cuadro asociado a cada minitérmino. El mapa también puede ser considerado una extensión de los diagramas de Venn. Consideremos un diagrama de Venn para dos variables A y B:
Figura 7. Miniterminos de dos variables en un diagrama de Venn. Si el orden de las variables para la asignación del código de miniterminos es AB, se puede rotular el diagrama con el número decimal asociado al minitérmino, queda:
Figura 7. Códigos decimales de miniterminos en un diagrama de Venn. Puede observarse que resultan áreas desiguales para cada minitérmino; y que el gráfico refleja las adyacencias entre miniterminos, pero no tan claramente como un 2- cubo, el cual se muestra en la Figura 8:
Figura 8. Miniterminos de dos variables en un 2-cubo. 4 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
En un mapa de Karnaugh para cada minitérmino se adopta un área de igual tamaño y forma cuadrada; y además, estos cuadrados se disponen de tal forma que reflejen las adyacencias. En la Figura 9, se ha superpuesto el 2-cubo, con un mapa de dos variables.
Figura 9. Miniterminos de dos variables en un mapa de Karnaugh. La identificación de los cuadros con el número del minitérmino, depende de la elección del orden de las variables que se haya elegido para la representación decimal equivalente. Por ejemplo, para dos variables A y B:
Figura 10. Número decimal de los miniterminos y el orden de las variables. La representación de funciones mediante mapas, se logra marcando los miniterminos presentes con un "1"; los ceros suelen omitirse. Por ejemplo, las funciones AND y OR , de dos variables, se representan en mapas según:
Figura 11. Representación de funciones de dos variables en un mapa. Nótese que f1=m3 ; y que f2=m1+m2+m3. Mapa para tres variables. Para tres variables, en orden: A, B y C, se ilustran los miniterminos en un diagrama de Venn y en un 3-cubo:
5 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Figura 12. Diagrama de Venn para tres variables y un 3-cubo. La Figura 13, muestra un desarrollo de un 3-cubo. Nótese que al abrir las caras del cubo, los miniterminos que están a distancia uno, quedan adyacentes (exceptuando los de la cara 0451). Los códigos de los miniterminos quedan ordenados según código Gray. El 3-cubo muestra también la propiedad del código Gray de ser reflejado, la cara 0231 y la cara 4675 son 2-cubos con A=0 y A=1 respectivamente.
Figura 13. Del 3-cubo al mapa de Karnaugh de tres variables. La Figura 14 muestra el desarrollo de un 3-cubo sobre el mapa de Karnaugh de tres variables:
Figura 14. Mapa de Karnaugh de tres variables y un 3-cubo. Nótese que m0 es adyacente a m1, m2 y m4. En un mapa de Karnaugh se considera que los bordes de los rectángulos son coincidentes, debido a la propiedad del código 6 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Gray de ser cíclico. Los cuatro miniterminos de los extremos pueden visualizarse como muestra la Figura 15:
Figura 15. Bordes en un mapa de Karnaugh. El mapa para tres variables puede obtenerse con dos mapas de dos variables. Resulta práctico colocar en un borde de cada cuadrado el número del minitérmino. De esta forma, resulta cómodo expresar una forma canónica en un mapa. Dado que existen múltiples circuitos para implementar una función lógica dada, lo mejor es utilizar el circuito más adecuado para cada situación. Criterios posibles para manipular las expresiones lógicas: Obtener el circuito más barato reduciendo el número de términos. Obtener el circuito más rápido. Obtener el circuito formado por menos circuitos integrados de un tipo dado. Obtener un circuito sin valores transitorios no deseados. Simplificación: proceso que conduce a reducir el número de literales y términos de una función lógica. Existen métodos de simplificación automáticos para ser implementados en computadores (Quine-McCluskey es el más conocido). Se puede simplificar funciones mediante manipulaciones algebraicas (manual, costoso). Métodos gráficos: Veitch-Karnaugh (manual, sencillo para pocas variables). • • • •
•
•
•
Teniendo en cuenta como se construyen los mapas de Karnaugh a partir de los cubos booleanos a continuación continuación hablaremos mas a profundidad sobre este método de reducción lógica, teniendo en cuenta de que solo estudiaremos hasta mapas de Karnaugh de 2, 3, 4, 5 y 6 variables. 6.6. MÉTODO DE VEITCH-KARNAUGH Inventado por Veitch a principios de los años 50, y perfeccionado por Karnaugh. Se basa en construir unos diagramas adecuados para simplificar gráficamente. Diagrama (mapa, tabla) de Veitch-Karnaugh para una función de n variables: tabla rectangular de 2n celdas, cada una de las cuales está asociada a una combinación de variables (y a una fila de la tabla de verdad). En cada casilla hay un 1 ó un 0, dependiendo de la fila de la tabla de verdad asociada. Propiedad principal: cada casilla es adyacente a todas sus vecinas en horizontal y vertical, es decir, entre una casilla y su vecina sólo difiere el valor de una variable. Sólo son utilizables en la práctica los mapas para funciones de 2, 3, 4, 5 y 6 variables. • •
•
•
7 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
6.6.1. MÉTODO DE VEITCH-KARNAUGH DE 2 VARIABLES El mapa tiene 4 casillas, cada una asociada a una combinación de los valores de las variables. Cada casilla tiene 2 vecinas. En cada casilla se ha añadido el nº de la fila de la tabla de verdad asociada a dicha casilla, así como la combinación de variables que la corresponde. •
• •
EJEMPLO 1:
6.6.2. MÉTODO DE VEITCH-KARNAUGH DE 3 VARIABLES El mapa tiene 8 casillas, cada una asociada a una combinación de los valores de las variables. •
8 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 2:
6.6.3. MÉTODO DE VEITCH-KARNAUGH DE 4 VARIABLES El mapa tiene 16 casillas, cada una asociada a una combinación de los valores de las variables. •
EJEMPLO 3:
9 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
6.6.4. MÉTODO DE VEITCH-KARNAUGH DE 5 VARIABLES El mapa tiene 32 casillas, cada una asociada a una combinación de los valores de las variables. •
6.6.5. MÉTODO DE VEITCH-KARNAUGH DE 6 VARIABLES Tiene 64 casillas, y se construye con 4 mapas superpuestos de 4 variables. Cada casilla tiene 6 vecinas: las 4 de su plano, más las 2 que están en su misma posición pero en planos adyacentes. • •
10 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
6.7. ADYACENCIA DE CELDAS Las celdas de un mapa de Karnaugh se disponen de manera que sólo cambia una única variable entre celdas adyacentes. La adyacencia se define por un cambio de una única variable. Las celdas que difieren en una única variable son adyacentes. Por ejemplo, en el mapa de tres variables, la celda 010 es adyacente a las celdas 000, 011 y 110. La celda 010 no es adyacente a la celda 001, ni a la celda 111, ni a la celda 100 ni a la celda 101. Físicamente, cada celda es adyacente a las celdas que están situadas inmediatas a ella por cualquiera de sus cuatro lados. Un celda no es adyacente a aquellas celdas que tocan diagonalmente alguna de sus esquinas. Además, las celdas de la fila superior son adyacentes a las de la fila inferior y las celdas de la columna izquierda son adyacentes a las situadas en la columna de la derecha. Esto se denomina adyacencia cíclica, ya que podemos pensar que el mapa de Karnaugh se dobla de forma que se toquen los extremos superior e inferior como si fuera un cilindro o los extremos de la derecha e izquierda para formar la misma figura. La siguiente Figura ilustra la adyacencia de celdas en un mapa de cuatro variables, aunque se aplican las mismas reglas de adyacencia a los mapas de Karnaugh con cualquier número de celdas.
Figura x. Celdas adyacentes en un mapa de Karnaugh son aquellas que sólo difieren en una variable. Las flechas f lechas apuntan a las celdas adyacentes. 6.8. MINIMIZACIÓN DE UNA SUMA DE PRODUCTOS MEDIANTE EL MAPA DE KARNAUGH Como se ha establecido en la sección anterior, el mapa de Karnaugh se utiliza para reducir expresiones booleanas a su expresión mínima. Una expresión suma de productos minimizada está formada por el mínimo número de términos producto posibles con el mínimo número de variables por término. Generalmente, una expresión suma de productos minimizada puede implementarse mediante un número de puertas menor que su expresión estándar, lo cual constituye la finalidad del proceso de simplificación. Al finalizar esta sección, el lector deberá ser capaz de: 11 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
• • • •
•
•
Representar una expresión suma de productos en un mapa de Karnaugh. Combinar los unos delmapa en grupos máximos. Determinar el término producto mínimo para cada grupo del mapa. Combinar los términos producto mínimo para formar una expresión suma de productos mínima. Convertir una tabla de verdad en un mapa de Karnaugh para simplificar la expresión representada. Utilizar las condiciones “indiferentes” en un mapa de Karnaugh.
6.8.1. MAPA DE KARNAUGH DE UNA SUMA DE PRODUCTOS ESTÁNDAR Por cada término de la expresión suma de productos, se coloca un 1 en el mapa de Kanaugh en la celda correspondiente al valor del producto. Se coloca un 1 en la celda correspondiente al valor de un término producto. Por ejemplo, para el término , se escribiría un 1 en la celda 101 de un mapa de Karnaugh de tres variables. Cuando una expresión suma de productos se ha reflejado por completo en el mapa de Karnaugh, en dicho mapa habrá tantos 1s como términos producto tenga la suma de productos estándar. Las celdas que no contienen un 1 son aquellas para las que la expresión es igual a 0. Normalmente, cuando se trabaja con una expresión suma de productos, los 0s no se incluyen en el mapa. Los siguientes pasos muestra cómo completar los mapas de Karnaugh. Paso 1. Determinar 1. Determinar el valor binario de cada término producto de la suma de productos estándar. Tras un poco de práctica, podrá realizar la evaluación de términos mentalmente. Paso 2. 2. A medida que evaluamos cada término, colocamos un 1 en el mapa de Karnaugh en la celda que tiene el mismo valor que dicho término producto.
FIGURA Y. Ejemplo de transformación a mapa de Karnaugh de una suma de productos estándar. EJEMPLO 4.- Transformar 4.- Transformar la siguiente suma de productos estándar en un mapa de Karnaugh: Solución
12 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
La expresión se evalúa como se muestra a continuación. Se escribe un 1 en el mapa de Karnaugh de 3 variables de la Figura siguiente por cada producto estándar de la expresión.
EJEMPLO 5.- Transformar 5.- Transformar la siguiente suma de productos estándar en un mapa de Karnaugh: Solución La expresión se evalúa como se muestra a continuación. Se coloca un 1 en el mapa de Karnaugh de la la siguiente Figura, por cada producto producto estándar de la expresión.
6.8.2. MAPA DE KARNAUGH DE UNA SUMA DE PRODUCTOS NO ESTÁNDAR Antes de poder utilizar un mapa de Karnaugh, las expresiones booleanas deben estar en su forma estándar. Si una expresión no lo está, se pasará al formato estándar mediante el procedimiento descrito en la sección anterior o mediante desarrollo numérico. Dado que, en cualquier caso, las expresiones tienen que evaluarse antes de pasarlas al mapa de Karnaugh, el desarrollo numérico es quizá el método más eficaz. 13 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Desarrollo numérico de un producto no estándar. Recuerde que a un término en forma no estándar le faltan una o más variables en su expresión. Por ejemplo, supongamos que uno de los productos de una determinada suma de productos de 3 variables es Este término se puede desarrollar numéricamente para obtener una expresión estándar de la manera siguiente. En primer lugar, se escribe el valor binario de las dos variables y le añadimos un 0 que corresponde a la variable que falta A continuación, escribimos el valor binario de las dos variables y añadimos un 1 para la variable que falta : 101. Los dos números binarios resultantes son los valores de los términos de la suma de productos estándar y y C.
̅
̅
EJEMPLO 6.- Transformar 6.- Transformar la siguiente expresión suma de productos en un mapa de Karnaugh: Solución Obviamente, la suma de productos no está en formato estándar, ya que cada término no contiene las tres variables. En el primer término faltan dos variables, en el segundo falta una variable y el tercero sí es un término estándar. En primer lugar, desarrollamos los términos numéricamente de la siguiente manera:
Cada uno de los valores binarios resultantes se traslada al mapa, colocando un 1 en la celda apropiada del mapa de Karnaugh de 3 variables de la Figura
EJEMPLO 7.- Transformar Transformar la siguiente expresión suma de productos en un mapa de Karnaugh: Solución Obviamente, la suma de productos no está en formato estándar, ya que cada término no contiene las cuatro variables. En los términos primero y segundo faltan dos variables, en el tercer término falta una variable y el resto de los términos sí son estándar. En primer lugar, desarrollamos los términos numéricamente para incluir las variables que faltan de la siguiente manera: 14 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Cada uno de los valores binarios resultantes se traslada al mapa, colocando un 1 en la celda apropiada del mapa de Karnaugh de 4 variables de la siguiente Figura. Observe que algunos de los valores de la expresión desarrollada son redundantes.
6.9. SIMPLIFICACIÓN DE UNA SUMA DE PRODUCTOS MEDIANTE EL MAPA DE KARNAUGH El proceso que genera una expresión que contiene el menor número posible de términos con el mínimo número de variables posibles se denomina minimización. Después de haber obtenido el mapa de Karnaugh de una suma de productos, la expresión suma de productos mínima se obtiene agrupando los 1s y determinando la expresión suma de productos mínima a partir part ir del mapa. Agrupación de unos. Podemos agrupar los unos del mapa de Karnaugh de acuerdo con las reglas siguientes, rodeando las celdas adyacentes que contengan unos. La finalidad es maximizar el tamaño de los grupos y minimizar el número de estos grupos. Un grupo tiene que contener 1, 2, 4, 8 ó 16 celdas, valores que se corresponden con las potencias de En el caso de un mapa de Karnaugh de 3 variables, el grupo máximo puede contener celdas. Cada celda de un grupo tiene que ser adyacente a una o más celdas del mismo grupo, pero no todas las celdas del grupo tienen que ser adyacentes entre sí. Incluir siempre en cada grupo el mayor número posible de 1s de acuerdo a la regla número 1. Cada 1 del mapa tiene que estar incluido en al menos un grupo. Los 1s que ya pertenezcan a un grupo pueden estar incluidos en otro, siempre que los grupos que se solapen contengan 1s no comunes. •
•
2 8
•
•
•
EJEMPLO 8.- Agrupar Agrupar los 1s en cada uno de los mapas de Karnaugh de la siguiente Figura.
15 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Solución En la siguiente Figura se muestran los grupos. En algunos casos, puede existir más de una forma de agrupar los 1s para formar grupos máximos.
6.10. DETERMINACIÓN DE LA EXPRESIÓN SUMA DE PRODUCTOS MÍNIMA A PARTIR DEL MAPA. Cuando todos los 1s que representan los términos productos estándar de una expresión se han trasladado al mapa y se han agrupado adecuadamente, comienza el proceso de obtención de la suma de productos mínima. Para encontrar los términos mínimos y la expresión suma de productos mínima se aplican las siguientes reglas: 1. Agrupar las celdas que contienen 1s. Cada grupo de celdas que contiene 1s da lugar a un término producto compuesto por todas las variables que aparecen en el grupo en sólo una forma (no complementada o complementada). Las variables que aparecen complementadas y sin complementar dentro del mismo grupo se eliminan. A éstas se les denomina variables contradictorias. 2. Determinar la operación producto mínima para cada grupo. (a) Para un mapa de 3 variables: Un grupo formado por 1 celda da lugar a un término producto de 3 variables. Un grupo formado por 2 celdas da lugar a un término producto de 2 variables. Un grupo formado por 4 celdas da lugar a un término de 1 variable. Un grupo formado por 8 celdas indica que la expresión vale 1. (b) Para un mapa de 4 variables: Un grupo formado por 1 celda da lugar a un término producto de 4 variables. Un grupo formado por 2 celdas da lugar a un término producto de 3 variables. Un grupo formado por 4 celdas da lugar a un término producto de 2 variables. Un grupo formado por 8 celdas da lugar a un término de 1 variable. Un grupo formado por 16 celdas indica que la expresión vale 1. • • • •
• • • • •
16 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
3. Cuando se han obtenido todos los términos producto mínimos a partir del mapa de Karnaugh, se suman para obtener la expresión suma de productos mínima. EJEMPLO 9.- Determinar los productos para el mapa de Karnaugh de la siguiente Figura y escribir la expresión suma de productos mínima resultante.
La función simplificada será: EJEMPLO 10.- Determinar los productos para cada uno de los mapas de Karnaugh de la siguiente Figura y escribir las correspondientes expresiones suma de productos mínima resultante.
Solución En la Figura planteada se muestran los productos mínimos resultantes para cada grupo. La expresión suma de productos mínima para cada uno de los mapas de Karnaugh de la figura son:
6.11. CONDICIONES INDIFERENTES Algunas veces se producen situaciones en las que algunas combinaciones de las variables de entrada no están permitidas. Por ejemplo, recuerde que en el código BCD, existían seis combinaciones no válidas: 1010, 1011, 1100, 1101, 1110 y 1111. Dado que estos estados no permitidos no ocurren nunca en una aplicación que emplee el código BCD, pueden considerarse como términos indiferentes con respecto 17 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
a su efecto en la salida. Esto significa que a estos términos se les puede asignar tanto un 1 como un 0 en la salida; realmente no son importantes dado que nunca van a generarse.
Figura 1. Ejemplo de la utilización de las condiciones “indiferentes” para simplificar una expresión. 6.12. MINIMIZACIÓN DE UN PRODUCTO DE SUMAS MEDIANTE EL MAPA DE KARNAUGH En la sección anterior estudiamos la minimización de una expresión suma de productos mediante los mapas de Karnaugh. En esta sección, nos vamos a centrar en las expresiones producto de sumas. Los métodos son muy similares, excepto que ahora se trata de productos de sumas, en los que los 0s representan los términos suma estándar y se colocan en el mapa de Karnaugh en lugar de los 1s. Al finalizar esta sección, el lector deberá ser capaz de: Transformar un producto de sumas estándar en un mapa de Karnaugh. Combinar los 0s del mapa para formar grupos máximos. Determinar el término suma mínimo para cada grupo del mapa. Combinar los términos suma mínimos para formar el producto de sumas mínimo. Utilizar el mapa de Karnaugh para convertir productos de sumas en sumas de productos. •
• • •
•
6.12.1. CONVERSIÓN DE UNA EXPRESIÓN PRODUCTO DE SUMAS ESTÁNDAR A MAPA DE KARNAUGH Para un producto de sumas en forma estándar, se introduce un 0 en el mapa de Karnaugh por cada término suma de la expresión. Cada 0 se sitúa en la celda correspondiente al valor de un término suma. Por ejemplo, para la suma se escribe un 0 en la celda 010 del mapa de Karnaugh de 3 variables. Cuando un producto de sumas se ha trasladado por completo al mapa, habrá tantos 0s en el mapa de Karnaugh, como términos suma en la expresión del producto de sumas estándar. Las celdas que no contienen un 0 son aquellas para las que la
18 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
expresión vale 1. Generalmente, cuando se trabaja con productos de sumas, los 1s no se escriben. Los siguientes pasos junto con la Figura 4.37 ilustran este proceso. Paso 1. 1. Determinar el valor binario de cada término suma del producto de sumas estándar. Éste es el valor binario que hace que dicho término sea igual a 0. Paso 2. 2. Cada vez que se evalúa un término suma, se introduce un 0 en la correspondiente celda del mapa de Karnaugh.
Figura 2. Ejemplo de obtención del mapa de Karnaugh de un producto de sumas estándar. EJEMPLO 11.- Transformar Transformar la siguiente expresión suma de productos estándar en un mapa de Karnaugh:
Solución La expresión se evalúa como se indica a continuación y se coloca un 0 en el mapa de Karnaugh de 4 variables de la Figura 4.38 por cada término suma estándar de la expresión.
6.12.2. SIMPLIFICACIÓN MEDIANTE EL MAPA DE KARNAUGH DE EXPRESIONES PRODUCTO DE SUMAS El proceso de minimización de un producto de sumas es básicamente el mismo que para una expresión suma de productos, excepto que ahora hay que agrupar los ceros 19 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
para generar el mínimo número de términos suma, en lugar de los 1s para obtener el número mínimo de términos producto. Las reglas para agrupar los 0s son las mismas que para agrupar los 1s, y son las que se han estudiado en la Sección 4.9. Utilizar un mapa de Karnaugh para minimizar la siguiente expresión EJEMPLO 12.- Utilizar producto de sumas estándar:
Deducir también la expresión suma de productos equivalente. Solución Las combinaciones de valores binarios de la expresión son
La expresión de la suma de productos estándar se traslada al mapa de Karnaugh y las celdas se agrupan como se muestra en la siguiente figura.
Observe que el 0 de la celda 110 se incluye en un grupo de dos celdas, utilizando el 0 del grupo de cuatro celdas. El término suma para cada grupo se muestra en la figura y la expresión suma de productos mínima resultante es:
Tenga en cuenta que esta expresión suma de productos mínima es equivalente a la expresión suma de productos estándar. Agrupando los 1s como se indica en las áreas de color gris se obtiene una expresión suma de productos que es equivalente a agrupar los ceros. Para poder concluir con la teoría de mapas de KARNAUGH, existen diversas formas de representar un mapa mapa de KARNAUGH, nosotros optaremos por cualquiera de las siguientes nomenclaturas de mapas de KARNAUGH, el cual será usado en todos los diseños que se realizan en adelante. 20 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Mapa de tres variables: La intersección de tres conjuntos dan como resultado el mapa de Karnaugh de tres variables; el cual posee =8 celdas. La figura 3 muestra el diagrama del mapa K. La variable A es más significativa y C es la menos significativa.
2
Mapa de cuatro variables: La La intersección de cuatro conjuntos da como resultado el mapa de Karnaugh de cuatro variables; el cual posee celdas. La figura 4 muestra el diagrama del mapa K de 4 variables A, B, C y D; donde la variable A es más significativa y D es la menos significativa.
2 16
21 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Mapa de cinco variables: La intersección de cinco conjuntos da como resultado el mapa de Karnaugh de cinco variables; el cual posee celdas. La figura 5 muestra el diagrama del mapa K de 5 variables A, B, C, D y E; donde la variable A es más significativa y E es la menos significativa. Este tipo de mapa posee un eje central que lo divide en dos de cuatro variables; más adelante se verá que las simplificaciones de términos sumas o productos de los mapas de 5 y 6 variables se pueden realizar con respecto a este eje de simetría.
2 32
22 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
La intersección de seis conjuntos dan como resultado el Mapa K de seis variables: La mapa de Karnaugh de seis variables; el cual posee celdas. La figura 6 muestra el diagrama del mapa K de 6 variables A, B, C, D, E y F; donde la variable A es más significativa y F es la menos significativa.
2 64
23 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
6.13. RESUMEN Y EJEMPLOS DE DISEÑO A continuación se presentan algunos ejemplos de diseño con mapas de Karnaugh, los cuales ayudaran al estudiante a entender un poco más sobre el diseño combinacional. EJEMPLO 13.- Control de una trituradora
Diseña el circuito combinacional de una trituradora que posee 2 niveles de trituración. Estas son las condiciones de funcionamiento: Si el depósito esta a nivel medio (sensores B y A), se conecta el motor1 (S1). Cuando se alcanza un nivel de llenado alto (sensores C, B y A), se conectan a la vez los motores 1 y 2 (S1 y S2). Si el nivel esta al mínimo, solo conectado el sensor A, los 2 motores se desconectan. Los motores solo funcionaran si se activa un sensor de temperatura (sensor D) que indique que la mezcla esta a 50 ᵒ ᵒ C. C. Utiliza una alarma (S3) que se active al detectarse un mal funcionamiento de los sensores, estando activado el sensor D. 24 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
NOTA. Cuando NOTA. Cuando el depósito esta vacio cada sensor esta a nivel lógico cero. Solución: a.- Lo Lo que primero se debe realizar es identificar cuáles son las variables de entrada y salida. Por inspección observamos que hay tres variables de entrada y una de salida. Variables de entrada: A, A, B, C, D. Variables de salida: S1 (motor M1), S2 (motor M2), S3 (Alarma). b.- una vez identificado las variables de entrada y salidas, se procede a construir la tabla de verdad del circuito.
c.- Una vez obtenida la tabla de verdad se procede a obtener la función de salida (señal de aviso) mediante métodos de reducción manual o computacional. La resolución de se hará mediante método manual (mapas de KARNAUGH). Método manual.
25 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
La función reducida en forma manual viene dada por.
.. . .. . . ..... ..
d.- Implementación y simulación del circuito combinacional haciendo uso de circuitos convencionales y simulado en el software PROTEUS.
EJEMPLO 14.- Sistema de Seguridad. Un sencillo sistema de seguridad para 2 puertas consta de un lector de tarjetas y un teclado. 26 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Una persona puede abrir una determinada puerta si dispone de una tarjeta que contenga el correspondiente correspondiente código e introduce un código en el teclado autorizado autorizado para dicha tarjeta. Las salidas del lector de tarjetas son las siguientes:
Para desbloquear una puerta, una persona debe pulsar las teclas apropiadas en el teclado y luego insertar la tarjeta en el lector. Los códigos de los teclados autorizados para la puerta 1 son 101 y 110, y los códigos de teclado autorizados para la puerta 2 son 101 y 011. Si la tarjeta tiene un código no valido o si el código tecleado es erróneo, sonara la alarma cuando se inserte la tarjeta. Si el código de teclado es correcto, la correspondiente puerta se desbloqueara cuando se inserte la tarjeta. Diseñe un circuito lógico para este sencillo sistema de seguridad. Las entradas al circuito constaran de un código de tarjeta AB y un código de teclado CDE. El circuito tendrá tres salidas XYZ (si X o Y=1, se abrirá la puerta 1 o 2, si Z=1, sonara la alarma). Utilice interruptores con la finalidad de probar el circuito. Solución: Lo que primero se debe realizar es identificar cuáles son las variables de entrada y a.- Lo salida. Por inspección observamos que hay tres variables de entrada y una de salida. Variables de entrada: A, A, B, C, D, E. Variables de salida: X, Y, Z.
27 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Para poder resolver de mejor manera este problema, dividimos el circuito general en subcircuitos, los cuales son 3. El circuito 1 poseerá dos salidas, uno para indicar la tarjeta correcta, y otra salida para marcar tarjetas erróneas. El circuito 2 poseerá tres salidas, una salida para indicar la clave correcta de la puerta1, otra para la puerta2 y finalmente una para indicar error de clave. El circuito 3 simplemente hará la convergencia de los dos subcircuitos. Para el subcircuito 1: Variables de entrada: A y A y B . Variables de salida: M (tarjeta correcta para la puerta1), N (tarjeta correcta para la puerta) y U (error (error código no valido de tarjeta), Para el subcircuito 2: Variables de entrada: C, y E C, D y E . Variables de salida: R (abrir (abrir puerta1), S (abrir (abrir puerta2) y T (clave (clave errónea). b.- una vez identificado las variables de entrada y salidas, se procede a construir la tabla de verdad del circuito. Tabla de verdad del subcircuito1.
Tabla de verdad del subcircuito2.
c.- Una vez obtenida la tabla de verdad se procede a obtener la función de salida (señal de aviso) mediante métodos de reducción manual o computacional. La resolución de se hará mediante método manual (mapas de KARNAUGH). 28 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Las funciones reducidas para el subcircuito 1 se obtienen por simple inspección, no es necesario usar mapas de KARNAUGH.
. .. . .
Las funciones reducidas para el subcircuito 2 son las siguientes:
.. .!..! ." . " !# .. . ! . . ! !. " # $ .. . ! . .!..!..! . " !# . " !# Las salidas X, Y y Z se obtienen obt ienen haciendo una convergencia AND de cada subcircuito, subcircuito, por consiguiente.
% . & .. ' .. $
d.- Implementación y simulación del circuito combinacional haciendo uso de circuitos convencionales y simulado en el software PROTEUS.
29 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 15.- Control de bombas de agua
Se desea controlar dos bombas B1 y B2 de acuerdo con el nivel de líquido existente en un depósito. Su funcionamiento ha de ser tal como se describe a continuación: Cuando el nivel de líquido se encuentra comprendido entre los sensores c y d debe funcionar la bomba B1 (o B2 si la temperatura del motor excede un cierto límite prefijado) y se parará cuando se active el sensor d. Si el nivel de líquido se encuentra por debajo de c se deben activar ambas bombas. En caso de funcionamiento anormal de los sensores del depósito (se active d cuando no lo está c) ambas bombas se pararán. Además, ambas bombas contarán con sendos sensores de temperatura a y b para B1 y B2 respectivamente, de tal forma que si la temperatura del motor excede un cierto límite, el detector se activará parando el motor.
30 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Se pide diseñar el circuito de control según el siguiente orden: a) Obtener la tabla de verdad. b) Minimizar la función obtenida. c) Implementar el circuito con puertas básicas. Solución: a.- Lo Lo que primero se debe realizar es identificar cuáles son las variables de entrada y salida. Por inspección observamos que hay tres variables de entrada y una de salida. Variables de entrada: a, a, b, c, d. Variables de salida: B1 B1 y y B2 (bombas de agua). b.- una vez identificado las variables de entrada y salidas, se procede a construir la tabla de verdad del circuito.
c.- Una vez obtenida la tabla de verdad se procede a obtener la función de salida (señal de aviso) mediante métodos de reducción manual o computacional. La 31 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
resolución de se hará mediante método manual (mapas de KARNAUGH) y método computacional (mapas de KARNAUGH mediante Boole Deusto).
La función reducida en forma manual viene dada por.
(. ) *. +. ) (.*. )
d.- Implementación y simulación del circuito combinacional haciendo uso de circuitos convencionales y simulado en el software PROTEUS.
EJEMPLO 16.- Diseñar Diseñar un circuito combinacional cuya entrada sea un número menor o igual que 15 y cuya salida sea la parte entera de su raíz cuadrada debidamente codificada. Dicho circuito debe tener también una línea de salida que indique si el número introducido era o no cuadrado perfecto.
Solución: 32 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Lo primero que debemos hacer como los ejercicios que se esta desarrollando, es plantear la tabla de verdad del circuito combinacional, teniendo en cuenta todas las condiciones que nos indican.
Para poder obtener las funciones minimizadas usamos los mapas de KARNAUGH. Lo podemos hacer haciendo uso de miniterminos y también t ambién en función d emaxiterminos.
, . . . 33 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
- . . . .
Teniendo en cuenta las ecuaciones obtenidas, ahora si podemos implementar el circuito en función de miniterminos
" # , " #." # - "#. " #." # 34 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 17.- Control de nivel de un Depósito. Mediante dos bombas (m1 y m2) se
controla el nivel de un depósito. El depósito tiene dos boyas (b1 y b2). Cuando el nivel está por debajo de la boya el contacto correspondiente está abierto. Las bombas sacan agua de dos pozos. Si no hay agua en el pozo la bomba no funciona. Para controlar esto, cada pozo lleva un sensor (n1, n2).
El sistema funciona de la siguiente forma: Si el nivel del depósito supera la boya b1, las bombas están paradas. Si el nivel del depósito está entre la boya b1 y la b2, funciona la bomba m1, si hay agua suficiente en el pozo 1. Si no hay agua en el pozo 1 pero la hay en el 2, funciona la bomba m2. Si el nivel del depósito está por debajo de la boya b2, se activa la bomba m2, además de la m1. a) Determinar las funciones lógicas de m1 y m2. b) Dibujar el circuito en puertas lógicas para su control. Solución:
35 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Lo que primero se debe realizar es identificar cuáles son las variables de entrada y a.- Lo salida. Por inspección observamos que hay tres variables de entrada y una de salida. Variables de entrada: n1, n1, n2, b1, b2. Variables de salida: m1 y m1 y m2. b.- una vez identificado las variables de entrada y salidas, se procede a construir la tabla de verdad del circuito.
c.- Una vez obtenida la tabla de verdad se procede a obtener la función de salida (señal de aviso) mediante métodos de reducción manual o computacional. La resolución de se hará mediante método manual (mapas de KARNAUGH).
La función reducida en forma manual viene dada por.
/.* / ./.* /. /. *. * d.- Implementación y simulación del circuito combinacional haciendo uso de circuitos convencionales y simulado en el software PROTEUS.
36 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 18.- Proceso Industrial. En un determinado proceso industrial, disponemos
de dos generadores de 15 Kw, cada uno, para alimentar a tres motores de 5 Kw, 10 Kw y 15 Kw, los cuales no funcionan siempre juntos (ver figura). Queremos realizar reali zar un automatismo que detecte los motores que están en funcionamiento en cada momento y ponga en marcha el segundo generador (G) cuando sea necesario. Se Pide: La tabla de la verdad de la función G que controla el funcionamiento del 2º generador. La expresión algebraica simplificada, obtenida mediante mapas de KARNAUGH. Implementar su circuito correspondiente.
Solución de la práctica: a.- Lo Lo que primero se debe realizar es identificar cuáles son las variables de entrada y salida. Por inspección observamos que hay tres variables de entrada y una de salida. Variables de entrada: A, A, B, C. Variables de salida: G1 y G2. b.- una vez identificado las variables de entrada y salidas, se procede a construir la tabla de verdad del circuito. 37 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
c.- Una vez obtenida la tabla de verdad se procede a obtener la función de salida (señal de aviso) mediante métodos de reducción manual o computacional. La resolución de se hará mediante método manual (mapas de KARNAUGH) y método computacional (mapas de KARNAUGH mediante BOOLE Deusto).
La función reducida en forma manual viene dada por.
0 0 . .
d.- Implementación y simulación del circuito combinacional haciendo uso de circuitos convencionales y simulado en el software PROTEUS.
Representar el mapa de Karnaugh y simplificar la función booleana. EJEMPLO 19.- Representar
"55# ) "57555#
Solución: Podemos darnos cuentas que es una función de cuatro variables, por ende podemos usar un mapa de Karnaugh de 4 variables.
38 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
La función reducida viene dada por:
Ejemplo 20.- implementar implementar un circuito convertidor BCD natural a BCD exceso 3.
Primero planteamos la tabla de verdad para su posterior reducción de las salidas.
39 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Como los códigos 1010 a 1111 no están permitidos en BCD, no tiene sentido plantearse cuáles serán los valores de la función es ese caso, y se ponen “X”, condiciones de “no importa”. A la hora de simplificar, se le dará a las “X” el valor que nos convenga para hacer simplificaciones más sencillas, en la confianza de que nunca entrará un valor prohibido. Desde el momento que a las condiciones de “no Importa” se les asigna un valor, en caso de introducir una entrada prohibida, la salida sería el valor binario que le hayamos asignado a dicha condición de “no importa”.
Una vez planteado todos los mapas de Karnaugh respectivos para cada salida, se procede a calcular las funciones lógicas reducidas.
- . . .. . . . . .
40 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Ejemplo 21.- El sistema nervioso humano, incluyendo al cerebro, está hecho de billones de células especializadas llamadas neuronas. Cada neurona posee sinapsis (nodos, puntos de conexión con otras neuronas) que pueden ser de dos tipos: (1) excitatorias e (2) inhibitorias. Cada neurona tiene una sola terminal de salida, (la cual se denomina axón), y transmite por ella una señal [1] cuando el número de sinapsis excitatorias con entradas [1], excede al número de sinapsis inhibitorias con entrada [1] por al menos el número N (umbral de la neurona). Determine la función de la salida F(A, B, C, D, E) en el axón de la neurona, dadas las siguientes condiciones: N=1. No se presenta nunca el caso en el cual el número de “unos” en las sinapsis de excitación es igual al número de “unos” en la sinapsis de inhibición. Minimizar F mediante mapas de Karnaugh haciendo uso de las condiciones irrelevantes (o No-Importa) implementar con compuertas No- Y (o NAND).
A, B, C Sinapsis de excitación. 41 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
D, E Sinapsis de inhibición. Solución:
. . .! .! 42 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
. . .! .! .! .! .. .. .! 9.. .. ..! 9 .. .. ..!..! ..! ..! .. ..
Ejemplo 22.- Ejemplos Ejemplos de cómo reducir Mapas de Karnaugh de 2 variables:
. .
43
DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Ejemplos de cómo reducir Mapas de Karnaugh de 3 variables: Ejemplo 23.- Ejemplos
.. .
. . . .
Ejemplo 24.- Ejemplos Ejemplos de cómo reducir Mapas de Karnaugh de 4 variables:
.. . .
. . .. . . ..
. . .. .
. . .. .
44 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
cómo reducir Mapas de Karnaugh de 5 variables: variables: Ejemplo 25.- Ejemplos de cómo
"55 "555 5!# . ! . . ... ! ..! . ...!! Ejemplo 26.- Minimizar las siguientes funciones por el método método de Karnaugh:
: ; (7,14,28,56) + : < (0-6,8-13,16-27,29,32-55,57-59,61) b) Z2 = = >(15,30,31,60, 62,63). = ? (0-6,8-13,16-27,29,32-55,57-59,61) a) Z1 =
Solución: Obsérvese que las funciones, en ambos incisos, son las mismas, una expresada como miniterminos y la otra como maxitérminos. Las siguientes figuras muestran los mapas para los incisos a) y b), respectivamente:
' . ! .
45 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
' " #. " !#. " # Ejemplo 27.- Una máquina expendedora automática proporciona productos con diversos precios: botella de agua 0,50 €, lata de refresco 1,00 €, paquete de galletas 1,50 € y caja de bombones 2,00 €. Sólo admite una moneda de 0,50 €, 1,00 € ó 2,00 € para adquirir el producto y sólo devuelve cambio de 1 moneda, caso de que tuviera que devolver cambio. Habrá casos en los que, al no poder proporcionar el cambio correcto, devolverá la moneda introducida, sin proporcionar el producto. Realizar la especificación de alto nivel de la máquina:
MOTIVO DE LA NEGATIVA * Dinero insuficiente ** No hay cambio en una única moneda 46 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Especificación de bajo nivel. La especificación se dice que es de bajo nivel cuando los casos posibles se codifican de forma binaria a partir de la especificación de alto nivel. Veamos el mismo ejemplo del apartado anterior especificado a bajo nivel. Vamos a codificar los distintos tipos de monedas con 2 bits, y los distintos tipos de productos también con 2 bits.
Si "traducimos" la especificación de alto nivel mediante la codificación citada, queda la tabla de verdad especificada en bajo nivel, que ya es tratable como funciones y variables booleanas:
Que es la Tabla de Verdad de 3 funciones booleanas (S, c1 y c0) de 4 variables (m1, m0, p1 y p0) cada una. El proceso de diseño de un circuito combinacional consiste en: Determinar el número de variables de entrada y de salida necesarias, identificar las variables de entrada, asignarles un nombre y hacer lo mismo con las variables de salida. Deducir la tabla de verdad que define las relaciones entre las variables de entrada y de salida. Simplificar las funciones representadas en la tabla de verdad. Obtener el circuito a partir de las funciones simplificadas. •
•
• •
47 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Si simplificamos aplicando los mapas de Karnaugh resulta:
. @ + . ., ,.. @ ., . @, .,.@,,.@.@, +, .@
.,.@ . @, .,.@,.,.@., . @
48 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Ejemplo 28. Hay 5 personas que actúan como jueces en un competencia dada. El voto de cada uno de ellos se indica con un 1 (pasa) o 0 (fracasa) en una línea de señal. Las 5 líneas de señal son las entradas a un circuito lógico combinacional. Las reglas de la competencia permiten sólo la disensión de un voto. Si la votación es 2-3 o 3-2, la competencia debe continuar. El circuito lógico debe tener dos salidas, XY. Si el voto es 4-1 o 5-0 para pasar, XY=11. Si el voto es 4-1 o 5-0 para fracasar, XY=00; si el voto es 3-2 o 2-3 para continuar, XY=10. Diseñe un circuito mínimo de suma de productos. Solución: La siguiente tabla agrupa las condiciones del enunciado:
En base a la tabla anterior, se construye la siguiente:
De la tabla funcional, se obtienen las siguientes funciones de conmutación canónicas:
: ; (3,5-7,9-15,17-31) Y(A, B, C, D, E) = : ; (15,23,27,19-31) X(A, B, C, D, E) =
Reduciendo por mapas de Karnaugh: Para mayor claridad, se presenta a X(A, B, C, D, E) en dos mapas:
49 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Una vez planteado los mapas de Karnaugh se procede a obtener la función simplificada para cada función de salida.
%"55 %"5 55555!# !# .! . ! . . . . . . .! . ! . . .! . ! . . .! . ! . . &"5555! 5555!## .. ..! ... ... ... ... ! . ..! . ..!
50 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 29.- Encontrar la tabla de verdad, el mapa de Karnaugh y la expresión booleana más simplificada de una función booleana de 4 variables que tome el valor 1 cuando el número expresado en binario por sus variables sea un número primo mayor que 4, y 0 en el resto de los casos. Expresar la función como suma de productos y como producto de sumas. Solución: Primero planteamos la tabla de verdad del problema.
51 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Como suma de productos:
.. . ... .. Como productos de sumas: . " #. " #. " # Circuito lógico reducido por miniterminos.
Circuito lógico reducido por maxitérminos.
52 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Se quiere implementar un sistema con dos luces de alarma (diodos EJEMPLO 30.- Se LED) y tres sensores (entradas digitales). Llamaremos A y B a las luces de alarma, y x2, x1 y x0 a los sensores digitales.
El sistema deberá funcionar de la siguiente manera: La alarma A se dispara si se recibe señal del sensor x2 exclusivamente. La alarma B se dispara si se recibe señal del sensor x0 exclusivamente. Las dos alarmas se disparan si se recibe señal de al menos dos sensores cualesquiera. a) Realizar una especificación tabular del sistema de alarma (tabla de verdad). b) Realizar una implementación con puertas AND-OR. c) Realizar una implementación con puertas NAND. d) Realizar una implementación con puertas NOR. • • •
b.- representación de la función con compuertas AND y OR.
A A.A, A. A, A, A, A. A
53 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
c) Realizar una implementación con puertas NAND.
.A.A, A .A.A A,
d) Realizar una implementación con puertas NOR.
A A.A, A. A, "AA##."AA,# "AA "9AA##."AA,# "AA "AA # "AA, "AA #
A, A, A. A "A,A#."A,A# "9A,A#."A,A# # "A,A "A,A #
54 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 31.- Se desea diseñar un circuito combinacional que realice el complemento a 2 de un número binario de 4 bits. En el diseño se emplearán puertas OR y XOR. Las salidas de las puertas XOR serán las salidas del circuito.
Solución: Planteamos el diseño de la siguiente manera:
*BC *BDAB
55 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
A *, * * A *,
A *, *, * A, ,
EJEMPLO 32.- Diseñar un circuito al que se le introducen los 4 bits de un código hexadecimal y cuya salida es la excitación para activar un display de 7 segmentos, de acuerdo con la figura adjunta. Los caracteres hexadecimales que no son numéricos, deben aparecer en mayúsculas, excepto la "b" y la "d", que deben aparecer en minúscula. NOTA: Tomar D como el bit más significativo.
a) Escribir la tabla de verdad de todas las funciones booleanas que aparecen. b) Implementar las funciones de la siguiente forma: - b1) S1 con puertas AND/OR en dos niveles. - b2) S2 con puertas OR/AND en dos niveles. - b3) S4 usando sólo puertas NOR. - b4) S5 usando sólo puertas NAND. 56 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
57 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
. . . .. .. ... . . . ... . . . . .. . . . . .. ... . .. . . . . . ... , . . .. . . .
Podemos observar que las ecuaciones lógicas obtenidas para el diseño del circuito digital son muy extensas, para tal efecto debemos hacer uso de creación de subcircuitos en PROTEUS para poder comprimir el diseño, el resultado es el siguiente.
EJEMPLO 33.- (Diseño con Mapas de Karnaugh de 6 Variables). Dos tanques son abastecidos de agua mediante dos bombas de agua conectados a un lago. Diseñar un sistema combinacional de tal modo que realice las siguientes funciones: Si el nivel de algunos de los tanques está por debajo del sensor de nivel bajo, se encenderá la bomba respectiva de cada tanque. Cuando el nivel de los tanques llegue a los sensores de nivel máximo, cada bomba respectiva de cada tanque se apagara. Cada bomba de agua de cada tanque debe de tratar de mantener el nivel de líquido siempre a su nivel máximo. 58 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Además tenemos visualizadores los cuales nos indica el nivel del tanque respecto al otro. Si ambos sensores de nivel inferior no detectan liquido, ninguno de los indicadores deberá encender.
Nota: Todos los sensores de nivel mandan una señal de cero siempre que los tanques estén vacio. Solución: Primeramente planteamos la tabla de verdad para el diseño del circuito lógico combinatorio, teniendo en cuenta que tenemos 6 variables de entrada y 5 variables de salida.
59 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
60 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
61 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Una vez planteado lo mapas de Karnaugh para cada función de salida se procede a obtener la función reducida para cada
,. .. "$ E F# . ,. .. " "$ $# $# . . . .. .. .,. . "$ G F# , . , .
62 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 34.- (Diseño con subcircuitos combinacionales). Dos tanques son abastecidos de agua mediante dos bombas de agua conectados a un lago. Diseñar un sistema combinacional de tal modo que realice las siguientes funciones: Si el nivel de algunos de los tanques está por debajo del sensor de nivel bajo, se encenderá la bomba respectiva de cada tanque. Cuando el nivel de los tanques llegue a los sensores de nivel máximo, cada bomba respectiva de cada tanque se apagara. Cada bomba de agua de cada tanque debe de tratar de mantener el nivel de líquido siempre a su nivel máximo. Además tenemos visualizadores los cuales nos indica el nivel del tanque respecto al otro. Si ambos sensores de nivel inferior no detectan liquido, ninguno de los indicadores deberá encender.
63 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Nota: Todos los sensores de nivel mandan una señal de cero siempre que los tanques estén vacios. Solución: El circuito lógico principal lo podemos plantear haciendo uso de tres subcircuitos lógicos, los cuales se explican a continuación. Sabemos que el nivel del tanque tiene 4 estados, vacio, bajo, medio y lleno, para poder codificar estos eventos usaremos dos variables auxiliares los cuales abarcan los cuatro eventos posibles. A continuación plantearemos los subcircuitos correspondientes con sus respectivas variables auxiliares.
Una vez planteado el circuito lógico principal compuesto por subcircuitos, se procede a plantear la tabla de verdad de cada Subcircuito.
64 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Hay que tener en cuenta que deberemos calcular las variables auxiliares en función de las variables de salida. El circuito final de salida (circuito 3) estará gobernado por las variables de salida de los otros dos subcircuitos. TABLA DE VERDAD SUBCIRCUITO 1
TABLA DE VERDAD SUBCIRCUITO 2
A partir de las tablas de verdad planteadas se procede a plantear los mapas de Karnaugh para cada función de salida. Todas las funciones de salida serán reducidas a partir de los miniterminos de cada función de salida.
A partir de los mapas de Karnaugh planteados con anterioridad se obtienen las siguientes ecuaciones lógicas.
& &, ,. % %, . . Ahora planteamos la tabla de verdad y los mapas de Karnaugh correspondiente al Subcircuito 3, para su posterior reducción.
65 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
66 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
. %, &.&,.%, &. &. % &,.% .%,&.&,.%.%,&.&, .%.%, & .&,.% . &, .%,&, .%.%, & .%& & &, %, %
A partir de todas las ecuaciones obtenidas se procede a la implementación del circuito lógico correspondiente.
EJERCICIOS PROPUESTOS EJERCICIO 1.- En 1.- En un determinado proceso industrial se verifica la calidad de unas piezas metálicas. Las piezas pasan a través de tres sensores (a, b y c) que determinan el estado de las mismas. La pieza se considerará defectuosa si se activa el sensor “a” o se activan simultáneamente los sensores “b” y “c”. Dibuja la tabla de verdad y las funciones lógicas maxitérmino y minitérmino para la detección de piezas defectuosas (S=1 si la pieza es defectuosa) Simplifica las dos funciones lógicas anteriores mediante el álgebra de Boole. Dibuja las funciones maxitérmino y minitérmino simplificadas. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. •
• • • •
EJERCICIO 2.- Se 2.- Se pretende diseñar un sistema de control de apertura automática de una puerta de un garaje de una nave industrial para vehículos pesados. Dicha apertura depende de tres sensores. El primero detecta la presencia de un vehículo, el segundo la altura del mismo y el tercero su peso. Un “1” en el sensor de presencia 67 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
indica que hay un vehículo; un “1” en el sensor de altura indica que el vehículo excede los dos metros de altura; un “1” en el sensor de peso indica que el vehículo supera las dos toneladas. La puerta sólo se debe abrir cuando haya un vehículo esperando que además supere las dos toneladas de peso. Dibuja la tabla de verdad y las funciones lógicas maxitérmino y minitérmino para la apertura de la puerta. Simplifica las dos funciones lógicas anteriores mediante el álgebra de Boole. Dibuja las funciones maxitérmino y minitérmino simplificadas. •
• •
EJERCICIO 3.- En 3.- En un determinado proceso industrial se verifica la calidad de unas piezas metálicas. Las piezas pasan a través de tres sensores que determinan el estado de las mismas. Si al menos dos sensores detectan defectos en las mismas serán desechadas. Escriba la tabla de verdad de la función de salida del detector de piezas defectuosas. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. •
• •
•
EJERCICIO 4.- Se pretende diseñar un circuito combinacional de cuatro bits de entrada, que detecte cuándo están activos los pesos y H de la combinación. Escriba la tabla de verdad de la función lógica de salida. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NOR.
2 2
•
• •
EJERCICIO 5.- Se 5.- Se pretende diseñar un sistema de control de apertura automática de una puerta de un garaje de una nave industrial para vehículos pesados. Dicha apertura depende de tres sensores. El primero detecta la presencia de un vehículo, el segundo la altura del mismo y el tercero su peso. Un “1” en el sensor de presencia indica que hay un vehículo; un “1” en el sensor de altura indica que el vehículo excede los dos metros de altura; un “1” en el sensor de peso indica que el vehículo supera las dos toneladas. La puerta sólo se debe abrir cuando haya un vehículo esperando que además supere las dos toneladas de peso. Calcule la función lógica de salida del sistema de control de apertura de la puerta. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. •
• • •
EJERCICIO 6.- Se 6.- Se pretende construir un circuito combinacional de control de paro automático del motor de un ascensor de un edificio. El funcionamiento del motor depende de 4 variables. En primer lugar, de que la puerta del ascensor esté abierta o cerrada (A); en segundo lugar, del peso de las personas que suben al ascensor (P); en tercer lugar, de que alguna de las persona haya pulsado los pulsadores de las distintas plantas (B); y por último, de la temperatura del motor (T). El motor se parará 68 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
automáticamente siempre que la puerta del ascensor esté abierta, o bien se sobrepase el peso máximo, que es de 800 kg. T =Temperatura; P = peso; A=Puerta; B =pulsador de planta Calcule la función lógica de salida de paro automático del motor del ascensor. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. • • • •
EJERCICIO 7.- Diseñe 7.- Diseñe un circuito digital de control, que compare a la entrada dos palabras binarias de 2 bits (ab y cd), de manera que cuando la combinación binaria formada por los bits ab, sea menor que la combinación binaria formada por los bits cd, la salida sea 1. Calcule la función lógica de salida. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. •
•
•
•
EJERCICIO 8.- Un circuito lógico combinatorio recibe dos números de tres bits cada uno, A = A2A1A0 y B = B2B1B0. Diseñe un circuito mínimo de suma de productos para producir una salida F1 = 1 siempre que A sea mayor que B, F2=1 Siempre y cuando que A sea igual a B, y F3=1 siempre y cuando que A sea menor a B.
EJERCICIO 9.- La apertura y cierre del tejado de un invernadero de flores de decoración depende del estado de 4 sensores que controlan la temperatura (T), la velocidad del viento (V), la presión atmosférica (P) y la humedad del ambiente (H). El cierre se producirá de manera automática cuando se active un motor controlado por la señal de salida del circuito de control que queremos diseñar. Dicha señal de salida pondrá en funcionamiento el motor siempre y cuando se produzca alguna de las siguientes condiciones climatológicas: T ACTIVO La La temperatura ambiente supera los 30º C; V ACTIVO Velocidad Velocidad del viento superior a los 50 Km/h; H ACTIVO Humedad Humedad inferior al 40 %. →
→
→
69 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
• • •
Calcule la función lógica de salida del circuito que activa el motor de cierre. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND ó NOR.
EJERCICIO 10.- Diseñe 10.- Diseñe un circuito digital de control, que compare a la entrada dos palabras binarias de 2 bits (ab y cd), de manera que cuando la combinación binaria formada por los bits ab, sea mayor que la combinación binaria formada por los bits cd, la salida sea 1. Calcule la función lógica de salida. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. • • • •
EJERCICIO 11.- Un 11.- Un sistema de control admite una combinación de entrada de 4 bits (a, b, c y d). A la salida, el circuito combinacional debe detectar cuándo están activos los pesos 20 ó 22 de la combinación digital de entrada. Calcule la función lógica de salida. Simplifique la función lógica mediante el método de Karnaugh. Implemente el circuito con puertas lógicas universales NAND ó NOR. • •
•
EJERCICIO 12.- Se 12.- Se desea diseñar el circuito de control de la señal de alarma de evacuación de una planta industrial de montaje. Para ello se dispone de tres sensores: un sensor de incendio (A), un sensor de humedad (B) y un sensor de presión (C).Los materiales con los que se trabaja en la planta de montaje son inflamables y sólo toleran unos niveles máximos de presión y humedad de forma conjunta. La señal de alarma se debe activar cuando exista riesgo de incendio o cuando se superen conjuntamente los niveles máximos de presión y humedad. Obtenga la tabla de verdad y la función lógica. Simplifique la función obtenida utilizando utili zando el mapa de Karnaugh. Implemente la función simplificada con puertas lógicas universales NAND de dos entradas. • • •
EJERCICIO 13.- Se 13.- Se desea diseñar el circuito de control de activación de un motor de una máquina trituradora. En la máquina existen tres sensores de llenado A, B, C. El motor entrará en funcionamiento cuando se activen conjunta o individualmente los sensores B y C. Obtenga la tabla de verdad y la función lógica. Simplifique la función obtenida utilizando utili zando el mapa de Karnaugh. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. • • • •
EJERCICIO 14.- Se desea gobernar un motor, disponiendo para tal fin de un interruptor T, que produce la entrada de tensión, y otro que denominaremos S, que pone en marcha el motor, a partir de una posición de reposo, la cual está determinada por un elemento R. El motor se pone en marcha si existe entrada de tensión (T=1) y se cierra a la vez el interruptor S. Sin embargo para que pare el motor no basta con 70 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
abrir el interruptor S, ya que en este caso, el motor continuará su marcha hasta llegar a la posición de reposo R, donde se detendrá.
• •
Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR.
EJERCICIO 15.- Florencio va a ir a una fiesta esta noche, pero no solo . Tiene cuatro nombres en su agenda: Ana, Bea, Carmen y Diana. Puede invitar a más de una chica pero no a las cuatro. Para no romper corazones, ha establecido las siguientes normas Si invita a Bea, debe invitar también a Carmen . Si invita a Ana y a Carmen, deberá también invitar a Bea o a Diana. Si invita a Carmen o a Diana, o no invita a Ana, deberá invitar también a Bea. Antes de llamarlas por teléfono, quiere utilizar un circuito que le indique cuándo una elección no es correcta. Ayúdele a diseñar el circuito óptimo en dos niveles con puertas NAND. • • •
EJERCICIO 16.- Una caja de seguridad dispone de 5 cerrojos (V, W, X, Y, Z) los cuales deben ser desbloqueados para abrirla caja. Las llaves de la caja están distribuidas entre 5 ejecutivos de la siguiente manera: A tiene llaves para los cerrojos V, X; B para V, Y; C para W, Y; D para X, Z; E para V, Z Determine todas las combinaciones mínimas de ejecutivos requeridos para abrir la caja. Determine el ejecutivo "esencial". •
•
71 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJERCICIO 17.- Un sistema sencillo para hacer votación secreta es utilizar un circuito combinacional cuyas entradas estén controladas por interruptores que puedan accionar los miembros del jurado. Cada miembro votará con un SÍ o un NO (no hay abstenciones). El sistema que queremos realizar es el siguiente. Hay dos tribunales: A y B. El tribunal A tiene 4 miembros (a, b, c, y d) y el tribunal B tres (e, f, y g). El veredicto deberá ser. El del tribunal A en el caso de que no se produzca empate. Si se produce empate en el tribunal A, el veredicto será el del tribunal B . Diseñe el circuito según el diagrama de bloques de la figura: • •
EJERCICIO 18.- En una cierta empresa los cuatro directivos se distribuyen las acciones según A=45%, B=30%, C=15% y D=10%.Diseñar una máquina de escrutinio sabiendo que cada miembro tiene un porcentaje de voto igual a su número de acciones y que para aprobar una moción los votos afirmativos deben superar el 50 %. Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR. •
•
EJERCICIO 19.- La 19.- La operación de prensado la realiza un pistón que gobernado por un motor baja hasta la posición B e inmediatamente sube hasta la posición de reposo, determinada por el detector de posición A de la figura. Al cerrar brevemente el interruptor D se ejecuta una operación de prensado, bajando y subiendo el pistón, deteniéndose en la posición A de partida. Obsérvese que cada vez que se pulsa D el pistón efectúa un ciclo completo.
• •
Implemente el circuito con puertas lógicas universales NAND. Implemente el circuito con puertas lógicas universales NOR.
72 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJERCICIO 20.- Llenado de un tanque .Un depósito se llena con una bomba (ver figura) que extrae agua de un pozo. El depósito dispone de 3 sensores de nivel A, B y C, un sensor horario D cuya salida es ‘1’ si es e s de noche (de 20:00 a 8:00) y ‘0’ si es de día y un sensor E cuya salida se pone a ‘1’ para indicar que está funcionando la bomba. Realizar el circuito combinacional más simplificado posible para el control del llenado del depósito de tal forma que: •
•
Durante el día sólo se llene el depósito (hasta alcanzar el sensor A) si el nivel de agua desciende por debajo del sensor C. Por la noche el depósito se ha de llenar (hasta A) si el nivel desciende del sensor B.
EJERCICIO 21.- Control 21.- Control de vía de ferrocarril .En la torre de control de un patio de ferrocarril, un controlador debe seleccionar la ruta de los furgones de carga que entran a una sección del patio, provenientes de un punto A, B o C (ver tablero de control). Dependiendo de las posiciones de los conmutadores S1, S4 y S5, un furgón puede llegar a uno cualquiera de los 4 destinos: D0 D1 D2 o D3. Diseñe un circuito que reciba como entradas las señales de S1 a S5, de las posiciones de los conmutadores correspondientes y que encienda una lámpara D0 a D3, indicando el destino al que llegará cada furgón. Cuando se produzca una colisión, todas las lámparas de salida deben encenderse.
73 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJERCICIO 22.- Riego 22.- Riego Automático. Se desea hacer un circuito de riego automático como el mostrado en la figura. El circuito deberá accionar la bomba en las siguientes condiciones •
•
•
•
El circuito accionará la bomba solamente cuando la tierra esté seca, pero antes debe comprobar las siguientes condiciones: Para evitar que la bomba se estropee por funcionar en vacío, nunca se accionará la bomba cuando el depósito de agua esté vacío. Si hay restricciones en el riego (época de verano), sólo se podrá regar de noche. En el resto del año (si no hay restricciones) se podrá regar de día y de noche (si la tierra está seca).
Para la implementación del circuito se dispone de las siguientes entradas: S: Señal que indica si la tierra está seca. Tierra seca: S=1; Tierra húmeda: S=0 R: Señal que indica si hay restricciones en el riego (es verano): Hay restricciones: R=1 No hay restricciones: R=0 D: Señal que indica si es de día o de noche: Día: D=1; Noche: D=0 V: Señal que indica si el depósito de agua está vacío: Vacío: V=1; Hay agua: V=0 Y la salida B, que accionará la bomba para regar: Bomba funcionando: B=1; Bomba apagada B=0.
74 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJERCICIO 23.- La 23.- La figura representa un circuito multiplicador que forma dos bits, X1 X0 y Y1 Y0 y que produce una salida Z3 Z2 Z1 Z0. Diseñe el circuito multiplicador.
EJERCICIO 24.- Control de nivel de líquidos. Se quiere controlar un sistema de suministro de agua, que consta de 2 pozos, dos bombas (B1 y B2) y un depósito. Mediante las bombas B1 y B2 se controla el nivel del depósito. Éste tiene dos boyas (DI y DS) para indicar el nivel. Cada pozo lleva instalado también un sensor de nivel (N1 y N2). Si no hay agua suficiente en un pozo, la bomba correspondiente no debe funcionar.
El sistema debe funcionar de la siguiente manera: Si el nivel del depósito supera DS, las bombas están paradas. Si el nivel del depósito está por debajo de DS y hay agua suficiente en el pozo 1, funciona B1. Si no hay agua suficiente en P1 y sí en P2, funciona B2. Si el nivel del depósito está por debajo de DI, se activa B2 además de B1. Determinar las funciones lógicas de B1 y B2. Dibujar el circuito de puertas lógicas para su control. • •
EJERCICIO 25.- diseñar diseñar los dos circuitos A y B del diagrama de bloques de la figura. A cuya entrada sean conectado cuatro interruptores de manera que, cuando están cerrados, las variables a, b, c, d toman valor 0 y, cuando están abiertos adquieren valor 1. Las salidas F1, F2 y F3 F3 del bloque A se relacionan relacionan con las cuatro entradas de la siguiente manera: F1 adquiere valor 1 cuando dos interruptores no contiguos están cerrados. F2 adquiere valor 1 cuando hay dos interruptores abiertos. F3 toma valor 1 cuando alguno de los interruptores externos está abierto. •
• •
75 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Las salidas X1 y X2 del bloque B deben indicar, en forma binaria, el numero de pilotos que se encienden para cada combinación.
EJERCICIO 26.- Diseñar 26.- Diseñar un comparador de magnitud relativa que tiene como entrada dos dígitos de tres variables, como se muestra en la figura. Detectando a la salida alguna de las tres condiciones.
EJERCICIO 27.- Se 27.- Se quiere diseñar un circuito combinacional de tres variables (a, b, c) cuya salida toma el valor lógico 1, si el número de variables de entrada a nivel lógico 1 es mayor que las que están a nivel lógico 0.
76 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
a) Obtenga la tabla de verdad y la función lógica. b) Simplifique la función obtenida utilizando el mapa de Karnaugh. c) Implemente la función simplificada con puertas lógicas NAND. EJERCICIO 28.- El 28.- El sistema de disparo (apagado del reactor) de una central nuclear está controlado por cuatro señales: Una de disparo manual del reactor (A), y otras tres de disparo automático (B, C, D). El sistema se activará siempre que se produzca disparo manual o cuando al menos dos de las señales de disparo automático se activen. Obtenga la tabla de verdad y la función lógica. Simplifique la función obtenida utilizando utili zando el mapa de Karnaugh. Implemente la función simplificada con puertas lógicas NAND. Implemente la función simplificada con puertas lógicas NOR. • • • •
EJERCICIO 29.- Un 29.- Un circuito combinacional de control posee tres entradas E1, E2 y E3 y una salida S. El circuito responde con un “1” lógico a la salida cuando las entradas E1 y E3 sean “1” ó cuando las entradas E2 y E3 tomen el valor “0”. Se pide: La tabla de verdad del circuito y su función lógica. Simplificación de la función lógica obtenida mediante el método de Karnaugh. Implementación del circuito con puertas lógicas NAND de dos entradas. Implemente la función simplificada con puertas lógicas NOR. •
• • •
EJERCICIO 30.- En un control de calidad de un proceso industrial, las piezas acabadas se verifican de cuatro en cuatro. El proceso está diseñado para que si al menos tres de las cuatro piezas están defectuosas se dispare una señal de alarma. Obtenga la tabla de verdad de aceptación de una decisión. Simplifique la función lógica obtenida mediante el método de Karnaugh. Implemente el circuito con puertas lógicas de dos entradas. • • •
EJERCICIO 31.- Diseñe un circuito que detecte el estado de un contador de tres variables (A, B y C). El circuito debe activarse cuando el número presente en la salida esté comprendido entre 2 y 6 ambos inclusive.
•
Obtenga la tabla de verdad del circuito así como la función lógica booleana. 77
DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
• •
Simplifique la función lógica utilizando utili zando el mapa de Karnaugh. Implemente del circuito con puertas lógicas NOR.
EJERCICIO 32.- Diseñar 32.- Diseñar un circuito comparador de palabras de 2 bits (AB y CD). La función de salida será “1” si la palabra AB es mayor que CD. Se pide: Tabla de verdad del circuito. Simplificación de la función lógica obtenida mediante el método de Karnaugh. Implementación del circuito con puertas lógicas NAND. •
•
•
EJERCICIO 33.- En una empresa los directivos de la misma poseen todas las acciones, que se distribuyen de la siguiente manera: - Director (A): 45% de las acciones - Vicedirector (B): 30% de las acciones - Secretario (C): 15% de las acciones - Jefe de ventas (D): 10 % de las acciones Para aprobar una determinada decisión la suma de los votos de los directivos de la empresa debe ser superior a un 50 %. Se pide: Obtener la tabla de verdad de aceptación de una decisión. Simplificación de la función lógica obtenida mediante el método de Karnaugh. Implementar el circuito con puertas lógicas. • •
•
EJERCICIO 34.- Se 34.- Se quiere diseñar un detector de error de una señal de un semáforo de circulación de tres lámparas. Se considera error cuando se produce alguno de los siguientes casos: – Las tres lámparas encendidas o apagadas – Las lámparas roja y verde encendidas – Las lámparas roja y amarilla encendidas Se pide: Tabla de verdad del detector de error y su función lógica. Simplificación de la función lógica obtenida mediante el método de Karnaugh. Implementación del circuito mediante puertas lógicas. •
•
•
EJERCICIO 35.- Se pretende diseñar un circuito combinacional que detecte los meses del año que tengan más de 30 días. Para ello el circuito dispone de 4 entradas (a, b, c y d) para codificar en binario el mes en cuestión, empezando por 0001 (enero).Tanto la combinación 0000 así como las que sean mayores a 12 – diciembre tendrán una salida indiferente – X-, que podrá tomarse como “0” ó “1” según convenga. Se pide: Tabla de verdad del circuito. Simplificación de la función lógica mediante el método de Karnaugh. Implementación del circuito con puertas lógicas. • •
•
EJERCICIO 36.- Se 36.- Se pretende diseñar un circuito constituido por tres pulsadores a, b, c y una lámpara que funcione de forma que ésta se encienda cuando se pulsen los tres pulsadores a la vez o uno cualquiera solamente. Construya la tabla de verdad. •
78 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
•
•
Obtenga la función simplificada en forma de suma de productos (minterms o primera forma canónica). Implemente el circuito utilizando puertas lógicas de dos entradas e inversores.
EJERCICIO 37.- PRACTICA 5: Control de flujo de agua en tuberías. Se trata de implementar en control de flujo de agua en tuberías, Supongamos que hay un nudo de tuberías, 4 de entrada y 4 de salidas. La tubería A aporta de media 5 litros por minuto, la B 15 litros/minuto, la C 25 litros/minuto y la D 30 litros/minuto. Cuatro sensores, uno por tubería de entrada, nos indican por qué tubería está circulando el agua. Las tuberías de salida son SA, SB, SC y SD y pueden recoger 5, 10, 20 y 40 litros por minuto respectivamente. Cada tubería de salida está regulada por una válvula que únicamente tiene dos estados: cerrada (un cero lógico) o abierta (un uno lógico). Teniendo en cuenta únicamente podrá circular agua en dos tuberías de entrada simultáneamente, activar las válvulas de las tuberías de salida necesarias para que salga tanto caudal de agua como entra. Si circula agua en una tubería de entrada o en más de dos tuberías, no se activa ninguna válvula de las tuberías de salida.
EJERCICIO 38.- Se 38.- Se pretende diseñar un circuito de cuatro variables (a, b, c y d) que tome el valor lógico 1 cuando el número de variables de entrada en estado 1 sea mayor o igual que el de las que están en estado cero. Construya la tabla de verdad del circuito. Obtenga la función simplificada en forma de suma de productos (minterms o primera forma canónica). Implemente el circuito utilizando puertas NAND. Implemente el circuito utilizando puertas NOR. • •
• •
79 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJERCICIO 39.- Un 39.- Un motor es controlado mediante tres pulsadores: A, B y C; de tal forma que el motor se activa únicamente cuando se pulsan dos pulsadores cualesquiera o se pulsen los tres. Se pide: La tabla de la verdad correspondiente al circuito. La función lógica en su primera forma canónica. La expresión simplificada obtenida mediante mapas de Karnaugh. Implementación del circuito lógico con el menor número posible puertas NAND de dos y tres entradas. • • • •
EJERCICIO 40.- Un 40.- Un circuito digital consta de cuatro entradas (a, b, c y d) y una salida F. Esta salida tomará el valor lógico “1” cuando existan mayoría de ceros en las cuatro entradas. Se pide:
• • •
Obtener la tabla de verdad y la función lógica del circuito. Simplificar la función lógica mediante el método de Karnaugh. Implementar el circuito con puertas lógicas universales.
EJERCICIO 41.- Una cinta transportadora se pone en movimiento desde uno cualquiera de los dos interruptores disponibles A o B siempre siempre que la carga que se coloque sobre la cinta no supere un determinado peso (C). Cuando el peso sea inferior al máximo tendremos un 1 en la entrada C. Cuando se supere el peso que la cinta pueda transportar tendremos un 0 en C. Construir el circuito lógico y la tabla de verdad. EJERCICIO 42.- Un 42.- 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: T1=1: temperatura del silo ≤ admisible 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, la expresión algebraica de la función que maneja el ventilador (V), si se espera el siguiente comportamiento del mismo: 80 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Estara 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 este seleccionado el programa automático. En caso de estar seleccionado el programa manual, debe permanecer encendido permanentemente. EJERCICIO 43.- El 43.- El dibujo de la figura representa un depósito de enfriamiento de un líquido que desprende gases no nocivos. El líquido entra por la tubería de Entrada y sale por la de Salida. En condiciones normales el enfriamiento se realiza con la válvula de escape (VEscape) cerrada. La presión del depósito es vigilada por un presostato que da una salida binaria comprendida entre 0 y 10 (el presostato no utiliza los valores comprendidos entre 11 y 15). Se dispone además de tres pilotos para clasificar la presión indicada por el presostato: V Alta se enciende si la presión indicada por el presostato supera el valor 8. V Media se enciende si la presión está entre 5 y 8, ambos inclusive. V Baja se enciende si la presión está por debajo de 5. •
• •
La válvula de escape VEscape se abre si está encendido VAlta o VBaja. Rellenar la tabla de la verdad del control de los pilotos y la válvula. Obtener las ecuaciones lógicas del control de los tres pilotos y de la válvula de escape simplificando por KARNAUGH. Implantar mediante puertas lógicas el control del piloto VAlta. Implantar mediante diagrama de contactos el control del piloto VBaja. Implantar mediante lista de instrucciones el control de la válvula VEscape. • •
• • •
EJERCICIO 44.- Un 44.- Un contactor R para el accionamiento de un motor eléctrico, está gobernado por la acción combinada de tres finales de carrera A, B y C. Para que el motor pueda funcionar, dichos finales de carrera deben reunir las siguientes condiciones: A accionado, B y C en reposo. C accionado, A y B en reposo. B y C accionados, A en reposo. A y C accionados, B en reposo. Diseñar el circuito mínimo de puertas lógicas que cumple con dichas condiciones. • • • •
81 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJERCICIO 45.- Imagina que tienes que diseñar una puerta electrónica para un garaje, de forma que solo debe abrirse cuando se pulse una determinada combinación de botones (A, B y C), según las condiciones indicadas. Diseña el circuito lógico que permita la apertura de la puerta del garaje, empleando las puertas lógicas que consideres oportuno. Condiciones de apertura: 1) C pulsado, A y B en reposo. 2) A, B y C pulsados. pulsados. EJERCICIO 46.-convertidor binario-romano. Diseñar binario-romano. Diseñar un circuito digital que permita visualizar números romanos comprendidos entre el 1 y el 15 a partir de un número binario natural, como en el ejemplo de la figura. La descripción debe tener como entra una palabra binaria de 4 bits y como salidas 2 bits por cada símbolo romano que representan “I” , “V” y “X” en cuatro visualizadores especiales para ello (D3, D2, D1, D0). El cero tiene como equivalente el visualizador apagado. En cada uno de estos visualizadores hay 2 entradas codificadas indicativas del símbolo a representar “I” , 10= “V” “V” y 11= “X” “X” activas (00=apagado, 01= “I” activas a novel alto respectivamente). La cifra romana se alineara a la derecha, dejando en blanco los elementos no usados en la parte izquierda del visualizador.
EJERCICIO 47.- Un 47.- 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 = 0 Modo Automático B = 1 bomba encendida, A = 1 luz lu z de alarma encendida Escribir de manera directa: La expresión algebraica de la función que maneja la bomba de agua (B), de manera que este encendida si esta en Modo Manual y el nivel por debajo del máximo, o si esta en Modo Automático y el nivel por debajo del valor intermedio. La expresión algebraica de la función que maneja la luz de alarma (A), de manera que este encendida si el nivel está por debajo del mínimo cuando está en Modo Automático. •
•
82 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
EJEMPLO 48.- Para 48.- Para poner en marcha un motor trifásico se requiere tres interruptores (a, b y c) de tal forma que el funcionamiento del mismo se produzca únicamente en las siguientes condiciones: Cuando esté cerrado solamente b. Cuando estén cerrados simultáneamente a y b y no lo esté c. Cuando estén cerrados simultáneamente a y c y no lo esté b. Determinar la función lógica que modela el control del motor y dibujar el circuito de control del motor. Cada puerta sólo puede tener dos entradas.
EJERCICIO 49.- Detector de monedas . En la figura se muestra un dispositivo empleado para la detección de tres tipos de monedas que, pasan por un plano inclinado. Consta de tres rayos de luz que inciden sobre tres fotoceldas marcadas como A, B y C. Al incidir un rayo de luz sobre una foto celda se genera un cero lógico a su salida, al interrumpirse un haz de luz la fotocelda f otocelda genera un uno lógico. El problema es entonces diseñar un circuito cuyas entradas sean A, B y C y sus salidas indiquen si pasó una moneda de 0.20, 0.50 ó 1.00.
83 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Juego ( Piedra- Papel y Tijera). Las reglas de este juego, como bien es ( PiedraEJERCICIO 50.- Juego sabido, son las siguientes: La piedra solo gana a la tijera El papel solo gana a la piedra La tijera solo gana al papel • • •
Cada jugador introduce en el sistema la codificación binaria del símbolo elegido (piedra, papel o tijera). El sistema sistema deberá informar si el jugador A gana al B, o si el jugador B gana al A.
Determine el número de bits necesarios para codificar las entradas de cada jugador. Cuantos bits de entrada tienes el sistema? Cuantos de salida? Proponga una codificación para las entradas y para las salidas. Realice la tabla completa y el mapa de Karnaugh.
PRACTICA 4: Control de una planta depuradora EJERCICIO 51.- PRACTICA Una planta depuradora dispone de 3 depósitos de agua. En el fondo de cada depósito se dispone de un sensor de nivel que se activara cuando se encuentre vacio. Diseñar el circuito lógico de tal forma que se active una señal de aviso cuando los sensores indiquen que al menos 2 depósitos están vacios.
Nota. Según el dibujo los sensores C, B y A están desconectados y los depósitos llenos
84 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES
Máquina expendedora de agua-limón-naranja EJERCICIO 52.- Máquina Una máquina expendedora de refrescos puede suministrar agua fresca, agua con limón y agua con naranja. Pero no puede suministrar nunca limón solo, naranja sola, ni limón con naranja solos o con agua. Los refrescos se encuentran en el interior de unos depósitos. La cantidad adecuada de cada líquido sale cuando se activa la electroválvula correspondiente, SA (agua), SL (limón), SN (naranja). Y una vez caído el líquido sale hasta el vaso si está activada la salida general (ST). Para seleccionar el líquido que queremos tenemos tres pulsadores PA (agua), PL (limón) y PN (naranja). Deben pulsarse uno o dos según lo que deseemos, pero recordar que si se pulsan los que no corresponde no debe salir nada. La desconexión de las electroválvulas se producirá cuando el vaso de refresco se haya llenado, al actuar, debido a su peso, sobre un pulsador (V) cuando el vaso este lleno. Diseñar el circuito digital capaz de resolver el problema y elegir aquel capaz de resolver el problema con mayor prontitud y menor coste.
85 DOCENTE: Ing. Marco Serrano Quispe
SISTEMAS DIGITALES