Question

J'ai un pakcgae dans lequel je déclare un tas de sous-types et de types.Dans Active HDL, il semble y avoir un problème chaque fois que j'essaie de créer un port à partir d'un sous-type, je me demande donc s'il existe un moyen de les convertir en types à la place.Ce qui suit serait un sous-type que j'aimerais convertir :

le sous-type word_t est std_logic_vector (15 jusqu'à 0) ;-- Mot (définition)

Est-ce possible sans simplement créer un type qui est un enregistrement ou un tableau ?merci

Était-ce utile?

La solution

Je ne pense pas qu'il soit possible de créer directement un type basé sur un autre subtype, mais sans le subtype ça peut se faire comme :

type word_t is array (15 downto 0) of std_logic;

Cependant, créer un nouveau type car le port rendra l'utilisation du port fastidieuse, en raison de la nature de type dur du VHDL.

Une solution alternative peut consister à créer un subtype avec la gamme pour word_t, comme:

subtype word_range_t is natural range 15 downto 0;

et puis utilise ça subtype avec std_logic_vector dans le port déclaration, comme :

... std_logic_vector(word_range_t);

Le port est alors toujours compatible avec std_logic_vector, et la taille du mot est alors toujours facilement maintenable.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top