Documentos de Académico
Documentos de Profesional
Documentos de Cultura
31/10/2015
SistemasDigitalesII
Unidad2CircuitosCombinacionales
VHDL
LuisArmandoReyesCardoso
IngenieroElectricista ITQ
PTC Mecatrnica.
email:
lreyes@uttt.edu.mx
7329112Mecatrnica
Ext.412
M.enC.LuisArmandoReyesCardoso
Sistemas Digitales II
31/10/2015
Entidades(entity),PuertosdeEntradaySalida
Modo in. Se refiere a las seales de entrada a la entidad.
Este slo es unidireccional y nada ms permite el flujo de
datos hacia dentro de la entidad.
Modo out. Indica las seales de salida de la entidad.
Modo inout. Permite declarar a un puerto de forma
bidireccional es decir, de entrada/salida; adems
permite la retroalimentacin de seales dentro o fuera de
la entidad.
Modo buffer. Permite hacer retroalimentaciones internas
dentro de la entidad, pero a diferencia del modo inout, el
puerto declarado se comporta como una terminal de salida.
M.enC.LuisArmandoReyesCardoso
Entidades(entity),PuertosdeEntradaySalida
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
Sistemas Digitales II
31/10/2015
Entidades(entity),PuertosdeEntradaySalida
M.enC.LuisArmandoReyesCardoso
DeclaracindeEntidades(entity)
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
Sistemas Digitales II
31/10/2015
DeclaracindeEntidades(entity)
M.enC.LuisArmandoReyesCardoso
DeclaracindeEntidades(entity)
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
Sistemas Digitales II
31/10/2015
DeclaracindeEntidades(entity)
M.enC.LuisArmandoReyesCardoso
DeclaracindeEntidades(entity)
SOLUCIN
En este caso se puede notar que existen varios mdulos individuales, los cuales en
conjunto forman una entidad general. Adems, las salidas C3,C2,C1,C0 deben
considerase como inout, es decir seales de entradasalida, dado que en la
estructura interna se observa que la salida de cada una de estas retroalimenta, a la
entrada, al siguiente mdulo:
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
10
Sistemas Digitales II
31/10/2015
DeclaracindeEntidades(entity)
M.enC.LuisArmandoReyesCardoso
11
DeclaracindeEntidades
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
12
Sistemas Digitales II
31/10/2015
Identificadores
Regla
Incorrecto
Correcto
4Suma
Suma4
S_4bits
S4_bits
Resta__4
Resta_4_
Unidentificadornopuedeutilizarsmbolos.
Clear#8
Clear_8
M.enC.LuisArmandoReyesCardoso
13
ArreglodeEntidadesUtilizandoVectores
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
14
Sistemas Digitales II
31/10/2015
ArreglodeEntidadesUtilizandoVectores
M.enC.LuisArmandoReyesCardoso
15
ArreglodeEntidadesUtilizandoVectores
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
16
Sistemas Digitales II
31/10/2015
ArreglodeEntidadesUtilizandoVectores
M.enC.LuisArmandoReyesCardoso
17
ArreglodeEntidadesUtilizandoVectores
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
18
Sistemas Digitales II
31/10/2015
DiseodeEntidadesMedianteLibrerasyPaquetes
M.enC.LuisArmandoReyesCardoso
19
DiseodeEntidadesMedianteLibrerasyPaquetes
Ejemplo:
Realizar la declaracin de la entidad Bloque mostrada en la figura mediante el
uso de libreras y paquetes.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
20
10
Sistemas Digitales II
31/10/2015
DiseodeEntidadesMedianteLibrerasyPaquetes
SOLUCIN
En esta entidad se utiliza la biblioteca ieee y el paquete std_logic_1164. Las
entradas y salidas se manejan de forma individual y en tipo vector. Es decir:
M.enC.LuisArmandoReyesCardoso
21
DiseodeEntidadesMedianteLibrerasyPaquetes
Ejemplo
En la figura se representa una entidad con capacidad para realizar una suma de 2
bits, A y B, que da como resultado la operacin SUMA= A+B. Realizar la
declaracin de la entidad correspondiente mediante el uso de paquetes y
libreras.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
22
11
Sistemas Digitales II
31/10/2015
DiseodeEntidadesMedianteLibrerasyPaquetes
SOLUCIN
Como se puede observar, en la lnea 3 la librera work utiliza el paquete
std_arith, requerido para que la operacin SUMA= A+B se pueda efectuar; este
paquete permite el uso del operador (+), mismo que hace posible esta
operacin. En el caso de que la librera no est dentro del programa al momento
de su ejecucin, el compilador enviar un mensaje de error.
M.enC.LuisArmandoReyesCardoso
23
DiseodeEntidadesMedianteLibrerasyPaquetes
1 library ieee;
2 useieee.std_logic_1164.all;
3 entity multiplicais
4 port(X0,X1,YO,Yl:instd_logic;
6 Z3,Z2,Z1,Z0:out std_logic;
7 end multiplica;
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
24
12
Sistemas Digitales II
31/10/2015
OperadoresAritmticosenVHDL
M.enC.LuisArmandoReyesCardoso
25
Arquitecturas(architecture)
Los estilos de programacin utilizados en el
diseo de arquitecturas se clasifican como:
Estilo Funcional.
Estilo por Flujo de Datos.
Estilo Estructural.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
26
13
Sistemas Digitales II
31/10/2015
Arquitecturas(architecture)
DescripcinFuncional
M.enC.LuisArmandoReyesCardoso
27
Arquitecturas(architecture)
DescripcinFuncional
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
28
14
Sistemas Digitales II
31/10/2015
Arquitecturas(architecture)
DescripcinporFlujodeDatos
M.enC.LuisArmandoReyesCardoso
29
DescripcinporFlujodeDatosMedianteWHEN ELSE
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
30
15
Sistemas Digitales II
31/10/2015
DescripcinporFlujodeDatosMedianteWHEN ELSE
M.enC.LuisArmandoReyesCardoso
31
DescripcinporFlujodeDatosMedianteEcuaciones
Booleanas
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
32
16
Sistemas Digitales II
31/10/2015
DescripcinporFlujodeDatosMedianteEcuaciones
Booleanas
M.enC.LuisArmandoReyesCardoso
33
DescripcinporFlujodeDatosMedianteEcuaciones
Booleanas
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
34
17
Sistemas Digitales II
31/10/2015
DescripcinporFlujodeDatosMedianteEcuaciones
Booleanas
M.enC.LuisArmandoReyesCardoso
35
DescripcinEstructural
Como su nombre indica, una descripcin
estructural basa su comportamiento en modelos
lgicos establecidos (compuertas, sumadores,
contadores, etc.).
El usuario puede disear estas estructuras y
guardarlas para su uso posterior o tomarlas de
los paquetes contenidos en las libreras de diseo
del software que se est utilizando.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
36
18
Sistemas Digitales II
31/10/2015
DescripcinEstructural
M.enC.LuisArmandoReyesCardoso
37
DescripcinEstructural
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
38
19
Sistemas Digitales II
31/10/2015
ComparacinEntrelosEstilosdeDiseo
El estilo de diseo utilizado en la programacin del circuito
depende del diseador y de la complejidad del proyecto.
Por ejemplo, un diseo puede describirse por medio de
ecuaciones booleanas, pero si es muy extenso quiz sea
ms apropiado emplear estructuras jerrquicas para
dividirlo; ahora bien, si se requiere disear un sistema cuyo
funcionamiento dependa slo de sus entradas y salidas, es
conveniente utilizar la descripcin funcional, la cual
presenta la ventaja de requerir menos instrucciones y el
diseador no necesita un conocimiento previo de cada
componente del circuito.
M.enC.LuisArmandoReyesCardoso
39
SealesIntermediasenVHDL
Prctica 7
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
40
20
Sistemas Digitales II
31/10/2015
SealesIntermediasenVHDL
Prctica 7
M.enC.LuisArmandoReyesCardoso
41
AsignacindeDatosenVHDL
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
42
21
Sistemas Digitales II
31/10/2015
ValoresdeSTD_LOGIC
Valor
Descripcin
Valorindefinido undefined
Valorfuertedesconocido
0Fuerte
1Fuerte
Altaimpedancia
Valordbildesconocido
0Dbil
1Dbil
NoImporta(Dont Care)
M.enC.LuisArmandoReyesCardoso
43
DiseoLgicoCombinacional
conVHDL
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
44
22
Sistemas Digitales II
31/10/2015
ProgramacindeEstructurasBsicasMediante
AsignacionesConcurrentes
M.enC.LuisArmandoReyesCardoso
45
ProgramacindeEstructurasBsicasMediante
AsignacionesConcurrentes
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
46
23
Sistemas Digitales II
31/10/2015
AsignacionesPuramenteConcurrentes
M.enC.LuisArmandoReyesCardoso
47
DeclaracionescondicionalesAsignadasaunaSeal
(when else)
Prctica 8
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
48
24
Sistemas Digitales II
31/10/2015
Ejemplo
M.enC.LuisArmandoReyesCardoso
Prctica 9
Solucin
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
49
50
25
Sistemas Digitales II
31/10/2015
DeclaracionesConcurrentesAsignadasaSeales
Prctica 10
M.enC.LuisArmandoReyesCardoso
51
Ejemplo
Dada la tabla de verdad mostrada a continuacin, halle las
ecuaciones X, Y, Z, de la forma suma de productos y progrmelas en
VHDL, utilizando declaraciones concurrentes asignadas a seales.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
52
26
Sistemas Digitales II
31/10/2015
Solucin
Las ecuaciones de la forma suma de productos para X,
Y y Z se muestran a continuacin:
X
ABC
ABC
ABC
A BC
ABC
ABC
A BC
ABC
ABC
M.enC.LuisArmandoReyesCardoso
A BC
ABC
53
Solucin
Prctica 11
X
ABC
ABC
ABC
A BC
ABC
ABC
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
A BC
ABC
ABC
54
27
Sistemas Digitales II
31/10/2015
Prctica 12
M.enC.LuisArmandoReyesCardoso
Prctica 13
55
Ejemplo
Se requiere disear un circuito combinacional que detecte nmeros primos de 4 bits. Realice la
tabla de verdad v elabore un programa que describa su funcin. Utilice instrucciones del tipo with
select when.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
56
28
Sistemas Digitales II
31/10/2015
ProgramacindeEstructurasBsicasMediante
DeclaracionesSecuenciales
57
DeclaracionesPuramenteSecuenciales
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
58
29
Sistemas Digitales II
31/10/2015
Declaracionesifthenelse
Esta declaracin sirve para seleccionar una condicin o condiciones
basadas en el resultado de evaluaciones lgicas (falso o verdadero).
M.enC.LuisArmandoReyesCardoso
59
ComparadordeIgualdad
Practica 14
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
60
30
Sistemas Digitales II
31/10/2015
M.enC.LuisArmandoReyesCardoso
61
Comparadorde4bits
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
62
31
Sistemas Digitales II
31/10/2015
Comparadorde4bits
Prctica 15
M.enC.LuisArmandoReyesCardoso
63
M.enC.LuisArmandoReyesCardoso
64
Ejemplo
M.enC.LuisArmandoReyesCardoso
32
Sistemas Digitales II
31/10/2015
Solucin
M.enC.LuisArmandoReyesCardoso
65
M.enC.LuisArmandoReyesCardoso
66
Solucin
M.enC.LuisArmandoReyesCardoso
33
Sistemas Digitales II
31/10/2015
Solucin
Prctica 16
M.enC.LuisArmandoReyesCardoso
67
OperadoresRelacionales
Significado
Igual
/=
Diferente
<
Menor
<=
MenoroIgual
>
Mayor
>=
MayoroIgual
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
68
34
Sistemas Digitales II
31/10/2015
Decodificadores
Funcin bsica de un decodificador es detectar la
presencia de una determinada combinacin de
bits (cdigo) en sus entradas y sealar la
presencia de este cdigo mediante un cierto nivel
de salida.
En su forma general, un decodificador posee n
lneas de entrada para gestionar n bits y en una
de las 2n lneas de salida indica la presencia de
una o ms combinaciones de n bits.
M.enC.LuisArmandoReyesCardoso
69
DecodificadorBinarioBsico
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
70
35
Sistemas Digitales II
31/10/2015
DecodificadorBinariode4Bits
M.enC.LuisArmandoReyesCardoso
71
DecodificadorBinariode4Bits
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
72
36
Sistemas Digitales II
31/10/2015
Decodificador
Binariode4Bits
Prctica 17
M.enC.LuisArmandoReyesCardoso
73
DecodificadorBinariode4Bits Simulacin
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
74
37
Sistemas Digitales II
31/10/2015
DecodificadordeBDCaDecimal
M.enC.LuisArmandoReyesCardoso
75
M.enC.LuisArmandoReyesCardoso
76
Decodificador de
BDC a Decimal
Prctica 18
M.enC.LuisArmandoReyesCardoso
38
Sistemas Digitales II
31/10/2015
M.enC.LuisArmandoReyesCardoso
77
DecodificadordeBCDa7Segmentos
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
78
39
Sistemas Digitales II
31/10/2015
DecodificadordeBCD
a7Segmentos
Prctica 19
M.enC.LuisArmandoReyesCardoso
79
DecodificadordeBCDa7Segmentos
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
80
40
Sistemas Digitales II
31/10/2015
Decodificador1de874LS138
M.enC.LuisArmandoReyesCardoso
81
Decodificador1de874LS138
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
82
41
Sistemas Digitales II
31/10/2015
Decodificador1de874LS138
Prctica 20
M.enC.LuisArmandoReyesCardoso
83
Decodificador1de874LS138
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
84
42
Sistemas Digitales II
31/10/2015
Codificadores
Un codificador es un circuito lgico combinacional que,
esencialmente, realiza la funcin inversa del
decodificador.
Un codificador permite que se introduzca en una de
sus entradas un nivel activo que representa un dgito,
como puede ser un dgito decimal u octal, y lo
convierte en una salida codificada, como BCD o binario.
Los codificadores se pueden disear tambin para
codificar smbolos diversos y caracteres alfabticos.
El proceso de conversin de smbolos comunes o
nmeros a un formato codificado recibe el nombre de
codificacin.
M.enC.LuisArmandoReyesCardoso
85
CodificadorDecimal BCD
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
86
43
Sistemas Digitales II
31/10/2015
Codificador
Decimal BCD
Prctica 21
M.enC.LuisArmandoReyesCardoso
87
CodificadorDecimal BCD
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
88
44
Sistemas Digitales II
31/10/2015
Codificadorde8a3Lneas74XX148
Prctica 22 - Realizar el cdigo y simulacin
M.enC.LuisArmandoReyesCardoso
89
Multiplexores(SelectoresdeDatos)
Un multiplexor (MUX) es un dispositivo que permite
dirigir la informacin digital procedente de diversas
fuentes a una nica lnea para ser transmitida a travs
de dicha lnea a un destino comn.
El multiplexor bsico posee varias lneas de entrada de
datos y una nica lnea de salida.
Tambin posee entradas de seleccin de datos, que
permiten conmutar los datos digitales provenientes de
cualquier entrada hacia la lnea de salida.
A los multiplexores tambin se les conoce como
selectores de datos.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
90
45
Sistemas Digitales II
31/10/2015
Multiplexorde2a1
M.enC.LuisArmandoReyesCardoso
91
M.enC.LuisArmandoReyesCardoso
92
Multiplexorde2a1
Prctica 23
M.enC.LuisArmandoReyesCardoso
46
Sistemas Digitales II
31/10/2015
Multiplexorde2a1
M.enC.LuisArmandoReyesCardoso
93
Multiplexor4a1
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
94
47
Sistemas Digitales II
Prctica 24
31/10/2015
Multiplexor4a1
M.enC.LuisArmandoReyesCardoso
95
Multiplexor4a1
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
96
48
Sistemas Digitales II
31/10/2015
Multiplexor8a1
Prctica 25
M.enC.LuisArmandoReyesCardoso
97
Demultiplexores
Un demultiplexor (DEMUX) bsicamente
realiza la funcin contraria a la del
multiplexor.
Toma datos de una lnea y los distribuye a un
determinado nmero de lneas de salida.
Por este motivo, el demultiplexor se conoce
tambin como distribuidor de datos.
Los decodificadores pueden utilizarse tambin
como demultiplexores.
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
98
49
Sistemas Digitales II
31/10/2015
Demultiplexorde
1a4 Lneas
Prctica 26
M.enC.LuisArmandoReyesCardoso
99
M.enC.LuisArmandoReyesCardoso
100
Demultiplexorde
1a8Lneas
Prctica 27
M.enC.LuisArmandoReyesCardoso
50
Sistemas Digitales II
31/10/2015
MultiplexoresyDemultiplexores
Prctica 28 - Realizar ambas funciones, para realizar en laboratorio
es neceserio utilizar dos GAL16V8 dos GAL22V10
M.enC.LuisArmandoReyesCardoso
M.enC.LuisArmandoReyesCardoso
101
51