Brevet FR2766594A1 — publié le 19990129

DISPOSITIF DE RE-INITIALISATION A COMMANDE EXTERNE POUR UNE MÉMOIRE NON VOLATILE EN CIRCUIT INTÉGRÉ La présente invention concerne un dispositif de réinitialisation à commande externe pour une mémoire non volatile en circuit intégré. Les circuits mémoire comportent habituellement une circuiterie de ré-initialisation sur détection d'une descente ou d'une remontée de la tension d'alimentation logique Vcc du circuit intégré. C'est la circuiterie POR, pour Power On Reset en littérature anglo-saxonne, dont le mécanisme permet d'empêcher toute opération en mémoire dès que la tension d'alimentation chute en dessous d'un seuil à la descente déterminé, ou repasse au-dessus d'un seuil à la montée déterminé. I1 faut toutefois une descente de la tension d'alimentation suffisamment longue (quelques microsecondes) pour être détectée par la circuiterie POR. Dans un système applicatif, le circuit mémoire est un parmi d'autres qui sont gérés par au moins un circuit microprocesseur ou microcontrôleur, pour mettre en oeuvre un programme applicatif. Dans un tel contexte, il peut être utile au microprocesseur de forcer la ré-initialisation du circuit mémoire. Ce peut être le cas lorsque le microprocesseur a détecté une erreur dans les instructions envoyées à la mémoire, erreur qui peut être due à du bruit provoquant des impulsions parasites sur un signal de contrôle. Ce peut-être le cas si le microprocesseur a envoyé certaines instructions au circuit mémoire et qu'ensuite il détecte une baisse de la tension d'alimentation. I1 est alors souhaitable que le microprocesseur puisse stopper l'exécution des instructions dans le circuit mémoire. En effet, la circuiterie POR est lente à détecter une variation et ne détecte pas les descentes trop rapides. En outre, la circuiterie POR n'est pas très précise quant aux seuils de détection. Par exemple, pour un seuil à la descente fixé à 3,7 volts, elle va en pratique se déclencher dans un intervalle [3,5 - 3,9) volts, en fonction de la température ambiante, des variations de procédé de fabrication... Le microprocesseur lui comprend des moyens de détection très précis et rapides. I1 est donc opportun que le microprocesseur qui détecte ces variations alors qu'il a envoyé des instructions à exécuter dans le circuit mémoire, puisse stopper ce dernier de manière à prévenir toute erreur d'exécution (écriture mémoire). Notamment, dans les applications GSM, il est très important d'avoir un seuil de détection très précis, ce qu'offre le microprocesseur dans une telle application, mais pas la circuiterie POR du circuit mémoire. Dans tous ces cas qui ne sont pas exhaustifs, il y a un intérêt certain à permettre au microprocesseur de forcer la ré-initialisation du circuit mémoire pour le protéger ou le débloquer. On peut en outre avoir besoin de forcer la ré-initialisation du circuit mémoire en test industriel. Dans l'état de la technique, pour forcer la réinitialisation du circuit mémoire, il faut déclencher le mécanisme POR, c'est à dire forcer une descente, suffisamment longue (quelques microsecondes) de la tension d'alimentation logique du circuit mémoire. I1 est alors nécessaire de séparer l'alimentation logique du circuit mémoire de l'alimentation logique des autres circuits du système applicatif, pour ne pas affecter ces derniers en cas de ré-initialisation forcée. En outre, on a vu que la circuiterie POR nécessite une descente longue1 ce qui va ralentir sensiblement le programme applicatif. Dans une application GSM notamment, la réponse trop lente de la circuiterie POR fait perdre tous les avantages de la détection précise du microprocesseur. Ce problème se retrouve en test industriel du circuit mémoire. On sait en effet toute l'importance de la durée du test qui a une incidence directe sur les coûts et les délais de livraison. Un objet de l'invention est de résoudre ce problème technique de ré-initialisation d'un circuit intégré. Un objet de l'invention est un dispositif de réinitialisation apte à répondre rapidement (en quelques centaines de nanosecondes) à une commande de déclenchement externe. Un autre objet de l'invention est un dispositif de ré-initialisation qui se combine au dispositif POR pour offrir une couverture de protection très complète du circuit intégré. Une solution à ce problème technique a été trouvée dans l'invention dans un dispositif interne du circuit intégré recevant un ou plusieurs signaux externes appliqués au circuit intégré, apte à reconnaître une séquence particulière sur les-dits signaux, différente des séquences de fonctionnement opérationnel du circuit intégré, et qui produit en sortie un signal de réinitialisation interne du circuit intégré. Selon un mode de réalisation de l'invention, le dispositif comprend un détecteur d'une haute tension sur une entrée de signal externe dont le niveau en opérationnel est zéro ou Vcc. Selon un autre mode de réalisation de l'invention, le dispositif comprend une machine d'état recevant en entrée les-dits signaux et configurée pour détecter une séquence particulière d'états logiques sur ces signaux. On peut combiner les modes de réalisation, offrant ainsi plusieurs commandes externes différentes de réinitialisation forcée du circuit mémoire. Le signal de ré-initialisation délivré par le dispositif de l'invention sera de préférence combiné au signal de ré-initialisation délivré par la circuiterie POR pour commander les différents circuits de remise à zéro. D'autres caractéristiques et avantages de l'invention sont détaillés dans la description suivante faite à titre illustratif et non limitatif de l'invention, en référence aux dessins annexés dans lesquels - la figure 1 représente un dispositif selon un premier mode de réalisation de l'invention; - la figure 2 représente un chronogramme associé des différents signaux; - la figure 3 représente un dispositif selon un autre mode de réalisation de l'invention; - la figure 4 représente un chronogramme correspondant et - la figure 5 montre un exemple de combinaison des deux modes de réalisation précédents. La figure 1 représente un dispositif interne d'un circuit mémoire apte à détecter une haute tension sur une entrée de signal externe As, dont le niveau opérationnel est zéro ou Vcc (Vcc étant l'alimentation logique du circuit intégré). Le signal d'entrée externe Ax utilisé sera typiquement un signal d'adresse ou un signal de contrôle, comme le signal de sélection de boîtier CS ou le signal de déclenchement de lecture ou d'écriture. Le dispositif comprend un détecteur de haute tension 1 qui est connecté en entrée au signal d'entrée externe Ax, et qui produit en sortie un signal de réinitialisation forcée, noté Resetl. Dans l'exemple représenté, le circuit intégré comprend en outre un dispositif 2 de détection de descente/remontée de l'alimentation logique Vcc appliquée au circuit. Ce dispositif POR produit en sortie un signal de ré-initialisation correspondant, noté POR1. Dans l'exemple, le signal de ré-initialisation forcée Resetl et le signal de ré-initialisation POR1 sur descente/remontée d'alimentation Vcc sont combinés dans une porte logique 3 de type OU, pour produire un signal de ré-initialisation général RG. Ce signal de ré-initialisation général RG est appliqué à la circuiterie d'initialisation 4 proprement dite, qui comprend un circuit de génération d'une impulsion de ré-initialisation INIT de largeur minimum, qui est appliquée en entrée d'initialisation des différents éléments logiques du circuit mémoire registres de commande, bascules, PLA, circuiterie d'écriture. La figure 2 représente un chronogramme correspondant des différents signaux de réinitialisation. On a tout d'abord représenté les deux impulsions de détection d'une descente (a) et d'une remontée (b) de l'alimentation logique produites sur le signal POR1. On retrouve ces deux impulsions sur le signal de réinitialisation général RG, et deux impulsions de réinitialisation INIT correspondantes, avec une largeur minimum. On a ensuite représenté une impulsion de détection d'une haute tension sur le signal d'entrée externe Ax, produite par le détecteur de haute tension 1 sur le signal Resetl. Cette impulsion se retrouve sur le signal de réinitialisation général RG. Elle produit une impulsion correspondante sur le signal INIT (par le générateur d'impulsion 4). La figure 3 représente un autre mode de réalisation de l'invention. On utilise ici les signaux d'adresse A0-An et les signaux de données D10-D17 appliqués en entrée du circuit intégré pour appliquer la commande externe de ré-initialisation forcée du circuit mémoire. Une machine d'états 5 est ainsi prévue comme dispositif de détection de cette commande externe. Elle reçoit en entrée, les signaux d'adresse et de données précités et un signal de séquencement CK, produit à partir de l'un des signaux de sélection du boîtier CE et d'écriture WE, l'autre étant maintenu à zéro Cette machine d'états, qui sera en pratique un réseau logique programmable PLA, est programmée pour reconnaître une séquence de niveaux logiques particulière sur les-dits signaux et produire en sortie un signal de ré-initialisation forcé Reset2. De préférence, comme dans l'exemple précédemment décrit en référence à la figure 1, le signal Reset2 est combiné dans une porte logique 3 de type OU au signal POR1 produit par un dispositif 2 de détection de descente/remontée de la tension d'alimentation logique Vcc appliquée au circuit intégré (les éléments communs aux figures 1 et 2 portent les mêmes références). Cette séquence particulière doit correspondre à une séquence non opérationnelle du circuit mémoire, c'est à dire qui ne déclenche aucune commande dtécriture/lecture. A partir de l'état initial, à chaque impulsion sur le signal de séquencement CK, la machine d'états 5 décode ce qui lui est présenté en entrée pour détecter un premier code . Si il y a détection, elle se place au niveau du deuxième code pour la séquence suivante. Sinon elle reste au premier code . Si elle décode le deuxième code , elle se positionne au troisième code , sinon elle retourne au premier code , et ainsi de suite. La séquence de commande externe que l'on peut choisir, dépend principalement du jeu d'instructions opérationnel du circuit intégré. Dans un exemple de circuit mémoire comprenant une instruction d'écriture en mode page, c'est à dire permettant l'écriture de plusieurs mots (bytes) à différentes adresses colonnes, sur une même adresse de rangée, on choisit une séquence correspondant au mode page, dans laquelle on change les adresses de rangée. Comme le changement d'adresse de rangée est interdit en mode page, l'écriture n'est pas déclenchée. En utilisant une telle séquence avec des données déterminées et une séquence d'adresses différentes déterminées, on obtient une séquence de commande externe de ré-initialisation aisée à mettre en oeuvre. Un exemple d'une telle séquence est donné sur la figure 4. Les adresses (hexadécimales) 555 et AAA s'alternent successivement en relation avec des données AA, 55, 80 et 40 dans une séquence déterminée. La machine d'états 5 décode cette séquence et dans l'exemple, après la détection du cinquième code , force une transition haute en sortie sur le signal de ré-initialisation forcée Reset2. En pratique, l'adresse est décodée sur le front descendant du signal (CE) et la donnée sur le front montant. La transition sur le signal Reset 2 est reproduite sur le signal de ré-initialisation général. Il s'ensuit une impulsion d'initialisation sur le signal INIT qui ré-initialise les différents éléments logiques du circuit mémoire, dont la machine d'états 5 elle-même. Elle se repositionne donc sur le premier code à détecter et fait repasser à zéro le signal de sortie Reset2 (transition basse) et par suite, le signal de ré-initialisation général RG. La figure 5 montre une combinaison possible des deux modes de réalisation de l'invention décrits. Les deux signaux Resetl, Reset2 sont combinés dans une porte logique OU 6 pour produire un signal général de ré-initialisation forcée Reset, lui-même combiné au signal POR1 dans une porte logique OU 7, pour produire le signal de ré-initialisation général RG. On a alors un circuit mémoire qui permet une réinitialisation externe par différents moyens 1, 5. Cela permet une adaptation au système applicatif visé, en fonction des moyens externes disponibles. REVENDICATIONS 1. Dispositif de ré-initialisation d'un circuit mémoire en circuit intégré auquel sont appliqués des signaux externes en entrée, pour commander un fonctionnement dudit circuit mémoire à partir de séquences opérationnelles sur les-dits signaux, caractérisé en ce qu'il comprend des moyens de détection (1,5) d'une séquence particulière sur l'un au moins desdits signaux, pour produire en sortie un signal de ré-initialisation forcée (Resetl) vers des éléments logiques du circuit mémoire. 2. Dispositif de ré-initialisation selon la revendication 1, caractérisé en ce que lesdits moyens de détection comprennent un détecteur de haute-tension (1) sur une entrée (Ax) de signal externe et qui produit en sortie un premier signal de réinitialisation forcée (Resetl). 3. Dispositif de ré-initialisation selon la revendication 1, caractérisé en ce que lesdits moyens de détection comprennent une machine d'états (5) pour reconnaître une séquence de niveaux logiques sur au moins un signal d'entrée externe du circuit intégré et qui produit en sortie un deuxième signal de réinitialisation forcée (Reset2). 4. Dispositif de ré-initialisation selon la revendication 3, caractérisé en ce que la séquence particulière consiste en une séquence d'écriture en mode page avec au moins un changement d'adresse de rangée à chaque nouvelle donnée. 5. Dispositif de ré-initialisation selon l'une quelconque des revendications précédentes, caractérisé en ce que le premier signal de ré-initialisation forcée (Resetl) et/ou le deuxième signal de ré-initialisation forcée (Reset2) sont combinés avec un signal de réinitialisation (POR1) délivré par un détecteur (2) de descente/remontée de l'alimentation logique (Vcc) du circuit intégré, au moyen de portes logiques OU, pour fournir un signal de réinitialisation général (ru). 6. Circuit mémoire en circuit intégré comprenant un dispositif de ré-initialisation selon l'une quelconque des revendications précédentes.