Documente Academic
Documente Profesional
Documente Cultură
VHDL
Mtodos
Captura Esquemtica (p.ej. OrCAD)
De Bajo Nivel:
PALASM
OPAL
PLPL
De Alto Nivel:
Handel C
System C
Verilog
VHDL
Simulacin
Funcional
Programacin
FIN
IDEA
SINTESIS
DESCRIPCIN
DEL CIRCUITO
ANALISIS
TEMPORAL
SIMULACION FUNCIONAL
FUNCIONA?
NO FUNCIONA? SI
NO
SI
PROGRAMACION
DEL DISPOSITIVO
NO
FUNCIONA?
SI
FIN
DEL PROCESO
DE DISEO
PRUEBAS
AL DISEO
ELABORACION
DEL PROTOTIPO
Smbolos especiales
Existen caracteres especiales sencillos como (&, #, +, *, =) o dobles como ( :=, <=).
Identificadores
Es lo que se usa para dar nombre a los diferentes objetos del lenguaje.
Nmeros
Caracteres
Cadenas
Cadenas de bits
Los tipos bit y bit_vector son en realidad tipo carcter y arreglo de caracteres
respectivamente, se coloca un prefijo para indicar la base : O126, XFE
Palabras reservadas
Identificadores
Nombres o etiquetas que se usan para referir: Variables, Constantes,
Seales, Procesos, Entidades, etc.
Estn formados por nmeros, letras (maysculas o minsculas) y
guin bajo _ con las reglas especificadas en la tabla siguiente.
Longitud (Nmero de Caracteres): Sin restricciones
Palabras reservadas por VHDL no pueden ser identificadores
En VHDL, un identificador en maysculas es igual a su contraparte
en minsculas
Incorrecto
Correcto
Primer carcter debe ser siempre una letra mayscula o minscula 4Suma
Suma4
S_4bits
S4_bits
Resta__4
Resta_4_
Clear#8
Clear_8
Estructura bsica
Declaracin de Entidad
(entity)
Unidad Primaria
Arquitectura
(architecture)
Unidad Secundaria
Entidad - Qu es?
Cin
Puertos de Entrada
A
B
Entidad
Cout
Sumador
SUMA
Puertos de Salida
Descripcin de un Puerto
Nombre
Identificador
Modo
in = Entrada
out = Salida
Ms tipos
Se irn introduciendo conforme avance el curso
Tipo de Dato
Conjuntos de Valores que se les ha asignado un nombre
de tal forma que un objeto de un determinado Tipo
pueda tomar cualquier valor dentro del conjunto de
valores que define al Tipo especificado.
bit (pkg.standard)
Valores de 0 o 1
Lgico
bit_vector
Conjunto de bits
que representa a un
grupo de seales de
ent. o sal.
(pkg.standard)
(pkg.std_logic_1164)
Valores U, X,
0, 1, Z, W,
L, H, -
std_logic_vector
Arreglos de
std_logic
std_logic
(pkg.std_logic_1164)
Ms tipos
Se irn introduciendo conforme avance el curso
Entidad Ejemplo 1
Ejemplo-1 Sumador
Cin
Puertos de Entrada
A
B
Entidad
Cout
circuito
SUMA
Puertos de Salida
Lnea
N.
1
2
3
4
5
Identificador de la entidad
Modo de Operacin
Tipo de Dato
Entidad Ejemplo 2
Ejemplo-2
a3
b3
a2
b2
a1
b1
a0
b0
Lnea
N.
--Declaracion de la entidad
entity circuito is
3
4
5
port (a3, b3, a2, b2, a1, b1, a0, b0: in bit;
F: out bit);
end circuito;
Ejemplo-3
a3
b3
a2
b2
a1
b1
a0
b0
Lnea
N.
--Declaracion de la entidad
entity circuito is
3
4
5
Arquitectura - Qu es?
arquitectura (architecture)
Unidad de Diseo Secundaria que describe el comportamiento interno de una entidad.
Estilo de descripcin o
Modelizacin
Funcional
Nivel Compuerta
Nivel Transistor (Topologa / Layout)
Estructural
Layout
Descripcin - Estructural
Ejemplo-4a
a
f1
b
f1
Lnea
N
1
2
3
4
5
6
7
8
9
10
11
12
end estructural;
Ejemplo-4b
Lnea
N
a
f1
b
f1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Descripcin - Funcional
Ejemplo-4c
Lnea
N
a
f1
b
f1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Arquitectura. Ejemplo 5
Ejemplo-5
ENTRADA SALIDA
a
salida
b
c
ENTRADAS
salida
SALIDA
c
0
b
0
a
0
salida
0
Arquitectura. Ejemplo 5
Ejemplo-5
ENTRADA SALIDA
a
salida
b
c
ENTRADAS
SALIDA
salida
0
salida
c
0
b
0
a
0
= Sel a + Sel b
Arquitectura. Ejemplo 5
Ejemplo-5
--Entidad
ENTITY ejemplo_5 IS
PORT (a, b, c: IN bit;
salida: out bit);
END ejemplo_5;
--Arquitectura Estructural
ARCHITECTURE estructural OF ejemplo_5 IS
SIGNAL ax, bx, noc :bit;
BEGIN
U0: ENTITY inv PORT MAP (e=>c, y=>noc);
U1: ENTITY and2 PORT MAP (e1=>a, e2=>noc, y=>ax);
U2: ENTITY and2 PORT MAP (b, c, bx);
U3: ENTITY or2 PORT MAP (e1=>ax, e2=>bx, y=>salida);
END estructural ;
Arquitectura. Ejemplo 5
Ejemplo-5
--Ejemplo 5
ENTITY ejemplo_5 IS
PORT (
a, b, c: IN
bit;
salida: OUT bit
);
END ejemplo_5;
ARCHITECTURE data_flow OF ejemplo_5 IS
BEGIN
salida <= ( (NOT c) AND a ) OR (c AND b);
END data_flow;
Arquitectura. Ejemplo 5
Ejemplo-5
Arquitectura. Ejemplo 5
Ejemplo-5
--Ejemplo 5
ENTITY ejemplo_5 IS
PORT (
a, b, c: IN bit;
salida: OUT bit
);
END ejemplo_5;
ARCHITECTURE data_flow OF ejemplo_5 IS
SIGNAL temp: bit_vector (2 DOWNTO 0);
BEGIN
salida <= 0 WHEN temp = 000 ELSE
0 WHEN temp = 001 ELSE
1 WHEN temp = 010 ELSE
1 WHEN temp = 011 ELSE
0 WHEN temp = 100 ELSE
1 WHEN temp = 101 ELSE
0 WHEN temp = 110 ELSE
1;
temp <= c & b & a; --Concatenacin para formar un solo bus .
END data_flow;