4.3 Réseaux sur puce reconfigurables
4.3.2 Architecture CuNoC
4.3.2.7 Résultats de simulation
Afin de démontrer la validation fonctionnelle d’un réseau CuNoC, plusieurs simulations dans des différents conditions ont été réalisées. Nous considérons un réseau CuNoC de
di-mension 4×4 pour plusieurs dispositions de modules de calcul. Le premier cas de simulation,
considère 16 modules de calcul statiques connectés dans ce réseau. Chaque module de calcul communique avec un autre module du réseau à travers l’envoi et la réception simultanée et mu-tuelle de paquets de données. Dans un deuxième cas de simulation, l’insertion d’un module de
calcul dynamique dans le réseau 4×4 reliant les 16 modules de calcul statiques est simulée.
La figure 4.27a illustre la topologie du CuNoC utilisée pour le premier cas de simulation.
Le réseau est homogène et composé uniquement de routeurs CU. Dans cet exemple, tous les modules de calcul statiques sont disposés en périphérie du réseau considéré. Un extrait des
résultats de simulation de ce premier cas de simulation est présenté dans la figure 4.28. Ces
résultats de simulation montrent que tous les modules de calcul transmettent simultanément et reçoivent des paquets de données après une durée de latence correspondant aux temps de transfert dans le réseau. Le temps de latence pour chaque paquet est différent. En effet, certains paquets sont retardés plus que des autres à cause de leur ordre de passage dans les CU du réseau selon la politique d’arbitrage adoptée par le réseau. Dans les cas de condition de transfert chargé du réseau, les paquets envoyés par des modules PE n’arrivent pas à destination dans l’ordre d’envoi. Cet inconvénient peut être réduit, voire éviter, si les valeurs de taux d’injections de paquets dans le réseau par des modules PE ne sont pas élevées.
Le deuxième cas de simulation présente l’insertion dynamique d’un module de calcul dans le réseau identique dans le premier cas de simulation. La structure des routeurs Unités de
com-FIG. 4.27 – Cas de simulation : a) Communication entre 16 modules via un CuNoC 4×4 b)
Insertion d’un module de calcul dans un réseau CuNoC de dimension 4×4 reliant 16 modules
de calcul.
FIG. 4.28 – Le premier cas de simulation : communication entre 16 modules de calcul via un
réseau 4×4.
munication utilisée pour ce cas de simulation et la disposition des modules de calcul sont
pré-sentées dans la figure4.27b. L’extrait des résultats de simulation pour ce cas de simulation est
illustré dans la figure4.29. Premièrement, les communications entre ces 16 modules de calcul
4.3. Réseaux sur puce reconfigurables
FIG. 4.29 – Le deuxième cas de simulation : l’insertion d’un module de calcul dans le réseau
4×4 reliant 16 autres modules de calcul.
d’un module de calcul dynamique se produit. Cette demande est illustrée dans la figure4.29à
travers un signal mod_ins, positionné à ’1’. Le routeur CU qui sera remplacé par le module de
calcul (CU10dans le cas de la figure 4.27b) change le statut en passant d’un statut « CU » en
statut « module » et vide son buffer interne. Le vidage du buffer prend plusieurs cycles
d’hor-loge comme illustré dans la figure 4.29. Après avoir changé son statut en « module », le CU
de substitution devient indisponible pour participer au routage de paquets provenant de ses CU
voisins. Ceci est illustré dans la figure4.29 par l’absence de paquets dans les ports d’entrées
/ sorties du routeur de substitutionCU10. Ainsi, tous les paquets envoyés par des modules de
calcul et passant par cette zone du réseau correspondant à la zone de localisation du routeur
de substitutionCU10, ne sont plus acheminés vers ce routeur par ses CU voisins. En résumé,
les chemins de communication entre les modules de calcul, après vidage du buffer interne de
CU10, ne considèrent plus le routeurCU10. Ainsi, des contournements s’effectuent autour de ce
routeur comme illustré dans la figure4.30b.
FIG. 4.30 – a) Illustration de communication entre 4 modules de calcul dans un réseau CuNoC
4×4 utilisé pour la communication de 16 modules de calcul avant b) et après l’insertion du
module de calcul.
destinations, avant et après l’insertion du module dynamique de calcul a été réalisée. Ces
résul-tats sont présentés dans la figure4.30. Avant l’insertion, les chemins pris par les paquets entre
deux modules de calcul ne sont pas forcément optimaux (chemin tout droit et minimal). Ceci s’explique par le fait que le cheminement des paquets est déterminé au cours du fonctionnement du réseau et en fonction des conditions de trafic dans le réseau. Nous observons
particulière-ment les chemins de communication entre les modules de calcul contenant le routeurCU10, qui
sera ultérieurement désigné comme routeur de substitution par le contrôleur de la zone reconfi-gurable. Plus précisément, dans les résultats de simulation, les cas de communication entre les
modules de calculA3 etC3, et entreB2 etD2 ont été considérés. Avant l’insertion du module
dynamique de calcul, certains paquets envoyés par ces modules de calcul transitent à travers le
routeurCU10. Par contre, après l’insertion du module dynamique, plus aucune transmission à
travers ce routeur s’effectue. Tous les paquets envoyés par ces modules, choisissent un
chemi-nement de contourchemi-nement de l’unité de communicationCU10. Ceci est illustré dans la figure
4.30b.
Ces résultats de simulation démontrent clairement la propriété principale de placement dy-namique du réseau CuNoC au cours de son fonctionnement. De plus, ces résultats montrent que le placement dynamique des modules de calcul dans un réseau CuNoC n’interrompt pas et ne détériore pas les communications établies entre les modules statiques initialement placés. Cette propriété de placement dynamique dans un réseau CuNoC peut très bien être associée avec la propriété de la reconfiguration dynamique partielle des circuits FPGA. Un réseau
Cu-NoC implanté dans une zone reconfigurable d’un circuit FPGA, maintient les communications
4.3. Réseaux sur puce reconfigurables
reconfiguration dynamique partielle [MG00].