Version 2 (modified by 5 years ago) (diff) | ,
---|
QUESTIONS sur le TP5
Q1) Le protocol PIBUS est-il représentatif des protocoles des bus utilisés dans les machines commerciales, et suffit-il à une bonne compréhension du fonctionnement de ces bus?
Le protocole PIBUS est suffisamment simple pour qu'on puisse construire facilement les machines à états qui réalisent ce protocole. Maistoutes les caractéristiques des bus utilisés dans les machines multi-coeurs à espace d'adressage partagés, telles que le comportement synchrone, la négociation entre les maîtres pour l'accès au bus, les transactions en deux temps (commande/réponse), la possibilité de faire des rafales, et le mécanisme de SNOOP pour la cohérence des caches. Et par dessus tout, le principe de base du bus qui est de ne supporter qu'une seule transaction à la fois, ce qui impose une bande passante bornée.
Q2) Ne peut-on résoudre le problème de bande passante du bus en augmentant la largeur du bus (64 bits ou même 128 bits au lieu de 32 bits pour le champs DATA ?
Cette technique est évidemment utilisée dans les bus modernes, mais elle permet seulement de gagner un facteur 2 ou 4, et de déplacer le seul de saturation vers 8 ou 16 coeurs, mais elle ne résout pas le problème fondamental d'avoir une seule transaction à la fois.
Q3) Ne peut-on résoudre le problème de bande passante bus en augmentant la fréquence de fonctionnement du bus ?
La fréquence maximale de fonctionnement d'un bus est inversement proportionnelle à la capacité (électronique) des fils reliant les différents composants attachés au bus. Par conséquent cette fréquence maximale diminue lorsque le nombre de coeurs partageant le bus augmente. C'est la raison pour laquelle, dans les machines multi-coeurs actuelles, la fréquence du bus est généralement inférieure à la fréquence interne de chaque coeur. Cela va plutôt dans le sens de réduire la bande passante du bus ...
Q4) Comment le remplacement du bus par un micro-réseau peut-il résoudre le problème de bande passante, alors que la traversée des routeurs présents dans le micro-réseau va augmenter la durée d'une transaction commande/réponse ?
Il ne faut pas confondre bande passante et la latence. La bande passante est l'inverse d'une durée (c'est un nombre d'octets par cycle). La latence est une durée (nombre de cycles pour effectuer une transaction commande/réponse). Le principe du micro-réseau est de permettre plusieurs transactions simultanées pour fournir une bande passante qui s'adapte au nombre de coeurs, en augmentant le nombre de routeurs proportionnellement au nombre de coeurs. Le prix à payer pour cette bande passante illimitée est effectivement une augmentation de la latence puisque la commande doit traverser plusieurs routeurs à l'aller, et la réponse doit traverser plusieurs routeurs au retour.