Brevet FR2741464A1 — publié le 19970523

DISPOSITIF ET PROCEDE DE CORRECTION D'ANOMALIE POUR UN TABLEAU D'ADRESSE D'UNE MEMOIRE CACHE D'ENREGISTREMENT Contexte de l'invention La présente invention concerne un dispositif de correction d'anomalie, et plus particulièrement un dispositif de correction d'anomalie pour corriger des données lues depuis un tableau d'adresse d'une mémoire cache d'enregistrement. Dans une mémoire cache d'enregistrement (appelée aussi une mémoire cache de réécriture n ou de nouvelle copie"), une information est écrite dans un bloc seulement de la mémoire cache. Un bloc modifié de la mémoire cache est écrit dans une mémoire principale (ceci est appelé une "réécriture") seulement lorsqu'il est remplacé lors d'une différence de la mémoire cache (ceci est appelé un "remplacement"). Lors du remplacement, une anomalie des données dans le tableau d'adresse peut provoquer une mauvaise estimation quant à l'écriture du bloc dans une mémoire principale. Si une estimation incorrecte indique que le bloc de la mémoire cache n'est pas modifié quand bien même le bloc aurait été modifié, alors l'information modifiée irremplaçable est perdue. Pour éviter un tel problème, la fiabilité du tableau d'adresse doit être améliorée. Du point de vue de la fiabilité, une anomalie peut être corrigée avec un code de correction d'erreur avant la détermination d'une "coïncidence"/"différence" de la mémoire cache. Cependant, dans une telle technique, le processus de correction d'anomalie est un chemin critique dans la détermination d'un cycle machine, de telle sorte que la vitesse de traitement diminue. Dans la mémoire cache d'enregistrement classique décrite ci-dessus, il est difficile de déterminer une coïncidence/différence de la mémoire cache en un cycle machine lorsqu'une anomalie est détectée lors de la lecture de données depuis le tableau d'adresse. Par conséquent, le traitement du système tout entier est arrêté par le contrôle du système lorsqu'une telle anomalie est détectée. Cette approche détériore inévitablement la fiabilité du système. D'autre part, si une indexation de la mémoire cache est traitée après la correction d'une anomalie, un cycle machine est allongé par une augmentation du temps de retard, de telle sorte que la performance de traitement se détériore. Résumé de l'invention Etant donné le problème précédent du système classique, un objet de la présente invention est d'augmenter la fiabilité du système ainsi que la performance du système dans une mémoire cache d'enregistrement. Dans un dispositif de correction d'anomalie pour un tableau d'adresse d'une mémoire cache selon un premier aspect de la présente invention, le tableau d'adresse a au moins une entrée. Chaque entrée comporte un champ d'étiquette d'adresse, un champ de validité et un champ de propreté. Un circuit d'estimation de coïncidence de cache, connecté au tableau d'adresse, estime si une coïncidence de cache s'est produite. Un circuit de correction d'anomalie, connecté au tableau d'adresse en parallèle avec l'estimation de coïncidence de cache, détecte et corrige une anomalie. Un contrôleur de remplacement, connecté à la fois au circuit d'estimation de coïncidence de cache et au circuit de correction d'anomalie, commande le remplacement d'une entrée dans le tableau d'adresse. Un tampon de remplacement, connecté au circuit de correction d'anomalie et au contrôleur de remplacement, mémorise au moins une entrée qui doit être remplacée. Avec la structure unique et peu évidente de la présente invention, la fiabilité du système ainsi que la performance du système dans une mémoire cache d'enregistrement sont augmentées. Brève description des dessins Les objets, caractéristiques et avantages susmentionnés ainsi que d'autres de cette invention ressortiront mieux à la lecture de la description détaillée suivante de l'invention faite en référence aux dessins annexés dans lesquels La fig. 1 est un schéma fonctionnel montrant la configuration d'une mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; La fig. 2 est un schéma fonctionnel montrant la configuration d'un tampon de remplacement 300 dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; La fig. 3 est un tableau montrant la fonction d'un générateur de validité 100 dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; La fig. 4 est un tableau montrant la fonction d'un contrôleur de remplacement 280 dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; La fig. 5 est un organigramme montrant une opération de correction d'anomalie dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; La fig. 6 est un organigramme montrant une opération d'indexation dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; La fig. 7 est un chronogramme montrant l'opération normale dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention; et La fig. 8 est un chronogramme montrant l'opération de correction d'anomalie dans la mémoire cache d'enregistrement selon un mode de réalisation de la présente invention. DescriDtion détaillée des modes de réalisation préférés Un dispositif de correction d'anomalie pour un tableau d'adresse d'une mémoire cache d'enregistrement conformément à un mode de réalisation préféré de la présente invention va être décrit en détail en référence aux dessins annexés. En se reportant à la fig. 1, une mémoire cache d'enregistrement comporte un tableau d'adresse 200 et un tableau de données (non indiqué), chacun comportant plusieurs entrées. Dans chaque entrée, le tableau d'adresse 200 a un champ 211 d'étiquette d'adresse (TAG), un champ 212 de validité (V) et un champ 213 de propreté (C). Le champ 211 d'étiquette d'adresse est utilisé pour gérer une adresse de données mémorisées dans la mémoire cache. Le champ 212 de validité représente si l'entrée est valide (p. ex., V = 1 si elle est valide). Le champ 213 de propreté représente si le contenu de l'entrée coïncide avec un contenu de la mémoire principale (p. ex., C = 1 si elle coïncide ("propre"), C = 0 si elle ne coïncide pas ("sale")). La mémoire cache d'enregistrement a une structure en pipeline. Dans un premier étage se trouvent un registre d'adresse 101 et un registre de validité 102. Dans un deuxième étage se trouvent un registre d'adresse 201 et un registre de validité 202. Dans un troisième étage se trouvent un registre d'adresse 301 et un registre de validité 302. Dans le premier étage se trouve un registre d'attente (P) 103 pour indiquer si une adresse mémorisée dans le registre d'adresse 101 est en attente (p. ex., P = 1 si elle est en attente). Un générateur de validité 100 dans le premier étage commande le registre de validité 202 en se basant sur le registre de validité 102 et le registre d'attente 103. Spécifiquement, le générateur de validité 100 effectue la commande de telle sorte que, pendant que le registre de validité 102 représente "valide", le traitement d'une demande subséquente provenant du processeur n'est pas accepté. Si aucune anomalie n'est détectée dans la lecture de données à partir du tableau d'adresse 200, le registre de validité 102 est remis à zéro pour être "invalide", de manière à lui permettre d'accepter le traitement de la demande subséquente. Par exemple, une anomalie peut être détectée par le contrôle des bits de parité (non indiqués). Dans le deuxième étage, un circuit 260 d'estimation de coïncidence de cache estime si une coïncidence de cache s'est produite. Simultanément, un circuit 270 de correction d'anomalie détecte s'il existe une anomalie dans le tableau d'adresse et, si une anomalie se produit, corrige l'anomalie. Un contrôleur de remplacement 280 commande un remplacement de l'entrée du tableau d'adresse 200. Le contrôleur de remplacement 280 reçoit une information indiquant si une différence de cache s'est produite, en provenance du circuit 260 d'estimation de coïncidence de cache. Le contrôleur de remplacement 280 reçoit aussi une information indiquant si une anomalie est détectée, en provenance du circuit 270 de correction d'anomalie. Un contrôleur de répétition 290 commande la répétition d'un accès au tableau d'adresse 200. Le contrôleur de répétition 290 reçoit une information indiquant si une anomalie est détectée, en provenance du circuit 270 de correction d'anomalie. Le contrôleur de répétition 290 remet à zéro le registre de validité 102 pour qu'il soit "invalide" lorsqu'aucune anomalie n'est détectée. Le contrôleur de répétition 290 remet à zéro le registre de validité 302 pour qu'il soit "invalide" et met le registre d'attente 103 en "attente" lorsqu'une anomalie est détectée. Un registre de purge 204 est utilisé pour purger (invalider) l'entrée qui doit être remplacée dans le tableau d'adresse 200. Une caractéristique de la présente invention est qu'une sortie du circuit 260 d'estimation de coïncidence de cache n'est pas entrée dans le circuit 270 de correction d'anomalie (p. ex., les circuits 260 et 270 ne sont pas en série). Donc, le circuit 260 d'estimation de coïncidence de cache et le circuit 270 de correction d'anomalie travaillent simultanément (en parallèle). Dans le troisième étage se trouve un tampon de remplacement 300 pour tamponner des entrées remplacées qui doivent être mémorisées dans la mémoire principale à partir du registre d'adresse 301. Le tampon de remplacement 300 a au moins une entrée. Chaque entrée a un champ 311 d'adresse, un champ 312 de validité (V) et un champ 313 de réécriture (WB). Un drapeau de réécriture dans le champ 313 de réécriture représente si l'entrée doit être réécrite dans la mémoire principale (p. ex., WB = 1 lorsque la réécriture est nécessaire). Après la sortie du tampon de remplacement 300, une adresse mémorisée dans le champ 311 d'adresse est définie dans le registre d'adresse 201, un bit de validité mémorisé dans le champ 312 de validité est défini dans le registre de purge 204 et un drapeau de réécriture mémorisé dans le champ 313 de réécriture est défini dans un registre de réécriture 203 dans le deuxième étage pour une invalidation. Après l'invalidation, une adresse mémorisée dans le registre d'adresse 201 est définie dans le registre d'adresse 301, et un drapeau de réécriture mémorisé dans le registre de réécriture 203 est défini dans un registre de réécriture 303 dans le troisième étage. Si le registre de réécriture 303 représente "réécriture nécessaire" et le registre de validité 302 représente "valide", alors le registre d'adresse 301 est utilisé pour mémoriser les données correspondantes, mémorisées dans le tableau de données, dans la mémoire principale. En se reportant à la fig. 2, un exemple du tampon de remplacement 300 a quatre entrées pour le champ 311 d'adresse, le champ 312 de validité et le champ 313 de réécriture. Le tampon de remplacement 300 a de préférence une structure premier entré-premier sorti (FIFO). Les champs d'adresse 311 sont définis par la partie d'étiquette d'adresse (partie supérieure) via une ligne de signal 221 en provenance du circuit 270 de correction d'anomalie et la partie restante (partie inférieure) via la ligne de signal 222 en provenance du registre d'adresse 201. Les champs 313 de réécriture sont définis via une ligne de signal 283 provenant du contrôleur de remplacement 280. Une entrée qui doit être mémorisée est déterminée par un mécanisme de commande d'écriture comportant une unité incrémentielle 331, un registre d'adresse d'écriture 332, un décodeur 333 et des portes ET 334. L'adresse d'écriture mémorisée dans le registre d'adresse d'écriture 332 est incrémentée par l'unité incrémentielle 331 lors d'une impulsion d'horloge donnée par une ligne de signal 281. Le décodeur 333 décode l'adresse d'écriture provenant du registre d'adresse d'écriture 332. Un des champs 312 de validité, choisi par les portes ET 334, est défini comme "valide". En même temps, le champ 311 d'adresse dans la même entrée mémorise une adresse sur les lignes de signal 221 et 222. De façon similaire, le champ 313 de réécriture dans la même entrée mémorise un drapeau de réécriture sur la ligne de signal 283. Une entrée qui doit être lue est déterminée par un mécanisme de commande de lecture comportant une unité incrémentielle 341, un registre d'adresse de lecture dans le registre d'adresse de lecture 342, un décodeur 343 et des portes ET 344. L'adresse de lecture 342 est incrémentée par l'unité incrémentielle 341 lors d'une impulsion d'horloge donnée par une ligne de signal 282. Le décodeur 343 décode l'adresse de lecture dans le registre 342. Un des champs 312 de validité, choisi par les portes ET 344, est remis à zéro pour être "invalide". Des sélecteurs 381, 382 et 383 sélectionnent les adresses dans les champs 311 d'adresse, les bits de validité dans les champs 312 de validité et les drapeaux de réécriture dans les champs 313 de réécriture, respectivement, en se basant sur l'adresse de lecture dans le registre d'adresse 342. En se reportant à la fig. 3, le générateur de validité 100 commande le registre de validité 202 pour qu'il soit "invalide" une impulsion d'horloge après que le registre de validité 102 représente invalide". De plus, une impulsion d'horloge après que le registre de validité 102 représente "valide" et le registre d'attente 103 représente "attente", le registre de validité 202 est commandé pour être "invalide". Si le registre de validité 102 représente "valide" et le registre d'attente 103 représente "pas en attente", alors le registre de validité 202 représente "valide" à l'impulsion d'horloge suivante et "invalide" à l'impulsion d'horloge subséquente suivante de telle sorte que le tableau d'adresse 200 est accédé pendant une seule impulsion d'horloge. En se reportant à la fig. 4, le contrôleur de remplacement 280 commande l'opération d'écriture dans le tampon de remplacement 300. Le tampon de remplacement 300 mémorise une entrée qui doit être remplacée lorsqu'une anomalie ne s'est pas produite, une différence de cache s'est produite et un champ 212 de validité dans l'entrée qui doit être remplacée représente "valide". Le tampon de remplacement 300 mémorise aussi une entrée qui doit être remplacée lorsqu'une anomalie s'est produite et un champ 212 de validité dans l'entrée anormale représente "valide". Une caractéristique de la présente invention est qu'une entrée anormale est mémorisée dans le tampon de remplacement 300 même si une coïncidence de cache s'est produite. Ci-dessous et en se reportant aux fig. 1, 5, 6, 7 et 8, l'opération du dispositif de correction d'anomalie conformément au mode de réalisation susmentionné de la présente invention va être décrite. En se reportant aux fig. 1 et 5, lorsqu'un processeur délivre une demande pour accéder à la mémoire principale dans l'étape S501, une adresse de la demande est mémorisée dans le registre d'adresse 101. A l'impulsion d'horloge suivante, l'adresse de la demande est mémorisée dans le registre d'adresse 201, et le tableau d'adresse 200 est indexé par l'adresse mémorisée dans le registre d'adresse 201 dans l'étape S502. Lors de l'indexation, si une anomalie est détectée dans l'étape S503, alors les opérations suivantes sont exécutées. Comme mentionné ci-dessus, une anomalie est de préférence détectée par le contrôle des bits de parité (non indiqués). Après la correction de l'anomalie dans l'étape S504, si l'entrée anormale est "valide" (étape S505), alors le registre 301 est remis à zéro pour être "invalide" et le registre d'attente 103 est défini pour être "en attente" dans l'étape S506. Dans ce cas, l'adresse reste dans le registre d'adresse 101 et le registre de validité 102 reste "valide". L'étiquette d'adresse corrigée dans le circuit 270 de correction d'anomalie et la partie d'adresse restante mémorisée dans le registre d'adresse 201 sont mémorisées dans le tampon de remplacement 300 (étape S507). Le champ 313 de réécriture est défini sur "réécriture nécessaire" lorsque le champ 213 de propreté de l'entrée anormale représente "pas propre" (p. ex., "sale"), et est défini sur "réécriture non nécessaire" lorsque le champ 213 de propreté de l'entrée anormale représente "propre". Cette définition du champ de réécriture est une caractéristique de la présente invention. Le registre d'adresse 201, le registre de purge 204 et le registre de réécriture 203 sont définis par les sorties 391, 392 et 393 du tampon de remplacement 300, respectivement. Donc, le tableau d'adresse 200 est invalidé en utilisant l'adresse mémorisée dans le registre d'adresse 201 dans l'étape S508. A une impulsion d'horloge suivante, si le registre de réécriture 303 représente "réécriture nécessaire" (étape S509), alors les données sont mémorisées dans la mémoire principale en utilisant l'adresse mémorisée dans le registre d'adresse 301 (étape S510). Après le processus de répétition, le registre d'attente 103 est remis sur "pas en attente" (S511). Alors, puisque l'entrée anormale est invalidée, l'indexation normale de la mémoire cache est traitée (étapes S502-S520). Si une anomalie ne s'est pas produite (étape S503), alors le registre de validité 102 est remis à zéro pour être "invalide" et l'indexation normale de la mémoire cache est traitée dans l'étape 5520. De même, quand bien même une anomalie se serait produite, si une entrée anormale est invalide (étape S505), alors l'anomalie est supposée ne pas s'être produite. Cette supposition est une des caractéristiques de la présente invention. En se reportant à la fig. 6, si une coïncidence de cache s'est produite (étape S521), alors le tableau de données est accédé (étape S527). Si une entrée qui doit être remplacée est invalide (étape S522), alors les données correspondantes sont chargées depuis la mémoire principale (étape S526), et le tableau de données est accédé (étape S527). Si l'entrée qui doit être remplacée est valide (étape S522), alors l'entrée est invalidée (étape 5523). Dans ce cas, si l'entrée est "sale" (étape S524), les données dans l'entrée sont réécrites dans la mémoire principale (étape S525). Par la suite, les données correspondantes sont chargées depuis la mémoire principale (étape S526) et le tableau de données est accédé (étape S527). En se reportant à la fig. 7, la chronologie de l'opération est indiquée lorsqu'aucune anomalie n'existe (p. ex., une opération normale). Au temps T1, une "nouvelle" adresse est mémorisée dans le registre d'adresse 101, et le registre de validité 102 est activé. Au temps T2, la "nouvelle" adresse est mémorisée dans le registre d'adresse 201, et le registre de validité 202 est activé. Le tableau d'adresse 200 est indexé. Aucune anomalie n'est détectée dans le circuit 270 de correction d'anomalie, et une différence de cache est détectée dans le circuit 260 d'estimation de coïncidence de cache. Le champ 211 d'étiquette d'adresse indique une "ancienne" adresse, et le champ 213 de propreté indique "sale". Au temps T3, les registres de validité 102 et 202 sont remis à zéro pour être "invalides". "L' ancienne" adresse est mémorisée dans le tampon de remplacement 300. Ensuite, le champ 313 de réécriture est activé. "L'ancienne" adresse est sortie du tampon de remplacement 300 et est mémorisée dans le registre d'adresse 201 au temps T4. De plus, le registre de validité 202 est activé. Donc, le tableau d'adresse est invalidé. Au temps T5, "l'ancienne" adresse est mémorisée dans le registre d'adresse 301, et les données correspondantes sont mémorisées dans la mémoire principale en utilisant l'adresse mémorisée dans le registre d'adresse 301 parce que le registre de réécriture 303 reflète une "réécriture nécessaire". En se reportant à la fig. 8, la chronologie de l'opération pour une anomalie est indiquée. Au temps T1, une "nouvelle" adresse est mémorisée dans le registre d'adresse 101, et le registre de validité 102 est activé. Au temps T2, la "nouvelle" adresse est mémorisée dans le registre d'adresse 201, et le registre de validité 202 est activé. Le tableau d'adresse 200 est indexé. Une anomalie est détectée dans le circuit 270 de correction d'anomalie, une différence de cache est détectée dans le circuit 260 d'estimation de coïncidence de cache. Le champ 211 d'étiquette d'adresse indique une "ancienne" adresse et le champ 213 de propreté indique "sale". Au temps T3, le registre de validité 202 est remis à zéro pour être "invalide". Dans ce cas, le registre de validité 102 n'est pas remis à zéro, et le registre d'attente 103 est défini sur "en attente". ancienne" adresse est mémorisée dans le tampon de remplacement 300. Ensuite, le champ 313 de réécriture est activé. "L'ancienne" adresse est sortie du tampon de remplacement 300 et est mémorisée dans le registre d'adresse 201 au temps T5. De plus, le registre de validité 202 est activé. Donc, le tableau d'adresse est invalidé. Au temps T6, "l'ancienne" adresse est mémorisée dans le registre d'adresse 301, et les données correspondantes sont mémorisées dans la mémoire principale en utilisant l'adresse mémorisée dans le registre d'adresse 301 parce que le registre de réécriture 303 représente "réécriture nécessaire". La "nouvelle" adresse est mémorisée dans le registre d'adresse 201 au temps T6. Alors, aucune anomalie n'est détectée dans le circuit 270 de correction d'anomalie. Comme il ressort de la description ci-dessus, selon la présente invention, puisqu'une estimation de coïncidence de cache et une correction d'anomalie sont effectuées simultanément, un cycle machine est réduit dans une mémoire cache d'enregistrement. Donc, la fiabilité du système ainsi que la performance du système augmentent. Bien que l'invention ait été décrite en termes d'un mode de réalisation préféré, les experts en la matière comprendront que l'invention peut être modifiée dans la pratique dans l'esprit et la portée des revendications annexées. REVENDICATIONS 1. Dispositif de correction d'anomalie pour un tableau d'adresse (200) d'une mémoire cache, ledit tableau d'adresse ayant au moins une entrée, chacune desdites au moins une entrée comportant un premier champ, un deuxième champ et un troisième champ, ledit dispositif comprenant - un circuit d'estimation de coïncidence de cache (260), connecté audit tableau d'adresse (200), pour estimer si une coïncidence de la mémoire cache s'est produite; - un circuit de correction d'anomalie (270), connecté audit tableau d'adresse (200) en parallèle avec ledit circuit d'estimation de coïncidence de cache (260), pour détecter une anomalie et corriger l'anomalie; - un contrôleur de remplacement (280), connecté à la fois audit circuit d'estimation de coïncidence de cache (260) et audit circuit de correction d'anomalie (270), pour commander un remplacement d'une entrée dans ledit tableau d'adresse (200); et - un tampon de remplacement (300), connecté audit circuit de correction d'anomalie (270) et audit contrôleur de remplacement (280), pour mémoriser au moins une entrée qui doit être remplacée. 2. Dispositif de correction d'anomalie selon la revendication 1, comprenant en outre - un contrôleur de répétition (290), connecté audit circuit de correction d'anomalie (270), pour commander une répétition d'une demande. 3. Dispositif de correction d'anomalie selon la revendication 2, dans lequel ledit contrôleur de remplacement (280) mémorise une entrée, dans laquelle une anomalie est détectée, dans ledit tampon de remplacement (300) pour une coïncidence de mémoire cache ainsi que pour une différence de mémoire cache. 4. Dispositif de correction d'anomalie selon la revendication 2, dans lequel lesdits premier, deuxième et troisième champs comprennent un champ d'étiquette d'adresse (211), un champ de validité (212) et un champ de propreté (213), respectivement, et dans lequel ledit contrôleur de remplacement (280) détermine qu'une anomalie ne s'est pas produite lorsque le champ de validité (212) de l'entrée, dans laquelle une anomalie est détectée, représente un état invalide. 5. Dispositif de correction d'anomalie selon la revendication 2, dans lequel lesdits premier, deuxième et troisième champs comprennent un champ d'étiquette d'adresse (211), un champ de validité (212) et un champ de propreté (213), respectivement, et dans lequel l'entrée dans ledit tampon de remplacement (300) comporte un champ d'adresse (311), un champ de réécriture (313) et un champ de validité (312), et ledit contrôleur de remplacement (280) mémorise un complément du champ de propreté de l'entrée, dans laquelle une anomalie est détectée, dans le champ de réécriture (313) dudit tampon de remplacement (300) lorsque le champ de validité (212) de l'entrée, dans laquelle une anomalie est détectée, représente un état valide. 6. Système de mémoire cache ayant une structure en pipeline, comprenant - un premier étage pour recevoir une demande provenant d'un processeur; - un deuxième étage pour indexer une adresse dans la demande; - un troisième étage pour accéder à une mémoire principale et tamponner une entrée qui doit être remplacée, dans lequel ledit deuxième étage comporte - un tableau d'adresse (200) ayant au moins une entrée, chacune desdites au moins une entrée comportant un premier champ, un deuxième champ et un troisième champ; - un circuit d'estimation de coïncidence de cache (260), connecté audit tableau d'adresse (200), pour estimer si une coïncidence de mémoire cache s'est produite; - un circuit de correction d'anomalie (270), connecté audit tableau d'adresse (200) en parallèle avec ledit circuit d'estimation de coïncidence de cache (260), pour détecter une anomalie et corriger l'anomalie; et - un contrôleur de remplacement (280), connecté à la fois audit circuit d'estimation de coïncidence de cache (260) et audit circuit de correction d'anomalie (270), pour commander un remplacement d'une entrée dans ledit tableau d'adresse (200), dans lequel ledit troisième étage comporte - un tampon de remplacement (300), connecté audit circuit de correction d'anomalie (270) et audit contrôleur de remplacement (280), pour mémoriser au moins une entrée qui doit être remplacée. 7. Système de mémoire cache selon la revendication 6, ledit deuxième étage comprenant en outre - un contrôleur de répétition (290), connecté audit circuit de correction d'anomalie (270), pour commander une répétition de la demande provenant du processeur. 8. Système de mémoire cache selon la revendication 7, dans lequel ledit premier étage comprend - un premier registre d'adresse (101) pour mémoriser une adresse contenue dans la demande; - un premier registre de validité (102) pour mémoriser un bit de validité indiquant si ledit premier registre d'adresse (101) mémorise une adresse valide; - un registre d'attente (103) pour indiquer si une adresse mémorisée dans ledit premier registre d'adresse (101) est dans un état d'attente; et - un générateur de validité (100), connecté audit premier registre de validité (102) et audit registre d'attente (103), pour générer un bit de validité pour le deuxième étage si ledit premier registre de validité indique un état valide et ledit registre d'attente indique un état non en attente. 9. Système de mémoire cache selon la revendication 8, dans lequel ledit deuxième étage comprend - un deuxième registre d'adresse (201) pour mémoriser l'une parmi une adresse provenant dudit premier registre d'adresse (101) et une adresse provenant dudit tampon de remplacement (300); - un deuxième registre de validité (202) pour mémoriser le bit de validité, généré par ledit générateur de validité (100), indiquant si ledit deuxième registre d'adresse (201) mémorise une adresse valide; - un premier registre de réécriture (203), connecté audit tampon de remplacement (300), pour indiquer si une adresse mémorisée dans ledit deuxième registre d'adresse (201) est destinée à une réécriture; et - un registre de purge (204), connecté audit tampon de remplacement (300), pour indiquer si une adresse mémorisée dans ledit deuxième registre d'adresse (201) est destinée à purger une entrée dans ledit tableau d'adresse (200). 10. Système de mémoire cache selon la revendication 9, dans lequel ledit troisième étage comprend en outre - un troisième registre d'adresse (301) pour mémoriser une adresse provenant dudit deuxième registre d'adresse (201); - un troisième registre de validité (302) pour mémoriser un bit de validité provenant dudit deuxième registre de validité (202); et - un deuxième registre de réécriture (303), connecté audit premier registre de réécriture (203), pour indiquer si une adresse mémorisée dans ledit troisième registre d'adresse (301) est destinée à une réécriture. 11. Système de mémoire cache selon la revendication 10, dans lequel ledit contrôleur de répétition (290) remet ledit premier registre de validité (102) à un état invalide lorsqu'aucune anomalie n'est détectée, et dans lequel ledit contrôleur de répétition (290) remet ledit troisième registre de validité (302) à un état invalide et met ledit registre d'attente (103) à un état d'attente lorsqu'une anomalie est détectée. 12. Système de mémoire cache selon la revendication 6, ledit tampon de remplacement (300) ayant une structure premier entré-premier sorti. 13. Système de mémoire cache selon la revendication 6, dans lequel lesdits premier, deuxième et troisième champs comprennent un champ d'étiquette d'adresse (211), un champ de validité (212) et un champ de propreté (213), respectivement, et dans lequel ledit contrôleur de remplacement (280) commande ledit tampon de remplacement (300) pour mémoriser une entrée qui doit être remplacée soit quand une anomalie ne s'est pas produite, une différence de mémoire cache s'est produite et un champ de validité (212) dans l'entrée qui doit être remplacée représente un état invalide, soit quand une anomalie s'est produite et un champ de validité (212) dans l'entrée anormale représente un état valide. 14. Système de mémoire cache selon la revendication 6, dans lequel ledit contrôleur de remplacement (280) mémorise une entrée, dans laquelle une anomalie est détectée, dans ledit tampon de remplacement (300) pour une coïncidence de mémoire cache ainsi que pour une différence de mémoire cache. 15. Système de mémoire cache selon la revendication 6, dans lequel lesdits premier, deuxième et troisième champs comprennent un champ d'étiquette d'adresse (211), un champ de validité (212) et un champ de propreté (213), respectivement, et dans lequel ledit contrôleur de remplacement (280) détermine qu'une anomalie ne s'est pas produite lorsque le champ de validité (212) de l'entrée, dans laquelle une anomalie est détectée, représente un état invalide. 16. Système de mémoire cache selon la revendication 6, dans lequel lesdits premier, deuxième et troisième champs comprennent un champ d'étiquette d'adresse (211), un champ de validité (212) et un champ de propreté (213), respectivement, et dans lequel l'entrée dans ledit tampon de remplacement (300) comporte un champ d'adresse (311), un champ de réécriture (313) et un champ de validité (312), et ledit contrôleur de remplacement (280) mémorise un complément du champ de propreté (213) de l'entrée, dans laquelle une anomalie est détectée, dans le champ de réécriture (313) dudit tampon de remplacement (300) lorsque le champ de validité (212) de l'entrée, dans laquelle une anomalie est détectée, représente un état valide. 17. Procédé de correction d'anomalie pour un tableau d'adresse d'une mémoire cache, ledit procédé comprenant les étapes consistant à - estimer une coïncidence de mémoire cache dans ledit tableau d'adresse (200); - simultanément à ladite étape d'estimation, détecter si une anomalie existe dans ledit tableau d'adresse (200) et corriger ladite anomalie se produisant dans ledit tableau d'adresse (200); et - par la suite, déterminer si une entrée dans ledit tableau d'adresse (200) doit être remplacée, en se basant sur la détection d'une anomalie. 18. Procédé de correction d'anomalie pour le tableau d'adresse de la mémoire cache selon la revendication 17, comprenant en outre une étape consistant à - mémoriser une entrée, dans laquelle une anomalie est détectée, dans un tampon de remplacement (300) pour une coïncidence de mémoire cache ainsi que pour une différence de mémoire cache. 19. Procédé de correction d'anomalie pour le tableau d'adresse de la mémoire cache selon la revendication 17, comprenant en outre une étape consistant à - déterminer qu'une anomalie ne s'est pas produite lorsqu'un champ de validité (212) d'une entrée, dans laquelle une anomalie est détectée, représente un état invalide. 20. Procédé de correction d'anomalie pour le tableau d'adresse de la mémoire cache selon la revendication 17, comprenant en outre une étape consistant à - mémoriser un complément d'un champ de propreté (213) d'une entrée, dans laquelle une anomalie est détectée, dans le champ de réécriture (313) d'un tampon de remplacement (300) lorsqu'un champ de validité (212) d'une entrée, dans laquelle une anomalie est détectée, représente un état valide.