Changes between Version 2 and Version 3 of SoclibCourseTp5


Ignore:
Timestamp:
Oct 13, 2009, 9:06:53 PM (15 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SoclibCourseTp5

    v2 v3  
    11{{{
    22#!html
    3 <h1>TP5 : Modélisation TLM-DT</h1>
     3<h1>TP5 : Architectures multi-processeurs </h1>
    44}}}
    55[[PageOutline]]
    66
    77= 1 Objectif =
     8
     9= 2 Architectures Clusterisées =
     10
     11Nous appellerons ''architecture clusterisée'' une architecture dans laquelle on utilise un double système d'index
     12pour repérer les initiateurs et les cibles VCI. Un cluster est un sous-système regroupant généralement plusieurs
     13initiateurs et plusieurs cibles VCI, communiquant entre eux par un interconnect local (bus ou crossbar).
     14Chaque composant est donc repèré par un couple `(cluster_index, local_index)`.
     15
     16L'espace d'adressage reste partagé par tous les composants du système (quel que soit leur cluster), et n'importe
     17quel initiateur peut directement adresser n'importe quelle cible. Si l'initiateur et la cible n'appartiennent pas au même
     18cluster, les paquets VCI (commande et réponse) sont acheminés grace à un interconnect global (généralement un
     19micro-réseau intégré ou NoC).
     20
     21[[Image(soclib_tp4_multi.png)]]
     22
     23Ce regroupement en clusters répond généralement à deux objectifs:
     24 * D'un point de vue architecture, regrouper dans un même cluster les composants qui communiquent beaucoup entre eux permet de réduire la latence des communications, et de minimiser la consommation. Ce découpage permet également de distribuer la mémoire embarquée, et d'éviter le goulot d'étranglement que constituerait un unique banc mémoire sur la puce (même si l'accès à la mémoire externe reste un goulot d'étranglement).
     25 * D'un point de vue électrique, le découpage en clusters permet de résoudre en partie les problèmes d'horlogerie, puisque chaque cluster peut être implanté dans un domaine d'horloge séparé (approche GALS : Globally Asynchronous / Locally Synchronous). Le franchissement des frontières d'horlogre est alors la responsabilité du micro-réseau assurant les communications inter-clusters.
     26
     27Pour faciliter le décodage des adresses, on décompose les bits de poids fort de l'adresse VCI en deux champs GADR et LADR, de telle sorte que le décodage du champs GADR définisse complêtement le numéro du cluster cible.
     28Le décodage du champs LADR permet lui de déterminer l'index local de la cible dans un cluster.
     29Le nombre de bits des champs GADR et LADR dépend évidemment du système.
     30|| GADR || LADR ||  OFFSET  ||
     31Cette organisation hiérarchique à deux niveaux impose évidemment que les valeurs des champs GADR des segments associés aux cibles d'un même cluster soient égales entre elles (ou appartiennent à un même ensemble de valeurs caractéristiques de ce cluster)
     32