Optimisation du pipeline sur les processeurs monocomposants
Institution:
Rennes 1Disciplines:
Directors:
Abstract EN:
Pas de résumé disponible.
Abstract FR:
Les performances des processeurs risc modernes sont fortement dependantes des performances du pipeline instruction et de la hierarchie memoire. Dans le cadre de cette these, ces facteurs limitatifs des performances (latence memoire, delais de chargement et de branchement) ont ete analyses et des mecanismes materiels ont ete proposes pour en limiter l'impact. En raison de l'ecart croissant entre le temps de cycle du processeur et celui de la memoire, le cout d'un defaut de cache interne devient prohibitif, et il est donc important de minimiser le nombre de defauts de cache. Augmenter l'associativite des caches permet de reduire le nombre de defauts de cache mais accroit le temps de cycle du cache, qui determine generalement le temps de cycle du processeur. Deux mecanismes ont ete etudies pour accroitre l'associativite sans affecter le temps de cycle du processeur: les caches semi-unifies qui utilisent les caches separes instructions et donnees comme les deux bancs d'un cache associatif par ensemble de deux blocs et les caches pipelines qui permettent d'utiliser un temps d'acces au cache superieur au temps de cycle du processeur, en decomposant l'acces au cache en plusieurs cycles. Ces dernieres annees, l'usage de caches pipelines a contribue a augmenter la profondeur des pipelines instruction. En consequence les couts des aleas de donnees et de controle ont augmente significativement. Aussi, pour reduire l'influence des instructions de branchement (aleas de controle), il a ete propose un mecanisme ou deux instructions consecutives sont chargees et decodees simultanement, ce qui permet d'anticiper le chargement de l'instruction cible de branchement. Ensuite, pour reduire l'influence des aleas de donnees, il a ete montre que le fait de rajouter un etage du pipeline dedie au calcul d'adresse avant l'etage de chargement/execution, permettait de limiter le cout des delais de chargement, bien que le cout des delais de branchement en soit accru. Chacun de ces mecanismes, utilise separement, permet d'augmenter significativement les performances du processeur, comme l'ont montre les simulations realisees sur un ensemble de programmes d'evaluation. Mais des performances encore superieures peuvent etre obtenues lorsque ces mecanismes sont utilises de maniere combinee, ce qui demontre egalement leur complementarite