« Fonctionnement d'un ordinateur/Les bus et liaisons point à point (généralités) » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 204 :
===Les méthodes d'arbitrage (algorithmes)===
 
Il existe plusieurs méthodes d'arbitrages, qui peuvent se classer en différents types, selon leur fonctionnement. Par exemple, certains protocoles permettent de libérer le bus de force pour laisser la place à un autre composant : on parle alors de '''''bus mastering'''''. Sur certains bus, certains composants sont prioritaires, et les circuits chargés de l'arbitrage libèrent le bus de force si un composant plus prioritaire veut utiliser le bus. Bref, les méthodes d'arbitrage sont nombreuses.
 
Pour donner un exemple d'algorithme d'arbitrage, nous allons voir l''''arbitrage par multiplexage temporel'''. Celui-ci peut se résumer en une phrase : chacun son tour ! Chaque composant a accès au bus à tour de rôle, durant un temps fixe. Cette méthode fort simple convient très bien si les différents composants ont des besoins approximativement équilibrés. Mais elle est mal adaptée quand certains composants effectuent beaucoup de transactions sur le bus et d’autres très peu. Les composants gourmands manqueront de débit, alors que les autres monopoliseront le bus pour ne presque rien en faire. Une solution à ce problème est de permettre à un composant peut libérer le bus prématurément, s'il n'utilise pas totalement le temps qui lui est attribué. Ce faisant, les composants qui n'utilisent pas beaucoup le bus passeront leur tour, laissant la place aux composants plus gourmands.
Ligne 212 :
* soit chaque composant peut vérifier à tout moment si le bus est libre ou non (aucun composant n'écrit dessus) ;
* soit on rajoute un bit qui indique si le bus est libre ou occupé : le bit busy.
 
Certains protocoles permettent de libérer le bus de force pour laisser la place à un autre composant : on parle alors de '''''bus mastering'''''. Sur certains bus, certains composants sont prioritaires, et les circuits chargés de l'arbitrage libèrent le bus de force si un composant plus prioritaire veut utiliser le bus. Bref, les méthodes d'arbitrage sont nombreuses.
 
===Arbitrage centralisé ou décentralisé===