Organización
Computacional
Curso de Vacaciones Junio 2024
Presentación
• Ing. Juan Carlos Maeda Juarez
Reglas de Curso
• Efecto Dunning-Kruger
Circuitos Lógicos Combinacionales
• Un circuito lógico combinacional es aquel en el que el estado actual de la
combinación de las entradas lógicas decide la salida. El término lógica
combinacional significa la combinación de dos o más puertas lógicas para
formar una función requerida donde la salida en un momento dado depende
solo de la entrada.
Circuitos Lógicos Combinacionales
• Las puertas lógicas son los bloques de construcción fundamentales de un
circuito combinacional. Mediante el uso de la combinación de puertas lógicas
se pueden implementar circuitos combinacionales más complejos como
multiplexores y demultiplexores, comparadores, sumadores y restadores, etc.
Circuitos Lógicos Combinacionales
• Un circuito combinacional consta de variables de entrada, puertas lógicas y
variables de salida. Las puertas lógicas aceptan las entradas y, según el tipo de
funcionamiento de la puerta lógica, a partir de ellas se generan señales de
salida. Los datos de salida requeridos se obtienen de este proceso
transformando la información binaria dada en la entrada. La siguiente figura
muestra la representación esquemática de un circuito lógico combinacional
generalizado que consta de n variables de entrada y m variables de salida.
Circuitos Lógicos Combinacionales
Procedimiento de Diseño
Se puede diseñar un circuito combinacional siguiendo los siguientes pasos.
• Identificación y determinación del número de variables de entrada
disponibles y variables de salida requeridas.
• Representar símbolos (alfabetos) para todas y cada una de las variables de
entrada y salida.
• Expresando la relación de la variable de entrada y salida.
• Construcción de tabla de verdad que indique la relación entre las variables
de entrada y salida.
Procedimiento de Diseño
• Obtención de la expresión booleana para cada variable de salida en
términos de variables de entrada.
• Minimizar las expresiones booleanas de varias variables de salida.
• Obtención del diagrama lógico mediante la implementación de expresiones
booleanas minimizadas.
Procedimiento de Diseño
• Para minimizar las expresiones booleanas, se encuentran disponibles varias
técnicas de simplificación para reducir el número de compuertas y, por lo
tanto, reducir el costo de implementación. Estas técnicas incluyen teoremas
e identidades del álgebra booleana, mapas de Karnaugh (mapas K),
tabulación de Quinne-McCluskey, etc. Para la implementación de hardware
del circuito combinacional, se prefieren las siguientes pautas.
Procedimiento de Diseño
• La implementación del circuito debe ser tal que, tenga un número mínimo
de compuertas, teniendo un número mínimo de entradas.
• El número de interconexiones entre las compuertas debería ser mínimo y el
tiempo de propagación debería ser el mínimo.
• Siempre debe haber una limitación en la capacidad de conducción de las
compuertas.
Procedimiento de Diseño
• Este es el método simple, efectivo y tradicional de diseñar un circuito
combinacional para circuitos pequeños. Si el circuito es más complejo, la
cantidad de compuertas requeridas es mayor y también requiere una mayor
cantidad de cables entre ellas. Por lo tanto, diseñar tales circuitos puede ser
menos confiable y requerir más tiempo.
Procedimiento de Diseño
• Para superar estos problemas, la mayoría de los circuitos combinacionales
están disponibles en circuitos integrados (CI) que se utilizan ampliamente en
el diseño de sistemas digitales. Depende de la capacidad de integración de
las compuertas, estos circuitos integrados se clasifican en circuitos
integrados de pequeña, mediana, grande y muy grande escala.
Funciones del Circuito Lógico Combinacional
La función de los circuitos lógicos combinacionales se puede especificar de
tres formas principales, tales como:
Existen tres formas principales de especificar la función de un circuito lógico
combinacional, estos son:
• Tabla de Verdad
• Álgebra Booleana
• Diagrama Lógico
Tabla de Verdad
Una tabla de verdad define la función de una compuerta lógica al proporcionar
una lista concisa que muestra todos los estados de salida en forma de tabla
para cada combinación posible de variable de entrada que la compuerta
podría encontrar.
Álgebra Booleana
Esto forma la expresión algebraica que muestra el funcionamiento del circuito
lógico para cada variable de entrada, ya sea Verdadero o Falso, que da como
resultado una salida lógica.
Diagrama Lógico
Esta es una representación gráfica de un circuito lógico que muestra el
cableado y las conexiones de cada compuerta lógica individual, representada
por un símbolo gráfico específico, que implementa el circuito lógico.
Los circuitos lógicos combinacionales también pueden denominarse circuitos
de toma de decisiones, ya que están diseñados utilizando compuertas lógicas
individuales. La lógica combinacional es el proceso de combinar compuertas
lógicas para procesar las dos o más entradas dadas de manera que se genere
al menos una señal de salida basada en la función lógica de cada compuerta
lógica.
Diagrama Lógico
Lógica Binaria
• Una de las funciones de la Unidad Aritmético Lógica (ALU), situada en el
núcleo del procesador es la de realizar las operaciones lógicas con los datos
contenidos en una instrucción del programa. Pero, ¿qué es una operación
lógica?
Operaciones lógicas
Una operación lógica asigna un valor (CIERTO o FALSO) a la combinación de
condiciones (CIERTO o FALSO) de uno o más factores. Los factores que
intervienen en una operación lógica sólo pueden ser ciertos o falsos. Y el
resultado de una operación lógica puede ser, tan sólo, cierto o falso.
Operaciones lógicas
Por ejemplo, el sistema de control del toldo de una cafetería, que se controla
mediante una operación lógica. Para que el motor que extiende el toldo se
accione deberá tener en cuenta dos factores: ¿es de día? ¿está lloviendo? Si
estos dos factores son ciertos, el motor debe ponerse en marcha y extender el
toldo.
Operaciones lógicas
• Los resultados de una operación lógica, para cada uno de los valores posibles de las
variables, se fijan en una tabla denominada Tabla de Verdad, como la del ejemplo
anterior.
• Para que un procesador pueda ejecutar las operaciones lógicas, es preciso asignar un
valor binario a cada una de las condiciones posibles. Se suele asignar un UNO (1) al
valor CIERTO y un CERO (0) al valor FALSO, con el criterio denominado lógica
positiva.
• Las operaciones lógicas más importantes
son: EQUAL (idéntico), NOT (negación), OR (O), AND (Y), NOR (O
negada), NAND (Y negada), OREX (O exclusiva) y NOREX (O exclusiva negada).
Veamos con detalle estas operaciones:
Función EQUAL
• El resultado S de aplicar la función lógica equal, sobre una variable a es muy
simple: si a es cierto(1) S es cierto(1) y, si a es falso(0), S es Falso(0). Estos
dos resultados posibles se muestran en la siguiente tabla:
Función EQUAL
• Un ejemplo sencillo de aplicación práctica de esta función lógica sería el
encendido de las luces del alumbrado público.
• En algún lugar de la ciudad se instala un detector crepuscular, que detecta
cuándo es de noche y controla un interruptor que enciende las luces de las
calles: si es de noche (1) se encienden las lámparas (1); si NO es de noche (0)
NO se encienden las lámparas (0).
• Un circuito eléctrico capaz de implementar esta función lógica es el
siguiente:
Función NOT
El resultado S de aplicar la función lógica NOT, sobre una variable a, es muy
simple: si a es CIERTO (1) S es FALSO (0) y, si a es FALSO (0), S es CIERTO (1).
Estas dos resultados posibles se muestran en la tabla de verdad adjunta. Se
conoce también como función negación: S equivale a a negada
Función NOT
Un ejemplo sencillo de aplicación práctica de esta función lógica sería el circuito que
controla el acceso a una oficina bancaria, a través de una puerta automática equipada con
un detector de metales que cierra un interruptor.
Si el detector de metales SI nota que el cliente lleva objetos metálicos (1) y la puerta NO se
abre (0); en cambio, si el cliente NO lleva objetos metálicos (0), la puerta SI se abre (1).
Función OR
La función OR equivale a la conjunción disyuntiva O. El resultado S de aplicar la función lógica OR,
sobre dos variables a y b es el siguiente: S es cierto si a es CIERTO (1) o si b es CIERTO (1). Cuando
se aplica una operación lógica sobre 2 variables caben 4 combinaciones posibles. Los resultados
de la operación lógica OR, en las cuatro combinaciones posibles de valores dos variables, se
muestran en la tabla de verdad adjunta.
Función OR
Una aplicación práctica sencilla de la operación lógica OR, sería el circuito de señalización
instalado en un comercio, en el que se puede entrar por dos puertas distintas, que avisaría al
dependiente al entrar un cliente por cualquiera de las dos puertas del establecimiento. Si un
cliente entra por la puerta a (1) O si un cliente entra por la puerta b (1), el timbre suena (1). Si no
entra ningún cliente por ninguna de las puertas a (0) ni b (0). El timbre NO suena (0).
Un circuito eléctrico compuesto por dos interruptores en paralelo, cumple la lógica OR. La
lámpara SI se encenderá (1) si se acciona el interruptor a (1) O si se acciona el interruptor b (1) O si
se accionan ambos interruptores. Si no se acciona ningún interruptor, la lámpara NO se
encenderá (0).
Función AND
La función OR equivale a la conjunción disyuntiva O. El resultado S de aplicar la función lógica OR,
sobre dos variables a y b es el siguiente: S es cierto si a es CIERTO (1) o si b es CIERTO (1). Cuando
se aplica una operación lógica sobre 2 variables caben 4 combinaciones posibles. Los resultados
de la operación lógica OR, en las cuatro combinaciones posibles de valores dos variables, se
muestran en la tabla de verdad adjunta.
Función AND
Una aplicación de la operación lógica AND, sería el sistema de control de los pasajeros en un aeropuerto.
Cada pasajero debe pasar por tres controles: ¿Tiene tarjeta de embarque? ¿Tiene pasaporte en regla? ¿No
lleva objetos metálicos peligrosos? Una empleada del aeropuerto comprueba que tiene un billete válido y le
da una tarjeta de embarque; a continuación, un agente de policía verifica que su pasaporte está en regla y no
está en la lista de personas reclamadas y, finalmente, un grupo de agentes comprueban su equipaje de mano
con un escáner y un arco detector de metales. Un pasajero sólo puede embarcar en el avión si tiene tarjeta
de embarque (1), su pasaporte está en regla (1) y no lleva consigo objetos peligrosos (1). En los demás casos
no puede embarcar.
Es fácil construir un circuito eléctrico que cumple la lógica AND: dos interruptores en serie, a y b, por
ejemplo. La lámpara S se encenderá tan sólo si se actúa sobre el interruptor a (1) Y sobre el interruptor b (1).
En todos los demás casos, la lámpara NO se encenderá.
Función NOR
La función NOR equivale a la función OR negada.
El resultado S de aplicar la función lógica NOR, sobre dos variables a y b es el
siguiente: S es CIERTO si a es FALSO (0) y si b es FALSO (0). Los resultados de
la operación lógica NOR, en las cuatro combinaciones posibles de valores dos
variables, se muestran en la tabla de verdad adjunta:
Función NOR
Una aplicación práctica sencilla de la operación lógica NOR, sería el sistema de seguridad de un puente
levadizo. Un detector a se activa cuando entra un vehículo en el puente, por el carril derecho. Otro
detector b se activa cuando entra otro vehículo por el carril contrario. Los motores que accionan el sistema
de elevación del puente sólo deben ponerse en marcha si se da la condición NOR: no hay ningún vehículo
circulando por el carril derecho NI por el carril izquierdo.
Un circuito eléctrico compuesto por dos interruptores normalmente cerrados, en serie, cumple la
lógica NOR: la lámpara SI se encenderá (1) si NO se acciona el interruptor a (0) NI se acciona el
interruptor b (0). Si se acciona cualquiera de los dos interruptores, la lámpara NO se encenderá (0).
Función NAND
La función NAND equivale a la función AND negada.
El resultado S de aplicar la función lógica NAND, sobre dos variables a y b es el
siguiente: S es CIERTO si a es FALSO (0) o si b es FALSO (0) o si son FALSAS ambas variables.
Los resultados de la operación lógica NAND, en las cuatro combinaciones posibles de valores
dos variables, se muestran en la tabla de verdad adjunta:
Función NAND
Una aplicación práctica sencilla de la operación lógica NAND sería, por ejemplo, el control del aire
acondicionado de un edificio inteligente. Supongamos que el edificio está equipado con un detector
crepuscular, que se activa al llegar la noche. Durante el día el detector está desactivado (0) y durante la
noche el detector está activado (1).
Supongamos también que en la entrada del edificio hay un sistema de recuento de personas que se pone
a CERO (0) cuando hay alguien en el edificio y se pone a UNO (1) cuando todo el mundo ha salido ya. ¿Cómo
controlar la puesta en marcha del aire acondicionado? Muy fácil, con un circuito que siga la lógica NAND: el
aire acondicionado se parará cuando sea de noche y no quede nadie en el edificio.
Un circuito eléctrico compuesto por dos interruptores normalmente cerrados, en paralelo, cumple la
lógica NAND: la lámpara SI se encenderá (1) si NO se acciona el interruptor a (0) o si NO se acciona el
interruptor b (0) o si NO se accionan ambos interruptores.