Brevet FR2976114A1 — publié le 20121207

B10800 - 07-GR1-237 1 MEMOIRE DOUBLE PORT PERMETTANT UNE LECTURE-ECRITURE SIMULTANEE Domaine de l'invention La présente invention concerne de façon générale des mémoires vives en circuit intégré. Plus particulièrement, la présente invention concerne des mémoires vives de type à double port, connues sous l'acronyme DPRAM (Dual Port Random Access Memory). Exposé de l'art antérieur Les mémoires vives (RAM) sont généralement basées sur l'utilisation de circuits bistables en technologie CMOS. Ces mémoires sont constituées de nombreux points mémoires ou cellules élémentaires agencés sous forme matricielle, chaque cellule mémoire élémentaire étant associée à des lignes de bits et des lignes de mots. La figure 1 illustre une cellule élémentaire d'une 15 mémoire de type SRAM à six transistors. Cette cellule est associée à une ligne de mots WL et a deux lignes de bits complémentaires BLT et BLF. La cellule élémentaire comprend un circuit bistable 10 constitué d'un premier inverseur 12 et d'un deuxième inverseur 14, l'entrée de 20 l'un étant connectée en sortie de l'autre. L'entrée de l'inverseur 12 est connectée à la ligne de bits BLT par l'intermédiaire d'un transistor MOS 16 dont la grille est connectée à la ligne B10800 - 07-GR1-237 2 de mots WL et l'entrée de l'inverseur 14 est connectée à la ligne de bits BLF par l'intermédiaire d'un transistor 18 dont la grille est également connectée à la ligne de mots WL. Dans la cellule élémentaire de la figure 1, les données sont stockées de façon complémentaire sur un noeud G connecté à l'entrée de l'inverseur 12 et sur un noeud D connecté à l'entrée de l'inverseur 14. Lors d'une phase de rétention de l'information, la ligne de mots WL est prévue de façon que les transistors MOS 16 et 18 soient bloqués. Par exemple, si les transistors 16 et 18 sont les transistors de type N, la ligne de mots WL est à zéro. Dans ce cas, les inverseurs 12 et 14 assurent le maintien de l'information sur les noeuds G et D. Lors d'une phase d'écriture d'une donnée dans la cellule élémentaire, par exemple d'une écriture d'un "1" logique sur le noeud G et d'un "0" logique sur le noeud D, la ligne de bits BLT est maintenue à un potentiel d'alimentation Vdd, tandis que la ligne de bits BLF est tirée à la masse. La ligne de mots WL est commandée de façon à rendre passants les transistors 16 et 18. Ainsi, le "1" logique imposé par la ligne de bits BLT se retrouve sur le noeud G et le "0" logique imposé par la ligne de bits BLF se retrouve sur le noeud D. Une fois l'écriture finie, la ligne de mots WL est commandée pour bloquer les transistors 16 et 18, et l'information est maintenue dans le circuit bistable 10. Lors d'une phase de lecture d'une donnée contenue dans le circuit bistable 10, les lignes de bits BLT et BLF sont pré- chargées à une tension d'alimentation Vdd. Ensuite, les lignes de bits BLT et BLF sont laissées flottantes. La ligne de mots WL est ensuite commandée pour rendre passants les transistors 16 et 18. L'information contenue sur les noeuds G et D est ainsi transférée sur les lignes de bits associées. Ainsi, si le noeud G est à "0", la ligne de bits BLT va se décharger pro- gressivement. La lecture de la donnée stockée dans la cellule de la figure 1 se fait en comparant les potentiels sur les lignes B10800 - 07-GR1-237 3 de bits BLT et BLF. Généralement, des systèmes d'amplification de la différence de potentiel entre les deux lignes de bits assurent une lecture accélérée. Un inconvénient des cellules SRAM telles que celles de la figure 1 est que ces cellules ne permettent qu'un accès à la fois. Ainsi, il a été proposé de former des cellules mémoires de type DPRAM (Dual Port Random Access Memory) dans lesquelles chaque circuit bistable est associé à deux lignes de bits et à leurs complémentaires et à deux lignes de mots. Cette architecture permet deux accès parallèles asynchrones à la mémoire, qui peuvent être deux lectures, une lecture et une écriture, ou encore deux écritures. Ces deux accès simultanés peuvent concerner la même cellule élémentaire, à l'exclusion de deux opérations d'écriture qui ne peuvent s'exécuter simul- tanément sur le même bit. La figure 2 illustre une structure classique d'une cellule mémoire élémentaire de type DPRAM. La cellule élémentaire de la figure 2 comprend un circuit bistable 20 identique au circuit bistable 10 de la figure 1. Dans l'exemple de la figure 2, des inverseurs 22 et 24 constituant le circuit bistable 20 ont été représentés en détail. Le premier inverseur 22, dont l'entrée est connectée à un noeud G et la sortie connectée à un noeud D, comprend une association série, entre une tension d'alimentation Vdd et la masse, d'un premier transistor MOS de type P, P1, et d'un deuxième transistor MOS de type N, N2. Les grilles des transistors P1 et N2 sont connectées au noeud G et le point milieu entre les transistors P1 et N2 est connecté au noeud D. Symétriquement, l'inverseur 24 est constitué d'une association série, entre une tension d'alimentation Vdd et la masse, d'un troisième transistor MOS de type P, P3, et d'un quatrième transistor MOS de type N, N4. Les grilles des transistors P3 et N4 sont connectées au noeud D et le point milieu entre ces transistors est connecté au noeud G. B10800 - 07-GR1-237 4 Le circuit bistable 20 est associé à une première ligne de bits BLTa, et à son complémentaire BLFa (première paire de lignes de bits), à une deuxième ligne de bits BLTb, et à son complémentaire BLFb (deuxième paire de lignes de bits), et à deux lignes de mots WLa et WLb. Le noeud G est connecté à la ligne de bits BLTa, respectivement BLTb, par l'intermédiaire d'un transistor MOS 26, respectivement 28. Le noeud D est connecté à la ligne de bits BLFa, respectivement BLFb, par l'intermédiaire d'un transistor MOS 30, respectivement 32. Les grilles des transistors 26 et 30 sont connectées à la ligne de mots WLa et les grilles des transistors 28 et 32 sont connectées à la ligne de mots WLb. Lors d'une phase de lecture ou d'écriture seule, le circuit de la figure 2 fonctionne de la même façon que ce qui a été décrit en relation avec la figure 1. Une des paires de lignes de bits BLTa/BLFa ou BLTb/BLFb est prévue soit pour réaliser une lecture des données dans le circuit bistable 20, soit pour écrire des données dans ce circuit. L'autre des paires de lignes de bits est déconnectée du circuit bistable, la ligne de mots associée étant commandée en conséquence. Avantageusement, le circuit de la figure 2 permet également la réalisation d'une lecture des données contenues sur les noeuds G et D du circuit bistable simultanément à la réalisation d'une écriture de données dans ce circuit. Pour cela, l'une des lignes de mots est commandée pour que la paire de lignes de bits complémentaires qui lui est associée réalise une lecture tandis que l'autre ligne de mots est commandée pour que la paire de lignes de bits complémentaires qui lui est associée réalise une écriture. Cependant, en fonction du dimensionnement, les différents transistors constituant le circuit de la figure 2, ainsi qu'en fonction de la durée de réalisation des opérations de lecture et d'écriture, une écriture peut être affaiblie par l'opération de lecture simultanée, et ne pas être réalisée B10800 - 07-GR1-237 complètement. Ainsi, le circuit bistable ne change pas d'état alors qu'il le devrait. Un besoin existe donc d'un dispositif assurant la réalisation simultanée de lectures et d'écritures de bonne 5 qualité sur des cellules de type DPRAM. Résumé Un objet d'un mode de réalisation de la présente invention est de proposer un dispositif assurant la réalisation simultanée de lectures et d'écritures de bonne qualité sur des cellules de type DPRAM. Ainsi, un mode de réalisation de la présente invention prévoit une mémoire vive double port comprenant au moins une cellule mémoire élémentaire associée à deux paires de lignes de bits et à deux lignes de mots, la mémoire comprenant des moyens de connexion de premières lignes de chaque paire entre elles et de deuxièmes lignes de chaque paire entre elles lors d'étapes de lecture et d'écriture simultanées dans la cellule élémentaire. Selon un mode de réalisation de la présente invention, les moyens de connexion sont constitués d'un premier transistor MOS placé entre les premières lignes de chaque paire et d'un deuxième transistor MOS placé entre les deuxièmes lignes de chaque paire. Selon un mode de réalisation de la présente invention, les premier et deuxième transistors MOS ont leurs grilles connectées à des moyens de génération d'un signal de lecture/écriture simultanée. Selon un mode de réalisation de la présente invention, les moyens de génération d'un signal de lecture/écriture simultanée comprennent une porte logique dont les entrées sont connectées aux lignes de mots. Selon un mode de réalisation de la présente invention, chaque cellule élémentaire comprend un circuit bistable connecté aux lignes de bits et aux lignes de mots par l'intermédiaire de transistors commandables. B10800 - 07-GR1-237 6 Selon un mode de réalisation de la présente invention, le circuit bistable comprend deux circuits inverseurs connectés en inverse l'un de l'autre. Selon un mode de réalisation de la présente invention, deux transistors commandables sont prévus entre les premières lignes de chaque paire et un premier noeud du circuit bistable et deux transistors commandables sont prévus entre les deuxièmes lignes de chaque paire de lignes de bits et un deuxième noeud du circuit bistable. Un mode de réalisation de la présente invention pré-voit en outre un procédé de réalisation d'une étape simultanée d'écriture et de lecture dans une cellule élémentaire d'une mémoire vive double port associée à deux paires de lignes de bits, comprenant une étape de connexion de premières lignes de chaque paire entre elles et de deuxièmes lignes de chaque paire entre elles. Brève description des dessins Ces objets, caractéristiques et avantages, ainsi que d'autres seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non-limitatif en relation avec les figures jointes parmi lesquelles : la figure 1, précédemment décrite, illustre une cellule élémentaire d'une mémoire vive de type SRAM à six transistors ; la figure 2, précédemment décrite, illustre une cellule élémentaire d'une mémoire vive de type double port DPRAM connue à huit transistors ; les figures 3A, 3B, 4A et 4B illustrent un inconvénient des cellules mémoires de type DPRAM connues ; la figure 5 illustre une cellule mémoire de type DPRAM selon un mode de réalisation de la présente invention ; et les figures 6A à 6E sont des chronogrammes illustrant le fonctionnement de la cellule mémoire de la figure 5. Description détaillée Par souci de clarté, de mêmes éléments ont été désignés 35 par de mêmes références aux différentes figures. B10800 - 07-GR1-237 7 On appellera par la suite port d'accès le couple de transistors d'accès reliant un couple de lignes de bits complémentaires. Lors de phases de lecture et d'écriture simultanées dans une cellule élémentaire du type DPRAM telle que celle de la figure 2, il se crée un conflit entre les différents transistors constituant ces cellules. En effet, pour la lecture, les transistors d'accès au circuit bistable (26, 28, 30, 32) qui sont rendus passants sont dimensionnés de façon que le courant qu'il transporte soit inférieur au courant transporté par les transistors passants du circuit bistable. Cela permet d'éviter que la lecture ne provoque un changement d'état du circuit bistable. Inversement, les transistors assurant la réalisation d'écritures dans le circuit bistable présentent un courant à l'état passant supérieur au courant à l'état passant des transistors du circuit bistable. Ainsi, lors de phases d'écriture, ces transistors d'accès au circuit bistable assurent la modification de l'état du circuit bistable. Lors de phases d'écriture et de lecture simultanées modifiant l'état du circuit bistable, sur le noeud dont l'état passe d'un état logique "1" à un état logique "0", il se créé un conflit entre le transistor d'accès cherchant à forcer l'écriture du noeud à l'état logique "0" et les transistors du circuit bistable et le transistor d'accès en lecture qui ont tendance à injecter du courant dans ce noeud. Il en résulte que l'écriture peut ne pas se faire correctement. Les figures 3A, 3B, 4A et 4B sont des courbes illustrant l'état d'un circuit bistable dans lequel on cherche à réaliser une étape simultanée de lecture et d'écriture, dans deux cas où les durées de lecture et d'écriture varient. Dans ces exemples de courbe, on considère que le noeud G est initialement à un état logique "1" et le noeud D est initialement à un état logique "0", et que l'on cherche à modifier cet état par une écriture. On considère également dans ces figures que la paire B10800 - 07-GR1-237 8 de lignes de bits complémentaires BLTa et BLFa constitue la paire de lignes de lecture et que la paire de lignes de bits complémentaires BLTb et BLFb constitue la paire de lignes d'écriture, et que les transistors MOS 26, 28, 30 et 32 sont de type N. Dans le premier cas, illustré en figures 3A et 3B, les étapes de lecture et d'écriture démarrent simultanément, à un instant t0, et l'étape de lecture se finit à un instant tl, avant l'étape d'écriture. Ainsi, comme cela est illustré en figure 3A, le signal sur la ligne de mots WLa repasse à "0" avant le signal sur la ligne de mots WLb. Comme on peut le voir en figure 3B, à l'instant t0, les états sur les noeuds G et D varient vers leurs états finaux. Cependant, tant que les signaux sur les lignes de mots WLa et WLb rendent passants les transistors 26, 28, 30 et 32, les noeuds G et D n'atteignent pas leurs états finaux mais des états intermédiaires. Lorsque la lecture se termine à l'instant tl, l'écriture se termine, ce qui amène les noeuds D et G à leurs états finaux, inverse de leurs états initiaux. Dans l'exemple des figures 4A et 4B, on considère un fonctionnement inverse dans lequel les étapes d'écriture et de lecture commencent à un même instant, t0, mais dans lequel la lecture se termine après l'écriture (qui s'arrête à un instant t2). Pendant une première phase, entre les instants t0 et t2, les signaux sur les lignes de mots WLa et WLb sont à l'état haut, ce qui ferme les transistors 26, 28, 30 et 32. Ensuite, seul le signal sur la ligne de mots WLa reste à l'état haut après l'instant t2. Entre les instants t0 et t2, le circuit se comporte de la même façon que dans le cas des figures 3A et 3B et les noeuds G et D voient leurs états passer à un niveau intermédiaire. Lorsque l'écriture se termine à l'instant t2, les transistors d'accès en lecture, ainsi que les transistors du circuit bistable qui n'ont pas encore changé d'état, provoquent B10800 - 07-GR1-237 9 le basculement de l'état sur les noeuds G et D. Ceux-ci retournent à leurs niveaux initiaux une fois les transistors d'écriture ouverts. L'écriture n'est donc pas réalisée. Pour résoudre ce problème, on prévoit un circuit similaire à celui de la figure 2 dans lequel des moyens de connexion des lignes de bits BLTa et BLTb et des moyens de connexion des lignes de bits BLFa et BLFb sont prévus lorsque des étapes d'écriture et de lecture sont réalisées simultanément. Cela permet que l'état d'écriture soit directement appliqué sur les lignes de bits de lecture, sans conflit avec la lecture puisque l'opération de lecture se fait directement sur les lignes d'écriture. Ainsi, la perturbation de l'opération d'écriture par la précharge du port de lecture est atténuée. La figure 5 illustre un exemple d'un dispositif tel que décrit ci-dessus, comprenant des moyens de connexion entre les premières lignes de bits de chaque paire de lignes de bits et les secondes lignes de bits de chaque paire de ligne de bits. En figure 5, la cellule mémoire est identique à celle de la figure 2. Des moyens de connexion des lignes de bits entre elles sont prévus. Dans l'exemple représenté, ces moyens de connexion sont constitués d'un premier transistor MOS 34 connecté entre les lignes de bits BLTa et BLTb et d'un deuxième transistor MOS 36 connecté entre les lignes de bits BLFa et BLFb. Les transistors 34 et 36 ont leurs grilles connectées à une borne d'application d'un signal de lecture/écriture AWL. Le signal AWL est prévu de façon à rendre passant les transistors 34 et 36 uniquement lors de réalisation d'étapes de lecture et d'écriture simultanées. A titre d'exemple, comme cela est illustré en figure 5, le signal AWL peut être la sortie d'une porte logique ET (AND) 40 recevant en entrée les signaux appliqués sur les lignes de mots WLa et WLb. Le circuit de la figure 5 fonctionne donc de façon identique à celui de la figure 2 lors d'étapes de rétention de l'information, de lecture seule de l'état de la cellule mémoire, ou encore d'écriture seule dans la cellule mémoire. Lorsqu'une B10800 - 07-GR1-237 10 étape d'écriture et de lecture simultanée est prévue, les transistors 34 et 36 sont passants, ce qui empêche le conflit entre lecture et écriture décrit ci-dessus. Les figures 6A à 6E sont des chronogrammes illustrant le fonctionnement du dispositif de la figure 5 lors d'une étape simultanée d'écriture et de lecture. Plus particulièrement, les figures 6A et 6B illustrent les signaux sur les lignes de mots WLb et WLa, la figure 6C, le signal AWL, et les figures 6D et 6E, les signaux sur les noeuds G et D. A un instant t0, l'écriture commence et le signal sur la ligne de mots WLb passe à un état haut. Le début de lecture à l'instant t0 implique le début du changement de l'état sur les noeuds G et D. Dans l'exemple représenté, le noeud G est initialement à un état "1" et passe, du fait de l'écriture, à un état "0". A un instant t1, la lecture commence et le signal sur la ligne de mots WLa passe à un état "1". Ceci provoque, puisque l'écriture est également en cours, le passage à l'état haut du signal AWL, ce qui connecte les lignes de bits BLTa et BLTb et les lignes de bits BLFa et BLFb. Ainsi, les lignes de bits d'écriture BLTb et BLFb forcent les lignes de bits de lecture BLTa et BLFa au nouvel état imposé par l'écriture. Pendant ce temps, l'écriture sur les noeuds G et D se poursuit, comme si l'étape de lecture n'avait pas lieu, pour atteindre un deuxième état. Le noeud G passe ainsi à l'état "0" et le noeud D à l'état "1". Lorsque le signal WLB passe à l'état "0", le signal AWL passe également à "0". La lecture se poursuit, quant à elle, mais n'influe plus sur l'état du circuit de la figure 5. Ainsi, l'utilisation des transistors 34 et 36 pour connecter les lignes de bits de chaque paire de lignes de bits lorsqu'une écriture/lecture simultanée est réalisée assure la réalisation d'une écriture correcte dans le circuit bistable 20. Le fonctionnement de la structure prévue ici a été détaillé dans le cas d'une lecture et d'une écriture simultanée. On notera que, si deux opérations de lecture simultanées sont réalisées, B10800 - 07-GR1-237 11 le dispositif proposé ici fonctionne de façon identique aux structures connues. Des modes de réalisation particuliers de la présente invention ont été décrits. Diverses variantes et modifications apparaîtront à l'homme de l'art. En particulier, on notera que les types de conductivité des transistors formant le circuit de la figure 5 pourront être modifiés, les signaux de commande sur les grilles de ces transistors étant alors également modifiés. Dans ce cas, la porte ET 40 pourra être remplacée par toute porte ou système logique adapté. On pourra également prévoir de réaliser les moyens de connexion des lignes de bits BLTa et BLTb et BLFa et BLFb différemment de la façon décrite en relation avec la figure 5. De plus, le circuit bistable 20 a été décrit connue étant constitué de deux circuits inverseurs classiques connectés en inverse l'un de l'autre, on notera que l'on pourra prévoir ce circuit bistable de toute autre façon connue dans l'état de la technique. REVENDICATIONS1. Mémoire vive double port comprenant au moins une cellule mémoire élémentaire associée à deux paires de lignes de bits (BLTa/BLFa, BLTb/BLFb) et à deux lignes de mots (WLa, WLb), caractérisée en ce qu'elle comprend des moyens de connexion (34, 36) de premières lignes de chaque paire entre elles et de deuxièmes lignes de chaque paire entre elles lors d'étapes de lecture et d'écriture simultanées dans ladite cellule élémentaire. 2. Mémoire vive selon la revendication 1, dans lequel les moyens de connexion sont constitués d'un premier transistor MOS (34) placé entre les premières lignes de chaque paire (BLTa/BLTb) et d'un deuxième transistor MOS (36) placé entre les deuxièmes lignes de chaque paire (BLFa/BLFb). 3. Mémoire vive selon la revendication 2, dans laquelle les premier et deuxième transistors MOS (34, 36) ont leurs grilles connectées à des moyens de génération (40) d'un signal de lecture/écriture simultanée. 4. Mémoire vive selon la revendication 3, dans laquelle les moyens de génération d'un signal de lecture/écriture simultanée comprennent une porte logique (40) dont les entrées sont connectées aux lignes de mots (WLa, WLb). 5. Mémoire vive selon l'une quelconque des revendications 1 à 4, dans lequel chaque cellule élémentaire comprend un circuit bistable (20) connecté aux lignes de bits et aux lignes de mots par l'intermédiaire de transistors commandables (26, 28, 30, 32). 6. Mémoire vive selon la revendication 5, dans lequel le circuit bistable (20) comprend deux circuits inverseurs (22, 24) connectés en inverse l'un de l'autre. 7. Mémoire vive selon la revendication 5 ou 6, dans lequel deux transistors commandables (26, 28) sont prévus entre les premières lignes (BLTa, BLTb) de chaque paire et un premier noeud du circuit bistable (G) et deux transistors commandables (30, 32) sont prévus entre les deuxièmes lignes (BLFa, BLFb) deB10800 - 07-GR1-237 13 chaque paire de lignes de bits et un deuxième noeud du circuit bistable (D). 8. Procédé de réalisation d'une étape simultanée d'écriture et de lecture dans une cellule élémentaire d'une mémoire vive double port associée à deux paires de lignes de bits (BLTa/BLFa, BLTb/BLFb), comprenant une étape de connexion de premières lignes de chaque paire (BLTa, BLTb) entre elles et de deuxièmes lignes de chaque paire (BLFa, BLFb) entre elles.