FR2832565A1 - Circuit integre comprenant un mode arret actif a faible consommation electrique - Google Patents
Circuit integre comprenant un mode arret actif a faible consommation electrique Download PDFInfo
- Publication number
- FR2832565A1 FR2832565A1 FR0114998A FR0114998A FR2832565A1 FR 2832565 A1 FR2832565 A1 FR 2832565A1 FR 0114998 A FR0114998 A FR 0114998A FR 0114998 A FR0114998 A FR 0114998A FR 2832565 A1 FR2832565 A1 FR 2832565A1
- Authority
- FR
- France
- Prior art keywords
- oscillator
- signal
- integrated circuit
- osc1
- delivered
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microcomputers (AREA)
Abstract
La présente invention concerne un circuit intégré (MC) comprenant au moins un élément cadencé par un signal d'horloge (CK1) délivré par un premier oscillateur (OSC1), et des moyens (CPU, MEM, HALT, ON/ OFF) pour arrêter le premier oscillateur. Selon l'invention, le circuit intégré comprend un dispositif (TCT) de temporisation qui est autonome vis-à-vis du premier oscillateur OSC1, et des moyens (HALTS, CREG, M) pour déclencher le dispositif de temporisation lors d'un arrêt du premier oscillateur (OSC1), le dispositif de temporisation comprenant des moyens pour délivrer, au terme d'une période déterminée après son déclenchement, un signal (ITCT) de réactivation du premier oscillateur.
Description
<Desc/Clms Page number 1>
CIRCUIT INTEGRE COMPRENANT UN MODE ARRET ACTIF A FAIBLE
CONSOMMATION ELECTRIQUE
La présente invention concerne la gestion d'un mode arrêt dans un circuit intégré cadencé par un signal d'horloge, notamment un microcontrôleur, un tel mode arrêt étant couramment désigné HALT MODE.
CONSOMMATION ELECTRIQUE
La présente invention concerne la gestion d'un mode arrêt dans un circuit intégré cadencé par un signal d'horloge, notamment un microcontrôleur, un tel mode arrêt étant couramment désigné HALT MODE.
Un microcontrôleur est un circuit intégré comprenant une unité centrale de traitement ou CPU, une mémoire de programme, un générateur de signal d'horloge et des périphériques qui sont essentiellement chargés d'assurer la communication avec le milieu extérieur via des ports d'entrée-sortie.
Dans certaines applications, la consommation d'énergie est un élément prépondérant, si bien qu'il est courant de prévoir deux modes de fonctionnement du microcontrôleur. Dans un mode actif, celui-ci ainsi que l'ensemble des périphériques effectuent les tâches qui leurs sont habituellement dévolues, au rythme du signal d'horloge. Dans le mode arrêt, le microcontrôleur réalise un nombre d'opérations très réduit et il en va de même pour les périphériques, certains périphériques pouvant même être arrêtés. La consommation d'énergie peut donc être notablement réduite dans le mode arrêt.
En pratique, un premier moyen connu pour basculer en mode arrêt consiste à diminuer la fréquence du signal d'horloge issu d'un oscillateur, fréquence qui influe directement sur la consommation.
<Desc/Clms Page number 2>
Pour ce faire, on utilise généralement un diviseur de fréquence agencé en aval de l'oscillateur. Un commutateur sélectionne comme signal d'horloge le signal de sortie de l'oscillateur ou le signal de sortie du diviseur selon que le mode de fonctionnement est le mode actif ou le mode arrêt. Le passage du mode arrêt au mode actif est souvent déclenché par une interruption au niveau du microcontrôleur.
La consommation d'énergie est alors sensiblement diminuée. Cependant, cette diminution est limitée par la consommation résiduelle de tous les modules numériques cadencés par le signal d'horloge. Il s'agit donc plutôt d'un mode de veille que d'un mode arrêt stricto sensu.
Un second moyen connu pour basculer en mode arrêt consiste à arrêter complètement l'oscillateur en appliquant au processeur du microcontrôleur une instruction d'arrêt, bien connue de l'homme de l'art et généralement désignée instruction HALT. L'instruction HALT est généralement exécutée par le coeur du CPU qui délivre un signal d'arrêt HALTS aux périphériques. Le microcontrôleur ne peut être réactivé que par un événement externe qui génère une interruption faisant sortir l'unité centrale du mode arrêt. La consommation est nulle mais ce mode ne peut être utilisé que dans des applications garantissant l'apparition cyclique d'évènements externes assurant le réveil du microcontrôleur.
Ce mode arrêt est connu sous le nom de mode arrêt total ("FULL HALT MODE").
Un troisième moyen connu pour basculer en mode arrêt consiste à supprimer la distribution du signal d'horloge à tous les périphériques et au CPU durant une période d'arrêt déterminée, par exemple, au moyen d'un dispositif de temporisation, sans arrêter l'oscillateur.
<Desc/Clms Page number 3>
A l'issue de cette période, le dispositif de temporisation génère une interruption interne qui active l'unité centrale. L'unité centrale procède alors à la scrutation des différents périphériques ("polling"), réalise diverses opérations qui lui incombent et, finalement, initie le retour au mode arrêt si une nouvelle instruction HALT est prévue dans le programme en cours d'exécution.
Ce mode arrêt est connu sous le nom de mode arrêt actif ("ACTIVE HALT MODE").
Dans ce cas, la consommation d'énergie pendant le mode arrêt est essentiellement celle de l'oscillateur. Il n'est toutefois pas possible d'arrêter cet oscillateur puisque ce dernier est nécessaire pour activer le dispositif de temporisation, lequel détermine la durée de la période d'arrêt. Or, typiquement, la consommation d'un oscillateur à quartz offrant est au minimum de l'ordre de 100 microampères. Cette consommation est considérée encore trop élevée dans certaines applications, notamment dans les applications à l'automobile.
Ainsi un objectif de la présente invention est de réduire la consommation d'énergie d'un circuit intégré tel qu'un microcontrôleur se trouvant dans un mode arrêt actif du type décrit ci-dessus.
Un autre objectif de la présente invention est de réduire la consommation d'énergie d'un circuit intégré se trouvant dans un mode arrêt actif, sans perdre en précision en ce qui concerne la durée de la temporisation intervenant pendant la période d'arrêt.
A cet effet, la présente invention prévoit un circuit intégré comprenant au moins un élément cadencé par un signal d'horloge délivré par un premier oscillateur, des moyens pour arrêter le premier oscillateur, un dispositif de temporisation qui est autonome vis-à-vis du premier
<Desc/Clms Page number 4>
oscillateur OSC1, et des moyens pour déclencher le dispositif de temporisation lors d'un arrêt du premier oscillateur, le dispositif de temporisation comprenant des moyens pour délivrer, au terme d'une période déterminée après son déclenchement, un signal de réactivation du premier oscillateur.
Selon un mode de réalisation, le dispositif de temporisation autonome est cadencé par un deuxième oscillateur.
Selon un mode de réalisation, le deuxième oscillateur présente une consommation électrique inférieure à celle du premier oscillateur.
Selon un mode de réalisation, le deuxième oscillateur est un oscillateur de type RC.
Selon un mode de réalisation, le dispositif de temporisation comprend un circuit diviseur de fréquence recevant en entrée un signal délivré par le deuxième oscillateur et délivrant le signal de réactivation.
Selon un mode de réalisation, le circuit diviseur de fréquence comprend un diviseur programmable comportant un registre de calibrage pour mémoriser un facteur de division.
Selon un mode de réalisation, le circuit intégré comporte un circuit de calibrage pour recaler le diviseur programmable en dehors de périodes d'arrêt du premier oscillateur, en référence au signal d'horloge délivré par le premier oscillateur.
Selon un mode de réalisation, le premier oscillateur est un oscillateur à quartz.
Selon un mode de réalisation, le circuit intégré comprend une unité centrale de traitement numérique cadencée par le premier oscillateur
Selon un mode de réalisation, le circuit de temporisation autonome est déclenché par un signal
Selon un mode de réalisation, le circuit de temporisation autonome est déclenché par un signal
<Desc/Clms Page number 5>
d'arrêt délivré par l'unité centrale de traitement numérique.
Selon un mode de réalisation, le déclenchement du circuit de temporisation est fonction du signal d'arrêt délivré par l'unité centrale de traitement numérique et d'au moins un bit de contrôle stocké dans un registre.
Selon un mode de réalisation, le signal de réactivation du premier oscillateur délivré par le dispositif de temporisation est un signal d'interruption provoquant de façon indirecte, par l'intermédiaire d'un décodeur d'interruption, la réactivation du premier oscillateur.
Selon un mode de réalisation, le circuit intégré forme un microcontrôleur.
La présente invention concerne également un procédé pour contrôler la durée d'une période d'arrêt dans un circuit intégré comprenant au moins un élément cadencé par un signal d'horloge délivré par un premier oscillateur, et des moyens pour arrêter le premier oscillateur, la période d'arrêt comprenant l'arrêt du premier oscillateur, le procédé comprenant les étapes consistant à prévoir un dispositif de temporisation qui est autonome vis-à-vis du premier oscillateur OSC1, déclencher le dispositif de temporisation lors d'un arrêt du premier oscillateur, et délivrer un signal de réactivation du premier oscillateur au moyen du dispositif de temporisation autonome, au terme d'une période déterminée après son déclenchement.
Selon un mode de réalisation, le dispositif de temporisation autonome est cadencé par un deuxième oscillateur.
Selon un mode de réalisation, le deuxième oscillateur présente une consommation électrique inférieure à celle du premier oscillateur.
<Desc/Clms Page number 6>
Selon un mode de réalisation, on prévoit un circuit diviseur de fréquence recevant en entrée un signal de sortie du deuxième oscillateur et délivrant le signal de réactivation.
Selon un mode de réalisation, on prévoit un circuit diviseur de fréquence comprenant un diviseur programmable comportant un registre de calibrage pour mémoriser un facteur de division, et une étape de calibrage faite en dehors de périodes d'arrêt du premier oscillateur, pour recaler le diviseur programmable en référence au signal d'horloge délivré par le premier oscillateur.
Selon un mode de réalisation, le procédé est mis en oeuvre dans un circuit intégré comprenant une unité centrale de traitement numérique cadencée par le premier oscillateur
Selon un mode de réalisation, on déclenche le circuit de temporisation autonome au moyen d'un signal d'arrêt délivré par l'unité centrale de traitement numérique.
Selon un mode de réalisation, on déclenche le circuit de temporisation autonome au moyen d'un signal d'arrêt délivré par l'unité centrale de traitement numérique.
Selon un mode de réalisation, le déclenchement du circuit de temporisation autonome dépend de la valeur d'un bit de contrôle stocké dans un registre.
Ces objets, caractéristiques et avantages ainsi que d'autres de la présente invention seront exposés plus en détail dans la description suivante d'un microcontrôleur comprenant un dispositif de temporisation selon l'invention, faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : - la figure 1 représente schématiquement sous forme de blocs un microcontrôleur comprenant un circuit de temporisation selon l'invention, - la figure 2 est un schéma plus détaillé du microcontrôleur de la figure 1,
<Desc/Clms Page number 7>
- la figure 3 est le schéma d'un circuit de calibrage présent dans le circuit de temporisation selon l'invention.
La figure 1 illustre à titre non limitatif un exemple de mise en oeuvre de la présente invention dans un microcontrôleur MC. Le microcontrôleur comprend sur une même puce de silicium une unité centrale ou CPU, une mémoire programme MEM et un dispositif temporisation TCT selon l'invention.
La figure 2 est un schéma plus détaillé du microcontrôleur MC. Le CPU reçoit un signal d'horloge CK1 délivré par un oscillateur OSC1 présentant une entrée ON/OFF. L'oscillateur OSC1 est de préférence un oscillateur de précision tel qu'un oscillateur à quartz, dont l'inconvénient est de présenter une consommation de courant non négligeable lorsqu'il est activé.
L'entrée ON/OFF de l'oscillateur OSC1 reçoit un signal HALTS délivré par le CPU. Lorsque le CPU rencontre, lors de l'exécution d'un programme stocké dans la mémoire MEM, une instruction HALT, en soi bien connue de l'homme de l'art, il porte le signal HALTS à une
valeur prédéterminée, par exemple"l", ce qui provoque l'arrêt de l'oscillateur OSC1 ainsi que l'arrêt de divers périphériques, non représentés sur la figure dans un souci de simplicité.
valeur prédéterminée, par exemple"l", ce qui provoque l'arrêt de l'oscillateur OSC1 ainsi que l'arrêt de divers périphériques, non représentés sur la figure dans un souci de simplicité.
Le microcontrôleur comprend également un décodeur d'interruption ITDEC délivrant des requêtes en interruption IRQ au CPU, sur réception de signaux d'interruption. L'entrée du décodeur ITDEC reçoit notamment des signaux d'interruption externes ITEXT générés par des événements extérieurs au microcontrôleur et des signaux d'interruption internes ITINT générés par des évènements internes, parmi lesquels on distingue un
<Desc/Clms Page number 8>
signal d'interruption ITCT délivré par le dispositif de temporisation TCT.
Le microcontrôleur comprend également un registre de contrôle CREG accessible par l'intermédiaire d'un bus de données DB, contenant deux bits M et E appliqués au dispositif de temporisation TCT. Le bit E, ou bit d'autorisation"ENABLE", est mis à 1 pour valider la mise en service du dispositif TCT lors de l'exécution d'une instruction HALT. Le bit M, ou bit de mesure et de calibrage, valide la mise en service du dispositif TCT en dehors des périodes d'arrêt, afin de procéder à une opération de mesure et de calibrage du dispositif TCT qui sera décrite plus loin.
Dans l'art antérieur, l'exécution de l'instruction HALT provoque l'arrêt total du microcontrôleur et de tout élément interne au microcontrôleur puisque l'oscillateur OSC1 est arrêté.
Selon l'invention au contraire, le dispositif de temporisation TCT est autonome vis-à-vis de l'oscillateur OSC1 et définit la durée de la période d'arrêt durant laquelle le premier oscillateur OSC1 est arrêté. Ainsi, quand le bit de contrôle E a été préalablement mis à 1 par le CPU, l'exécution de l'instruction HALT provoque, outre l'arrêt de l'oscillateur OSC1, le démarrage du dispositif TCT. Après une période de temporisation déterminée, le dispositif TCT délivre le signal d'interruption ITCT et le décodeur ITDEC délivre une requête en interruption provoquant l'activation du CPU.
L'activation du CPU commence par la mise à 0 du signal HALTS, afin de redémarrer l'oscillateur OSCI, puis l'exécution d'un programme d'interruption déterminé.
Dans le mode de réalisation représenté 1 le dispositif TCT comprend un oscillateur OSC2 présentant une entrée OFF/ON permettant de mettre en service ou
<Desc/Clms Page number 9>
d'arrêter l'oscillateur OSC2. L'entrée OFF/ON présente une sensibilité inverse de celle de l'entrée ON/OFF de
l'oscillateur OSC1, de sorte que l'oscillateur OSC2 démarre lorsque l'entrée OFF/ON reçoit un signal à 1 et s'arrête lorsque l'entrée OFF/ON reçoit un signal à 0.
l'oscillateur OSC1, de sorte que l'oscillateur OSC2 démarre lorsque l'entrée OFF/ON reçoit un signal à 1 et s'arrête lorsque l'entrée OFF/ON reçoit un signal à 0.
L'entrée OFF/ON de l'oscillateur est pilotée par la sortie d'une porte Gl de type OU recevant en entrée la sortie d'une porte G2 de type ET et la sortie d'une porte G3 de type ET. La porte G2 reçoit sur ses entrées le bit M et le signal HALTS inversé (/HALTS), délivré par une porte inverseuse INV1, tandis que la porte G3 reçoit sur ses entrées le bit E et le signal HALTS.
Ainsi, la sortie de la porte Gl est à 1 et l'oscillateur OSC2 est actif si le signal HALTS est à 1 (périodes d'arrêt du CPU) et si le bit E est également à 1. La sortie de la porte Gl est également à 1 et l'oscillateur OSC2 est actif si le signal HALTS est à 0 (périodes normales de fonctionnent du CPU) et si le bit M de mesure est égal à 1.
Le dispositif TCT comprend également un premier diviseur de fréquence PSC1 ("prescaler") recevant en entrée un signal d'horloge CK2 délivré par l'oscillateur OSC2. Le premier diviseur de fréquence PSC1 délivre un signal d'horloge CK3 qui est appliqué sur l'entrée d'horloge d'un second diviseur de fréquence PSC2, dont la sortie délivre le signal d'interruption ITCT après comptage d'un nombre prédéterminé de périodes du signal d'horloge CK3. Le diviseur PSC1 est de préférence un diviseur asynchrone présentant une faible consommation électrique.
En résumé, après basculement en mode arrêt, le signal HALTS passe à 1, l'oscillateur OSC1 s'arrête, l'oscillateur OSC2 démarre (si le bit E a été préalablement mis à 1) et le diviseur PSC2 calcule, de
<Desc/Clms Page number 10>
façon autonome vis-à-vis de l'oscillateur OSC1, une valeur de comptage représentant une temporisation déterminée, puis le signal ITCT passe à 1 et le CPU est réactivé.
Dans un mode de réalisation avantageux, l'oscillateur OSC2 est un oscillateur basse consommation présentant une consommation électrique nettement inférieure à celle de l'oscillateur OSC1. Ainsi, par rapport à un microcontrôleur classique pourvu d'un circuit de temporisation qui est cadencé par l'oscillateur OSC1, le mode arrêt actif selon l'invention présente l'avantage d'une faible consommation électrique.
L'oscillateur OSC1 est par exemple un oscillateur de type RC (résistif capacitif) bien connu de l'homme de l'art. Les éléments résistifs R et capacitifs C de l'oscillateur OSC2 peuvent être des éléments externes au microcontrôleur, c'est-à-dire externes à la plaquette de silicium et connectés à celle-ci par les plages de connexion, ou être des éléments internes réalisés directement à la surface de la plaquette de silicium.
D'autres types d'oscillateurs tels que les oscillateurs en anneau peuvent également convenir, et de façon générale tout moyen de type oscillant, à impulsions ou à décharge, permettant de déterminer une durée tout en consommant peu de courant.
Les oscillateurs basse consommation présentant en contrepartie l'inconvénient d'une faible précision et d'une forte déviation avec le temps et la température, on admet que la fréquence de l'oscillateur OSC2 peut être affectée d'un écart important par rapport à sa fréquence nominale, par exemple un écart compris entre-40% et +100% de la fréquence nominale.
Ainsi, selon un aspect optionnel mais avantageux du dispositif TCT selon l'invention, le diviseur PSC2 est un
<Desc/Clms Page number 11>
diviseur programmable permettant de compenser une éventuelle dérive de l'oscillateur OSC2 afin de garantir des périodes d'arrêt de durée sensiblement constante.
Ainsi, une valeur de division N du diviseur PSC2, ou consigne de comptage, est stockée dans un registre AWUREG qui est accessible au moins en écriture via le bus de données DB.
Il convient ici de noter que la stabilité dans le temps de la durée d'une période d'arrêt est une exigence essentielle dans certaines applications, notamment dans le domaine de l'automobile. Ainsi, par exemple, un microcontrôleur dédié à la détection des mouvements d'un bouton de commande d'un lève-vitre électrique par la méthode de scrutation ("polling"), doit présenter des intervalles d'arrêt, entre chaque scrutation, d'une durée sensiblement constante. Dans le cas contraire, la période d'arrêt varie avec le temps et peut devenir supérieure au temps minimum de maintien du bouton par l'utilisateur, de sorte qu'une commande brève ne sera pas détectée.
Selon un autre aspect optionnel mais avantageux de la présente invention, le circuit TCT est équipé d'un circuit de calibrage TIMPER permettant au CPU de recaler automatiquement et cycliquement le diviseur PSC2 sur une consigne de division N assurant une faible déviation dans le temps du signal d'horloge CK3, relativement au signal d'horloge CK1.
Le circuit de calibrage TIMPER est par exemple une minuterie périphérique en soi connue de l'homme de l'art, comprenant une entrée de capture recevant le signal CK2 et une entrée de référence recevant le signal CK1, et délivrant une valeur de comptage représentant le nombre de périodes du signal CK1 détectées pendant un nombre déterminé de périodes du signal CK2. Il est supposé ici que le signal CK2 présente une fréquence nettement
<Desc/Clms Page number 12>
inférieure à celle du signal CK1, par exemple 128 KHz contre 8 MHz pour le signal CK1.
La figure 3 représente le schéma de principe d'une telle minuterie périphérique. Celle-ci comprend deux bascules Dl, D2 synchrones de type D, une porte G4 de type NON OU à deux entrées, une porte inverseuse INV2 et un compteur 16 bits CMPT dont la sortie est appliquée à l'entrée d'un registre ICREG, qui est accessible en lecture via le bus de données DB. Les bascules Dl, D2 et le compteur CMPT reçoivent sur leurs entrées d'horloge le signal CK1. La bascule Dl reçoit sur son entrée D le signal CK2 et sa sortie Q est appliquée sur l'entrée D de la bascule D2. La sortie Q de la bascule Dl est appliquée sur une entrée de la porte G4 et la sortie Q de la bascule D2 est reliée à une deuxième entrée de la porte G4 via la porte inverseuse INV2. La sortie de la porte G4 délivre un signal FEDET (détection de front descendant) qui est appliqué sur une entrée de remise à 0 (RESET) du compteur CMPT. Le signal FEDET est également appliqué sur une entrée de chargement (LOAD) du registre ICREG.
En raison du décalage des sorties des bascules Dl et D2, le signal FEDET passe à 1 à chaque front descendant du signal CK2, pour une durée brève égale à une période du signal CK1. A chaque front descendant, le compteur CMPT est remis à zéro et le registre ICREG charge une valeur de comptage égale au nombre de périodes du signal CK1 intervenues depuis le front descendant précédent, soit un intervalle de temps égal à une période du signal CK2.
La valeur M chargée dans le registre ICREG est donc égale au rapport des périodes des signaux CK2, CK1, respectivement T2 et Tl, et peut s'écrire : (1) M = T2/Tl
<Desc/Clms Page number 13>
En désignant par Twake la durée souhaitée du mode arrêt, et en considérant à titre d'exemple que le diviseur PSC1 assure une division par 64 du signal CK2, il vient que (2) Twake = 64*N*T2 soit : (3) N = Twake/ (64*T2) N étant la valeur à charger dans le registre AWUREG. En combinant (1) et (3) il vient : (4) N = Twake/ (64*M*Tl) La période Tl étant connue et M étant délivré par le registre ICREG, la valeur de N peut donc être calculée de façon cyclique de manière à rafraîchir le registre AWUREG et assurer une bonne stabilité de la durée Twake de la période d'arrêt. Le calcul de la relation (4) peut être fait par logiciel et est dans ce cas effectué par le CPU.
Un circuit spécial à logique câblée peut également être prévu pour appliquer automatiquement la consigne N au registre AWUREG, à partir de la valeur M disponible dans le registre ICREG.
Considérons à titre d'exemple l'application numérique suivante, FI et F2 étant les fréquences respectives des signaux CK1 et CK2 :
Twake = 64 ms
T2 = 7,8125 pus (F2 = 128 KHz)
Twake = 64 ms
T2 = 7,8125 pus (F2 = 128 KHz)
<Desc/Clms Page number 14>
Tl = 125 ns (F1 = 8 MHz) Dans ce cas :
N = 8000/M
L'invention telle que présentée ci-dessus permet d'obtenir une réduction significative de la consommation d'énergie d'un circuit intégré en mode arrêt actif, ainsi que la consommation moyenne d'un circuit intégré basculant cycliquement dans le mode arrêt actif.
N = 8000/M
L'invention telle que présentée ci-dessus permet d'obtenir une réduction significative de la consommation d'énergie d'un circuit intégré en mode arrêt actif, ainsi que la consommation moyenne d'un circuit intégré basculant cycliquement dans le mode arrêt actif.
L'exemple numérique qui suit est relatif à un microcontrôleur réalisé en technologie CMOS 0,5 micromètre : - période d'arrêt souhaitée :
Twake = 64 ms, - consommation globale du microcontrôleur en mode actif y compris celle de l'oscillateur OSC1 :
CONS1 = 5 mA - consommation de l'oscillateur OSC2 (oscillateur RC) :
CONS2 = 15 pA, - consommation cumulée des diviseurs PSC1 et PSC2 :
CONS3 = 1 pA, - période de travail (temps de scrutation) :
Twork = 0,5 ms,
Twake = 64 ms, - consommation globale du microcontrôleur en mode actif y compris celle de l'oscillateur OSC1 :
CONS1 = 5 mA - consommation de l'oscillateur OSC2 (oscillateur RC) :
CONS2 = 15 pA, - consommation cumulée des diviseurs PSC1 et PSC2 :
CONS3 = 1 pA, - période de travail (temps de scrutation) :
Twork = 0,5 ms,
<Desc/Clms Page number 15>
La consommation moyenne MCONS est donnée par la formule suivante : [Twake* (CONS2 + CONS3) + Twork*CONSl]/ (Twake + Twork) soit :
MCONS = [ (64ms*16 ) + (0, 5ms * 5mA)]/ (64ms + O, Sms)
MCONS = 138 p. A Il apparaît que cette consommation moyenne est bien inférieure à la seule consommation de l'oscillateur OSC1.
MCONS = [ (64ms*16 ) + (0, 5ms * 5mA)]/ (64ms + O, Sms)
MCONS = 138 p. A Il apparaît que cette consommation moyenne est bien inférieure à la seule consommation de l'oscillateur OSC1.
On a décrit dans ce qui précède un microcontrôleur comportant un dispositif de temporisation autonome vis-àvis de l'oscillateur principal du microcontrôleur, permettant de faire basculer le microcontrôleur dans un mode du type ACTIVE HALT mentionné au préambule, qui diffère du mode ACTIVE HALT classique par le fait que l'oscillateur principal est arrêté. Ainsi que cela a été décrit ci-dessus, l'application principale de l'invention est de réduire notablement la consommation du mode ACTIVE HALT d'un microcontrôleur (ou microprocesseur) en activant le dispositif de temporisation autonome au moyen, par exemple, d'un oscillateur basse consommation.
Les inconvénients en terme de stabilité d'un tel oscillateur peuvent par ailleurs être compensés par la procédure de recalage qui vient d'être décrite.
Les aspects de l'invention relatif au bit d'autorisation E sont bien entendu optionnels et ont simplement pour but de permettre la prévision, dans le jeu d'instructions d'un microcontrôleur, d'une instruction FULL HALT et d'une instruction ACTIVE HALT.
En pratique, la différence intervenant dans l'exécution
<Desc/Clms Page number 16>
de ces deux instructions est que le CPU met à 1 ou au contraire laisse à 0 le bit d'autorisation E. Une seule instruction HALT peut également être prévue, avec gestion du bit E par une autre instruction spéciale.
La présente invention est bien entendu susceptible de diverses variantes et modes de réalisation, et aussi de diverses autres applications. Il va de soi que la présente invention est applicable à tout type de circuit intégré, notamment tout type de circuit intégré cadencé par une horloge présentant une consommation électrique non négligeable et nécessitant un mode arrêt. Ainsi, le signal de"réveil"ITCT délivré par le dispositif de temporisation selon l'invention n'est pas nécessairement utilisé comme signal d'interruption, d'autres méthodes existant pour réactiver de façon directe ou indirecte un circuit intégré sur réception d'un signal déterminé. L'invention est notamment applicable aux circuits intégrés à logique câblée dépourvus d'unité centrale.
Claims (21)
1. Circuit intégré (MC) comprenant au moins un
élément cadencé par un signal d'horloge (CKl) délivré par un premier oscillateur (OSC1), et des moyens (CPU, MEM, HALT, ON/OFF) pour arrêter le premier oscillateur, caractérisé en ce qu'il comprend un dispositif (TCT) de temporisation qui est autonome vis-à-vis du premier oscillateur OSC1, et des moyens (HALTS, CREG, M) pour déclencher le dispositif de temporisation lors d'un arrêt du premier oscillateur (OSC1), le dispositif de temporisation comprenant des moyens pour délivrer, au terme d'une période déterminée après son déclenchement, un signal (ITCT) de réactivation du premier oscillateur.
2. Circuit intégré selon la revendication 1, caractérisé en ce que le dispositif de temporisation autonome est cadencé par un deuxième oscillateur (OSC2).
3. Circuit intégré selon la revendication 2, caractérisé en ce que le deuxième oscillateur (OSC2) présente une consommation électrique inférieure à celle du premier oscillateur (OSC1).
4. Circuit intégré selon l'une des revendications 2 et 3, caractérisé en ce que le deuxième oscillateur (OSC2) est un oscillateur de type RC.
5. Circuit intégré selon l'une des revendications 1 à 4, caractérisé en ce que le dispositif de temporisation comprend un circuit diviseur de fréquence (PSC1, PSC2) recevant en entrée un signal (CK2) délivré par le deuxième oscillateur (OSC2) et délivrant le signal de réactivation (ITCT).
<Desc/Clms Page number 18>
6. Circuit intégré selon la revendication 5 caractérisé en ce que le circuit diviseur de fréquence (PSC1, PSC2) comprend un diviseur programmable (PSC2) comportant un registre de calibrage (AWUREG) pour mémoriser un facteur de division (N).
7. Circuit intégré selon la revendication 6, caractérisé en ce qu'il comporte un circuit de calibrage (TIMPER) pour recaler le diviseur programmable en dehors de périodes d'arrêt du premier oscillateur (OSC1), en référence au signal d'horloge (CK1) délivré par le premier oscillateur.
8. Circuit intégré selon l'une des revendications 1 à 7, caractérisé en ce que le premier oscillateur (OSC1) est un oscillateur à quartz.
9. Circuit intégré selon l'une des revendications 1 à 8, comprenant une unité centrale de traitement numérique (CPU) cadencée par le premier oscillateur (OSC1)
10. Circuit intégré selon la revendication 9, dans lequel le circuit de temporisation autonome est déclenché par un signal d'arrêt (HALTS) délivré par l'unité centrale de traitement numérique.
11. Circuit intégré selon la revendication 10, dans lequel le déclenchement du circuit de temporisation est fonction du signal d'arrêt (HALTS) délivré par l'unité centrale de traitement numérique et d'au moins un bit de contrôle (E) stocké dans un registre (CREG).
<Desc/Clms Page number 19>
12. Circuit intégré selon l'une des revendications 1 à 11, dans lequel le signal (ITCT) de réactivation du premier oscillateur délivré par le dispositif (TCT) de temporisation est un signal d'interruption provoquant de façon indirecte, par l'intermédiaire d'un décodeur d'interruption (ITDEC), la réactivation du premier oscillateur (OSC1).
13. Circuit intégré selon l'une des revendications précédentes, caractérisé en ce qu'il forme un microcontrôleur (MC).
14. Procédé pour contrôler la durée d'une période d'arrêt dans un circuit intégré (MC) comprenant au moins un élément cadencé par un signal d'horloge (CK1) délivré par un premier oscillateur (OSC1), et des moyens (CPU, MEM, HALT, ON/OFF) pour arrêter le premier oscillateur, la période d'arrêt comprenant l'arrêt du premier oscillateur, caractérisé en ce qu'il comprend les étapes consistant à : - prévoir un dispositif (TCT) de temporisation qui est autonome vis-à-vis du premier oscillateur OSC1, - déclencher le dispositif de temporisation lors d'un arrêt du premier oscillateur (OSC1), et - délivrer un signal (ITCT) de réactivation du premier oscillateur au moyen du dispositif de temporisation autonome, au terme d'une période déterminée après son déclenchement.
15. Procédé selon la revendication 14, dans lequel le dispositif de temporisation autonome est cadencé par un deuxième oscillateur (OSC2).
<Desc/Clms Page number 20>
16. Procédé selon la revendication 15, dans lequel le deuxième oscillateur (OSC2) présente une consommation électrique inférieure à celle du premier oscillateur.
17. Procédé selon l'une des revendications 14 à 16, dans lequel on prévoit un circuit diviseur de fréquence (PSC1, PSC2) recevant en entrée un signal de sortie (CK2) du deuxième oscillateur (OSC2) et délivrant le signal de réactivation (ITCT).
18. Procédé selon la revendication 17, dans lequel on prévoit un circuit diviseur de fréquence (PSC1, PSC2) comprenant un diviseur programmable (PSC2) comportant un registre de calibrage (AWUREG) pour mémoriser un facteur de division (N), et une étape de calibrage (TIMPER) faite en dehors de périodes d'arrêt du premier oscillateur, pour recaler le diviseur programmable en référence au signal d'horloge (CK1) délivré par le premier oscillateur (OSC1).
19. Procédé selon l'une des revendications 14 à 18, mis en oeuvre dans un circuit intégré (MC) comprenant une unité centrale de traitement numérique (CPU) cadencée par le premier oscillateur (OSC1)
20. Procédé selon la revendication 19, dans lequel on déclenche le circuit de temporisation autonome au moyen d'un signal d'arrêt (HALTS) délivré par l'unité centrale de traitement numérique.
21. Procédé selon la revendication 20, dans lequel le déclenchement du circuit de temporisation autonome dépend de la valeur d'un bit de contrôle (E) stocké dans un registre (CREG).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0114998A FR2832565A1 (fr) | 2001-11-20 | 2001-11-20 | Circuit integre comprenant un mode arret actif a faible consommation electrique |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0114998A FR2832565A1 (fr) | 2001-11-20 | 2001-11-20 | Circuit integre comprenant un mode arret actif a faible consommation electrique |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2832565A1 true FR2832565A1 (fr) | 2003-05-23 |
Family
ID=8869583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0114998A Pending FR2832565A1 (fr) | 2001-11-20 | 2001-11-20 | Circuit integre comprenant un mode arret actif a faible consommation electrique |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2832565A1 (fr) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1447736A1 (fr) * | 2003-02-06 | 2004-08-18 | STMicroelectronics | Microprocesseur comprenant des modes de fonctionnement à faible consommation électrique |
FR2870373A1 (fr) * | 2004-05-13 | 2005-11-18 | St Microelectronics Sa | Gestion du gel d'un module fonctionnel dans un systeme sur une puce |
WO2008077637A1 (fr) * | 2006-12-22 | 2008-07-03 | Nokia Corporation | Signal de réveil externe pour un contrôleur multimode |
WO2008114201A2 (fr) * | 2007-03-21 | 2008-09-25 | Koninklijke Philips Electronics N. V. | Procédé de fonctionnement d'un dispositif de traitement de données, dispositif de traitement de données et système de traitement de données |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5454114A (en) * | 1991-11-12 | 1995-09-26 | Microchip Technology, Inc. | Microcontroller power-up delay |
US5818271A (en) * | 1996-04-16 | 1998-10-06 | Exar Corporation | Power-up/interrupt delay timer |
FR2789501A1 (fr) * | 1999-02-09 | 2000-08-11 | St Microelectronics Sa | Procede et dispositif de reduction de la consommation d'un microcontroleur |
-
2001
- 2001-11-20 FR FR0114998A patent/FR2832565A1/fr active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5454114A (en) * | 1991-11-12 | 1995-09-26 | Microchip Technology, Inc. | Microcontroller power-up delay |
US5818271A (en) * | 1996-04-16 | 1998-10-06 | Exar Corporation | Power-up/interrupt delay timer |
FR2789501A1 (fr) * | 1999-02-09 | 2000-08-11 | St Microelectronics Sa | Procede et dispositif de reduction de la consommation d'un microcontroleur |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1447736A1 (fr) * | 2003-02-06 | 2004-08-18 | STMicroelectronics | Microprocesseur comprenant des modes de fonctionnement à faible consommation électrique |
US7194644B2 (en) | 2003-02-06 | 2007-03-20 | Stmicroelectronics S.A. | System and method for operating a microprocessor in a low power mode by providing a wakeup clock to the microprocessor |
FR2870373A1 (fr) * | 2004-05-13 | 2005-11-18 | St Microelectronics Sa | Gestion du gel d'un module fonctionnel dans un systeme sur une puce |
US7209988B2 (en) | 2004-05-13 | 2007-04-24 | Stmicroelectronics S.A. | Management of the freezing of a functional module in a system on a chip |
WO2008077637A1 (fr) * | 2006-12-22 | 2008-07-03 | Nokia Corporation | Signal de réveil externe pour un contrôleur multimode |
US7765417B2 (en) | 2006-12-22 | 2010-07-27 | Nokia Corporation | External control of a multi-mode controller |
WO2008114201A2 (fr) * | 2007-03-21 | 2008-09-25 | Koninklijke Philips Electronics N. V. | Procédé de fonctionnement d'un dispositif de traitement de données, dispositif de traitement de données et système de traitement de données |
WO2008114201A3 (fr) * | 2007-03-21 | 2008-11-20 | Koninkl Philips Electronics Nv | Procédé de fonctionnement d'un dispositif de traitement de données, dispositif de traitement de données et système de traitement de données |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0407268B1 (fr) | Circuit intégré à microprocesseur et horloge interne programmable | |
FR2791853A1 (fr) | Appareil mobile et procede de gestion d'un mode de veille dans un tel appareil mobile | |
EP1447736A1 (fr) | Microprocesseur comprenant des modes de fonctionnement à faible consommation électrique | |
FR2525348A1 (fr) | Procede pour produire des valeurs correspondant a la periode entre deux impulsions successives d'une suite d'impulsions et a leur frequence, et dispositif de mise en oeuvre de ce procede | |
EP0611215B1 (fr) | Circuit régulateur à excitation progressive pour la charge d'une batterie par un alternateur | |
FR2831968A1 (fr) | Dispositif de calibrage d'un signal d'horloge | |
FR2832565A1 (fr) | Circuit integre comprenant un mode arret actif a faible consommation electrique | |
FR2789501A1 (fr) | Procede et dispositif de reduction de la consommation d'un microcontroleur | |
JPH073751B2 (ja) | 電流サージ制御集積回路 | |
EP1098525A2 (fr) | Décodeur MPEG utilisant une mémoire partagée | |
CN107632787B (zh) | 数据读取方法、装置及系统 | |
EP1295297B1 (fr) | Circuit de detection d'utilisation | |
FR2790117A1 (fr) | Procede de configuration d'un microcontroleur en mode initialisation | |
EP0999497A1 (fr) | Séquenceur d'actions synchrones dans un système à processeur et circuit intégré comportant un tel séquenceur | |
FR2850176A1 (fr) | Microprocesseur comprenant un circuit de base de temps auto-calibre | |
EP0902353B1 (fr) | Moyens pour réveiller un système fonctionnant en mode "sleep" | |
JP3421229B2 (ja) | 電圧変化によりパルスを変化させる電圧/パルス変換機 | |
EP3923150B1 (fr) | Procédé de gestion des requêtes d'accès à une mémoire vive et système correspondant | |
CH691640A5 (fr) | Système comportant des moyens pour le réveiller lorsqu'il est en mode "sleep". | |
FR2791217A1 (fr) | Procede de veille dans un telephone mobile | |
FR2770325A1 (fr) | Circuit generateur de tension pour programmer ou effacer une memoire qui utilise des transistors a grille flottante | |
FR2749454A1 (fr) | Procede et dispositif programmable de generation d'impulsions de largeur variable | |
TW494634B (en) | Digital low-pass filter for digital signals and method to process a digital signal | |
EP0849659B1 (fr) | Dispositif numérique d'initialisation d'un circuit intégré | |
EP1331737B1 (fr) | Circuit de génération d'impulsions, et composant micro-électronique correspondant |