Brevet FR3052574A1 — publié le 20171215

1. Gestion optimisée de l'alimentation d'un microcontrôleur. 1. Domaine de l'invention L'invention se rapporte au domaine des dispositifs électroniques pouvant offrir des applications « autonomes » ou « auto-alimentées ». L'invention concerne plus spécifiquement l'optimisation de la consommation d'énergie de tels dispositifs, particulièrement en mode « veille » ou « économie d'énergie ». 2. Art Antérieur Certains dispositifs électroniques (comme les smartphones, tablettes, terminaux de paiement électronique actuels) nécessitent la mise en oeuvre d'un microcontrôleur puissant et performant, afin de pouvoir proposer de manière optimale toutes les applications requises. Pour ce faire, il existe globalement deux familles de microcontrôleurs : - premier type : les microcontrôleurs très peu consommateurs d'énergie en mode « veille » mais très consommateurs d'énergie en fonctionnement ; - deuxième type : les microcontrôleurs très consommateurs d'énergie en mode « veille » mais peu consommateurs d'énergie en fonctionnement. Le choix d'un microcontrôleur du deuxième type est préféré notamment pour répondre à des exigences assez strictes en terme de consommation d'énergie des applications autonomes. En revanche, avec ce deuxième type de microcontrôleurs, les exigences de faible consommation d'énergie sont respectées en fonctionnement mais pas en mode « veille ». Ainsi, pour pallier cet inconvénient de consommation d'énergie trop élevée en mode « veille », il est courant de ne pas utiliser le mode « veille » du microcontrôleur mais d'éteindre ce dernier pour réduire sa consommation d'énergie. Cette solution d'utilisation présente cependant un autre inconvénient lié au temps de redémarrage/réaction du microcontrôleur au réveil. En effet, ce temps de réveil est souvent trop long et engendre une dégradation notable de l'expérience utilisateur. Ainsi, par exemple, dans le domaine des terminaux de paiement électronique, un temps de redémarrage/réveil trop long peut non seulement fortement dégrader l'expérience utilisateur lors d'une transaction mais également fortement ralentir le fonctionnement général d'un commerce par exemple, comme un restaurant à une heure de forte affluence. Il existe donc un besoin pour une technique permettant l'utilisation de microcontrôleurs présentant une consommation d'énergie optimale/minimale tant en fonctionnement qu'en mode « veille », tout en présentant un temps de réaction optimal en sortie de mode « veille ». 3052574 2 3. Résumé La technique proposée se rapporte à un circuit imprimé comprenant un microcontrôleur comprenant au moins un élément principal, noté coeur, et au moins une unité périphérique, ainsi que des moyens sélectifs de gestion de l'alimentation du microcontrôleur mettant en oeuvre, à 5 réception d'une commande d'extinction du microcontrôleur, les moyens suivants : - des moyens de coupure réversible de l'alimentation de ladite au moins une unité périphérique ; - des moyens de maintien de l'alimentation dudit coeur. Ainsi, l'invention propose une solution nouvelle et inventive de la gestion de la 10 consommation d'un microcontrôleur en mettant en oeuvre une coupure sélective de l'alimentation de certaines unités périphériques du microcontrôleur, tout en conservant l'alimentation du coeur du microcontrôleur, et celle de certaines autres unités périphériques, lors d'une commande d'extinction de ce dernier. De cette manière, l'extinction du microcontrôleur correspond à une mise en veille 15 « partielle », appelée ci-après « veille optimale », permettant effectivement de diminuer fortement la consommation d'énergie de ce dernier, tout en permettant un redémarrage, ou une sortie de veille rapide grâce à la non coupure de l'alimentation du coeur, et d'autres unités périphériques, du microcontrôleur. En effet, le principe de l'invention, selon ses différents modes de réalisation, consiste à 20 couper sélectivement l'alimentation des différentes unités du microcontrôleur, au lieu de les couper toutes, comme dans une extinction « classique » du microcontrôleur, ou de ne pas les couper, comme lors d'une mise en veille « classique » du microcontrôleur. Ainsi, les avantages de l'extinction liés à la baisse de consommation d'énergie du microcontrôleur sont obtenus, sans les inconvénients liés au temps de réveil. 25 Selon un aspect particulier de l'invention, les moyens sélectifs de gestion de l'alimentation correspondent à un interrupteur commandé relié électroniquement d'une part à une fonction d'extinction interne au microcontrôleur apte à traiter la commande d'extinction et d'autre part à au moins une entrée de commande de l'alimentation de l'unité périphérique. Ainsi, selon ce mode de réalisation, la coupure sélective de l'alimentation des différentes 30 unités du microcontrôleur est mise en oeuvre via un interrupteur commandé (encore appelé « switch » commandé), relié d'une part à la fonction interne d'extinction du microcontrôleur, afin 3052574 3 d'être déclenché par une commande d'extinction, et d'autre part à une ou plusieurs entrée de commandes d'alimentation d'unité(s) périphérique(s) du microcontrôleur. De cette manière, seules les unités périphériques dont les commandes d'alimentation sont reliées à l'interrupteur commandé seront éteintes par une commande d'extinction du 5 microcontrôleur, les autres unités périphériques non reliées, ainsi que le coeur du microcontrôleur, resteront alimentés. Par exemple, l'unité périphérique correspond à une unité du microcontrôleur non nécessaire au réveil du microcontrôleur et/ou non nécessaire à la sauvegarde de l'état du microcontrôleur. 10 Ainsi, selon ce mode de réalisation, l'objectif de l'invention est atteint en sélectionnant les unités périphériques à mettre ou non en veille selon qu'elles sont, ou non, indispensables au réveil du microcontrôleur et/ou à la sauvegarde de l'état du microcontrôleur, de manière à obtenir un réveil quasiment instantané du microcontrôleur. En effet, si seules les unités nécessaires au « minimum vital » du microcontrôleur, c'est-à- 15 dire les unités sollicitées pour le réveil du microcontrôleur et/ou la sauvegarde de son état, restent alimentées pendant la mise en veille du microcontrôleur, le réveil de ce dernier, à réception d'une commande de réveil, sera presque instantané et ne nécessitera que la prise en compte de la commande de réveil. Les autres unités, dont l'alimentation a été sélectivement coupée, pourront être 20 réalimentées au fur et à mesure de l'utilisation du microcontrôleur. L'invention concerne également un terminal de paiement électronique comprenant un circuit imprimé tel que décrit précédemment. 4. Figures D'autres caractéristiques et avantages apparaîtront plus clairement à la lecture de la 25 description suivante d'un mode de réalisation particulier de la divulgation, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : la figure 1 est une vue schématique d'une partie d'un circuit imprimé selon un mode de réalisation de l'invention ; la figure 2 illustre un diagramme de séquences pour la mise en oeuvre de l'invention, 30 selon un mode de réalisation particulier. 3052574 4 5. Description Le principe général de la technique décrite consiste à détourner une fonction interne d'un microcontrôleur destinée à l'éteindre, pour mettre le microcontrôleur en mode « veille optimale » et optimiser la consommation d'énergie du microcontrôleur. 5 Pour ce faire, la fonction interne d'extinction du microcontrôleur est détournée, par des moyens matériels, de manière à couper sélectivement certaines alimentations de certains éléments, encore appelés unités ou cellules périphériques, du microcontrôleur. Ainsi, seules les alimentations des unités du microcontrôleur non utiles au réveil de ce dernier et/ou non utiles à la sauvegarde de son état pendant et en sortie d'une veille sont coupées, les autres unités restant 10 alimentées, y compris le coeur du microcontrôleur. Ainsi, la consommation d'énergie est optimisée car toutes les unités non « vitales » ne sont plus alimentées et ne consomment donc plus d'énergie pendant la mise en « veille optimale » du microcontrôleur. De plus, le fait de conserver l'alimentation des unités gérant le « minimum vital » du microcontrôleur permettent un réveil, ou une sortie du mode « veille 15 optimale », quasiment instantané du microcontrôleur. La solution de l'invention, selon ses différents modes de réalisation, répond donc à la double exigence de faible consommation en mode « veille optimale » et de temps de réveil optimal, sans modification du logiciel de pilotage du microcontrôleur, ni de sa programmation interne, mais uniquement via quelques modifications matérielles apportées au circuit imprimé sur 20 lequel est implanté le microcontrôleur. On décrit maintenant, en relation avec la figure 1, un mode de réalisation de l'invention, dans lequel le « détournement » de la fonction interne d'extinction du microcontrôleur est mise en oeuvre via un interrupteur commandé, composant électronique connu en soit. La figure 1 représente une partie d'un circuit imprimé (par exemple dans un terminal de 25 paiement électronique ou tout autre équipement électronique confronté au problème technique posé), illustrant principalement un microcontrôleur 10 et des éléments d'alimentation de ce dernier. Ainsi, le coeur 100 du microcontrôleur (« CORE » en anglais) est alimenté en 1V, alors que les unités périphériques sont alimentées en 3,3V (par exemple via les entrées d'alimentation 101 30 et 102, correspondant respectivement à l'alimentation de l'unité périphérique GPIO1 et de l'unité périphérique GPIO2). 3052574 5 Le microcontrôleur 10 présente une entrée, notée WKUP, de commande de réveil Cde Rév ainsi qu'une sortie de sa fonction interne d'extinction, notée SHDN, permettant, selon les différents modes de réalisation de l'invention, de commander l'interrupteur commandé 11. En fonctionnement classique, le microcontrôleur 10 s'éteint complètement, à réception 5 d'une commande SHDN, c'est-à-dire que toutes les alimentations sont coupées, et, à réception d'une commande WKUP, le microcontrôleur 10 se réveille, via la remise en route des alimentations coupées. Selon l'invention, la mise en oeuvre de l'interrupteur commandé 11 permet de choisir quelle(s) alimentations des unités périphériques doivent être coupées pour faire passer le 10 microcontrôleur du mode de fonctionnement au mode « veille optimale », de façon à optimiser sa consommation d'énergie. Selon l'exemple illustré en figure 1, l'alimentation de l'unité périphérique GPIO2 est commandée par l'interrupteur 11, alors que celles de l'unité périphérique GPIO1 et du coeur du microcontrôleur ne sont pas commandées par l'interrupteur 11. Ainsi, GPIO1 est toujours 15 alimentée en direct par la source 3,3V, et le coeur du microcontrôleur par la source 1V. Par exemple, GPIO1 correspond à la gestion des mémoires RAM. De cette manière, le coeur du microcontrôleur 10 et l'unité périphérique GPIO1, qui sont jugées indispensables au réveil du microcontrôleur, ainsi qu'à la sauvegarde de son état lors de ses changements de mode, continuent à assurer les fonctions « vitales » du microcontrôleur. 20 Ainsi, selon cet exemple, lorsque le microcontrôleur 10, en mode de fonctionnement normal, reçoit une commande d'extinction, la sortie de sa fonction interne SHDN (qui est une fonction classique du microcontrôleur 10, non modifiée par la présente invention) envoie une commande Cde Ext à l'interrupteur commandé 11. Ce dernier déclenche alors la coupure des alimentations des unités périphériques qui y sont reliées, en l'occurrence l'entrée d'alimentation 25 102 de l'unité périphérique GPIO2. Ensuite, lorsque la fonction interne SHDN est désactivée, la coupure de l'alimentation de l'unité périphérique GPIO2 est également désactivée, de façon à alimenter à nouveau l'unité périphérique GPIO2. Comme illustré en figure 2, lorsque le microcontrôleur 10 est en mode de fonctionnement 30 (20), c'est-à-dire dans un mode où son coeur et tous les périphériques sont alimentés, et qu'il reçoit une commande d'extinction SHDN, une commande Cde Ext est transmise à l'interrupteur commandé 11. 3052574 6 Le microcontrôleur 10 entre alors dans un mode « veille optimale » (21), dans lequel l'alimentation 102 de l'unité périphérique GP102 est coupée, alors que celles du coeur du microcontrôleur et 102 de l'unité périphérique GP101 sont maintenues. Ensuite, la sortie du microcontrôleur 10 de son mode « veille optimale » (21) est mise en 5 oeuvre comme un réveil classique, à réception d'une commande de réveil Cde Rév sur l'entrée WKUP du microcontrôleur 10. Cette commande de réveil permet de désactiver la sortie SHDN, donc de réalimenter les cellules périphériques dont l'alimentation avait été préalablement coupée via l'interrupteur commandé 11, afin que le microcontrôleur 10 retourne dans un mode de fonctionnement classique (20) et se retrouve dans l'état dans lequel il était avant la demande 10 de mise en « veille optimale ». REVENDICATIONS1. Circuit imprimé comprenant un microcontrôleur (10) comprenant au moins un élément principal, noté coeur, et au moins une unité périphérique (101), caractérisé en ce qu'il comprend des moyens sélectifs (11) de gestion de l'alimentation dudit microcontrôleur (10) mettant en oeuvre, à réception d'une commande d'extinction dudit microcontrôleur, les moyens suivants : - des moyens de coupure réversible de l'alimentation de ladite au moins une unité périphérique (101) ; - des moyens de maintien de l'alimentation dudit coeur. 2. Circuit imprimé selon la revendication 1, caractérisé en ce que lesdits moyens sélectifs (11) de gestion de l'alimentation correspondent à un interrupteur commandé (11) relié électroniquement d'une part à une fonction d'extinction interne audit microcontrôleur apte à traiter ladite commande d'extinction et d'autre part à au moins une entrée de commande (102) de l'alimentation de ladite au moins une unité périphérique. 3. Circuit imprimé selon la revendication 1, caractérisé en ce que ladite au moins une unité périphérique correspond à une unité dudit microcontrôleur (10) non nécessaire au réveil dudit microcontrôleur et/ou non nécessaire à la sauvegarde de l'état dudit microcontrôleur. 4. Terminal de paiement électronique comprenant un circuit imprimé selon les revendications 1 à 3.25