Brevet FR3132377A1 — publié le 20230804

L’invention concerne un circuit de calcul dans la mémoire comprenant une pluralité de plans mémoire. Chaque plan formant une matrice bidimensionnelle de cellules mémoire non volatiles, résistives et programmables. Chaque cellule mémoire ayant un nœud de sélection, un premier nœud d’entrée/sortie et un second nœud d’entrée/sortie. Ledit circuit de calcul comprenant au moins un groupe élémentaire de cellules mémoires comprenant : une première cellule mémoire appartenant à l’un quelconque des plans mémoire et destinée à stocker une première donnée d’entrée ; une deuxième cellule mémoire appartenant à l’un quelconque des plans mémoire et destinée à stocker une deuxième donnée d’entrée ; une troisième cellule mémoire appartenant à un plan mémoire différent de celui de la première et la deuxième cellules mémoire. la troisième cellule mémoire étant destinée à stocker le résultat d’une première opération logique ayant pour opérandes la première et la deuxième donnée d’entrée. Figure pour l’abrégé : Fig. 2a Structure tridimensionnelle de mémoires pour le calcul dans la mémoire Champ d’application La présente invention concerne le domaine de la conception de circuits de mémoire calculatoire ou circuit de calcul dans la mémoire (traduite du terme anglais In-Memory Computing). Plus particulièrement, l’invention concerne un circuit de mémoires résistives non-volatiles. Le circuit permet de réaliser des opérations logiques booléennes élémentaires au sein de la structure des mémoires composant le circuit. Problème technique D’une manière générale, un système sur puce comporte des circuits mémoires pour stocker les données et des circuits de calcul pour réaliser des opérations logiques et arithmétiques. Les opérations d’échange de données entre les circuits mémoires et les circuits de calcul sont très énergivores et réduisent la performance de calcul du système. Dans ce contexte, les technologies émergentes des mémoires non-volatiles permettent de réaliser des circuits de mémoire aptes à réaliser à la fois la fonction de stockage et la fonction de calcul. On parle dans ce cas de « circuit de calcul dans la mémoire ». Cela permet d’éviter les transferts de données entre les moyens de stockage et les moyens de calcul, et ainsi, permet de réduire la consommation énergétique et améliorer la vitesse de calcul. Cependant, le développement des solutions « circuits de calcul dans la mémoire » présente plusieurs défis et contraintes tels que : Le recours à de larges circuits périphériques aux mémoires pour traiter les résultats. Ces circuits périphériques couvrent à titre d’exemple une pluralité d’amplificateurs de détection. Cela augmente considérablement la surface du circuit et la complexité d’implémentation physique. Des contraintes au niveau de la précision des calculs réalisés. Plus particulièrement, ce problème se manifeste lors de l’exécution d’algorithmes nécessitant des calculs en parallèle. Ainsi, il existe un besoin pour concevoir des nouvelles architectures des circuits de calcul dans la mémoire, qui soient moins complexes et présentant en même temps une réduction de la consommation électrique et une amélioration des performances calculatoires en termes de vitesse et précision. Art antérieur/ Restrictions de l’état de l’art La publication scientifique [1] décrit trois approches générales pour réaliser des opérations de « calcul en mémoire ». Les trois approches reposent sur la programmation d’opérandes au sein des cellules mémoires résistives qui permettent en retour d’effectuer des sommes et des produits grâce aux lois de Kirchhoff. La première solution est appelée « non-stateful logic » et la deuxième solution est appelée « matrix-vector-multiplication ». Ces deux solutions nécessitent l’utilisation de larges circuits périphériques aux mémoires afin de traiter les résultats bruts. Elles présentent ainsi les inconvénients associés aux circuits périphériques. Ces inconvénients consistent en une complexité d’implémentation, d’une large surface et d’une augmentation de la consommation énergétique. La troisième solution est appelée « stateful logic ». Cette solution ne nécessite pas de circuits périphériques larges. Cependant, elle présente l’inconvénient d’une réduction de la précision de calcul lors de l’exécution d’algorithmes nécessitant des opérations de calculs en parallèle. La publication scientifique [2] propose une structure élémentaire de calcul en mémoire résistive réalisée par l’empilement d’une pluralité de mémoires résistives commandées par un transistor FinFET commun. Cette solution présente l’inconvénient d’une limitation en nombre de mémoires empilées dans une structure élémentaire à cause de l’augmentation des courants de pertes. De plus, cette solution présente des contraintes de programmation car les opérandes et les résultats d’une opération logique doivent être stockés au sein de la même structure élémentaire. Cela réduit les possibilités de programmation du circuit de calcul dans la mémoire et réduit ainsi la performance calculatoire du système. Réponse au problème et apport solution Pour pallier les limitations des solutions existantes en ce qui concerne la conception de circuits de calcul dans la mémoire, l’invention propose un circuit basé sur une structure tridimensionnelle composée de cellules mémoires résistives, non-volatiles et programmables. De plus, l’invention propose des séquences de programmation spécifiques permettant de réaliser des fonctions logiques élémentaires et des fonctions de transfert de données de manière non destructive. Il est ainsi possible pour la personne du métier d’implémenter des algorithmes plus complexes à partir des fonctions logiques élémentaires et de la fonction de transfert de données. Le dispositif selon l’invention permet de réduire la complexité des circuits périphériques en se limitant à quelques transistors de commandes. Les opérations de calcul ne nécessitent pas de faire recours à des circuits du type amplificateur de détection. Cela réduit la surface du circuit et sa consommation énergétique et simplifie son implémentation physique. Le dispositif selon l’invention permet en outre l’obtention d’un fonctionnement sur les trois dimensions spatiales sans les contraintes d’emplacement de stockage des opérandes et des résultats. Cela offre une flexibilité de programmation plus large que les solutions où les calculs sont localisés dans une seule structure élémentaire. Le dispositif selon l’invention est réalisable avec un nombre de cellules mémoires considérablement supérieur à celui des solutions connues. Cela offre l’avantage de la multiplication des capacités de stockage et de calcul en même temps. Cela permet d’obtenir un dispositif compatible avec l’exécution d’algorithmes de calcul complexes au sein de la structure mémoires. De plus, le dispositif est capable de paralléliser un nombre considérable d’opérations de traitement de données pour obtenir une performance meilleure. L’invention concerne en outre une structure en couches minces permettant de réaliser la structure de mémoire tridimensionnelle selon l’invention. Cette structure élémentaire présente l’avantage d’une compatibilité avec les techniques de fabrication de l’industrie du semiconducteur. Ainsi, le dispositif selon l’invention présente des couts de mise en production réduits. Résumé /Revendications L’invention a pour objet un circuit de calcul dans la mémoire comprenant une pluralité de plans mémoire de rang i allant de 1 à N, avec N un entier naturel supérieur à 1, chaque plan formant une matrice bidimensionnelle de cellules mémoire non volatiles, résistives et programmables, chaque cellule mémoire ayant un nœud de sélection, un premier nœud d’entrée/sortie et un second nœud d’entrée/sortie. Ladite matrice comprenant M lignes de rang j allant de 1 à M et K colonnes de rang k allant de 1 à K, avec M et K deux entiers naturels non nuls. Ledit circuit de calcul comprenant : des moyens de contrôle pour commander des opérations de stockage et de calcul en mémoire réalisées par le circuit de calcul ; au moins un groupe élémentaire de cellules mémoires comprenant : une première cellule mémoire appartenant à l’un quelconque des plans mémoire et destinée à stocker une première donnée d’entrée ; une deuxième cellule mémoire appartenant à l’un quelconque des plans mémoire et destinée à stocker une deuxième donnée d’entrée ; une troisième cellule mémoire appartenant à un plan mémoire différent de celui de la première et de la deuxième cellule mémoire. La troisième cellule mémoire étant destinée à stocker le résultat d’une première opération logique ayant pour opérandes la première et la deuxième donnée d’entrée. La première, la deuxième et la troisième cellule mémoire appartenant à des colonnes de même rang k dans leurs matrices respectives. La première, la deuxième et la troisième cellule mémoire étant interconnectées par une ligne d’interconnexion commune, notamment afin de former un pont diviseur de tension résistif. Selon un aspect particulier de l’invention, pour chaque plan mémoire: les nœuds de sélection des cellules mémoires appartenant à la même ligne sont interconnectés par une ligne de sélection ; les premiers nœuds d’entrée/sorties des cellules mémoires appartenant à la même colonne sont interconnectés ; les seconds nœuds d’entrée/sorties des cellules mémoires appartenant à la même colonne sont interconnectés. Selon un aspect particulier de l’invention, chaque cellule mémoire comprend : une structure de stockage résistive programmable ayant : une électrode supérieure connectée au second nœud d’entrée/sortie de ladite cellule mémoire ; et une électrode inférieure ; un transistor de sélection ayant une grille connectée au nœud de sélection de ladite cellule mémoire et reliant l’électrode inférieure au premier nœud d’entrée/sortie de ladite cellule mémoire. Selon un aspect particulier de l’invention, chaque colonne de cellules mémoire comprend : Un empilement d’une pluralité de transistors de sélection selon une première direction, chaque transistor de sélection, notamment de type grille enrobante, comprenant un canal de conduction, perpendiculaire à la première direction en un matériau semiconducteur et ayant deux extrémités ; la première extrémité du canal correspondant à la source du transistor de sélection et la seconde correspondant au drain du transistor ; un premier pilier métallique selon la première direction connectant les sources des différents transistors de sélection ; une couche en diélectrique parallèle à la première direction et couvrant latéralement les drains des transistors de sélection ; au moins une couche métallique en parallèle à la première direction déposée sur la couche en diélectrique ; un second pilier métallique selon la première direction ayant un contact latéral avec l’au moins couche métallique ; Pour chaque transistor de sélection, l’ensemble formé par le drain, la couche en diélectrique et la couche métallique constitue une structure de stockage résistive. Selon un aspect particulier de l’invention, pour chaque plan mémoire : les premiers nœuds d’entrée/sortie des cellules mémoire appartenant aux colonnes de rangs impairs sont interconnectés formant une première ligne de source ; les premiers nœuds d’entrée des cellules mémoire appartenant aux colonnes de rangs pairs sont interconnectés formant une seconde ligne de source ; la première ligne de source et la seconde ligne de source étant distinctes. Selon un aspect particulier de l’invention, le groupe élémentaire de cellules mémoires comprend en outre une quatrième cellule mémoire appartenant à un plan mémoire différent de celui de la première, deuxième et troisième cellule mémoire. La quatrième cellule mémoire étant destinée à stocker le résultat d’une deuxième opération logique ayant pour opérandes la première et la deuxième donnée d’entrée et utilisant le résultat de la première opération logique stocké dans la troisième cellule mémoire. La quatrième cellule mémoire étant connectée à la première, à la deuxième et à la troisième cellule mémoire via la ligne d’interconnexion commune. Selon un aspect particulier de l’invention, pour chaque groupe élémentaire de cellules mémoires, la ligne d’interconnexion connecte l’un à l’autre les seconds nœuds d’entrée/sortie des cellules mémoire dudit groupe élémentaire. Selon un aspect particulier de l’invention, la première opération logique est une fonction booléenne OU. Selon un aspect particulier de l’invention, les moyens de contrôle sont configurés pour réaliser les étapes suivantes, dans l’ordre d’énumération, afin de réaliser la fonction logique OU : Initialiser la troisième cellule à un état résistif haut ; sélectionner la première et la troisième cellule mémoire en mettant à l’état passant leurs transistors de sélection ; appliquer une première tension de lecture positive sur le premier nœud d’entrée/sortie de la première cellule mémoire et connecter simultanément le premier nœud d’entrée/sortie de la troisième cellule mémoire à la masse électrique ; sélectionner la deuxième et la troisième cellule mémoire en mettant à l’état passant leurs transistors de sélection ; appliquer la première tension de lecture positive sur le premier nœud d’entrée/sortie de la première cellule mémoire et connecter simultanément le premier nœud d’entrée/sortie de la troisième cellule mémoire à la masse électrique ; Chaque cellule mémoire présentant: un premier seuil de tension pour passer d’un état résistif haut à un état résistif bas ; et un second seuil de tension pour passer d’un état résistif bas à un état résistif haut supérieur au premier seuil de tension. Ladite première tension de lecture étant positive avec une amplitude supérieure ou égale au premier seuil de passage et strictement inférieure au second seuil de passage. Selon un aspect particulier de l’invention, la deuxième opération logique est une fonction booléenne NON-OU exclusive. Selon un aspect particulier de l’invention, les moyens de contrôle sont configurés pour réaliser les étapes suivantes, dans l’ordre d’énumération, afin de réaliser la fonction logique NON-OU exclusive : Initialiser la quatrième cellule à un état résistif bas ; sélectionner la première, la troisième et la quatrième cellule mémoire en mettant à l’état passant leurs transistors ; réaliser simultanément : l’application d’une deuxième tension de lecture positive sur le premier nœud d’entrée/sortie de la première cellule mémoire ; l’application d’une troisième tension de lecture négative sur le premier nœud d’entrée/sortie de la troisième cellule mémoire ; et l’application d’une quatrième tension de lecture positive sur le premier nœud d’entrée/sortie de la quatrième cellule mémoire ; sélectionner la deuxième, la troisième et la quatrième cellule mémoire en mettant à l’état passant leurs transistors de sélection ; réaliser simultanément : l’application de la deuxième tension de lecture positive sur le premier nœud d’entrée/sortie de la deuxième cellule mémoire ; l’application de la troisième tension de lecture négative sur le premier nœud d’entrée/sortie de la troisième cellule mémoire ; et l’application d’une quatrième tension de lecture positive sur le premier nœud d’entrée/sortie de la quatrième cellule mémoire ; La valeur absolue de la troisième tension de lecture étant sensiblement égale à la valeur absolue de la deuxième tension de lecture. La somme de la valeur absolue de la quatrième tension de lecture et de la deuxième tension de lecture étant supérieure au second seuil de passage. Selon un aspect particulier de l’invention, la première opération logique est une fonction booléenne ET. Selon un aspect particulier de l’invention, le circuit de calcul dans la mémoire comprend en outre pour chaque ligne d’interconnexion un transistor de régulation; chaque transistor de régulation ayant une grille recevant un signal de régulation et reliant la ligne d’interconnexion associée à la masse de manière à réaliser une impédance variable. Selon un aspect particulier de l’invention, le circuit de calcul dans la mémoire comprend une pluralité de groupes élémentaires de cellules mémoires. Chaque ligne d’interconnexion étant connectée à une ligne d’interconnexion adjacente par l’intermédiaire d’un interrupteur. Selon un aspect particulier de l’invention, les moyens de contrôle sont configurés pour réaliser le transfert d’une donnée stockée d’une cellule mémoire de départ à une cellule mémoire d’arrivée appartenant à un plan différent de celui de la cellule mémoire de départ et connectée à une ligne d’interconnexion adjacente à celle de la cellule mémoire de départ. Le transfert est réalisé en exécutant, dans l’ordre d’énumération, les étapes suivantes : i’- initialiser la cellule d’arrivée à un état résistif haut ; ii’- mettre l’interrupteur à l’état passant iii’- réaliser simultanément : l’application d’une première tension de transfert positive sur le premier nœud d’entrée/sortie de la cellule mémoire de départ ; la connexion du premier nœud d’entrée/sortie de la cellule mémoire d’arrivée à la masse électrique ; l’application d’une seconde tension de transfert positive sur le premier nœud d’entrée/sortie de la cellule mémoire appartenant au même plan de la cellule mémoire de départ et connectée à la même ligne d’interconnexion de la cellule mémoire d’arrivée ; l’application de la seconde tension de transfert positive sur le premier nœud d’entrée/sortie de la cellule mémoire appartenant au même plan de la cellule mémoire d’arrivée et connectée à la même ligne de données (ou ligne de bits) de la cellule mémoire de départ ; L’amplitude de la seconde tension de transfert étant inférieure ou égale à la moitié de la première tension de transfert. Selon un aspect particulier de l’invention, pour chaque groupe élémentaire de cellules mémoires, la ligne d’interconnexion connecte l’un à l’autre les premiers nœuds d’entrée/sortie des cellules mémoire dudit groupe élémentaire. On entend par «ligne d’interconnexion commune », une ligne conductrice connectant les mêmes noeuds d’une pluralité de cellules mémoire réparties sur au moins deux plans mémoires. La connexion est réalisée d’une manière directe et sans intermédiaire. Selon un aspect particulier de l’invention, la ligne d’interconnexion commune correspond à la ligne de données commune (bit line en anglais). Selon un aspect particulier de l’invention, la ligne d’interconnexion commune correspond à la ligne de sources commune (source line en anglais). Selon un aspect particulier de l’invention, le circuit en mémoire comprend une pluralité de plans mémoire de rang i allant de 1 à N, avec N un entier supérieur ou égal à 2. Circuit de calcul dans la mémoire (10) comprenant une pluralité de plans mémoire (P i ) de rang i allant de 1 à N, avec N un entier naturel supérieur à 1, chaque plan formant une matrice bidimensionnelle de cellules mémoire non volatiles, résistives et programmables , chaque cellule mémoire ayant un nœud de sélection (WL), un premier nœud d’entrée/sortie (SL) et un second nœud d’entrée/sortie (BL) ; ladite matrice comprenant M lignes (L j ) de rang j allant de 1 à M et K colonnes (C k ) de rang k allant de 1 à K, avec M et K deux entiers naturels non nuls; ledit circuit de calcul (10) comprenant : des moyens de contrôle pour commander des opérations de stockage et de calcul en mémoire réalisées par le circuit de calcul ; au moins un groupe élémentaire de cellules mémoires comprenant : une première cellule mémoire (CM A ) appartenant à l’un quelconque des plans mémoire (P in1 )et destinée à stocker une première donnée d’entrée (A) ; une deuxième cellule mémoire (CM B ) appartenant à l’un quelconque des plans mémoire (P in1 ) et destinée à stocker une deuxième donnée d’entrée (B) ; une troisième cellule mémoire (CM OR, CM AND ) appartenant à un plan mémoire (P OR1 ) différent de celui de la première et la deuxième cellules mémoire (CM A CM b ); la troisième cellule mémoire étant destinée à stocker le résultat d’une première opération logique ayant pour opérandes la première et la deuxième données d’entrée ; la première, deuxième et troisième cellules mémoire (CM A, CM B ,CM OR ) appartenant à des colonnes (C k ) de même rang k dans leurs matrices respectives ; la première, la deuxième et la troisième cellules mémoire (CM A, CM B , CM OR ) étant interconnectées par une ligne d’interconnexion commune (BL 1a , SL 1a ). Circuit de calcul dans la mémoire (10) selon la revendication 1 dans lequel pour chaque plan mémoire (P i ): les nœuds de sélection (WL) des cellules mémoires appartenant à la même ligne (L j ) sont interconnectés par une ligne de sélection (WL ij ) ; les premiers nœuds d’entrée/sorties (SL) des cellules mémoires appartenant à la même colonne (C k ) sont interconnectés ; les seconds nœuds d’entrée/sorties (BL) des cellules mémoires appartenant à la même colonne (C k ) sont interconnectés. Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 1 ou 2 dans lequel chaque cellule mémoire (CM A, CM B, CM OR ) comprend : une structure de stockage résistive programmable ayant : une électrode supérieure (EL1) connectée au second nœud d’entrée/sortie (BL) de ladite cellule mémoire (CM A, CM B, CM OR ) ; et une électrode inférieure (EL2) ; un transistor de sélection (T1) ayant une grille connectée au nœud de sélection (WL) de ladite cellule mémoire et reliant l’électrode inférieure (EL2) au premier nœud d’entrée/sortie (SL) de ladite cellule mémoire (CM A, CM B, CM OR ). Circuit de calcul dans la mémoire (10) selon la revendication 3 dans lequel chaque colonne (C k ) de cellules mémoire (CM) comprend : Un empilement d’une pluralité de transistors de sélection (T1) selon une première direction (Δ) ; chaque transistor de sélection, notamment de type grille enrobante, comprenant un canal de conduction (CC), perpendiculaire à la première direction (Δ) en un matériau semiconducteur et ayant deux extrémités ; la première extrémité du canal correspondant à la source du transistor de sélection et la seconde correspondant au drain du transistor ; un premier pilier métallique (SL 1a ) selon la première direction (Δ) connectant les sources des différents transistors de sélection ; une couche en diélectrique (C’2) parallèle à la première direction (Δ) et couvrant latéralement les drains des transistors de sélection ; au moins une couche métallique (C’3) en parallèle à la première direction déposée sur la couche en diélectrique ; un second pilier métallique (BL 1a ) selon la première direction (Δ) ayant un contact latéral avec l’au moins couche métallique ; pour chaque transistor de sélection, l’ensemble formé par le drain, la couche en diélectrique (C’2) et la couche métallique (C’3) constitue une structure de stockage résistive (S1). Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications précédentes tel que pour chaque plan mémoire (P in1 , P OR1 ) : les premiers nœuds d’entrée/sortie (SL) des cellules mémoire appartenant aux colonnes (C k ) de rangs impairs sont interconnectés formant une première ligne de source (SL 1a ) ; les premiers nœuds d’entrée (SL) des cellules mémoire appartenant aux colonnes (C k ) de rangs pairs sont interconnectés formant une seconde ligne de source (SL 1b ) ; la première ligne de source et la seconde ligne de source étant distinctes ; Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 1 à 5 dans lequel le groupe élémentaire de cellules mémoires comprend en outre une quatrième cellule mémoire (CM XNOR ) appartenant à un plan mémoire différent de celui de la première, deuxième et troisième cellules mémoire (CM A CM b , CM OR ); la quatrième cellule mémoire étant destinée à stocker le résultat d’une deuxième opération logique ayant pour opérandes la première et la deuxième données d’entrée et utilisant le résultat de la première opération logique stocké dans la troisième cellule mémoire (CM OR ) ; la quatrième cellule mémoire (CM XNOR ) étant connectée à la première, à la deuxième et à la troisième cellules mémoire (CM A, CM B ,CM OR ) via la ligne d’interconnexion commune (BL 1a, SL 1a ). Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 1 à 6 dans lequel pour chaque groupe élémentaire de cellules mémoires , la ligne d’interconnexion (BL 1a ) connecte l’un à l’autre les seconds nœuds d’entrée/sortie (BL) des cellules mémoire dudit groupe élémentaire. Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 1 à 7 dans lequel la première opération logique est une fonction booléenne OU. Circuit de calcul dans la mémoire (10) selon la revendication 8 dans lequel les moyens de contrôle sont configurés pour réaliser les étapes suivantes afin de réaliser la fonction logique OU : Initialiser la troisième cellule à un état résistif haut ; sélectionner la première et la troisième cellule mémoire (CM A , CM OR ) en mettant à l’état passant leurs transistors de sélection (T1) ; appliquer une première tension de lecture positive sur le premier nœud d’entrée/sortie (SL 1a ) de la première cellule mémoire et connecter simultanément le premier nœud d’entrée/sortie (SL 2a ) de la troisième cellule mémoire à la masse électrique ; sélectionner la deuxième et la troisième cellule mémoire (CM B , CM OR ) en mettant à l’état passant leurs transistors de sélection (T1) ; appliquer la première tension de lecture positive sur le premier nœud d’entrée/sortie (SL 1a ) de la première cellule mémoire et connecter simultanément le premier nœud d’entrée/sortie (SL 2a ) de la troisième cellule mémoire à la masse électrique ; chaque cellule mémoire présentant: un premier seuil de tension (V set ) pour passer d’un état résistif haut à un état résistif bas ; et un second seuil de tension (V reset ) pour passer d’un état résistif bas à un état résistif haut supérieur au premier seuil de tension (V set ) ; ladite première tension de lecture étant positive avec une amplitude supérieure ou égale au premier seuil de passage et strictement inférieure au second seuil de passage. Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 8 ou 9 en combinaison avec la revendication 6 dans lequel la deuxième opération logique est une fonction booléenne NON-OU exclusive (XNOR). Circuit de calcul dans la mémoire (10) selon la revendication 10 dans lequel les moyens de contrôle sont configurés pour réaliser les étapes suivantes afin de réaliser la fonction logique NON-OU exclusive (XNOR) : Initialiser la quatrième cellule à un état résistif bas ; sélectionner la première, la troisième et la quatrième cellule mémoire (CM A , CM OR, CM XNOR ) en mettant à l’état passant leurs transistors ; réaliser simultanément : l’application d’une deuxième tension de lecture positive (VSL 1a ) sur le premier nœud d’entrée/sortie (SL 1a ) de la première cellule mémoire (CM A ) ; l’application d’une troisième tension de lecture négative (VSL 2a ) sur le premier nœud d’entrée/sortie (SL 2a ) de la troisième cellule mémoire (CM OR ) ; et l’application d’une quatrième tension de lecture positive (VSL 3a ) sur le premier nœud d’entrée/sortie (SL 3a ) de la quatrième cellule mémoire (CM XNOR ) ; sélectionner la deuxième, la troisième et la quatrième cellule mémoire (CM B , CM OR, CM XNOR ) en mettant à l’état passant leurs transistors de sélection (T1) ; réaliser simultanément : l’application de la deuxième tension de lecture positive (VSL 1a ) sur le premier nœud d’entrée/sortie (SL 1a ) de la deuxième cellule mémoire (CM B ) ; l’application de la troisième tension de lecture négative (VSL 2a ) sur le premier nœud d’entrée/sortie (SL 2a ) de la troisième cellule mémoire (CM OR ) ; et l’application d’une quatrième tension de lecture positive (VSL 3a ) sur le premier nœud d’entrée/sortie (SL 3a ) de la quatrième cellule mémoire (CM XNOR ) ; la valeur absolue de la troisième tension de lecture (VSL 2a ) étant sensiblement égale à la valeur absolue de la deuxième tension de lecture (VSL 1a ) ; la somme de la valeur absolue de la quatrième tension de lecture (VSL 3a ) et de la troisième tension de lecture (VSL 2 a ) étant supérieure au second seuil de passage (V reset ). Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 1 à 7 dans lequel la première opération logique est une fonction booléenne ET. Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications précédentes comprenant pour chaque ligne d’interconnexion (BL 1a, BL 1b BL 2a BL 2b ) un transistor de régulation (T reg ) ; chaque transistor de régulation (T reg ) ayant une grille recevant un signal de régulation (VWL BL ) et reliant la ligne d’interconnexion associée à la masse de manière à réaliser une impédance variable. Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications précédentes comprenant une pluralité de groupes élémentaires de cellules mémoires ; chaque ligne d’interconnexion (BL 1a, BL 1b BL 2a BL 2b ) étant connectée à une ligne d’interconnexion (BL 1a, BL 1b BL 2a BL 2b ) adjacente par l’intermédiaire d’un interrupteur (i1). Circuit de calcul dans la mémoire (10) selon la revendication 14 dans lequel les moyens de contrôle sont configurés pour réaliser le transfert d’une donnée stockée d’une cellule mémoire de départ (CM 1 ) à une cellule mémoire d’arrivée (CM 2 ) appartenant à un plan différent de celui de la cellule mémoire de départ et connectée à une ligne d’interconnexion adjacente à celle de la cellule mémoire de départ ; le transfert est réalisé en exécutant les étapes suivantes : i’- initialiser la cellule d’arrivée (CM2) à un état résistif haut ; ii’- mettre l’interrupteur i1 à l’état passant iii’- réaliser simultanément : l’application d’une première tension de transfert positive sur le premier nœud d’entrée/sortie (SL 1a ) de la cellule mémoire de départ (CM 1 ) ; la connexion du premier nœud d’entrée/sortie (SL 2b ) de la cellule mémoire d’arrivée à la masse électrique ; l’application d’une seconde tension de transfert positive sur le premier nœud d’entrée/sortie (SL 1b ) de la cellule mémoire (CM par_in ) appartenant au même plan de la cellule mémoire de départ et connectée à la même ligne d’interconnexion de la cellule mémoire d’arrivée ; l’application de la seconde tension de transfert positive sur le premier nœud d’entrée/sortie (SL 2a ) de la cellule mémoire (CM par_out ) appartenant au même plan de la cellule mémoire d’arrivée et connectée à la même ligne de bits de la cellule mémoire de départ ; l’amplitude de la seconde tension de transfert étant inférieure ou égale à la moitié de la première tension de transfert. Circuit de calcul dans la mémoire (10) selon l’une quelconque des revendications 1 à 6 dans lequel, pour chaque groupe élémentaire de cellules mémoires, la ligne d’interconnexion (SL 1a ) connecte l’un à l’autre les premiers nœuds d’entrée/sortie (SL) des cellules mémoire dudit groupe élémentaire.