• Aucun résultat trouvé

Le comportement d'une architecture hybride recongurable dépend d'un certain nombre de paramètres. Parmi ces paramètres, nous trouvons ceux caractéristiques de l'appli- cation, ceux dépendants de l'architecture et ceux fonction de l'exécution du code.

A.2-1 Paramètres applicatifs

Une application donnée est modélisée par un GdT. Chaque tâche τi est caractérisée

par les paramètres suivants :  Nbi

op, le nombre d'opérations arithmétiques et logiques qui doivent être exécutées

par la tâche τi;

 ρi, le volume de données en octet, à charger depuis les ressources de mémorisation,

en entrée de la tâche τi;

 ni, le nombre d'itérations d'exécution de la tâche τ i.

Pour les applications de TDSI visées par ce type d'architectures, les normes sont très strictes et un non respect de la contrainte temps réel engendre des conséquences dé- sastreuses sur le signal. Nous dénissons Ti

T R comme étant la contrainte temps réel

relative à la tâche τi.

Si la puissance calculatoire d'une architecture est inférieure à la complexité algorith- mique de la tâche, son exécution sur cette architecture conduira à une violation de la contrainte temps réel. La complexité algorithmique Ci en MOPS (Mega Operations

Per Second) d'une tâche τi représente le nombre d'opérations qu'il faut exécuter en

une seconde. Elle est calculée en utilisant la formule suivante : Ci = N b i op Ti T R × 10−6[M OP S] (2-1)

A.2-2 Paramètres architecturaux

Les paramètres architecturaux sont les caractéristiques dénies par les constructeurs des diérentes ressources mis en jeu dans l'architecture hybride.

Les paramètres architecturaux qui caractérisent le CPU sont sa fréquence d'exécution FCP U et son IPC (Instruction Per Cycle) dénissant le nombre d'instructions pouvant

être exécutées par cycle. Ce paramètre illustre le degré de parallélisme ILP exploité par le CPU. Un autre paramètre architectural du CPU est l'ecacité énergétique du CPU EECP U. Ce paramètre nous permettra d'estimer la puissance consommée lors de

l'exécution d'une tâche sur le CPU en fonction du nombre d'opérations que ce dernier traite par seconde.

Les puissance Pint et Pext dissipées lors d'un transfert vers ou depuis respectivement

la mémoire interne et la mémoire externe du CPU sont aussi des paramètres architec- turaux du CPU.

L'architecture recongurable dynamiquement est caractérisée par :

 le nombre d'unités fonctionnelles NU Ftotal composant l'ARD. L'unité fonctionnelle

peut être un CLB dans le cas d'une ARD grain n ou un CFB dans le cas d'une ARD gros grain (se référer au paragraphe A.2) ;

 η, le volume de reconguration en octet d'un contexte de conguration à charger depuis les ressources mémoire ;

 la fréquence Fconf igpour laquelle le composant recongurable se congure totalement

(donnée généralement par le constructeur). La latence de reconguration du chemin de données Ti

conf ARD dépend de nature de la reconguration dynamique : totale ou

partielle. Elle est déduite par :

Tconf ARDi = NU F NU Ftotal.Fconf ig

(2-2) NU F est le nombre d'unités fonctionnelles qu'il faut congurer pour un contexte de

reconguration donné.

Dans le cas où une tâche à implémenter sur l'ARD possède plusieurs contextes de conguration, la latence de reconguration totale est la somme des latences relatives à la reconguration de l'ARD avec chacun des contextes.

Les mémoires (caches, SRAM . . .) sont caractérisées par lmem la latence d'un accès à

la mémoire. Il s'agit de la latence s'écoulant entre l'envoi de la commande de lecture et l'arrivée eective de la donnée (paquet).

Un autre paramètre caractérisant les mémoires est εmem la largeur en octet du mot

mémorisable par un accès à la mémoire.

Les interconnexions sont caractérisés par leurs latences de communication d'un paquet sur l'interconnexion (Linterconnect) ainsi que du nombre d'octets par paquet supportés

A.2-3 Paramètres algorithmiques

Nous dénissons les paramètres algorithmiques comme étant les paramètres dont les valeurs évoluent en fonction du code exécuté sur l'architecture hybride. Un prolage de l'application, nous indiquera les paramètres algorithmiques suivants :

 pour un contexte de conguration d'une tâche τi, le taux de chevauchement χi entre

le chargement du contexte, dont la latence est dénie par Ti

CHconf, et le calcul du

contexte précédent.

Pour une tâche à laquelle correspond plus d'un contexte de conguration, χi est la

moyenne des taux de chevauchements relatifs aux diérents contextes ;

 le taux d'accès en mémoire externe ou taux de défaut de cache (s'il existe)µi pour

la tâche τi. Ce paramètre est algorithmique puisque sa valeur dépend du nombre de

fois où des données externes sont accédées durant l'exécution du code. La valeur du taux d'accès en mémoire externe sera donc fonction de l'exécution du code. Cette valeur est calculée en utilisant la formule suivante :

µi = N bAccesExt N bAccesT otal

(2-3) avec NbAccesExt le nombre total d'accès en mémoire externe et NbAccesT otal le nombre

total d'accès au système mémoire ;

 le taux d'accès en DMA αi pour la tâche τ

i qui est lié au paramètre µi. La valeur

de ce paramètre est calculée en utilisant la formule suivante : αi = N bAccesDM A

N bAccesExt

= N bAccesDM A µi.N b

AccesT otal (2-4)

N bAccesDM A est le nombre d'accès via le DMA ;

 le taux de recouvrement δi entre le temps où la tâche τ

i est en train d'être exécutée

et Ti

com le temps de chargement des données de celle ci. La portion de latence perdue

dans la communication des données pour une tâche τi est égale à (1 − δi)Tcomi ;

 chI/O la charge du bus d'E/S dépend de la façon avec laquelle les données transitent

entre le système mémoire, le CPU et l'ARD.