FR 3045182 A1 20170616 FR 1562408 A 20151215 1 Procédé et dispositif de gestion d'espace mémoire Des modes de mise en oeuvre et de réalisation de l'invention concernent la gestion d'espace mémoire, notamment les unités de gestion mémoire, communément désignés par l'homme du métier sous l'acronyme anglo-saxon « MMU » (Memory Management Unit »), et plus particulièrement les dispositifs de gestion d'espace mémoire applicables pour gérer les allocations dynamiques d'espaces mémoires virtuels de tailles variées entre des mémoires tampons (« buffer » en anglais) virtuelles et des mémoires physiques par exemple des mémoires à accès direct (« Random Access Memory » : RAM en anglais) ou des mémoires de masse telles que les disques durs qui peuvent former une extension de ces mémoires vives. Ces allocations dynamiques résultent par exemple d'une demande d'allocation d'un espace mémoire virtuel provenant de moyens de commande tels que des microprocesseurs ou des contrôleurs d'accès direct à la mémoire (« Direct Memory Access » : DMA en anglais) sans que ces exemples ne soient limitatifs. D'une façon générale, un dispositif de gestion d'espace mémoire classique partitionne généralement un espace mémoire virtuel en plusieurs pages de même taille. Par conséquent, chaque adresse virtuelle est un couple d'un premier champ indiquant un numéro de page d'adresses virtuelles et d'un deuxième champ représentant un déplacement (« offset » en anglais) au sein de la page d'adresses virtuelles correspondant audit numéro de page. Une mémoire vive est généralement composée d'espaces d'adresses physiques partitionnés en plusieurs zones (« frame » en anglais) ayant une taille identique à celle des pages d'adresses virtuelles. Un tel dispositif possède en outre une table de pages (« page table » en anglais) configurée pour assurer la traduction des adresses virtuelles en adresses physiques. Ladite table de pages effectue en effet une association d'un numéro de page et d'un numéro de zone correspondant. 3045182 2 Comme les pages d'adresses virtuelles possèdent la même taille que les zones d'adresses physiques, un tel dispositif ne permet généralement pas d'éviter éventuellement des fragmentations internes. Par ailleurs, un tel dispositif alloue généralement en réponse à 5 une demande d'allocation d'espace mémoire virtuel, une ou plusieurs mémoires tampons virtuelles contiguës dans l'espace mémoire virtuel correspondant à un espace mémoire physique adéquat au sein de la mémoire vive. Comme une grande mémoire tampon nécessite souvent plusieurs allocations, on obtiendra au fur et à mesure des 10 fragmentations au sein de l'espace d'adresses virtuelles, ce qui pourrait empêcher une nouvelle allocation d'espace mémoire virtuel d'une taille donnée même si la somme des tailles des espaces d'adresses virtuelles libres est supérieure à ladite taille donnée. Ce genre de problème dit de « fragmentation externe » est connu de 15 l'homme du métier. Plusieurs solutions à base de dispositifs de gestion d'espace mémoire virtuel comportant des mémoires tampons virtuelles de tailles différentes ou utilisant des algorithmes spécifiques tels que des algorithmes de coalescence sont généralement proposées pour pallier 20 le problème de fragmentation interne ou celui de fragmentation externe. Toutefois ces solutions proposées souffrent toujours au moins d'un des inconvénients suivants : la fragmentation interne, la fragmentation externe et le traitement de microprocesseur dans le 25 dispositif correspondant. Ainsi, selon un mode de mise en oeuvre et de réalisation, il est proposé d'offrir un dispositif de gestion d'espace mémoire virtuel comportant un mécanisme d'adresses virtuelles différent pour réduire considérablement la fragmentation interne ainsi que la fragmentation 30 externe sans utiliser d'algorithmes spécifiques exigeant des traitements de microprocesseurs. Selon un autre mode de mise en oeuvre et de réalisation, il est proposé de réaliser un tel dispositif sans trop impacter l'encombrement surfacique sur silicium. 3045182 3 Selon un aspect, il est proposé un procédé de gestion d'espace mémoire. Ceci comprend en réponse à une demande d'allocation d'un espace mémoire virtuel ayant une taille mémoire donnée au sein d'une mémoire virtuelle, ladite mémoire virtuelle étant partitionnée en 5 partitions virtuelles, chaque partition étant subdivisée en sous- partitions virtuelles, chaque sous-partition correspondant à une combinaison de plusieurs secteurs de tailles identiques ou différentes d'une mémoire physiques, a) une sélection d'une partition libre, 10 b) une sélection d'une sous-partition virtuelle correspondant à une combinaison de secteurs ayant une taille totale minimale couvrant ladite taille mémoire donnée de l'espace mémoire virtuel à allouer, c) une sélection de secteurs libres de la mémoire physique correspondant à ladite combinaison sélectionnée, 15 d) une détermination d'une table de correspondance entre la partition virtuelle sélectionnée et les adresses physiques initiales desdits secteurs libres sélectionnés, et e) une génération d'une adresse virtuelle comportant une première partie permettant d'identifier ladite sous-partition virtuelle 20 sélectionnée et une deuxième partie destinée à contenir les différentes adresses dudit espace mémoire virtuel alloué au sein de ladite sous-partition virtuelle. Ainsi on peut avantageusement réduire la fragmentation interne car un tel procédé supporte des secteurs de tailles variées. Par 25 conséquent, une partition virtuelle, autrement dit une mémoire tampon virtuelle, d'une telle mémoire virtuelle peut être allouée avec des secteurs de tailles différentes correspondant mieux à la taille mémoire donnée de la demande d'allocation. En outre, le fait d'avoir une partition virtuelle associée à 30 plusieurs secteurs non contigus permet donc de diminuer la fragmentation externe car ladite mémoire tampon virtuelle est toujours contiguë au vu d'un processeur. Aucun algorithme spécifique tel que l'algorithme de coalescence n'est nécessaire dans un tel procédé et le traitement d'un tel procédé est donc rapide. 3045182 4 On incorpore ainsi dans l'adresse virtuelle générée des informations d'identification des secteurs sélectionnées. Selon un mode de mise en oeuvre, la première partie comporte une première sous-partie permettant d'identifier ladite partition libre 5 et une deuxième sous-partie permettant d'identifier la sous-partition sélectionnée au sein de ladite partition libre. Les tailles des secteurs peuvent être choisies dans un jeu de tailles de référence croissantes. La combinaison de secteurs d'une sous-partition peut correspondre à une association d'un premier 10 nombre de secteurs d'une première taille dudit jeu et éventuellement d'un deuxième nombre de secteurs d'une deuxième taille dudit jeu immédiatement supérieure à la première taille. La deuxième sous-partie peut comporter un premier champ destiné à identifier ledit premier nombre et éventuellement ledit deuxième nombre, et un 15 deuxième champ destiné à identifier ladite première taille et éventuellement ladite deuxième taille. Lorsqu'il n'y a pas assez de secteurs de la première taille libres correspondant à ladite combinaison sélectionnée, ledit procédé peut comporter en outre, après l'étape c), une première itération de l'étape 20 b) de façon à déterminer une première sous-partition ajustée correspondant à une première combinaison ajustée ayant le deuxième champ incrémenté par rapport à celui de ladite combinaison sélectionnée et le premier champ minimisé, et une première itération de l'étape c) pour sélectionner des secteurs libres correspondant à 25 ladite première combinaison ajustée. Dans le cas où il n'y a pas assez de secteurs de la première taille libres correspondant à ladite première combinaison ajustée, ledit procédé peut par exemple comprendre en outre, après la première itération de l'étape c), une deuxième itération de l'étape b) de façon à 30 déterminer une deuxième sous-partition ajustée correspondant à une deuxième combinaison ajustée ayant le deuxième champ incrémenté par rapport à celui de ladite première combinaison ajustée et le premier champ minimisé, et une deuxième itération de l'étape c) pour 3045182 5 sélectionner des secteurs physiques libres correspondant à ladite deuxième combinaison ajustée. Avantageusement, la table de correspondance comporte pour chaque partition virtuelle plusieurs index de secteurs, chaque index de 5 secteur étant destiné à être rempli avec l'adresse physique initiale d'un des secteurs libres sélectionnés. Selon un mode de mise en oeuvre, les index de secteurs sont remplis prioritairement avec les adresses physiques initiales des secteurs libres sélectionnés ayant la plus grande taille mémoire. 10 Ladite deuxième partie de l'adresse virtuelle générée peut comporter par exemple plusieurs champs d'index correspondant chacun à un index de secteurs dédié à des secteurs de tailles différentes dudit jeu de tailles de référence. Le procédé peut comporter en outre au sein de ladite table de 15 correspondance une désignation d'un des index de secteurs correspondant à la partition virtuelle sélectionnée à partir de ladite première sous-partie, dudit premier paramètre et d'une adresse de base indiquant l'adresse de début de ladite table de correspondance. A titre indicatif mais non limitatif, le procédé comporte au sein 20 dudit secteur sélectionné dont l'adresse physique initiale est stockée dans ledit index de secteurs une désignation de l'adresse physique absolue correspondant à ladite adresse virtuelle à partir dudit deuxième paramètre et de ladite adresse physique initiale. Selon un mode de mise en oeuvre, le jeu de tailles de référence 25 comporte quatre tailles de référence différentes et ladite deuxième partie peut comporter quatre champs d'index correspondants. Chaque répartition peut être subdivisée par exemple en trente-deux sous-partitions virtuelles. Chaque sous-partition peut correspondre à une combinaison 30 pouvant impliquer jusqu'à huit secteurs. Selon un autre aspect, il est proposé un dispositif de gestion d'espace mémoire. Ceci comprend : une mémoire virtuelle partitionnée en partitions virtuelles, chaque partition étant subdivisée en sous-partitions virtuelles, une 3045182 6 mémoire physique comportant plusieurs secteurs, chaque sous-partition correspondant à une combinaison de plusieurs secteurs de tailles identiques ou différentes, et des moyens de traitement configurés pour effectuer : 5 une sélection d'une partition libre, une sélection d'une sous-partition virtuelle correspondant à une combinaison de secteurs ayant une taille totale minimale couvrant ladite taille mémoire donnée de l'espace mémoire virtuel à allouer, une sélection de secteurs libres de la mémoire physique 10 correspondant à ladite combinaison sélectionnée, une détermination d'une table de correspondance entre la partition virtuelle sélectionnée et les adresses physiques initiales desdits secteurs libres sélectionnés, et une génération d'une adresse virtuelle comportant une première 15 partie permettant d'identifier ladite sous-partition virtuelle sélectionnée et une deuxième partie destinée à contenir les différentes adresses dudit espace mémoire virtuel alloué au sein de ladite sous-partition virtuelle. Selon un mode de réalisation, la première partie comporte une 20 première sous-partie permettant d'identifier ladite partition libre et une deuxième sous-partie permettant d'identifier la sous-partition sélectionnée au sein de ladite partition libre. Selon un autre mode de réalisation, les moyens de traitement sont par ailleurs configurés pour choisir les tailles des secteurs dans 25 un jeu de tailles de référence croissantes, la combinaison de secteurs d'une sous-partition correspond à une association d'un premier nombre de secteurs d'une première taille dudit jeu et éventuellement d'un deuxième nombre de secteurs d'une deuxième taille dudit jeu immédiatement supérieure à la première taille, la deuxième sous-partie 30 comporte un premier champ destiné à identifier ledit premier nombre et éventuellement ledit deuxième nombre, et un deuxième champ destiné à identifier ladite première taille et éventuellement ladite deuxième taille. 3045182 7 Lorsqu'il n'y a pas assez de secteurs de la première taille libres correspondant à ladite combinaison sélectionnée, les moyens de traitement peuvent être en outre configurés pour déterminer une première sous-partition ajustée correspondant à une première 5 combinaison ajustée ayant le deuxième champ incrémenté par rapport à celui de ladite combinaison sélectionnée et le premier champ minimisé, et pour sélectionner des secteurs libres correspondant à ladite première combinaison ajustée. Par ailleurs, lorsqu'il n'y a pas assez de secteurs de la première 10 taille libres correspondant à ladite première combinaison ajustée, les moyens de traitement peuvent être en outre configurés pour déterminer une deuxième sous-partition ajustée correspondant à une deuxième combinaison ajustée ayant le deuxième champ incrémenté par rapport à celui de ladite première combinaison ajustée et le premier champ 15 minimisé, et pour sélectionner des secteurs libres correspondant à ladite deuxième combinaison ajustée. Avantageusement, la table de correspondance peut être incorporée dans la mémoire physique et comporter pour chaque partition virtuelle plusieurs index de secteurs destinés à être rempli 20 chacun avec l'adresse physique initiale d'un des secteurs libres sélectionnés. Selon un mode de réalisation, les index de secteurs sont remplis prioritairement avec les adresses physiques initiales des secteurs libres sélectionnés ayant la plus grande taille mémoire. 25 Chaque adresse de ladite deuxième partie comporte par exemple plusieurs champs d'index correspondant chacun à un index de secteurs dédié à des secteurs d'une taille différente dudit jeu. Les moyens de traitement peut être en outre configurés pour générer à partir desdits champs d'index et de ladite deuxième sous- 30 partie un premier paramètre de secteur et un deuxième paramètre de secteur. La mémoire physique peut comporter par ailleurs une adresse de base indiquant l'adresse de début de ladite table de correspondance et les moyens de traitement peuvent être configurés pour désigner au 3045182 8 sein de ladite table de correspondance un des index de secteurs correspondant à la partition virtuelle sélectionnée à partir de ladite première sous-partie, dudit premier paramètre et de ladite adresse de base. 5 Les moyens de traitement peuvent être configurés pour désigner au sein dudit secteur sélectionné dont l'adresse physique initiale est stockée ledit index de secteurs l'adresse physique absolue correspondant à ladite adresse virtuelle à partir dudit deuxième paramètre et de ladite adresse physique initiale. 10 Selon un mode de réalisation, le jeu de tailles de référence comporte quatre tailles de référence différentes et ladite deuxième partie comporte quatre champs d'index correspondants. Chaque répartition peut être subdivisée en trente-deux sous-partitions virtuelles. Chaque sous-partition peut correspondre à une combinaison 15 pouvant impliquer jusqu'à huit secteurs. D' autres avantages et caractéristiques de l' invention apparaîtront à l'étude de la description détaillée de modes de mise en oeuvre et de réalisation, pris à titre d'exemples non limitatifs et illustrés par les dessins annexés sur lesquels : 20 - les figures 1 à 10 sont relatives à différents modes de mise en oeuvre et de réalisation de l'invention. La figure 1 illustre très schématiquement un exemple d'un appareil électronique AE, par exemple du type système de communication à faible consommation d'énergie, incorporant un 25 dispositif de gestion d'espace mémoire DIS selon l'invention. Ledit dispositif DIS comprend une mémoire virtuelle MV comportant des espaces mémoires virtuels. Ladite mémoire virtuelle MV est partitionnée en une pluralité de partitions virtuelles PV0 à PVN (illustrées sur la figure 2) formant des mémoires tampons virtuelles 30 (« virtual buffer » en anglais). Ledit dispositif DIS comprend également une mémoire physique MP comportant plusieurs secteurs SMP0 à SMPM de tailles identiques ou différentes et une table de correspondance TC. 3045182 9 Lesdits secteurs physiques SMPo à SMPM ont plusieurs, par exemple quatre, tailles différentes. La mémoire physique MP comporte plusieurs secteurs SMPk pour chaque taille de secteur donnée. La mémoire physique MP comporte en outre quatre tables 5 d'index de secteurs TIS1 à TIS4 chacune correspondant aux secteurs d'une desdites tailles différentes. Ces tables d'index de secteurs TIS1 à TIS4 sont configurées pour détecter le caractère libre ou non d'un secteur SMPk de la taille correspondante. Ledit dispositif DIS comprend en outre des moyens de 10 traitement MT communiquant avec ladite mémoire virtuelle MV et ladite mémoire physique MP. Les moyens de traitement MT sont configurés pour recevoir une demande d'allocation DA d'un espace mémoire virtuel ayant une taille mémoire donnée au sein de la mémoire virtuelle MV en 15 provenance d'un moyen de commande tel qu'un microprocesseur ou un contrôleur DMA. En réponse à cette demande d'allocation DA, les moyens de traitement MT sont configurés pour délivrer une adresse virtuelle AV permettant au moyens de commande MC d'adresser l'espace mémoire 20 virtuel qui lui a été alloué. Comme on le verra plus en détails ci-après, l'adresse virtuelle AV permet notamment d'adresser une partition virtuelle PV libre de ladite mémoire virtuelle MV correspondant à une combinaison de plusieurs secteurs SMPo à SMPM de tailles identiques ou différentes 25 dans la mémoire physique MP. Les moyens de traitement MT peuvent être réalisés de façon logicielle au sein d'un microprocesseur. Il convient de noter que le moyen de commande MC, la mémoire virtuelle MV et les moyens de traitement MT traitent des 30 adresses virtuelles tandis que la mémoire physique MP traite des adresses physiques. Ladite table de correspondance TC de la mémoire physique MP effectue une correspondance entre une partition virtuelle PV, sélectionnée par les moyens de traitement MT et les adresses 3045182 10 physiques initiales API des secteurs allouées à ladite partition virtuelle PV, sélectionnée. L'architecture et le fonctionnement de chaque composant dudit dispositif seront détaillés ci-après. 5 Chaque partition PV, de la mémoire virtuelle MV comporte un numéro de partition. Ladite mémoire virtuelle MV possède une table d'index des partitions virtuelles TIPV indexée par ledit numéro de partition et indiquant l'état de disponibilité de chaque partition PV. Le nombre de partitions virtuelles est défini par le nombre maximal de 10 mémoires tampons virtuelles qui peuvent être demandées. Comme indiqué ci-avant, les moyens de traitement MT sont configurés pour sélectionner une partition PV libre en réponse à une demande d'allocation DA d'un espace mémoire virtuel ayant une taille donnée. 15 Si aucune partition PV, n'est libre, alors les moyens de traitement MT indiquent au moyen de commande MC que sa demande d'allocation ne peut pas être satisfaite. On se réfère maintenant à la figure 2 pour illustrer plus en détail l'architecture de la mémoire virtuelle MV. 20 Chaque partition virtuelle PV, est subdivisée en sous-partitions virtuelles SPV,, chacune correspondant à une combinaison distincte de plusieurs secteurs physiques SMPk de tailles identiques ou différentes. A titre indicatif mais non limitatif, chaque partition virtuelle PV, occupe un espace mémoire virtuel de 512 ko et comporte 32 sous- 25 partitions chacune correspondant à un espace mémoire virtuel de 16 ko. Les moyens de traitement MT sont en outre configurés pour sélectionner une sous-partition virtuelle SPV, correspondant à une combinaison de secteurs SMPk. Chaque sous-partition SPV, correspond 30 à une combinaison pouvant impliquer jusqu'à huit secteurs SMPk. Cette combinaison des secteurs SMPk est configurée pour avoir une taille totale minimale couvrant ladite taille mémoire donnée de l'espace mémoire virtuel à allouer de façon à réduire la fragmentation interne. 3045182 11 Par ailleurs, comme la taille mémoire physique maximale qui peut être allouée au moyen de commande MC correspond à la taille d'une sous-partition virtuelle SPV, (soit 16 ko), la fragmentation externe dudit dispositif DIS est avantageusement réduite à zéro. 5 En d'autres termes, ici une demande d'allocation d'un espace mémoire virtuel au sein dudit dispositif DIS a une taille qui n'est jamais supérieure à celle d'une mémoire tampon virtuelle (« virtual buffer » en anglais). La table de correspondance TC comporte pour chaque partition 10 virtuelle PV, un index de partition virtuelle IPV1. Chaque index IPV1 est associé à huit index de secteurs IPV1 ISO à IPV1 IS7. Chaque index de secteurs ISO à IS7 est susceptible d'être rempli avec l'adresse physique initiale API d'un des secteurs physique SMPk libres sélectionnés pour ladite partition virtuelle PV, correspondante. 15 Les moyens de traitement MT sont configurés pour effectuer une sélection de secteurs SMPk libres correspondant à ladite combinaison sélectionnée en fonction du contenu desdites tables d'index de secteurs TIS1 à TIS4. Une fois les secteurs sélectionnés, les moyens de traitement MT effectuent également une détermination 20 de ladite table de correspondance TC en remplissant les index de secteurs correspondants avec les adresses physiques initiales desdits secteurs sélectionnés. Par exemple, on peut observer sur la figure 2 que les secteurs IPVO SMPO à IPVO SMP5 sont sélectionnés mais les secteurs IPVO 25 SMP6 et IPVO SMP7 restants ne sont pas utilisés. Une fois les secteurs IPVO SMPO à IPVO SMP5 sélectionnés, les moyens de traitement sont configurés pour écrire respectivement les adresses physiques initiales API de ces secteurs IPVO SMPO à IPVO SMP5 dans les index de secteurs ISO à IS5 du premier index de 30 partition virtuelle IPVO correspondant à la première partition virtuelle PVO. Il convient de noter que la taille du secteur IPVO SMPO est plus grande que celle des autres secteurs IPVO SMP1 à IPVO SMP7 correspondant à l'index de partition virtuelle IPVO car les index de 3045182 12 secteurs ISO à IS7 sont remplis prioritairement avec les adresses physiques initiales des secteurs libres sélectionnés ayant dans cet exemple la plus grande taille mémoire. On se réfère maintenant à la figure 3 pour illustrer plus en 5 détail un exemple de composition de l'adresse virtuelle AV. A titre indicatif mais non limitatif, l'adresse virtuelle AV illustrée ici sur la figure 3 comprend un mot de 32 bits adapté pour une implémentation dans un système de 32 bits. Il serait bien entendu possible de prévoir une adresse virtuelle AV sur 48 bits ou sur 64 bits 10 selon le système dans lequel ledit dispositif DIS est appliqué. Les quatre premiers bits de poids forts 28 à 31 de l'adresse virtuelle AV définissent une zone d'adressage sur le bus alloué à la mémoire virtuelle MV et restent toujours constants, par exemple égaux à 0011. 15 Le nombre de ces bits peut être différent en fonction de l'application envisagée. En général on fournira avantageusement la plus grande plage virtuelle sans rentrer en conflit avec des plages existantes déjà allouées à d'autres périphériques présents sur le bus. Les quatorze bits de poids forts suivants 14 à 27 forment une 20 première partie Pl permettant d'identifier ladite sous-partition SPVJ sélectionnée et les quatorze bits de poids faibles 0 à 13 forment une deuxième partie P2 destinée à contenir les différentes adresses dudit espace mémoire virtuel alloué au sein de ladite sous-partition virtuelle SPVi. Ces quatorze bits correspondent à une taille de 16 ko. 25 Par ailleurs, les neuf premiers bits de poids forts 19 à 27 de la première partie Pl forment une première sous-partie SP1 permettant d'identifier ladite partition PV libre. En effet, la valeur binaire contenue dans la première sous-partie SP1 correspond au numéro de partition de la partition virtuelle libre trouvée dans la table TIPV 30 d'index de partitions virtuelles. Les cinq bits de poids faibles 14 à 18 de la première partie Pl forment une deuxième sous-partie SP2 comportant un premier champ Cl de trois bits 14 à 16 et un deuxième champ C2 de deux bits 17 et 3045182 13 18. Ces deux champs Cl et C2 sont destinés à identifier une combinaison de secteurs. Plus précisément, les tailles des secteurs sont choisies dans un jeu JTF de tailles de référence croissantes comportant ici quatre tailles 5 de référence différentes, par exemple : 4 octets, 32 octets, 256 octets et 2048 octets (soit 2 ko), comme illustré sur la figure 4. La combinaison de secteurs d'une sous-partition est définie par une association d'un premier nombre N1 de secteurs d'une première taille Ti dudit jeu JTF et éventuellement d'un deuxième nombre N2 de 10 secteurs d'une deuxième taille T2 dudit jeu JTF, immédiatement supérieure à la première taille Ti. Comme illustré sur la figure 4, ledit premier champ Cl est destiné à identifier ledit premier nombre N1 et éventuellement ledit deuxième nombre N2, sachant que la somme du premier nombre N1 et 15 du deuxième nombre N2 est constante et égale ici à huit. Ainsi, lorsque le premier champ Cl est égal à 111 en binaire, le premier nombre N1 et le deuxième nombre N2 sont respectivement égaux à 8 et 0. Ledit deuxième champ C2 est destiné à identifier ladite 20 première taille Ti et éventuellement ladite deuxième taille T2. Comme on voit sur la figure 4, il n'y a pas dans cet exemple de secteurs physiques de la deuxième taille T2 lorsque ledit deuxième champ C2 a la valeur maximale binaire 11. Ladite deuxième partie P2 de l'adresse virtuelle AV générée 25 comporte en outre (figure 3) plusieurs, ici par exemple quatre, champs d'index CI4, CI32, CI256 et CI2048 correspondant chacun à un index de secteurs ISO à IS7 dédié à des secteurs de tailles différentes (4 octets, 32 octets, 256 octets et 2048 octets) dudit jeu JTF de tailles de référence. Chaque champ d'index CI4, CI32, CI256 ou CI2048 possède 30 respectivement trois bits adjacents 2 à 4, 5 à 7, 8 à 10 et 11 à 13. Les bits de poids faibles 0 et 1 de la deuxième partie P2 sont des bits de décalages (« offset » en anglais) D participant à la désignation des emplacements possibles au sein d'un secteur de taille donnée. 3045182 14 Ainsi, les bits 0 et 1 sont des bits d'offset pour les secteurs de taille 4 octets et les bits 0 à 4 sont des bits d'offset pour les secteurs de taille 32 octets. Par analogie, les bits 0 à 7 sont des bits d'offset pour les secteurs de taille 256 octets et les bits 0 à 10 sont des bits 5 d'offset pour les secteurs de taille 2048 octets. La figure 5 illustre à partir desdits champs d'index C14, C132, C1256 et C12048 et des champs Cl et C2 de ladite deuxième sous-partie SP2, une génération d'un premier paramètre de secteur PS1 et d'un deuxième paramètre de secteur PS2. 10 Lorsque le deuxième champ C2 est égal à 00, le premier paramètre de secteur PS1 est égal au champ d'index C132 correspondant aux secteurs ayant la taille de 32 octets et le deuxième paramètre de secteur PS2 prend les valeurs binaires de cinq bits de poids faible de la deuxième partie P2 si le premier champ Cl est 15 supérieur au champ d'index C132. Sinon le premier paramètre de secteur PS1 vaut la somme du champ d'index C132 et du champ d'index C14 et le deuxième paramètre de secteur PS2 prend les valeurs binaires des deux bits de poids faibles de la deuxième partie P2. 20 Lorsque le deuxième champ C2 est égal à 01, le premier paramètre de secteur PS1 est égal au champ d'index C1256 correspondant aux secteurs ayant la taille de 256 octets et le deuxième paramètre de secteur PS2 prend les valeurs binaires des huit bits de poids faible de la deuxième partie P2 si le premier champ Cl est 25 supérieur au champ d'index C1256. Sinon le premier paramètre de secteur PS1 vaut la somme du champ d'index C1256 et du champ d'index C132 et le deuxième paramètre de secteur PS2 prend les valeurs binaires des cinq bits de poids faible de la deuxième partie P2. 30 Lorsque le deuxième champ C2 est égal à 10, le premier paramètre de secteur PS1 est égal au champ d'index C12048 correspondant aux secteurs ayant la taille de 2048 octets et le deuxième paramètre de secteur PS2 prend les valeurs binaires des onze 3045182 15 bits de poids faible de la deuxième partie P2 si le premier champ Cl est supérieur au champ d'index CI2048. Sinon le premier paramètre de secteur PS1 vaut la somme du champ d'index CI2048 et du champ d'index CI256 et le deuxième 5 paramètre de secteur PS2 prend les valeurs binaires de huit bits de poids faible de la deuxième partie P2. Lorsque le deuxième champ C2 est égal à 11, le premier paramètre de secteur PS1 est égal au champ d'index CI2048 correspondant aux secteurs ayant la taille de 2048 octets et le 10 deuxième paramètre de secteur PS2 prend les valeurs binaires des onze bits de poids faible de la deuxième partie P2. En se référant à la figure 6, on illustre le fonctionnement d'un indicateur d'index de secteurs au sein de ladite table de correspondance TC. 15 Comme déjà illustré sur la figure 2, la table de correspondance TC comporte plusieurs index de partition virtuelle IPVO à IPVN. Chaque index de partition virtuelle IPVO à IPVN comporte huit index de secteurs ISO à IS7 et la taille de chaque index de partition virtuelle est de 8*4 octets. En conséquence, la taille de chaque index de 20 secteurs est de 4 octets, soit 32 bits. Un registre comporte en outre une adresse de base AB indiquant l'adresse de début de ladite table de correspondance TC. En utilisant ladite première sous-partie SP1, ledit premier paramètre de secteur PS1 et ladite adresse de base AB de la mémoire 25 physique MP, les moyens de traitement MT sont configurés pour désigner un des index de secteurs 'Si correspondant à la partition virtuelle PV, sélectionnée. Le contenu de SP1 désigne l'index IPV, correspondant. Ledit premier paramètre PS1 désigne le numéro d'index de secteurs IS, au sein de l'index de partition virtuelle IPV, 30 sélectionnée. Par exemple, une première sous-partie SP1 valant 2 correspond à l'index IPV1 et un premier paramètre PS1 valant 3 correspond à l'index de secteurs IS2. Cet index de secteur IS2 contenu dans l'index 3045182 16 IPV1 contient l'adresse physique initiale API du secteur physique IPV1 SMP2 sélectionné. Afin d'obtenir l'adresse physique absolue APA correspondant à ladite adresse virtuelle AV, les moyens de traitement MT sont en outre 5 configurés pour désigner (figure 7) grâce à l'adresse physique initiale API, le début du secteur IPV1 SMP2 sélectionné. Le deuxième paramètre PS2 correspondant au décalage (« offset » en anglais) au sein du secteur physique IPV1 SMP2 sélectionné. On se réfère maintenant aux figures 8 à 10 pour illustrer un 10 exemple d'un procédé de gestion d'espace mémoire selon l'invention. Les moyens de traitement MT reçoivent une demande d'allocation DA d'espace mémoire virtuelle ayant par exemple une taille de 850 octets. Comme illustré sur la figure 8, les moyens de traitement MT 15 vérifient tout d'abord la table TIPV d'index de partitions virtuelles afin de sélectionner une partition virtuelle PV, libre. Dans l'exemple illustré, la table TIPV d'index des partitions virtuelles comprend 32 index de partitions virtuelles correspondant respectivement à 32 partitions virtuelles PVO à PV31 différentes. 20 La valeur non nulle d'un index signifie que la partition virtuelle PV, correspondante est libre. Par conséquent, les moyens de traitement MT vérifient par exemple chaque bit de ladite table TIPV jusqu'à trouver une valeur non nulle. Dans l'exemple on suppose que la partition virtuelle PV30 libre correspondant au numéro 30 (valeur 25 décimale) de la table d'index TIPV des partitions virtuelles est sélectionnée par les moyens de traitement MT. Les moyens de traitement MT effectuent ensuite un calcul pour déterminer une combinaison des secteurs physiques SMPk ayant une taille totale minimale couvrant 850 octets. 30 En premier lieu, les moyens de traitement MT effectuent un calcul pour déterminer des secteurs SMP ayant une deuxième taille T2. A cet égard, la taille donnée de 850 octets est divisée par une taille de secteurs immédiatement inférieure à la taille donnée, ici 256 octets qui correspond à ladite taille T2. En arrondissant le résultat au plus grand 3045182 17 entier inférieur, on obtient le premier champ Cl valant 3 en valeur décimale et 011 en valeur binaire. Donc, si l'on se réfère à la figure 4, on voit qu'on obtient N2 = 3 ce qui correspond à trois secteurs de taille T2. Par ailleurs N1 vaut 5 5. En deuxième lieu, les moyens de traitement MT déterminent le nombre de secteurs ayant une taille plus petite que 256 octets, ici c'est-à-dire 32 octets. En arrondissant le résultat de (850-256*3)/32 au plus petit entier supérieur, le nombre de secteurs ayant une taille de 10 32 octets est de 3. Donc on n'utilise que trois secteurs de taille Ti (32 octets) parmi les N1 (=5) secteurs possibles. La taille mémoire virtuelle allouée est alors calculée par les moyens de traitement MT comme ci-après : 256*3+32*3 = 864 octets. Si l'on se réfère à la figure 4, on voit également que C2 vaut 1 en 15 valeur décimale (01 en binaire). Ledit calcul aura en outre deux étapes (El et E2) d'itérations si ladite combinaison sélectionnée CS (champs Cl et C2) des secteurs SMP ne peut pas être satisfaites, comme illustré sur la figure 10. Dans la première étape El, les moyens de traitement MT 20 vérifient s'il y a assez de secteurs physiques SMP de petite taille Ti libres correspondant à ladite combinaison sélectionnée CS, ici c'est-à-dire des secteurs SMP de 32 octets. Si le résultat de cette vérification est négatif, les moyens de traitement MT déterminent à nouveau une première combinaison 25 ajustée CA1 ayant le deuxième champ C2 incrémenté (2 au lieu de 1) et le premier champ Cl minimisé (0). Les moyens de traitement MT sélectionnent ensuite des secteurs SMP libres correspondant à ladite première combinaison ajustée CAL Dans la deuxième étape E2, les moyens de traitement MT 30 vérifient à nouveau s'il y a assez de secteurs SMP de petite taille Ti libres correspondant à ladite première combinaison ajustée CA1, ici c'est-à-dire des secteurs SMP de 256 octets. Si le résultat de cette dernière vérification est toujours négatif, les moyens de traitement MT déterminent à nouveau une deuxième 3045182 18 combinaison ajustée CA2 ayant le deuxième champ C2 incrémenté (3 au lieu de 2) et le premier champ Cl minimisé (0). Les moyens de traitement MT sélectionnent ensuite des secteurs SMP libres correspondant à ladite deuxième combinaison ajustée CA2 en 5 consultant un ou deux tables d'index des secteurs TIS1 à TIS4 de tailles correspondantes. Lorsque les secteurs SMP libres sont trouvés dans la mémoire physique MP. Les index de secteurs ISO à IS7 au sein de l'index de partition virtuelle IPV30 correspondant à ladite partition sélectionnée 10 PV30 sont remplis avec les adresses physiques initiales API de ces secteurs IPV30 SMPO à IPV30 SMP7. Il convient de noter que les index de secteurs ISO à IS7 sont ici remplis prioritairement avec les adresses physiques initiales API des secteurs SMP ayant une plus grande taille T2. 15 Dans le cas où il y a assez des secteurs SMP de grande taille T2 libres et de petite taille Ti libre, l'adresse virtuelle AV générée par les moyens de traitement MT est illustrée sur la figure 9. Ladite adresse virtuelle AV renvoyée au moyen de commande MC comporte les informations de la première partie Pl indiquant le 20 numéro (en binaire) de la partition virtuelle PV30 libre sélectionnée et la combinaison sélectionnée CS (les deux champs Cl et C2), et la deuxième partie P2. Cette partie P2 est mise à 0, ce qui correspond à l'adresse physique initiale API du premier secteur IPV30 SMPO alloué, c'est-à-dire ici, le premier index de secteurs IPV30 ISO correspondant 25 à la partition virtuelle IPV30. Ce secteur IPV30 ISO contient l'adresse physique initiale API d'un secteur IPV30 SMPO sélectionnée d'une taille de 256 octets. Le moyen de commande, par exemple le processeur CPU, incrémentera alors la partie P2 et chaque adresse virtuelle incrémentée 30 par le processeur correspondra à une adresse physique de la mémoire physique MP compte tenu de la table de correspondance TC La génération de l'adresse virtuelle AV est très rapide et nécessite très peu de cycles d'horloges processeurs. 3045182 19 L'encombrement surfacique sur silicium d'un tel dispositif DIS est également réduit car notamment la table de correspondance et les tables d'index TIPV, TISI à TIS4 sont incorporées au sein de la mémoire physique MP. 5 Les partitions virtuelles PV, autrement dit les mémoires tampons virtuelles (« virtual buffer » en anglais) peuvent avoir des tailles différentes selon les applications. L'invention n'est pas limitée aux modes de mise en oeuvre et de réalisation qui viennent d'être décrits mais en embrasse toutes les 10 variantes. Ainsi bien que l'on ait décrit un jeu de tailles de référence JTR croissantes possédant deux tailles différentes, ledit jeu peut comporter plus que deux tailles qui peuvent en outre être rangées selon un ordre de tailles quelconque à condition que cet ordre soit connu. 15 En conséquence, une combinaison de secteurs SMPk d'une sous-partition SPV, peut correspondre à une association d'un premier nombre N1 de secteurs SMPk d'une première taille Ti dudit jeu JTR et éventuellement d'au moins un deuxième nombre N2 de secteurs SMPk d'une deuxième taille T2 dudit jeu JTR immédiatement adjacente à la 20 première taille Ti dans l'ordre de tailles. La deuxième sous-partie SP2 peut donc comporter un premier champ Cl destiné à identifier ledit premier nombre N1 et éventuellement au moins ledit deuxième nombre N2, et un deuxième champ C2 destiné à identifier ladite première taille Ti et 25 éventuellement au moins ladite deuxième taille T2. Il serait ainsi possible d'avoir un troisième nombre et puis un quatrième nombre de secteurs SMPk et on aurait pu construire ladite sous-partition SPV, avec plusieurs secteurs SMPk de trois tailles différentes voire plus. Ceci dépend du nombre de bits alloués à ladite 30 deuxième sous-partie SP2 pour une configuration donnée. Sur un système de 32 bits, il y aurait un choix à faire entre le nombre et la flexibilité de configuration que l'on veut supporter, et la taille maximale des mémoires tampons virtuelles, c'est-à-dire le nombre de bits alloués à ladite deuxième partie P2. 3045182 20 En outre, une voire plusieurs itérations de la sélection d'une sous-partition virtuelle correspondant à une combinaison de secteurs et de la sélection de secteurs libres de la mémoire physique correspondant à ladite combinaison sélectionnée pourraient être 5 prévues s'il n'y avait pas assez de secteurs libres de tailles correspondantes. Il convient de noter que chaque itération détermine au moins une sous-partition ajustée SPVA, correspondant à au moins une combinaison ajustée CAS ayant le deuxième champ C2 rectifié par 10 rapport à celui C2 de ladite combinaison sélectionnée CS et le premier champ Cl rectifié lorsqu'il n'y a pas assez de secteurs SMPk libres de la taille la plus petite parmi ladite première taille Ti et éventuellement au moins ladite deuxième taille T2. Ledit deuxième champ C2 est par exemple rectifié de façon à 15 incrémenter ladite première taille Ti et éventuellement au moins ladite deuxième taille T2 identifiées par le deuxième champ C2 avant la rectification. Ledit premier champ Cl est par exemple rectifié de façon à n'identifier qu'un nombre de secteur SMPk ayant une taille minimisée parmi ladite première taille Ti et éventuellement au moins 20 ladite deuxième taille T2. Enfin les index de secteurs IS peuvent être remplis prioritairement avec les adresses physiques initiales API des secteurs SMPk libres sélectionnés ayant l'une des tailles dudit jeu de tailles JTR, par exemple la plus grande ou la plus petite taille mémoire. 25 Ainsi, les paramètres tels que le nombre de tailles différentes, le nombre de champs d'index, le nombre de sous-partitions virtuelles par partition, la priorité de remplissage d'adresses physiques initiales de secteurs physiques et le nombre de paramètres de secteurs, etc. dépendent des choix d'implémentation. REVENDICATIONS1. Procédé de gestion d'espace mémoire, comprenant en réponse à une demande d'allocation (DA) d'un espace mémoire virtuel ayant une taille mémoire donnée au sein d'une mémoire virtuelle (MV), ladite mémoire virtuelle (MV) étant partitionnée en partitions virtuelles (PV), chaque partition (PV,) étant subdivisée en sous- partitions virtuelles (SPV,), chaque sous-partition (SPV,) correspondant à une combinaison de plusieurs secteurs (SMPk) de tailles identiques ou différentes d'une mémoire physique (MP), a) une sélection d'une partition (PV,) libre, b) une sélection d'une sous-partition virtuelle (SPV,) correspondant à une combinaison de secteurs (SMPk) ayant une taille totale minimale couvrant ladite taille mémoire donnée de l'espace mémoire virtuel à allouer, c) une sélection de secteurs (SMPk) libres de la mémoire physique (MP) correspondant à ladite combinaison sélectionnée, d) une détermination d'une table de correspondance (TC) entre la partition virtuelle (PV,) sélectionnée et les adresses physiques initiales (API) desdits secteurs (SMPk) libres sélectionnés, et e) une génération d'une adresse virtuelle (AV) comportant une première partie (P1) permettant d'identifier ladite sous-partition virtuelle (SPV,) sélectionnée et une deuxième partie (P2) destinée à contenir les différentes adresses dudit espace mémoire virtuel alloué au sein de ladite sous-partition virtuelle (SPV,). 2. Procédé selon la revendication 1, dans lequel la première partie (P1) comporte une première sous-partie (SPI) permettant d'identifier ladite partition (PV,) libre et une deuxième sous-partie (SP2) permettant d'identifier la sous-partition (SPV,) sélectionnée au sein de ladite partition (PV,) libre. 3. Procédé selon la revendication 2, dans lequel les tailles des secteurs sont choisies dans un jeu de tailles de référence (JTR) rangées selon un ordre de tailles connu, la combinaison de secteurs (SMPk) d'une sous-partition (SPV ) correspond à une association d'un premier 3045182 22 nombre (N1) de secteurs (SMPk) d'une première taille (T1) dudit jeu (JTR) et éventuellement d'au moins un deuxième nombre (N2) de secteurs (SMPk) d'une deuxième taille (T2) dudit jeu (JTR) immédiatement adjacente à la première taille (Ti) dans l'ordre de 5 tailles, la deuxième sous-partie (SP2) comporte un premier champ (C1) destiné à identifier ledit premier nombre (N1) et éventuellement au moins ledit deuxième nombre (N2), et un deuxième champ (C2) destiné à identifier ladite première taille (T1) et éventuellement au moins ladite deuxième taille (T2). 10 4. Procédé selon la revendication 3, comprenant en outre, après l'étape c), au moins une itération de l'étape b) de façon à déterminer au moins une sous-partition ajustée (SPVAi) correspondant à au moins une combinaison ajustée (CAi) ayant le deuxième champ (C2) rectifié par rapport à celui (C2) de ladite combinaison 15 sélectionnée (CS) et le premier champ (C1) rectifié lorsqu'il n'y a pas assez de secteurs (SMPk) libres de la taille la plus petite parmi ladite première taille (T1) et éventuellement au moins ladite deuxième taille (T2), et au moins une itération de l'étape c) pour sélectionner des secteurs (SMPk) libres correspondant à ladite combinaison ajustée 20 (CA,). 5. Procédé selon l'une quelconque des revendications précédentes, dans lequel la table de correspondance (TC) comporte pour chaque partition virtuelle (PV,) plusieurs index de secteurs (ISO à IS7), chaque index de secteur (IS) étant destiné à être rempli avec 25 l'adresse physique initiale (API) d'un des secteurs (SMPk) libres sélectionnés. 6. Procédé selon la revendication 5, dans lequel les index de secteurs (IS) sont remplis prioritairement avec les adresses physiques initiales (API) des secteurs (SMPk) libres sélectionnés ayant l'une des 30 tailles dudit jeu de tailles (JTR). 7. Procédé selon l'une quelconque des revendications 3 à 6, dans lequel ladite deuxième partie (P2) de l'adresse virtuelle (AV) générée comporte plusieurs champs d'index (CI4, CI32, CI256 et CI2048) correspondant chacun à un index de secteurs (IS) dédié à des 3045182 23 secteurs (SMPk) d'une taille différente dudit jeu (JTR) de tailles de référence. 8. Procédé selon la revendication 7 comprenant en outre une génération, à partir desdits champs d'index (CI4, CI32, CI256 et 5 CI2048) et de ladite deuxième sous-partie (SP2), d'un premier paramètre de secteur (PSI) et d'au moins un deuxième paramètre de secteur (PS2). 9. Procédé selon la revendication 8 comprenant en outre au sein de ladite table de correspondance (TC) une désignation d'un des 10 index de secteurs (IS1) correspondant à la partition virtuelle (PV,) sélectionnée à partir de ladite première sous-partie (SPI), dudit premier paramètre (PS1) et d'une adresse de base (AB) indiquant l'adresse de début de ladite table de correspondance (TC). 10. Procédé selon la revendication 9 comprenant en outre au 15 sein dudit secteur physique (SP) sélectionné dont l'adresse physique initiale (API) est stockée dans ledit index de secteurs (IS1) une désignation d'une adresse physique absolue (APA) correspondant à ladite adresse virtuelle (AV) à partir dudit deuxième paramètre (PS2) et de ladite adresse physique initiale (API). 20 11. Dispositif de gestion d'espace mémoire, comprenant : une mémoire virtuelle (MV) partitionnée en partitions virtuelles (PVI), chaque partition (PV,) étant subdivisée en sous-partitions virtuelles (SPV,), une mémoire physique (MP) comportant plusieurs secteurs (SMPk), chaque sous-partition (SPV,) correspondant 25 à une combinaison de plusieurs secteurs (SMPk) de tailles identiques ou différentes, et des moyens de traitement (MT) configurés pour effectuer a) une sélection d'une partition (PV,) libre, b) une sélection d'une sous-partition virtuelle (SPV,) 30 correspondant à une combinaison (CS) de secteurs (SMPk) ayant une taille totale minimale couvrant ladite taille mémoire donnée de l'espace mémoire virtuel à allouer, c) une sélection de secteurs (SMPk) libres de la mémoire physique (MP) correspondant à ladite combinaison sélectionnée (CS), 3045182 24 d) une détermination d'une table de correspondance (TC) entre la partition virtuelle (PV,) sélectionnée et les adresses physiques initiales (API) desdits secteurs (SMPk) libres sélectionnés, et e) une génération d'une adresse virtuelle (AV) comportant une 5 première partie (P1) permettant d'identifier ladite sous-partition virtuelle (SPV,) sélectionnée et une deuxième partie (P2) destinée à contenir les différentes adresses dudit espace mémoire virtuel alloué au sein de ladite sous-partition virtuelle (SPV,). 12. Dispositif selon la revendication 11, dans lequel la 10 première partie (P1) comporte une première sous-partie (SPI) permettant d'identifier ladite partition (PV,) libre et une deuxième sous-partie (SP2) permettant d'identifier la sous-partition (SPV,) sélectionnée au sein de ladite partition (PV,) libre. 13. Dispositif selon la revendication 12, dans lequel les moyens 15 de traitement (MT) sont configurés pour choisir les tailles des secteurs dans un jeu de tailles de référence (JTR) rangées selon un ordre de tailles connu, la combinaison de secteurs d'une sous-partition (SPV,) correspondant à une association d'un premier nombre (N1) de secteurs (SMPk) d'une première taille (T1) dudit jeu (JTR) et éventuellement 20 d'au moins un deuxième nombre (N2) de secteurs (SMPk) d'une deuxième taille (T2) dudit jeu (JTR) immédiatement adjacente à la première taille (Ti) dans l'ordre de tailles, la deuxième sous-partie (SP2) comportant un premier champ (C1) destiné à identifier ledit premier nombre (N1) et éventuellement au moins ledit deuxième 25 nombre (N2), et un deuxième champ (C2) destiné à identifier ladite première taille (T1) et éventuellement au moins ladite deuxième taille (T2). 14. Dispositif selon la revendication 13, dans lequel les moyens de traitement (MT) sont en outre configurés pour déterminer au moins 30 une sous-partition ajustée (SPVA1) correspondant à au moins une combinaison ajustée (CA1) ayant le deuxième champ (C2) rectifié et le premier champ (C1) rectifié lorsqu'il n'y a pas assez de secteurs (SMPk) libres de la taille la plus petite entre ladite première taille (T1) et éventuellement au moins ladite deuxième taille (T2), et les moyens 3045182 25 de traitement (MT) étant en outre configurés pour sélectionner des secteurs (SMPk) libres correspondant à ladite combinaison ajustée (CA,) 15. Dispositif selon l'une quelconque des revendications 11 à 5 14, dans lequel la table de correspondance (TC) est incorporée dans la mémoire physique (MP) et comporte pour chaque partition virtuelle (PV,) plusieurs index de secteurs (ISO à IS7) destinés à être remplis chacun avec l'adresse physique initiale (API) d'un des secteurs (SMPk) libres sélectionnés. 10 16. Dispositif selon l'une quelconque des revendications 11 à 15, dans lequel les index de secteurs (ISO à IS7) sont remplis prioritairement avec les adresses physiques initiales (API) des secteurs (SMP) libres sélectionnés ayant l'une des tailles dudit jeu de tailles (JTR). 15 17. Dispositif selon l'une quelconque des revendications 11 à 16, dans lequel chaque adresse de ladite deuxième partie (P2) comporte plusieurs champs d'index (CI4, CI32, CI256 et CI2048) correspondant chacun à un index de secteurs (IS) dédié à des secteurs (SMPk) d'une taille différente dudit jeu (JTR). 20 18. Dispositif selon la revendication 20, dans lequel les moyens de traitement (MT) sont en outre configurés pour générer à partir desdits champs d'index (CI4, CI32, CI256 et CI2048) et de ladite deuxième sous-partie (SP2) un premier paramètre de secteur (PSI) et d'au moins un deuxième paramètre de secteur (PS2). 25 19. Dispositif selon la revendication 18, dans lequel la mémoire physique (MP) comporte en outre une adresse de base (AB) indiquant l'adresse de début de ladite table de correspondance (TC), les moyens de traitement (MT) étant par ailleurs configurés pour désigner au sein de ladite table de correspondance (TC) un des index de secteurs (IS1) 30 correspondant à la partition virtuelle (PV,) sélectionnée à partir de ladite première sous-partie (SPI), dudit premier paramètre (PSI) et de ladite adresse de base (AB). 20. Dispositif selon la revendication 19, les moyens de traitements (MT) sont par ailleurs configurés pour désigner au sein 3045182 26 dudit secteur (SMPk) sélectionné dont l'adresse physique initiale (API) est stockée dans ledit index de secteurs (IS1) l'adresse physique absolue (APA) correspondant à ladite adresse virtuelle (AV) à partir dudit deuxième paramètre (PS2) et de l'adresse physique initiale 5 (API).