Étape 4: Fond VHDL
Cette étape va vous donner un peu de perspicacité quant à ce que toutes les différentes parties du VHDL font réellement. Pour la création du compositeur, nous aurons besoin de spécifier l’entité, l’architecture du projet et deux blocs de processus distinct. L’entité est la base pour les entrées et les sorties, l’architecture précisera chacun des signaux et des valeurs y et les blocs de processus gérera la fonctionnalité réelle.
La déclaration d’entité en haut du fichier source donne des spécifications pour chacune des entrées et des sorties. Dans le cas du compositeur, ils sont a, b, c, etc., suivie de std_logic_vector ou STD_LOGIC_VECTOR. Les lettres correspondent au nom des valeurs et la std_logic_vector donne le type. Std_logic_vector permet la valeur à assigner une valeur à la fois comme une variable. STD_LOGIC_VECTOR autorise plusieurs valeurs à affecter sous la forme d’un bus. Un bus est tout simplement un groupe de signaux tous regroupés. Toutefois, pour le compositeur, seuls les signaux de std_logic_vector ont été utilisés.
L’architecture est indiquée juste en dessous de la déclaration d’entité. Cela donne le « architecture » du fichier source. L’architecture contient les blocs de processus décrits précédemment et tous les signaux temporaires qui seront utilisés pour transférer les valeurs du signal d’un processus à un autre. L’architecture est à la fin, donc le fichier.
Les blocs de processus puis peuvent être créés pour réellement faire le compositeur travaille. On trouvera un exemple des blocs de processus dans le fichier source. Ces segments contiennent des listes de sensibilité avec les signaux. L’idée sous-jacente est que le bloc de l’ensemble du processus s’exécutera lorsque l’un des signaux dans la liste de sensibilité est modifiée. Dans le cas du compositeur, cela nous permet de mettre à jour le signal envoyé aux enceintes lorsqu’un bouton est activé.
Ce qui précède donne un peu d’histoire en VHDL. Toutefois, il est fortement recommandé de regarder quelques tutoriels avant de tenter de passer. Exemples de ce qui précède est dans les fichiers source.