Packages et sous-programmes
Organiser le VHDL avec des packages, fonctions et procédures réutilisables.
Pourquoi utiliser un package
Un package sert à regrouper ce qui doit être partagé entre plusieurs fichiers VHDL :
- types personnalisés ;
- constantes communes ;
- sous-types ;
- déclarations de fonctions et procédures ;
- déclarations de composants, si le projet en utilise.
Sans package, on recopie les mêmes définitions dans plusieurs architectures. Cela finit souvent par créer des incohérences.
Déclaration de package
La déclaration du package expose l'interface : ce que les autres fichiers peuvent utiliser.
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;
package video_pkg is
subtype t_color is unsigned(7 downto 0);
type t_rgb is record
red : t_color;
green : t_color;
blue : t_color;
valid : std_logic;
end record t_rgb