FR 3075444 A1 20190621 FR 1762468 A 20171219 B16288 - DD17885ST 1 SYSTEME COMPORTANT UNE MEMOIRE ADAPTEE A METTRE EN OEUVRE DES OPERATIONS DE CALCUL Domaine La presente demande concerne le domaine des circuits mei-noire. Elle vise plus particulierement un circuit mei-noire adapte a mettre en oeuvre des operations de calcul. Elle vise en outre un systeme comportant un circuit mei-noire adapte a mettre en oeuvre des operations de calcul et un microprocesseur couple a ce circuit mei-noire. Exposé de fart anterieur Il a déjà ete propose, dans la demande de brevet francais N°16/54623 (DD16812/B14843) deposee par le demandeur le 24 mai 2016, un circuit mei-noire adapte non seulement a stocker des donnees, mais aussi a effectuer, in-situ, lors d'acces au contenu de la mei-noire, un certain nombre d'operations logiques et/ou arithmetiques ayant pour operandes des donnees stockees dans la mei-noire. Ce circuit comprend, comme dans un circuit mei-noire classique, une pluralite de cellules elementaires agencees en matrice selon des rang-6es et des colonnes, et un circuit de controle adapte a mettre en oeuvre des operations de lecture ou d'ecriture de donnees dans des rang-6es de la matrice. A la difference d'un circuit mei-noire classique dans lequel une seule rang-6e de la matrice peut etre selectionnee a la fois lors d'une B16288 - DD17885ST 2 operation de lecture, le circuit de controle est adapte selectionner simultanement en lecture une pluralite de rang-6es de la matrice de facon a realiser une operation logique ayant pour operandes des donnees contenues dans les rang-6es selectionnees. 5 La presente demande concerne la problematique de la commande d'un tel circuit mei-noire, et, plus particulierement, de la cooperation entre un tel circuit mei-noire et un microprocesseur couple a ce circuit mei-noire, notamment pour permettre une utilisation du circuit mei-noire a la fois comme mei-noire 10 conventionnelle, et comme circuit mei-noire intelligente pour mettre en oeuvre des operations de calcul. Résumé Ainsi, un mode de realisation prevoit un circuit mei-noire comportant : 15 une pluralite de cellules elementaires de stockage agencees en matrice selon des rang-6es et des colonnes ; un port d'entree/sortie de donnees ; un port d'entree d'adresses ; un port d'entree de selection de mode ; et 20 un circuit interne de commande configure pour : lire un signal de selection de mode applique sur le port de selection de mode ; lorsque le signal de selection de mode est a un premier 6-tat, lire une adresse d'une rang-6e sur le port d'entree d'adresses et mettre en oeuvre, via le port d'entree/sortie de donnees, une operation de lecture ou d'ecriture dans cette rang-6e ; et lorsque le signal de selection de mode est a un deuxieme 6-tat, lire sur le port d'entree/sortie de donnees un signal d'instruction et mettre en oeuvre une operation comprenant l'activation simultanee en lecture ou en ecriture d'au moms deux rang-6es selectionnees en fonction du signal d'instruction. Selon un mode de realisation, le circuit interne de commande est adapte a, lorsque le signal de selection de mode est 35 au deuxieme 6-tat, mettre en oeuvre une operation de calcul B16288 - DD17885ST 3 comprenant l'activation simultanee en lecture d'au moins deux rang-6es selectionnees en fonction du signal d'instruction. Selon un mode de realisation, le circuit interne de commande est en outre configure pour, lorsque le signal de 5 selection de mode est au deuxieme 6-tat, lire un signal d'adresse sur le port d'entree d'adresses et ecrire a l'adresse correspondante du circuit mei-noire un resultat de l'operation de calcul. Selon un mode de realisation, le circuit interne de 10 commande est adapte a, lorsque le signal de selection de mode est au deuxieme 6-tat, mettre en oeuvre une operation d'ecriture d'une meme donnee dans au moins deux rang-6es selectionnees en fonction du signal d'instruction. Selon un mode de realisation, le signal d'instruction 15 comprend un premier champ definissant un type d'operation a mettre en oeuvre, et un deuxieme champ definissant les adresses des rang-6es a selectionner pour la mise en oeuvre de l'operation. Selon un mode de realisation, le deuxieme champ comprend un premier sous-champ et un deuxieme sous-champ de log2(N) bits 20 chacun, au N est un entier designant le nombre de rang-6es de la matrice. Selon un mode de realisation, le circuit de commande interne comprend un circuit de selection de rang-6es adapte generer un vecteur de selection de rang-6es de N bits a partir des 25 premier et deuxieme sous-champs du deuxieme champ du signal d'instruction. Selon un mode de realisation, le circuit de selection de rang-6es comprend Q=log2(N) etages Ej, avec j entier allant de 0 a Q-1, chaque etage Ej comprenant une premiere cellule logique 30 de selection comprenant des premier et deuxieme noeuds d'entree et des premier et deuxieme noeuds de sortie, et 2j deuxiemes cellules logiques de selection comprenant chacune des premier, deuxieme et troisieme noeuds d'entree et des premier et deuxieme noeuds de sortie. Selon un mode de realisation : B16288 - DD17885ST 4 dans chaque etage Ej, chaque deuxieme cellule de l'etage a ses deuxieme et troisieme noeuds d'entree connectes respectivement aux premier et deuxieme noeuds de sortie de la premiere cellule de l'etage ; et 5 dans chaque etage Ej a l'exception de l'etage EQ_1, chaque deuxieme cellule de l'etage a son premier noeud de sortie connecte au premier noeud d'entree de l'une des deuxiemes cellules de l'etage Ej+1 et son deuxieme noeud de sortie connecte au premier noeud d'entree d'une autre des deuxiemes cellules de l'etage Ej+1- 10 Selon un mode de realisation : chaque premiere cellule comprend des premiere et deuxieme portes logiques OU, la premiere porte OU ayant une premiere entrée connectee au premier noeud d'entree de la cellule, une deuxieme entrée connectee au deuxieme noeud d'entree de la 15 cellule, et une sortie connectee au premier noeud de sortie de la cellule, et la deuxieme porte OU ayant une premiere entrée connecte au premier noeud d'entree de la cellule, une deuxieme entrée reliee au deuxieme noeud d'entree de la cellule par l'intermediaire d'un inverseur, et une sortie connectee au 20 noeud de sortie de la cellule ; et chaque deuxieme cellule comprend des premiere et deuxieme portes logiques ET, la premiere porte ET ayant une premiere entrée connectee au premier noeud d'entree de la cellule, une deuxieme entrée connectee au deuxieme noeud d'entree de la 25 cellule, et une sortie connectee au premier noeud de sortie de la cellule, et la deuxieme porte ET ayant une premiere entrée connectee au premier noeud d'entree de la cellule, une deuxieme entrée connectee au troisieme noeud d'entree de la cellule, et une sortie connectee au deuxieme noeud de sortie de la cellule. 30 Selon un mode de realisation, le circuit interne de commande est configure pour, lorsque le signal de selection de mode est au deuxieme 6-tat, appliquer les log2(N) bits du premier sous-champ respectivement sur les log2(N) deuxiemes noeuds d'entree des premieres cellules du circuit de selection de 35 rang-6es, et appliquer les log2(N) bits du deuxieme sous-champ deuxieme B16288 - DD17885ST 5 respectivement sur les log2(N) premier noueds d'entree des premieres cellules du circuit de selection de rang-6es. Un autre mode de realisation prevoit un systeme comportant un microprocesseur et un circuit mei-noire tel que defini 5 ci-dessus, le systeme comportant en outre : un bus de donnees reliant un port d'entree/sortie de donnees du microprocesseur au port d'entree/sortie de donnees du circuit mei-noire ; un bus d'adresses reliant un port de sortie d'adresses 10 du microprocesseur au port d'entree d'adresses du circuit mei-noire ; et un bus de selection de mode reliant un port de sortie de selection de mode du microprocesseur au port d'entree de selection de mode du circuit mei-noire. 15 Selon un mode de realisation, le microprocesseur est configure pour : dans un premier mode de fonctionnement : - appliquer un signal de selection de mode au premier 6-tat sur le bus de selection de mode ; 20 - appliquer un signal d'adresse de rang-6e sur le bus d'adresses ; et - lire ou ecrire une donnee dans la rang-6e correspondante du circuit mei-noire via le bus de donnees, et 25 dans un deuxieme mode de fonctionnement : - appliquer un signal de selection de mode au deuxieme 6-tat sur le bus de selection de mode ; et appliquer un signal d'instruction sur le bus de donnees. Breve description des dessins 30 Ces caracteristiques et avantages, ainsi que d'autres, seront exposés en detail dans la description suivante de modes de realisation particuliers faite a titre non limitatif en relation avec les figures jointes parmi lesquelles : la figure 1 est un schema electrique simplifie d'un 35 systeme comportant un microprocesseur et un circuit mei-noire ; B16288 - DD17885ST 6 la figure 2 est un diagramme illustrant un exemple de mise en oeuvre d'une operation de calcul conventionnelle dans le systeme de la figure 1 ; la figure 3 est un diagramme illustrant un exemple de 5 mise en oeuvre d'une operation de stockage et de lecture conventionnelle dans le systeme de la figure 1 ; la figure 4 est un schema bloc simplifie d'un exemple d'un mode de realisation d'un circuit mei-noire adapte a mettre en oeuvre des operations de calcul ; 10 la figure 5 est un schema electrique simplifie d'un exemple d'un mode de realisation d'un systeme comportant un microprocesseur et un circuit mei-noire adapte a mettre en oeuvre des operations de calcul ; la figure 6 illustre schematiquement un exemple de 15 format d'un signal d'instruction utilise par le microprocesseur pour commander le circuit mei-noire dans le systeme de la figure 5 ; la figure 7 est un schema electrique simplifie d'un exemple d'un circuit de selection de rang-6es d'un circuit mei-noire 20 adapte a mettre en oeuvre des operations de calcul ; et la figure 8 illustre plus en detail un exemple de realisation de cellules de selection elementaires du circuit de selection de rang-6es de la figure 8. Description detainee 25 De memes elements ont ete designes par de memes references dans les differentes figures. Par souci de clarte, seuls les elements utiles a la comprehension des modes de realisation decrits ont ete representes et sont detailles. En particulier, la realisation complete d'un circuit mei-noire adapte 30 a mettre en oeuvre des operations de calcul par activation simultanee en lecture d'une pluralite de rang-6es d'une matrice de cellules elementaires n'a pas ete detainee, les modes de realisation decrits etant compatibles avec les architectures connues de tels circuits, et notamment celles decrites dans la 35 demande de brevet francais N°16/54623 susmentionnee. On B16288 - DD17885ST 7 s'interesse ici plus particulierement aux moyens de communication entre le circuit mei-noire et un microprocesseur externe au circuit mei-noire. Dans la presente description, on utilise le terme "connecte pour designer une liaison electrique directe, sans 5 composant electronique intermediaire, par exemple au moyen d'une ou plusieurs pistes conductrices, et le terme "couple" ou le terme "relie, pour designer une liaison qui peut etre directe (signifiant alors "connecte") ou qui peut etre realisee par l'intermediaire d'un ou plusieurs composants. 10 La figure 1 est un schema electrique simplifie d'un exemple d'un systeme comportant un microprocesseur 100 (CPU) et un circuit mei-noire 150 (MEM) classique. Dans cet exemple, le systeme comprend un bus de donnees 122 (DATA BUS) qui relie, par exemple connecte, un port 15 d'entree/sortie de donnees 102 du microprocesseur 100 a un port d'entree/sortie de donnees correspondant 152 du circuit mei-noire 150. Le systeme comprend de plus un bus d'adresses 124 (ADDR BUS) qui relie, par exemple connecte, un port de sortie 20 d'adresses 104 du microprocesseur 100 a un port d'entree d'adresses correspondant 154 du circuit mei-noire 150. Le systeme comprend en outre un bus de controle 126 (CTRL BUS) qui relie, par exemple connecte, un port de sortie de controle 106 du microprocesseur 100 a un port d'entree de controle 25 correspondant 156 du circuit mei-noire 150. Le bus de controle 126 permet notamment d'activer le circuit mei-noire en lecture ou en ecriture. Par port d'entree et/ou de sortie, on entend ici un ensemble d'une ou plusieurs bornes conductrices d'entree et/ou de 30 sortie destine a recevoir et/ou a fournir un signal numerique sur un ou plusieurs bits. De plus, on entend par bus un ensemble d'un ou plusieurs elements conducteurs, par exemple une ou plusieurs pistes conductrices ou un ou plusieurs fils conducteurs, reliant respectivement la ou les bornes d'un port du microprocesseur a la 35 ou les bornes correspondantes d'un port de la mei-noire, et destine B16288 - DD17885ST 8 a transporter un signal numerique sur un ou plusieurs bits du microprocesseur a la mei-noire ou inversement. En pratique, les bus et ports de donnees et d'adresses sont adaptes a transmettre des signaux de plusieurs bits en 5 parallele, par exemple 8 a 64 bits pour le bus de donnees et 20 a 60 bits pour le bus d'adresses, c'est-d-dire qu'ils comprennent chacun plusieurs conducteurs paralleles. Le bus et le port de controle peuvent quant a eux, selon les architectures, comporter un unique conducteur (permettant de transmettre un signal binaire 10 unique), ou plusieurs conducteurs paralleles (permettant de transmettre un signal de plusieurs bits en parallele). Pour lire une donnee dans le circuit mei-noire 150, le microprocesseur 100 applique l'adresse de la donnee a lire sur le port d'entree d'adresses 154 du circuit mei-noire (via le port de 15 sortie d'adresses 104 du microprocesseur et le bus d'adresses 124), et applique un signal de commande en lecture sur le port d'entree de controle 156 du circuit mei-noire (via le port de sortie de controle 106 du microprocesseur et le bus de controle 126). Le microprocesseur lit ensuite la donnee correspondante sur le port 20 d'entree/sortie de donnees 152 du circuit mei-noire (via le bus de donnees 122 et le port d'entree/sortie de donnees 102 du microprocesseur). Pour ecrire une donnee dans le circuit mei-noire 150, le microprocesseur 100 applique l'adresse de la zone mei-noire a ecrire 25 sur le port d'entree d'adresses 154 du circuit mei-noire (via le port de sortie d'adresses 104 du microprocesseur et le bus d'adresses 124), applique la donnee a ecrire sur le port d'entree/sortie de donnees 152 du circuit mei-noire (via le port d'entree/sortie de donnees 102 du microprocesseur et le bus de 30 donnees 122), et applique un signal de commande en ecriture sur le port d'entree de controle 156 du circuit mei-noire (via le port de sortie de controle 106 du microprocesseur et le bus de controle 126). Le microprocesseur 100 est adapte a executer une suite 35 d'instructions memorisee dans une partie specifique de stockage B16288 - DD17885ST 9 d'instructions du circuit mei-noire 150, par exemple en vue de realiser des operations de traitement de donnees memorisees dans une autre partie du circuit mei-noire 150 ou dans un autre circuit mei-noire (non represents) relie aux memes bus d'adresses, de 5 donnees et de controle que le circuit mei-noire 150. Pour cela, dans l'exemple de la figure 1, le microprocesseur comprend un circuit de decodage d'instructions 111 (DECODER), un circuit mei-noire interne 112 (REG) comprenant ou plusieurs registres de stockage temporaire de donnees, un compteur 10 d'instructions 113 (PC), et une unite arithmetique et logique 114 (ALU) adaptee a mettre en oeuvre des operations arithmetiques et/ou logiques de base pour traiter des donnees contenues dans le circuit mei-noire interne 112. A chaque nouvelle instruction, le compteur d'instructions 113 est increments. Chaque instruction 15 est lue a l'adresse correspondante du circuit mei-noire 150, determinee en fonction de l'etat du compteur d'instructions 113. L'instruction est ensuite decodee par le circuit de decodage d'instructions 111 du microprocesseur, puis executee par le microprocesseur, etant entendu que l'execution de l'instruction 20 peut ou non comprendre un acces en lecture ou en ecriture au circuit mei-noire 150. La figure 2 est un diagramme illustrant un exemple de procede demise en oeuvre d'une operation de calcul dans le systeme de la figure 1. Plus particulierement, on considere dans cet 25 exemple que le circuit mei-noire interne 112 du microprocesseur 100 comprend deux registres de stockage de donnees r0 et rl (non de-taffies sur la figure 1), et on considere a titre illustratif la mise en oeuvre d'une instruction de calcul de type "add rO, rl, CST" (en langage assembleur), consistant a additionner au 30 contenu du registre rl la valeur constante CST, et a ecrire le resultat de l'addition dans le registre r0. Le procede de la figure 2 comprend une 6-tape initiale 201 (FETCH) de lecture de l'instruction dans le circuit mei-noire 150. Pour cela, le microprocesseur applique sur le port d'entree 35 d'adresses 154 du circuit 150 (via le bus d'adresses 124) B16288 - DD17885ST 10 l'adresse de l'instruction a lire, determinee en fonction de la valeur du compteur d'instructions 113. Le microprocesseur applique en meme temps un signal de commande en lecture sur le port d' entree de controle 156 du circuit mei-noire 150 (via le bus de controle 5 126). L'instruction, codee sous la forme d'une donnee numerique, est alors lue par le microprocesseur sur le port d'entree/sortie de donnees 152 du circuit mei-noire 150 (via le bus de donnees 122). Le procede de la figure 2 comprend en outre une 6-tape 203 (DECODE) de decodage, par le circuit de decodage 10 d'instructions 111 du microprocesseur, de l'instruction lue l'etape 201. Le procede de la figure 2 comprend en outre une 6-tape 205 (UPDATE PC) de mise a jour du compteur d'instruction 113, consistant par exemple a incrementer le compteur 113. 15 Le procede de la figure 2 comprend de plus une 6-tape 207 (EXE) d'execution de l'instruction proprement dite, c'est-a-dire, dans exemple, d'execution, par l'unite arithmetique et logique 114, de l'addition rl+CST. Le procede de la figure 2 comprend de plus une 6-tape 209 20 (WRITE BACK) d'ecriture du resultat de l'operation dans le registre r0. La figure 3 est un diagramme illustrant un exemple de procede de mise en oeuvre d'une operation de stockage en mei-noire d'une donnee dans le systeme de la figure 1. Plus 25 particulierement, on considere, comme dans l'exemple precedent, que le circuit mei-noire interne 112 du microprocesseur 100 comprend deux registres de stockage de donnees r0 et rl, et on considere titre illustratif la mise en oeuvre d'une instruction de stockage de donnee de type "store rO, rl" (en langage assembleur), 30 consistant a stocker la valeur contenue dans le registre rl l'adresse contenue dans le registre r0. Le procede de la figure 3 comprend des 6-tapes initiales 301 (FETCH), 303 (DECODE), 305 (UPDATE PC) et 307 (EXE) similaires ou identiques aux 6-tapes 201, respectivement 203, respectivement 35 205, respectivement 207 du procede de la figure 2. Dans l'exemple B16288 - DD17885ST 11 de la figure 3, lors de l'etape 307, les valeurs memorisees dans les registres r0 et rl sont appliquees respectivement sur le port d'adresse 104 et sur le port de donnees 102 du microprocesseur. De plus, un signal de commande en ecriture est applique sur le 5 port de controle 106 du microprocesseur. Le procede de la figure 3 comprend de plus une 6-tape 309 (ACCESS MEM) d'acces a la mei-noire pour effectivement realiser l'operation d'ecriture dans la mei-noire. Lors de cette 6-tape, le microprocesseur applique sur le port d'entree d'adresses 154 du 10 circuit mei-noire 150 (via le bus d'adresses 124) l'adresse stockee dans le registre r0 du circuit mei-noire interne 112, applique sur le port d'entree/sortie de donnees 152 du circuit mei-noire 150 (via le bus de donnees 122) la donnee contenue dans le registre rl, et applique sur le port d'entree de controle 156 du circuit mei-noire 15 150 (via le bus de controle 126) un signal de commande en ecriture. Pour mettre en oeuvre une operation de chargement d'une donnee stockee dans le circuit mei-noire, par exemple une operation de type "load rO, rl" (en langage assembleur), consistant a ecrire dans le registre rl la valeur stockee dans le circuit mei-noire a 20 l'adresse contenue dans le registre rO, le procede est similaire a celui de la figure 3, a ceci pres que les 6-tapes 307/309 consistent alors en un acces en lecture au circuit mei-noire 150. Plus particulierement, lors de l'etape 309, le microprocesseur applique sur le port d'entree d'adresses 154 du circuit mei-noire 25 150 (via le bus d'adresses 124) l'adresse stockee dans le registre rO, applique sur le port d'entree de controle 156 du circuit mei-noire 150 (via le bus de controle 126) un signal de commande en lecture, puis ecrit dans le registre rl la donnee lue sur le port d'entree/sortie de donnees 152 du circuit mei-noire 150 (via le bus 30 de donnees 122). La figure 4 est un schema tres simplifie illustrant, sous forme de blocs fonctionnels, un exemple d'un mode de realisation d'un circuit mei-noire adapte a mettre en oeuvre des operations de calcul. Le circuit mei-noire de la figure 4 comprend 35 une matrice 401 (SRAM BITCELL ARRAY) de cellules elementaires, B16288 - DD17885ST 12 par exemple des cellules SRAM. A titre d'exemple, la matrice 401 est similaire aux matrices decrites dans la demande de brevet francais N°16/54623 susmentionnee. Le circuit mei-noire de la figure 4 comprend en outre un circuit de selection de rang-6es 403 5 (RS) adapte a selectionner une unique rang-6e de la matrice 401 pour realiser une operation de lecture ou d'ecriture classique, ou a selectionner simultanement en lecture une ou plusieurs rang-6es de la matrice 401, de facon a mettre en oeuvre, sur les pistes conductrices de sortie de colonne de la matrice, des 10 operations logiques de base ayant pour operandes des donnees stockees dans les rang-6es selectionnees. Le circuit de selection de rang-6es 403 peut comprendre un registre specifique 404 de N bits, au N designe le nombre de rang-6es de la matrice 401, adapte a contenir un vecteur de selection d'operandes comme cela sera 15 detaille ci-apres en relation avec les figures 6, 7 et 8. Le circuit mei-noire de la figure 4 comprend de plus un circuit logique de calcul 405 (ALU LIKE) adapte a mettre en oeuvre des operations de calcul supplementaires a partir des signaux lus sur les pistes conductrices de sortie de colonne de la matrice. Le circuit 20 mei-noire de la figure 4 comprend en outre un circuit d'entree/sortie 407 (I/O) reliant les colonises de la matrice a des bornes de connexion a l'exterieur du circuit mei-noire, par exemple a un port d'entree/sortie de donnees (non detaille sur la figure 4) du circuit mei-noire. Le circuit mei-noire de la figure 4 25 comprend en outre un circuit de controle 409 (CTRL) relie aux circuits 403, 405 et 407. La figure 5 est un schema electrique simplifie d'un exemple d'un mode de realisation d'un systeme comportant un microprocesseur 500 (CPU) et un circuit mei-noire 550 (SMART MEM) 30 adapte a mettre en oeuvre des operations de calcul, par exemple un circuit mei-noire du type decrit en relation avec la figure 4. Dans le mode de realisation de la figure 5, on a cherche a garder une architecture de systeme la plus proche possible d'une architecture classique telle que decrite en relation avec la 35 figure 1. B16288 - DD17885ST 13 Dans cet exemple, le systeme comprend un bus de donnees 522 (DATA BUS) qui relie, par exemple connecte, un port d'entree/sortie de donnees 502 du microprocesseur 500 a un port d'entree/sortie de donnees correspondant 552 du circuit 5 mei-noire 550. Le systeme comprend de plus un bus d'adresses 524 (ADDR BUS) qui relie, par exemple connecte, un port de sortie d'adresses 504 du microprocesseur 500 a un port d'entree d'adresses correspondant 554 du circuit mei-noire 550. 10 Le systeme comprend en outre un bus de controle 526 (CTRL BUS) qui relie, par exemple connecte, un port de sortie de controle 506 du microprocesseur 500 a un port d'entree de controle correspondant 556 du circuit mei-mire 550. Les bus et ports de donnees, d'adresses et de controle 15 du systeme de la figure 5 sont par exemple identiques ou similaires a ceux du systeme de la figure 1. Comme cela sera explique plus en detail ci-apres, l'utilisation de ces bus et ports de donnees, d'adresses et de controle est toutefois differente de l'utilisation classique, de facon a permettre notamment de 20 commander le circuit mei-noire pour mettre en oeuvre des operations de calcul. Le systeme de la figure 5 comprend de plus un bus de selection de mode de fonctionnement 528 (ad BUS) qui relie, par exemple connecte, un port de sortie de selection de mode de 25 fonctionnement 508 du microprocesseur 500 a un port d'entree de selection de mode de fonctionnement correspondant 558 du circuit mei-noire 550. A titre d'exemple, le bus et les ports de selection de mode de fonctionnement du systeme de la figure 5 comportent un 30 unique conducteur (permettant de transmettre un signal binaire unique), ou plusieurs conducteurs paralleles (permettant de transmettre un signal de plusieurs bits en parallele). Bien que le bus et les ports de selection de mode de fonctionnement du systeme de la figure 5 aient ete representes 35 separes des bus et ports de donnees, d'adresses et de controle du B16288 - DD17885ST 14 systeme, les modes de realisation decrits ne se limitent pas a cet exemple particulier. En pratique, les bus et ports de selection de mode de fonctionnement du systeme de la figure 5 peuvent correspondre a des conducteurs inutilises des bus et ports 5 de donnees, d'adresses ou de controle du systeme. Le microprocesseur 500 comprend un circuit de decodage d'instructions 511 (DECODER), un circuit mei-noire interne 512 (REG) comprenant un ou plusieurs registres de stockage temporaire de donnees, un compteur d'instructions 513 (PC), et une unite 10 arithmetique et logique 514 (ALU). Les circuits 511, 512, 513 et 514 du microprocesseur 500 sont par exemple identiques ou similaires aux circuits 111, respectivement 112, respectivement 113, respectivement 114 du microprocesseur 100 de la figure 1. Pour lire ou ecrire une donnee dans le circuit mei-noire 15 550, le microprocesseur 500 commande le circuit mei-noire 550 selon un premier mode de fonctionnement dit classique. Pour cela, le microprocesseur 500 applique un signal de selection de mode de fonctionnement d'un premier 6-tat ou d'une premiere valeur sur le port d'entree de selection de mode de fonctionnement 558 du 20 circuit mei-noire (via le port de sortie de selection de mode de fonctionnement 508 du microprocesseur et le bus de selection de mode de fonctionnement 528). Les signaux appliques sur les bus et ports d'adresses, de donnees et de controle sont quant a eux similaires a ce qui a ete decrit en relation avec la figure 1. 25 Autrement dit, pour une operation de lecture d'une donnee dans le circuit mei-noire, le microprocesseur applique l'adresse de la donnee a lire sur le port d'entree d'adresses 554 du circuit mei-noire (via le port de sortie d'adresses 504 du microprocesseur et le bus d'adresses 524), et applique un signal de commande en 30 lecture sur le port d'entree de controle 556 du circuit mei-noire (via le port de sortie de controle 506 du microprocesseur et le bus de controle 526). Le microprocesseur lit ensuite la donnee correspondante sur le port d'entree/sortie de donnees 552 du circuit mei-noire (via le bus de donnees 522 et le port 35 d'entree/sortie de donnees 502 du microprocesseur). Pour ecrire B16288 - DD17885ST 15 une donnee dans le circuit mei-noire, le microprocesseur applique l'adresse de la zone mei-noire a ecrire sur le port d'entree d'adresses 554 du circuit mei-noire (via le port de sortie d'adresses 504 du microprocesseur et le bus d'adresses 524), 5 applique la donnee a ecrire sur le port d'entree/sortie de donnees 552 du circuit mei-noire (via le port d'entree/sortie de donnees 502 du microprocesseur et le bus de donnees 522), et applique un signal de commande en ecriture sur le port d'entree de controle 556 du circuit mei-noire (via le port de sortie de controle 506 du 10 microprocesseur et le bus de controle 526). Pour realiser une operation de calcul directement au sein du circuit mei-noire 550, le microprocesseur 500 commande le circuit mei-noire selon un deuxieme mode de fonctionnement dit intelligent. Pour cela, le microprocesseur applique un signal de 15 selection de mode de fonctionnement d'un deuxieme 6-tat ou d'une deuxieme valeur sur le port d'entree de selection de mode de fonctionnement 558 du circuit mei-noire (via le port de sortie de selection de mode de fonctionnement 508 du microprocesseur et le bus de selection de mode de fonctionnement 528). Le 20 microprocesseur applique en outre simultanement un signal d'instruction sur le port d'entree/sortie de donnees 552 du circuit mei-noire (via le port d'entree/sortie de donnees 502 du microprocesseur et le bus 522). Le microprocesseur peut en outre appliquer simultanement un signal d'adresse sur le port d'entree 25 d'adresses 554 du circuit mei-noire (via le port de sortie d'adresses 504 du microprocesseur et le bus d'adresses 524), pour indiquer au circuit mei-noire a quel emplacement mei-noire ecrire le resultat de l'operation de calcul. Le circuit de controle interne du circuit mei-noire 550 30 (le circuit 409 de la figure 4) est adapte a lire le signal de selection de mode applique sur le port d'entree de selection de mode 558 du circuit mei-noire. Lorsque le signal de selection de mode de fonctionnement est dans le premier 6-tat, correspondant au mode de fonctionnement 35 classique du circuit mei-noire, le circuit de controle interne du B16288 - DD17885ST 16 circuit memoire interprete les signaux appliques sur les bus et ports d'adresses, de donnees et de controle comme des signaux de commande classique. Plus particulierement, le signal d'adresse appliqué sur le port d'entree d'adresses 554 est lu et decode (par 5 le circuit de controle et/ou le circuit de selection de rang-6es), et la rang-6e correspondante est activee de facon a mettre en oeuvre l'operation de lecture ou d'ecriture requise. Lorsque le signal de selection de mode de fonctionnement est dans le deuxieme 6-tat, correspondant au mode de fonctionnement 10 intelligent du circuit memoire, le circuit de controle interne du circuit memoire interprete le signal applique sur le port d'entree/sortie de donnees du circuit memoire comme un signal d'instruction indiquant au circuit memoire quelle operation de calcul executer et dans quelles rang-6es du circuit memoire se 15 situent les operandes de ce calcul. Le signal d'instruction est lu et decode (par le circuit de controle et le circuit de selection de rang-6es), et les rang-6es correspondantes sont activees en lecture de facon a mettre en oeuvre l'operation de calcul requise. Le resultat de l'operation de calcul peut etre reecrit directement 20 dans le circuit memoire 550 (sans repasser par le circuit memoire interne du microprocesseur), a l'adresse indiquee sur le port d'entree d'adresses 554 du circuit memoire. Un avantage du systeme de la figure 5 est qu'il permet de realiser des acces classiques au circuit memoire 550, par 25 exemple en vue de realiser des operations de calcul conventionnelles au moyen de l'unite arithmetique et logique 504 du microprocesseur 500, et des acces intelligents au circuit memoire 550, en vue de realiser des operations de calcul directement au sein du circuit memoire 550 de facon a soulager 30 l'unite arithmetique et logique 504 du microprocesseur et limiter les echanges de donnees entre le circuit memoire 550 et le microprocesseur 500. la figure 6 illustre schematiquement un exemple de format d'un signal d'instruction utilise par le microprocesseur B16288 - DD17885ST 17 500 du systeme de la figure 5, pour commander la mise en oeuvre d'une operation de calcul par le circuit mei-noire 550 du systeme. Le signal d'instructions represents en figure 6 est un signal sur plusieurs bits applique par le microprocesseur sur le 5 port d'entree/sortie de donnees 552 du circuit mei-noire 550. Ce signal d'instruction comprend un premier champ OP CODE sur un ou plusieurs bits, definissant le type d'operation logique ou arithmetique a realiser au sein du circuit mei-noire. Le signal d'instruction comprend en outre un deuxieme 10 champ OPERAND SELECT sur plusieurs bits, definissant les adresses des rang-6es contenant les operandes de l'operation a realiser. On notera qu'une operation de calcul mise en oeuvre au sein du circuit mei-noire peut comporter un nombre d'operandes eleve, par exemple superieur a deux, et pouvant aller jusqu'au 15 nombre total de rang-6es du circuit mei-noire. Un probleme qui se pose est celui de l'adressage des donnees operandes. En effet, dans un circuit mei-noire classique de N rang-6es, au N est un entier superieur ou egal a 2 (par exemple une puissance de 2), le circuit de controle comprend generalement un decodeur d'adresse de rang-6e 20 unique adapts a recevoir une adresse codee sur log2(N) bits, et a activer la rang-6e correspondante en vue d'une operation de lecture ou d'ecriture dans cette rang-6e. Pour permettre d'activer simultanement en lecture K rang-6es distinctes de la matrice de facon a realiser une operation logique a K operandes, au K est un 25 entier superieur ou egal a 2, une possibilite serait de repliquer K fois le decodeur d'adresse de rang-6e, de facon a pouvoir transmettre simultanement les K adresses d'operandes au circuit de controle lors de la mise en oeuvre d'une operation de calcul. Cette solution implique toutefois une augmentation importante de 30 la surface et de la consommation energetique du circuit mei-noire, et n'est en pratique pas compatible avec les dimensions usuelles des bus reliant un circuit mei-noire a un microprocesseur, notamment lorsque le nombre d'operandes K est important (par exemple K = N). Ainsi, dans un mode de realisation prefers, le champ 35 OPERAND SELCT du signal d'instruction de la figure 6 definit, sous B16288 - DD17885ST 18 forme codee, un vecteur de selection d'operandes permettant d'identifier les rang-6es a selectionner lors de la mise en oeuvre de l'operation de calcul. Le vecteur de selection d'operandes comprend par exemple N bits, au N est le nombre de rang-6es du 5 circuit mei-mire. Le vecteur de selection d'operandes est utilise comme masque de selection pour activer simultanement en lecture une pluralite de rang-6es du circuit mei-noire lors de la mise en oeuvre de l'operation de calcul. A titre d'exemple, pour chaque bit du vecteur de selection d'operandes, la rang-6e correspondante 10 du circuit mei-mire est activee en lecture si le bit correspondant du vecteur de selection d'operandes est a la valeur binaire '1', et n' est pas activee en lecture si le bit correspondant du vecteur de selection d'operandes est a la valeur binaire '0'. A titre d'exemple, le champ OPERAND SELCT contient deux 15 sous-champs ADDR et MASK de log2(N) bits chacun, dont la combinaison definit un vecteur de selection d'operandes de N bits. Le decodage du champ OPERAND SELECT peut etre realise au sein du circuit mei-noire, par exemple par le circuit de selection de rang-6es du circuit mei-noire. Une fois decode, le vecteur de 20 selection de rang-6es peut etre stocke dans un registre specifique du circuit mei-mire en vue d'activer en lecture les rang-6es selectionnees lors de la mise en oeuvre de l'operation de calcul proprement dite. Un exemple de realisation d'un circuit de decodage adapte a generer un vecteur de selection d'operandes 25 partir du champ OPERAND SELECT va maintenant etre decrit en relation avec les figures 7 et 8. La figure 7 est un schema electrique simplifie d'un exemple de realisation d'un circuit de selection de rang-6es d'un circuit mei-mire adapte a mettre en oeuvre des operations de calcul 30 (par exemple le circuit de selection de rang-6es 403 de la figure 4). On considere dans cet exemple un nombre N de rang-6es selectionnables egal a 16, etant entendu que l'homme du métier saura adapter le circuit decrit a un nombre de rang-6es different. B16288 - DD17885ST 19 Le circuit de la figure 7 comprend des premieres cellules logiques de selection elementaires 701 a deux entrées a et b et deux sorties c et d chacune, et des deuxiemes cellules logiques de selection elementaires 703 a trois entrées e, f et g 5 et deux sorties h et i chacune. Plus particulierement, le circuit de la figure 7 comprend Q=log2(N) etages Ej, avec j entier allant de 0 a Q-1 (Q=4 dans cet exemple), chaque etage Ej comprenant une cellule 701 et 27 cellules 703. 10 Dans chaque etage Ej, chaque cellule 703 de l'etage a ses noeuds d'entree f et g connectes respectivement aux noeuds de sortie c et d de la cellule 701 de l'etage. De plus, dans chaque etage Ej a l'exception de l'etage EQ_1, chaque cellule 703 de l'etage a son noeud de sortie h 15 connecte au noeud d'entree e de l'une des cellules 703 de l'etage Ej+1 et son noeud de sortie i connecte au noeud d'entree e d'une autre des cellules 703 de l'etage Ej+1, etant entendu que : - dans chaque etage Ej a l'exception de l'etage EQ_1, chaque cellule 703 de l'etage a son noeud de sortie h connecte au 20 noeud d'entree e d'une et d'une seule cellule 703 de l'etage Ej+1 et a son noeud de sortie i connecte au noeud d'entree e d'une et une seule cellule 703 de l'etage Ej+1 ; et - dans chaque etage Ej a l'exception de l'etage E0, chacune des cellules 703 de l'etage a son noeud d'entree e connecte 25 a un et un seul noeud de sortie h ou i d'une cellule 703 de l'etage Ej-1- La table de verite des cellules 701 est la suivante (en designant les signaux logiques d'entree et de sortie d'une cellule 701 par les memes references que les bornes d'entree et de sortie 30 correspondantes de la cellule) : a b c d 0 0 0 1 0 1 1 0 B16288 - DD17885ST 20 1 0 1 1 1 1 1 1 La table de verite des cellules 703 est la suivante (en designant les signaux logiques d'entree et de sortie d'une cellule 703 par les memes references que les bornes d'entree et de sortie correspondantes de la cellule) : e f ghi 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 1 1 1 0 1 0 1 1 1 1 1 5 Le fonctionnement du circuit de la figure 7 est le suivant. Lors de la mise en oeuvre d'une operation de calcul au sein du circuit mei-noire, les Q=log2(N) bits du sous-champ MASK du champ OPERAND SELECT du signal d'instruction sont appliques 10 respectivement, en parallele, sur les bornes d'entree a des cellules 701 des etages E0 a EQ_i_ du circuit de selection de rang-6es. De plus, les Q=log2(N) bits du sous-champ ADDR du champ OPERAND SELECT du signal d'instruction sont appliqués respectivement, en parallele, sur les bornes d'entree b des 15 cellules 701 des etages E0 a EQ_i_ du circuit de selection de rang-6es. Un signal d' activation EN a l'etat logique 1 est en outre applique sur la borne d'entree e de la cellule 703 de l'etage E0. Les signaux logiques de sortie fournis sur les bornes h et i des 2Q-1 cellules 703 de l'etage EQ_i_ correspondent respectivement 20 aux N bits R , R , R d'un vecteur de selection de rang-6es R utilise pour decider d'activer ou non en lecture chacune des N rang-6es de la matrice lors de la mise en oeuvre de l'operation de calcul. B16288 - DD17885ST 21 La figure 8 illustre plus en detail un exemple de realisation d'une cellule elementaire 701 (en partie droite de la figure 8) du circuit de la figure 7, et un exemple de realisation d'une cellule elementaire 703 (en partie gauche de la figure 8) 5 du circuit de la figure 7. Dans cet exemple, la cellule 701 comprend deux portes logiques OU 801 et 802 a deux entrées et un sortie chacune. La porte OU 801 a une premiere entrée connectee au noeud d'entree a de la cellule et une deuxieme entrée connectee au noeud d'entree 10 b de la cellule. La porte OU 802 a quant a elle une premiere entrée connecte au noeud d'entree a de la cellule et une deuxieme entrée reliee au noeud d'entree b de la cellule par l'intermediaire d'un inverseur 803. Le noeud de sortie de la porte OU 801 est connectee au noeud de sortie c de la cellule, et le 15 noeud de sortie de la porte OU 802 est connecte au noeud de sortie d de la cellule. Dans cet exemple, la cellule 703 comprend deux portes logiques ET 811 et 812 a deux entrées et une sortie chacune. La porte ET 811 a une premiere entrée connectee au noeud d'entree e 20 de la cellule et une deuxieme entrée connectee au noeud d'entree f de la cellule. La porte ET 812 a quant a elle une premiere entrée connectee au noeud d'entree e de la cellule et une deuxieme entrée connectee au noeud d'entree g de la cellule. Le noeud de sortie de la porte ET 811 est connecte au noeud de sortie h de la 25 cellule, et le noeud de sortie de la porte ET 812 est connecte au noeud de sortie i de la cellule. De facon avantageuse, lors de la mise en oeuvre d'une operation de calcul au sein du circuit mei-noire 550, la preparation des signaux de commande du circuit mei-noire 550 et la transmission 30 de ces signaux de commande au circuit mei-noire 550 peuvent etre realisees en utilisant uniquement le jeu d'instructions classique du microprocesseur 550. Ceci est rendu possible par le fait que les signaux de commande du circuit mei-noire 550 en mode intelligent transitent par les memes bus de donnees, d'adresses et de controle B16288 - DD17885ST 22 que les signaux de commande du circuit mei-noire 550 en mode classique. A titre d'exemple, pour transmettre au circuit mei-noire 550 les signaux de commande necessaires a la mise en oeuvre d'une 5 operation de calcul au sein du circuit mei-mire 550, on peut prevoir d'utiliser une instruction de type "store rO, rl" (en langage assembleur), classiquement utilisee pour stocker la valeur contenue dans le registre rl a l'adresse du circuit mei-noire contenue dans le registre r0. Avant l'execution de l'instruction 10 "store" proprement dite, on prevoit des 6-tapes initiales de preparation des registres r0 et rl du microprocesseur pour ecrire respectivement, dans le registre rl, le signal d'instruction definissant l'operation de calcul a realiser au sein du circuit mei-mire 550, par exemple au format decrit en relation avec la 15 figure 6, et, dans le registre rO, l'adresse a laquelle ecrire le resultat de l'operation de calcul. Un avantage de ce mode de fonctionnement reside dans sa compatibilite avec les microprocesseurs existants. A titre de premiere variante, pour mettre en oeuvre une 20 operation de calcul au sein du circuit mei-mire 550, la preparation des signaux de commande du circuit mei-mire 550 et la transmission de ces signaux de commande au circuit mei-mire 550 peuvent etre realisees en utilisant une instruction specifique, venant s'ajouter au jeu d'instructions classique du microprocesseur 550. 25 A titre de deuxieme variante, pour mettre en oeuvre une operation de calcul au sein du circuit mei-mire 550, la preparation des signaux de commande du circuit mei-mire 550 et la transmission de ces signaux de commande au circuit mei-mire 550 peuvent etre realisees en utilisant un jeu d'instructions specifique, 30 comprenant par exemple une instruction specifique par type d'operation de calcul realisable au sein du circuit mei-noire, le jeu d'instructions specifique venant s'ajouter au jeu d'instructions classique du microprocesseur 550. Les premiere et deuxieme variantes susmentionnees ont 35 pour avantage de faciliter le travail de compilation d'un code B16288 - DD17885ST 23 source en une suite d'instructions executable par le microprocesseur. Toutefois, un inconvenient de ces variantes reside dans leur incompatibilite avec les microprocesseurs ne reconnaissant pas les instructions specifiques au mode de 5 fonctionnement intelligent du circuit mei-noire. Comme explique ci-dessus, un avantage du systeme de la figure 5 est qu'il permet de realiser des acces classiques au circuit mei-noire 550, par exemple en vue de realiser des operations de calcul conventionnelles au moyen de l'unite arithmetique et 10 logique 504 du microprocesseur 500, et des acces intelligents au circuit mei-noire 550, en vue de realiser des operations de calcul directement au sein du circuit mei-noire 550. Lors de la programmation d'un logiciel destine a etre execute dans un tel systeme, le programmeur pourra tirer profit 15 de ces deux modes de fonctionnement. A titre d'exemple, it pourra choisir de sa propre initiative, pour chaque operation de calcul, s'il souhaite que l'operation soit realisee de facon conventionnelle par l'unite arithmetique et logique du microprocesseur, ou s'il souhaite que l'operation soit realisee 20 au sein du circuit mei-noire. A titre de variante, ce choix peut etre realise de facon automatique par un logiciel de compilation de code source, de facon a optimiser la vitesse d'execution du programme et/ou la consommation electrique du systeme. Dans ce dernier cas, le programmeur peut utiliser un langage de 25 programmation classique, ne permettant pas de choisir directement le mode de fonctionnement souhaite pour chaque operation. Des modes de realisation particuliers ont ete decrits. Diverses variantes et modifications apparaitront a l'homme de fart. En particulier, le mode de fonctionnement intelligent du 30 circuit mei-noire peut etre utilise pour realiser des operations autres que des operations de calcul. A titre d'exemple, le mode de fonctionnement intelligent du circuit mei-noire peut etre utilise pour realiser une ecriture simultanee d'une meme donnee dans plusieurs rang-6es de la mei-noire. Dans ce cas, les rang-6es a ecrire 35 peuvent etre selectionnees au moyen d'un vecteur de selection de B16288 - DD17885ST 24 rang-6es code selon le format de codage decrit en relation avec les figures 6, 7 et 8. Par ailleurs, les modes de realisation decrits ne se limitent pas a l'exemple de format de signal d'instruction decrit 5 en relation avec les figures 6, 7 et 8 pour commander le circuit mei-noire dans le mode de fonctionnement intelligent. En particulier, dans le cas d'une operation necessitant la selection d'un nombre limite de rang-6es, par exemple une operation necessitant la selection de deux rang-6es seulement (par exemple 10 une operation de calcul a deux operandes ou une operation d'ecriture simultanee d'une meme donnee dans deux rang-6es du circuit mei-noire), on pourra prevoir de transmettre les adresses completes des rang-6es a selectionner directement sur le bus de donnees, sans passer par un codage au moyen d'un vecteur de 15 selection d'operandes, et ainsi gagner au moms un cycle d'horloge pour la mise en oeuvre de l'operation. En outre, les modes de realisation decrits ne se limitent pas a l'exemple REVENDICATIONS1. Circuit mei-noire (550) comportant : une pluralite de cellules elementaires de stockage agencees en matrice selon des rang-6es et des colonnes ; un port d'entree/sortie de donnees (552) ; un port d'entree d'adresses (554) ; un port d'entree de selection de mode (558) ; et un circuit interne de commande configure pour : lire un signal de selection de mode applique sur le port de selection de mode (558) ; lorsque le signal de selection de mode est a un premier 6-tat, lire une adresse d'une rang-6e sur le port d'entree d'adresses (554) et mettre en oeuvre, via le port d'entree/sortie de donnees (552), une operation de lecture ou d'ecriture dans cette rang-6e ; et lorsque le signal de selection de mode est a un deuxieme 6-tat, lire sur le port d'entree/sortie de donnees (552) un signal d'instruction et mettre en oeuvre une operation comprenant l'activation simultanee en lecture ou en ecriture d'au moms deux rang-6es selectionnees en fonction du signal d'instruction. 2. Circuit mei-noire (550) selon la revendication 1, dans lequel le circuit interne de commande est adapte a, lorsque le signal de selection de mode est au deuxieme 6-tat, mettre en oeuvre une operation de calcul comprenant l'activation simultanee en lecture d'au moms deux rang-6es selectionnees en fonction du signal d'instruction. 3. Circuit mei-noire (550) selon la revendication 2, dans lequel le circuit interne de commande est en outre configure pour, lorsque le signal de selection de mode est au deuxieme 6-tat, lire un signal d'adresse sur le port d'entree d'adresses (554) et ecrire a l'adresse correspondante du circuit mei-noire un resultat de l'operation de calcul. 4. Circuit mei-noire (550) selon la revendication 1, dans lequel le circuit interne de commande est adapte a, lorsque le signal de selection de mode est au deuxieme 6-tat, mettre en oeuvre B16288 - DD17885ST 26 une operation d'ecriture d'une meme donnee dans au moms deux rang-6es selectionnees en fonction du signal d'instruction. 5. Circuit mei-noire (550) selon l'une quelconque des revendications 1 a 4, dans lequel le signal d'instruction comprend 5 un premier champ (OP CODE) definissant un type d'operation mettre en oeuvre, et un deuxieme champ (OPERAND SELECT) definissant les adresses des rang-6es a selectionner pour la mise en oeuvre de l'operation. 6. Circuit mei-noire (550) selon la revendication 5, dans 10 lequel le deuxieme champ (OPERAND SELECT) comprend un premier sous-champ (ADDR) et un deuxieme sous-champ (MASK) de log2(N) bits chacun, au N est un entier designant le nombre de rang-6es de la matrice. 7. Circuit mei-noire (550) selon la revendication 6, dans 15 lequel le circuit de commande interne comprend un circuit de selection de rang-6es adapte a generer un vecteur de selection de rang-6es (R) de N bits a partir des premier (ADDR) et deuxieme (MASK) sous-champs du deuxieme champ (OPERAND SELECT) du signal d'instruction. 20 8. Circuit mei-noire (550) selon la revendication 7, dans lequel le circuit de selection de rang-6es comprend Q=log2(N) etages Ej, avec j entier allant de 0 a Q-1, chaque etage Ej comprenant une premiere cellule logique de selection (701) comprenant des premier (a) et deuxieme (b) noeuds d'entree et des 25 premier (c) et deuxieme (d) noeuds de sortie, et 2j deuxiemes cellules logiques de selection (703) comprenant chacune des premier (e), deuxieme (f) et troisieme (g) noeuds d'entree et des premier (h) et deuxieme (i) noeuds de sortie. 9. Circuit mei-noire (550) selon la revendication 8, dans 30 lequel : dans chaque etage Ej, chaque deuxieme cellule (703) de l'etage a ses deuxieme (f) et troisieme (g) noeuds d'entree connectes respectivement aux premier (c) et deuxieme (d) noeuds de sortie de la premiere cellule (701) de l'etage ; et B16288 - DD17885ST 27 dans chaque etage Ej a l'exception de l'etage EQ_1, chaque deuxieme cellule (703) de l'etage a son premier noeud de sortie (h) connecte au premier noeud d'entree (e) de l'une des deuxiemes cellules (703) de l'etage Ej+1 et son deuxieme noeud de 5 sortie (i) connecte au premier noeud d'entree (e) d'une autre des deuxiemes cellules (703) de l'etage Ej+1. 10. Circuit mei-noire (550) selon la revendication 8 ou 9, dans lequel : chaque premiere cellule (701) comprend des premiere 10 (801) et deuxieme (802) portes logiques OU, la premiere porte OU (801) ayant une premiere entrée connectee au premier noeud d'entree (a) de la cellule, une deuxieme entrée connectee au deuxieme noeud d'entree (b) de la cellule, et une sortie connectee au premier noeud de sortie (c) de la cellule, et la deuxieme porte 15 OU (802) ayant une premiere entrée connecte au premier noeud d'entree (a) de la cellule, une deuxieme entrée reliee au deuxieme noeud d'entree (b) de la cellule par l'intermediaire d'un inverseur (803), et une sortie connectee au deuxieme noeud de sortie (d) de la cellule ; et 20 chaque deuxieme cellule (703) comprend des premiere (811) et deuxieme (812) portes logiques ET, la premiere porte ET (811) ayant une premiere entrée connectee au premier noeud d'entree (e) de la cellule, une deuxieme entrée connectee au deuxieme noeud d'entree (f) de la cellule, et une sortie connectee 25 au premier noeud de sortie (h) de la cellule, et la deuxieme porte ET (812) ayant une premiere entrée connectee au premier noeud d'entree (e) de la cellule, une deuxieme entrée connectee au troisieme noeud d'entree (g) de la cellule, et une sortie connectee au deuxieme noeud de sortie (i) de la cellule. 30 11. Circuit mei-noire (550) selon l'une quelconque des revendications 8 a 10, dans lequel le circuit interne de commande est configure pour, lorsque le signal de selection de mode est au deuxieme 6-tat, appliquer les log2(N) bits du premier sous-champ (A) respectivement sur les log2(N) deuxiemes noeuds d'entree (b) des premieres cellules (701) du circuit de selection de rang-6es, B16288 - DD17885ST 28 et appliquer les log2(N) bits du deuxieme sous-champ (B) respectivement sur les log2(N) premier noueds d'entree (a) des premieres cellules (701) du circuit de selection de rang-6es. 12. Systeme comportant un microprocesseur (500) et un 5 circuit mei-noire (550) selon l'une quelconque des revendications 1 a 11, le systeme comportant en outre : un bus de donnees (522) reliant un port d'entree/sortie de donnees (502) du microprocesseur au port d'entree/sortie de donnees (552) du circuit mei-noire ; 10 un bus d'adresses (524) reliant un port de sortie d'adresses (504) du microprocesseur au port d'entree d'adresses (554) du circuit mei-noire ; et un bus de selection de mode (528) reliant un port de sortie de selection de mode (508) du microprocesseur au port 15 d'entree de selection de mode (558) du circuit mei-noire. 13. Systeme selon la revendication 12, dans lequel le microprocesseur est configure pour : dans un premier mode de fonctionnement : - appliquer un signal de selection de mode au premier 20 6-tat sur le bus de selection de mode (528) ; - appliquer un signal d'adresse de rang-6e sur le bus d'adresses (524) ; et - lire ou ecrire une donnee dans la rang-6e correspondante du circuit mei-noire via le bus de 25 donnees (522), et dans un deuxieme mode de fonctionnement : - appliquer un signal de selection de mode au deuxieme 6-tat sur le bus de selection de mode (528) ; et - appliquer un signal d'instruction sur le bus de 30 donnees (522).