Brevet FR2608803A1 — publié le 19880624

DISPOSITIF DE PROTECTION D'UNE MEMOIRE MORTE EFFACABLE ET REPROGRAMMABLE La présente invention concerne les dispositifs de protection d'une mémoire morte effaçable et reprogrammable pour circuits intégrés. Le premier type de mémoire morte effaçable et reprogranmmble est connu sous l'appellation de mémoire EPROM. Il s'agit de mémoire non volatile et dont le contenu peut être effacé par exposition à un rayonnement ultra-violet. Sans effacement volontaire du contenu d'une telle mémoire, il est toujours possible d'écrire par dessus une première programmation, mais cela a généralement pour effet de superposer les deux programmations, soit en définitive de perdre les informations. Le deuxième type de mémoire morte effaçable et reprogramnmable est connu sous l'appellation de mémoire EEPROM. Il s'agit dans ce cas, de mémoires non volatiles dont le contenu peut être effacé électriquement, c'est-àdire, par application de niveaux de tensions prédéterminés. Dans ce cas également, il est toujours possible de reprogrammer par dessus une première programmation, mais cela a également pour effet de perdre toutes les informations. Lorsque de telles mémoires ont été programmées, il n'est pas possible sans aller lire leur contenu de savoir si elles ont été effectivement programmées. Or, pour lire le contenu d'une mémoire, Il faut la connecter à un circuit de lecture. Cette opération est fastidieuse mais nécessaire si on ne veut pas prendre le risque, en prenant une mémoire pour la programmer, de superposer deux programmations ce qui conduit par conséquent, à des informations n'ayant plus de sens ou à une perte des premières informations stockées. Il est classique de protéger des EPROM ou EEPROM mémoires contre toute falsification de leur contenu, en les rendant inutilisables. Pour cela, on procède à une programmation d'un bit témoin dans la mémoire, en fin de programmation de celle-ci. Ainsl, lorsque la mémoire est déprogrammée, volontairement ou involontairement, le bit témoin est aussi déprogrammé. Comne ce bit témoin est utilisé pour l'adressage en lecture, la lecture de la mémoire est bloquée. La présence du bit témoin empêche donc uniquement l'utilisation de la mémoire lorsque celle-ci a été effacée partiellement ou a été reprogrammée. Une telle protection ne convient pas pour résoudre le problème qui est posé, puisqu'il s'agit d'interdire une reprogrammation non désirée. Pour remédier à ce problème, la présente invention propose un dispositif de protection d'une mémoire morte effaçable et reprogrammable, caractérisé en ce qu'il comporte une cellule mémoire et des moyens d'écriture et de lecture de la cellule permettant de programmer cette cellule à un état déterminé, la programmation de cette cellule inhibant tout signal d'écriture de données dans la mémoire de manière à interdire une reprogrammation de la mémoire sans effacement préalable de la programmation de la cellule. D'autres particularités et avantages de la présente invention apparaîtront clairement à la lecture de la description suivante présentée à titre d'exemple non limitatif et faites en regard de la figure annexée qui représente: - un schéma de réalisation d'un dispositif selon l'invention correspondant à un mode de réalisation préférentiel. La mémoire représentée sur la figure unique correspond à une mémoire morte, non volatile, et effaçable soit électriquement, soit par rayonnement ultraviolet. La programmation de cette mémoire se fait d'une manière classique en soi c'est-à-dire par application de niveaux de tension déterminés sur chaque ligne et sur chaque colonne de manière à ce que l'état logique de chaque point mémoire formé par un transistor de type MOS relié à une ligne et à une colonne soit modifié ou non. La prograuimnation de la mémoire est faite par l'intermédiaire de décodeurs de lignes 2 et de colonnes 3. Ces décodeurs permettent respectivement de décoder les adresses lignes ADL et les adresses colonnes ADC et d'aller lire des données O ou écrire des données I selon l'état du signal de lecture-écriture R/W. L'écriture se fait après réception d'un signal d'autorisation WE. Selon le dispositif de l'invention, le signal d'autorisation d'écriture WE, n'est pas directement appliqué aux décodeurs lignes-colonnes. Ce signal est appliqué à l'entrée d'une porté ET 4. La porte ET 4 reçoit sur une autre entrée le signal de sortie d'une porte inverseuse 5. La porte inverseuse 5 reçoit le signal correspondant à un état logique "0" ou "1" d'une cellule mémoire 6 selon que cette cellule a été programmée ou non. La cellule mémoire 6 est programmée à la réception d'un ordre de fin de programmation SFP de la mémoire 1 et d'autorisation d'écriture WE. Les signaux correspondant SFP et WE sont appliqués respectivement aux entrées diune porte ET 7. Les deux conditions permettant la programmation de la cellule 6 sont réunies lorsque ces signaux sont à l'état 1 de manière à ce que la sortie de la porte 7 permette, lorsqu'un ordre d'écriture W de la cellule 6 est donné, de programmer cette cellule selon l'état désiré. Tant que le signal de fin de programmation SFP n'est pas appliqué c'est-àdire, tant que le signal se trouve à un état O la mémoire 1 est programmable. Lorsque l'utilisateur termine la programmation de cette mémoire, il commande l'émission du signal SFP dont l'état logique traduit la fin de programmation et l'état logique du signal d'autorisation d'écriture WE est maintenu de manière à pouvoir écrire dans la cellule 6, ces deux signaux sont reçus à l'entrée de la porte ET 7. Le niveau logique de sortie de cette porte permet alors de programmer la cellule mémoire 6 soit par exemple en la faisant passer d'un état logique O A un état logique 1, un ordre d'écriture ayant bien entendu été donné. Pour obtenir l'ordre de lecture-écriture on utilise l'ordre R/W de la nmémoire 1, inversé par une porte 8. Lors d'une première programmation de la mémoire 1, le signal R/W est par exemple A 1, ce qui correspond A un ordre d'écriture pour la mémoire 1, et A un ordre de lecture de la cellule 6. Le signal d'autorisation d'écriture WE est A l'état 1. Le contenu de la cellule 6 est lu, l'état logique de ce contenu est par exemple 0, la sortie de la porte 5 est à 1. La sortie de la porte 4 est à 1, la mémoire 1 est programmable. A la fin de la programmation de la mémoire 1, le signal SFP est à 1, le signal West à 1, le signal R/West à 0 ce qui correspond à un ordre d'écriture de la cellule 6. L'état logique de programmation de la cellule est par exemple un 1. La sortie de la porte 5 est un 0. La porte 4 interdit toute autorisation d'écriture. Pendant toute tentative d'écriture dans la mémoire 1, après programmation de la cellule 6, le contenu de cette cellule est systématiquement lu, ce qui empêche toute reprogrammation. En effet, la porte ET 4, qui reçoit à l'une de ces entrée le signal traduisant l'état logique de la cellule mémoire 6 interdira, quelque soit l'état logique du signal d'autorisation d'écriture WE dans la mémoire 1, toute reprogrammation de celle-ci. La mémoire 1 est donc protégée contre la reprogrammation c'est-à-dire par un utilisateur qui ne savait pas que cette mémoire était progranmmée. Il est bien entendu toujours possible de reprogrammer une telle mémoire dans le cas d'une mémoire EPROM par exemple en prévoyant une fenêtre qui laisse passer un rayonnement ultraviolet sur toutes les cellules mémoires y compris la cellule de protection 6 de cette mémoire 1. Pour permettre la lecture et l'écriture de la cellule 6 qui comporte un transistor à grille flottante, les portes 7 et 8 sont choisies de manière à ce qu'elle fournissent un niveau bas à 5 V ou un niveau haut à 12 V. REVENDICATIONS 1. Dispositif de protection d'une mémoire (1) morte effaçable et reprogrammable, caractérisé en ce qu'il comporte une cellule mémoire (6) et des moyens d'écriture et de lecture de la cellule mémoire permettant de programmer cette cellule à un état déterminé, la programmation de cette cellule inhibant tout signal d'écriture de données dans la mémoire (1) de manière à interdire une reprogrammation de cette mémoire (1) sans effacement préalable de la programmation de la cellule. 2. Dispositif selon la revendication 1, caractérisé en ce que les moyens de lecture-écriture de la cellule (6) permettent de lire l'état de la cellule (6) pendant l'écriture de données dans la mémoire et inhiber cette écriture si la cellule est programmée dans l'état déterminé et en ce qu'il permettent de programmer la cellule (6) après la fin de l'écriture des données dans la mémoire. 3. Dispositif selon la revendication 1, caractérisé en ce que la cellule mémoire (6) est à l'extérieur de la mémoire (1) et en ce que les moyens d'écriture et de lecture de la cellule (6) comportent une première porte (7) recevant à une première entrée un signal de fin de programmation (SFP) de la mémoire du circuit et à une deuxième entrée un signal d'autorisation d'écriture (WE), le signal de sortie de la porte (7) permet selon son état de programmer la cellule ou de lire son état, une deuxième porte (4) recevant à une entrée le signal d'autorisation d'écriture et à une deuxième entrée le signal inversé de sortie de la cellule mémoire (6), la sortie de la porte (4) étant apte à autoriser ou non l'écriture dans la mémoire (1). 4. Dispositif selon l'une quelconcue des revendications 1 à 3, caractérisé en ce que les portes (7,4) sont des portes ET et en ce que les ordres d'écriture et de lecture (R/W) de la mémoire (1) sont appliqués à la cellule (6) par l'intermédiaire d'une porte inverseuse (8).