• Aucun résultat trouvé

Organisation d’un modèle VHDL-AMS

4.2.1

Unités de conception

L’unité de conception (Design unit) est le plus petit module compilable séparément. VHDL-AMS offre cinq types [131] d’unités de conception (Figure 4.1) :

– La déclaration d’entité (Entity declaration) ;

– Le corps d’architecture (Architecture body), ou plus simplement architecture ; – La déclaration de configuration (Configuration declaration) ;

– La déclaration de paquetage (Package declaration) ; – Le corps de paquetage (Package body).

Les trois premières unités de conception (déclaration d’entité, architecture et déclara- tion de configuration) permettent la description de l’aspect matériel d’un système, alors que les deux dernières (déclaration et corps de paquetage) permettent de grouper des informations pouvant être réutilisées pour la description de plusieurs systèmes différents. Les trois unités de conception : déclaration d’entité, déclaration de configuration et déclaration de paquetage, sont qualifiées de primaires (Primary units, marquées par un "P" à la figure 4.1), car elles décrivent une vue externe (le "quoi" de la boîte noire). Les unités primaires déclarent ce qui est accessible aux autres parties du modèle. Elles permettent le partage et la réutilisation de ressources (modèles et algorithmes). Elles ne contiennent que le minimum d’information nécessaire pour l’utilisation de ces ressources. Les deux autres unités de conception : architecture et corps de paquetage, sont qualifiées de secondaires (Secondary units, marquées par un "S" à la figure 4.1), car elles décrivent une vue interne particulière (une réalisation ou le "comment" de la boîte noire).

Les unités secondaires regroupent des ressources seulement visibles par leur unité pri- maire correspondante (déclaration d’entité pour l’architecture et déclaration de paque-

Figure 4.1 – Unités de conception VHDL-AMS (en gris).

tage pour le corps de paquetage). Elles contiennent des détails d’implémentation que l’on masque pour éviter de surcharger l’utilisateur avec des détails inutiles et/ou éviter des modifications malencontreuses de modèles et d’algorithmes de base. Plusieurs unités se- condaires peuvent être définies pour une même unité primaire.

4.2.2

Entité de conception

L’entité de conception (Design entity) est l’abstraction de base en VHDL-AMS. Elle représente une portion d’un système matériel possédant une interface entrée-sortie et une fonction bien définies. Une entité de conception est constituée d’une déclaration d’entité et d’un corps d’architecture correspondant.

Une entité de conception peut représenter un système matériel à plusieurs niveaux de complexité : un système entier, un sous-système, une carte, un circuit intégré, une cellule complexe (par exemple : ALU, mémoire, convertisseur A/N, filtre, amplificateur

opérationnel, etc.), une porte logique ou un transistor.

Une configuration permet de définir comment plusieurs entités de conception sont assemblées pour constituer le système complet. Une entité de conception peut être décrite comme une hiérarchie de composants (Component) interconnectés. Chaque composant peut être lié à une entité de conception de plus bas niveau qui définit la structure ou le comportement de ce composant. Une telle décomposition d’une entité de conception et les liens de ses composants éventuels à d’autres unités de conception forment une hiérarchie représentant le système complet.

4.2.3

Déclaration d’entité

La déclaration d’entité définit l’interface d’un modèle avec le monde extérieur au moyen de ports (Ports). Les ports peuvent être de plusieurs classes :

– Les ports de classe "Signal" définissent des canaux de communication directionnels (entrées (mode IN), sorties (mode OUT) ou bidirectionnels (mode INOUT)) modé- lisant des signaux logiques.

– Les ports de classe "Terminal" définissent des points de connexions analogiques adirectionnels pour lesquels les lemmes de Kirchhoff sont satisfaits.

– Les ports de classe "Quantity" définissent des points de connexions analogiques directionnels (entrées (mode IN), sorties (mode OUT)) pour lesquels les lemmes de Kirchhoff ne doivent pas être satisfaits.

La déclaration d’entité peut également définir des paramètres génériques (Generic pa- rameters) qui serviront à rendre le modèle plus général.

4.2.4

Description structurelle et configuration

Une vue interne (architecture) possible en VHDL-AMS est une description structurelle pour laquelle le modèle est une interconnexion de composants, avec éventuellement un nombre de niveaux hiérarchiques non limité.

Une architecture structurelle peut être décrite de deux manières. La première manière utilise des déclarations de composants pour définir les besoins de l’architecture. Ces dé- clarations sont purement locales et ne sont pas nécessairement reliées à des entités de conception particulières. Une déclaration de configuration est nécessaire pour établir ces liens.

VHDL-AMS définit la notion de configuration par défaut (Default configuration) : une instance de composant est automatiquement associée à une entité de conception dans la bibliothèque de travail si une telle entité possédant la même interface que le composant

existe (mêmes noms d’entité et de composant, mêmes nombres, classes et types de ports, mêmes noms de ports déclarés dans le même ordre).

La spécification d’une entité de conception sans nom d’architecture est légale en VHDL- AMS. Dans ce cas, l’architecture la plus récemment analysée (MRA - Most Recently Ana- lyzed) est implicitement considérée.

4.2.5

Terminaux et natures

Le " Terminal" est un objet VHDL-AMS utile pour la spécification de points de connexions pour lesquels les lois de Kirchhoff sont satisfaites. Les terminaux permettent de définir des branches qui elles-mêmes servent de support à la spécification d’équations liant les grandeurs de branches associées, usuellement la tension et le courant pour des systèmes électriques.

Un "Terminal" appartient à une nature qui représente un domaine d’énergie particulier (électrique, mécanique, thermique, etc.). Chaque domaine d’énergie est caractérisé par deux classes de grandeurs liées à des effets physiques. Les grandeurs "entre" (Across) représentent un effort (par exemple : la tension pour les systèmes électriques, la vitesse pour les systèmes mécaniques, la température pour les systèmes thermiques).

Les grandeurs "dans" (Through) représentent un flot (par exemple : le courant pour les systèmes électriques, la force pour les systèmes mécaniques, le débit de chaleur pour les systèmes thermiques). Ces deux classes de grandeurs permettent de définir la notion d’énergie et de puissance d’un système physique.

Une déclaration de nature en VHDL-AMS ne définit pas directement les grandeurs physiques relatives à chacune des classes "entre" et "dans", mais plutôt leur type, c’est- à-dire l’ensemble des valeurs (nécessairement réelles) que ces grandeurs peuvent prendre. Les grandeurs elles-mêmes seront définies au niveau des branches.

Documents relatifs