Unidad 4 - Circuitos Integrados MSI
Unidad 4 - Circuitos Integrados MSI
Unidad 4 - Circuitos Integrados MSI
01101010011001010110000101101110
Unidad 4:
Circuitos integrados
MSI
1
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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:
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
01101010011001010110000101101110
– Es importante conocer los intervalos de voltaje
válidos para la familia lógica que se está
trabajando.
01101010011001010110000101101110
11
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
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
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
01101010011001010110000101101110
Si la salida de una puerta es alta impedancia si se pueden
interconectar de manera directa
15
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
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.
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
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.
21
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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.
01101010011001010110000101101110
Samsung Galaxy S8
23
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Samsung Galaxy S8
24
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
25
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Unidad 4:
Circuitos integrados
MSI
26
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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.
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
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
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
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
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
01101010011001010110000101101110
43
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
EJERCICIO 3
01101010011001010110000101101110
Ej: Diseñe un comparador de 3 Bits
EJERCICIO 3
01101010011001010110000101101110
45
Fundamentos del Diseño Digital
EJERCICIO 4
Ej: Diseñe un comparador de 6 bits
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
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
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
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
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
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
01101010011001010110000101101110
Ejemplo : Reducir el siguiente mapa
64
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
01101010011001010110000101101110
Utilizar el método la variable entrante para reducir los siguientes
mapas
65
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
01101010011001010110000101101110
70
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
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
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
- 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
01101010011001010110000101101110
Implementación con MUX:
No se necesitan puertas 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
01101010011001010110000101101110
92
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
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
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
01101010011001010110000101101110
96
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
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
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
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.
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.
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.
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
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
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.
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
01101010011001010110000101101110
set point del sistema entre 12 (1100) y 0 (0000) dependiendo del
valor de la entrada Función.
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 :
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 :
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
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.
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
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
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
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
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
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:
153
Fundamentos del Diseño Digital
011000010111001101100001011011100111101001100001
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
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
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
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
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