Procédé de gestion d’une mémoire cache d’un calculateur électronique, ce procédé comportant les étapes suivantes au cours de l’exécution par ce calculateur d’un processus qui doit traiter un mot : a) la réception (100) d’une requête contenant une adresse du mot à lire ou à écrire, cette adresse comprenant : - une étiquette de ligne reçue, - une adresse d’ensemble reçue, cette adresse d’ensemble reçue appartenant à un premier ensemble de s valeurs différentes, où le nombre s est un nombre entier supérieur à deux, puis b) la génération (104), en fonction de l’adresse d’ensemble reçue lors de l’étape a), d’une première valeur respective pour chaque index de ligne d’un groupe de W index de ligne différents, où W est un nombre entier prédéterminé supérieur ou égal à un, chaque index de ligne pointant sur un tableau respectif de s lignes différentes de la mémoire cache et sa valeur identifiant de façon unique une seule ligne du tableau sur lequel il pointe, chaque ligne identifiée par la première valeur d’un index de ligne comportant une étiquette de ligne préenregistrée, puis c) la comparaison (122) de l’étiquette de ligne reçue aux étiquettes de ligne des lignes identifiées par les premières valeurs des W index de ligne générées lors de l’étape b), pour déterminer si l’une de ces étiquettes de ligne correspond à l’étiquette de ligne reçue, d) lorsque aucune des étiquettes de ligne comparées lors de l’étape c) ne correspond à l’étiquette de ligne reçue, le déclenchement d’un défaut de cache et la fourniture du mot à partir d’une mémoire de rang supérieur, et lorsque, au contraire, l’une des étiquettes de ligne comparées lors de l’étape c) correspond à l’étiquette de ligne reçue, la lecture (124) ou l’écriture dans la mémoire cache du mot à l’intérieur de la ligne contenant l’étiquette de ligne qui correspond à l’étiquette de ligne reçue, caractérisé en ce que : - l’étape b) comporte, pour chacun des W index de ligne, la sélection (112), en fonction de l’adresse d’ensemble reçue lors de l’étape a), d’une première cellule dans une première colonne d’une table d’indirection préenregistrée associée à cet index de ligne et l’utilisation, en tant que première valeur générée pour cet index de ligne, de la valeur contenue dans cette première cellule, - lors de l’étape d), en réponse au déclenchement d’un défaut de cache, le procédé comporte les opérations suivantes : d1) l’enregistrement (156) du mot fourni à partir de la mémoire de rang supérieur dans une nouvelle ligne identifiée par une seconde valeur de l’index de ligne qui pointe sur le tableau contenant cette nouvelle ligne, cette seconde valeur étant différente de la première valeur de cet index de ligne générée lors de l’étape b) et étant contenue dans une seconde cellule de la première colonne de la table d’indirection associée à cet index de ligne, cette seconde cellule étant différente de la première cellule, et d2) la permutation (152), dans la première colonne de la table d’indirection associée à l’index de ligne qui pointe sur le tableau contenant la nouvelle ligne, seulement des valeurs contenues dans les première et seconde cellules de sorte qu’après cette permutation la première cellule contient la seconde valeur et la seconde cellule contient la première valeur. Procédé selon la revendication 1, dans lequel, lors de l’étape d), en réponse au déclenchement d’un défaut de cache, le procédé comporte : - la sélection (132) d’une ligne à évincer parmi les W lignes identifiées par les premières valeurs des W index de ligne générées lors de l’étape b), puis - la comparaison (140) d’un compteur associé à la ligne à évincer sélectionnée, à une seuil prédéterminé, et - lorsqu’il résulte de cette comparaison que la valeur de ce compteur a franchi le seuil prédéterminé, l’exécution des opérations d1) et d2) et la réinitialisation (154) de ce compteur et, à l’inverse, lorsqu’il résulte de cette comparaison que la valeur de ce compteur n’a pas encore franchi le seuil prédéterminé, l’enregistrement (142) du mot fourni à partir de la mémoire de rang supérieur, dans la ligne à évincer sélectionnée et l’incrémentation (144) du compteur associé à cette ligne à évincer. Procédé selon la revendication 2, dans lequel le compteur est enregistré dans une deuxième colonne de la table d’indirection associée à l’index de ligne qui pointe sur le tableau contenant la ligne à évincer. Procédé selon l’une quelconque des revendications précédentes, dans lequel le procédé comporte : - l’utilisation d’un bit sale associé à chaque ligne de la mémoire cache pour déterminer si, avant d’évincer cette ligne de la mémoire cache, il faut d’abord sauvegarder le ou les mots contenus dans cette ligne dans une mémoire de rang supérieur, et - l’enregistrement (156) du bit sale associé à chaque ligne de la mémoire cache dans une troisième colonne de la table d’indirection associée à l’index de ligne qui pointe sur le tableau contenant cette ligne. Procédé selon l’une quelconque des revendications précédentes, dans lequel le procédé comporte : - l’utilisation d’un bit de validité associé à chaque ligne de la mémoire cache pour déterminer si cette ligne doit être sélectionnée en priorité pour être évincée de la mémoire cache, et - l’enregistrement (154, 156) du bit de validité associé à chaque ligne de la mémoire cache dans une quatrième colonne de la table d’indirection associée à l’index de ligne qui pointe sur le tableau contenant cette ligne. Procédé selon l’une quelconque des revendications précédentes, dans lequel : - lors de l’étape a), la requête reçue comporte également un identifiant de processus reçu qui distingue le processus qui a émis cette requête de tous les autres processus simultanément exécutés par le calculateur électronique, - lors de l’étape b), les premières valeurs des W index de ligne sont également générées en fonction de l’identifiant de processus reçu lors de l’étape a). Procédé selon la revendication 6, dans lequel - lors de l’étape a), la requête reçue comporte également un marqueur de mémoire partagée qui indique si le mot à lire ou à écrire est ou non partagé avec d’autres processus simultanément exécutés par le calculateur électronique, et - lors de l’étape b), lorsque le marqueur de mémoire partagé indique que le mot à lire ou à écrire n’est pas partagé avec d’autres processus simultanément exécutés par le calculateur électronique, les premières valeurs des W index de ligne sont également générées en fonction de l’identifiant de processus reçu lors de l’étape a) et, sinon, lorsque le marqueur de mémoire partagé indique que le mot à lire ou à écrire est partagé avec d’autres processus simultanément exécutés par le calculateur électronique, les premières valeurs des W index de ligne sont générées sans prendre en compte l’identifiant de processus reçu lors de l’étape a). Procédé selon l’une quelconque des revendications précédentes, dans lequel l’opération d1) comporte la sélection aléatoire ou pseudo-aléatoire de la nouvelle ligne parmi les lignes d’un tableau différentes de la ligne identifiée par la première valeur de l’index de ligne qui pointe sur ce tableau. Procédé selon l’une quelconque des revendications précédentes, dans lequel le procédé comporte : - l’utilisation d’un bit de validité associé à chaque ligne de la mémoire cache pour déterminer si cette ligne doit être sélectionnée en priorité pour être évincée de la mémoire cache, ce bit de validité étant commutable entre : - un état « invalide » où il indique que cette ligne doit être sélectionnée en priorité pour être évincée de la mémoire cache, et - un état « valide » où il indique que cette ligne ne doit pas être sélectionnée en priorité pour être évincée de la mémoire cache, - en réponse à l’exécution de l’opération d2), le bit de validité associé à la ligne de la mémoire cache identifiée par la première valeur de l’index de ligne qui pointe sur le tableau contenant la nouvelle ligne, est systématiquement mis (154) dans l’état « invalide ». Procédé selon l’une quelconque des revendications précédentes, dans lequel W est supérieur ou égale à deux. Procédé selon la revendication 10, dans lequel chaque index de ligne est associé à sa propre table d’indirection. Procédé selon l’une quelconque des revendications précédentes, dans lequel l’étape b) comporte pour chaque index de ligne : - la construction (108, 110) d’une valeur intermédiaire de cet index de ligne à partir de l’adresse d’ensemble reçue lors de l’étape a) et d’une clé cryptographique secrète contenue dans une mémoire non-volatile inaccessible par les processus exécutés par le calculateur, puis - la sélection (112), en fonction de l’adresse d’ensemble reçue lors de l’étape a), d’une première cellule dans une première colonne de la table d’indirection préenregistrée associée à cet index de ligne, consiste à sélectionner la cellule de cette table d’indirection qui se trouve sur la ligne de cette table d’indirection dont l’indice est égal à la valeur intermédiaire construite pour cet index de ligne. Unité matérielle de gestion d’une mémoire cache d’un calculateur électronique, cette unité étant configurée pour réaliser les étapes suivantes au cours de l’exécution par ce calculateur d’un processus qui doit traiter un mot : a) la réception d’une requête contenant une adresse du mot à lire ou à écrire, cette adresse comprenant : - une étiquette de ligne reçue, - une adresse d’ensemble reçue, cette adresse d’ensemble reçue appartenant à un premier ensemble de s valeurs différentes, où le nombre s est un nombre entier supérieur à deux, puis b) la génération, en fonction de l’adresse d’ensemble reçue lors de l’étape a), d’une première valeur respective pour chaque index de ligne d’un groupe de W index de ligne différents, où W est un nombre entier prédéterminé supérieur ou égal à un, chaque index de ligne pointant sur un tableau respectif de s lignes différentes de la mémoire cache et sa valeur identifiant de façon unique une seule ligne du tableau sur lequel il pointe, chaque ligne identifiée par la première valeur d’un index de ligne comportant une étiquette de ligne préenregistrée, puis c) la comparaison de l’étiquette de ligne reçue aux étiquettes de ligne des lignes identifiées par les premières valeurs des W index de ligne générées lors de l’étape b), pour déterminer si l’une de ces étiquettes de ligne correspond à l’étiquette de ligne reçue, d) lorsque aucune des étiquettes de ligne comparées lors de l’étape c) ne correspond à l’étiquette de ligne reçue, le déclenchement d’un défaut de cache et la fourniture du mot à partir d’une mémoire de rang supérieur, et lorsque, au contraire, l’une des étiquettes de ligne comparées lors de l’étape c) correspond à l’étiquette de ligne reçue, la lecture ou l’écriture dans la mémoire cache du mot à l’intérieur de la ligne contenant l’étiquette de ligne qui correspond à l’étiquette de ligne reçue, caractérisé en ce que l’unité matérielle de gestion est également configurée pour : - lors de l’étape b), pour chacun des W index de ligne, sélectionner, en fonction de l’adresse d’ensemble reçue lors de l’étape a), d’une première cellule dans une première colonne d’une table d’indirection préenregistrée associée à cet index de ligne et utiliser, en tant que première valeur générée pour cet index de ligne, de la valeur contenue dans cette première cellule, - lors de l’étape d), en réponse au déclenchement d’un défaut de cache, exécuter les opérations suivantes : d1) enregistrer le mot fourni à partir de la mémoire de rang supérieur dans une nouvelle ligne identifiée par une seconde valeur de l’index de ligne qui pointe sur le tableau contenant cette nouvelle ligne, cette seconde valeur étant différente de la première valeur de cet index de ligne générée lors de l’étape b) et étant contenue dans une seconde cellule de la première colonne de la table d’indirection associée à cet index de ligne, cette seconde cellule étant différente de la première cellule, et d2) permuter, dans la première colonne de la table d’indirection associée à l’index de ligne qui pointe sur le tableau contenant la nouvelle ligne, seulement des valeurs contenues dans les première et seconde cellules de sorte qu’après cette permutation la première cellule contient la seconde valeur et la seconde cellule contient la première valeur.