FR 2770006 A1 19990423 FR 9712968 A 19971016 CIRCUIT DE REMISE A L'ETAT INITIAL SYNCHRONE OU ASYNCHRONE La présente invention se rapporte au fonctionnement des microprocesseurs et microcontrôleurs. Plus particulièrement, elle concerne des systèmes de réinitialisation ou de remise à l'état initial (reset dans la littérature anglaise) des microprocesseurs et microcontrôleurs. La réinitialisation d'un microcontrôleur peut être commandée de façon externe par l'utilisateur. L'utilisateur a, en effet, souvent la possibilité de la déclencher par une simple pression sur une touche appropriée. La remise à l'état initial peut également intervenir sans aucune commande extérieure lors de l'activation d'un signal dit "de chien de garde". Le microcontrôleur se compose principalement d'un microprocesseur et d'un ensemble de mémoires de programmes. Lorsque l'unité centrale du microprocesseur/ microcontrôleur, qu'on appelle ici CPU, est active, elle émet périodiquement un signal vers un circuit de chien de garde, attestant ainsi de son fonctionnement. Quand l'unité centrale n'est plus active pendant un certain temps, le circuit de chien de garde émet le signal de chien de garde. Ce signal provoque la réinitialisation du microprocesseur/microcontrôleur. Dans les deux cas, à savoir que la réinitialisation du microcontrôleur soit décidée par un utilisateur ou qu'elle se produise suite a l'émission du signal de chien de garde, un signal de réinitialisation interne au microprocesseur considéré est produit. Dans tous les cas le microcontrôleur est de nouveau initialisé dans un état préalablement défini qui constitue l'état par défaut. Le signal interne de remise à l'état initial est actif pendant un temps caractéristique pour chaque microprocesseur. Ce temps représente la durée de la séquence de réinitialisation interne. Le signal externe de réinitialisation ou le signal de chien de garde peuvent demeurer actifs pendant une durée supérieure à ce temps caractéristique. Le signal interne de réinitialisation reste alors actif aussi longtemps que ces signaux. Lorsque le signal interne de remise à l'état initial n'est plus actif, le microcontrôleur relance un programme d'exécution depuis une adresse mémoire prédéfinie. Une routine d'initialisation destinée à la configuration spécifique des périphériques et des registres particuliers du microprocesseur s'exécute alors. Dans la suite de la présente demande, on ne parlera plus que de microprocesseurs. Mais tout ce qui est décrit peut s'appliquer aux microcontrôleurs. I1 existe deux types de remise à l'état initial: il s'agit de la réinitialisation dite synchrone et de la réinitialisation dite asynchrone. La réinitialisation synchrone suppose l'existence et la mise en fonction préalable d'une horloge interne au microprocesseur. Lors d'une réinitialisation synchrone, quand l'utilisateur sollicite par des moyens externes une réinitialisation du microcontrôleur, il se passe un certain temps défini par un nombre prédéterminé d'impulsions de l'horloge interne avant que le signal de réinitialisation interne ne soit réellement actif. La réinitialisation synchrone n'est effective que lorsque le signal de réinitialisation interne devient actif. Ce signal de réinitialisation interne a pour fonction essentielle de mettre tous les éléments caractéristiques du microcontrôleur dans un état préalablement défini, ces éléments caractéristiques étant le plus souvent constitués de bascules. La réinitialisation asynchrone ne nécessite pas, pour sa part, l'existence préalable d'une horloge interne au microcontrôleur. Dès que le signal de réinitialisation externe est activé par l'utilisateur, le signal de réinitialisation interne devient actif et l'état préalablement défini est immédiatement mis en place. L'avantage de la réinitialisation synchrone est qu'elle laisse le temps au microcontrôleur de terminer les actions en cours et notamment les opérations d'écriture en cours dans les registres du microprocesseur. Lors d'une réinitialisation synchrone, on limite ainsi les risques de pertes d'informations essentielles. Cependant, si on sollicite une réinitialisation synchrone juste après la mise sous tension du microcontrôleur, on se voit confronté à une forte consommation d'énergie qui peut parfois entraîner des dommages importants à l'intérieur du microprocesseur. Ceci est dû au fait que l'horloge interne du microprocesseur n'apparaît qu'au bout d'un certain temps après la mise sous tension du microprocesseur et que par conséquent le signal de réinitialisation ne peut pas se synchroniser sur l'horloge interne. On est confronté au même type de problème quand l'horloge interne disparaît accidentellement au cours de l'utilisation du microprocesseur. On est donc dans un état indéterminé jusqu'à l'apparition de l'horloge interne. La réinitialisation asynchrone est donc une solution à ce problème de réinitialisation lors de la mise sous tension du microprocesseur. Cependant la réinitialisation asynchrone ne permet plus d'achever les opérations en cours et, par conséquent, les pertes d'informations sont fréquentes. Au pire, il se peut que le CPU écrive dans une mémoire quelconque de façon aléatoire; on risque ainsi de perdre des données essentielles. Le choix entre une réinitialisation synchrone ou asynchrone pose un problème. On aimerait pouvoir avoir le choix entre un signal de réinitialisation synchrone lorsque l'horloge interne au microprocesseur existe et un signal de réinitialisation asynchrone lorsque cette horloge n'existe pas encore ou qu'elle vient à faire défaut. Ce problème est résolu selon l'invention en ce qu'elle comporte des moyens permettant de retarder le signal de réinitialisation lorsque l'horloge du microprocesseur est active, et de forcer une réinitialisation immédiate en cas d'absence du signal d'horloge. L'invention a donc pour objet un microprocesseur comportant un circuit primaire de remise à l'état initial muni de: - une première entrée pour recevoir un signal de remise à l'état initial externe au microprocesseur - une seconde entrée pour recevoir un signal d'horloge interne au microprocesseur - une sortie pour produire un signal interne de remise à l'état initial au microprocesseur, le signal interne au microprocesseur étant fonction du signal externe et du signal d'horloge; caractérisé en ce que le circuit primaire comporte: - une entrée supplémentaire pour recevoir un signal de sélection pour forcer le circuit primaire dans un mode de remise à l'état initial, synchrone ou asynchrone, et produire le signal interne de remise à l'état initial avec un retard approprié. Les différents aspects et avantages de l'invention apparaîtront plus clairement dans la suite de la description en référence aux figures qui ne sont données qu'à titre indicatif et nullement limitatif de l'invention. Les figures montrent: - la figure 1 représente, selon l'invention, le circuit de réinitialisation interne au microprocesseur permettant d'obtenir une réinitialisation synchrone ou asynchrone, - la figure 2 représente des chronogrammes caractéristiques de différents signaux mis en jeux lors d'une réinitialisation synchrone, du circuit de la figure 1, - la figure 3 représente des chronogrammes caractéristiques de différents signaux mis en jeux lors d'une réinitialisation synchrone, du circuit de la figure 1, - la figure 4 représente un schéma détaillé d'un circuit de temporisation générateur d'un signal de réinitialisation asynchrone. La figure 1 montre selon l'invention une réalisation de circuit permettant d'obtenir une réinitialisation synchrone ou asynchrone selon l'état du microprocesseur. Cette figure montre un microprocesseur 1 commandé à son entrée El par un interrupteur S1 qui, dans sa position fermée, dans un exemple, relie l'entrée El à la masse. L'entrée El reçoit un signal de réinitialisation externe RSTE significatif de l'état de la commande de réinitialisation externe. La position fermée de l'interrupteur S1 correspond à une action de l'utilisateur qui décide d'une réinitialisation du microprocesseur. Le signal de réinitialisation externe actif RSTE est alors à un niveau bas. Le microprocesseur 1 comporte plusieurs circuits. Il comprend notamment un circuit primaire 2, un circuit d'horloge H et un circuit de sélection 5. Le circuit d'horloge H peut délivrer un signal d'horloge CLK qui entre dans le circuit primaire 2 par une entrée EH. Le circuit primaire 2 a une entrée E2 qui est connectée à l'entrée El du microprocesseur 1. Le circuit primaire 2 comporte également une entrée EH recevant le signal d'horloge CLK et une entrée EO recevant le signal de sortie d'un circuit de sélection 5. Le circuit primaire 2 est donc capable, selon l'invention, d'opérer la sélection désirée réinitialisation synchrone ou asynchrone en fonction du signal délivré par le circuit de sélection. Il provoque, le cas échéant, un retard entre le signal de réinitialisation externe RSTE et un signal de réinitialisation interne RSTI. A l'intérieur du circuit primaire 2, on trouve un circuit secondaire 3 et un circuit tertiaire 4. L'entrée E2 est connectée à un noeud 6. A ce noeud 6 sont également connectés en parallèle d'une part une résistance 7 connectée à son autre extrémité à un potentiel Vcc d'alimentation du microprocesseur, et d'autre part la plaque positive d'un condensateur 8 dont l'autre plaque est reliée à la masse. Un inverseur 9 dont la sortie est branchée au noeud 10 est aussi connecté au noeud 6. Des entrées E3 et E4 du circuit de sélection 5 sont reliées au noeud 10. L'entrée E3 commande la grille d'un transistor à canal P 11. La source du transistor 11 est reliée à un potentiel Vcc qui peut dans une application préférée être généré par le microprocesseur et le drain est relié à un noeud 12. L'entrée E4 commande la grille d'un transistor à canal N dont le drain est relié au noeud 12 et dont la source est reliée à la masse. Les deux transistors 11 et 13 constituent un circuit de décharge. A un noeud 14, relié au noeud 12, sont connectés une résistance 15, reliée par son autre extrémité au potentiel Vcc et la plaque positive d'un condensateur 16 dont l'autre plaque est reliée à la masse. La résistance 15 et le condensateur 16 constituent un circuit de charge alimenté par la tension Vcc. Un potentiel Vpp donne la tension mesurée au noeud 12. Le circuit de sélection 5 admet une sortie S1 connectée d'une part au noeud 12 et d'autre part à l'entrée EO du circuit primaire 2, puis à un inverseur 17 dont la sortie est reliée à une porte ET 18. La sortie S1 produit un signal de sélection mo. Ce signal de sélection est une mesure du potentiel Vcc interne au microprocesseur. La porte ET 18 admet également en entrée le signal issu du noeud 10. Le circuit tertiaire 4 admet en entrée les signaux issus du noeud 6 et du noeud 12. Il comporte l'inverseur 9, l'inverseur 17 et la porte ET18. Le circuit tertiaire admet deux sorties S2 et S3 qui sont respectivement reliées au noeud 10 et à la sortie de la porte ET 18. Ces sorties S2 et S3 sont respectivement connectées à deux entrées E5 et E6 du circuit secondaire 3. La sorite 53 délivre le signal ASYNC qui sera significatif du caractère asynchrone de la réinitialisation. Le circuit secondaire 3 admet également une entrée E7 recevant le signal d'horloge interne CLK du microprocesseur. Les entrées E5, E6 et E7 du circuit secondaire servent également d'entrée à un circuit de temporisation 19 interne au circuit secondaire. Ce circuit de temporisation présente une sortie S4 délivrant un signal SRST qui sera significatif du caractère synchrone de la réinitialisation. La sortie S4 est reliée à l'une des entrées d'une porte OU 20; l'autre entrée est constituée par l'entrée E6 du circuit secondaire de la porte OU 20. C'est la sortie S5 de cette porte OU 20 qui constitue la sortie du circuit primaire 2 et qui délivre le signal de réinitialisation interne RSTI. Pour comprendre le fonctionnement de ce circuit on s'intéresse à différents cas de figure. Tout d'abord imaginons que l'utilisateur effectue une opération externe de réinitialisation, ce qui se traduit dans le circuit par la fermeture de l'interrupteur S1. Supposons que cette opération externe de réinitialisation se produise avant même que l'horloge interne du microprocesseur ne soit mise en place. Le noeud 6 est alors relié à la masse et son potentiel est donc nul. On a donc en sortie de l'inverseur 9 un signal à 1 que l'on retrouve au noeud 10. Le noeud 10 étant connecté à la grille du transistor à canal P 11, le transistor à canal P 11 est bloqué. En revanche le noeud 10 étant connecté à la grille du transistor à canal N 13, ce transistor est passant. Ainsi, la plaque positive du condensateur 16, qui par ailleurs ne s'est que très faiblement chargée au travers de la résistance 15 du fait de l'allumage récent du microprocesseur, va se décharger au travers du transistor à canal N 13. On a ainsi à l'entrée de l'inverseur 17 un signal à 0 et donc un signal à 1 à la sortie de cet inverseur 17. Les deux entrées de la porte ET 18 constituées par le noeud 10 et la sortie de l'inverseur 17 sont donc à 1. La sortie S3 du circuit tertiaire sera donc à 1. On aura donc, au temps de transition des portes logiques prêt, en sortie de la porte OU 20 un signal RSTI actif dès l'action de l'utilisateur sur le moyen de réinitialisation externe. On a donc bien un signal de réinitialisation asynchrone en l'absence de l'horloge interne du microprocesseur. On évite ainsi les consommations excessives et les risques de détérioration du circuit qui auraient été occasionnés si le signal de réinitialisation interne avait attendu l'horloge interne du microprocesseur pour se synchroniser dessus. Supposons maintenant que le microprocesseur ait été mis sous tension depuis quelques instants. La plaque positive du condensateur 8 a eu le temps de se charger au travers de la résistance 7. On a donc un potentiel positif au noeud 6 et on retrouve un signal à zéro au noeud 10 en sortie de l'inverseur 9. D'autre part la plaque positive du condensateur 16 s'est chargée au travers de la résistance 15 car le potentiel Vcc est présent depuis la mise sous tension du microprocesseur. On retrouve donc un signal à 1 au noeud 12 et donc un signal à 0 en sortie de l'inverseur 17. Par conséquent la sortie de la porte ET 18 est à o et la sortie de la porte logique OU 20 dépendra donc uniquement de la sortie S4 du circuit de temporisation 19. Supposons à présent que l'utilisateur effectue une opération externe de réinitialisation. Le noeud 6 a un potentiel nul. On a donc un signal à 1 au noeud 10. Le circuit de temporisation 19 reçoit dont à son entrée E5 un signal haut et à son entrée E7 le signal d'horloge interne. Ceci provoque à sa sortie S4 l'apparition d'une impulsion haute au bout d'un certain nombre d'impulsions de l'horloge interne. On a donc à la sortie de la porte OU 20 une impulsion haute. Le signal de réinitialisation interne RSTI est actif. Le détail du fonctionnement du circuit de temporisation 19 sera étudié ultérieurement. On a ainsi produit un signal de réinitialisation synchrone dans le sens ou un certain temps s'est écoulé entre la commande externe de réinitialisation décidée par l'utilisateur et le signal interne de réinitialisation que l'on trouve à la sortie du circuit primaire 2. Les opérations essentielles d'écriture dans les registres du microprocesseur ont pu être effectuées. D'autre part, le condensateur 16 a eu le temps de se charger au travers de la résistance 15 entre la mise sous tension du microprocesseur et l'opération externe de réinitialisation décidée par l'utilisateur. Le potentiel Vpp au noeud 12 est à un niveau haut. La tension positive envoyée sur la grille du transistor à canal N 13 va faire chuter progressivement le potentiel du noeud 12. Le temps de cette chute de potentiel est déterminé par les caractéristiques du transistor à canal N 13. Ce temps est nécessairement supérieur, au moins quand Vpp vaut Vcc, au temps nécessaire à l'exécution des dernières opérations d'écriture et au temps pris pour la séquence de réinitialisation interne. Au bout d'un certain temps, l'inverseur 17 peut présenter à sa sortie un signal égal à 1. Ce cas de figure peut notamment se présenter en cas de la perte ou du dysfonctionnement de l'horloge interne. Le circuit de temporisation 19 n'est alors plus en mesure de fournir un signal haut à sa sortie S4, comme on le verra dans la suite de la description. Le signal de réinitialisation interne RSTI est donc produit différemment. Les deux entrées de la porte ET 18 sont en effet toutes les deux à 1. La porte OU 20 admet par l'intermédiaire du signal ASYNC qui arrive à l'entrée E6 du circuit secondaire 3 un signal haut et délivre donc un signal RSTI haut. Sur la figure 2 on peut observer des chronogrammes des signaux essentiels intervenant lors d'une réinitialisation synchrone du microprocesseur. Le chronogramme 21 représente le signal d'horloge CLK interne au microprocesseur. Comme on étudie ici la réinitialisation synchrone, on suppose l'horloge interne présente dès l'origine des temps considérée. Le microprocesseur est effectivement supposé allumé depuis un certain temps. Le chronogramme 22 représente le signal de réinitialisation externe RSTI. Ce signal est actif quand son niveau est bas. La courbe 23 montre l'évolution du potentiel Vpp mesuré au noeud 12 de la figure 1. Là aussi, à l'origine des temps considérée, le potentiel Vpp est haut car le condensateur 16 de la figure 1 a eu le temps de se charger. Le chronogramme 24 est la représentation du signal de réinitialisation interne au microprocesseur. Ce signal est actif quand son niveau est haut. On suit sur la figure 2 l'évolution de ces quatre signaux dans le temps. L'axe des temps considéré peut être scindé en cinq intervalles de temps remarquables délimités par les instants tl, t2, t3 et t4. L'instant tl représente la durée minimale pendant laquelle le signal de réinitialisation externe doit être actif pour pouvoir être pris en compte par le reste du circuit. Ce temps est en général d'au moins deux cycles d'horloge interne pour la plupart des microprocesseurs. L'intervalle de temps compris entre les instants tl et t2 correspond au temps nécessaire au microprocesseur pour effectuer les dernières opérations d'écriture . L'intervalle de temps entre les instants tl et t2 est généralement de six cycles d'horloge interne du microprocesseur. Le signal de réinitialisation externe peut éventuellement être relâché pendant cet intervalle de temps. La période de temps compris entre les instants t2 et t3 est le temps pendant lequel le signal interne de remise à l'état initial est actif. Ce temps représente la durée de la séquence de réinitialisation interne. Cet intervalle de temps dure typiquement 512 cycles d'horloge interne au microprocesseur. L'intervalle de temps suivant, compris entre les instants t3 et t4, correspond au fonctionnement habituel du microprocesseur. Le signal de réinitialisation interne n'est alors plus actif. La courbe 23, qui représente l'évolution de potentiel Vpp en fonction du temps, montre bien, conformément aux explications faites lors de la description de la figure 1, que le potentiel vpp diminue tant que le signal de réinitialisation externe est actif et augmente vers la valeur Vcc dès que le signal de réinitialisation externe devient inactif. Sur la figure 2 représentée, le potentiel Vpp ne descend jamais en dessous d'une valeur seuil S1 typiquement égale à 2,5 volts. En dessous de cette valeur seuil, l'inverseur 17 de la figure 1 basculerait et le signal de réinitialisation asynchrone ASYNC passerait à un niveau haut. Ce cas de figure peut se produire lors d'une défaillance de l'horloge interne. Des explications plus détaillées seront données à la description de la figure 4. De plus, la figure 2 montre une situation ou le signal de réinitialisation externe est relâché avant la fin de la séquence de réinitialisation interne, qui s'achève à l'instant t3. Dans le cas où le signal de réinitialisation externe est relâché après l'instant t3, le signal de réinitialisation interne demeure actif aussi longtemps que le signal de réinitialisation externe est actif. Sur la figure 3, on peut observer les chronogrammes des mêmes signaux représentés sur la figure 2. On retrouve donc le chronogramme 25 du signal d'horloge interne, le chronogramme 26 du signal de signal de réinitialisation externe, la courbe 27 représentant l'évolution du potentiel Vpp au cours du temps et le chronogramme 28 du signal de réinitialisation interne. On est ici dans un cas de réinitialisation asynchrone. Le signal de réinitialisation externe est actif avant même la mise en place de l'horloge interne et on constate conformément aux explications apportées lors de la description de la figure 1, que le signal de réinitialisation interne est également actif immédiatement. Lorsque le signal de réinitialisation externe devient inactif, à l'instant t5 sur la figure 3, le potentiel Vpp croît jusqu'à atteindre sa valeur seuil à l'instant t6. L'inverseur 17 bascule alors et un signal bas est alors produit à la sortie de la porte ET 18 de la figure 1. Le signal de réinitialisation interne est alors inactif. La figure 4 représente le circuit de temporisation 19. Ce circuit comporte trois entrées E5, E6 et E7, qui reçoivent respectivement le signal de réinitialisation externe inversé, le signal de réinitialisation asynchrone ASYNC et le signal d'horloge interne CLK du microprocesseur. Le circuit de temporisation se compose schématiquement de trois blocs fonctionnels: - Un premier compteur 29, qui peut être un compteur asynchrone, recevant à une première entrée E8 le signal d'horloge interne CLK, et à une seconde entrée E9 le signal inversé de réinitialisation. Ce premier compteur 29 délivre en sortie un signal 30 qui est soit le signal inversé de réinitialisation externe retardé, soit un signal nul. - Un second compteur 31, qui peut également être un compteur asynchrone. Ce second compteur reçoit à une première entrée E10 le signal de sortie 30 du premier compteur 29, à une seconde entrée Ell le signal d'horloge interne CLK, et à une troisième entrée E6 le signal de réinitialisation asynchrone ASYNC. Il délivre à sa sortie S7 un signal 32 appelé signal de validation. - Une bascule 33, qui peut être une bascule RS, recevant à une première entrée E12 le signal de sortie 30 du premier compteur 29,et à une seconde entrée E13 le signal de validation 32. La sortie de cette bascule 33 est la sortie S4 du circuit de temporisation 19. Elle délivre donc le signal SRST qui entre dans la porte OU 20. Pour l'explication du fonctionnement du circuit de temporisation 19, supposons tout d'abord que le signal d'horloge interne CLK du microprocesseur est actif. Il cadence les premier et second capteurs 29 et 31. Lorsque le premier compteur reçoit un signal inversé de réinitialisation haut, il se passe, pour la plupart des microprocesseurs concernés par l'invention, six coups d'horloge interne avant qu'un signal 30 haut ne soit délivré par ce premier compteur. Ce temps est le temps nécessaire au microprocesseur pour effectuer les dernières opérations d'écriture dans ses registres. Lorsque le signal 30 de sortie du premier compteur 29 passe à un niveau haut, la bascule 33 délivre un signal de réinitialisation interne haut. D'autre part, quand le signal 30 passe à un niveau haut, il actionne le second compteur 31 qui attendra typiquement 512 coups d'horloge interne avant d'envoyer un signal de validation 32 haut. Ce signal de validation a pour effet de faire changer l'état de la bascule, qui passe alors à un niveau de sortie bas. Ce passage à un niveau bas marque la fin de la séquence de réinitialisation interne. C'est le second compteur 31 qui détermine la durée de la séquence de réinitialisation. On est donc assuré, par le fonctionnement du circuit de temporisation 19, d'avoir une séquence de réinitialisation interne pendant tout le temps nécessaire pour atteindre un état prédéfini qui constitue l'état par défaut du microprocesseur. Ceci reste vrai même si le signal de réinitialisation externe n'est actif que pendant un court instant. Lorsque le signal de réinitialisation asynchrone ASYNC est actif ou que l'horloge interne n'est pas présente, le signal de validation 32 passe à un niveau haut et change l'état de la bascule. Le mode de réinitialisation est alors asynchrone. Le circuit de temporisation 19 délivre donc le signal de réinitialisation interne RSTI quand la remise à l'état initiale s'effectue selon un mode synchrone. La présente invention a été présentée ci-dessus dans un mode de réalisation préféré mais non limitatif. Elle pourrait s'appliquer à d'autres types de microprocesseurs qui n'auraient, par exemple, pas les mêmes durées de séquence de réinitialisation. Le signal de réinitialisation externe RSTE pourrait également être remplacé par un signal de chien de garde, mentionné en introduction, interne au microprocesseur. REVENDICATIONS 1 - Microprocesseur (1) comportant un circuit primaire (2) de remise à l'état initial muni de: - une première entrée (E2) pour recevoir un signal de remise à l'état initial (RSTE) externe au microprocesseur - une seconde entrée (EH) pour recevoir un signal d'horloge (CLK) interne au microprocesseur; - une sortie (S5) pour produire un signal interne de remise à l'état initial (RSTI) au microprocesseur, le signal interne (RSTI) au microprocesseur étant fonction du signal externe (RSTE) et du signal d'horloge (CLK); caractérisé en ce que le circuit primaire comporte: - une entrée supplémentaire (EO) pour recevoir un signal (Vpp) de sélection pour forcer le circuit primaire (2) dans un mode de remise à l'état initial, synchrone ou asynchrone, et produire le signal interne (RSTI) de remise à l'état initial avec un retard approprié. 2 - Microprocesseur selon la revendication 1 caractérisé en ce qu'il comporte un circuit de sélection (5) pour produire le signal de sélection, ce signal de sélection étant une mesure d'un premier potentiel (Vcc) interne au microprocesseur. 3 - Microprocesseur selon la revendication 2 caractérisé en ce que le circuit de sélection comporte: - un circuit de charge, alimenté par une tension (Vcc) interne au microprocesseur, et dont la durée de charge est supérieure à la durée nécessaire au microprocesseur pour sauvegarder les opérations en cours, et - un circuit de décharge pour décharger avec une constante de temps le premier potentiel interne du microprocesseur. 4 - Microprocesseur selon la revendication 3, caractérisé en ce que le circuit de charge est un circuit RC. 5 - Microprocesseur selon la revendication 3, caractérisé en ce que le circuit primaire (2) comporte un circuit de temporisation (19) délivrant un signal de réinitialisation (SRST) et muni: - d'un premier compteur (29) recevant le signal de réinitialisation externe et le retardant d'un nombre prédéfini d'impulsions du signal d'horloge (CLK), - d'un second compteur (31) qui détermine la durée de la séquence de réinitialisation, - d'une bascule (33) recevant en entrée des signaux de sortie des premier et deuxième compteurs (29, 31) et délivrant un signal de réinitialisation synchrone (SRST), - d'une entrée (E7) recevant le signal d'horloge (CLK) qui cadence les premier et second compteurs (29, 31). 6. Microprocesseur selon la revendication 5, caractérisé en ce que les premier et second compteurs (29, 31) sont des compteurs asynchrones.