Está en la página 1de 20

Diseño Lógico

Unidad 4. Minimización

.
Presentación de la unidad………………………………………..………………….................…… 3
Objetivo……………….…………………………………….….…......................................................... 4
4. Minimización …………………………………………………….…………………………... 5
4.1. Teoremas de Boole y de DeMorgan ……………………………….…………….……............... 6
4.2. Simplificación por el método de mapas de Karnaugh de 2, 3, y 4 variables ……………….....…. 9
4.2.1. Por suma de productos ………………………………………………………………...…. 10
4.2.2. Por productos de sumas …………………………………………………………….…….. 11
4.3. Utilización de simuladores de electrónica …………………………….……………..……..… 12
4.4. Utilización de las expresiones mínimas en el desarrollo de aplicaciones prácticas ………………. 13
4.5. Programación HDL - Lenguaje de descripción de hardware …...……………………………… 14
Temario 4.5.1. Fundamentos del lenguaje ………………………………………………………………… 15
4.5.2. Implementaciones de circuitos combinacionales con PLDs - Circuitos lógicos programables …. 16
Para saber mas ……..……...…………………………………………..................................................... 17
Cierre de la unidad ……..………………….…………………................................................................. 19
Fuentes de consulta ……………………………………….......………..…………………….…. 20
Presentación de la unidad

¡Bienvenido a la unidad 4!
A lo largo de esta unidad vamos a ver temas como el mapa de Karnaugh que 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.
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.

En esta unidad vamos a temas muy importantes como minimización y sus


subtemas siguientes:
• Teoremas de Boole y de DeMorgan
• Simplificación por el método de mapas de Karnaugh de 2, 3, y 4 variables
• Por suma de productos
• Por productos de sumas
• Utilización de simuladores de electrónica
• Utilización de las expresiones mínimas en el desarrollo de aplicaciones
prácticas
• Programación HDL - Lenguaje de descripción de hardware
• Fundamentos del lenguaje
• Implementaciones de circuitos combinacionales con PLDs - Circuitos lógicos
programables

3
Objetivos

Al término de esta unidad lograrás:

• Identificar los Teoremas de Boole y de DeMorgan y la Simplificación por el


método de mapas de Karnaugh de 2, 3, y 4 variables
• Conocer el proceso de por suma de productos y Por productos de sumas
• Utilizar los simuladores de electrónica y la Utilización de las expresiones mínimas
en el desarrollo de aplicaciones prácticas

4
4. Minimización

La minimización es el proceso que da como resultado una expresión booleana suma de productos o un producto de sumas que contiene el menor
número de literales posible por término. Mapa de Karnaugh. Disposición de celdas que representan las combinaciones de literales en una expresión
booleana y que se utiliza para la simplificación sistemática del término.

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 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.

5
4.1. Teoremas de Boole y de DeMorgan

El álgebra de Boole son las matemáticas de los sistemas digitales. Es indispensable tener unos conocimientos básicos del álgebra booleana para estudiar y
analizar los circuitos lógicos. En el capítulo anterior, se han presentado las operaciones y expresiones booleanas para las puertas NOT, AND, OR, NAND
y NOR.

Los términos variable, complemento y literal son términos utilizados en el álgebra booleana. Una variable es un símbolo (normalmente una letra
mayúscula en cursiva) que se utiliza para representar magnitudes lógicas. Cualquier variable puede tener un valor de 0 o de 1. El complemento es
el inverso de la variable y se indica mediante una barra encima de la misma. Por ejemplo, el complemento de la variable A es . Si A = 1, entonces
= 0. Si A = 0, entonces = 1. El complemento de la variable A se lee “no A” o “A barra”.
Las leyes básicas del álgebra de Boole (las leyes conmutativas de la suma y la multiplicación, y las leyes asociativas de la suma y la multiplicación y
la ley distributiva) son las mismas que las del álgebra ordinaria. Cada una de las leyes se ilustra con dos o tres variables, pero el número de
variables no está limitado a esta cantidad.

6
4.1. Teoremas de Boole y de
DeMorgan
DeMorgan, matemático que conoció a Boole, propuso dos teoremas que constituyen una parte muy importante del álgebra de Boole. En términos
prácticos, los teoremas de DeMorgan proporcionan una verificación matemática de la equivalencia entre las puertas NAND y negativa-OR, y las puertas
NOR y negativa-AND,

El primer teorema de DeMorgan se enuncia de la siguiente forma:

• El complemento de un producto de variables es igual a la suma de los complementos de las variables.

O dicho de otra manera

• El complemento de dos o más variables a las que se aplica la operación AND es equivalente a aplicar la operación OR a los complementos de
cada variable.

La fórmula para expresar este teorema para dos variables es:

Ecuación 1.

7
4.1. Teoremas de Boole y de
DeMorgan
El segundo teorema de DeMorgan se enuncia como sigue:
• El complemento de una suma de variables es igual al producto de los complementos de las variables.
O dicho de otra manera,
• El complemento de dos o más variables a las que se aplica la operación OR es equivalente a aplicar la operación AND a los complementos de cada
variable.
La fórmula para expresar este teorema es:
Ecuación 2.

Las puertas equivalentes y tablas de verdad correspondientes a las Ecuaciones 1 y 2 se muestran en la siguiente Figura

Equivalencias de las puertas lógicas y tablas de verdad


que ilustran los teoremas de DeMorgan. Observe la
igualdad entre las dos columnas de salida de cada tabla.
Esto demuestra que las puertas equivalentes realizan la
misma función lógica

8
4.2. Simplificación por el método de mapas de Karnaugh de 2,
3, y 4 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 y la Figura muestra cómo completar los mapas de Karnaugh.
Paso 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. 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.

9
4.2.1. Por suma de
productos
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 expresión vale 1. Generalmente, cuando se trabaja con
productos de sumas, los 1s no se escriben. Los siguientes pasos junto con la Figura ilustran este proceso.
Paso 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. Cada vez que se evalúa un término suma, se introduce un 0 en la correspondiente celda del mapa de Karnaugh.

10
4.2.2. Por productos 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 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

Utilizar un mapa de Karnaugh para minimizar la siguiente expresión producto de sumas estándar:

Deducir también la expresión suma de productos equivalente.

Las combinaciones de valores binarios de la expresión son


(0 + 0 + 0) (0 + 0 + 1) (0 + 1 + 0) (0 + 1 + 1) (1 + 1 + 0)
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 Figura

11
4.3. Utilización de simuladores de
electrónica

Schematics.com es una herramienta de dibujo esquemático. La plataforma dispone de un simulador de circuito, donde podrás construir tu diseño con
cientos de componentes que podrás seleccionar de su base de datos. Otro punto a destacar de la utilidad, es poder acceder a proyectos creados por otros
usuarios.

Simulator.io podrás crear una simulación de circuitos electrónicos básicos (Interruptores y LED, Adder, Memoria, Convertidor de código, Salida
avanzada, etcétera). Una ventaja de la simulación es la posibilidad de interactuar con el circuito en tiempo real utilizando los interruptores y relojes.
Circuit.io es un simulador de circuitos electrónicos que cuenta con módulos electrónicos con una apariencia real. Otros simuladores solo usan el símbolo
para representar el OR Gate, pero aquí podrás ver todos los puntos de entrada y salida y diferenciar fácilmente entre Vcc y Ground.

12
4.4. Utilización de las expresiones mínimas en el desarrollo de
aplicaciones prácticas

Para la creación de circuitos prácticos siempre se busca minimizar costos y complejidad de los mismos, para lo cual se utiliza la simplificación de
expresiones.
Un proyecto real busca tener la menor cantidad de componentes para obtener el mismo resultado, esto ayuda a disminuir su costo, los puntos posibles de
falla, y la complejidad del mismo.

Sucede a veces que en los circuitos digitales que ciertas


combinaciones de sus variables de entrada no pueden
producirse nunca debido a que otros circuitos anteriores
impiden su llegada a nuestro circuito. A estas
combinaciones de entrada las llamamos términos
indiferentes.

13
4.5. Programación HDL - Lenguaje de descripción de
hardware

El aumento de la dificultad del diseño electrónico, así como los costos de desarrollo tecnológico y tiempo de lanzamiento de productos impulso al
desarrollo de herramientas de diseño electrónico automático (EDA, Electronic Design Automation). Estas herramientas son de gran utilidad a los
ingenieros en las diferentes etapas del diseño digital. Los lenguajes de descripción de hardware (HDL) son el principal componente que ha contribuido a
complementar estas herramientas para el diseño digital.

Un lenguaje HDL para descripción de hardware (HDL: Hardware Description Language) es una herramienta que nos permite describir el uso y la
estructura de sistemas de diseño digital usando un esquema textual de codificación. Usando HDL el diseñador puede describir la operación del sistema
con diferentes niveles de abstracción:

Nivel de conmutadores (switch level), utilizado para describir el circuito en términos de transistores y cables.

Nivel de compuertas (gate level), para describir el circuito en términos de compuertas lógicas y elementos de
almacenamiento como flip-flops.

Nivel de flujo de datos, que describe el circuito en términos de flujo de datos entre registros.

14
4.5.1. Fundamentos del lenguaje

Las áreas sombreadas en la figura representan los procesos en el flujo de diseño, las áreas
sin sombra los distintos niveles de representación del diseño. Este esquema representa el
típico flujo de diseño utilizado en un diseño basado en HDL. En todo diseño la
especificación debe ser descrita primero, esta describe de forma abstracta la funcionalidad,
interface y arquitectura global del diseño a ser escrito. En este punto no es necesario
pensar de forma detallada la manera de la implementación del circuito.
La descripción en comportamiento se crea con fines de evaluar el diseño en términos de
funcionalidad, desempeño y otras características de alto nivel. Esto se logra utilizando
lenguajes de alto nivel (HDL)

Describe actividades que ocurren en forma simultánea (CONCURRENCIA).


Permite describir módulos con acciones que serán evaluadas en forma
secuencial (procedural), donde todo el módulo será visto como una acción
concurrente más.
Posibilita la construcción de una estructura jerárquica, donde es posible
combinar descripciones estructurales y de flujo de datos con descripciones de
comportamiento (BEHAVIOR)
Permite modelizar el concepto de “tiempo”, fundamental para la descripción
de sistemas electrónicos. Aparicio Olmedo, A. A., & Ponluisa Marcalla, N. F.
(2014).

15
4.5.2. Implementaciones de circuitos combinacionales con PLDs - Circuitos
lógicos programables

Además de los HDLs empleados en las nuevas metodologías de diseño, los fabricantes comenzaron a utilizar los PLDs (Programmab/e Logic Device
- Dispositivos Lógicos Programables), así que, ambos comenzaron a ser piezas importantes para las nuevas metodologías de diseño. La figura muestra
la clasificación de los PLDs.

La mayoría de los PLDs están constituidos por una matriz de conexiones, una matriz de compuertas ANO y una matiiz de compuertas OR y
algunos otros incluyen registros. Con los recursos disponibles se implementan las funciones lógicas deseadas mediante un software especial y un
programador de dispositivos. Las matrices pueden ser fijas o programables. Varguez Moo, A.

16
Para saber más

Para saber más sobre los temas vistos en esta unidad revisa los siguientes materiales:

 álgebra de Boole
El álgebra de Boole son las matemáticas de los sistemas digitales.
Araya R.. (2006). Álgebra de Boole. 20/01/2021, de Universidad Técnica Federico Santa María Sitio web:
https://users.dcc.uchile.cl/~clgutier/Capitulo_3.pdf

 circuitos lógicos programables


La mayoría de los PLDs están constituidos por una matriz de conexiones
Varguez Moo, A. Implementación del estándar de encripción avanzado AES usando circuitos lógicos programables de
tipo FPGA para ser utilizado en la encripción de archivos de computadora.
https://repositorio.tec.mx/handle/11285/628423

• FUNDAMENTOS DE SISTEMAS DIGITALES


el funcionamiento lógico, las aplicaciones y la localización de averías de las puertas lógicas.
FLOYD, T. L. (2000). FUNDAMENTOS DE SISTEMAS DIGITALES (7a. ed.). MADRID: PEARSON EDUCACION

17
Para saber más

Para saber más sobre los temas vistos en esta unidad revisa los siguientes materiales:

 Introducción a la programación VHDL


Un lenguaje HDL para descripción de hardware (HDL: Hardware Description Language)
Sánchez-Élez M. (2014). Introducción a la programación VHDL. 05/01/2021, de Universidad Complutense de Madrid Sitio web:
https://eprints.ucm.es/id/eprint/26200/1/intro_VHDL.pdf

 Lenguaje HDL
Permite describir módulos con acciones que serán evaluadas en forma secuencial
Aparicio Olmedo, A. A., & Ponluisa Marcalla, N. F. (2014). Estudio comparativo de los lenguajes HDL y su aplicación en la implementación del
Laboratorio de Sistemas Digitales Avanzados mediante FPGAS en la EIE-CRI (Bachelor's thesis).
http://dspace.espoch.edu.ec/handle/123456789/3342

 TEOREMAS DE REDUCCIÓN
Equivalencias de las puertas lógicas y tablas de verdad que ilustran los teoremas de DeMorgan
LUIS, T. F. J. TEOREMAS DE REDUCCIÓN Y MÉTODO DE MAPAS DE KARNAUGH.
http://ri.uaemex.mx/bitstream/handle/20.500.11799/70838/secme-28784_2.pdf ?sequence=2

18
Cierre de la unidad

A lo largo de la unidad aprendimos sobre el mapa de Karnaugh que 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.
Como vimos la minimización es el proceso que da como resultado una
expresión booleana suma de productos o un producto de sumas que contiene el
menor número de literales posible por término. Mapa de Karnaugh.
Disposición de celdas que representan las combinaciones de literales en una
expresión booleana y que se utiliza para la simplificación sistemática del
término.

¡Felicidades!
Has concluido la unidad 4 continúa esforzándote

19
Fuentes de consulta

• Araya R.. (2006). Álgebra de Boole. 20/01/2021, de Universidad Técnica Federico Santa María Sitio web:
https://users.dcc.uchile.cl/~clgutier/Capitulo_3.pdf

• Aparicio Olmedo, A. A., & Ponluisa Marcalla, N. F. (2014). Estudio comparativo de los lenguajes HDL y su aplicación en la
implementación del Laboratorio de Sistemas Digitales Avanzados mediante FPGAS en la EIE-CRI (Bachelor's thesis).
http://dspace.espoch.edu.ec/handle/123456789/3342

• FLOYD, T. L. (2000). FUNDAMENTOS DE SISTEMAS DIGITALES (7a. ed.). MADRID: PEARSON EDUCACION

• LUIS, T. F. J. TEOREMAS DE REDUCCIÓN Y MÉTODO DE MAPAS DE KARNAUGH.


http://ri.uaemex.mx/bitstream/handle/20.500.11799/70838/secme-28784_2.pdf ?sequence=2

• Sánchez-Élez M. (2014). Introducción a la programación VHDL. 05/01/2021, de Universidad Complutense de Madrid Sitio web:
https://eprints.ucm.es/id/eprint/26200/1/intro_VHDL.pdf
• Varguez Moo, A. Implementación del estándar de encripción avanzado AES usando circuitos lógicos programables de tipo FPGA para
ser utilizado en la encripción de archivos de computadora. https://repositorio.tec.mx/handle/11285/628423

20

También podría gustarte