Brevet FR2632110A1 — publié le 19891201

La présente invention est relative à un procédé et à un dispositif de programmation d'une mémoire du type PROM et, plus particulièrement, à un tel procédé et un tel dispositif qui mettent en jeu un-nombre réduit de broches d'accès cette mémoire pour cette programmation. La présente invention est aussi relative a une mémoire du type PROM qui fait application du procédé de programmation suivant l'invention. Certains produits calculateurs du commerce sont équipés de mémoires permanentes du type ROM. Pour des raisons de souplesse d'utilisation, on est conduit à remplacer, dans ces produits, des mémoires ROM par des mémoires PROM électriquement programmables Le produit peut étire ainsi proposé soit dans une première version programmée de manière inaltérable, soit dans une deuxième version autorisant une adaptation de la programmation à telle ou telle application du produit, éventuellement par les soins de l'utilisateur final du calculateur. Il s'agit alors d'assurer la compatibilité broche & broche des deux versions en ce qui concerne les connexions extérieures du calculateur. Ceci implique que l'on -choisisse une transmission en série des informations lors de la programmation de la mémoire PROM. Pour programmer une mémoire PROM avec une transmission des informations par une liaison de type série il faut assurer les transferts d'informations suivants - transfert des adresses des informations à programmer, d'un programmateur vers la mémoire, - transfert de la donnée à programmer, - transfert d'une information temporelle fixant la durée d'une impulsion de programmation, du programmateur vers la mémoire, - transfert d'un signal d'horloge pour synchroniser la transmission. Il faut en outre assurer l'application à chaque point-mémoire d'une tension spécifique à la programmation. L'ensemble de ces contraintes impliquent alors l'utilisa- tion, pendant la programmation de la mémoire, de cinq broches d'accès à cette mémoire Le fait que l'on souhaite, par hypothèse, que la mémoire PROM soit substituable broche à broche à une mémoire ROM d'un produit calculateur disponible dans ces deux versions, oblige à organiser la programmation de cette mémoire avec un nombre de broches réservées à cet usage qui est inférieur au nombre mentionné ci-dessus. Dans cette optique on peut réduire à quatre le nombre de broches nécessaire à la programmation en transférant sur une méme ligne les informations d'adresses et de données, avec un multiplexage-démultiplexage adéquat. Pour réduire encore le nombre de liaisons utilisées en programmation de la mémoire PROM on peut aussi intégrer à la mémoire des blocs spécifiques pour établir la tension de programmation et/ou la durée de l'impulsion de programmation. Il s'agit la d'une approche connue pour les mémoires programmables et effaçables électriquement, dites EEPROM pour lesquelles le nombre de programmations successives peut être important, par exemple supérieur à 10.000. Mais cette solution a pour inconvénient d'exiger un accroissement important de la surface d'un circuit intégré muni de tels blocs, du fait de la présence de ceux-ci. Pour des mémoires PROM électriquement programmables (EPROM) cette solution est mal adaptée, notamment pour les mémoires PROM qui ne sont programmables qu'une seule fois et dans lesquelles les blocs additionnels spécifiques encombrent inutilement la surface de la mémoire, une fois celle-ci programmée. La présente invention a donc pour but de fournir un procédé de programmation d'une mémoire du type PROM qui n'utilise qu'un nombre minimum de liaisons et qui n'a pas recours à l'intégration dans la mémoire de blocs fonctionnels spécifiques à la programmation. La présente invention a aussi pour but de réaliser un dispositif de programmation pour la mise en oeuvre de ce procédé. La présente invention a encore pour but de réaliser une mémoire électriquement programmable faisant application du procédé suivant l'invention. On atteint ces buts de. l'invention, ainsi que d'autres qui apparaitront dans la suite, avec un procédé de programmation d'une mémoire PROM par application à chaque point-mémoire d'au moins une impulsion de tension de programmation de durée prédéterminée, les informations d'adresses et de données étant transférées en multiplex par l'intermédiaire d'une ligne unique, caractérisé en ce qu'on transfère par cette même ligne l'information relative à la durée de l'impulsion de tension de programmation, avec un signal de tension de niveau distinct de celui utilisé pour les informations d'adresses et de données, on détecte la durée de la présence sur ladite ligne de ce signal de tension et on commande l'application d'une impulsion de tension de programmation de durée correspondante au point-mémoire à programmer. Pour la mise en oeuvre de ce procédé, l'invention propose un dispositif de programmation comprenant un programmateur relié par une première ligne a la mémoire pour transmettre à celle-ci des informations d'adresses et de données concernant chaque point-mémoire à programmer, une source de tension de programmation connectée par une deuxième ligne à cette mémoire pour l'application sélective de cette tension aux points-mémoire à programmer, ca ractérisé en ce qu'il comprend un moyen pour appliquer sur la première ligne un signal de tension représentatif de la durée d'application de la tension de programmation à un point-mémoire déterminé, ce signal de tension présen- tant un niveau distinct de celui des signaux représentatifs des informations d'adresses et de données transmises par cette ligne, et un détecteur de tension connecté à ladite première ligne et sensible à la présence sur celle ci dudit signal de tension pour commander un organe de commutation qui connecte alors la source de tension de programmation audit point-mémoire pendant la durée d'application de ce signal de tension sur la première ligne. La présente invention propose encore, pour la mise en oeuvre du procédé de programmation énoncé ci-dessus, une nouvelle mémoire électriquement programmable comprenant, combinés dans un même circuit intégré, une mémoire programmable classique, le détecteur de tension du dispositif énoncé ci-dessus, ce détecteur étant implanté entre une première broche de la mémoire connectée à une première ligne d'alimentation de cette mémoire en informations d'adresses et de données relatives aux points-mémoire à programmer et une deuxième broche connectée à une deuxième ligne d'alimentation de la mémoire avec une source de tension de programmation, la mémoire comprenant en outre un organe de commutation commandé par le détecteur de tension pour commander la connexion de cette source à un point-mémoire déterminé, en réponse à la présence sur la première ligne d'un signal présentant un niveau de tension prédéterminé, ce signal étant représentatif de la durée d'une impulsion de tension de programmation à appliquer au point-mémoire. Au dessin annexé, donné seulement à titre d'exemple - la figure 1 est un schéma du dispositif de programmation suivant l'invention, et - la figure 2 est un diagramme temporel de plusieurs signaux appliqués au dispositif de la figure 1, pour la programmation d'une mémoire PROM électriquement programmable. Le dispositif de programmation suivant l'invention représenté à la figure 1 est destiné au chargement d'une mémoire 1 du type PROM, électriquement programmable par de fortes impulsions de courant, comme il est bien connu dans la technique. Des informations d'adresses A et de données D sont transférées dans la mémoire 1 par une première ligne 2 connectée à une broche d'accès série 3 du dispositif. Un programmateur (non représenté) est connecté à cette broche 3 pour fournir ces informations d'adresses et de données A et D respectivement, à divers points-mémoire de la mémoire 1 à programmer. Une horloge externe (non#représentée) est connectée au dispositif par une broche 4 pour assurer la synchronisation des transferts d'informations d'adresses et de données Celles-ci sont stockées dans un registre à décalage 6 commandé par l'horloge. Elles sont disponibles pour la programmation de la mémoire 1 après démultiplexage, comme il est bien connu. On notera que la transmission suivant un mode série des informations d'adresses et de données sur une même ligne, associée à un stockage en registre et à un démultiplexage contribue, par une voie classique, à la réduction du nombre de liaisons nécessaires à la programmation de la mémoire 1 qui est l'objectif visé par l'invention. Celle-ci permet d'aller plus loin dans cette voie, comme on le verra dans la suite. Une source de tension de programmation Vpp (non représentée) est connectée à une broche 5 du dispositif suivant l'invention, pour permettre l'application aux divers points-mémoire de la mémoire 1 d'impulsions de tension génératrices d'impulsions de courant dans ces pointsmémoire. Une information programmée peut être inscrite dans un point-mémoire grace à une telle impulsion de courant qui provoque, à ce point-mémoire, la destruction d'un fusible, une migration de métal par avalanche induite dans une jonction, ou l'injection d'électrons "chauds" dans la grille d'un transistor FAMOS (de l'expression anglo-saxonne Floating Gate Avalanche Injection MOS), par exemple. Un organe de commutation 7, un transistor par exemple, est placé sur une deuxième ligne qui raccorde la broche 5 à une entrée PROG de la mémoire 1. Classiquement cet organe est commandé par une quatrième broche du dispositif qui reçoit un signal PGM commandant la conduction de l'organe de commutation 7 pour appliquer à un point-mémoire déterminé une impulsion de tension de programmation de durée prédéterminée. Suivant la présente invention, on évite de recourir à cette quatrième broche, en appliquant ce signal PGM sur la première ligne 2, par la broche 3, le signal PGM présentant un niveau de tension distinct du niveau des signaux logiques transmettant par cette même ligne des informations d'adresses et de données pour la programmation des points-mémoire. Les informations d'adresses A et de données D sont transmises de manière synchrone par rapport au signal d'horloge de référence reçu sur la broche 4 et sont stockées dans le registre à décalage 6, comme il est clair en référence aux figures 1 et 2 du dessin. Elles sont alors disponibles pour la programmation, après démultiplexage. Lorsque la réception de ces informations est terminée, une impulsion PGM de largeur prédéterminée et de niveau de tension supérieur à un niveau PROG prédéterminé (voir figure 2) est envoyée par le programmateur sur la ligne 2 pour la programmation de la donnée contenue dans le registre, a l'adresse indiquée par celui-ci. Suivant la présente invention un détecteur de tension 8 est connecté par son entrée E à la ligne 2 et commande par sa sortie 5 l'état de l'organe de commutation 7 qui commande à son tour l'application de la tension de programmation Vpp à un point-mémoire de la mémoire 1. Quand la tension sur la première ligne 2 dépasse le "niveau PROG" (voir figure 2), le détecteur de tension 8 rend conducteur Organe de commutation 7 ce qui provoque l'application de la tension Vpp au point-mémoire défini par l'adresse mise en registre, pendant toute la durée du dépassement du "niveau PROG" sur la première ligne. La largeur de l'impulsion PGM est définie par le programmateur. L'impulsion PGM présente un niveau de tension prédéterminé, supérieur et suffisamment écarté de l'amplitude masima1e des signa d'#d#esses et de dunnLos pour être distingué sans erreur de ces derniers signaux par le détecteur de tension 8. Suivant un mode de réalisation préféré de l'invention, la durée de l'impulsion PGM est variable. On peut ainsi adapter l'amplitude et la durée de cette impulsion aux caractéristiques des points-mémoire a programmer, que ceux-ci soient du type à fusibles, à jonction oú à injection d'électrons "chauds" dans la grille isolée d'un transistor FAMOS. Dans ce dernier cas, par exemple, cette durée variable de l'impulsiion PGM permet de régler la durée d'application de la tension Vpp au point-mémoire de manière à assurer un chargement optimal de la grille en électrons chauds, comme il est bien connu dans la technique. Un protocole de transmission permet de fournir à la mémoire à programmer des signaux représentatifs des informations à inscrire en mémoire et des signaux permettant de contrôler la correction des informations inscrites. Suivant ce protocole on fournit des informations numériques série, synchronisées par le signal d'horloge H, qui représentent : 1) la parité des informations à transmettre 2) les données à programmer 3) un bit de contrôle écriture/lecture 4) les adresses des données à programmer Ces informations se présentent sur la première ligne 2 avec des niveaux logiques de tension classiques, du domaine EO;5 volts par exemple. On fournit aussi une information temporelle représentative de la durée de l'impulsion de programmation PGM, avec un niveau logique "haut" différent, à 17 volts par exemple, nettement distingué par le détecteur 8. Le protocole détermine aussi la réception par le programmateur des informations suivantes a) donnée effectivement programmée dans la mémoire, b) parité de cette adonnée, c) information de contrôle de la validité de la séquence de programmation. Le protocole assure encore une resynchronisation de la transmission à chaque séquence de programmation, resynchronisation qui peut intervenir à tout instant pour initier une nouvelle séquence. La mémoire programmée à l'aide du procédé suivant l'invention peut faire partie d'un circuit intégrant sur une même puce diverses fonctions nécessaires à la commande d'un dispositif tel qu'un dispositif d'allumage d'un moteur à combustion interne par exemple. Suivant l'invention on peut réaliser aussi une mémoire EPROM indépendante, en intégrant sur une même puce de silicium les divers composants représentés à la figure 1, soit une mémoire PROM électriquement programmable classique, un registre a décalage, un détecteur de tension et un organe de commutation interconnectés comme schématisé à cette figure. Grace à la réduction du nombre de broches nécessaires à la programmation obtenue par la mise en oeuvre de la présente invention, il est alors possible de présenter une mémoire EPROM à accès série dans un bo#- tier à huit broches seulement. Que le détecteur de tension 8 et l'organe de commutation 7 soient intégrés à un dispositif de commande comportant une mémoire programmable électriquement ou qu'ils forment avec cette mémoire une unité de mémoire physiquement individualisée comme décrit ci-dessus, la surface de silicium nécessaire à l'intégration de ce détecteur et de cet organe est faible en comparaison de celle occupée par les autres blocs constitutifs de la mémoire et en comparaison de celle occupée par un bloc de génération de l'information PGM qui serait intégré à lamémoire. La présente invention apporte ainsi des avantages sensibles en matière de réalisation de mémoires programmables électriquement, ou de dispositifs intégrant de telles mémoires, par la réduction du nombre de broches nécessaires à la programmation de ces mémoires ou par la réduction de la surface de puce nécessaire à l'intégration des moyens de programmation de ces mémoires. REVENDICATIONS 1. Procédé de programmation d'une mémoire PROM par application à chaque point-mémoire d'au moins une impulsion de tension de programmation de durée prédétermi- née, les informations d'adresses et de données étant transférées en multiplex par l'intermédiaire d'une ligne unique, caractérisé en ce qu'on transfère par cette même ligne l'information relative a la durée de l'impulsion de tension de programmation, avec un signal de tension de niveau distinct de celui utilisé pour les informations d'adresses et de données, on détecte la durée de la présence sur ladite ligne de ce signal de tension et on commande l'application d'une impulsion de tension de programmation de durée #correspondante au point-mémoire à programmer. 2. Procédé conforme a la revendication 1, caractérisé en ce qu'on fait varier la durée d'une impulsion de tension de programmation en fonction d'une information relative a l'état du point-mémoire à programmer. 3. Procédé conforme à l'une quelconque des revendications 1 et 2, caractérisé en ce qu'on utilise, pour la transmission de la durée de l'impulsion de tension du programmation, un signal de tension (PGM) de niveau supérieur à celui du signal #de tension nécessaire au transfert des informations d'adresses et de données. 4. Procédé conforme à la revendication 3, caractérisé en ce qu'on compare le signal de tension (PGM) représentatif de la durée de programmation a une tension prédéterminée et on commande l'application de la tension de programmation au point-mémoire aussi longtemps que dure le dépassement de ce niveau prédéterminé par ledit signal de tension. 5. Dispositif pour la mise en oeuvre du procédé de programmation d'une mémoire électriquement programmable conforme à la revendication 1, comprenant un programmateur relié par une première ligne (2) à la mémoire (1) pour transmettre à celle-ci des informations d'adresses et de données concernant chaque point-mémoire à programmer, une source de tension de programmation (Vpp) connectée par une deuxième ligne à cette mémoire pour l'application sélective de cette tension aux points-mémoire à programmer, caractérisé en ce qu'il comprend un moyen pour appliquer sur la première ligne (2) un signal de tension (PGM) représentatif de la durée d'application de la tension de programmation (Vpp) à un point-mémoire déterminé, ce signal de tension présentant un niveau distinct de celui des signaux représentatifs des informations d'adresses et de données transmises par cette ligne, et un détecteur de tension (8) connecté à ladite première ligne et sensible à la présence sur celle-ci dudit signal de tension (PGM) pour commander un organe de commutation (7) qui connecte alors la source de tension de programmation (Vpp) audit point-mémoire pendant la durée d'application de ce signal de tension (PGM) sur la première ligne. 6. Dispositif conforme à la revendication 5, ca ractérisé en ce qu'il comprend des moyens pour faire varier la durée du signal de tension représentatif de la durée d'application de la tension de programmation à un pointmémoire à programmer. 7. Dispositif conforme à la revendication 6, ca caractérisé en ce qu'il comprend des moyens sensibles à l'état du point-mémoire, après application de la tension de programmation, pour commander les moyens de variation de la durée du signal de tension représentatif de la durée d'application de la tension de programmation audit pointmémoire. 8. Dispositif conforme à l'une quelconque des revendications 6 et 7, caractérisé en ce qu'il comprend un registre à décalage 9. Mémoire électriquement programmable pour la mise en oeuvre du procédé conforme à la revendication 1, comprenant une mémoire programmable classique (1), caractérisé en ce que le détecteur de tension (8) du dispositif de la revendication 5 est intégré sur la même puce que la mémoire programmable classique (1), ce détecteur étant implanté entre une première broche (3) de la mémoire connectée a une première ligne (2) d'alimentation de cette mémoire en informations d'adresses et de données relatives aux points-mémoire à programmer et une deuxième broche (5) connectée à une deuxième ligne d'alimentation de la mémoire avec une source de tension de programmation (Vpp), la mémoire (1) comprenant en outre un organe de commutation (7) commandé par le détecteur de tension pour commander la connexion de cette source à un point-mémoire déterminé, en réponse à la présence sur la première ligne d'un signal (PGM) présentant un niveau de tension prédéterminé, ce signal étant représentatif de la durée d'une impulsion de tension de programmation à appliquer au pointmémoire. 10. Mémoire conforme à la revendication 9, caractérisée en ce qu'elle comprend, intégrée sur la même puce que la mémoire classique (1) le détecteur de tension (8) et l'organe de commutation (7), un registre à décalage (6) commandé par une horloge connectée à une troisième broche (4) de la mémoire et intercalé entre la première broche et des accès d'adresses et de données de la mémoire classique, pour assurer une transmission en série multiplexée de ces informations d'adresses et de données.