Está en la página 1de 174

011000010111001101100001011011100111101001100001

01101010011001010110000101101110
Unidad 4:
Circuitos integrados
MSI

1
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Unidad 4: Circuitos integrados


MSI

01101010011001010110000101101110
4.1.- Introducción
4.2.- Circuitos aritméticos: sumadores, restadores,
comparadores
4.3.- Multiplexores
4.4.- Codificadores y decodificadores
4.5.- Análisis y diseño de circuitos MSI
4.6.- Descripción de circuitos MSI con VHDL

2
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Objetivos:

01101010011001010110000101101110
• Al terminar la unidad el estudiante conocerá los
componentes combinatoriales básicos usados en el
diseño lógico combinatorial y tendrá los criterios
necesarios para aplicarlos en diseños más grandes.
• Podrá describir componentes combinatoriales
básicos usando el lenguaje VHDL y conectarlos para
construir circuitos combinatoriales de mayor
complejidad.

3
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Introducción:

01101010011001010110000101101110
En esta unidad se presenta la implementación de
bloques genéricos usados en sistemas digitales
combinatoriales, criterios para construir sistemas más
complejos a partir de estos y como modelarlos usando
VHDL.

4
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
4.1.- Introducción a la construcción
de circuitos digitales
combinatoriales de mediana
complejidad

5
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Familias lógicas de
circuitos integrados

01101010011001010110000101101110
El uso de circuitos integrados para aplicaciones digitales es
prácticamente obligatorio para circuitos desde pequeña y
mediana escala de integración (SSI, MSI).
Entre sus ventajas están el bajo consumo de potencia y la
ausencia de errores de interconexión.
Las diversas familias difieren en los componentes principales que
se usan en su circuitería:

-TTL y ECL (transistores bipolares)

- PMOS, NMOS Y CMOS (transistores unipolares MOSFET)


6
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Abanico de salida (factor de


carga): Fan-Out(=Loading Factor)

01101010011001010110000101101110
Se define como el número máximo de entradas lógicas
que una salida puede manejar.

7
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Requisitos de potencia

01101010011001010110000101101110
Cada CI requiere una cierta cantidad de potencia
suministrada por uno o mas voltajes de alimentación
conectados al pin o pines de potencia del chip.

P = Vcc x Icc
Icc(prom) = (Icch + Iccl) / 2
Pd(prom) = Icc(prom) x Vcc
Icch : corriente cuando todas las salidas son altas
Iccl : corriente cuando todas las salidas son bajas
Icc(prom) : corriente promedio entre los 2 estados
Pd(prom) : potencia disipada promedio.
P : potencia real

8
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Producto velocidad-potencia
Es un medio común para medir y comparar el desempeño global de
potencia. Se obtiene multiplicando el retardo de propagación de la

01101010011001010110000101101110
compuerta por la disipación de la misma.

Inmunidad al ruido
– Es la habilidad de un circuito para tolerar ruido sin cambios espurios en el
voltaje de salida
– Una medida cuantitativa de la inmunidad del ruido se llama margen de
ruido
• Vnh = Voh(min) – Vih(min)
• Vnl = Vil(máx) – Vol(máx)

9
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Niveles de voltajes inválidos

01101010011001010110000101101110
– Es importante conocer los intervalos de voltaje
válidos para la familia lógica que se está
trabajando.

– Los voltajes inválidos son causados por una


salida defectuosa debido al abanico de salida o
por una fuente de alimentación que está fuera
del rango aceptable.
10
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Acción de suministro de corriente y de


consumo de corriente

01101010011001010110000101101110
11
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Normas para correcta conexión


de circuitos integrados digitales

01101010011001010110000101101110
1.Entradas no usadas
Nunca se deben dejar sin conectar. Deben ser conectadas a tierra
o fuente dependiendo de la funcionalidad del componente.

12
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Normas para correcta conexión


de circuitos integrados digitales

01101010011001010110000101101110
2.- Salidas No usadas
Las salidas no usadas deben dejarse sin conectar. Si las conecta a
tierra o fuente puede producirse un cortocircuito.

13
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Normas para correcta conexión


de circuitos integrados digitales

01101010011001010110000101101110
3.- Salidas Interconectadas
Nunca se deben conectar dos salidas entre sí. Si se quiere
relacionar dos salidas se debe utilizar una puerta lógica o algún
circuito integrado.

14
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Normas para correcta conexión


de circuitos integrados digitales

01101010011001010110000101101110
Si la salida de una puerta es alta impedancia si se pueden
interconectar de manera directa

15
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Normas para correcta conexión


de circuitos integrados digitales

01101010011001010110000101101110
4.- Entradas interconectadas
Las entradas de diferentes CI, si se pueden interconectar entre sí.
La única restricción es el FAN OUT de la señal que las genera.

16
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

FAMILIA LÓGICA TTL

01101010011001010110000101101110
• Esta familia es la primera que surge y aún todavía se utiliza en
aplicaciones que requieren dispositivos SSI y MSI. La familia TTL
utiliza como componente principal el transistor bipolar.

•Su tensión de alimentación característica se halla comprendida


entre los 4.75V y los 5.25V como se ve un rango muy estrecho
debido a esto, los niveles lógicos vienen definidos por el rango de
tensión comprendida entre 0.2V y 0.8V para el estado L y los 2.4V
y Vcc para el estado H.

17
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

TECNOLOGÍA MOS

01101010011001010110000101101110
• Tecnología MOS (semiconductor de óxido metálico) basa su
construcción en un electrodo de metal junto a un aislante óxido sobre
un sustrato semiconductor.
• Los dispositivos son transistores de efecto de campo llamados
MOSFET. Son unipolares (una sola juntura a polarizar).
• El MOSFET es simple, pequeño y consume muy poca potencia, la
complejidad de fabricación es un tercio de la de los bipolares.
• Los CI (Circuitos integrados) MOS pueden acomodar un número
mayor de elementos. No necesitan de resistencias dentro del CI.
• Los CI MOS y en especial los CMOS dominan la industria de CI
digitales, especialmente en aplicaciones grandes (LSI y VLSI).
• Su principal desventaja es la susceptibilidad al daño por electricidad
estática. El TTL es mas durable para uso en laboratorio
(experimentación).
18
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

TTL vs CMOS

01101010011001010110000101101110
19
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

TTL vs CMOS

01101010011001010110000101101110
20
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CIRCUITOS MSI Y SUS


APLICACIONES

01101010011001010110000101101110
• La escala de integración indica que tan complejo es un circuito
integrado. Se mide por el número de puertas lógicas básicas en
su interior.

• Existen diferentes tipos de escalas de integración


– SSI ( Pequeña escala de integración) un numero de puertas
lógicas menor a 12
– MSI (Mediana escala de integración) tiene de 12 a 99 puertas
lógicas en su interior

21
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CIRCUITOS MSI Y SUS


APLICACIONES

01101010011001010110000101101110
– LSI (Larga escala de integración) realiza aproximadamente la
función de 1000 puertas lógicas
– VLSI realiza aproximadamente la función de 10000 puertas
lógicas. Ej: microprocesadores
– ULSI realiza aproximadamente la función de 100000 puertas
lógicas.
– GSI realiza aproximadamente la función de 1’000000 puertas
lógicas.

La idea principal del uso de circuitos MSI y del diseño modular,


es no construir con tabla de verdad ciertas aplicaciones comunes
que ya están disponibles.
22
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

¿Cuántos transistores hay en un


teléfono inteligente promedio?

01101010011001010110000101101110
Samsung Galaxy S8

23
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

¿Cuántos transistores hay en un


teléfono inteligente promedio?

01101010011001010110000101101110
Samsung Galaxy S8

24
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

¿Cuántos transistores hay en un


teléfono inteligente promedio?

01101010011001010110000101101110
Qualcomm Snapdragon 835 - 3,000,000,000 transistores.
Adreno 450 GPU ~ 2,000,000,000 transistores.
Memoria ~ 56,000,000,000 transistores para chip de 6 GB DRAM.
Almacenamiento ~ 400,000,000,000 transistores asumiendo 3-bit
MLC 128 GB NAND.
Otros/periféricos - 1,000,000,000 transistores

Total es ~460 billones de transistores.

Dato adicional: también tiene más de la mitad (~ 70 elementos)


de la tabla periódica en su teléfono inteligente.

25
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
Unidad 4:
Circuitos integrados
MSI

26
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Categorías circuitos MSI

01101010011001010110000101101110
Establecen cómo podemos clasificar a los MSI de acuerdo a la
función que pueden desarrollar.

• Circuitos aritméticos
• Circuitos comparadores
• Circuitos multiplexores
• Circuitos decodificadores

27
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
4.2.- Circuitos aritméticos:
sumadores, restadores,
comparadores

28
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CIRCUITOS ARITMÉTICOS

01101010011001010110000101101110
SUMADORES
• Realizan la operación aritmética SUMA.

SUMADOR COMPLETO DE UN BIT


• Es un circuito que suma dos bits, con acarreo de entrada y
obtiene como salida un BIT que representa la suma y un bit para
el acarreo de salida.

29
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CIRCUITOS ARITMÉTICOS

01101010011001010110000101101110
SUMADOR COMPLETO DE UN BIT

30
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CIRCUITOS ARITMÉTICOS

01101010011001010110000101101110
Ejemplo:
A partir del sumador completo de un bit anterior, Construya un
sumador binario de 4 Bits con acarreo de salida

31
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CIRCUITOS ARITMÉTICOS

01101010011001010110000101101110
Solución:

32
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador de 4 bits (74283)

01101010011001010110000101101110
• Es un circuito integrado que existe en las familias TTL y CMOS.
Posee 9 entradas y 5 salidas, todas de lógica positiva: incluye
acarreo de entrada y de salida

33
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador de 4 bits (74283)

01101010011001010110000101101110
Small Outline Integrated Circuit (SOIC) Plastic Dual-In-Line Package (PDIP)

34
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

SUMADORES

01101010011001010110000101101110
Ejemplo: Construir un sumador de 3 Bits con acarreo de salida :

35
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO 1

01101010011001010110000101101110
Ej: Construir un sumador completo de 6 Bits

Se necesitan dos CI 74283. Uno para que maneje los cuatro bits
menos significativos, y el segundo para manejar los dos
restantes.
La unión se realiza mediante la entrada en CASCADA Ci de tal
manera que el acarreo de la primera operación se traslade a la
segunda.
36
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
37
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO 2

01101010011001010110000101101110
Ej: Construir un circuito restador de 4 Bits asumiendo números
binarios y que X es mayor que Y

El primer sumador saca el complemento a dos de “Y”. Lo hace


invirtiendo el número y sumando un “1” en la posición menos
significativa.
El segundo CI 74283 suma el complemento a dos obtenido
anteriormente con el dato original. La respuesta es la resta.

38
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
39
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
• Método 2
Es una versión optimizada de la resta anterior. El complemento a
dos se obtiene invirtiendo el número “Y” y sumando un “1” en la

01101010011001010110000101101110
posición menos significativa mediante la entrada Ci. Como ahora
queda libre la entrada B , se la aprovecha conectando a la
entrada “X”

40
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Circuitos Comparadores

01101010011001010110000101101110
Son circuitos digitales diseñados para comparar la magnitud
relativa de dos cantidades dadas. La siguiente es la tabla de
verdad resultante para una comparación de dos números de dos
bits cada uno.

41
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Comparador de 4 bits (7485)

01101010011001010110000101101110
Su operación es similar a la tabla de verdad mostrada. La única
diferencia es la existencia de las tres entradas inferiores en
CASCADA.
Las entradas en cascada, solo tienen validez (vigencia) cuando el
Valor del número A es igual al del número B.

42
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Comparador de 4 bits (7485)

01101010011001010110000101101110
43
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO 3

01101010011001010110000101101110
Ej: Diseñe un comparador de 3 Bits

Al igual que con los sumadores, los bits no utilizados se hacen


“0”.
En este caso las entradas en cascada no se utilizan, por lo tanto
su conexión es tal que al haber igualdad se transmita a la salida
esa condición de igualdad:
A<B = 0, A=B = 1, A>B = 0
44
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO 3

01101010011001010110000101101110
45
Fundamentos del Diseño Digital
EJERCICIO 4
Ej: Diseñe un comparador de 6 bits

Primero se debe realizar la comparación entre los dígitos más


significativos. Como el 7485 es de 4 bits, Se usan X5X4 y Y5Y4
como los MSB de cada cantidad.
Si uno de ellos es mayor o menor, se genera la salida X>Y o X<Y.
Ejemplo : Treinta “y algo” es menor que Sesenta “y algo” Si los
MSB son iguales, el valor de la comparación final, se toma del
resultado de comparar los bits menos significativos (X3X2X1X0
con Y3Y2Y1Y0) de cada cantidad. Esto se hace conectando la
salida del comparador de LSB con las entradas en cascada del
comparador de MSB.
46
011000010111001101100001011011100111101001100001

EJERCICIO 4

01101010011001010110000101101110
Si los LSB son iguales,
quiere decir que las
cantidades X y Y son
realmente iguales, por
tanto en el bloque de
comparación LSB las
entradas en cascada se
conectan a sus valores
por defecto:
A<B = 0; A=B = 1; A>B =
0

47
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Unidad 4: Circuitos integrados


MSI

01101010011001010110000101101110
4.1.- Introducción
4.2.- Circuitos aritméticos: sumadores, restadores,
comparadores
4.3.- Multiplexores
4.4.- Codificadores y decodificadores
4.5.- Análisis y diseño de circuitos MSI
4.6.- Descripción de circuitos MSI con VHDL

48
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
4.3.- Multiplexores

49
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MULTIPLEXORES

01101010011001010110000101101110
50
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MULTIPLEXORES

01101010011001010110000101101110
51
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MULTIPLEXORES

01101010011001010110000101101110
Un sinónimo de la palabra “Multiplexar” es “seleccionar”, por tanto se pueden
definir a los circuitos multiplexores como selectores digitales de datos.
El tamaño o dimensión del MUX depende del número de entradas de datos
(canales) disponibles. Si “n” es el número de bits usados para escoger uno de
los canales (entradas selectoras), la dimensión del MUX es 2n a 1. Los MUX
existentes son de dimensión:
Mux 2 a 1
Mux 4 a 1
Mux 8 a 1
Mux 16 a 1

52
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX 4 a 1 (74153)

01101010011001010110000101101110
Se dispone de 4 entradas de datos, de un bit cada una (I0,I1,I2,I3). En la salida
Y se escribirá el valor de sólo una de ellas. La entrada escogida es aquella cuyo
subíndice coincida con el valor binario presente en las entradas selectoras.
Ejemplo: Si S1S0 = “10” (que equivale a 2 en decimal), el valor al cual esté
conectado I2 se escribe en la salida Y.

53
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX 4 a 1 (74153)
Para que el MUX opere como se definió anteriormente, es necesario que la

01101010011001010110000101101110
señal de habilitación ENABLE este activada (E = 1). En caso contrario (E = 0) la
salida Y siempre será “0” sin importar las demás entradas.
La salida W es idéntica en valor de verdad a la salida Y, lo que cambia es la
lógica de operación: Y es de lógica positiva, W es de lógica negativa.
En algunas hojas técnicas aparece la siguiente simbología:
La operación es similar con dos
variantes:
• Se suprime la letra I de las
entradas y se coloca
directamente el índice.
• Las selectoras usan letras del
alfabeto , considerando que a
diferencia de las tablas de
verdad convencionales, aquí la
letra “A” es siempre la menos
significativa.
54
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

En esquemáticos grandes de

01101010011001010110000101101110
Sistemas digitales, se suele
utilizar el siguiente símbolo que
por su forma indica
automáticamente que el
componente es un MUX:

El siguiente gráfico es un
ejemplo de conexión de un
MUX, diseñado para
seleccionar de forma constante
la entrada número 2.

55
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX 2 a 1 (74157)

01101010011001010110000101101110
El resto de Multiplexores trabajan exactamente de la misma manera.
Lo que cambia es el número de entradas de datos, y por ende el número de
entradas selectoras.

56
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX 8 a 1 (74151)

01101010011001010110000101101110
57
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX 16 a 1 (74150)

01101010011001010110000101101110
58
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Implementar una función de salida de una tabla de verdad/k-map


El procedimiento es el siguiente:
•Utilice un multiplexor 2n a 1 donde “n” es el número de variables de la
tabla/mapa.
•Conecte las “n” entradas selectoras del MUX a las entradas de la tabla,
respetando la significancia de las variables (MSB con MSB).
•Conecte el valor constante ( 0 a GND y 1 a Vcc) de tal manera que exista
correspondencia entre el número de entrada del MUX con el número de
combinación (celda) de la tabla (mapa).

59
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Ejemplo : Implementar la salida F2 con un MUX 16 a 1
(74150)

01101010011001010110000101101110
60
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable entrante al Mapa (VEM)

01101010011001010110000101101110
La técnica de variable entrante al mapa (VEM), permite reducir el tamaño de
un Mapa de Karnaugh, conservando las propiedades de la función lógica que
representa.
La idea es reducir el número de variables de entrada, y por ende el número de
celdas del k-map. Así por ejemplo mapas de 4 variables – 16 celdas, se puedan
convertir en mapas de 3 variables – 8 celdas.
El efecto secundario es que una de las variables dejará los espacios de
cabecera y pasará al interior de las celdas. Es por esto que esa variable se
denominará la variable entrante al mapa - VEM.

61
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable entrante al Mapa (VEM)

01101010011001010110000101101110
La técnica de variable entrante al mapa (VEM), permite reducir el tamaño de
un Mapa de Karnaugh, conservando las propiedades de la función lógica que
representa.
La idea es reducir el número de variables de entrada, y por ende el numero de
celdas del k-map. Así por ejemplo mapas de 4 variables – 16 celdas, se puedan
convertir en mapas de 3 variables – 8 celdas.
El efecto secundario es que una de las variables dejará los espacios de
cabecera y pasará al interior de las celdas. Es por esto que esa variable se
denominará la variable entrante al mapa - VEM.
Para encontrar el valor de la celda resultante de dos celdas originales, se debe
aplicar la siguiente relación:

62
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable entrante al Mapa (VEM)

01101010011001010110000101101110
La técnica de variable entrante al mapa (VEM), permite reducir el tamaño de
un Mapa de Karnaugh, conservando las propiedades de la función lógica que
representa.
La idea es reducir el número de variables de entrada, y por ende el numero de
celdas del k-map. Así por ejemplo mapas de 4 variables – 16 celdas, se puedan
convertir en mapas de 3 variables – 8 celdas.
El efecto secundario es que una de las variables dejará los espacios de
cabecera y pasará al interior de las celdas. Es por esto que esa variable se
denominará la variable entrante al mapa - VEM.
Para encontrar el valor de la celda resultante de dos celdas originales, se debe
aplicar la siguiente relación:

63
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable entrante al Mapa (VEM)

01101010011001010110000101101110
Ejemplo : Reducir el siguiente mapa

64
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable Entrante al Mapa (VEM)

01101010011001010110000101101110
Utilizar el método la variable entrante para reducir los siguientes
mapas

65
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Implementar el siguiente mapa con:


- Un MUX de 8 a 1 y

01101010011001010110000101101110
- Un MUX 4 a 1

Con MUX de 8 a 1

66
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Con MUX 4 a 1
Utilizar el método de variable entrante al mapa. K-map?

01101010011001010110000101101110
67
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Con MUX 4 a 1
Utilizar el método de variable entrante al mapa. K-map. Circuito?

01101010011001010110000101101110
68
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Con MUX 4 a 1
Utilizar el método de variable entrante al mapa

01101010011001010110000101101110
69
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable entrante al Mapa (VEM)

01101010011001010110000101101110
70
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Variable Saliente al Mapa


(VSM)

01101010011001010110000101101110
y0,In\y2,y1 00 01 11 10 y1\y2 0 1
00 1 1 0 0 0 1
01 1 1 1 0 1
11 1 1 0 1
y0\y2y1 00 01 11 10
10 1 0 1 0
0 1 1 0
1 1

71
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
72
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX EN CASCADA
Construir un MUX 16 a 1 partiendo de 2 MUX 8 a 1 Metodo1 :

01101010011001010110000101101110
73
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

MUX EN CASCADA
Construir un MUX 16 a 1 partiendo de 2 MUX 8 a 1 Metodo2 :

01101010011001010110000101101110
74
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
4.4.- Codificadores y
decodificadores

75
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Codificador vs. decodificador

01101010011001010110000101101110
El codificador (encoder) proporciona código binario como salida.
Por el contrario, un decodificador (decoder) acepta código
binario como entrada.

76
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Decodificadores
Los circuitos DECODIFICADORES tienen una operación contraria a

01101010011001010110000101101110
la de un MULTIPLEXOR. Se pueden interpretar como
“Identificadores de MINTERMS”.
Su dimensión se mide por las líneas a decodificar versus las líneas
decodificadas. Se representa de la forma : “ n a 2n” De ésta
manera, las dimensiones más utilizadas son:
2a4
3a8
4 a 16
Tienen amplia aplicación en la conversión de códigos, en
memorias ROM y en el diseño de circuitos combinatoriales.
Algunos circuitos Decodificadores dependiendo de su forma de
empleo reciben el nombre de “DEMUX”. El término más común
para identificarlos es “DECODER”.
77
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Decodificadores

01101010011001010110000101101110
78
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Decodificador de 3 a 8 (74138)

01101010011001010110000101101110
Este DECODER tiene tres entradas de habilitación G1, G2A y G2B que deben
ser verdaderas al mismo tiempo para que el circuito funcione. Son tres, para
facilitar la implementación de Decoders de más capacidad (de 24 o 32 líneas).
Sólo una de las ocho salidas se hace verdadera ( igual a “1” / de voltaje L). La
línea identificada es aquella cuyo subíndice coincide con el valor binario
presente en las entradas identificadoras, siendo “A” el LSB.
79
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Decodificador de 2 a 4 (74139)

01101010011001010110000101101110
Funciona de manera similar al anterior. Tiene una sola entrada habiltadora.
Ej: Solo es verdadera la salida que corresponda al MINTERM presente en las
entradas identificadoras

80
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Decodificador de 4 a 16 (74154)

01101010011001010110000101101110
81
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Implementar una tabla de verdad con
decodificadores

01101010011001010110000101101110
Al igual que los Multiplexores, los DECODERS pueden utilizarse para mejorar
las técnicas del diseño combinatorial.
La información que presenta una tabla de verdad, puede interpretarse de la
siguiente manera : La salida es verdadera cuando está identificado el mimterm
que genera el primer “1” o cuando está identificado el mimterm que genera el
segundo “1” o cuando se identifican el resto de “ 1”.
De ésta manera los pasos para implementar una tabla de verdad con
DECODERs serían:
•Seleccionar el DECODER de n a 2n, donde n es el número de variables de la
tabla.
•Conectar las entradas identificadoras del DECODER a las señales de la tabla
de verdad manteniendo la significancia.
•Ejecutar una operación OR múltiple (cuidando la lógica negativa de las salidas
del DECODER), entre todas las salidas que corresponden a los MIMTERM
evaluados como “1” en la función.
82
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Ejemplo:

01101010011001010110000101101110
83
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Ejemplo : Dado el siguiente k-map, implementar la función


utilizando un DECODER 2 a 4 y el método de la variable entrante

01101010011001010110000101101110
al mapa

84
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Implementación:

01101010011001010110000101101110
???
85
Fundamentos del Diseño Digital
SN74LS139: dos decodificadores de 2 a 4

A: MSB; B:LSB. Se utilizará el decoder superior


86
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

SN74LS139: dos decodificadores de 2 a 4

- Enable
(habilitador) se
activa en bajo
- Entradas (select)
se activan en alto
- Las salidas se
activan en bajo

87
Fundamentos del Diseño Digital
Implementación:

88
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Al contrastar ambos métodos para implementación de circuitos


combinatoriales, podemos identificar las siguientes ventajas:

01101010011001010110000101101110
Implementación con MUX:
No se necesitan puertas adicionales

Implementación con DECODER:


Para varias salidas no se necesitan DECODERs adicionales.

89
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Entonces:

01101010011001010110000101101110
- Para implementar tablas de verdad con una
salida (una función) se prefiere utilizar
Multiplexores.
- Para implementar tablas de verdad con
varias salidas, se prefiere utilizar
Decodificadores.

90
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidores de código

01101010011001010110000101101110
CONVERTIDOR DE BCD A DECIMAL
– Circuito integrado 7442
– Cada salida pasa a voltaje bajo cuando se aplica su entrada
NBCD correspondiente.
– Para combinaciones NBCD inválidas ninguna de las salidas se
activará
– Se lo puede llamar decodificador de 4 a 10.
– El circuito integrado 7445 funciona de manera similar pero sus
salidas son de colector abierto, lo que permite operar con límites
de voltaje y corriente (30V, 80 mA) mayores que una salida TTL
normal. Esto las hace adecuadas para manejar directamente LEDs
o lámparas, relés o motores de corriente directa.
91
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidor BCD a Decimal

01101010011001010110000101101110
92
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidor binario a decimal

01101010011001010110000101101110
• Los DECODERS estudiados
anteriormente se pueden
utilizar como convertidores
de Binario a decimal pues
solo una salida se activará
dependiendo del valor binario
presente en las entradas.
• Un ejemplo es el
Decodificador de 3 a 8.

93
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidor BCD a 7 segmentos

01101010011001010110000101101110
• Debe existir un medio para desplegar la información tal que el operador del
sistema pueda entenderla fácilmente.
• El método más popular es desplegar información numérica en 7 segmentos
para formar los caracteres 0 al 9.
• El decodificador driver 7446 o 7447 se usa para tomar una entrada NBCD de
4 bits y a la salida encender los segmentos apropiados para visualizar el dígito

94
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidor BCD a 7 segmentos

01101010011001010110000101101110
• Cada segmento consta de un led. Todos los ánodos están conectados a la
fuente y los cátodos se conectan al integrado mediante resistencias
limitadoras de corriente.

95
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidor BCD a 7 segmentos

01101010011001010110000101101110
96
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Convertidor BCD a 7 segmentos

01101010011001010110000101101110
97
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CI MSI

01101010011001010110000101101110
Lógica positiva: se activa en alto/se activa en 1
Lógica negativa: se activa en bajo/se activa en 0

98
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Codificadores (encoders)

01101010011001010110000101101110
• Un circuito codificador o ENCODER tiene un número de señales de entrada
de las cuales sólo una se activa en un tiempo determinado y produce un
código de salida de N bits dependiendo de cuál entrada se active

99
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CODIFICADORES

01101010011001010110000101101110
100
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Codificador Vs. Decodificador

01101010011001010110000101101110
● Un codificador tiene muchas entradas y pocas
salidas
● Un decodificador tiene pocas entradas y
muchas salidas

101
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Codificadores

01101010011001010110000101101110
• Un codificador de octal a binario (8 a 3 ) acepta ocho líneas de entrada y
produce un código de tres bits correspondiente a la entrada activada.

102
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Codificadores de prioridad

01101010011001010110000101101110
• El 74147 es un codificador de prioridad de decimal a BCD, con lógica
negativa.
• La entrada A9 tiene la mayor prioridad entre todas las entradas y basta que
ella esté presente para que su código se genere en la salida.
• Si ninguna entrada se activa, todas las salidas serán también falsas.

103
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

CODIFICADOR INTERRUPTOR

01101010011001010110000101101110
104
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
105
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Unidad 4: Circuitos integrados


MSI

01101010011001010110000101101110
4.1.- Introducción
4.2.- Circuitos aritméticos: sumadores, restadores,
comparadores
4.3.- Multiplexores
4.4.- Codificadores y decodificadores
4.5.- Análisis y diseño de circuitos MSI
4.6.- Descripción de circuitos MSI con VHDL

106
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJEMPLO #1

01101010011001010110000101101110
Diseñe un circuito digital Convertidor de CODIGOS, el circuito recibe como entrada un
número binario A de 4 bits (A3 A2 A1 A0, siendo A3 el más significativo) y debe entregar
como resultado de la conversión un número R de 4 bits (R3 R2 R1 R0, siendo R3 el más
significativo).
•Si la entrada “Tipo código” es verdadera (Tipo código.H = H) se hará conversión a un
código de distancia unitaria, en caso contrario se debe hacer conversión a un código
BCD.
•Si la conversión es a distancia unitaria el CODIGO elegido es siempre GRAY.
•Si la conversión es a BCD el código elegido depende de la señal “Tipo BCD”.
•Si tipo BCD es verdadera ( Tipo BCD.H = H) la conversión es a NBCD en caso contrario la
conversión es a XS3.
•Si el número ingresado es mayor o igual a 10 todas las salidas deben tomar voltaje
bajo.
Para la implementación utilice Sumadores, Comparadores, Multiplexores,
Decodificadores y puertas adicionales. Prohibido usar Tabla de verdad
107
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

El diseño de circuitos digitales es de naturaleza concurrente. Esto significa que la


solución algorítmica del problema debe seguir las características de concurrencia

01101010011001010110000101101110
establecidas. Esto es, primero se ejecutan todas las acciones y procedimientos que el
problema requiere y luego se “selecciona” de entre las opciones el valor definitivo de
las salidas.

Para poder apreciar esta estrategia de solución de manera global, se recomienda la


elaboración de un DIAGRAMA DE BLOQUES del diseño donde se divida el circuito en
bloques dedicados a tareas específicas sin detallar el contenido de cada uno.

108
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
EJEMPLO # 1: DIAGRAMA DE BLOQUES

01101010011001010110000101101110
109
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
EJEMPLO # 1: DIAGRAMA DE BLOQUES

01101010011001010110000101101110
Los primeros bloques ejecutarán la conversión del número binario dado a NBCD, GRAY
y XS3 respectivamente.
El bloque selector decidirá cual de las tres conversiones debe ser mostrada a la salida
dependiendo de los valores que tomen las señales TIPO_BCD y TIPO_CODIGO.
El bloque validador verificará que el número original es menor o igual que 10, y en caso
contrario mostrara “0000” en la salida.

Convertidor Binario - NBCD

Como se va a verificar que el número “A” ingresado es menor o igual a 10, la conversión
de binario a NBCD es simplemente el mismo número binario.
110
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Convertidor Binario – XS3
Al igual que antes se va a verificar que el

01101010011001010110000101101110
número “A” ingresado es menor o igual a
10. Por tanto la conversión de binario a
XS3 es igual al número binario original
más tres.

Convertidor Binario - GRAY


La conversión de binario a GRAY se
desarrollará en forma similar al
procedimiento manual, es decir se
agrega un “0” a la izquierda del
MSB y a partir de éste, se realiza la
operación EXOR entre bits
adyacentes.

111
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Bloque Selector
Un bloque selector está conformado por MULTIPLEXORES. Se dice que un bloque

01101010011001010110000101101110
selector lo conforman “M” MUX de tamaño “N” a 1.
•M es la cantidad de MUX requeridos. Si recordamos que cada MULTIPLEXOR
procesa solo un bit de salida, la cantidad M dependerá del número de bits del
DATO a procesar
•N es el tamaño o número de opciones de selección y depende de entre cuantas
tareas se debe escoger la salida final. Como N es del tipo 2n, debe escogerse de
manera estándar como 2,4,8,16, etc.

En este caso el dato es de 4 bits, por lo tanto M=4. Las opciones de selección son
3 por lo tanto N=4. Entonces el bloque lo forman 4 MUX 4 a 1. Para escoger el
número de entrada para cada opción, formamos una tabla de verdad con las
variables Tipo código y Tipo BCD:

112
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Bloque Selector

01101010011001010110000101101110
113
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Bloque Validador

Las puertas AND se

01101010011001010110000101101110
utilizan comúnmente como
elemento validador, ya que:
A.1 = A
A.0 = 0
Es decir, si la entrada
validadora es “1”, la señal
pasa, caso contrario la
salida es “0”.
En este caso la señal
validadora proviene de un
comparador que determina
si el número original es
menor que 10.

114
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
El Bloque Selector se puede fusionar con el bloque Validador, haciendo que
la salida del comparador manipule directamente las entradas habilitadoras
de los MUX. Se necesita agregar un Inversor por cuanto estas señales son de
lógica negativa.

01101010011001010110000101101110
115
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJEMPLO #2

01101010011001010110000101101110
Diseñar un circuito combinatorial para controlar el enfriamiento de un tanque
de 20 mt. de alto lleno de líquido. Las señales que recibe el circuito son la
siguientes :
TA : Temperatura de la zona alta del tanque en formato de 4 bits binarios con
valores de 0 (0000) a 11 (1011) grados centígrados.
TB : Temperatura de la zona baja del tanque en formato de 4 bits binarios con
valores de 0 (0000) a 11 (1011) grados centígrados.
CA : Valor binario de 3 bits, desde 0 (000) hasta 4 (100) grados centígrados,
que se utiliza para compensar la temperatura en la zona alta.
CB : Valor binario de 3 bits, desde 0 (000) hasta 4 (100) grados centígrados,
que se utiliza para compensar la temperatura en la zona baja.
Función : Señal de selector que indica si el tanque está almacenando o
enfriando.
Encendido : Señal de selector que indica si el sistema está prendido o apagado.

116
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Las señales que entrega el circuito son las siguientes :


A1 : Si está activada significa que ingresa refrigerante al área 1 del tanque

01101010011001010110000101101110
(alta).
A2 : Si está activada significa que ingresa refrigerante al área 2 del tanque
(media).
A3 : Si está activada significa que ingresa refrigerante al área 3 del tanque
(baja)
S : Al activarse permite la evaporación del refrigerante en las tres áreas.

El circuito debe funcionar de la siguiente manera :


La temperatura real de cada zona es igual a la temperatura medida mas el
valor de compensación respectiva Si el tanque está en la función
almacenamiento, el Set point del sistema es 12 grados centígrados, si está en
la función enfriar el Set point es 0 grados centígrados.

117
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
El área 1 (A1) se activa si el valor real de la zona alta es mayor al Set point del sistema.
El área 2 (A2) se activa si el valor real de la zona alta es mayor al Set point del sistema y
el valor real de la zona baja es menor al Set point. El área 3 (A3) se activa si el valor real

01101010011001010110000101101110
de la zona baja es mayor al Set point del sistema.
La señal S se activa si cualquiera de las tres áreas está activada.
Para que se active cualquier salida del circuito, el selector de encendido debe estar en
ON.
Para la implementación utilice sumadores, comparadores, Mux, deMux y puertas
adicionales.

118
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
DIAGRAMA DE BLOQUES

01101010011001010110000101101110
El bloque corrector de temperatura simplemente agregará las correcciones (CA
y CB) a los valores medidos en las zonas Alta y Baja (A y B) respectivamente.
El bloque activador de zonas comparará los valores reales con el set point
selecccionado y activará las áreas respectivas. Además validará la presencia de
la señal ENCENDIDO.

119
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Bloque Corrector de Temperatura

01101010011001010110000101101110
Con dos sumadores 74283 se
compensan las temperaturas
medidas (A y B) de 4 bits cada
una, con los valores de
compensación CA y CB.

120
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Bloque Activador de Zonas

01101010011001010110000101101110
121
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Este último bloque primero usa cuatro MUX 2 a 1 para escoger el

01101010011001010110000101101110
set point del sistema entre 12 (1100) y 0 (0000) dependiendo del
valor de la entrada Función.

Luego usando dos comparadores 7485, contrasta el valor real de


las zonas ALTA y BAJA contra el set point seleccionado y
determina las condiciones necesarias para activar las tres áreas.

Finalmente se valida la activación de las tres áreas con la


activación de la señal Encendido.

La Salida S, es simplemente la operación OR entre las salida de


activación de las tres áreas, puesto que basta que un área se
active para que se deba activar S.
122
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJEMPLO #3
Diseñe un circuito digital, que maneje el sistema de tarifación en una empresa

01101010011001010110000101101110
proveedora de servicio de telefonía celular. La empresa ofrece adicionalmente
el servicio de mensajes de texto.
El circuito recibe el conjunto de señales PLAN.H (Plan1.H, Plan0.H) que
funciona con el siguiente código :

El circuito recibe también el conjunto de señales de 4 bits MINUTOS.H


(Min3.H, Min2.H, Min1.H, Min0.H), cuyo valor binario equivale al total en
decenas de minutos utilizados en el mes por un cliente en particular. Ejemplo :
Si Min3,Min2,Min1,Min0 = 0101 = 50 minutos totales usados en el mes. La
cantidad máxima de minutos que se pueden utilizar en un mes es de 150.
Adicionalmente recibe la señal MENSAJE.L que al ser baja (L) significa que el
usuario contrató y utilizó el servicio de Beeper.

123
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
En el conjunto de señales de 4 bits, SALIDA.H (Sal3.H, Sal2.H, Sal1.H, Sal0.h), el
circuito debe fijar el valor total en decenas de dólares a cancelar por parte del
cliente al final del mes. Ejemplo : Si Sal3,Sal2,Sal1,Sal0 = 1000 = el cliente debe
cancelar 80 dólares.
Las tarifas mensuales (en dólares) de los planes ofrecidos son las siguientes :

El circuito es utilizado al final de cada mes y de forma individual para cada


cliente, realiza las siguientes funciones : Identifica el plan contratado, suma el
costo de la tarifa base, suma el costo de los Mensajes, si fueron contratados y
agrega el costo de los minutos adicionales a los gratis contratados.

124
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
Haga la implementación del circuito utilizando Multiplexores, Decodificadores,
Comparadores, Sumadores y puertas adicionales.

125
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO #4
Realizar el diseño modular de una máquina controladora de tarjetas de acceso a la Metrovía.

01101010011001010110000101101110
La máquina funcionará de la siguiente manera:

- Cada tarjeta tendrá un precio de $3,00 y abastecerá para realizar 12 viajes dentro de la
Metrovía, ya que cada viaje tiene un costo de $0,25.
- Cuando usted desea ingresar a la Metrovía, ingresa su tarjeta en el Lector/Grabador de
Acceso, se verifica su cupo, se descuenta un nuevo acceso y se activa Pasar, dejando que
usted entre al sistema de Metrovía.
- Las tarjetas de los usuarios tendrán incorporado un microchip de memoria en donde se
leerá ó grabará el número de acceso que se está realizando. Por ejemplo: Si usted ya ha
realizado 5 viajes con su tarjeta, entonces al realizar la lectura de su tarjeta se muestra #A =
0101. Luego, dado que usted realiza otro acceso, ahora se graba #A = 0110. No se almacenan
valores en dólares.
- Cuando su tarjeta ya ha cubierto su cupo, la máquina ya no le da acceso al sistema de
Metrovía (No se activa Pasar), y a su vez le pregunta mediante la Pantalla LCD si desea
comprar otra tarjeta, lo cual usted responde a través de un Pulsador, llamado Comprar
- Para realizar la compra de la nueva tarjeta, usted solo puede ingresar monedas de $1,00.
Por lo tanto la máquina no está habilitada para entregar vuelto. Tan solo al cubrir el valor del
precio de la tarjeta de acceso, la máquina le entrega la nueva tarjeta (Se activa ET.H) y usted
podrá ingresar a la Metrovía, al activarse la señal Pasar.
126
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
Presentar:
a) El diagrama de bloques de la Máquina Controladora de Acceso, mostrando claramente la
función que realiza cada bloque.
b) La implementación de cada bloque, utilizando circuitos integrados MSI y puertas
adicionales. Indique claramente las conexiones, nombre de las señales y de los integrados
usados.
127
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

a) El diagrama de bloques de la Máquina Controladora de Acceso, mostrando claramente la

01101010011001010110000101101110
función que realiza cada bloque.

128
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Presentar:
b) La implementación de cada bloque, utilizando circuitos integrados MSI y puertas
adicionales. Indique claramente las conexiones, nombre de las señales y de los integrados

01101010011001010110000101101110
usados.

129
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
130
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO #5

01101010011001010110000101101110
Realizar el diseño modular de una unidad aritmética. El ingreso del dato a ser procesado se
realiza por medio de un teclado decimal (teclas del 0 al 9).
Además posee una tecla ENTER.
Se debe presionar una sola tecla que generará mediante el convertidor, el número binario
(#)2 equivalente al número decimal ingresado. Al mismo tiempo se debe presionar ENTER y el
número debe quedar almacenado.
El número almacenado, que es equivalente al número decimal ingresado por teclado se
analiza. Si dicho número es par se enciende un LED rojo, si es impar se enciende un LED
verde.

La Unidad procesa al número binario almacenado de la siguiente manera:

Si X = 1 y el número ingresado es par entonces presenta (# x 2) en los displays.


Si X = 1 y el número ingresado es impar entonces presenta (# - 1) en los displays.
Si X = 0 y el número ingresado es impar entonces presenta (# + 3) en los displays.
Si X = 0 y el número ingresado es par entonces presenta “00” en los displays.

131
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO #5

01101010011001010110000101101110
Multiplicacion x 2
Multiplicar por 2
0011 bin : 3 dec
Desplazo todos los bits 1 bit hacia
3x2 = 6dec la izquierda y al bit menos
0110 bin significativo asigno 0

2dec : 0010 bin 0011 valor


0110 valor x2
2x2 = 4dec
0100bin
0111 valor
7dec = 0111bin 1110 valor x2
7x2 = 14dec
1110 bin

132
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
Presentar:
a) El diagrama de bloques de la Unidad Aritmética, mostrando la función que realiza cada
bloque.
b) La implementación de cada bloque, utilizando circuitos integrados MSI y puertas
adicionales. Indique claramente las conexiones, nombre de las señales y de los integrados
usados.
133
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
134
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
135
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
136
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
137
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
138
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

EJERCICIO #6
Realizar el diseño modular de una Máquina Despachadora de Periódicos que vende los siguientes
Diarios: El Universo, El Comercio, Diario Expreso y El Telégrafo. La máquina entrega un diario en

01101010011001010110000101101110
cada atención al usuario y está construida para recibir monedas de $0,50 solamente.
Los precios de los diferentes diarios se muestran en la tabla 1.
Para que el comprador indique cuál Diario desea adquirir, existen 4 botones que envían
información a un bloque codificador con prioridad según la tabla 2. En ese momento, el circuito
presenta mediante dos displays (señal P/V) el precio del diario escogido en centavos.

Cada vez que el usuario ingresa una moneda de $0,50 se envía una señal Listo indicando que
el diario fue pagado. En ese momento, el circuito presenta en los mismos displays (señal P/V)
la cantidad de vuelto en centavos que entregará. El vuelto se recibe con monedas de $0,10
solamente, además se ilumina un LED que indica que el cambio está listo para ser retirado.
Para que el bloque de Entrega del Vuelto reconozca cuanto debe dar como cambio, el circuito
envía la señal # Monedas que en binario indica la cantidad de monedas de $0.10 a entregar.
139
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
Presentar:
a) El diagrama de bloques de la Máquina Despachadora de Periódicos, mostrando claramente
la función que realiza cada bloque y el diseño interno del codificador con prioridad.
b) La implementación completa del circuito, utilizando circuitos integrados MSI y puertas
adicionales. Indique claramente las conexiones, nombre de las señales y de los integrados
usados.
140
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
141
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
142
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
143
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
144
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

01101010011001010110000101101110
145
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Unidad 4: Circuitos integrados


MSI

01101010011001010110000101101110
4.1.- Introducción
4.2.- Circuitos aritméticos: sumadores, restadores,
comparadores
4.3.- Multiplexores
4.4.- Codificadores y decodificadores
4.5.- Análisis y diseño de circuitos MSI
4.6.- Descripción de circuitos MSI con VHDL

146
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Descripción Estructural o lógica

01101010011001010110000101101110
• En la descripción estructural del cuerpo de la arquitectura del
diseño VHDL se transforma, simplemente , en una descripción
exacta del esquema lógico que resuelve la función objeto del
diseño.
• Para la descripción estructural, el VHDL se apoya en las
declaraciones de componentes.
• La cantidad de declaraciones de componentes se debe
corresponder con la cantidad de componentes distintas que
formaran parte del circuito físico que realiza la función lógica
• El estilo estructural de un diseño VHDL es una descripción
textual del esquema del circuito que ejecuta el diseño.

147
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sintaxis para la descripción


estructural de una arquitectura

01101010011001010110000101101110
• Aquí solo se
interconexionan salidas
con entradas de
componentes.
• La salida viene dada por
la operatividad de los
componentes, la cual no
se puede saber si no
conocemos el paquete
del cual ha sido leída.

148
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Declaración de una componente

01101010011001010110000101101110
• La declaración
component posee
una estructura similar
a la de entity, pero no
tiene la misma
connotación.

149
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Ejercicio

01101010011001010110000101101110
• Realizar la descripción en VHDL de tipo estructural de la
compuerta XOR
Y = /A.B + A./B

150
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Ejercicio

01101010011001010110000101101110
Como se observa, en
la declaración entity
ya están declaradas
todas las señales
externas que
aparecen en la
función lógica que se
esta diseñando.

151
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Ejercicio

01101010011001010110000101101110
• La declaración component
describe la interfaz de una entity
que será “alambrada” en el
diseño, como una distancia.

152
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Instanciación de componentes

01101010011001010110000101101110
• La instanciación de componentes se puede hacer, realizando:

– Asociación posicional o implícita.


– Asociación nominal o explicita.

153
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Asociación implícita o posicional

01101010011001010110000101101110
• En la asociación
posicional o implícita,
se indican las señales
que se conectan en
los terminales de los
componentes
rigurosamente en la
misma posición en
que fueron
declarados en la
componente

154
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Asociación nominal o explícita

01101010011001010110000101101110
• Esta asociación hace
irrelevante el orden de los
parámetros, por cuanto
dentro del paréntesis se
indican explícitamente las
señales que se conectan
a los terminales de las
componentes mediante el
símbolo => de
asignación.

155
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Ejercicio

01101010011001010110000101101110
156
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador Completo

01101010011001010110000101101110
Tabla de verdad del sumador completo de un bit:

157
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador Completo

01101010011001010110000101101110
Funciones resultantes:

158
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador Completo

01101010011001010110000101101110
Implementación con VHDL:

159
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador Completo de 4 bits

01101010011001010110000101101110
Se puede construir a partir de 4 sumadores completos.
La técnica es válida para cualquier número de bits.

160
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Sumador Completo de 4 bits

01101010011001010110000101101110
Lo que hacemos es
instanciar cuatro
veces veces el
sumador completo
de un bit.
Para este fín se
utiliza la descripción
estructural con los
comandos
“COMPONENT” Y
“PORT MAP”.

161
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Declaración de asignaciones
aritméticas

01101010011001010110000101101110
El paquete std_logic_1164 no especifica que las señales STD logic
puedan ser usadas con operadores aritméticos. Se debe usar el
paquete std_logic_signed, o el std_logic_unsigned.

162
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Declaración de asignaciones
aritméticas

01101010011001010110000101101110
La diferencia entre “signed” y “unsigned” se nota claramente
cuando se completa bits para una suma. Si no tiene signo la
cantidad menor se completa con ceros a la izquierda. Si tiene
signo la cantidad menor se completa propagando a la izquierda el
bit de signo.
El paquete std_logic_arith usa ambos tipos con signo o sin signo
pero no define la suma para el tipo de std_logic_vector.
En este caso los sumandos deben definirse del tipo SIGNED o
UNSIGNED.

163
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Comparador de 4 bits

01101010011001010110000101101110
La implementación del comparador se realiza ejecutando las
comparaciones de forma concurrente:

164
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Comparador de 4 bits con


entradas en cascada

01101010011001010110000101101110
165
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Comparador de 8 bits

01101010011001010110000101101110
Se forma haciendo una cascada de dos comparadores de 4 bits:

166
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Comparador de 8 bits

01101010011001010110000101101110
167
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Multiplexor 4 a 1

01101010011001010110000101101110
Se usa la operación WITH – SELECT – WHEN

168
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Multiplexor 16 a 1
Será construido en base a cuatro Mux 4 a 1:

01101010011001010110000101101110
169
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Multiplexor 16 a 1

01101010011001010110000101101110
170
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Decoder 2 a 4

01101010011001010110000101101110
171
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Decoder 4 a 16

01101010011001010110000101101110
172
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
Decoder 4 a 16
Se diseña en base a cuatro decoders 2 a 4:

01101010011001010110000101101110
173
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001

Recursos:
• Presentaciones, ejercicios resueltos y archivos VHDL:

01101010011001010110000101101110
174
Fundamentos del Diseño Digital

También podría gustarte