« Fonctionnement d'un ordinateur/Les mémoires cache » : différence entre les versions

m
: <math> A + B + \overline{K} = - 1 </math>
 
Il suffit d'utiliser un additionneur ''carry-save'' pour faire l'addition des trois termes, faire l'addition de la somme et des retenues et ajouter un comparateur avec -1. Or, -1 est codé avec un nombre dont tous les bits sont à 1 en complément à un/deux. VérifierMais quele -1 en sortie de l'additionadditionneur donne''carry-save'' bienest -1représenté demandeavec doncdeux nombres : une simplesomme porteet ETdes àretenues. plusieursLe comparateur est donc plus compliqué qu'un simple comparateur avec une sortiesconstante.
 
[[File:Sum + retenue add.png|centre|vignette|upright=2|Sum + retenue add]]
 
L'additionneur pour l'addition adresse + décalage est remplacé par un additionneur carry-save, d'oùce desqui performanceséconomise améliorées.de Lecircuits tempset totalaméliore pourles effectuer un accès au cache, calcul d'adresse compris, est donc réduitperformances.
 
[[File:Final circuit of sum addressed cache.png|centre|vignette|upright=2|Cache adressé par somme.]]
 
En prenant en compte que la constante K est justement une constante, certaines entrées de l'additionneur carry-save sont toujours à 0 ou à 1, ce qui permet quelques simplifications à grand coup d’algèbre de Boole. Chaque additionneur complet qui compose l’additionneur carry-save est remplacée par des demi-additionneurs (ou par un circuit similaire). Autant dire que l'on gagne tout de même un petit peu en rapidité, en supprimant une ouchecouche de portes logiques. Le circuit de décodage économise aussi des portes logiques, ce qui est appréciable.
 
<noinclude>
39 492

modifications