Вы находитесь на странице: 1из 117

DIVISIÓN DE INGENIERÍA MECATRÓNICA

ACADEMIA DE INGENIERÍA MECATRÓNICA

ANTOLOGÍA

Electrónica Digital

Lic. Edgar Hernández García

14 de Junio de 2016
PROPÓSITO DEL CURSO

La Electrónica Digital tiene una relevancia fundamental en la formación de un


Ingeniero Mecatrónico ya que le permite conocer, diseña y aplicar los circuitos
digitales para el control de los diferentes sistemas digitales.

La asignatura reúne los fundamentos matemáticos, leyes y principios de la


electrónica digital. De este modo el curso se compone de siete unidades en las
que se abordan las características específicas del funcionamiento de los sistemas
digitales:
 En la primera unidad se presenta una breve introducción a la electrónica
digital.
 La segunda unidad contiene los tópicos relacionados con la codificación y
los sistemas numéricos, involucrando en estos temas las operaciones
básicas en el sistema binario y las diversas conversiones entre los distintos
sistemas.
 La unidad 3 revisa los fundamentos del álgebra de Boole y sus distintos
axiomas y teoremas. Hacia el final de la unidad se introduce el concepto de
la compuerta lógica.
 En la unidad 4 se estudian las diferentes compuertas lógicas existentes en
los circuitos digitales, así como sus encapsulados y familias lógicas.
 La unidad 5 provee de los fundamentos de los circuitos combinacionales,
que además servirán de base para la comprensión y construcción de
circuitos electrónicos prácticos, tal como pueden ser los dispositivos
sumadores, decodificadores y multiplexores, por mencionar algunos.
 Los fundamentos del diseño secuencial son presentados en la unidad 6, lo
cual es el sustento para la construcción de circuitos con memoria.
 Por último, en la unidad 7, se hace un estudio básico de los conversores
analógico-digital y digital-analógico.

Ésta asignatura requiere que el estudiante posea los conocimientos que se


aportaron en las asignaturas de Programación Básica, Análisis de Circuitos
Eléctricos. Es deseable que el estudiante posea alguna habilidad en la medición
de corriente y voltaje, y que al menos se desarrolle en forma paralela algún curso
de Electrónica Analógica Elemental.

A su vez, ésta materia sirve de sustento a asignaturas posteriores, tales como:


Circuitos Hidráulicos y Neumáticos, Microcontroladores, Controladores Lógico
Programables.
Contenido
1. Fundamentos de sistemas digitales ................................................................................. 6
1.1. Señal digital y señal analógica ................................................................................. 6
1.2. Sistemas digitales y sistemas analógicos ................................................................. 6
1.3. Relación entre los sistemas analógicos y digitales .................................................. 8
2. Código y Sistemas Numéricos...................................................................................... 10
2.1. Sistemas Numéricos ............................................................................................... 10
2.1.1. Sistema numérico decimal .............................................................................. 10
2.1.2. Sistema numérico binario ............................................................................... 11
2.1.3. Sistema numérico octal ................................................................................... 12
2.1.4. Sistema numérico hexadecimal ...................................................................... 12
2.1.5. Conversión entre sistemas numéricos ............................................................ 12
2.2. Operaciones básicas ............................................................................................... 14
2.2.1. Complemento ................................................................................................. 14
2.2.2. Suma ............................................................................................................... 15
2.2.3. Resta ............................................................................................................... 15
2.2.4. Multiplicación................................................................................................. 17
2.2.5. División .......................................................................................................... 17
2.2.6. Representación de números binarios con signo .............................................. 18
2.3. Códigos binarios y alfanuméricos .......................................................................... 19
2.3.1. Código BCD ................................................................................................... 19
2.3.2. Código Reflejado o Gray ................................................................................ 20
2.3.3. Código ASCII ................................................................................................. 20
2.3.4. Código UNICODE ............................................................................................. 21
3. Álgebra de Boole .......................................................................................................... 23
3.1. Postulados y teoremas fundamentales ................................................................... 23
3.1.1. Funciones booleanas ....................................................................................... 27
3.1.2. Función simple y función compuesta ............................................................. 28
3.2. Simplificación de funciones boolenas ................................................................... 28
3.2.1. Minitérminos y maxitérminos ........................................................................ 29
3.2.2. Mapas de Karnaugh ........................................................................................ 30
3.2.3. Método de Quine-McClausky ........................................................................ 32
4. Compuertas Lógicas ..................................................................................................... 35
4.1. Niveles lógicos y compuertas lógicas .................................................................... 35
4.1.1. Compuerta NOT ............................................................................................. 36
4.1.2. Compuerta AND ............................................................................................. 36
4.1.3. Compuerta OR ................................................................................................ 36
4.1.4. Compuerta NAND .......................................................................................... 37
4.1.5. Compuerta NOR ............................................................................................. 37
4.1.6. Compuerta XOR ............................................................................................. 37
4.1.7. Compuerta XNOR .......................................................................................... 38
4.2. Familias Lógicas .................................................................................................... 38
4.2.1. Lógica Transistor-Transistor (TTL) ............................................................... 41
4.2.2. Familia Lógica MOS ...................................................................................... 53
4.2.3. Compatibilidad TTL-CMOS .......................................................................... 58
5. Circuitos Combinacionales ........................................................................................... 60
5.1. Introducción. .......................................................................................................... 60
5.2. Procedimiento de análisis ...................................................................................... 61
5.2.1. Obtención de Funciones Booleanas ................................................................ 61
5.2.2. Obtención de la Tabla de Verdad ................................................................... 62
5.3. Procedimiento de diseño ........................................................................................ 63
5.3.1. Circuitos de salida múltiple ............................................................................ 65
5.4. Circuitos aritméticos .............................................................................................. 69
5.4.1. Semisumador y sumador completo................................................................. 69
5.4.2. Sumador paralelo de n bits ............................................................................. 70
5.4.3. Semirestador y restador completo .................................................................. 71
5.5. Circuitos decodificadores y codificadores ............................................................. 72
5.6. Multiplexores y Demultiplexores .......................................................................... 75
6. Circuitos Secuenciales .................................................................................................. 78
6.1. Multivibradores ...................................................................................................... 78
6.2. Temporizadores ..................................................................................................... 80
6.2.1. CI 555 configuración astable .......................................................................... 80
6.2.2. CI 555 configuración monoestable ................................................................. 81
6.3. El Multivibrador biestable ..................................................................................... 83
6.3.1. El Latch SR..................................................................................................... 84
6.3.2. Latch SR temporizado .................................................................................... 87
6.3.3. El Flip Flop ..................................................................................................... 89
6.4. Circuitos secuenciales ............................................................................................ 92
6.4.1. Tablas descriptivas y diagramas de estado ..................................................... 94
6.4.2. Ecuaciones de estado ...................................................................................... 96
6.5. Fundamentos de Diseño de Circuitos Secuenciales ............................................... 96
6.5.1. Contadores .................................................................................................... 101
6.5.2. Registros ....................................................................................................... 104
6.5.3. Memorias ...................................................................................................... 106
7. Convertidores ............................................................................................................. 109
7.1. Funcionamiento del ADC .................................................................................... 109
7.1.1. El conversor paralelo .................................................................................... 109
7.1.2. Conversor de rampa simple .......................................................................... 110
7.1.3. Conversor de doble rampa ............................................................................ 110
7.1.4. El conversor de aproximaciones sucesivas ................................................... 112
7.2. Funcionamiento del DAC .................................................................................... 113
7.2.1. Convertidor D/A de resistencias ponderadas................................................ 114
7.2.2. Convertidor D/A por modulación de ancho de impulso ............................... 115
Bibliografía ......................................................................................................................... 117
1. Fundamentos de sistemas digitales
En ésta unidad el estudiante:
 Conoce la diferencia entre la electrónica analógica y la electrónica digital, sabiendo
cuáles son sus ventajas y desventajas.

1.1. Señal digital y señal analógica


Antes de poder hablar de sistemas, primero debemos conocer el concepto de señal, que, en 6
el área de la Física Aplicada, es la variación de una magnitud medido por supuesta con
algún parámetro, por ejemplo: corriente, voltaje, luz, calor.
De entre las clasificaciones de señales que se podrían hacer, tenemos dos de particular
relevancia en nuestro estudio:

 Señal Analógica: Señal generada por algún fenómeno


electromagnético y que se puede representar mediante una
función matemática continua y dependiente del tiempo, con
amplitud y periodo variable.
 Señal Digital: Señal generada por algún fenómeno
electromagnético y en la que cada segmento codifica valores
que representan magnitudes discretas.

Figura 1.1. Señales

1.2. Sistemas digitales y sistemas analógicos


Cuando se considera que una señal además de representar una magnitud física, implica el
traslado de información útil (es decir, que sea factible interpretarse), entonces hablamos de
un sistema. Así entonces, un sistema analógico emplea señales analógicas en el traslado de
la información, mientras que los sistemas digitales emplean señales analógicas en el
traslado de la información.

Sistema analógico Sistema digital


Figura 1.2. Ejemplos de Sistemas
A los efectos de diferenciar entre un sistema digital de un sistema analógico supongamos
el sistema de la figura 1.3, donde un sistema electrónico indica el nivel de agua dentro de
un tanque, en este caso el nivel de agua está determinado por el potenciómetro (R), este
valor varia en forma continua a medida que el flotante sube o baja acompañando el nivel
del agua y hace mover el cursor del potenciómetro, el Medidor muestra en una escala
continua el nivel del agua en el tanque, constituyendo esto un sistema analógico.

Figura 1.3. Sistema analógico para indicar el nivel del agua

Si el indicador de nivel lo construyésemos según el esquema de la figura 1.4, la


información del nivel de agua en el tanque no varía en forma continua sino que asume
valores discretos, encendiéndose un determinado led según el nivel de agua en el tanque,
constituyendo esto un sistema digital.

Figura 1.4. Sistema digital para indicar el nivel de agua

Como se puede apreciar el sistema digital no representa todos los valores posibles que
puede tomar el nivel del agua en el tanque pero puede diseñarse un sistema tan preciso que
represente todos los niveles o valores que el usuario del sistema desee conocer.

Uno de los principales problemas de los sistemas analógicos es el ruido eléctrico, que se
pueden entender como perturbaciones que modifican el valor de la señal. En las señales
digitales, el ruido solo afecta al sistema si se supera el margen de tensión entre un nivel y
otro (figura 1.5)

Figura 1.5. El ruido en las señales.

1.3. Relación entre los sistemas analógicos y digitales


Los sistemas electrónicos procesan la información que les llega a sus entradas. En general,
la información que llega a estas entradas proviene de magnitudes físicas del mundo real en
el que vivimos. Estas magnitudes son temperatura, presión, longitud, velocidad, tensión,
intensidad, etc. que tienen un carácter continuo o analógico. La utilización de alguna de
estas magnitudes dependerá de la aplicación específica para la que esté diseñando mi
sistema electrónico.

Figura 1.6. Un sistema analógico transfiere información a un sistema digital.


Es evidente que los sistemas digitales tienen infinitas aplicaciones y se pueden encontrar,
por ejemplo, en el diseño de computadores, instrumentación, control de procesos
industriales, control de semáforos, electrónica de automóviles (ABS, encendido electrónico,
etc.), simuladores para pilotos de aviones, aplicaciones en medicina, electrónica de
consumo (sonido y vídeo digital, TV, PC, telefonía móvil digital, etc.).

9
2. Código y Sistemas Numéricos
En ésta unidad el estudiante:
 Conoce y entiende los sistemas binarios, octal y hexadecimal; las conversiones entre
ellos y realiza operaciones básicas en los diferentes sistemas.
 Conocer diferentes códigos para representar información en los sistemas digitales.

2.1. Sistemas Numéricos 10


Los sistemas de numeración son conjuntos de dígitos usados para representar cantidades.
La cantidad de símbolos que utiliza el sistema para representar dichas cantidades define lo
que se denomina base. Así se tenemos los sistemas de numeración decimal, binario, octal,
hexadecimal, cuyas bases son: diez, dos, ocho, dieciséis, respectivamente.
Una cantidad (magnitud) se representa por una cadena de elementos, y cada elemento de la
cadena tiene un valor asociado a la posición que ocupa dentro de la cadena, estos sistemas
de numeración se llaman también sistemas de numeración posicionales. Así, la cantidad 33
está representada por una cadena de dos elementos, el tres. En ésta cadena el valor del ‘3’
de la derecha no es igual al valor del elemento ‘3’ de la izquierda:
33 = 3 ∙ 101 + 3 ∙ 100

2.1.1. Sistema numérico decimal


El sistema de numeración decimal es el más usado, tiene como base el número 10, o sea
que posee 10 dígitos (o símbolos) diferentes para representar cualquier cantidad numérica:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
La posición de cada dígito en un número decimal indica la magnitud de la cantidad
representada y se le puede asignar un ‘peso’. Los ‘pesos’ para los números enteros son
potencias de 10, que aumentan de derecha a izquierda comenzando por 100 = 1.

Por ejemplo, el número decimal 72410 puede ser representado como:


72410 = 7 ∙ 102 + 2 ∙ 101 + 4 ∙ 100
Para los decimales los pesos son potencias de 10 que aumentan negativamente hablando de
derecha a izquierda comenzando por 10–1
0.2310 = 0 ∙ 100 + 2 ∙ 10−1 + 3 ∙ 10−2
Todo número entero N representado en cualquier base, puede descomponerse de modo
único en la forma:
𝑁 = 𝐴𝑛 𝑏 𝑛 + 𝐴𝑛−1 𝑏 𝑛−1 + … + 𝐴1 𝑏1 + 𝐴0 𝑏 0 + 𝐴−1 𝑏 −1 + 𝐴−2 𝑏 −2 + …
donde:
𝑏 es la base del número 𝑁 representado en decimal.
𝐴𝑖 , dígito i-ésimo del número, 𝑖 = 0,1,2, . . . . , 𝑘.
𝑛 − 1: es la cantidad de dígitos enteros que tiene el número.
Ahora nos podríamos preguntar por qué tenemos como sistema de numeración usual al
sistema decimal, por qué es el más usado por todo tipo de gente, a qué se debe que en todo
el mundo sea el sistema utilizado por las personas (las máquinas no usan el sistema
decimal, sino el binario). La razón es que porque tenemos 10 dedos. Intuitivamente,
utilizábamos nuestra elemental calculadora: las manos, para contar, realizar sumas y restas
sencillas, etc.

2.1.2. Sistema numérico binario


El sistema numérico binario es un sistema posicional de base 2, es decir que posee dos
símbolos para representar cualquier cantidad numérica: 0 , 1.
El equivalente decimal de un número binario se puede obtener a partir del polinomio antes 11
mencionado, de tal forma que
110102 = 1 ∙ 24 + 1 ∙ 23 + 0 ∙ 22 + 1 ∙ 21 + 0 ∙ 20 = 2610

Ejercicio 2.1: Convertir a decimal el número 101001012


101001012 = 1 ∙ 27 + 0 ∙ 26 + 1 ∙ 25 + 0 ∙ 24 + 0 ∙ 23 + 1 ∙ 22 + 0 ∙ 21 + 1 ∙ 20 = 16510
Ejercicio 2.2: Convertir a decimal el número 11.0112
11.0112 = 1 ∙ 21 + 1 ∙ 20 + 0 ∙ 2−1 + 1 ∙ 2−2 + 1 ∙ 2−3 = 3.37510

Los dígitos de un número binario se llaman bits. Bit es el acrónimo de Binary digit (dígito
binario).
La razón de ser del sistema binario, es que la información que se manipula dentro de un
sistema digital se hace de acuerdo a señales eléctricas. Mediante una señal eléctrica alta, se
representa el valor ‘1’ y mediante una señal eléctrica baja se representa el ‘0’.
Existen diferentes formas de codificar la información en el sistema binario, la más usual es
la codificación en binario natural, en esta forma de representación cada número es
representado por un código de 𝑛 bits, En la tabla 1.1 se presentan los 16 primeros números
en los sistemas numéricos más usados, entre ellos el binario natural

Tabla 2.1. Primeros 16 números en distintos sistemas

Decimal Binario Octal Hexadecimal


0 0000 00 0
1 0001 01 1
2 0010 02 2
3 0011 03 3
4 0100 04 4
5 0101 05 5
6 0110 06 6
7 0111 07 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
2.1.3. Sistema numérico octal
El Sistema Numérico Octal consta de 8 símbolos para representar cualquier cantidad
numérica:
0 ,1 ,2 ,3 ,4 ,5 ,6 ,7

Tal como puede apreciarse en el tabla 1.1, éste sistema permite abreviar los 3 dígitos
binarios usados en la representación de los números del 0 al 7. Como se verá más adelante,
éste hecho facilita la conversión de números entre ambos sistemas.
12
Para saber qué número decimal corresponde a una cantidad en el sistema octal se usan las
mismas reglas de los sistemas numéricos posicionales:
123.48 = 1 ∙ 82 + 2 ∙ 81 + 3 ∙ 80 + 4 ∙ 8−1 = 83.510

2.1.4. Sistema numérico hexadecimal


El Sistema Numérico Hexadecimal consta de 16 símbolos para representar cualquier
cantidad numérica.
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 𝐴, 𝐵, 𝐶, 𝐷, 𝐸, 𝐹.

Donde 𝐴 equivale a 10 en base 10, 𝐵 equivale a 11 en base 10, 𝐶 equivale a 12 en base 10,
𝐷 equivale a 13 en base 10, 𝐸 equivale a 14 en base 10, 𝐹 equivale a 15 en base 10.

En este caso el sistema hexadecimal permite abreviar 4 dígitos del sistema binario.

De este modo:
𝐴12. 𝐵16 = 10 ∙ 162 + 1 ∙ 161 + 2 ∙ 160 + 11 ∙ 16−1 = 2578.687510

2.1.5. Conversión entre sistemas numéricos


Como ya se dijo, podemos pasar de una representación de una magnitud en un sistema
numero b a un sistema de numeración de base 10 por aplicación del polinomio

N = An bn + An-1 bn-1 + … + A1 b1 + A0 b0 + A-1 b-1 + A-2 b-2 + …

Ejercicio 2.3. Convertir el número 111012 a base 10.


= 1.20 + 0.21 + 1.22 + 1.23 + 1.24
= 1 + 4 + 8 + 16 = 2910
Ejercicio 2.4. Convertir el número binario 1111100_2 a base 10
= 1.26 +1.25 + 1.24 + 1.23 + 1.22 + 0.21 + 0.20
= 64 + 32 + 16 + 8 + 4 = 12410

Para cambiar de la base 10 a cualquier otra base:


 Parte entera: Se divide por la base sucesivamente, tomando los restos en orden
inverso.
 Parte decimal: Multiplicar el número por la base y tomar la parte entera, con el resto
se repite el proceso hasta obtener la cantidad de decimales deseados.

Ejercicio 2.5. Convertir el número 2910 en su equivalente en binario.


El número obtenido es
(0 1 1 1 0 1) 2 = 29 10
13
Notar que el número resultante se toma desde
el último resto hacia arriba, escribiéndose en
ese orden de derecha a izquierda.
Ejercicio 2.6. Convertir el número decimal 4573 al sistema hexadecimal

El número obtenido es
(4 5 7 3) 10 = 11DD16

Ejercicio 2.7. Convertir el número decimal 1036 al sistema octal

El número obtenido es
(1 0 3 6) 10 = 20148

Ejercicio 2.8. Convertir el número decimal 133.45 al sistema octal.

El número obtenido es
(133.45)10 ≅ 205.3468

Notar que la conversión de decimal a la base


deseada no necesariamente es exacta. Esto
explica el épsilon de los sistemas
informáticos.

La conversión entre los sistemas de base 2, 8 y 16 es casi directa, debido a que los dos
últimos son múltiplos del primero. De este modo:

 Paso de la base 2 a la base 2^𝑛: se agrupan los bits de n en n, de derecha a izquierda


 Paso de la base 2𝑛 a la base 2: se expande cada digito por los n bits
correspondientes
Ejercicio 2.9. Convertir el número binario 011100000001.11000100: (a) a octal; (b) a
hexadecimal.
(a) Octal: 011 100 000 001 . 110 001 000 = (3 4 0 1 . 6 1 0)8
(b) Hexadecimal: 0111 0000 0001 . 1100 0100 = (7 0 1 . C 4)16

2.2. Operaciones básicas


Las operaciones aritméticas con números de base b ≠ 10 siguen las mismas reglas que los
números decimales. Sólo debe tenerse especial cuidado en emplear solo dígitos admisibles 14
para la base que se trabaja.

2.2.1. Complemento
El complemento es una operación muy
importante en el entendimiento de la electrónica
digital que tiene su sustento en la Teoría de
Conjuntos: dado un conjunto universo U de
elementos, y un conjunto A formado por algunos
de los elementos de U, el complemento de A es
el conjunto formado por todos los elementos del
universo que no pertenecen al conjunto A, y se Figura 2.1. Complemento de un
denota por 𝐴′ o 𝐴𝑐 . conjunto
En el caso de los sistemas numéricos tenemos dos tipos de complementos:

Complemento a la base menos uno o complemento radical disminuido, dado un numero


𝑁 en base 𝑏 de 𝑛 dígitos, el complemento radical disminuido se define como:
(𝑏 𝑛 − 1) − 𝑁

Ejercicio 2.10. El complemento radical disminuido o complemento a 9 de 1238910 será:


105  1 12389  99999 12389  87610
Ejercicio 2.11. El complemento radical disminuido o complemento a 1 del número 𝑁 =
10110012 es:
(27 − 1) − 1011001 = 1111111 − 1011001 = 0100110

Complemento a la base o complemento radical, definido por la operación 𝑏𝑛 – 𝑁, que


equivale a sumar al complemento radical disminuido de un número:
𝑏 𝑛 − 𝑁 = (𝑏 𝑛 − 1) − 𝑁 + 1

Ejercicio 2.12. Obtener el complemento radical de 1238910 .


87610𝑐9 + 1 = 87611𝑐10
Ejercicio 2.13. Obtener el complemento a 2 de 10110012 .
0100110𝑐1 + 1 = 0100111𝑐2
En los ejemplos anteriores se supuso que el número N era entero, si N tiene punto decimal
este debe eliminarse en forma temporal para poder complementar, la coma se devuelve
después en la misma posición relativa.

2.2.2. Suma
Se sigue el algoritmo de siempre: dígito menos significativo se opera primero y el más
significativo último, considerando los acarreos correspondientes cuando el número
resultante tiene más de un dígito. 15

Ejercicio 2.14. Realizar la operación 1012 + 0012 =?


 En el caso binario resulta útil
construir una tabla para la suma de
un dígito.
a b a+b Acarreo
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Ejercicio 2.15. Resolver 3𝐴𝐹16 + 23𝐶16 =?

Como (F + C)16 es (15 + 12)10 = 2710 = 1B16


Como (1+A+3)16 es (1+10+3)10 = 1410 = E16

2.2.3. Resta
El algoritmo de la resta es el mismo del sistema decimal, incluyendo aquella idea intuitiva
del ‘préstamo’.

Ejercicio 2.16. Realizar la operación 1012 − 0112


 De nuevo, resulta útil construir una
tabla para la resta de un dígito.
a b a-b Acarreo
0 0 0 0
0 1 1 1
1 0 1 0
1 1 0 0

Desafortunadamente ésta forma de restar tiene dos inconvenientes: primero, en cifras de


varios dígitos y estando en un sistema numérico distinto del decimal tendemos a cometer
errores debido al hecho de tener que pedir préstamos y determinar el guarismo
correspondiente; en segundo término, cuando se implementa en un circuito electrónico
requiere de su propio arreglo, lo cual es poco práctico.
Si los números a restar se consideran sin signo (ambos positivos) se puede utilizar la regla
del complemento radical disminuido o la regla del complemento radical.
Resta con complemento radical: La resta de dos números sin signo (M–N) puede realizarse
de la siguiente forma:
Sumar a M el complemento a la base de N.
Si M ≥ N la suma producirá acarreo final 𝑏𝑛 que se desecha, lo que queda es el valor
de M – N.
Si M < N la suma no producirá acarreo final y es igual a 𝑏𝑛 − (𝑁– 𝑀), que es el
complemento a la base b de N – M. Para obtener la respuesta calcúlese el complemento a b 16
de la suma y coloque el signo negativo adelante.
Resta con complemento radical disminuido: La resta de dos números sin signo (𝑀– 𝑁)
puede realizarse de la siguiente forma:
I. Sumar a M el complemento a la base menos uno de N.
II. Verificar el acarreo final de la suma:
a. De ser igual a 1, se suma al dígito menos significativo de la primera suma, lo
cual genera el número resultante, el cual es positivo.
b. De ser igual a 0, tómese el complemento a la base menos uno de la suma y
agréguese un signo menos, el resultado es un número negativo.

Ejercicio 2.17. Use el complemento a la base disminuida para calcular 7253210 − 325010

Ejercicio 2.18. Use el complemento a la base disminuido para calcular 3218 − 5018

Compruebe el resultado haciendo la resta en decimal

Resta con complemento radical: La resta de dos números sin signo (𝑀– 𝑁) puede
realizarse de la siguiente forma:
I. Sumar a M el complemento a la base de N.
II. Verificar el acarreo:
a. Si es 1, se deshecha y el resultado es el resto de los dígitos sumandos.
b. Si es 0, entonces calcúlese el complemento a 𝑏 de la suma y coloque el
signo negativo adelante.

Ejercicio 2.19. Usando el complemento radical calcule 7253210 – 325010 .


Notar que el acarreo se descarta 17
Ejercicio 2.20. Usando el complemento radical calcule 325010 − 7253210 .

Ejercicio 2.21. Dados 𝑀 = 10101002 y 𝑁 = 10000112 obtenga 𝑀 − 𝑁 y 𝑁 − 𝑀 por


complemento a 2.

2.2.4. Multiplicación
Mismas reglas que en el algoritmo de base 10
Ejercicio 2.22. Multiplicar 10012 por 10112 .
Considere la tabla de multiplicar binaria
a b 𝒂∙𝒃
0 0 0
0 1 1
1 0 1
1 1 0

2.2.5. División
En este caso sólo revisamos la división binaria en el entendido de que finalmente es el
medio fundamental en los sistemas digitales, sin embargo, y como se ha dicho, el algoritmo
no varía del que conocemos desde la infancia.
Para el caso binario el proceso en este caso resulta más simple que el sistema decimal
puesto que cuando se verifica cuantas veces el divisor “cabe en” el dividendo, solo hay dos
posibilidades ‘0’ o ‘1’.

Ejercicio 2.23. Realizar la división de 010011102 entre 01102

18

2.2.6. Representación de números binarios con signo


Las magnitudes en los sistemas digitales se representan a través de una combinación de
bits, en un sistema de 6 bits podríamos representar cantidades que van desde 0000002 a
1111112 (010 a 6310). Si queremos representar números negativos debemos valernos de
algún medio de representación para el signo. Esto se lleva a cabo agregando un bit para
representar el signo, de tal forma que por convención tal como ‘0’ equivales a signo ‘+’ y
‘1’ equivale a signo ‘-‘, es sistema entonces que en nuestro sistema de seis bits las
magnitudes que podemos representar van desde –31 a +31.
Por ejemplo:

El bit de signo se usa para indicar si un número es positivo o negativo, el resto de los bits se
usa para representar la magnitud en forma binaria. Para los números negativos, no obstante
existen tres formas de representar la magnitud:

 Forma de magnitud verdadera. La magnitud se representa en binario natural


 Forma de complemento a 1. Cuando se representa un número negativo en éste
formato, el bit de signo se conserva en ‘1’ y la magnitud se complementa a 1.
 Forma de complemento a 2. En este caso la magnitud se complementa a 2.

Así por ejemplo:


+5710 = 0 1110012 Un número positivo, el bit de signo es cero
−5710 = 1 1110012 Número negativo en signo magnitud verdadera
−5710 = 1 0001102 Número negativo en signo complemento a 1
−5710 = 1 0001112 Número negativo en signo complemento a 2
Las tres formas de representación se utilizan en los sistemas digitales, algunos almacenan la
información en forma de magnitud verdadera y la transforman a forma de complemento
antes de realizar una operación aritmética.

Ejercicio 2.24. los siguientes números son números binarios en complemento a dos,
determine el valor decimal: a) 011002; b) 110102; y, c) 100012.
a) Como el signo es + la magnitud esta expresada en forma verdadera, entonces
011002 = +1210 19
b) Si complementamos la magnitud, C2 = (10102)’ = 01102, y dado que el signo se
conserva tendremos que 101102 = -610.
c) Si complementamos la magnitud C2 = (00012)’ = 11112 y como el signo se
conserva tendremos que 111112 = -1510

2.3. Códigos binarios y alfanuméricos


La codificación es en pocas palabras la abstracción simbólica de un objeto. En este caso los
números son precisamente un sistema de codificación que nos permiten representar
cantidades. Ahora conocemos el sistema numérico binario, que de hecho es llamado
también sistema binario natural, porque la codificación sigue el ordenamiento de los
números naturales, sin embargo, existen otros sistemas de códigos binarios cuya existencia
es motivada por las utilidades prácticas que pueden tener al desarrollar tecnología digital.

2.3.1. Código BCD


El código BCD (Binary Code Decimal, decimal codificado en binario) utiliza 4 dígitos
binarios para representar un dígito decimal (0 al 9), observar la tabla 2.1.
Tabla 1.2. Código BCD

Por ejemplo, la codificación en BCD del número decimal 59237 es:


Decimal: 5 9 2 3 7
BCD: 0101 1001 0010 0011 0111
2.3.2. Código Reflejado o Gray
Pertenece a una clase de códigos llamado de cambio mínimo en los cuales solo cambia un
bit cuando se pasa de una combinación otra. También es llamado código cíclico, porque en
un conjunto elegido de bits para formar el sistema, el primero y el último código también
varían en un solo bit.
Tabla 2.3. Código Gray

Decimal Código Gray


0 0000 20
1 0001
2 0011
3 0010
4 0110
5 0111
6 0101
7 0100
Este código se utiliza generalmente en dispositivos de entrada y salida, y especialmente en
aquellas situaciones donde se hace necesario efectuar controles sobre el sistema por su
facilidad de auto detección de errores.

2.3.3. Código ASCII


En general los sistemas digitales deben poder reconocer código que representen no solo
números sino también letras y caracteres especiales. Estos códigos son llamados códigos
alfanuméricos.
Un conjunto completo de caracteres incluye:
26 letras minúsculas
+ 26 letras mayúsculas
10 cifras numéricas
~25 caracteres especiales
87 caracteres diferentes

Para representar 87 caracteres diferentes se requerirán 7 bits ya que con 7 bits podemos
representar 27 = 128 combinaciones posibles.
El código alfanumérico más conocido es el código ASCII (Código Estándar
Estadounidense para el Intercambio de Información) realizado sobre una longitud de 8 bits,
ya que, en el momento de su creación, se incluyeron además comandos abreviados por
carácter para su utilización desde la línea de comandos o consola del sistema operativo.
Tabla 2.4. Código ASCII

21

2.3.4. Código UNICODE


El término Unicode alude a un sistema estándar de caracteres creado para permitir un fácil
manejo de la informática, visualización y transmisión de escritos de diversos lenguajes y
disciplinas técnicas, pero también incluye textos clásicos de lenguas ya muertas. En otras
palabras y de una manera más específica el Unicode es un formato común de caracteres,
que dentro del cual se encuentran cada uno de los caracteres de teclado de una
computadora. De acuerdo a lo plasmado el término deriva de los tres objetivos perseguidos
que son universalidad, unicidad y uniformidad.
22

Figura 2.2. Una vista a un fragmento del código UNICODE


3. Álgebra de Boole
En ésta unidad el estudiante:
 Conoce y aplica los postulados y teoremas fundamentales del álgebra booleana.
 Representa las formas canónicas SOP y POS. Reduce funciones booleanas
utilizando los teoremas del álgebra de Boole.
 Simplifica funciones booleanas mediante los métodos de mapas de Karnaugh y
McClausky. 23

3.1. Postulados y teoremas fundamentales


El Álgebra de Boole surgió como un intento de incrustar las técnicas algebraicas para tratar
expresiones de la Lógica proposicional.
Empecemos entonces comprendiendo los estados lógicos Verdadero y Falso representados
numéricamente mediante el 1 y el 0. Vistos desde el punto de vista eléctrico podemos
interpretar como los estados de encendido-apagado de un foco (figura 3.1). Cuando el
circuito se cierra el foco se enciende y representa el estado lógico 1 o Verdadero; en caso
contrario, si el circuito está abierto, entonces tenemos el estado lógico 0 o Falso.

Figura 3.1. Representación eléctrica de los estados lógicos.

En éste orden de ideas, definimos al Álgebra de Boole como el conjunto de elementos ‘b’
que puede asumir dos valores posibles (0 o 1) y que están relacionados por dos operaciones
binarias suma (+) y producto (*) lógico, y que además cumple con conjunto de postulados.

Figura 3.2. Operaciones lógicas fundamentales.


De la figura 3.2 podemos obtener las tablas para la suma y producto lógico.

Tabla 3.1. Tablas de Operaciones Lógicas básicas.


Suma Lógica Producto Lógico
a b a+b a b a∙b
0 0 0 0 0 0
0 1 1 0 1 0
1 0 1 1 0 0
24
1 1 1 1 1 1

Los postulados son los siguientes:


Postulado No 1. Las operaciones fundamentales son conmutativas.
a + b = b+ a

a∙b = b∙a

Postulado No 2. Existe el neutro aditivo, el ‘0’; y el neutro multiplicativo, el ‘1’.


a+0=a
a∙1=a

Postulado No. 3. Cada operación es distributiva respecto de la otra


a∙(b+c) =a∙b+a∙c

a + ( b ∙ c ) = (a+b) ∙ (a+c)

La primera ecuación distributiva es bien conocida en el álgebra ordinaria y su


interpretación no debería presentar ninguna dificultad.
Este postulado indica que podemos factorizar una expresión, es decir que si tenemos una
expresión de dos o más términos y estos términos tienen una (o más) variables en común,
estas variables pueden expresarse como factor común.
Ejemplos:
a) 𝑎𝑏𝑐 + 𝑎𝑏̅𝑐 + 𝑎𝑏𝑐̅ = 𝑎 ∙ (𝑏𝑐 + 𝑏̅𝑐 + 𝑏𝑐)̅
b) (𝑎 + 𝑏) ∙ (𝑎 + 𝑐) = 𝑎 + (𝑏 ∙ 𝑐)
Postulado No. 4. Para cada elemento 𝑎 del álgebra de Boole existe un elemento 𝑎̅ tal que:
𝒂+𝒂 ̅=𝟏 25

̅=𝟎
𝒂∙𝒂

Los postulados cumplen además la Ley de Dualidad: cualquier expresión o identidad en el


Álgebra de Boole tiene su expresión dual que se constituye por el complemento de las
variables involucradas, el complemento de las constantes (0 por 1 y viceversa), y
cambiando sumas por productos (y viceversa).
Ejemplos:

𝑎+0=𝑎 𝑎 + (𝑏 ∙ 𝑐) = (𝑎 + 𝑏) ∙ (𝑎 + 𝑐)
Tiene como expresión dual: Tiene como expresión dual:
𝑎̅ ∙ 1 = 𝑎̅ 𝑎̅ ∙ (𝑏̅ + 𝑐̅) = (𝑎̅ ∙ 𝑏̅ ) + (𝑎̅ ∙ 𝑐̅)
Con estos postulados se pueden comprobar los siguientes teoremas que complementan los
fundamentos del Álgebra de Boole

. Teorema 1: Para cada elemento del álgebra se verifica que a + 1 = 1. Por dualidad se
puede inferir que 𝑎 ∙ 0 = 0.
Demostración:

Teorema 2: Para cada elemento del álgebra se verifica que: 𝑎 + 𝑎 = 𝑎. Por dualidad 𝑎 ∙
𝑎 = 𝑎.
Demostración:

Teorema 3: Las operaciones suma y producto son asociativas


𝑎 + (𝑏 + 𝑐) = (𝑎 + 𝑏) + 𝑐 = 𝑎 + 𝑏 + 𝑐, y por dualidad,
( 𝑎 ∙ 𝑏 ) ∙ 𝑐 = 𝑎 ∙ ( 𝑏 ∙ 𝑐).
Demostración de la asociatividad de la suma mediante una tabla. 26

Teorema 4: Para cada elemento del Álgebra de Boole se demuestra que


𝑎[(𝑎 + 𝑏) + 𝑐] = 𝑎
𝑎 + [(𝑎𝑏)𝑐] = 𝑎
Demostración de la primera igualdad:
𝑎[ (𝑎 + 𝑏) + 𝑐 ] = 𝑎 (𝑎 + 𝑐) + 𝑎𝑐 = 𝑎 + 𝑎𝑐 = 𝑎

Teorema 5: Llamada ley de Absorción, para cualquier par de elementos del Álgebra de
Boole se demuestra que
𝑎 + (𝑎𝑏) = 𝑎
𝑎 (𝑎 + 𝑏) = 𝑎
Demostración:

Teorema 6: Para todo complemento de a se verifica que 𝑎̅ = 𝑎, llamada ley Involutiva o


ley de la doble negación.
Teorema 7: Leyes de De Morgan, para cada par de elementos del Álgebra de Boole se
demuestra que:
̅̅̅̅̅̅̅
𝑎 + 𝑏 = 𝑎̅ ∙ 𝑏̅
̅̅̅̅̅̅
𝑎 ∙ 𝑏 = 𝑎̅ + 𝑏̅
Demostración: en este caso no es simple, por lo que lo vamos desglosando:
Propiedad Distributiva
Propiedad Conmutativa
Propiedad asociativa 27
Postulado 4
Teorema 1
(3)
Si consideramos a la expresión (3) de la forma: 𝑧 + 𝑧̅ = 1
Donde 𝑧 = 𝑎 + 𝑏 y 𝑧̅ = 𝑎̅ ∙ 𝑏̅
Entonces podemos considerar que 𝑎̅ ∙ 𝑏̅ es el complemento de 𝑎 + 𝑏, es decir,
𝑎̅ + 𝑏̅ = 𝑎
̅̅̅̅̅̅̅
+𝑏

Ejercicios 3.1. Simplificar la expresión:


a) 𝑎𝑏̅𝑑 + 𝑎𝑏̅𝑑̅ =?
Solución:

b) (𝑎̅ + 𝑏)(𝑎 + 𝑏) =?
Solución:
(𝑎̅ + 𝑏)(𝑎 + 𝑏) = 𝑎̅𝑎 + 𝑎̅𝑏 + 𝑏𝑎 + 𝑏𝑏
= 0 + 𝑎̅𝑏 + 𝑎𝑏 + 𝑏
= 𝑏(𝑎̅ + 𝑎 + 1) = 𝑏 ∙ 1
=𝑏
c) ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
(𝑎̅ + 𝑐)(𝑏 + 𝑑̅ ) =?
Solución:
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
(𝑎̅ + 𝑐)(𝑏 + 𝑑̅) = (𝑎 ̅̅̅̅̅̅̅ ̅̅̅̅̅̅̅
̅ + 𝑐 ) + (𝑏 + 𝑑̅ )
= 𝑎̅ 𝑐̅ + 𝑏 𝑑̅
= 𝑎 𝑐̅ + 𝑏𝑑

3.1.1. Funciones booleanas


Una variable binaria ‘𝑏’ puede tomar el valor 0 o 1. Luego, una función de Boole es una
expresión formada con variables binarias y operadores booleanos (los correspondientes a la
suma y producto lógico y la negación). La notación es la misma que se usa en el cálculo, así
𝐹(𝑎, 𝑏, 𝑐) representa una función cuyas variables binarias son 𝑎, 𝑏, 𝑐, las cuales por
consecuencia cumplen con los postulados y teoremas del Álgebra de Boole. La función en
cuestión devuelve valores binarios en función de los valores de las variables, por ejemplo,
la función 𝐹(𝑎, 𝑏) = 𝑎𝑏̅ devuelve los valores mostrados en la siguiente tabla.

Tabla 3.2. Un ejemplo de los valores de una función.


𝒂 𝒃 𝑭(𝒂, 𝒃)
0 0 0
0 1 0 28
1 0 1
1 1 0

Una función Booleanas se puede escribir en de varias maneras cuando se expresa a través
de su forma algebraica, sin embargo, la llamada forma estándar emplea términos en forma
de sumas (𝑎 + 𝑏 + 𝑐) y términos de productos (𝑎 𝑏 𝑐). Por ejemplo:

3.1.2. Función simple y función compuesta


Una función booleana está en su forma compuesta cuando la expresión incluye los términos
como una combinación sumas y productos de las variables, sin ninguna regla en particular,
incluyendo términos que podrían ser redundantes. Por ejemplo, la función
𝐹(𝑎, 𝑏, 𝑐) = 𝑎𝑏̅𝑐̅ + 𝑏̅𝑐̅ + 𝑎𝑏̅
está en una forma compuesta, ya que, por la teoría del Álgebra de Boole, algunos de los
términos podrían reducirse,
𝐹(𝑎, 𝑏, 𝑐) = 𝑎𝑏̅𝑐̅ + 𝑏̅𝑐̅ + 𝑎𝑏̅ = (𝑎 + 1)𝑏̅𝑐̅ + 𝑎𝑏̅ = 𝑏̅(𝑎 + 𝑐̅)
El término de la última igualdad es una expresión más breve de la misma función, por lo
que es una función en su forma simple.

3.2. Simplificación de funciones boolenas


Se llaman términos canónicos, a todo término de producto o de suma que contenga
absolutamente a todas las variables que intervienen en la función. Por ejemplo, en la
expresión:

el primero y segundo sumando están en su forma canónica, mientras que el tercero no lo


está. Cuando todos los términos están en su forma canónica se tiene una función canónica.
En nuestro ejemplo, la forma canónica sería:

𝐹(𝑎, 𝑏, 𝑐) = 𝑎𝑏̅𝑐̅ + 𝑎𝑏𝑐 + 𝑎𝑏̅(𝑐 + 𝑐̅) = 𝑎𝑏̅𝑐̅ + 𝑎𝑏𝑐 + 𝑎𝑏̅𝑐


Además, si la función está en su forma canónica tiene 2𝑛 términos, siendo 𝑛 la cantidad de
variables binarias de las cuales depende dicha función. Lo cual a su vez nos permite
construir la tabla de verdad correspondiente:

𝒂 𝒃 𝒄 F Decimal
0 0 0 0 0
0 0 1 0 1
0 1 0 1 2
0 1 1 3 29
0
1 0 0 1 4
1 0 1 1 5
1 1 0 0 6
1 1 1 0 7

3.2.1. Minitérminos y maxitérminos


Una función canónica en forma de sumas de productos se puede expresar en forma
compacta usando una notación de sumatoria y cambiando los valores de las variables por 0
si están negadas y 1 si no lo están, e interpretando el valor binario que se forma al
considerar todos los dígitos del término. En este sentido el término 𝑎𝑏𝑐̅ al usar ésta regla
equivale a 110 y por lo tanto su valor numérico sería 6. Usando estas ideas:
𝐹(𝑎, 𝑏, 𝑐) = 𝑎̅𝑏𝑐̅ + 𝑎𝑏̅𝑐̅ + 𝑎𝑏̅𝑐 = ∑(2,4,5)
Llamaremos minitérminos (en algunos textos, mintérminos) a las funciones canónicas
expresadas como sumas de productos.
La misma función se puede expresar canónicamente como productos de sumas si usamos
las leyes de De Morgan.
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝐹𝑚 (𝑎, 𝑏, 𝑐) = 𝑎̅𝑏𝑐̅ + 𝑎𝑏̅𝑐̅ + 𝑎𝑏̅𝑐 = (𝑎̅𝑏𝑐̅ + 𝑎𝑏̅𝑐̅ + 𝑎𝑏̅𝑐) =
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝑎̅𝑏𝑐̅ ∙ ̅̅̅̅̅
= ̅̅̅̅̅ 𝑎𝑏̅𝑐̅ ∙ ̅̅̅̅̅
𝑎𝑏̅𝑐 = (𝑎 + 𝑏̅ + 𝑐)(𝑎̅ + 𝑏 + 𝑐)(𝑎̅ + 𝑏 + 𝑐̅)
La última expresión representa a la función como producto de sumas, pero complementado,
para compensarlo complementamos a ambos lados:
𝐹𝑚̅(𝑎, 𝑏, 𝑐) = (𝑎 + 𝑏̅ + 𝑐)(𝑎̅ + 𝑏 + 𝑐)(𝑎̅ + 𝑏 + 𝑐̅)
𝐹𝑀 (𝑎, 𝑏, 𝑐) = ̅̅̅
De donde implicamos que la forma en productos de sumas es el complemento de la forma
en minitérminos, razón por la cual y en contrasentido, llamaremos a éstos multiplicandos
los llamaremos maxitérminos (llamados también maxtérminos). En conclusión, para
nuestro ejemplo:
𝐹𝑀 (𝑎, 𝑏, 𝑐) = (𝑎 + 𝑏̅ + 𝑐)(𝑎̅ + 𝑏 + 𝑐)(𝑎̅ + 𝑏 + 𝑐̅) = ∏(0,1,3,6,7)
El poder pasar de minitérminos a maxitérminos y viceversa es muy útil en la simplificación
de funciones.
3.2.2. Mapas de Karnaugh
Las expresiones Booleanas pueden ser simplificadas por manipulación algebraicas, como se
ha visto en ejercicios anteriores. Como un ejemplo:

30

El método del mapa de Karnaugh en cambio, es un método tabular de reducción de


funciones basado en el cuarto postulado: 𝑎 + 𝑎̅ = 1, y ofrece un procedimiento directo,
para simplificar expresiones booleanas de hasta cinco variables. Se pueden trazar mapas
para mayor cantidad de variables, pero son más difíciles de manipular.
Este método en una representación bidimensional de la tabla de verdad de la función a
simplificar. Puesto que la tabla de verdad de una función de 𝑁 variables posee 2𝑁 filas, el
mapa 𝐾 correspondiente debe poseer también 2𝑁 cuadrados. Las variables de la expresión
son ordenadas en función de su peso y siguiendo el código Gray, de manera que sólo una de
las variables varía entre celdas adyacentes. La transferencia de los términos de la tabla de
verdad al mapa de Karnaugh se realiza de forma directa, albergando un ‘0’ o un ‘1’,
dependiendo del valor que toma la función en cada fila. Las tablas de Karnaugh se pueden
fácilmente realizar a mano con funciones de hasta 6 variables, para funciones de mayor
cantidad de variables es más eficiente el uso de software especializado1.

Ejercicio 3.2. Dada la función booleana 𝐹(𝑎, 𝑏, 𝑐) = 𝑎𝑏𝑐 + 𝑎𝑏̅𝑐 + 𝑎𝑏𝑐̅ + 𝑎𝑏̅𝑐̅ obtenga su
reducción mediante mapas de Karnaugh.
Solución:
I. Representamos la función en una tabla de verdad
a b c F
0 0 0 0
0 0 1 0
0 1 0 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
II. Construimos un mapa de Karnaugh de tantas celdas como filas tenga la tabla de

1
Wikipedia, La enciclopedia libre (2016). Mapa de Karnaugh. Consultado: 19/06/2016. Disponible:
https://es.wikipedia.org/wiki/Mapa_de_Karnaugh
verdad. Considere como referencias de columnas a combinaciones del par de
variables de menor valor significativo, codificándolas en código Gray. Algo similar
se hace para colocar las referencias de columna, aunque en este caso sólo al ser
sólo una variable la que resta, sólo se colocan en orden de 0 a 1. Observe el mapa
de éste ejercicio:
bc
00 01 11 10
0 0 0 0 0
a 31
1 1 1 1 1
III. Para reducir la función encierre con círculos o elipses, grupos de 1’s en potencias
de base dos: 2,4,8, etc., de celdas adyacentes, considere que la base de la tabla es
adyacente a la parte superior, y que el extremo izquierdo es adyacente al extremo
derecho. Para escribir la expresión resultante anote las variables cuyo valor no
cambia en el grupo formado. Vea el ejemplo.

En este caso se han agrupado los cuatro unos de la fila inferior, en los cuales la
única variable que no cambia es a.
De este modo la reducción es, como sabíamos por el Álgebra de Boole,
𝐹(𝑎, 𝑏, 𝑐) = 𝑎.
Ejercicio 3.3. Reducir la función 𝐹(𝑎, 𝑏, 𝑐, 𝑑) = ∑(6,8,9,10,11,12,13,14).
Solución:
I. Escribimos la función en forma de minitérminos:
𝐹(𝑎, 𝑏, 𝑐, 𝑑) = 𝑎̅𝑏𝑐𝑑̅ + 𝑎𝑏̅ 𝑐̅𝑑̅ + 𝑎𝑏̅𝑐̅𝑑 + 𝑎𝑏̅𝑐𝑑̅ + 𝑎𝑏̅𝑐𝑑 + 𝑎𝑏𝑐̅𝑑̅ + 𝑎𝑏𝑐̅𝑑 + 𝑎𝑏𝑐𝑑̅
II. Hacemos la tabla de verdad correspondiente.
No a b c d F
0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 0 0
3 0 0 1 1 0
4 0 1 0 0 0
5 0 1 0 1 0
6 0 1 1 0 1
7 0 1 1 1 0
8 1 0 0 0 1
9 1 0 0 1 1
10 1 0 1 0 1
11 1 0 1 1 1
12 1 1 0 0 1
13 1 1 0 1 1
14 1 1 1 0 1
15 1 1 1 1 0
III. Construimos el mapa de Karnaugh
cd
00 01 11 10
00 0 0 0 0
01 0 0 0 1
ab
11 1 1 0 1
10 1 1 1 1
IV. Agrupamos y formamos la función
32

𝐹(𝑎, 𝑏, 𝑐, 𝑑) = 𝑎𝑐̅ + 𝑎𝑑̅ + 𝑎𝑏̅ + 𝑏𝑐𝑑̅

3.2.3. Método de Quine-McClausky


El método de Quine-McClausky es una combinación del método tabular y de un método
gráfico, el cual es factible de programarse con la finalidad de obtener un algoritmo que
permita la obtención de expresiones algebraicas minimizadas.
Describimos los pasos a seguir:
I. Identificar cada uno de los minitérminos implicados en la expresión algebraica,
o bien en la tabla de verdad. Por ejemplo, para:
𝐹(𝑎, 𝑏, 𝑐, 𝑑) = 𝑏̅𝑐̅𝑑̅ + 𝑎𝑏𝑑̅ + 𝑎̅𝑏𝑑
Y su tabla es
No a b c d F
0 0 0 0 0 1
1 0 0 0 1 1
2 0 0 1 0 0
3 0 0 1 1 0
4 0 1 0 0 1
5 0 1 0 1 1
6 0 1 1 0 0
7 0 1 1 1 0
8 1 0 0 0 1
9 1 0 0 1 1
10 1 0 1 0 0
11 1 0 1 1 0
12 1 1 0 0 1
13 1 1 0 1 1
14 1 1 1 0 0
15 1 1 1 1 0
Si la expresión algebraica no se muestre como suma de productos, deberá ser
manipulada algebraicamente de tal forma que se obtenga. Por ejemplo:
𝑥 = ̅̅̅̅̅̅̅̅̅̅
̅̅
𝑎𝑑̅̅ ̅̅̅
𝑎̅𝑐 𝑏̅ = 𝑎𝑑 + 𝑎̅𝑐 + 𝑏
II. Listar como números binarios cada uno de los términos implicados en la
expresión algebraica para posteriormente agruparlos en base al número de bits
iguales a uno que tenga cada uno de ellos.
Por ejemplo, para 𝑥(𝑎, 𝑏, 𝑐) = ∑(0,1,2,5,6,7) tenemos,
0 000 Forma el grupo 0, por no tener ningún bit igual a 1
1 001
Estos forman el grupo 1, por tener ambos términos un bit igualado a 1.
2 010
33
5 101 Estos forman el grupo 2, por tener ambos términos dos bits igualados a
6 110 1
7 111 Forma el grupo 3, por tener tres bits igualados a 1
III. Una vez identificados los grupos, se deben combinar los términos entre grupos
contiguos. Es decir, el grupo 0 con el grupo 1, el grupo 1 con el grupo 2, etc., de
tal forma que se marca con un guión solo el bit que difiere de 1 a 0 o viceversa.
Siguiendo con el ejemplo del paso anterior:
No Grupos Combinación de términos Expresión
0 000* 0,1 00-
1 001* 0,2 0-0
2 010* 1,5 -01
5 101* 2,6 -10
6 110* 5,7 1-1
7 111* 6,7 11-
Notar que los grupos cambian en función de los unos que han quedado tras
hacer la primera iteración. Los asteriscos indican los términos que han sido
usados en la combinación.
IV. De las expresiones obtenidas (con guiones), de nuevo formamos grupos en base
a la cantidad de unos en cada término, y se busca de nuevo realizar
combinaciones entre grupos contiguos, verificando otra vez que sólo cambien en
un bit. En nuestro ejemplo ya no es posible realizar más combinaciones.
V. Una vez que ya no se tienen elementos qué combinar se obtienen los implicantes
primos que surgen de los términos no marcados.
En nuestro ejemplo, al no haber más combinaciones, no hay elementos
marcados.
Combinación Términos Expresión en implicantes primos
0,1 00-
0,2 0-0
1,5 -01
𝑥 = 𝑎̅𝑏̅ + 𝑎̅𝑐̅ + 𝑏̅𝑐 + 𝑏𝑐̅ + 𝑎𝑐 + 𝑎𝑏
2,6 -10
5,7 1-1
6,7 11-
Notar que los términos en guión no se incluyen en la expresión en implicantes
primos, además de que no tenemos una expresión mínima.
VI. Se listan los implicantes primos obtenidos en forma de filas, en una tabla en la
que las columnas corresponden a cada uno de los productos de sumas que
conforman a la expresión algebraica.
Siguiendo con el ejemplo:
0 1 2 5 6 7
0,1 00- x x
0,2 0-0 x x 34
1,5 -01 x x
2,6 -10 x x
5,7 1-1 x x
6,7 11- x x
VII. Se eligen los implicantes primos de tal forma que se cubran todas las columnas
(minitérminos) con el menor número de filas posible.
En nuestro ejemplo:

De este modo los implicantes que cumplen con el criterio son:


0,1 00-
2,6 -10
5,7 1-1
Por lo tanto, la minimización es: 𝑥(𝑎, 𝑏, 𝑐) = 𝑎̅𝑏̅ + 𝑏𝑐̅ + 𝑎𝑐
4. Compuertas Lógicas
En esta unidad el estudiante:
 Conoce qué es una familia lógica y sabe diferenciar entre ellas.
 Aplica las tablas de verdad de los diferentes operadores lógicos para obtener la
función booleana correspondiente a cada una de las compuertas lógicas.

4.1. Niveles lógicos y compuertas lógicas 35


La electrónica digital es un área de la ciencia que estudia las señales eléctricas que varían
en forma discreta, considerando que se tienen bien identificados sus estados, razón por la
cual a un determinado nivel de tensión se le llama estado alto (High) o uno lógico; y a otro,
estado bajo (Low) o cero lógico. Los niveles lógicos equivalen a niveles de voltaje que
varían según la tecnología empleada.

Figura 4.1. Tensiones eléctricas como niveles lógicos.


La figura 3.1 esquematiza los rangos de voltaje que representan los estados lógicos de un
sistema binario, en el cual el valor 1 o verdadero se da en los niveles de voltaje alto, y el
valor 0 o falso se da en los niveles de voltaje bajo. Ésta forma de representar los valores de
verdad es llamada Lógica Positiva, porque es la interpretación natural de la mayoría de las
personas. Sin embargo, es posible representar los valores de verdad falsos con 1 o voltaje
alto, y los valores verdaderos con 0 o con voltaje bajo, lo que nos lleva a la Lógica
Negativa.

Figura 4.2. Interpretación de un proceso lógico en una compuerta.

Las compuertas son dispositivos que operan con aquellos estados lógicos mencionados.
Pueden asemejarse al proceso en una computadora, por un lado se ingresa un dato, la
compuerta realiza la operación lógica correspondiente a su tipo, y finalmente, muestra el
resultado en su salida.
Cada compuerta lógica realiza una operación aritmética o lógica diferente, que se
representa mediante un símbolo de circuito. A continuación, vamos a analizar las diferentes
operaciones lógicas una por una comenzando por la más simple.

4.1.1. Compuerta NOT


La también llamada compuerta inversora, es un dispositivo electrónico de una única entrada
que devuelve el valor lógico opuesto del que se le introduce. por ejemplo, si se pone su
entrada a 1 (nivel alto) se obtiene una salida 0 (o nivel bajo), y viceversa.
a S 36
0 1
1 0
Tabla de Verdad
Figura 4.3. La compuerta Not.

4.1.2. Compuerta AND


Una compuerta AND tiene dos entradas como mínimo y su operación lógica es el producto
lógico de ambas entradas. No se debe confundir la operación lógica con la operación
aritmética, ya que pueden no concordar con las aritméticas, aunque en este caso particular
coincidan. Su salida será alta si sus dos entradas están a nivel alto.
a b S
0 0 0
0 1 0
1 0 0
Símbolo 1 1 1
Tabla de verdad
Figura 4.4. Compuerta AND.

4.1.3. Compuerta OR
Al igual que la anterior posee dos entradas como mínimo y la operación lógica, será una
suma lógica entre ambas. La operación lógica O es inclusiva; es decir que la salida es alta si
una sola de las entradas es alta o inclusive si ambas lo son. Es decir, basta que una de las
entradas sea 1 para que su salida también lo sea.
a b S
0 0 0
0 1 1
1 0 1
Símbolo 1 1 1
Tabla de verdad
Figura 4.5. Compuerta OR
4.1.4. Compuerta NAND
La compuerta NAND es un dispositivo de dos entradas como mínimo, cuya salida es la
composición de poner una compuerta NOT después de una compuerta AND, de tal forma
que su salida es la inversa de ésta última. Su símbolo es casi el mismo que la AND,
agregando justo antes de la línea de salida un pequeño círculo, que es virtualmente significa
la inversión de dicha salida.
a b S
0 0 1
0 1 1 37
1 0 1
Símbolos 1 1 0
Tabla de verdad
Figura 4.6. Compuerta NAND

4.1.5. Compuerta NOR


La compuerta NOR se obtiene conectando una NOT a la salida de una OR. El resultado que
se obtiene a la salida de esta compuerta es entonces la inversión de la operación lógica OR.
Lo mismo que en el caso anterior, sólo se agrega un círculo a la salida de la OR y se
obtiene el símbolo de la NOR.
a b S
0 0 1
0 1 0
1 0 0
Símbolos 1 1 0
Tabla de verdad
Figura 4.7. Compuerta NOR

4.1.6. Compuerta XOR


La compuerta OR exclusiva u XOR, es una versión de la OR anteriormente vista, en la que
se anula la posibilidad de que ambas entradas en 1 den como salida 1 (ver tabla de verdad
en la figura 4.8). En Álgebra de Boole su expresión sería: 𝑆 = 𝑎𝑏̅ + 𝑎̅𝑏 = 𝑎 ⊕ 𝑏.
a b S
0 0 0
0 1 1
1 0 1
1 1 0
Tabla de
verdad
Símbolos
Figura 4.8. Compuerta XOR
4.1.7. Compuerta XNOR
La compuerta XNOR, es simplemente la negación de la compuerta XOR. Por el Álgebra de
Boole tenemos que, ̅̅̅̅̅̅̅̅
𝑎 ⊕ 𝑏 = 𝑎𝑏̅̅̅̅̅̅̅̅̅̅̅
̅ + 𝑎̅𝑏 = ̅̅
𝑎𝑏̅̅ ∙ ̅𝑎̅𝑏
̅̅̅ = (𝑎̅ + 𝑏)(𝑎 + 𝑏̅ ) = 𝑎̅𝑏̅ + 𝑎𝑏 = 𝑎 ⊙ 𝑏.
El último término en la igualdad es justamente la expresión de la función XNOR.
a b S
0 0 1
0 1 0
1 0 0 38
Símbolos 1 1 1
Tabla de verdad
Figura 4.9. Compuerta XOR

4.2. Familias Lógicas


Las compuertas lógicas, como dijimos, son dispositivos electrónicos que sirven para
construir circuitos que simulen físicamente las expresiones dadas por la teoría del Álgebra
de Boole. Estos dispositivos electrónicos se constituyen en circuitos integrados digitales
(CI), que se agrupan en familias lógicas. Cada familia refiere una tecnología específica de
fabricación.
Las diversas familias lógicas caen en las amplias categorías basadas en el elemento
principal que se usa para la fabricación. Las familias bipolares (TTL Y ECL) utilizan el
transistor bipolar como elemento principal del circuito. Las familias de semiconductores de
óxido metálico (MOS) utilizan transistores de efecto de campo como elemento principal.
Si bien las familias TTL y CMOS dominan las áreas de aplicación que requieren
compuertas biestables, existen otras familias cuyas características se resumen la tabla 4.1.

Tabla 4.1. Familias lógicas de circuitos integrados digitales.

FAMILIA DTL RTL TTL STTL CMOS ECL


NAND OR
Compuerta básica NAND NOR NAND NAND
NOR NOR
Fan-Out tipico 8-10 4 8-10 8-10 ilimitada 20-25
Retardo típico (ns) 30 20 6-33 3-10 25-35 1-2
Muy
Desempeño al ruido bueno aceptable aceptable aceptable aceptable
bueno
Disipación de
10 mw 12 mw 1-25 mw 2-20 mw alta 0.01 w
potencia

La nomenclatura con que se definen los parámetros más importantes de los circuitos
lógicos se ha estandarizado:
 VIH (mín.), Voltaje de entrada de alto nivel: es el nivel de tensión mínimo que se
requiere para un “1” lógico en la entrada.
 VIL(máx.), Voltaje de entrada de bajo nivel: es el nivel de tensión máximo
admitido que se requiere para un “0” lógico en la entrada.
 VOH (mín.) Voltaje de salida de alto nivel: es el valor de tensión en la salida del
circuito lógico para un estado de “1” lógico.
 VOL (máx.) Voltaje de salida de bajo nivel: es el valor de tensión en la salida del
circuito lógico en un estado de “0” lógico.
39
 IIH, Corriente de entrada de alto nivel: corriente que fluye en una entrada cuando
se aplica una tensión VIH en dicha entrada.
 IIL, Corriente de entrada de bajo nivel: corriente que fluye en una entrada cuando
se aplica una tensión VIL en dicha entrada.
 IOH, Corriente de salida de alto nivel: corriente que fluye desde la salida en el
estado “1” lógico.
 IOL, Corriente de salida de bajo nivel: corriente que fluye desde la salida en el
estado “0” lógico.
Otros parámetros relevantes:
 Fan-Out, Carga máxima de la salida: número máximo de entradas lógicas que se
pueden conectar en una salida (figura 4.10).

Figura 4.10. Compuertas en paralelo en la misma salida (Fan-Out)

 tPLH, es el tiempo de retardo para pasar de un estado lógico “0” a “1”.


 tPHL, es tiempo de retardo para pasar de un estado lógico “1” a “0”.

Figura 4.11. Tiempos de retardo en un circuito integrado.


 Icc, corriente que se toma de la fuente de alimentación, esta corriente variara de
acuerdo a los estados lógicos de la salida del circuito.
 Inmunidad al ruido: es la capacidad del circuito para tolerar señales ruidosas en
sus entradas o la variación de tensión admisible a la entrada de una compuerta sin
que esta cambie de estado.
El margen de ruido en el estado alto se define como:
VNH = VOH (min) – VIH (min)
El margen de ruido en el estado bajo se define como: 40
VNL = VIL (max) – VOL (max)

Figura 4.12. Esquematización del ruido en los niveles lógicos.

Como se puede ver en la figura 4.12, la tensión de salida (A) si es “0” lógico podrá
superar a Vol en un valor menor o igual a VNL antes de que la entrada B deje de
reconocer un “0” lógico. Igualmente observamos que el valor VOH en A podrá
disminuir VNH voltios antes de que la entrada B deje de reconocer un “1” lógico.

Todos los parámetros indicados se obtienen de las hojas de datos (datasheets) del fabricante

Figura 4.13. Fragmento de una hoja de datos.


4.2.1. Lógica Transistor-Transistor (TTL)
La familia Transistor-Transistor Logic, basa su funcionamiento en arreglos de transistores
de tipo de unión bijuntura (BJT). El circuito básico es la compuerta NAND, su circuito se
muestra en la figura siguiente (figura 4.14)

41

Figura 4.14. Compuerta base de la familia TTL.

Para describir el funcionamiento de este circuito convendremos primero que las dos
entradas A y B están en estado lógico “1” (5 voltios), en estas condiciones por la juntura B–
E de Q1 no circula corriente y por la juntura B–C circula una corriente que pone en estado
de conducción al transistor Q2, así la tensión de colectora de Q2, 0.8 voltios llevando a Q3 al
corte y a Q4 a estado de conducción. En estas condiciones la salida tendrá un valor menos o
igual a 0,4 voltios (figura 4.15).

Figura 4.15. Salida en nivel bajo de la compuerta NAND.


Para el caso de la Figura 4.16, donde una entrada tendrá el valor lógico “0”, la tensión en la
base de Q2 lo lleva al corte y la corriente que fluye por Q2 activa el transistor Q3
obteniéndose una tensión de más de 2,4 voltios en la salida.

42

Figura 4.16. Salida en nivel alto de la compuerta NAND

Los circuitos TTL son circuitos de drenaje de corriente, las salidas reciben corriente de las
entradas.

Figura 4.17. Drenaje de corriente en un CI TTL.

Del análisis del circuito (figura 4.17) surge que se podrá obtener el mismo funcionamiento
si eliminamos Q3 y conectamos directamente R4 al colector Q4, sin embargo, con esto
tendríamos dos inconvenientes:

a) Una elevada corriente circulando por R4 con Q4 en estado de saturación (5 V/130 


 40 mA) lo que aumentaría significativamente el consumo de energía en el CI.
b) Se aumentaría la impedancia de salida en estado alto, con la configuración actual el
transistor Q1 actúa como seguidor y su impedancia de salida es baja (10 ). Esta
baja impedancia ofrece una constante de tiempo breve para cambiar de estado.

Una desventaja de la configuración actual ocurre durante la transición de “0” a “1” en la


salida ya que Q4 se desactiva después que Q3 y por un instante ambos transistores conducen
y circulan una corriente relativamente grande (30 a 40 mA).
La relación de potencia disipada/velocidad se muestra en la gráfica de la figura 4.18, se
puede apreciar que la potencia disipada se incrementa cuando se reduce la demora en la 43
respuesta del CI.

Figura 4.18. Respuesta en el tiempo con respecto de la potencia disipada.

De las curvas propuestas por el fabricante vemos que existen diferentes subfamilias
(series). La serie L (54LXX) y la serie LS (54LSXX) utilizan la tecnología Schottky es
decir utilizan transistores que poseen el diodo Schottky entre la base y el colector para
impedir que el transistor se sature (figura 4.19), el resultado es una reducción en los
tiempos de conmutación.

Figura 4.19. Diodo Schottky en un arreglo transistor.


La serie S utiliza valores pequeños de resistencia

44

Figura 4.20. El diodo Schottky en un arreglo NAND

Para ayudar a reducir los tiempos de cambio, esta trae como consecuencia un aumento en la
disipación de energía. Nótese que los transistores Q3 y Q4 se han reemplazado por
Darlington para ofrecer una mejor rapidez en el cambio de la salida de “0” a “1”.
La serie LS, de menor velocidad que la S utiliza el transistor Schottky pero con valores de
resistencia más elevados (figura 4.21).

Figura 4.21. Arreglo de la subfamilia LS

Ejercicio 4.1. Determinar el consumo de energía de un circuito realizado con CI 5400 y la


energía si el mismo circuito se implementa con CI 54S00.
ICCL (ma) ICC (mA) Potencia
ICCH (ma) Potencia
todos “0” salida promedio promedio por
Tipo todos “1” salida total
min. por categoría
min max Promedio
máx. categoría Vcc = 5v
2 mA x 5v = 10
00 4 8 12 22 2 40 mw
mW
3,75 mA x 5v = 45
S00 10 16 20 36 3,75 75 mw
18,75 mw

Ejercicio 4.2. Determinar el tiempo de demora de la señal de entrada de la figura 4.22.

Figura 4.22. Arreglo del ejercicio 4.2.

Tipo Tda (ns) Tdb (ns) Tdc (ns) Tdsalida (ns) Ttotal (ns)
00 7 11 7 11 36
S00 3 3 3 3 12

4.2.1.1. Carga de dispositivos TTL


Cargas Unitarias: A fin de simplificar el diseño con circuitos TTL, los fabricantes han
establecido factores de carga de entrada y salida estandarizados en términos de la corriente.
Estas corrientes se denominan cargas unitarias (UL) y se definen como sigue:
1 Carga Unitaria (UL) = 40 A en estado lógico ‘1’
= 1,6 mA en estado lógico ‘0’

Estos factores de carga unitaria representan las corrientes máximas de entrada para la serie
TTL estándar. En otras palabras, la máxima corriente que fluye en una entrada TTL en
estado ALTO es Iih(max) = 40 A y la corriente máxima que fluye en una entrada TTL en
estado BAJO es Iil(max) = 1.6 mA

La siguiente tabla muestra el factor de carga para las series de circuitos TTL 46

Serie Carga de entrada Factor de carga


Alta Baja Alta Baja
7400 1 UL 1 UL 10 UL 10 UL
74H00 1.25 UL 1.25 UL 1.25 UL 1.25 UL
74L00 0.5 UL 0.1 UL 10 UL 2.5 UL
74S00 1.25 UL 1.24 UL 25 UL 12.5 UL
74LS00 0.5 UL 0.25 UL 10 UL 5 UL

La figura 4.23 muestra una salida TTL en estado bajo conectado a varias entradas.

Figura 4.23. Salida en nivel bajo a varias entradas TTL.

Si bien el transistor Q4 está saturado su resistencia interna no es cero y un incremento de la


corriente Iol producirá un aumento de la tensión Vol. Este incremento no podrá superar
VoL(max) y esto limitará la corriente IOL y por lo tanto el número de cargas IIL que pueden
conectar.
La situación en estado alto en la salida se muestra en la figura 4.24, aquí Q3 provee la
corriente a las entradas, si la corriente IOH se hace demasiado grande VOH puede disminuir
por debajo de su valor límite VOH(min).
47

Figura 4.24. Salida en nivel alto a varias entradas TTL

Ejercicio 4.3: Determinar la cantidad de compuertas que pueden conectarse a la salida de


una compuerta NAND 5400 de la figura 4.25.

Figura 4.25. Arreglo del ejercicio 4.3.

Solución:
a) Salida en estado ‘0’
IOL = 16 mA (max), IIL = 1.6 mA
𝐼𝑂𝐿 16
𝐶𝑎𝑟𝑔𝑎 𝑀á𝑥𝑖𝑚𝑎 = = 1.6 = 10
𝐼𝐼𝐿
b) Salida en estado ‘1’
IOH = 400 μA, IIH = 40 μA
𝐼𝑂𝐻 400
𝐶𝑎𝑟𝑔𝑎 𝑀á𝑥𝑖𝑚𝑎 = 𝐼 = 40 = 10
𝐼𝐻

4.2.1.2. Otras características de la familia TTL


a) Entradas Flotantes: si una entrada no se conecta actúa como “1” lógico debido a que
la unión B-E de Q1 no se polariza en estado directo.
b) Entradas no utilizadas: no es conveniente dejar entradas flotantes ya que esta puede
actuar como una antena y captar ruidos que pueden modificar la salida, las entradas
no utilizadas deben conectarse a +V a través de una resistencia de 1k , la función
de esta resistencia es la de proteger a Q1.

48

Figura 4.26. Entradas no usadas a nivel alto.

c) En aquellos casos donde la entrada debe mantenerse en “0” (figura 4.27) la


resistencia R deben ser del menor valor posible de tal forma que la tensión
producida por la circulación de IIL sea menor que VIL(max).

Figura 4.27. Entrada a cero a través de una resistencia.

d) Oscilaciones momentáneas de corriente: dada la diferencia de velocidad en la


conmutación de los transistores Q3 y Q4 en sistemas donde la entrada a una
compuerta lógica es de variación lenta, se producen oscilaciones momentáneas de la
corriente.

Figura 4.28. Oscilaciones de corriente en un TTL.

La oscilación es ampliada por los efectos de cualquier capacitancia de carga en la


salida del circuito. La técnica más común de filtrado es la conexión de pequeños
capacitores conectados de Vcc a tierra en cada CI (figura 4.29).
49
Figura 4.29. Eliminación de oscilaciones en CI’s.

e) AND por conexión, en la figura 4.30(b) vemos la realización de una función And
por conexión, en ella se han eliminado la compuerta and, presente en la figura 4.30
(b)

Figura 4.30. Dos formas de obtener la AND: (a) Por compuerta; (b) Por conexión.

Los circuitos TTL convencionales no permiten la configuración AND por conexión,


supongamos que conectamos dos salidas, una de estas salidas está en estado Alto y
otras en estado Bajo.

Figura 4.31. Arreglo TTL en configuración And por conexión.


En este caso Q4 es una caja de resistencia muy baja y tomara una corriente elevada,
esta corriente puede afectar a Q4b al superarse Iol. Esta situación empeora si aumenta
la cantidad de puertas conectadas.
Para permitir esta conexión algunos circuitos TTL se fabrican con salida a colector
abierto. Como se observa en la figura 4.32 en estos circuitos se han eliminado Q3,
D1 y R4.

50

Figura 4.32. TTL a colector abierto.

La resistencia Rc extendida al CI debe ser elegida de manera que cuando una salida
pase a Bajo mientras las otras permanezcan en Alto, la corriente drenada no exceda
su límite Iol.
Podría parecer que el valor de Rc debe hacerse lo más grande posible, sin embargo,
debe entenderse que las capacidades parásitas se cargan a través de esta Rc por lo
que una Rc grande afectaría la velocidad de transición. Para no afectar la velocidad
la resistencia Rc debe hacerse lo más chica posible.

Ejercicio 4.4. El CI 7405 contiene 6 inversores con salida de colector abierto en el circuito
de la figura 4.33(a). Determinar:
a) La función de salida 𝒇.
b) El valor de Rc, use la figura 4.33(b) como referencia.

Figura 4.33. Configuración de circuitos del ejercicio 4.4.


Solución:
a) 𝑓(𝑎, 𝑏, 𝑐, 𝑑, 𝑒, 𝑥) = 𝑎’ ∙ 𝑏’ ∙ 𝑐’ ∙ 𝑑’ ∙ 𝑒’ ∙ 𝑥’
b) Si suponemos que solo un inversor tiene su salida en BAJO , el transistor de salida
de ese inversor debe poder drenar ,las corrientes Irc e IIL.

Iol(max) = Irc + ∑ IIL Iil = 1,6 mA


16 mA = IRC + 8 mA
IRC = 16 mA – 8 mA = 8 mA
Vcc  VOL (max) 5  0.4 51
Rc (min)    575
I RC 8
Ejercicio 4.5. Para una compuerta NAND 74L500 obtener la curva Vsalida = F(Ventrada)
deduciendo sus intervalos lógicos VIL, VOL, VIH, VOH y comparar los datos obtenidos con
los del fabricante.
1
Entrada 3 Salida
2

Figura 4.34. Arreglo para el ejercicio 4.5.

Ejercicio 4.6. Medir los tiempos de propagación de subida y bajada con carga de 200 pF,
para efectuar la medida poner en cascada las 4 compuertas de CI 74L500.

Figura 4.35. Arreglo para el ejercicio 4.6.

Ejercicio 4.7. Para el CI 74L500 medir el consumo estático


a) Para todas las entradas en “0”
b) Para todas las entradas en “1”

4.2.1.3. El tercer estado


Una variante en la configuración de la salida permite que existan 3 estados posibles en la
salida: ALTO, BAJO Y ALTA IMPEDANCIA (este último llamada Hi-Z). En el estado
Hi-Z Q3 y Q4 se desactivan de manera que la salida sea una alta impedancia conectada a
tierra.
El 3er estado se obtiene modificando el circuito básico como se muestra en la figura 4.36.
52

Figura 4.36. Configuración para alta impedancia.

En este circuito:
 Con E = 1 el circuito opera como un inversor normal debido a que una tensión alta
no afecta a Q1 ni a Q2.
 Con E = 0 el circuito pasa a Hi-Z independientemente del estado de A, un “0” en E
polariza directamente la juntura B-E de Q1 y corta Q2 hacemos la corriente de R2 se
deriva por D2 y Q3 se corta con ambos transistores Q3 y Q4 cortados el terminar de
salida es esencialmente un circuito abierto.

Las salidas de los circuitos integrados que poseen el tercer estado se pueden conectar en
paralelo sin sacrificar la velocidad de transición, no obstante, debe tenerse en cuenta que
solo uno de los CI puede estar activo en un determinado instante.

Figura 4.37. CI con tercer estado.

Un separador de triple estado es un circuito que se utiliza para controlar el paso de una
señal lógica, los Integrados 74125 y 74126 son los más comúnmente utilizados.
53
Figura 4.38. Nomenclatura de integrados de Alta Impedancia.

Los circuitos con tercer estado se encuentran disponibles también en la tecnología MOS

4.2.2. Familia Lógica MOS


Esta familia de semiconductor de óxido metálico basa su fabricación en el transistor de
efecto de campo (FET), existen dos tipos conocidos: FET de canal N y FET de canal P.

Figura 4.39. Semiconductores MOS.

En el FET de canal N, cuando la compuerta (g) es negativa respecto a la fuente (s), el FET
es un circuito abierto del drenaje (D) a la fuente. Si la compuerta es positiva con respecto a
la fuente el FET es un cortocircuito del drenaje a la fuente. En el caso del FET de canal P la
operación es la misma excepto que se invierten las polaridades.

Es probable que la operación del FET parezca similar a la del transistor bipolar, pero
existen diferencias importantes. En el bipolar el factor de control es la corriente de base;
por ejemplo, es en el transistor NPN cuando la base se hace positiva respecto al emisor,
fluye una corriente de la base al emisor y es esta corriente la que activa al transistor.
Además, el transistor entra en saturación, es decir, el voltaje del colector al emisor
desciende a un valor despreciable solo cuando fluye la suficiente corriente por el colector.
Por el contrario, en el FET el voltaje compuerta-fuente controla la impedancia drenaje –
fuente mediante la acción de un campo electroestático (de allí su nombre de efecto de
campo) y la corriente de compuerta, prácticamente no puede medirse. Cuando el FET se
activa la tensión drenaje fuente es casi cero.
Estas características del FET permiten construir CI con consumo de energía
extremadamente bajos.

Los circuitos digitales que emplean FET se deriva en 3 categorías.


 P-MOS -> FET de canal P
 N-MOS -> FET de canal N
 CMOS -> MOS complementario que utilizan FET de canales P y N.

Los P-MOS y N-MOS tienen una mayor densidad de integración que los C-MOS y resultan 54
por lo tanto más económicas que los C-MOS.
La categoría N-MOS tiene el doble de densidad de integración que la P-MOS y es casi dos
veces más rápida.
El C-MOS tiene la mayor complejidad y la menor densidad de integración, pero tiene
mayor velocidad y menor disipación de energía que las otras dos.

4.2.2.1. Subfamilia N-MOS


Inversor N-MOS. Q1 se diseña de tal manera de que
tenga una resistencia R0N mucho mayor que Q2. La
resistencia en OFF de Q2 es del orden de 1010 .
Si realizamos el análisis considerando a los transistores
como resistencia tendremos:

a) Cuando 𝑉𝑖𝑛 = 0 𝑉 ⟹ 𝑄2 = 𝑂𝐹𝐹


b) Cuando 𝑉𝑖𝑛 = 5 𝑉 ⟹ 𝑄2 = 𝑂𝑁

Figura 4.40. Inversor N-MOS.

Figura 4.41. Circuito equivalente.


NAND N-MOS. En este caso vemos que Q1 también aquí actúa como una resistencia de
carga mientras Q2 y Q3 son interruptores controlados por las entradas Ay B (figura 4.42).
Si A y B está en “0” el FET correspondiente está en OFF y presta una alta resistencia.
Cuando A y B están en “1”, Q2 y Q3 están en ON y la salida es baja.

55

Figura 4.42. NAND N-MOS: (a) Implementación; (b) y (c), circuitos equivalentes.

Los circuitos con tecnología P-MOS serán los mismos excepto para la polaridad del voltaje.

Ejercicio 4.8. La compuerta NOR N-MOS se muestra en la figura 4.43. Realice el análisis
de su funcionamiento
.

Figura 4.43. Arreglo NOR-NMOS


4.2.2.2. Subfamilia CMOS
La lógica C-MOS es más rápida y de menor consumo que las anteriores, pero de mayor
complejidad en la fabricación. Utiliza FET de tipo P y N, pero además es la más simple de
producir que la TTL y tiene mayor densidad de integración.

Inversor C-MOS. Analizamos el circuito de la figura


4.44, para Vin = Vdd, Q1 está cortado con una resistencia
equivalente elevada (1010) y la compuerta Q2 estará en
conducción con RoN = 1 k, la salida Vout será en 56
consecuencia un cero lógico con un valor cercano a los 0
voltios.
Si Vin = 0 voltios las condiciones se invierten y entonces
Vout  Vdd.

Figura 4.44. Inversor C-MOS

Ejercicio 4.9. Las configuraciones de las compuertas NAND y NOR se muestran en las
figuras 4.45 y 4.46 respectivamente, realice el análisis correspondiente.

Figura 4.45. Compuerta NAND C-MOS. Figura 4.46. Compuerta NOR C-MOS.

Características importantes de la familia de los C-MOS:

a) Niveles de tensión: operan con voltaje que van de 3 a 15 voltios.


b) Los subniveles de salida estarán muy próximos a los 0v en nivel bajo y a Vdd en
nivel Alto. La razón de esto es que la resistencia de entrada de una compuerta MOS
es tan grande (1012 ohms) que casi no carga a la salida de la compuerta que la
impulsa
c) El nivel de ruido se puede determinar como sigue:
VNH = VOH (min) – VIH (min)= Vdd – 70% = 30% Vdd
VNL = VIL (max) – VOL (max)= 30% - 0= 30% Vdd
d) Disipación energía: en estado estático es extremadamente baja, la potencia disipada
crece en función a la frecuencia con la cual los circuitos cambian de estado, por
ejemplo: Una compuerta que disipa 10 nW en estado estático, disipara 0,1 mW si
cambia a una frecuencia de 100khz y 1mW en 1MHZ. De este modo una
compuerta CMOS comienza a perder algunas de sus ventajas sobre otras familias
lógicas cuando aumenta la frecuencia. La potencia disipada por una compuerta
CMOS es semejante a una compuerta LS-TTL con frecuencia superior a 5 MHz.
e) fan out: el factor de carga en estos circuitos no está limitado por la corriente que
deben derivar los componentes ya que las resistencias son muy elevadas y las 57
corrientes casi nulas.
El problema aquí aparece por la capacidad que presenta cada entrada C-MOS, la
salida C-MOS tendrá entonces que cargar y descargar estas capacitancias lo que trae
aparejado en incremento en el tiempo de propagación. Así pues, el factor de carga
depende de la máxima demora de propagación admisible, normalmente se limita en
50 para una operación en baja frecuencia (  1MHz).
f) Entradas no usadas: las entradas CMOS nunca deben dejarse desconectadas ya que
son muy susceptibles al ruido y a las cargas estáticas.
g) A semejanza de los circuitos TTL, los dispositivos CMOS y MOS requieren de
transiciones razonablemente rápidas en la entrada para una operación confiable. En
general los dispositivos CMOS funcionaran a nivel óptimo con las transiciones
menores a 15 S cuando Vdd = 5 V y menores a 4 S cuando Vdd = 10 V

El 3er estado en CMOS. Las salidas CMOS nunca deben interconectarse, si se


interconectan y estas salidas asumen valores lógicos diferentes se obtendrá una tensión
Vdd/2 debido a la división de voltaje producido por las resistencias equivalentes.

Figura 4.47. Arreglo para el análisis del 3er estado CMOS.

Este voltaje está dentro del intervalo indeterminado y es inadmisible para activar otras
compuertas. Para el control del 3er estado se implementa una configuración como la de la
figura 4.48.
Figura 4.48. Arreglo para implementar el 3er Estado CMOS. 58

4.2.3. Compatibilidad TTL-CMOS


En un arreglo salida TTL y entrada CMOS tendríamos
el problema de que, dado que la resistencia de entrada
CMOS es muy alta no carga la salida del TTL, pero
existe un problema debido a que la salida TTL tiene
un estado ALTO (VOH) muy próximo a VIH(min) de
una CMOS, la solución a este problema es la conexión
(figura 4.49) de una resistencia entre la salida TTL y Figura 4.49. Conexión TTL-
+5V, esta resistencia logra que la tensión de salida se CMOS.
eleve cerca de Vcc (5V).
Ahora, si tenemos una salida CMOS y una entrada
TTL, la entrada TTL no requiere mucha corriente en
estado alto IIH (max) = 40 µA, por lo que no habría
problemas. En cambio, el estado Bajo es un problema
debido a que IIL es relativamente alta, ésta corriente es
exigida al TTL, que al pasar a través de RON puede Figura 4.50. Conexión CMOS-
elevar VOL por encima de VOL(max) del TTL. TTL sin corrección.
Normalmente un dispositivo CMOS podrá impulsar
una sola compuerta TTL del tipo LS. Por esto una
solución de conexionado serÍa como el de la figura
4.51.
Figura 4.51. Conexión CMOS-
TTL corregida.

Ejercicio 4.10. Calcule VOH para una


salida CMOS que impulsa 10 entradas TTL.
Solución:
𝑰(𝑰𝑯) (𝑻𝑻𝑳) = 𝟒𝟎𝝁𝑨
Caída de tensión en 𝑅𝑜𝑛 (𝐶𝑀𝑂𝑆)
𝑉𝑅𝑜𝑛 = 1𝑘Ω ∗ 40𝐴 ∗ 10 = 0,4 𝑉

Figura 4.52. Arreglo para el ejercicio 4.10.


De este modo:
VOH (CMOS) = VDD – VRON
VOH (CMOS) =5 – 0,4 = 4,6 V
VOH (CMOS) > VIH (min) (TTL)

Ejercicio 4.11. Para una compuerta NAND CMOS 4011


obtener la curva V0= F(VIN) en vació y con una carga de
1K, para tensiones de realimentación de 5 y 12 voltios.
Compare los datos obtenidos con los proporcionados con Figura 4.53. Arreglo del 59
el fabricante. ejercicio 4.11.

Ejercicio 4.12. Medir los tiempos de propagación de subida y bajada en vacío y con carga
de 100 de una sola puerta NAND 4011.
5. Circuitos Combinacionales
En esta unidad el estudiante:
 Diseña e implementa circuitos combinacionales.

5.1. Introducción.
Los circuitos lógicos de sistemas digitales, pueden ser combinatorios o secuénciales. Un
circuito combinatorio consta de compuertas lógicas cuyas salidas en cualquier momento se 60
determinan directamente a partir de los valores de las entradas presentes. Un circuito
combinatorio realiza una operación de procesamiento de información determinada que se
puede especificar lógicamente por medio de un conjunto de expresiones booleanas. Los
circuitos secuenciales emplean elementos de almacenamiento llamados multivibradores
biestables (flip–flops) además de las compuertas lógicas. El estado de los elementos de
almacenamiento, a su vez, es función de las entradas previas. Como consecuencia, las
salidas de un circuito secuencial dependen no solo de los valores presentes de las entradas,
sino también de las entradas pasadas, y el comportamiento del circuito debe especificarse,
por una secuencia de tiempo de entradas y estados internos. Los circuitos secuenciales se
presentan en la siguiente unidad.
Un circuito combinatorio consta de variables de entrada, compuertas lógicas o de lógica, y
variables de salida. Las compuertas lógicas, aceptan señales de las entadas y generan
señales en las salidas. Este proceso transforma informaciones binarias de datos de entrada
en datos de salidas requeridos. En la figura siguiente se presenta un diagrama en bloques de
un sistema combinacional.

Figura 5.1. Esquema general de un circuito combinacional.

Las M variables de entrada provienen de una fuente externa y las N variables de salida se
dirigen a un destino externo. Cada variable de entrada y salida existe físicamente como una
señal binaria que representa el equivalente de un ‘1’ o un ‘0’ lógico.
Para n variables de entrada existen 2n combinaciones binarias posibles. Para cada
combinación binarios de las variables de entrada existe un valor binario de salida posible.
Por lo tanto, un circuito combinacional se puede especificar a través de una tabla de verdad
que presente los valores de salida de cada combinación de la variable de entradas.
Existen circuitos combinacionales que se emplean frecuentemente en el diseño y la
construcción de computadores digitales. Estas componentes están disponibles en circuitos
integrados y se clasifican como circuitos MSI (mediana escala de integración).

5.2. Procedimiento de análisis


El análisis de un circuito combinacional, consiste en determinar la función que ejecuta el 61
circuito. Se inicia con un diagrama de un circuito lógico, dado y culmina con un conjunto
de funciones booleanas cuya tabla de verdad junto con una posible explicación de la
operación del circuito
El primer paso en el análisis consiste en asegurarse de que el circuito dado sea
combinacional y no secuencial. El diagrama de un circuito combinatorio tiene compuertas,
lógicas sin elementos de retroalimentación o almacenamiento. Una trayectoria de
retroalimentación existe si hay una conexión de la salida de una compuerta a la entrada de
otra, que forma parte de la entrada de la primera compuerta.
Cuando se verifica que un diagrama lógico es un circuito combinacional, se puede
proceder a obtener las funciones booleanas de salida o la tabla de la verdad.

5.2.1. Obtención de Funciones Booleanas


Para mostrar el proceso de obtención de una función booleana consideremos el siguiente
circuito.

a 4
6 T2
5
b
9
1 2 1 8 T3
3 T1 10
2
c
Figura 5.2. Circuito combinacional para ejemplo de deducción de funciones booleanas.

Los pasos a seguir son:

I. Identificar y nominar las salidas de aquellas compuertas cuyas entradas está en


función de la variable de entrada para luego escribir la función Booleana que la
expresa.
𝑇1 = 𝑏̅ 𝑐
II. Identificar y nominar aquellas compuertas que tengan como entrada las variables
de entrada y/ o las salidas de las compuertas identificadas en el paso anterior.
Escribir su función.
𝑇2 = 𝑎 ∙ 𝑇1
III. Repetir el paso anterior hasta llegar a las variables de salida.
𝑇3 = 𝑇1 ∙ 𝑇2 = (𝑏̅ ∙ 𝑐) ∙ (𝑎 ∙ (𝑏̅ ∙ 𝑐)) = 𝑎 ∙ 𝑏̅ ∙ 𝑐

5.2.2. Obtención de la Tabla de Verdad


La obtención de la tabla de verdad de un circuito combinacional es un proceso sencillo, una
vez que se conocen las funciones booleanas de salida, se procede a construir una tabla de
verdad en la cual se escribirán todas las combinaciones posibles de las variables que
62
intervienen en la función y luego tomando estas combinaciones se reemplaza en la función
booleana para así obtener el valor de la salida.
Tabla de Verdad del ejemplo
Siguiendo con el ejemplo, para algunas combinaciones # a b c 𝑇3
tenemos: 0 0 0 0 0
 Para la combinación 0 1 0 0 1 0
𝑇3 = (1 ∙ 0) ∙ (0 ∙ (1 ∙ 0)) = 0 2 0 1 0 0
 Para la combinación 5 3 0 1 1 0
𝑇3 = (1 ∙ 0) ∙ (0 ∙ (1 ∙ 0)) = 0 4 1 0 0 0
5 1 0 1 1
6 1 1 0 0
7 1 1 1 0

Si no se tiene la función booleana se puede recurrir a un simulador en software donde


podremos ir probando los valores a la entrada y verificar la salida, aunque deberíamos de
ser capaces de realizar ésta misma actividad a mano. Su docente le sugerirá el software más
adecuado para realizar una simulación. En la figura 5.3 se muestra el software LogiSim
simulando las combinaciones hechas en el ejemplo presente.

Figura 5.3. Simulación en software del circuito de ejemplo.


Ejercicio 5.1. Encontrar la función booleana y la tabla de verdad del circuito de la figura
siguiente. Realice la simulación en software y arme el circuito correspondiente para
verificar sus resultados.

63

Figura 5.4. Circuito para el ejercicio 5.1.

Solución: Tabla de Verdad


A B C F
𝐹 =𝐴∙𝐶+𝐴∙𝐵+𝐵∙𝐶 0 0 0 0
0 0 1 0
Y la tabla de verdad construida a partir de la función F, para 0 1 0 0
todas las combinaciones posibles de las variables de entrada es la 0 1 1 1
que se muestra en el recuadro de la derecha. 1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

5.3. Procedimiento de diseño


El diseño de circuitos combinacionales comienza desde la especificación del problema y
culmina en un diagrama de circuito lógico o en un conjunto de funciones booleana del cual
se puede obtener el diagrama lógico.
En el procedimiento se aplican los siguientes pasos:

I. De las especificaciones del circuito, determínese el número de entradas y salidas y


asígnese un símbolo alfabético (o, letra) a cada una.
II. Construirla tabla de verdad que define la relación entre entradas y salidas
analizando 2n posibles combinaciones (n = cantidad de variables de entrada).
III. Obtener las funciones booleanas a partir de la tabla de verdad y simplifíquese por
el método de Karnaugh (o algebraicamente) para cada una de las salidas.
IV. Dibujar el diagrama lógico

Ejercicio 5.2. Diseñar un circuito con tres variables de entrada y una de salida. La salida
debe ser de un 1 lógico cuando el valor decimal que representan las entradas sea menor que
tres y 0 lógico en caso contrario. Utilícense solo compuertas NAND en la construcción del
diagrama. Realícese la simulación en software y física del diseño.
Solución:
i) Definimos las variables, en este caso se identifica claramente que necesitamos
tres variables de entrada a, b, c y una de salida S.
ii) Construimos la tabla de verdad que cumpla con el enunciado.
# a b c S
0 0 0 0 1
1 0 0 1 1 64
2 0 1 0 1
3 0 1 1 0
4 1 0 0 0
5 1 0 1 0
6 1 1 0 0
7 1 1 1 0
iii) Obtenemos la expresión booleana, en este ejemplo lo haremos como suma de
producto.
𝑆 = 𝑎̅𝑏̅𝑐̅ + 𝑎̅𝑏̅𝑐 + 𝑎̅𝑏𝑐̅
iv) Aplicamos la reducción, en este caso por mapas de Karnaugh

𝑆 = 𝑎̅𝑐̅ + 𝑎̅𝑏̅
v) Construimos el diagrama lógico.

Figura 5.5. Primera aproximación al resultado.

Como puede apreciarse no cumple con el requerimiento de emplear compuertas


AND, lo cual se puede lograr si a la función resultante se le aplican las Leyes
de De Morgan, lo cual se deja al estudiante.
5.3.1. Circuitos de salida múltiple
Cuando un circuito combinacional posee más de una salida, cada una de ellas puede ser
tratada en forma independiente, obteniéndose un diagrama lógico para cada una de ellas. El
riesgo que se corre en estos casos es la posibilidad de duplicar funciones con el
correspondiente aumento innecesario del costo, pero se simplifica notablemente el diseño y
se reducen las posibilidades de error. Además, se simplifica el mantenimiento del sistema.
De todas formas, mencionaremos que el método tabular Karnaugh permite la simplificación
de múltiples funciones si dadas las funciones 𝐹1 (𝑎, 𝑏, 𝑐), 𝐹2 (𝑎, 𝑏, 𝑐, ), y 𝐹3 (𝑎, 𝑏, 𝑐), se
aplican las siguientes sentencias: 65
a) Representar en una tabla aquellos términos canónicos que se repiten en 𝐹1 , 𝐹2 , 𝐹3 .
b) Representar en una tabla aquellos términos que se repiten 𝐹1 y 𝐹2 y que no se
representaron en la tabla anterior.
c) Representar en una tabla aquellos términos que se repiten en 𝐹1 y 𝐹3 y que no se
representaron en las tablas anteriores.
d) Representar en una tabla aquellos términos que se repitan en 𝐹2 y 𝐹3 y que no se
representaron en las tablas anteriores.
e) Representar en una tabla los términos que solo están en 𝐹1 y que no se representaron
en las tablas anteriores.
f) Representar en una tala los términos que solo están en 𝐹2 y que no se representaron
en las tablas anteriores.
g) Representar en una tala los términos que solo están en 𝐹3 y que no se representaron
en las tablas anteriores.
h) Escribir las funciones booleanas para las funciones tomando los términos que le
correspondan a cada función de todas las tablas.

𝐹1 , 𝐹2 , 𝐹3 𝐹1 ,𝐹2 𝐹1 , 𝐹3

𝐹2 , 𝐹3 𝐹1 𝐹2

𝐹3
De este modo:
F1= términos de la tabla (𝐹1 , 𝐹2 , 𝐹3 ) + Términos de la tabla (𝐹1 ,𝐹2 ) +
+Términos de la tala (𝐹1 , 𝐹3 ) + Términos de la tabla 𝐹1 .
F2= términos de la tabla (𝐹1 , 𝐹2 , 𝐹3 ) + Términos de la tabla (𝐹1 ,𝐹2 ) +
+Términos de la tala (𝐹2 , 𝐹3 ) + Términos de la tabla 𝐹2 .
F3= términos de la tabla (𝐹1 , 𝐹2 , 𝐹3 ) + Términos de la tabla (𝐹1 , 𝐹3 ) +
+Términos de la tala (𝐹2 , 𝐹3 ) + Términos de la tabla 𝐹3 .
66
Ejercicio 5.3. Diseñar un circuito que sirva de interfaz entre dos computadoras, tal como se
observa en el diagrama siguiente:

Figura 5.6. Condiciones para el ejercicio 5.3


Solución:
Según se observa, los códigos correspondientes a las cuatro primeras letras del alfabeto
deben enviarse a la segunda computadora. La problemática está en que la primera
computadora envía códigos de 3 bits, mientras que la segunda computadora espera datos de
2 bits. Entonces la interfaz tiene como propósito la conversión de los códigos.

Elaboramos una tabla de conversión en la cual las entradas son los valores de 𝑥𝑖 y las
salidas serán los valores 𝑦𝑗 .

𝑥1 𝑥2 𝑥3 𝑦1 𝑦2 Letra
0 0 0 1 0 C
0 0 1 1 0 C
0 1 0 X X
0 1 1 0 0 A
1 0 1 1 1 D
1 1 0 0 1 B
1 1 1 0 1 B

Realizamos los mapas de Karnaugh, siguiendo los preceptos citados.


Planteamos el mapa donde Planteamos el mapa de Planteamos el mapa de
se repiten 𝑦1 e 𝑦2 términos no repetidos 𝑦1 términos no repetidos 𝑦2
𝑥1 , 𝑥2 00 01 11 10 𝑥1 , 𝑥2 00 01 11 10 𝑥1 , 𝑥2 00 01 11 10
𝑥3 𝑥3 𝑥3
0 X 0 1 0 1
1 X 1 1 1 1 1

Entonces:
67
y1 = ̅̅̅x1 x̅̅̅2 + x1 ̅̅̅
x2 x3
𝑦2 = 𝑥1 𝑥2 + 𝑥1 𝑥 ̅̅̅2 𝑥3
Y el circuito lógico queda como en la figura 5.7.

Figura 5.7. Circuito solución del ejercicio 5.3.

Ejercicio 5.4. Diseño de un decodificador BCD a 7 segmentos. Las pantallas digitales


que se encuentran en las calculadoras electrónicas y relojes digitales, se valen de
dispositivo de despliegue como son los diodos emisores de luz (LED) o despliegue de
cristal líquido LCD). Cada digito del display está formado por siete segmentos, cada uno de
los cuales consta de un LED, o cristal líquido que se puede iluminar por medio de señales
digitales (figura 5.8).

Figura 5.8. Display a 7 segmentos.

Un decodificador BCD, a siete segmentos es un circuito combinacional que acepta un


digito decimal de BCD y genera las salidas apropiadas para encender los segmentos que
permiten su presentación en el display. Las siete salidas del decodificador: a, b, c, d, e, f, g,
seleccionan los segmentos correspondientes en los despliegues, como se muestra en la
figura 5.8. La designación numérica escogida para representar los dígitos decimales se
presenta en la siguiente tabla para un display de cátodo común. Diseñe, simule y construya
el decodificador necesario.

A B C D a b c d e f g
0 0 0 0 1 1 1 1 1 1 0
0 0 0 1 0 1 1 0 0 0 0 68
0 0 1 0 1 1 1 1 0 1
0 0 1 1 1 1 1 1 0 0 1
0 1 0 0 1 1 0 0 1 1
0 1 0 1 1 0 1 1 0 1 1
0 1 1 0 0 1 1 1 1 1
0 1 1 1 1 1 1 0 0 0 0
1 0 0 0 1 1 1 1 1 1 1
1 0 0 1 1 1 1 0 0 1 1
1 0 1 0
1 0 1 1
1 1 0 0
Zona no representable
1 1 0 1
1 1 1 0
1 1 1 1

Figura 5.9. Esquema general de la solución del ejercicio 5.4.

Ejercicio 5.5. Circuito comparador. Un circuito de ésta clase es capaz de decidir si un par
de números de n bits son iguales o en su defecto indicar cuál es mayor o menor. En este
ejercicio se desea crear un dispositivo comparador de dos bits. Se tienen como entradas a
los números 𝐴 = 𝑎1 𝑎0 y 𝐵 = 𝑏1 𝑏0, donde las letras minúsculas representan cada bit del
número y su subíndice indica el orden de significancia del bit. Como salidas tenemos a 𝑧1 ,
𝑧2 , 𝑧3 , cada una con la significancia que se da en la imagen. Obtener: la tabla de verdad
correspondiente, las ecuaciones booleanas, la simulación en software y la simulación física.

69

Figura 5.10. Condiciones para el ejercicio 5.5.

5.4. Circuitos aritméticos


Como es lógico suponer, un circuito aritmético es un circuito combinatorio que realiza
operaciones aritméticas tales como la suma, resta, multiplicación y división con números
binarios o con números decimales codificados binariamente.

5.4.1. Semisumador y sumador completo


La operación aritmética más básica es la suma o adición de dos dígitos binarios de cuatro
maneras posibles: 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, y, 1 + 1 = 10. Las tres primeras
operaciones producen una suma de un dígito, pero cuando ambos sumandos son iguales a 1,
la suma binaria consta de dos cifras. Cuando la suma da lugar a un bit significativo
adicional el acarreo obtenido de la suma de dos bits se suma al siguiente par de bits
significativo de orden superior.
Un arreglo que realice la adición de dos bits recibe el nombre de semisumador o sumador
medio. Se muestra a continuación la tabla de verdad, las ecuaciones booleanas descriptivas
y el circuito lógico.

Entradas Salidas
x y S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
De este modo:
𝑆 =𝑥⊕𝑦
𝐶 = 𝑥𝑦 Figura 5.11. Circuito semisumador
El circuito sumador completo es un arreglo combinatorio en el que además de realizar la
suma de dos números de un bit, considera un acarreo de una suma de bits precedente. Para
modelar el arreglo se debe considerar una tabla de verdad con tres entradas: los números 𝑥
e 𝑦, y el acarreo de entrada 𝐶𝑖𝑛 . Las salidas serían las mismas S; y con una pequeña
diferencia, 𝐶𝑜𝑢𝑡 , el acarreo de salida del sumador completo. La tabla de verdad para el
diseño es el que se muestra a continuación.

Entradas Salidas
𝑪𝒊𝒏 x y S 𝑪𝒐𝒖𝒕 70
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Tabla de verdad del sumador completo

Ejercicio 5.6. Obtenga las ecuaciones booleanas descriptivas del sumador completo.
Impleméntelas en software y arme el circuito correspondiente.

Figura 5.12. Esquema de solución para el ejercicio 5.6.

5.4.2. Sumador paralelo de n bits


Un sumador paralelo binario es un circuito digital que produce la suma aritmética de dos
números binarios en paralelo. Consta de circuitos sumadores completos conectados en
cascada, con el acarreo de salida de un sumador completo conectado al acarreo de entrada
del sumador completo siguiente. La figura 5.13 ilustra la interconexión de cuatro
sumadores completos (FA) para producir un sumador paralelo de cuatro bits, teniendo
como sumandos a 𝐴 = 𝑎3 𝑎2 𝑎1 𝑎0 y 𝐵 = 𝑏3 𝑏2 𝑏1 𝑏0. Los acarreos se encadenan a través de
los sumadores completos. Un sumador paralelo de n bits requiere n sumadores completos,
con cada acarreo de salida conectado al acarreo de entrada del sumador completo del
siguiente orden significativo.
71

Figura 5.13. Esquema de un sumador paralelo de 4 bits.

Existe otra forma de crear sumadores binarios, los cuales utilizan un arreglo en serie, pero
son circuitos de tipo secuencial, tópico de la unidad 6.

Ejercicio 5.6. Usando el diseño logrado en el ejercicio 5.5, construya un sumador de cuatro
bits, simulándolo en software y presentando su armado físico.

5.4.3. Semirestador y restador completo


De la misma manera en que se desarrolla el semisumador se puede diseñar un semirestador.
De nuevo se empieza realizando la tabla de verdad para deducir las ecuaciones
correspondientes.

Entradas Salidas
x y R P
0 0 0 0
0 1 1 1
1 0 1 0
1 1 0 0
De este modo:
𝑆 =𝑥⊕𝑦
Figura 5.14. Circuito semirestador.
𝑃 = 𝑥̅ 𝑦

Puede observar que la única diferencia con el circuito semisumador es el arreglo que se
hace para el préstamo P, que sustituye al acarreo.

De la misma manera podemos realizar la tabla para un restador completo, lo que en éste
caso significa tomar en cuenta el préstamo que se hace en un bit de precedencia. Observe
que en éste caso la resta se efectúa como 𝑥 − 𝑦 − 𝑃𝑖𝑛 Mostramos una tabla parcial del
mismo.
Entradas Salidas
x y 𝑷𝒊𝒏 R 𝑷𝒐𝒖𝒕

0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
72

Tabla de verdad parcial del restador completo.

Ejercicio 5.7. Simule en software y arme en físico el circuito semirestador. A continuación,


complete la tabla de verdad del circuito restador completo, diseñe, simule y arme el circuito
lógico correspondiente.

5.5. Circuitos decodificadores y codificadores


Las cantidades discretas de información se representan en sistemas digitales con código
binarios. Un código binario de n bits puede representar hasta 2n elementos distintos de
información codificada.
El decodificador es un circuito combinacional que convierte información binaria en hasta
2n salidas únicas. Si un decodificador posee n entradas y m salidas, se cumple que m = 2” y
se denomina decodificador n x m.

Un decodificador de binario a decimal de 2 x 4 (n = 2 y m = 4) se ilustra en la figura 5.15.

(a) (b)
Figura 5.15. Decodificador 2×4: (a) Diagrama lógico interno; (b) Bloque simbólico
Es de notar en el símbolo lógico la entrada E marcada con un círculo en su terminal, lo
mismo que las salidas Di, lo que significa que se manejan en lógica negativa, es decir, se
toma como valor verdadero al nivel de voltaje bajo o ‘0’.
Lo anterior se refleja en la tabla de verdad correspondiente, la cual se muestra a
continuación.

E A1 A0 D0 D1 D2 D3
0 0 0 0 1 1 1 73
0 0 1 1 0 1 1
0 1 0 1 1 0 1
0 1 1 1 1 1 0
1 X X 1 1 1 1
Tabla de verdad del decodificador 2×4.

Las entradas 𝐴0 y 𝐴1 , son el valor binario a codificar, mientras que las 𝐷𝑖 indican un código
distinto dependiendo de la combinación en la entrada, cada D encendida indica el número
decodificado, así, si selecciona 𝐴1 = 1 y 𝐴0 = 0, entonces 𝐷2 = 0, mientras que 𝐷0 =
𝐷1 = 𝐷3 = 1.

La terminal E permite que el módulo funcione o no funcione, razón por la cual se le conoce
como terminal de habilitación (ENABLE). De este modo, la variable E tiene como
finalidad:

 Inhibir el funcionamiento del módulo cuando su valor el ‘1’.


 Permitir que el modulo funcione con normalidad cuando su estado es ‘0’.

Ejercicio 5.8. Realice la implementación en software y en protoboard del decodificador


2×4 presentado y confirme la tabla presentada.

Ejercicio 5.9. Siguiendo la idea del decodificador 2×4, diseñe un decodificador 3×8, pero
con señal de habilitación y salidas en nivel alto. Debe presentar, tabla de verdad,
simulación en software y circuito en protoboard.

El codificador como bien se puede suponer, es lo opuesto del decodificador, asigna un


código determinado a una determinada señal de entrada.
El código generado será de n bits y dependerá del total de señales a codificar. Por ejemplo,
si se requiere codificar 4 señales, se requerirán de 2 bits; si se requieren de 8 señales serían
necesarios 3 bits. Así su nomenclatura sería: codificador de 2n entradas × n bits de salida.
Ejercicio 5.10. Diseñar un codificador 8×3, considerando la siguiente tabla

𝑫𝟎 𝑫𝟏 𝑫𝟐 𝑫𝟑 𝑫𝟒 𝑫𝟓 𝑫𝟔 𝑫𝟕 x y z
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 1 0 0
74
0 0 0 0 0 1 0 0 1 0 1
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1
Tabla de verdad para el ejercicio 5.10

Solución: De la tabla de verdad tenemos,


𝑥 = 𝐷4 + 𝐷5 + 𝐷6 + 𝐷7
𝑦 = 𝐷2 + 𝐷3 + 𝐷6 + 𝐷7
𝑧 = 𝐷1 + 𝐷3 + 𝐷5 + 𝐷7
Por lo que el diagrama lógico es el mostrado en la figura 5.16. Se deja al
estudiante su simulación en software y el armado físico.

(a) (b)
Figura 5.16. Codificador 8×3: (a) Diagrama lógico interno; (b) Bloque simbólico

En el codificador obtenido en el ejercicio 5.10, se considera que solo se activa una señal de
entrada por vez. Pero, ¿qué sucedería si se activasen más de una? La respuesta se debe
extraer de las ecuaciones. Supongamos por ejemplo, que 𝐷1 = 1 y 𝐷4 = 1, en este caso
resultaría que 𝑥 = 1, 𝑦 = 0, 𝑧 = 1, que se corresponde con el caso en el que se activa
únicamente D5 = 1. Al dispositivo con ésta característica se le denomina codificador sin
prioridad.

Para resolver este problema, existen codificadores para los que, en caso de activarse más de
una entrada, la salida será la que corresponde a la mayor de ellas, independientemente de
las restantes inferiores. Adicionalmente, se suelen codificar dos salidas más: una indica que
ninguna entrada está activa, y la otra que alguna entrada está activa. Esta medida permite
discernir entre los supuestos de que el circuito estuviera deshabilitado por la no activación
de la señal de capacitación, que el circuito no tuviera ninguna entrada activa, o que la 75
entrada número 0 estuviera activada.

Ejercicio 5.11. Se desea diseñar un codificador con prioridad 4×2, con una salida adicional
Z que indique si alguna de las señales de entrada 𝐼𝑖 , 𝑖 = 0,1,2,3, está activa (a 1). Se
muestra como ayuda la tabla de verdad correspondiente. Obtenga el diagrama lógico
correspondiente. Deberá mostrar como evidencia las ecuaciones booleanas descriptivas, la
simulación en software, y presentar el diseño armado. Se debe comprobar la prioridad al
decodificar el valor más alto cuando se active más de una señal de entrada.

Tabla para el ejercicio 5.11. Nota: Las ‘X’ son condiciones de ‘no importa’.

5.6. Multiplexores y Demultiplexores


El multiplexor es un módulo combinacional que selecciona a su salida una de las 2 n
posibles entradas usando para ello las n líneas de selección. A las entradas se les suele les
suele llamar canales, de tal forma que para distinguir entre multiplexores se les nombra
como Mux 2n×1 canales. En la figura 5.17 se presenta el bloque lógico de un Mux de 4×1.

Tabla de Verdad
𝑺𝟏 𝑺𝟎 M
0 0 A
0 1 B
1 0 C
1 1 D
A, B, C y D representan valores 0 o 1 en los canales
de datos de entrada, 𝑐0 , 𝑐1 , 𝑐2 , 𝑐3 , respectivamente.
(a) (b)
Figura 5.17. Multiplexor 4×1: (a) Bloque lógico; (b) Tabla de verdad simplificada.
Ejercicio 5.12. Obtener la circuitería interna de un multiplexor 4×1, como el mostrado en
la figura 5.17.
Solución: Tomamos como base la tabla mostrada en 5.17(b), pero la expandimos para
expresar los valores de cada entrada. Cuando alguna entrada es seleccionada,
los valores disponibles en las otras entradas no importan, lo cual
representaremos con ‘X’. Así la tabla correspondiente sería la que se muestra
a continuación.

𝑺𝟏 𝑺𝟎 𝑬𝟎 𝑬𝟏 𝑬𝟐 𝑬𝟑 M 76
0 0 A X X X A
0 1 X B X X B
1 0 X X C X C
1 1 X X X D D

De este modo: 𝑀 = 𝐴 + 𝐵 + 𝐶 + 𝐷,
A su vez: 𝐴 = 𝑆̅1 𝑆̅0 𝐸0, 𝐵 = 𝑆̅1 𝑆0 𝐸1 ,
𝐶 = 𝑆1 𝑆̅0 𝐸2 , 𝐷 = 𝑆1 𝑆0 𝐸3 .
Y el diagrama lógico es el mostrado en la figura 5.18. Queda al estudiante la
simulación en software y el armado físico del circuito.

Figura 5.18. Circuito solución del ejercicio 5.12.

El demultiplexor es, por supuesto, el caso opuesto del multiplexor, coloca el valor binario
asignado a su entrada, a uno de los 2n canales de salida, el cual se escoge a partir de sus n
terminales de selección.
En la figura 5.19 se presentan el bloque lógico y la tabla de verdad simplificada para un
Demux 1×4.
Tabla de Verdad
𝑆1 𝑆0 A B C D
0 0 M 0 0 0
0 1 0 M 0 0
1 0 0 0 M 0
1 1 0 0 0 M
M es el nombre de la terminal de entrada, cuyo valor
puede ser 0 o 1. 77
(a) (b)
Figura 5.19. Demultiplexor 4×1: (a) Bloque lógico; (b) Tabla de verdad-

Ejercicio 5.13. Diseñar, simular y armar la circuitería interna de un Demux como el de la


figura 5.19.
6. Circuitos Secuenciales
En esta unidad el estudiante:
 Describe el funcionamiento de los circuitos secuenciales y desarrolla
aplicaciones básicas de los mismos.

6.1. Multivibradores
En electrónica, un multivibrador es un circuito oscilador capaz de generar una onda 78
cuadrada. Según su funcionamiento se clasifican en:

 Astables, u oscilador libre, genera ondas a partir de su propia fuente de


alimentación, su funcionamiento es continuo, es decir, no requiere de intervención
alguna para oscilar.
 Por Disparo, requieren de una señal de disparo o impulso para pasar a estado activo
(oscilante). A su vez pueden ser:
o Biestables, si poseen dos estados o niveles de oscilación.
o Monoestables, si poseen sólo un estado.

Ejercicio 6.1. En la figura 6.1. se muestra un ejemplo de un oscilador astable a partir de


transistores NPN BC548C.

(a) (b)
Figura 6.1. Oscilador astable: (a) Diagrama eléctrico; (b) Forma de onda.

i. Realice una simulación en Proteus del mismo y verifique la forma de onda que se
muestra en 6.1. (b), obtenga la frecuencia del circuito. Posteriormente arme el
circuito en protoboard y repita el cálculo de la frecuencia en un osciloscopio.
ii. Cambie las resistencias R2 y R3 por valores de R2=R3=65 kΩ y R2=R3=100 kΩ y
repita el inciso anterior en cada caso. ¿Qué efecto tiene sobre la forma de onda?
iii. Cambie las capacitancias C1 y C2 por valores de C1=C2=50 µF y C1=C2=100 µF.
De nuevo repita el inciso i. ¿Cómo cambia la forma de onda en cada caso?
iv. Consulte en libros de electrónica y/o en internet la descripción del funcionamiento
del circuito oscilador. Pida asesoría con su docente de electrónica analógica para
comprender el funcionamiento del transistor de ser necesario. Elabore un informe
con las evidencias del trabajo realizado, así como del sustento teórico deducido de
su investigación. ¿Existe una manera de predeterminar la frecuencia de 79
funcionamiento de un circuito como el realizado en este ejercicio?

Ejercicio 6.2. La figura 6.2 muestra el circuito de un multivibrador monoestable


empleando de nuevo transistores NPN BC548C.

Figura 6.2. Circuito monoestable a transistor.

i. Obtenga la forma de onda generada por el circuito en Proteus, usando el


osciloscopio que proporciona el simulador. ¿Qué ocurre al pulsar el botón?
Implemente físicamente el circuito y compare sus formas de onda con el obtenido
en el simulador.
ii. Sustituya el capacitor por uno de 10 µF y uno 220 µF, y repita el proceso del inciso
anterior.
iii. Sustituya a R6 con valores de resistencia de 50 kΩ Y 100 kΩ y repita el proceso del
inciso i.
iv. Consulte en libros de electrónica y/o en internet la descripción del funcionamiento
del circuito oscilador. Elabore un informe con las evidencias del trabajo realizado,
así como del sustento teórico deducido de su investigación. ¿Existe una manera de
predeterminar el tiempo de operación de un circuito como el realizado en este
ejercicio?

6.2. Temporizadores
Existen en el mercado un conjunto de circuitos integrados denominados temporizadores 80
(timers) especialmente diseñados para realizar multivibradores monoestables y astables. El
temporizador 555 (NE555 de Signetics en versión bipolar y TLC555 de Texas Instruments
en versión CMOS) es un circuito integrado barato y muy popular que fue desarrollado en
1972 por Signetics Corporation.
El integrado en cuestión se fabrica en varios tipos de encapsulado (figura 6.3): 8 pines
MINIDIP, cápsula DIP de 14 pines y encapsulado metálico TO-99.

(a) (b) (c)


Figura 6.3. Encapsulado del CI 555: (a) DIP 8 pines; (b) DIP 14 pines; (c) TO-99 8 pines.

6.2.1. CI 555 configuración astable


La figura 6.4. presenta el diagrama genérico para el
funcionamiento astable del CI 555.

La entrada RESET se conecta a 𝑉𝐶𝐶 para evitar


salidas nulas. El capacitor en el pin 5 no es
indispensable, sin embargo, inhibe ruidos.

La resistencia equivalente 𝑅1 + 𝑅2 y la capacitancia


C determinan la constante de carga, mientras que 𝑅2 y
C determinan la constante de descarga.
Figura 6.4. Configuración astable
CI 555.
Al estar cortocircuitadas los pines 2 y 6, por lo
que están a la misma tensión. Si el capacitor C
está descargado al conectar la alimentación,
entonces el disparo (TRIG) y el umbral (THR) se
encontrarán a tensión de masa, en estas
circunstancias y por la configuración interna del
CI la salida (pin 3) estará a nivel alto (figura 6.5).
Al mismo tiempo C se empezará a cargar a través 81
de 𝑅1 + 𝑅2 . Éste capacitor se carga hasta un
máximo de 2/3 del voltaje de alimentación a
razón de:

𝑡1 = 0.693(𝑅1 + 𝑅2 )𝐶1

Luego ese mismo capacitor se descargará a 1/3


del voltaje de alimentación a razón de: Figura 6.5. Formas de onda en la salida
en el 555 en configuración astable.
𝑡2 = 0.693 𝑅2 𝐶1

De este modo la frecuencia de operación de la configuración astable se puede calcular de la


expresión:

1 1.44
𝐹= =
𝑇 (𝑅1 + 2𝑅2 )𝐶

Ejercicio 6.3. Diseñar un oscilador astable a 1 kHz con una onda lo más cuadrada posible,
con fuente de alimentación a 10V. Aspectos a evaluar: Presentación visual (circuitería) +5,
presentación oral +5, entrega posterior con un reporte en electrónico conteniendo cálculos,
toma de forma de onda y medición de frecuencia en osciloscopio, presentar un margen del
error entre los cálculos y la frecuencia real obtenida +5.

Ejercicio 6.4. Realizar los cálculos necesarios y la circuitería necesaria para obtener una
onda cuadrada de que vaya de los 10 Hz a un 1KHz. Aspectos a evaluar: Presentación
visual (circuitería) 5, presentación oral +5, puntualidad +5.

6.2.2. CI 555 configuración monoestable


El CI 555 tiene dos configuraciones para el modo monoestable: salida normalmente baja,
lo cual significa que mientras no se aplique la señal de disparo, la salida estará a voltaje
bajo, y pasará a alto temporalmente cuando se aplique el disparo; y, salida normalmente
alta, que implica que la salida está normalmente a voltaje alto, y pasará a voltaje bajo
temporalmente cuando se aplique el disparo.

En la figura 6.6 se ofrece la configuración monoestable con salida normalmente baja. La


salida se encuentra a nivel bajo si el pin de disparo está por encima de 1/3 del voltaje de
alimentación. Luego, la salida pasa a 2/3 del voltaje de alimentación si el voltaje desciende
por debajo de 1/3 de ese voltaje en el pin de disparo. En otras palabras, el estado en reposo
del monoestable es la salida a nivel de voltaje bajo y el disparador está normalmente en
estado alto. La señal de disparo se aplica con un voltaje bajo, y de este modo la salida pasa 82
a nivel de voltaje alto temporalmente, para después volver a su estado de reposo.
El tiempo en estado alto depende de cuánto tarde en cargarse el capacitor 𝐶1 . Después de
ello volverá a su estado normalmente bajo en la salida.
El intervalo en estado alto se determina por:

𝑡 = 1.1 𝑅𝐶1

𝐶2 es de nuevo un capacitor cuya única función es limitar el ruido externo, cuyo valor es de
10 nF.

(a) (b)
Figura 6.6. Configuración monoestable del CI 555, salida normalmente baja:
(a) Diagrama eléctrico; (b) Formas de onda

Del mismo modo la figura 6.7 presenta la configuración monoestable con salida
normalmente alta. En este caso el estado en reposo del circuito es el nivel de voltaje alto, la
señal de disparo normalmente es un voltaje bajo. Al aplicar el nivel de voltaje alto en la
terminal de disparo, la salida del arreglo se activa presentando temporalmente un nivel de
voltaje bajo, para después volver a su estado de reposo. La ecuación para el cálculo del
tiempo en estado activo es la misma que en la configuración monoestable con salida
normalmente baja. De nuevo 𝐶2 = 10 𝑛𝐹.

83

Figura 6.7. Diagrama eléctrico del monoestable con salida normalmente alta.

Ejercicio 6.5. Diseñar un circuito monoestable con salida normalmente baja para una
temporización de 10 segundos. Aspectos a evaluar: Presentación visual (circuitería) +5,
presentación oral +5, entrega posterior con un reporte en electrónico conteniendo cálculos y
la medición del tiempo real, presentar un margen del error entre los cálculos y el tiempo
real obtenido +5.

Ejercicio 6.6. Realizar los cálculos necesarios y la circuitería necesaria para obtener un
oscilador monoestable con salida normalmente baja capaz de variar el tiempo de 5 a 30
segundos. Aspectos a evaluar: Presentación visual (circuitería) 5, presentación oral +5,
puntualidad +5.

6.3. El Multivibrador biestable


Un biestable es un circuito oscilador (multivibrador) que es capaz de permanecer en uno de
dos estados posibles durante tiempo indefinido en ausencia de perturbaciones. Ésta
característica es lo que les hace especialmente útiles en electrónica digital porque permite el
almacenamiento de información.

Se clasifican en:
 Síncronos o asíncronos, según usen o no señal de reloj, respectivamente.
 Latches, si se activan por nivel de voltaje; o Flip-Flops, si se activan al leer la
transición en los niveles de voltaje (figura 6.8), ya sea alto a bajo (flanco negativo)
o de bajo a alto (flanco positivo).
Figura 6.8. Niveles de Voltaje y flancos. 84

Ejercicio 6.7. Implemente en software y físicamente el circuito presentado en la figura 6.9,


use transistores de propósito común, como el BC548. Describa el funcionamiento del
arreglo al presionar los botones etiquetados como Set y Reset. ¿Qué utilidad podría tener un
circuito como éste?

Figura 6.9. Circuito para el ejercicio 6.10.

6.3.1. El Latch SR
El Latch más simple es el SR (Set-Reset). Tiene por finalidad poner un 1 en la salida (Set),
almacenarlo y borrarlo (Reset). El SR se puede construir con compuertas NOR o NAND
(figura 6.10).
85

Figura 6.10. Latch Set-Reset.

Ejercicio 6.8. Obtención de la tabla de verdad del latch SR. En un simulador realice el
arreglo del SR con compuertas NOR según se muestra en la figura 6.11 y obtenga la tabla
de verdad del arreglo. Tome como salida la terminal indicada con Q. El indicador luminoso
etiquetado con Q’, no se considera indispensable, sin embargo, por convención se
considera el complemento de la “auténtica” salida Q. A continuación arme el circuito
físicamente y compruebe la tabla obtenida.
Solución: La siguiente tabla muestra el proceso de prueba:

Paso Acción en simulación


Vcc
I. Al comenzar la simulación SET U3
tenemos como condiciones Q'

iniciales S=R=Q=0. En este caso NOR

no se cumple que Q’ sea el 10k


Q 220

U4
complemento de Q, es una RESET
220
condición no deseada. NOR

Consideraremos por convención


10k
que el sistema no está activo en
ésta situación.
Vcc
II. Al presionar Set, Q pasa de 0 a SET U3
1. Incluso si se deja de pulsar Q'

Set, Q permanece en 1. Se dice NOR

que se ha almacenado un dato, 10k


Q 220

“se ha puesto a uno”. Notar que RESET


U4

220
en reposo la señal de disparo
NOR
está a cero, y se dispara con
10k
unos.
Vcc
III. A continuación, si presionamos SET U3
Reset, Q pasa de 1 a 0. Incluso al Q'

soltar Reset, Q permanece en 0. NOR

Se dice que se ha eliminado el 10k


Q 220

dato o que se ha limpiado, o “se RESET


U4

ha puesto a cero”. Notar que en 220

este paso y en el anterior, Q’ se NOR

comporta como el complemento 10k

de Q. 86
Vcc
IV. Si intentamos presionar Set y SET U3
Reset a la vez obtenemos de Q'

nuevo, un estado prohibido, por NOR

ser una situación “provocada” 10k


Q 220

por la acción de los disparos, y RESET


U4

porque no se cumple que Q’ sea 220

NOR
el complemento de Q.
10k

Así, una tabla que describe los pasos de I a III es la que se muestra a
continuación. Se hace hincapié en que aquí se considera una condición
inicial Q=1 y se supone que Q’ cumple con ser el complemento de la salida.
Además, Q(t) representa el estado anterior y Q(t+1) el estado siguiente en la
misma salida Q.
Q(t) S R Q(t+1)
1 00 1
1 01 0
0 10 1
1 00 1
1 10 1

Una tabla simplificada es la que se presenta a continuación.

S R Q(t+1) Función
0 0 Q(t) Dato conservado
0 1 0 Limpia
1 0 1 Pone a uno
1 1 ? Indeterminado
El bloque lógico para latch SR se muestra en la figura 6.11, configurado de manera
equivalente para la simulación del ejercicio 6.8. Notar la posición de la salida Q.

87

Figura 6.11. Implementación del bloque lógico SR.

Ejercicio 6.9. Repita el ejercicio 6.8 usando la configuración con compuertas NAND.
Considere que las entradas SET y RESET emplean ahora lógica negativa, normalmente
están a estado alto y se disparan con estados bajos, sin embargo, la salida sigue empleando
lógica positiva.

6.3.2. Latch SR temporizado


Al latch SR se le puede incorporar un arreglo de compuertas a la entrada que permita
habilitar o deshabilitar el funcionamiento del arreglo, tal arreglo se minimiza al emplear
compuertas NAND (figura 6.12).

(a) (b)
Figura 6.12. Latch SR con terminal de habilitación: (a) Circuito: (b) Bloque lógico.
Ejercicio 6.10. Basado en la experiencia de los ejercicios 6.8 y 6.9 obtenga la tabla de
verdad del circuito presentado en la figura 6.12. Debe incluir como entrada a la señal de
habilitación (Enable=E).

La señal de habilitación puede usarse a su vez para lograr que el dispositivo reaccione sólo
cuando un nivel de voltaje provisto por un circuito multivibrador astable habilite al sistema,
así el SR funcionará de manera temporizada (figura 6.13).

88

Figura 6.13. Arreglo del latch SR con señal de habilitación conectado a un astable.

Ejercicio 6.11. Arme físicamente el circuito de la figura 6.13 y compruebe que el arreglo
funciona de manera temporizada. De ser necesario disminuya la frecuencia del astable.. ¿El
latch responde al pulso alto o al pulso bajo? Agregue un inversor entre la salida del astable
y la terminal etiquetada como CLK, ¿responde al pulso alto o al bajo? ¿El astable responde
sólo a los cambios de nivel de voltaje (flancos) en el astable o responde durante el pulso?

En la figura 6.14. se presenta el bloque lógico del latch SR temporizado en el que se


incluye de manera explícita la terminal de reloj (clock), la cual puede estar expresada como
un triángulo como en este caso o mediante las siglas CLK o CP.
Figura 6.14. Bloque lógico del latch SR temporizado.

89
6.3.3. El Flip Flop
El Flip-Flop (aquí abreviado FF) es fundamentalmente un arreglo de latchs temporizados en
el que se busca que las salidas respondan a los cambios en las entradas exclusivamente en
los periodos de transición (flancos) de voltaje ya sean de alto a bajo o de bajo a alto,
mientras que el resto del tiempo conservan su estatus previo.

Existen dos tipos flip-flops:

 Flip-Flop maestro-esclavo, es un juego de dos latchs temporizados conectados en


cascada, en la que el que recibe los datos externos es llamado maestro, el cual a su
vez traspasa sus cambios de estado, con un cierto retardo de tiempo al segundo
latch, llamado esclavo. En la figura 6.15 se muestra un arreglo maestro-esclavo a
partir de latches SR. Como puede apreciarse las salidas 𝑄𝑚 y 𝑄𝑚 ’ son conectadas a
las entradas S y R del latch esclavo. El hecho de que el esclavo tenga su terminal de
reloj complementada respecto del maestro provoca que el traspaso se dé en los
flancos negativos, así si se diese un cambio S o R en el intervalo de tiempo después
del flanco ésta señal es ignorada hasta que se da el siguiente flanco.

Figura 6.15. Flip-Flop RS maestro-esclavo.

 Flip-Flop disparado por flanco, igualmente sincroniza el cambio de estado


durante la transición del pulso de reloj, pero a expensas de un voltaje de umbral
específico, las entradas son aseguradas y el FF no se ve afectado por cambios
adicionales en las entradas (figura 6.16). En otras palabras, aunque también
responde a las transiciones, el voltaje en la transición de pulsos de reloj además
debe superar un voltaje mínimo para que el dato a la entrada sea leído.

90

Figura 6.16. Arreglo de un Flip-Flop RS disparado por flanco.

Ejercicio 6.12. Arme en protoboard los arreglos de las figuras 6.15 y 6.16, y las formas de
onda correspondientes con ayuda de un generador de funciones y un osciloscopio. Exponga
sus hallazgos en un breve informe. Debe mostrar evidencias de la toma de formas de onda y
la toma de valores.

El flip-flop SR es útil en el entendimiento del funcionamiento de estos dispositivos, pero no


se produce comercialmente debido a su estado prohibido, dejando su funcionamiento sólo
en su configuración latch (en TTL el 74LS279). A cambio la industria fabrica circuitos
integrados que son variantes del flip-flop RS:

 FF tipo D. En esta variante del SR la entrada S se interconecta a la entrada R a


través de un inversor, de tal forma que sus entradas quedan reducidas a una: la
terminal D (figura 6.17 (a)). La tabla de transición se muestra en la figura 6.17 (c).
En TTL su nomenclatura es 74LS74.

91

(b)

(a) (c)
Figura 6.17. FF tipo D: (a) Diagrama interno; (b) Bloque lógico; (c) Tabla de transición.

 FF tipo JK. Es justo una versión mejorada del RS, aquí la entrada J (Jump) hace las
veces de S, y K (Kill) hace las veces R (figura 6.18). La diferencia con el SR radica
en que por su configuración evita el estado prohibido, para en su lugar, entregar el
complemento de Q(t) en el estado siguiente Q(t+1). Nomenclatura TTL: 74LS112.

(a) (b) (c)


Figura 6.18. FF tipo JK: (a) Diagrama interno; (b) Bloque lógico; (c) Tabla de transición.

 FF tipo T. La T viene de “toggle” (conmutación). Es una modificación del FF JK,


en la que la salida K es cortocircuitada hacia J, de tal modo que queda una sola
entrada T (figura 6.19). Su principal característica es la de complementar la salida
Q(t) en el estado siguiente Q(t+1), cuando se habilita la entrada (T=1) y cuando
ocurre un flanco.

92
(b)

(a) (c)
Figura 6.19. FF tipo T: (a) Circuito; (b) Bloque lógico; (c) Tabla de transición.

Ejercicio 6.13. Implemente en un simulador los circuitos mostrados en las figuras 6.17,
6.18 y 6.19 y compruebe las tablas de transición.

6.4. Circuitos secuenciales


Un circuito de conmutación secuencial se define como un circuito bivaluado en el cual, la
salida en cualquier instante depende de las entradas en dicho instante y de la historia pasada
(o secuencia) de entradas (figura 6.20).

Figura 6.20. Esquema de un circuito secuencial.

Esta definición implica una serie de características inherentes a estos sistemas. Entre éstas
podemos destacar las siguientes:
 Poseen uno o más caminos de realimentación, es decir, una o más señales internas o
de salida se vuelven a introducir como señales de entradas. Gracias a esta
característica se garantiza la dependencia de la operación con la secuencia anterior.
 Como es lógico, existe una dependencia explícita del tiempo. Esta dependencia se
produce en los lazos de realimentación antes mencionados. En estos lazos es
necesario distinguir entre las salidas y las entradas realimentadas. Esta distinción se
traducirá en un retraso de ambas señales (en el caso más ideal).

Al tener componentes de tipo biestables, los circuitos secuenciales pueden se asíncronos y 93


síncronos. A los sistemas que emplean circuitos secuenciales síncronos se les conoce como
Máquinas de Estado. Existen dos modelos básicos:

 Modelo Moore. Las salidas dependen de los estados en la salida de la circuitería de


memoria (secuencial). Las salidas del módulo de memoria son llamadas variables
de estado.

Figura 6.21. Diagrama a bloques de una máquina Moore.

 Modelo Mealy. Las salidas dependen de los estados en el circuito de memoria y de


las entradas del arreglo completo.

Figura 6.22. Diagrama a bloques de una máquina Mealy.


Un circuito puede usar sólo un modelo de éstos o presentar combinaciones de ambos.

6.4.1. Tablas descriptivas y diagramas de estado


Aunque las tablas de transición de los biestables son útiles para comprender su
comportamiento, no permite visualizar las posibles aplicaciones que tienen las celdas
secuenciales básicas (flip-flops). Por lo anterior existen otras maneras de expresar la
información tabular, a saber:
94
 Tabla de funcionamiento. Es una tabla que representa las combinaciones en las
entradas y presenta como salida la situación en el ciclo siguiente de Q a partir de
dichas entradas. Q(t) es el estado anterior, mientras que Q(t+1) es el estado
siguiente. Se utiliza, por lo general, en la descripción del funcionamiento de los Flip
Flops comerciales (figura 6.23).

S R Q(t+1)
0 0 Q(t)
0 1 0
1 0 1
1 1 *
Figura 6.23. Tabla de funcionamiento del FF SR.

 Tabla de Excitación. En esta tabla se colocan en primer término el estado presente


(Q(t)) y en seguida el posible estado siguiente (Q(t+1)). En segundo término se
colocan las entradas (en este caso serían S y R), cuyas combinaciones se colocan en
función de cómo deberían estar para provocar el cambio de estado en Q que se
indica a la izquierda.

Q(t) Q(t+1) S R
0 0 0 X
0 1 1 0
1 0 0 1
1 1 X 0
Figura 6.24. Tabla de excitación del FF SR.

 Tabla Característica o Tabla de Estados. Como se puede apreciar en la figura


6.25, es una variante de la tabla de excitación Es una tabla en la que se colocan
como entradas al estado anterior, y las variables de excitación del flip flop (en
nuestro ejemplo S y R). Como salida se pone al estado siguiente, cuyos valores se
colocan en función de las combinaciones que aparecen como entradas (figura 6.25).
Éste tipo de tabla es muy útil en el diseño de un circuito secuencial.

Q(t) S R Q(t+1)
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 * 95
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 *
Figura 6.25. Tabla de estados del FF SR

Un elemento directamente relacionado con la tabla de estados es el diagrama de estados,


que es una representación gráfica de los cambios de estado en un dispositivo secuencial.
Los estados se representan mediante círculos. El flujo de estados se indica mediante una
flecha. Provee nombres y asigna códigos a cada estado. Especifica las condiciones para el
cambio de estado. En la figura 6.26 tenemos el diagrama de estados del Flip Flop RS.

Figura 6.26. Diagrama de estados para el FF SR.


6.4.2. Ecuaciones de estado
En un proceso de diseño secuencial, el diagrama de estados permite obtener la tabla de
estados ésta a su vez permite la escritura de la llamada ecuación de estado, utilizando los
métodos de reducción usuales vistos en el Álgebra de Boole.

Por ejemplo, de acuerdo con la figura 6.25, tendríamos el mapa de Karnaugh de la figura
6.27.

96

Figura 6.27. Mapa de Karnaugh para el análisis del FF SR.


De donde:
𝑄(𝑡 + 1) = 𝑆 𝑅̅ + 𝑄(𝑡)𝑅̅ = 𝑅̅ (𝑆 + 𝑄(𝑡)) = ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝑅̅ (𝑆 + 𝑄(𝑡))

𝑄(𝑡 + 1) = ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝑅̅ + (𝑆 + 𝑄(𝑡)) = ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅̅̅̅̅̅̅̅ 𝑅 + (𝑆̅̅̅̅̅̅̅̅̅̅̅
+ 𝑄(𝑡))

Para obtener el circuito lógico suponemos que Q(t+1) es una salida y que Q(t) es una
entrada tal como se aprecia en la figura 6.28 (a). Luego simplemente cortocircuitamos Q(t)
con Q(t+1), puesto que en realidad son el mismo nodo (figura 6.28 (b)). Evidentemente el
resultado es el latch SR con compuertas NOR que se presentó previamente en la figura 6.10

(a) (b)
Figura 6.28. Interpretación de la ecuación de estado: (a) Entradas y salidas separadas;
(b) Interconexión de la terminal de retroalimentación.

6.5. Fundamentos de Diseño de Circuitos Secuenciales


En el proceso de diseño de un circuito secuencial se debe considerar una serie de pasos que
no necesariamente se deben seguir al pie de la letra, pero que facilitarán la obtención del
diagrama lógico correspondiente. Se debe tener claro que lo que se busca es escoger las
celdas secuenciales básicas (los flip-flops) y en función de ellas diseñar el bloque
combinacional que cumpla con los requerimientos del problema.
Los pasos para este procedimiento son:
I. Establecer claramente en palabras la descripción del comportamiento del circuito.
Es deseable la adquisición o la realización de toda información que ayude a este
aspecto, por ejemplo, construyendo un diagrama de estados.
II. Con la información del paso I obtener la tabla de estados. De ser posible verificar la
posibilidad de reducir estados.
III. Asignar valores binarios a los estados para determinar la cantidad de flip-flops
necesarios. Como flip-flop puede manejar un bit, entonces, para dos estados
requerimos un flip-flop, para cuatro estados requerimos de dos flip-flops, etc. Podría
ser útil asignar a cada flip-flop una etiqueta literal: A, B, C, etc. Además, considere 97
que es posible que un circuito podría tener estados sin usar, los cuales pueden
considerarse como condiciones de “no importa”, que deben usarse inteligentemente.
IV. Elegir el flip-flop para el diseño. En general, podría usarse cualquiera, sin embargo,
uno u otro puede conducir a un circuito combinatorio extenso o pequeño, o bien
facilitar o complicar el diseño.
V. Construir las tablas necesarias para a través de ellas determinar el comportamiento
de todo el sistema.
VI. Usando cualquiera de los métodos de simplificación deducir las funciones de salida
del sistema y las posibles funciones de entrada del flip-flop.
VII. Dibujar el diagrama lógico.

Ejercicio 6.14. Construir un circuito que en un sistema de comunicación serial sea capaz de
detectar la secuencia 0-0-1, use el modelo de una máquina Moore.
Solución: Por la interpretación del texto, dibujamos un diagrama de estados (figura
6.29).

Figura 6.29. Diagrama de estados (Moore) para el ejercicio 6.14.


Se observa que se requieren dos flip-flops, a los cuales llamaremos X e Y.
Obtenemos la tabla de estados

Estado presente Entrada Estado siguiente Salidas


𝑸𝒙 𝑸𝒚 I 𝑸𝒙 𝑸𝒚 S
0 0 0 0 1 0
0 0 1 0 0 0
0 1 0 1 0 0
0 1 1 0 0 0 98
1 0 0 0 0 0
1 0 1 1 1 1
1 1 0 0 1 0
1 1 1 0 0 0

De la tabla anterior se verifica la ecuación para la salida: 𝑆 = 𝑄𝑥 𝑄𝑦 .


Ahora elegimos el tipo de FF, en este caso seleccionamos el tipo D. Luego,
para obtener el circuito combinacional a la entrada de cada FF, agregamos a
la tabla de estados anterior dos columnas, una para cada entrada de FF. Éstas
columnas se llenan en función de cómo debería estar cada entrada D en
función de las entradas del sistema y los estados anteriores, para cambiar
hacia el estado siguiente correspondiente.

Estado presente Entrada Estado siguiente Entradas de los Salidas


Flip- Flops
𝑸𝒙 𝑸𝒚 I 𝑸𝒙 𝑸𝒚 𝑫𝒙 𝑫𝒚 S
0 0 0 0 1 0 1 0
0 0 1 0 0 0 0 0
0 1 0 1 0 1 0 0
0 1 1 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 1 1 1
1 1 0 0 1 0 1 0
1 1 1 0 0 0 0 0

El término para 𝐷𝑥 se puede obtener por inspección: 𝐷𝑥 = ̅𝑄̅̅𝑥̅𝑄𝑦 𝐼 ̅ + 𝑄𝑥 ̅̅̅̅


𝑄𝑦 𝐼.
Del mismo modo para 𝐷𝑦 , tenemos, 𝐷𝑦 = ̅𝑄̅̅𝑥̅ ̅̅̅̅
𝑄𝑦 𝐼 ̅ + 𝑄𝑥 ̅̅̅̅
𝑄𝑦 𝐼 + 𝑄𝑥 𝑄𝑦 𝐼.̅
Para reducir considere:
̅̅̅̅̅̅̅̅̅̅̅
𝐷𝑦 = 𝐼 ̅ (𝑄 ̅̅̅̅
𝑥 ⊕ 𝑄𝑦 ) + 𝑄𝑥 𝑄𝑦 𝐼

Por lo que el circuito lógico queda como en la figura 6.30. Se deja al


estudiante su simulación y armado físico. ¿Efectivamente el circuito
obtenido es una máquina de estados de tipo Moore?
99

Figura 6.30. Circuito lógico solución del ejercicio 6.15.

Ejercicio 6.16. Repita el ejercicio 6.15, usando ahora el modelo de una máquina Mealy.
Solución: Ahora el diagrama de estados es el mostrado en la figura 6.31.

Figura 6.31. Diagrama de estados del ejercicio 6.16.

La tabla de estados correspondiente es:


Estado presente Entrada Estado siguiente Salidas
𝑸𝒙 𝑸𝒚 I 𝑸𝒙 𝑸𝒚 S
0 0 0 0 1 0
0 0 1 0 0 0
0 1 0 1 0 0
0 1 1 0 0 0
1 0 0 0 0 0
1 0 1 0 0 1
1 1 X 0 0 0 100

̅̅̅̅
De donde la salida es: 𝑆 = 𝑄𝑥 𝑄 𝑦 𝐼.
De nuevo elegimos FF tipo D y lo agregamos a la tabla de estados.

Estado presente Entrada Estado siguiente Entradas de los Salidas


Flip- Flops
𝑸𝒙 𝑸𝒚 I 𝑸𝒙 𝑸𝒚 𝑫𝒙 𝑫𝒚 S
0 0 0 0 1 0 1 0
0 0 1 0 0 0 0 0
0 1 0 1 0 1 0 0
0 1 1 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 1 1 1
1 1 0 0 1 0 1 0

En este caso no requerimos de mapas de Karnaugh para verificar que:

𝐷𝑥 = ̅𝑄̅̅𝑥̅ 𝑄𝑦 𝐼 ̅
𝐷𝑦 = ̅𝑄̅̅̅𝑥 ̅̅̅̅
𝑄𝑦 𝐼 ̅

Y entonces el circuito lógico es el que se muestra en la figura 6.32 (página


siguiente). De nuevo se deja al estudiante la simulación y el armado del
circuito.

Comparando los dos arreglos, responda a las siguientes preguntas:

 ¿Puede explicar por qué es una máquina de estados tipo Mealy?


 ¿Qué ventajas presenta este arreglo respecto del tipo Moore?
 ¿Qué inconvenientes encuentra en este nuevo arreglo?
101

Figura 6.32. Circuito lógico solución del ejercicio 6.16.

6.5.1. Contadores
Un circuito secuencial que pasa por una secuencia prestablecida de estados conforme se
van aplicando una serie de pulsos se llama contador. Los pulsos de entrada (de cuenta),
pueden ser pulsos de reloj o de alguna fuente externa y no necesariamente estar
sincronizados con el reloj del sistema contador.

El contador más simple es aquel que sigue la secuencia de la numeración binaria natural,
por lo que es llamado contador binario. Un contador de binario de n bits es capaz de
realizar desde 0 hasta 2𝑛 − 1. Un ejemplo podría ser un contador binario de 3 bits, cuyo
diagrama de estados se presenta la figura 6.33.

Figura 6.33. Diagrama de estados para un contador binario de 3 bits.

Es posible mostrar que la implementación física de contadores es simple si se modela con


flip-flops tipo T. En la figura 6.34 se implementa el contador de 3 bits empleando como FF
base al T.
102

Figura 6.34. Contador de 3 bits. El FF tipo T se implementa con un FF tipo JK


cortocircuitando sus entradas.

Ejercicios 6.17. Muestre los pasos intermedios para implementar el diagrama de estados de
la figura 6.33, en un circuito como el de la figura 6.34.

El contador comentado es un arreglo cuyo funcionamiento es incondicional, es decir, tan


sólo ponerle alimentación, éste empezará el proceso de conteo. Una variante del circuito
anterior es aquel que permite realizar una pausa en el proceso. En la figura 6.35 mostramos
el diagrama de estados para un contador con pausa de dos bits, cuando la entrada I=0
cuenta de manera ascendente. Cuando I=1 el contador se detiene, en cuanto se vuelve a
poner a 0 continua su conteo desde el número en que se hizo la pausa.

Figura 6.35. Diagrama de estados para un contador con pausa de dos bits.
El circuito correspondiente para el diagrama de estados de la figura 6.35 se muestra en la
figura 6.36, usando en este caso FF tipo D.

103

Figura 6.35. Circuito para el contador de dos bits con pausa.

Ejercicio 6.18. Desarrolle los pasos intermedios que llevan desde el diagrama de estados
hasta el circuito contador con pausa de dos bits. Implemente en protoboard el circuito
diseñado.

Ejercicio 6.19. En la figura 6.36 mostramos el circuito lógico para un contador ascendente-
descendente de dos bits. Auxiliándose de un software simulador, obtenga el diagrama de
estados que describa la operación del mismo. En base a lo anterior obtenga la tabla de
estado y compruebe las ecuaciones descriptivas del circuito.
104

Figura 6.36. Circuito lógico de un contador ascendente-descendente de dos bits.

6.5.2. Registros
Un registro es un grupo de celdas de almacenamiento binario capaz de retener la
información contenida. En este sentido un grupo de FF's son un registro, siempre que éstos
operen de manera sincronizada. Así, un registro de n-bits tiene un grupo de n flip-flops y
tiene la capacidad de acumular cualquier información binaria que contiene n bits. Los
registros también pueden contener elementos combinacionales realizando alguna tarea
relativa, como controlando cuándo y cómo se trasfiere nueva información al registro.

Un cierto tipo de dispositivos similares a los registros se pueden armar a partir de latches,
lo que provoca que éstos sean sensibles al pulso en la retención de un dato, razón por la
cual se les llama retenedores. Denominaremos registros a aquellos que están formados con
celdas que son sensibles a los flancos (de subida o bajada), es decir, con auténticos flip-
flops.

El registro más simple es aquel formado por un arreglo de flip-flops sin ninguna compuerta
externa. La figura 6.37 muestra tal registro construido con cuatro flip-flops tipo D y un
pulso de reloj común de entrada. El pulso de reloj de entrada habilita todos los flip-flops de
manera que Ia información disponible presente en las cuatro entradas pueda ser trasferida al
registro de 4 bits. A su vez las cuatro salidas pueden ser cateadas para obtener la
información acumulada en el registro
Figura 6.37. Registro con carga en paralelo de 4 bits: 105

Otro tipo de registros es aquel que puede hacer transferencia bit a bit, uno cada vez,
desplazando los bits del registro fuente hacia el registro de destino, razón por la cual se les
denomina registros de desplazamiento. La figura 6.38 ilustra un registro de
desplazamiento de cuatro bits.

Figura 6.38. Registro de desplazamiento de 4 bits

En la figura La salida serial (S0) del registro A va a la entrada serial (SI) de un registro B.
Para prevenir la pérdida de información almacenada en el registro fuente, al registro A se le
obliga a recircular su información conectando la salida serial a su terminal de entrada serial.
El contenido inicial en el registro B es desplazado hacia afuera a través de su salida serial y
se pierde a no ser que se desplace a un tercer registro de desplazamiento. La entrada de
control de desplazamiento determina cuándo y cuántas veces se desplazan los registros.
Esto se hace por medio de la compuerta AND que permite pasar los pulsos de reloj a Ios
terminales CP solamente cuando el control de desplazamiento es 1.

Figura 6.39. Ejemplo de transferencia serie entre registros de desplazamiento.


Ejercicio 6.20. Pruebe en simulador los arreglos mostrados en las figuras 6.37, y 6.39.

Ejercicio 6.21. Empleando multiplexores diseñe un registro de 4 bits que permita la carga
en paralelo y el desplazamiento a la derecha.

6.5.3. Memorias
Los registros, cuando son vistos desde el punto de vista computacional se clasifican en:
 Operacionales, que son registros que acumulan información binaria en sus flip-
flops de manera temporal y poseen arreglos combinacionales para la realización de 106
tareas de procesamiento de datos.
 Almacenadores, son registros cuya única tarea es la retención de datos.

Una unidad de memoria es una colección de registros de almacenamiento (también


llamados, registros de memoria) que actúan conjuntamente con los circuitos asociados
necesarios para trasferir información hacia adentro y hacia afuera de tales registros.
La memoria almacena información binaria organizada por grupos llamados palabras y cada
palabra ocupa un registro de memoria. Las palabras pueden contener cualquier tipo de
código que bien puede ser un operando, una instrucción, un grupo de caracteres
alfanuméricos u otro tipo de información binaria. La comunicación entre una unidad de
memoria y lo que la rodea se logra por medio de dos señales de control y dos registros
externos. Las señales de control especifican la dirección de la trasferencia requerida, esto
es, cuando una palabra debe ser acumulada en un registro de memoria o cuando una palabra
almacenada previamente debe ser trasferida hacia afuera del registro de memoria. Un
registro externo especifica el registro de memoria particular escogido entre los que estén
disponibles; el otro especifica la configuración de bits particular de la palabra en cuestión
(figura 6.40).

Figura 6.40. Diagrama a bloques de una unidad de memoria.


Un ejemplo más explícito se muestra en la figura 6.41. En él tenemos tres registros: el
registro de direcciones de memoria, (MAR, Memory Address Register), el registro de
intercambio temporal de memoria (MBR, en inglés Memory Buffer Register) y el registro
de memoria de almacenamiento (M) que justamente es direccionada por MAR. Como el
número binario equivalente en MAR es el decimal 42, el registro de memoria direccionado
por el MAR es justo aquel que se localiza en la línea (dirección) 42.

107

Figura 6.41. Ejemplo de la gestión de una unidad de memoria.

La secuencia de operaciones necesarias para transferir una palabra de la unidad de memoria


con destino al MBR es:
i. Trasferir los bits de dirección de la palabra seleccionada al MAR.
ii. Activar la entrada de control de lectura.

En este ejemplo, la información binaria contenida en el presente, en el registro de memoria


de la posición 42, es transferida a la memoria de intercambio (figura 6.42).

Figura 6.42. Transferencia de memoria desde la unidad de memoria al MBR.


La secuencia de operaciones necesarias para almacenar una nueva palabra a la memoria es:
i. Trasferir los bits de dirección de la palabra seleccionada al MAR.
ii. Trasferir la palabra al MBR.
iii. Activar la entrada de control de escritura.

El resultado de nuestro para un ejemplo de escritura se ilustra en la figura 6.43. Los bits de
datos del MBR se almacenan en la dirección 42 del registro de memoria.

108

Figura 6.43. Transferencia de datos hacia la unidad de memoria.

Ejercicio 6.22. En un simulador electrónico diseñe una memoria de 4 nibbles. Use


multiplexores para direccionar las ubicaciones de memoria, a la vez de que debe evidenciar
el circuito combinatorio que habilite la escritura y lectura de datos en memoria, desde y
hacia el MBR.
7. Convertidores
En esta unidad el estudiante:
 Conoce, describe e implementa los diferentes tipos de convertidores de señal
existentes.

7.1. Funcionamiento del ADC 109


El conversor es un dispositivo que recibe una señal de entrada Vent y la transforma en una
palabra digital Pd con una precisión y resolución dadas mediante una comparación con una
tensión de referencia Vreq.
En un convertidor A/D ideal la palabra digital está relacionada con la señal de entrada por
la expresión.

  i  J  0,1
Vent Ji
Pd 
Vref i 1 2

Este cociente se realiza en binario, El resultado exacto sería un número infinito de bits, por
lo que se comete un error de cuantificación al tomar solamente una cantidad finita de ellos.
Si llamamos n a la cantidad real de bits, del conversor se tendrá 2n niveles posibles y el
error máximo cometido es de la mitad de la distancia entre dos niveles, o sea:

𝑉𝑘 𝑁 1 𝑉𝑟𝑒𝑓
= 𝐾, o bien, 𝐸𝑚á𝑥 = 2
𝑉𝑟𝑒𝑓 2𝑛

Los conversores A/D, admiten señales analógicas de entradas de corriente o tensión, de una
única polaridad o bipolar.

7.1.1. El conversor paralelo


Compara simultáneamente la señal de entrada con
una serie de niveles de referencia, debiéndose usar
tantos comparadores como niveles se desee obtener
(figura 7.1).
En este arreglo:
𝑛 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑏𝑖𝑡𝑠
𝑁 = 2𝑛 ⟹ 𝑛 = log 2 𝑁
𝑁 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑐𝑜𝑚𝑝𝑎𝑟𝑎𝑑𝑜𝑟𝑒𝑠
𝑉𝑟𝑒𝑓
𝑉𝑘 = 𝐾
𝑁
𝑉𝑟𝑒𝑓
𝐾= 𝑛
2
Figura 7.1. Conversor AD paralelo.
El tiempo de comparación es pequeño, pero el elevado número de componentes lo hace
costoso.

7.1.2. Conversor de rampa simple


Integra una tensión de referencia hasta que la rampa generada, alcanza un nivel de tensión
igual al de la señal de entrada. Durante este tiempo en contador cuenta los impulsos
generados por un oscilador patrón. El resultado del contador es proporcional a la tensión de
entrada.
La figura 7.2 (a) muestra un arreglo genérico para la construcción de este tipo de 110
conversores. En 7.2 (b) ilustra cómo se da el proceso de comparación.

(a) (b)
Figura 7.2. Conversor AD de rampa simple: (a) Configuración; (b) Formas de onda.

El tiempo de conversión es largo y la precisión no es buena, debido a las variaciones de la


capacidad C, a la corriente Id y a la frecuencia del oscilador.

7.1.3. Conversor de doble rampa


El conversor A/D, de doble rampa (figura 7.3), soluciona algunos de los
condicionamientos de la precisión mencionados, debido a que, al realizar dos rampas
consecutivas, se compensan los errores producidos.

Figura 7.3. Modelo de un conversor AD de doble rampa.


La primera rampa, se realiza integrando la entrada durante un tiempo fijo. La segunda
rampa, se obtiene integrando una tensión de referencia, el tiempo de integración de la
segunda depende del nivel que se ha obtenido de la primera integración, durante este
tiempo el contador cuenta los impulsos de un oscilador patrón.

111

Figura 7.4. Interpretación de la conversión AD en un modelo de doble rampa.

El proceso es como sigue:


 Al iniciarse la operación S1, se cierra y aplica una tensión a la entrada del
integrador, mientras que S2 permanece abierto. El integrador genera la rampa
ascendente, dado que el voltaje de entrada (Vent), se supone constante mientras dure
la medición, finalmente se obtiene una carga máxima en un tiempo que llamamos
Ta (figura 7.4), este tiempo determina una cuenta Nm de pulsos del oscilador.
 Al iniciarse el ascenso de Vc el detector de nivel de cero dará una salida “1” los
pulsos del oscilador llegaran al contador y este alcanzara una cuenta Nm
mencionada (máxima capacidad de conteo del contador elegido).
 Al completarse la cuenta Nm (todos los bits de salida del contador en ‘1’), un
sistema combinacional producirá la apertura de S1, el cierre de S2 y el reset del
contador.
 Ahora el capacitor comienza a descargarse a corriente constante y el contador a
efectuar un segundo conteo durante un tiempo Td, hasta que el detector de cero
ponga un ‘0’ en la entrada A de la compuerta AND, ahora el contador habrá
alcanzado un valor Nd.
 Si Tr es el periodo del reloj la salida digital del dispositivo contador (Nd) es
equivalente al tiempo Td. A su vez Td es proporcional a Vent.
𝑇
𝑇𝑎 = 𝑁𝑚 𝑇𝑟 , 𝑇𝑑 = 𝑉𝑎 𝑉𝑒𝑛𝑡 , 𝑇𝑑 = 𝑇𝑟 𝑁𝑑
𝑟
𝑇𝑟 𝑉𝑟
𝑉𝑒𝑛𝑡 = 𝑉𝑟 𝑁𝑑 = 𝑁
𝑇𝑎 𝑁𝑚 𝑑
El tiempo máximo de conversión, es el necesario para contar 2∙2n, impulsos de reloj, siendo
n el número de bits de la salida digital.

7.1.4. El conversor de aproximaciones sucesivas


Optimiza el tiempo de conversión mediante la realización de un algoritmo de
aproximaciones sucesivas (figura 7.5):

112

Figura 7.5. Conversor AD por aproximaciones sucesivas

Utiliza un comparador, un conversor D/A paralelo y un registro de aproximaciones


sucesivas. El algoritmo consiste en la aproximación bit por bit de la salida empezando por
el bit de mayor peso que corresponde a la mitad de la máxima excursión de la tensión de
referencia. Una ilustración del proceso se muestra en la figura 7.6.

Figura 7.6. Ilustración de las formas de onda en un AD por aproximaciones sucesivas.

Para comprender el proceso considere el siguiente ejemplo: supongamos que trabajamos


con un conversor de 4 bits y una Vref = 12 voltios, entonces, el mínimo escalón de tensión
será 12/24 = 0.75 voltios. Consideremos que la tensión de entrada (a digitalizar) es 7,5
voltios. En el 1er pulso de reloj el registro de aproximaciones sucesivas pondrá el código
binario 1000 que equivale a 6 voltios. Como el comparador indica que este valor es menor
que la Vent, entonces el código cambia a: 11009 voltios. Una segunda comparación indica
que este valor es mayor que la entrada entonces 1010  7.5 voltios. Como la tercera
comparación indica que este valor es igual a la entrada entonces el valor digital de la
entrada es 1010.
El número máximo de iteración será igual al número de bits del convertidor y su tiempo de
conversión está relacionado con el tiempo de ciclo del procesamiento.
113
7.2. Funcionamiento del DAC
El proceso de conversión Digital analógica, (D/A) es el proceso de tener el valor expresado
en código binario (digital), y convertirlo en un voltaje o corriente equivalente. La
transformación se realiza mediante una correspondencia entre las 2n combinaciones binarias
posibles a la entrada y las 2n valores de tensión (o corriente) obtenidas a partir de una
tensión de referencia (Vref)
El proceso consiste en hacer una ponderación de cada bit y sumar el resultado de todas las
ponderaciones multiplicadas por el valor del bit correspondiente

𝑉𝑠𝑎𝑙 = ∑ 𝑉𝑝𝑜𝑛𝑑 𝛿𝑛 , donde 𝛿𝑛 = {0 , 1}

Las señales digitales, b0, b1, b2, …, derivan generalmente del registro de salida de un
sistema digital. En un sistema digital de 4 bits, los 24 = 16, diferentes números que
representan 16 diferentes niveles de tensión (figura 7.7).

Para un rango de 0 a 7.5 V


𝑏3 𝑏2 𝑏1 𝑏0 Valor (V)
0 0 0 0 0
0 0 0 1 0.5
0 0 1 0 1
0 0 1 1 1.5
0 1 0 0 2
0 1 0 1 2.5
0 1 1 0 3
0 1 1 1 3.5
1 0 0 0 4
1 0 0 1 4.5
1 0 1 0 5
1 0 1 1 5.5
1 1 0 0 6
1 1 0 1 6.5
1 1 1 0 7
1 1 1 1 7.5
(a) (b)
Figura 7.7. Interpretación de una conversión DA de 4 bits:
(a) Dispositivo Digital; (b) Tabla de conversión
La resolución de una conversión D/A se define como la menor variación que puede ocurrir
en la salida analógica menor resultado de un cambio en la entrada digital.

En la tabla de la figura 7.7, podemos apreciar que la resolución es de 0,5 Volts, puesto que
Vout no puede variar en no menos de 0,5 volt. La forma de onda de la salida Vout es una
escalera. Aunque la resolución pueda expresarse como la cantidad de voltaje o corriente por
etapa, resulta más útil expresarla como un porcentaje de la salida de escala completa.
Si la salida a escala completa es 1111 que equivale a un Vout = 7.5 Volt y el tamaño de
escalón es 0.5 Volt. la resolución porcentual sería: 114

1 𝛥𝑉
𝑅[%] = 100 ≈𝑉
2𝑛 𝑟𝑒𝑓
0.5
𝑅[%] = 100 ∙ = 6.66 %
7.5
1
𝑅[%] = 100 ∙ 24 = 6.25 %

Por supuesto, la resolución porcentual se hace menor cuando el número de bits de entrada
se incrementa.

7.2.1. Convertidor D/A de resistencias ponderadas


El convertidor de resistencias proporciona a la salida un valor de tensión
𝑉𝑟𝑒𝑓 𝛿𝑛
𝑉𝑠𝑎𝑙 = −𝑅 ∑ 𝛿𝑛 = − 𝑉𝑟𝑒𝑓 ∑ , donde 𝛿𝑛 = {0 , 1}.
2𝑛 𝑅 2𝑛

El circuito de la figura 7.8 utiliza trayectorias de corriente en paralelo, cada una de ellas
controladas por las salidas binarias, la corriente que circula por cada rama del circuito
depende de la tensión de referencia (Vref) y de la resistencia serie (2nR)

Figura 7.8. Modelo de un convertidor DA de resistencias ponderadas.


La exactitud de este conversor depende de dos factores:

a) La exactitud de las resistencias.


b) La exactitud de los valores de tensión de referencia

La gran cantidad de resistencias de diferentes valores y de alta precisión es una desventaja


del sistema.

La figura 7.9 muestra una variante del circuito donde se observa que los valores de 115
resistencia son solo dos, los valores de corriente que circula por las resistencias 2R está en
progresión geométrica de razón ½ debido a que en cada punto de unión de las resistencias
R – R la impedancia del circuito es igual a R.

Figura 7.9. Mejora del arreglo de resistencias para el DA.

La corriente de entrada al amplificador operacional es la suma de las corrientes de cada


rama la cual produce una tensión de salida Vsal.

𝛿𝑛
𝑖0 = ∑
2𝑛
𝛿 𝛿
𝑉𝑠𝑎𝑙 = −𝑖0 𝑅 = − 𝑅 𝐼 ∑ 2𝑛𝑛 = − 𝑉𝑟𝑒𝑓 ∑ 2𝑛𝑛 , donde 𝛿𝑛 = {0 , 1}.

7.2.2. Convertidor D/A por modulación de ancho de impulso


Es un convertidor que en una primera etapa convierte el código digital en una señal
pulsante de anchura controlada y posteriormente mediante un filtro pasabajas convierte esta
señal en una señal analógica.

En el circuito de la figura 7.10 se observa que un elemento del modelo compara la señal a
convertir (de n bits) con el valor de un contador de la misma cantidad de bits, al igualarse la
señal de entrada y el valor del contador la salida cambia de estado. El periodo de la señal de
modulada es el tiempo necesario para contar 2𝑛 pulsos del oscilador.
116

Figura 7.10. Modelo por ancho de pulsos para un convertidor DA.


Bibliografía

 Morris Mano, M. Lógica Digital y Diseňo De Computadores. Ed. Prentice Hall,


1982.
 Morris Mano, M. Diseño Digital, Ed. Pearson Educación,1987.
 Tocci, Ronald J. y Widmer Neal S. Sistemas Digitales Principios y Aplicaciones.
Ed. Person Educación, 8va. Edición. 2003. 117
 Guzmán, R. (2010). Multivibrador astable a transistores: explicación. Obtenido de
Electrónica y ciencia:
http://electronicayciencia.blogspot.mx/2010/04/multivibrador-astable-
transistores.html
 Herrera Vaquero, E., Hernández Vaquero, S., Ponce Acosta, C., & Trujillo Jimenez,
J. A. (30 de 05 de 2012). Electrónica Digital FIME Universidad Veracruzana.
Obtenido de Google Sites: https://sites.google.com/site/electronicadigitaluvfime/
 Wikipedia La enciclopedia libre. (25 de Octubre de 2015). Multivibrador. Obtenido
de Wikipedia.org: https://es.wikipedia.org/wiki/Multivibrador