Download 4. Elementos de la Interfaz

Document related concepts
no text concepts found
Transcript
IV. Elementos de la Interfaz
1
Nombre y comentarios
El nombre de la Entidad es un identificador, y como tal tiene las siguientes reglas:
1.
2.
3.
4.
5.
6.
7.
No puede ocupar más una línea.
Debe iniciar con una letra.
Solo puede incluir letras, números y guiones bajos.
Los guiones bajos solo pueden ser intermedios.
No se permiten espacios.
No se distingue entre mayúsculas y minúsculas.
No se pueden usar palabras reservadas.
Los comentarios en VHDL inician con
dos guiones y terminan al final de la
línea, ayudan a una adecuada
documentación.
Ejemplos:
Couter_4Bits,
Mux_4_to_1,
etc.
-- Unidad Diseñada : 8086 (Entidad y Arquitectura)
-- Nombre del archivo : P8086.vhd
-- Propósito
: Modelo de un microprocesador 8086
-para un módulo empotrado de un
-“sistema en un chip”
-- Limitaciones
: Se supone una frec. De 33 MHz
-- Errores
: Ninguno conocido
-- Biblitecas
: Numeric_STD, ALDEC.
-- Autor
:- - - - - -- Simulador
: ActiveVHDL
-- Notas
: Modelo sintetizado con las herramien-tas de ALDEC.
2
Cláusula END
Es el último elemento de una Entidad, opcionalmente
es seguido de la palabra reservada Entity y/o el
nombre de la entidad.
Entity Example is
generic ( . . . );
port ( . . . );
end entity Example;
Puertos
Los puertos son definidos en VHDL como: “Canales para comunicación dinámica
entre un bloque (una entidad) y su ambiente”. La declaración de un puerto contiene
los siguientes elementos:
1.
2.
3.
4.
5.
6.
La palabra reservada Signal (opcional)
Nombre del puerto seguido de dos puntos
El modo del puerto
El tipo del puerto
El valor inicial precedido por := (opcional)
Un comentario que describa al puerto (opcional)
3
Ejemplo: Una ALU de 4 bits
In1 In2 OpSel Modo
Cout
Cin
ALU
Result
Equal
Entity ALU is
Port (
In1 : in bit_vector (3 downto 0);
In2 : in bit_vector (3 downto 0);
OpSel : in bit_vector (0 to 2);
Mode : in bit;
Cin : in bit;
Result : out bit_vector (3 downto 0);
Cout : out bit;
Equal : out bit
);
-- Primer Operando
-- Segundo Operando
-- Selector de Operación
-- Modo Aritmético/Lógico
-- Acarreo de entrada
-- Resultado
-- Acarreo de salida
-- 1 cuando In1 = In2
End Entity ALU;
4
Parámetros Genéricos
Los parámetros genéricos son definidos en VHDL como: “Canales de información
estática para ser comunicada a un bloque desde su mismo ambiente, en otras
palabras, son valores constantes para diferentes parámetros”.
Ejemplos de Uso:
1.- Para definir el tamaño de un objeto en VHDL
....
generic ( AnchoBus : Integer := 8 );
port ( DataBus : InOut bit_Vector ( AnchoBus – 1 downto 0 ) );
....
2.- Para determinar el número de Iteraciones en un lazo
....
generic ( NumIt : Integer := 3 );
....
for k in 1 to NumIt loop
....
end loop;
....
5
Parámetros Genéricos
2.- Para definir intervalos de tiempos
....
generic ( Delay : Time := 5 s );
....
y <= x after Delay;
....
En todos los casos la declaración de parámetros genéricos debe incluir:
- Nombre del parámetro seguido de dos puntos
- Tipo del parámetro
- El valor del parámetro precedido de := (opcional)
- Comentarios de descripción del parámetro (opcional)
6