| WO/1999/050738 | PASSIVE DATA CARRIER HAVING MEANS FOR REDUCING THE POWER CONSUMPTION |
| WO/2011/163099 | LOW POWER SENSING VIA RESISTIVE SENSOR MATRIX |
| JP2002328159 | NETWORK SYSTEM FOR MARINE APPARATUS |
BEIGNE, Edith (Thorenas, Meaudre, F-38112, FR)
REBAUD, Bettina (11 rue Irvoy, Grenoble, F-38000, FR)
VIVET, Pascal (19 rue du Sorbier, Saint Paul De Varces, F-38760, FR)
MIERMONT, Sylvain (117 cours de la Libération, Grenoble, F-38100, FR)
BEIGNE, Edith (Thorenas, Meaudre, F-38112, FR)
REBAUD, Bettina (11 rue Irvoy, Grenoble, F-38000, FR)
VIVET, Pascal (19 rue du Sorbier, Saint Paul De Varces, F-38760, FR)
REVENDICATIONS
1. Dispositif d'alimentation d'un circuit électronique (10; 110; 210) apte à appliquer au circuit électronique au moins une première tension (V hιgh ) ou une seconde tension (V| 0W ) différente de la première tension, caractérisé en ce qu'il comprend :
- des moyens de détermination (12; 112; 212) d'une première fréquence (F hιgh ; F hιgh _p ratl q U e) associée à la première tension (V hιgh ) en fonction d'au moins un paramètre de fonctionnement du circuit ; - des moyens de réception (22; 122; 222) d'une information définissant une contrainte (C; F ta rget; T ta rget) ;
- des moyens de détermination (22; 122; 222) d'une première durée et d'une seconde durée telles que le fonctionnement du circuit à la première fréquence (F hιgh ; F max _estιm_hιgh) pendant la première durée et à une seconde fréquence (F| 0W ; F ma χ_ e stιm_iow) associée à la seconde tension (V| 0W ) pendant la seconde durée respecte ladite contrainte (C; F targ et; T targ et) ;
- des moyens d'application (24, 20, 14; 124, 120, 114; 224, 220, 214) aptes à appliquer au circuit (10; 110; 210) la première tension (V hιgh ) et la première fréquence (F hιgh ; F max _ e stιm_hιgh) pendant la première durée, et la seconde tension (V| 0W ) et la seconde fréquence (F| 0W ; F max _ e stιm_iow) pendant la seconde durée.
2. Dispositif d'alimentation selon la revendication 1 , dans lequel les moyens de détermination (12; 112; 212) de la première fréquence (F hιgh ; F hιgh _p ratl q U e) sont aptes à déterminer la seconde fréquence en fonction d'au moins un paramètre de fonctionnement du circuit.
3. Dispositif d'alimentation selon la revendication 2, comprenant des moyens de mesure (30, 31 , 32; 130, 131 ; 230, 231 , 232) dudit paramètre au sein du circuit électronique (10; 110; 210).
4. Dispositif d'alimentation selon l'une des revendications 1 à 3, dans lequel l'information est une fréquence objectif (F ta rget) et dans lequel les moyens de détermination (122) sont aptes à déterminer la première durée et la seconde durée de telle sorte que le circuit fonctionne à une fréquence moyenne effective supérieure à la fréquence objectif (Ftarget)-
5. Dispositif d'alimentation selon l'une des revendications 1 à 4, dans lequel les moyens d'application sont aptes à mettre en œuvre périodiquement une période formée successivement de l'application de la première tension (Vhigh) et de la première fréquence (F hιgh ; F ma χ_estιm_hιgh), et de l'application de la seconde tension (V| 0W ) et de la seconde fréquence (F| 0W ; Fm a χ_estιm_iow)-
6. Dispositif d'alimentation selon l'une des revendications 1 à 5, dans lequel les moyens de détermination de la première durée et de la seconde durée sont aptes à déterminer un rapport entre la première durée et la seconde durée en fonction au moins de la première fréquence.
7. Dispositif d'alimentation selon l'une des revendications 1 à 6, dans lequel ledit paramètre de fonctionnement représente une condition instantanée de fonctionnement du circuit.
8. Dispositif d'alimentation selon la revendication 7, dans lequel les moyens de détermination de la première fréquence sont aptes à déterminer la seconde fréquence en fonction d'au moins une condition instantanée de fonctionnement du circuit.
9. Dispositif d'alimentation selon la revendication 8, dans lequel les moyens de détermination de la première durée et de la seconde durée sont aptes à déterminer un rapport entre la première durée et la seconde durée en fonction de la première fréquence et de la seconde fréquence.
10. Dispositif d'alimentation selon l'une des revendications 1 à 9, dans lequel les moyens d'application comprennent un sélecteur de fréquence (20; 120) recevant un premier signal d'horloge (H hιgh ) ayant la première fréquence (F hιgh ) et un second signal d'horloge (H| 0W ) ayant la seconde fréquence (F| 0W ), et appliquant au circuit électronique (10; 110) le premier signal d'horloge (H hιgh ) pendant la première durée et le second signal d'horloge (H| 0W ) pendant la seconde durée.
11. Dispositif d'alimentation selon l'une des revendications 1 à 9, dans lequel les moyens d'application comprennent un générateur d'horloge
(220) apte à générer et à appliquer au circuit électronique (210) une première horloge ayant la première fréquence (F max _estιm_hιgh) pendant la première durée et une seconde horloge ayant la seconde fréquence (F ma χ_ e stιm_iow) pendant la seconde durée.
12. Dispositif d'alimentation selon l'une des revendications 1 à 11 , dans lequel les moyens d'application comprennent un sélecteur de tension (14; 114; 214) recevant la première tension (V hιgh ) et la seconde tension (V| 0W ) et appliquant au circuit électronique (10; 110; 210) la première tension (V hιgh ) pendant la première durée et la seconde tension (V| 0W ) pendant la seconde durée.
13. Dispositif d'alimentation selon la revendication 12, dans lequel le sélecteur de tension comprend : - des moyens pour appliquer au circuit électronique une tension variable d'une valeur égale à la première tension à une valeur égale à la seconde tension ;
- des moyens pour sélectionner l'application de la seconde tension sur le circuit électronique lorsque la tension variable atteint la seconde tension.
14. Dispositif d'alimentation selon la revendication 13, dans lequel le sélecteur de tension comprend : - des moyens pour appliquer la tension variable au circuit électronique lorsque la seconde tension est appliquée ;
- des moyens pour supprimer l'application de la seconde tension lorsque la tension variable est appliquée ; - des moyens pour commander la tension variable d'une valeur égale à la seconde tension à une valeur égale à la première tension.
15. Dispositif d'alimentation selon l'une des revendications 1 à 14, dans lequel ladite contrainte est temporelle.
16. Dispositif d'alimentation selon l'une des revendications 1 à 15, dans lequel le circuit électronique est un circuit numérique.
17. Dispositif d'alimentation selon l'une des revendications 1 à 16, dans lequel le circuit électronique est réalisé en technologique CMOS.
18. Procédé d'alimentation d'un circuit électronique (10; 110; 210) au moyen d'au moins une première tension (V hιgh ) ou une seconde tension (V| 0W ) différente de la première tension, caractérisé en ce qu'il comprend les étapes suivantes :
- détermination d'une première fréquence (F hιgh ; F hιgh _p r at ιq ue) associée à la première tension (V hιgh ) en fonction d'au moins un paramètre de fonctionnement du circuit ;
- réception d'une information définissant une contrainte (C; F ta rget; Ttarget) !
- détermination d'une première durée et d'une seconde durée telles que le fonctionnement du circuit à la première fréquence (F hιgh ; F max _estιm_hιgh) pendant la première durée et à une seconde fréquence (F| 0W ; F ma χ_ e stιm_iow) associée à la seconde tension (V| 0W ) pendant la seconde durée respecte ladite contrainte (C; F ta rget; T ta rget) ;
- application au circuit (10; 1 10; 210) de la première tension (V hιgh ) et de la première fréquence (F hιgh ; F max _ e stιm_hιgh) pendant la première durée, et de la seconde tension (V| 0W ) et de la seconde fréquence (F| 0W ; F ma χ_ e stιm_iow) pendant la seconde durée.
19. Procédé d'alimentation selon la revendication 18, comprenant les étapes suivantes : - mesure périodique du paramètre de fonctionnement ;
- détermination périodique de la première fréquence en fonction du paramètre mesuré.
20. Procédé d'alimentation selon la revendication 19, comprenant la détermination périodique d'un rapport entre la première durée et la seconde durée en fonction de la première fréquence déterminée en fonction du paramètre mesuré. |
Dispositif d'alimentation d'un circuit électronique, en particulier d'un circuit numérique, et procédé associé
La présente invention est relative à un dispositif d'alimentation d'un circuit électronique, en particulier d'un circuit numérique, et à un procédé associé.
Afin d'optimiser l'alimentation d'un circuit électronique (en particulier dans le cas des circuits numériques), il a été proposé d'adapter l'alimentation aux performances requises à un instant donné du fonctionnement du circuit électronique.
La conception actuelle de nombreux circuits électroniques, en particulier numériques (et notamment ceux réalisés en technologie CMOS), est en effet telle que l'énergie consommée pour réaliser un ensemble donné d'opérations augmente avec la tension d'alimentation utilisée, imposée quant à elle par la fréquence à laquelle on souhaite faire travailler le circuit.
Il est ainsi apparu possible d'optimiser la consommation d'énergie en adaptant la tension d'alimentation à un niveau aussi faible que possible, mais suffisant pour assurer un fonctionnement sûr au niveau de performance souhaité (c'est-à-dire, pour un circuit synchrone, à la fréquence d'horloge souhaitée).
L'article "Low-Power Opération Using Self-Timed Circuits and
Adaptive Scaling of the Supply Voltage", de L. S. Nielsen et al. in journal I. E. E. E
VLSI volume 2, numéro 4, décembre 1994, a ainsi pu introduire la notion d'adaptation de la tension d'alimentation (en anglais "Adaptive Voltage
Scaling") dans le contexte de systèmes en logique asynchrone.
L'adaptation de la tension d'alimentation à la fréquence de travail de circuits numériques synchrones a également été proposée, notamment dans les articles "A Dynamic Voltage Scaled Microprocessor System", de T. D. Burd et al., in journal I. E. E. E JSSC volume 35, numéro 11 , novembre 2000 et "Closed-Loop Adaptive Voltage Scaling Controller for Standard-Cell ASICs", de S. Dhar et al. in actes de ISLPED, août 2002.
D'autres solutions ont été proposées plus récemment dans cette même lignée, notamment dans l'article "Dynamic Voltage and Frequency Management for a Low-Power Embedded Microprocessor" , de M. Nakai et al. in journal I. E. E. E JSSC volume 40 numéro 1 , janvier 2005, ainsi que dans l'article "Next Génération SoC Power Management', de J. Pennanen et al. in journal Electronics Product Design, mars 2007.
Si ces systèmes permettent d'optimiser la consommation électrique en adaptant la tension d'alimentation aux contraintes de performance du circuit électronique (exprimées en général en termes de fréquence de fonctionnement requise par les applications mises en œuvre par le circuit électronique), ils nécessitent en revanche, du fait même de leur conception, un module d'alimentation apte à délivrer tout au long du fonctionnement une tension variable sur une plage continue de valeurs, généralement réalisé sous forme d'un convertisseur continu-continu. La présence d'un tel module pose problème quelle que soit la technologie envisagée : l'utilisation de hacheurs externes n'est naturellement pas adaptée à l'intégration de l'ensemble des éléments dans un circuit intégré ; l'utilisation de hacheurs internes est très coûteuse (en termes de surface de substrat ou du fait des procédés utilisés) à cause de la présence de nombreux composants passifs ; les convertisseurs linéaires souffrent quant à eux d'un faible rendement.
Dans ce contexte, l'invention propose un dispositif d'alimentation d'un circuit électronique apte à appliquer au circuit électronique au moins une première tension ou une seconde tension différente de la première tension, caractérisé en ce qu'il comprend :
- des moyens de détermination d'une première fréquence associée à la première tension en fonction d'au moins un paramètre de fonctionnement du circuit ;
- des moyens de réception d'une information définissant une contrainte ;
- des moyens de détermination d'une première durée et d'une seconde durée telles que le fonctionnement du circuit à la première fréquence
pendant la première durée et à une seconde fréquence associée à la seconde tension pendant la seconde durée respecte ladite contrainte ;
- des moyens d'application aptes à appliquer au circuit la première tension et la première fréquence pendant la première durée, et la seconde tension et la seconde fréquence pendant la seconde durée.
Ainsi, selon la pondération relative de la première durée et de la seconde durée, le point de fonctionnement moyen du circuit peut être réglé à l'intérieur d'un ensemble continu de points de fonctionnement, afin notamment de s'adapter au mieux à la contrainte reçue, et tout en utilisant un nombre discret (en général égal à deux) de tensions disponibles, et ce en tenant compte des conditions de fonctionnement du circuit.
On peut prévoir également que les moyens de détermination de la première fréquence soient aussi aptes à déterminer la seconde fréquence en fonction d'au moins un paramètre de fonctionnement du circuit, afin d'utiliser également une seconde fréquence optimisée aux conditions courantes de fonctionnement.
Ces moyens peuvent utiliser des moyens de mesure dudit paramètre au sein du circuit électronique, dont plusieurs exemples sont donnés dans la description qui suit. L'information représente par exemple une fréquence objectif et les moyens de détermination peuvent alors être aptes à déterminer la première durée et la seconde durée de telle sorte que le circuit fonctionne à une fréquence moyenne effective supérieure à la fréquence objectif.
Selon un mode de réalisation envisageable, les moyens d'application sont aptes à mettre en œuvre périodiquement une période (c'est-à-dire un cycle) formée successivement de l'application de la première tension et de la première fréquence, et de l'application de la seconde tension et de la seconde fréquence. Le rapport cyclique (c'est-à-dire la durée relative d'application de la première fréquence et de la première tension par rapport à la durée totale de la période) est alors directement lié à la fréquence moyenne effective comme expliqué plus loin.
En pratique, les moyens de détermination de la première durée et de la seconde durée peuvent être aptes à déterminer un rapport entre la première durée et la seconde durée (directement lié au rapport cyclique qui vient d'être mentionné) en fonction au moins de la première fréquence. On influe ainsi sur la fréquence moyenne effective.
Ledit paramètre de fonctionnement représente par exemple une condition instantanée de fonctionnement du circuit, ce qui permet de réactualiser les première et seconde durées (par exemple leur rapport lié au rapport cyclique) régulièrement, de manière dynamique. Les moyens de détermination de la première fréquence peuvent être aptes à déterminer également la seconde fréquence en fonction d'au moins une condition instantanée de fonctionnement du circuit.
On peut alors prévoir que les moyens de détermination de la première durée et de la seconde durée soient aptes à déterminer le rapport entre la première durée et la seconde durée (directement lié au rapport cyclique) en fonction de la première fréquence et de la seconde fréquence, de manière dynamique comme déjà indiqué.
Selon un mode de réalisation envisageable, les moyens d'application comprennent un sélecteur de fréquence recevant un premier signal d'horloge ayant la première fréquence et un second signal d'horloge ayant la seconde fréquence, et appliquant au circuit électronique le premier signal d'horloge pendant la première durée et le second signal d'horloge pendant la seconde durée.
Selon un autre mode de réalisation envisageable, les moyens d'application comprennent un générateur d'horloge apte à générer et à appliquer au circuit électronique une première horloge ayant la première fréquence pendant la première durée et une seconde horloge ayant la seconde fréquence pendant la seconde durée.
Les moyens d'application peuvent comprendre également un sélecteur de tension recevant la première tension et la seconde tension, et appliquant au circuit électronique la première tension pendant la première durée et la seconde tension pendant la seconde durée.
Ce sélecteur de tension comprend selon une possibilité de mise en œuvre :
- des moyens pour appliquer au circuit électronique une tension variable d'une valeur égale à la première tension à une valeur égale à la seconde tension ;
- des moyens pour sélectionner l'application de la seconde tension sur le circuit électronique lorsque la tension variable atteint la seconde tension.
Le sélecteur de tension peut alors également comprendre :
- des moyens pour appliquer la tension variable au circuit électronique lorsque la seconde tension est appliquée ;
- des moyens pour supprimer l'application de la seconde tension lorsque la tension variable est appliquée ;
- des moyens pour commander la tension variable d'une valeur égale à la seconde tension à une valeur égale à la première tension. La tension variable n'est dans ce cas appliquée que lors des phases de transition entre la première tension et la seconde tension (phases de courte durée par rapport à la durée totale du fonctionnement) ; cette tension variable peut donc par exemple être générée au moyen d'un convertisseur linéaire sans conséquence notable sur le rendement pris sur la durée totale du fonctionnement.
La contrainte est par exemple temporelle (et exprimée dans ce cas sous forme d'un temps ou d'une fréquence), bien que d'autres possibilités soient envisageables, comme une contrainte en puissance moyenne consommée. Le circuit électronique est souvent en pratique un circuit numérique, par exemple réalisé en technologique CMOS.
L'invention propose également, de manière originale en soi, un dispositif d'alimentation d'un circuit électronique apte à appliquer au circuit électronique au moins une première tension ou une seconde tension différente de la première tension, caractérisé en ce qu'il comprend :
- des moyens de réception d'une information définissant une contrainte ;
- des moyens de détermination d'un premier nombre de cycles d'horloge et d'un second nombre de cycles d'horloge tels que le fonctionnement du circuit à une première fréquence associée à la première tension pendant le premier nombre de cycles d'horloge et à une seconde fréquence associée à la seconde tension pendant le second nombre de cycles d'horloge respecte ladite contrainte ;
- des moyens d'application aptes à appliquer au circuit la première tension et la première fréquence pendant le premier nombre de cycles d'horloge, et la seconde tension et la seconde fréquence pendant le second nombre de cycles d'horloge.
On peut prévoir en outre dans ce cas des moyens de synchronisation aptes à synchroniser (le début de) l'application de la première tension et (le début d') un traitement à effectuer avec ladite contrainte.
Le nombre total de cycles d'horloge nécessaire au traitement est alors par exemple prédéterminé ; la contrainte peut en pratique être le temps dans lequel on souhaite effectuer le traitement.
Les caractéristiques optionnelles mentionnées plus haut s'appliquent également dans ce contexte. On peut en outre prévoir ici que les fréquences susmentionnées soient prédéterminées (par exemple à la conception du système ou lors d'une phase de calibration du circuit) afin d'assurer un fonctionnement sûr de celui-ci en tenant compte des variabilités et dérives envisageables, et mémorisées éventuellement au sein des moyens de détermination, toujours dans un but de minimiser l'énergie consommée par le circuit. L'invention propose également un procédé d'alimentation d'un circuit électronique au moyen d'au moins une première tension ou une seconde tension différente de la première tension, caractérisé en ce qu'il comprend les étapes suivantes :
- détermination d'une première fréquence associée à la première tension en fonction d'au moins un paramètre de fonctionnement du circuit ;
- réception d'une information définissant une contrainte ;
- détermination d'une première durée et d'une seconde durée telles que le fonctionnement du circuit à la première fréquence pendant la première durée et à une seconde fréquence associée à la seconde tension pendant la seconde durée respecte ladite contrainte ; - application au circuit de la première tension et de la première fréquence pendant la première durée, et de la seconde tension et de la seconde fréquence pendant la seconde durée.
On peut en outre envisager les étapes suivantes, de manière à faire évoluer en dynamique l'alimentation du circuit : - mesure périodique du paramètre de fonctionnement ;
- détermination périodique de la première fréquence en fonction du paramètre mesuré.
On peut ainsi prévoir la détermination périodique d'un rapport entre la première durée et la seconde durée en fonction de la première fréquence déterminée en fonction du paramètre mesuré.
D'autres caractéristiques et avantages de l'invention apparaîtront mieux à la lumière de la description qui suit, faite en référence aux dessins annexés dans lesquels :
- la figure 1 représente les éléments principaux d'un système conforme aux enseignements de l'invention ;
- la figure 2 représente un tel système selon un premier exemple d'application ;
- la figure 3 illustre les variations de tension d'alimentation et de fréquence d'horloge présentes lors de la mise en œuvre du système de la figure 2 ;
- la figure 4 représente un second exemple d'application de l'invention ;
- la figure 5 présente des chronogrammes illustrant le fonctionnement du système de la figure 4. La figure 1 représente les éléments d'un dispositif d'alimentation d'un cœur fonctionnel 10, par exemple un circuit électronique synchrone réalisé en logique numérique CMOS.
Les éléments de ce dispositif décrit dans la suite peuvent être rassemblés au sein du même circuit intégré que le cœur fonctionnel 10, et par conséquent réalisés en technologie CMOS. En variante, tout ou partie de ces éléments pourrait toutefois être réalisé sous forme de module externe au cœur fonctionnel 10.
On décrit par ailleurs dans la suite le dispositif d'alimentation sous forme d'éléments fonctionnels. Plusieurs fonctions pourraient toutefois être réalisées par un même élément dans certains modes de mise en œuvre.
On considère ici que tout circuit numérique synchrone est capable de fonctionner à une fréquence maximum F max _réeiie, que cette fréquence ne peut être mesurée directement et qu'elle varie dans le temps selon des facteurs intrinsèques et extrinsèques. Les facteurs intrinsèques sont la variabilité du procédé de fabrication et le vieillissement ; les facteurs extrinsèques sont la tension d'alimentation et la température. On considère également que faire fonctionner le circuit plus vite que cette fréquence provoque des fautes de délais qui conduisent à la corruption de la fonction du circuit.
Le dispositif d'alimentation de la figure 1 comprend un contrôleur d'adaptation 12 qui reçoit d'une part une tension haute V hιgh et une tension basse V| 0W , et pilote d'autre part des sondes 30, 31 , 32, situées physiquement au sein du cœur 10 afin de mesurer des paramètres de fonctionnement de celui-ci.
La communication entre les sondes 30, 31 , 32 et le contrôleur d'adaptation 12 (notamment pour piloter les sondes et remonter la valeur des paramètres surveillés vers le contrôleur) peut se faire par tout moyen approprié, par exemple à l'aide de signaux analogiques, numériques ou une quelconque combinaison de ces types de signaux.
Le contrôleur d'adaptation 12 pilote donc les sondes 30, 31 , 32 et recueille les valeurs des paramètres de fonctionnement mesurées par ces sondes, dans le but notamment de comparer ces valeurs à des valeurs de calibration mémorisées par exemple dans une mémoire non volatile associée
au contrôleur d'adaptation, ou à des valeurs produites par des sources de référence (typiquement fréquence, tension ou courant de référence).
Sur la base des valeurs mesurées et éventuellement des comparaisons effectuées, le contrôleur d'adaptation estime alors pour chacune des tensions d'alimentation envisagées dans le dispositif (c'est-à-dire ici pour la tension haute V hιgh et la tension basse V| 0W ) quelle fréquence maximum Fmax_ P ratιque peut être utilisée en pratique sans nuire à un fonctionnement sûr du système.
Cette estimation d'une fréquence associée à chaque valeur de tension d'alimentation peut être réalisée grâce à des techniques connues de détermination de couple tension-fréquence permettant un fonctionnement sûr du système comme décrit par exemple dans l'article, par exemple par simulation ou par calibration au moyen d'un test en vitesse réalisé après fabrication du circuit. On remarque toutefois qu'il est prévu ici la détermination d'une fréquence de fonctionnement pour chaque source de tension disponible, et non l'adaptation de la tension à une fréquence souhaitée.
En pratique, on peut se baser sur une estimation pessimiste de la fréquence maximum F max _réeiie déjà mentionnée telle qu'obtenue par simulation, puis déterminer à l'aide des mesures si les conditions instantanées de fonctionnement sont favorables ou non, et, enfin, calculer pour chaque source de tension une fréquence F max _ es tιm aussi proche d'une estimation optimiste de la fréquence F max _ rée ιie que ces conditions de fonctionnement le permettent, en prenant en compte l'imprécision des mesures.
Par ailleurs, afin de compenser l'évolution dans le temps des sources de variation, l'estimation des fréquences maximum pratiques F max _ es t ιm associées à chaque tension d'alimentation devra être réalisée à intervalles régulier, avec une période dépendant des constantes de temps des variations à compenser.
Sur la base des fréquences maximum pratiques F max _ es tιm déterminées comme indiqué ci-dessus, le contrôleur d'adaptation 12 commande des générateurs d'horloge 16, 18 (et précisément ici un premier générateur d'horloge 16 associé à la tension basse V| 0W et un second
générateur d'horloge 18 associé à la tension haute V hιgh ) afin que chacun de ceux-ci fournissent en sortie un signal d'horloge (ici respectivement H| 0W et Hhigh) ayant la fréquence déterminée par le contrôleur d'adaptation 12.
Un contrôleur de performance 22 reçoit les différents signaux d'horloge H| 0W , H hιgh et détermine la fréquence (respectivement F| 0W , F hιgh ) de chacun de ces signaux, par exemple à l'aide d'un signal de fréquence de référence F rβ f. Le contrôleur de performance 22 pourrait également en variante recevoir les valeurs de fréquence associées à chaque tension d'alimentation directement du contrôleur d'adaptation 12. La solution proposée en figure 1 permet toutefois au contrôleur de performance 22 de travailler sur les signaux d'horloge effectivement générés, tels qu'ils sont appliqués au cœur 10 comme décrit dans la suite.
Le contrôleur de performance reçoit également une information C représentant une contrainte de performances, par exemple fréquentielle ou temporelle, à respecter par le dispositif d'alimentation. Cette contrainte est déterminée par exemple par l'application (au sens "logicieP') mise en œuvre par le cœur 10, en fonction notamment des besoins de cette application.
En fonction des fréquences F| 0W et F hιgh mesurées des signaux H| 0W et H hιgh et de l'information de contrainte C, le contrôleur de performance 22 détermine les durées respectives d'application des deux tensions d'alimentation, ici par exemple sous forme du ratio X entre le temps d'application de la tension haute V hιgh et le temps cumulé d'application des deux tensions, permettant de respecter au mieux la contrainte définie dans l'information C. On peut par exemple prévoir dans le cas où C est une contrainte exprimée sous forme fréquentielle F ta rget que le système est dimensionné de sorte que cette contrainte fréquentielle F ta rget est comprise entre les valeurs envisageables de F| 0W et de F hιgh , ce qui permet d'obtenir un ratio X compris entre 0 et 1. On peut prévoir également que le contrôleur de performance 22 impose un fonctionnement à la tension haute V hιgh et à la fréquence correspondance F hιgh lorsque la contrainte C ne sera pas atteinte malgré un
fonctionnement continue à cette dernière fréquence F hιgh (c'est-à-dire un ratio X=1 ) et que la contrainte ne peut donc pas être respectée (par exemple si Ftarget > F hιgh ) ; le dispositif peut dans ce cas indiquer à l'entité émettrice de la contrainte C que cette contrainte ne peut être respectée, l'entité émettrice de la contrainte pouvant soit modifier le fonctionnement du cœur 10 afin de diminuer la contrainte C, soit en variante commander une augmentation de la tension V hιgh sur les systèmes où cette tension est ajustable.
On peut en outre prévoir dans le cas où la contrainte C est inférieure à la fréquence F| 0W associée à la tension basse V| 0W de travailler en permanence à la tension basse V| 0W et la fréquence associée F| 0W (X=O), ou en variante de commander le générateur d'horloge 16 de manière à réduire la fréquence (tout en conservant la tension basse V| 0W , ce qui ne pose pas de problème de fonctionnement), ou bien encore de basculer l'alimentation dans un état de veille pendant une partie du temps permettant de respecter cette contrainte C inférieure à Fiow
Le ratio X déterminé par le contrôleur de performance 22 est transmis à un séquenceur de transition 24 qui pilote un sélecteur de tension 14 et un sélecteur de fréquence 20 (à l'aide respectivement d'une commande en tension hopv et d'une commande de fréquence πOP F ) de telle sorte que les sélecteurs 14, 20 appliquent respectivement la tension haute V hιgh et le signal d'horloge associé H hιgh pendant la durée définie par le contrôleur de performance 22 (ici une proportion X du temps), et la tension basse V| 0W et le signal d'horloge H| 0W associé pendant une autre durée également définie par le contrôleur de performance 22, ici le reste du temps (soit une proportion de 1 -X du temps).
Dans ce contexte, le séquenceur de transition 24 assure notamment que ne soient jamais simultanément appliqués (en particulier pendant les phases de transition) la tension basse V| 0W et le signal d'horloge H hιgh associé à la tension haute V hιgh (ce qui serait problématique pour le fonctionnement du circuit).
Le sélecteur de tension 14 reçoit d'une part la tension V hιgh et d'autre part la tension V| 0W et applique au cœur 10 l'une de ces deux tensions en
fonction du signal de commande hopv- De même, le sélecteur de fréquence 20 reçoit séparément les signaux d'horloge H| 0W et H hιgh et applique l'un de ces signaux d'horloge au cœur 10 selon la commande hopF. Sur la figure 1 , on a référencé V CO re la tension appliquée au cœur 10 par le sélecteur de tension 14 et Hcore le signal d'horloge de fréquence F ∞ re appliqué au cœur 10 par le sélecteur de fréquence 20.
Selon la mise en œuvre pratique choisie pour les sélecteurs 14, 20, on pourra conserver un fonctionnement continu du cœur 10 pendant les phases de transition entre les deux valeurs de tension qui viennent d'être indiquées, ou au contraire interrompre le fonctionnement du cœur 10 pendant ces transitions, par exemple au moyen d'une information de synchronisation synchro échangée entre le cœur 10 et le séquenceur de transition 24. Dans ce dernier cas, le contrôleur de performances 22 prendra en compte le temps d'interruption du fonctionnement du cœur 10 lors de la détermination des différentes durées d'application de chaque tension dans le but de respecter la contrainte C.
Ainsi, bien qu'il utilise les tensions disponibles (ici seulement deux tensions V hιgh et V| 0W ), le dispositif d'alimentation peut fonctionner de manière optimisée et adaptée à une contrainte C (qui peut quant à elle varier sur une plage continue de valeurs) grâce à la pondération variable du temps d'utilisation d'une source de tension par rapport à l'autre et à la performance variable (et donc adaptable à la contrainte) qui en découle.
On a représenté sur la figure 2 un mode de réalisation de l'invention dans une application où la contrainte à respecter est exprimée sous forme d'une fréquence de fonctionnement requise par le processus mis en œuvre par le cœur numérique 110.
On a attribué à chaque élément de la figure 2 une référence numérique augmentée de 100 par rapport à l'élément ayant la même fonction en figure 1.
Dans ce mode de réalisation, un contrôleur d'adaptation 112 pilote une sonde de tension 130 et une sonde de température 131.
La sonde de tension 130 mesure la tension d'alimentation effectivement reçue par le cœur 110, c'est-à-dire tenant compte des chutes locales d'alimentation dues à la résistivité de la grille d'alimentation.
La tension mesurée par la sonde 130 est comparée à une tension de référence V rβf et peut ainsi être convertie au sein du contrôleur d'adaptation 112 en une valeur numérique représentative de cette tension mesurée.
La sonde de température 131 permet également d'obtenir une information numérique représentant la valeur de la température mesurée. Pour ce faire, la sonde de température 131 mesure par exemple en pratique la tension aux bornes d'une diode polarisée en direct par un courant de référence
(la tension aux bornes de la diode variant en fonction de la température) ; la tension mesurée peut dans ce cas également être convertie sous forme d'une information numérique de température au sein du contrôleur d'adaptation 112.
Le cœur 110 étant soumis à deux tensions d'alimentation différentes comme expliqué en détail dans la suite, le contrôleur d'adaptation 112 doit pouvoir distinguer entre les différentes phases d'alimentation afin de déterminer à quelle tension souhaitée correspond la tension mesurée. Pour ce faire, on peut par exemple prévoir une communication entre le contrôleur d'adaptation 112 et le séquenceur de transition 124 décrit plus loin (comme représenté en pointillés sur la figure 2) ou d'autres éléments détenant une information sur la tension appliquée (tel que par exemple le sélecteur de tension 114). En variante, on peut prévoir que le contrôleur d'adaptation 112 détermine la tension d'alimentation concernée (V hιgh ou V| 0W ) en fonction de la tension mesurée et d'un seuil (par exemple égal à V| 0W puisque la tension mesurée sera en principe inférieure à la tension appliquée du fait notamment des chutes d'alimentation déjà mentionnées).
On peut par ailleurs prévoir que le contrôleur d'adaptation 112 considère comme non valable une mesure au cours de laquelle la tension mesurée varie de manière notable (pour éviter le cas où la mesure a lieu pendant la phase de transition entre les deux tensions d'alimentation comme décrit ci-après).
Sur la base de la température mesurée et des tensions d'alimentation effectives mesurées (une valeur mesurée pour chaque tension possible d'alimentation, ici V hιgh et V| 0W ), le contrôleur d'adaptation 112 détermine les fréquences maximums pratiques F max _estιm_hιgh et F ma χ_ e stιm_iow respectivement associées à la tension haute V hιgh et à la tension basse V| 0W , par exemple à l'aide de tables mémorisées dans une mémoire non volatile associée au contrôleur d'adaptation 112, ou en variante en fonction de formules déterminées par les caractéristiques de la technologie utilisée.
Dans le cas de l'utilisation de tables mémorisant les valeurs de fréquence maximum pratique associées à des couples tension-température mesurées, il est possible d'effectuer au cours d'une phase de démarrage du circuit numérique des tests visant à déterminer la fréquence maximale de fonctionnement sûr du cœur 110 à la température ambiante et pour une pluralité de tensions dans le but de mettre à jour en partie la table précitée. Ces tests (généralement dénommés "auto-tests") consistent par exemple à vérifier le bon fonctionnement du cœur 110 avec des fréquences croissantes pour retenir la fréquence la plus élevée ayant assurée un fonctionnement sûr du cœur 110, en gardant toutefois de préférence une marge d'incertitude pour parer à d'éventuelles dérives du système. Les fréquences maximums pratiques ainsi déterminées F ma χ_ e stιm_iow et F max _estιm_hιgh associées respectivement à la tension basse V| 0W et à la tension haute V hιgh sont respectivement transmises à un premier générateur d'horloge 116 et à un second générateur d'horloge 118.
Les générateurs d'horloge 116, 118 sont par exemple chacun de type à verrouillage de fréquence (ou FLL de l'anglais "frequency locked loop") et réalisés au moyen d'un oscillateur local commandé en tension à faible gigue et d'une boucle de contrôle qui asservit la fréquence générée par rapport à la consigne de fréquence reçue et à une fréquence de référence F rβ f reçue par chacun des générateurs d'horloge 116, 118. Chaque générateur d'horloge 116, 118 émet à destination d'un contrôleur de performance 122 une information représentant la fréquence
actuellement générée par ce générateur d'horloge (information désignée F| 0W pour le générateur d'horloge 116 et F hιgh pour le générateur d'horloge 118).
Les signaux d'horloge H| 0W et H hιgh générés respectivement par le premier générateur d'horloge 116 et par le second générateur d'horloge 118 sont appliqués en entrée d'un sélecteur de fréquence 120 dont le fonctionnement est décrit ci-après.
Le contrôleur de performance 122 reçoit donc des informations représentant les fréquences respectivement générées par le premier générateur 116 et le second générateur 118, c'est-à-dire respectivement associés à la tension basse V| 0W et à la tension haute V hιgh . Le contrôleur de performance 122 reçoit également, par exemple sous forme d'une information codée numériquement, la fréquence F ta rget de fonctionnement requise par le processus mis en œuvre par le cœur 110 (qui exprime dans la présente application la contrainte que doit respecter le dispositif d'alimentation). Les dimensionnements du circuit lors de sa conception sont tels que cette contrainte fréquentielle F ta rget est comprise entre les fréquences F| 0W et F hιgh des horloges H| 0W et H hιgh et le contrôleur de performance 122 peut ainsi déterminer une proportion X (en pourcents) du temps de calcul total telle que la fréquence moyenne effective F θ ff = X.F hιgh + (1 -X). F| 0W soit supérieure à la fréquence objectif Ftarget-
La fréquence moyenne effective F θ ff obtenue en faisant travailler une proportion X du temps total le cœur 110 à la fréquence F hιgh , et le reste du temps à la fréquence F| 0W , est ainsi supérieure à l'objectif, et permet donc de respecter la contrainte définie par celui-ci. On choisi par exemple F θ ff suffisamment supérieure à Ftarget (par exemple de 1 % à 10 % supérieure) pour tenir compte des périodes de transition entre deux phases de fonctionnement (le fonctionnement du cœur 110 pouvant dans certains cas être interrompu durant ces périodes de transition). La proportion X ainsi déterminée est transmise au séquenceur de saut 124 qui pilote d'une part le sélecteur de fréquence 120 (au moyen de la commande hopF) de manière à appliquer successivement au circuit 110 les
deux horloges H hιgh e t H| 0W afin d'obtenir les proportions temporelles qui viennent d'être définies, comme représenté sur la figure 3, et d'autre part le sélecteur de tension 114 (sous la commande du signal hopv) de telle sorte que celui-ci applique la tension V hιgh au cœur 110 simultanément à l'horloge H hιgh et la tension basse V| 0W simultanément à l'horloge H| 0W (voir également la figure 3), ce qui optimise à chaque instant la puissance consommée.
La figure 3 (où est notée F ∞ re la fréquence de l'horloge H ∞ re appliquée au cœur 110 par le sélecteur de fréquence 120) illustre un exemple de fonctionnement possible obtenu grâce au séquenceur de saut 124 : dans cet exemple, le séquenceur de saut 124 fonctionne avec une période T hop . A un instant t = 0, le séquenceur 124 commande les sélecteurs 114, 120 afin de passer d'un mode de fonctionnement à la tension V| 0W et à la fréquence F| 0W à un mode de fonctionnement à la tension V hιgh et à la fréquence F hιgh , en basculant tout d'abord la tension grâce au sélecteur 114, puis la fréquence grâce au sélecteur de fréquence 120.
A un temps t = X.T hop , le séquenceur 124 commande les sélecteurs 114, 120 afin de passer du mode à tension V hιgh et fréquence F hιgh au mode de tension V| 0W et de fréquence F| 0W , en basculant d'abord la fréquence puis la tension. Du fait du fonctionnement périodique déjà mentionné, le séquenceur de saut effectue à l'instant t = T hop la même opération qu'à l'instant t = 0, et ainsi de suite.
On comprend que, par exception, le séquenceur de saut 124 commande les sélecteurs 114, 120 afin d'assurer un fonctionnement constant à la tension V hιgh et à la fréquence F hιgh lorsque la proportion X vaut 100%, tandis qu'il commande un fonctionnement constant à la tension V| 0W et à la fréquence Fiow lorsque la proportion X vaut 0.
Le sélecteur de tension 114 est par exemple du type décrit dans l'article "A Power Supply Selector for Energy- and Area-Efficient Local Dynamic Voltage Scaling" de S. Miermont et al. in actes de PATMOS, septembre 2007. Le sélecteur de fréquence 120 est par exemple du type "sans aléa" comme décrit dans le brevet US 6,501 ,304.
Un tel sélecteur de tension permet, durant une phase de transition, d'appliquer au circuit électronique une tension variable d'une valeur égale à une première tension (V| 0W ou V hιgh ) à une valeur égale à l'autre tension, puis de sélectionner l'application de l'autre tension sur le circuit électronique lorsque la tension variable a atteint cette autre tension, ce qui permet une alimentation continue du circuit électronique.
Ce sélecteur de tension permet de gérer les phases de transition inverses en appliquant la tension variable au circuit électronique lorsque cette autre tension est appliquée, en supprimant l'application de cette autre tension lorsque la tension variable est appliquée et en commandant la tension variable d'une valeur égale à cette autre tension à une valeur égale à la première tension.
Le fonctionnement qui vient d'être décrit permet ainsi une alimentation du cœur 110 à la fréquence moyenne effective F θ ff mentionnée plus haut, tout en optimisant à chaque instant le couple tension-fréquence utilisé, et en ayant seulement recours à deux sources de tension. On remarque à cet égard que la tension variable dont l'utilisation est proposée dans l'exemple décrit ci-dessus n'est utilisée que pendant les brèves phases de transition et que l'on peut donc avoir recours à un convertisseur linéaire pour la génération de cette tension variable sans conséquence notable sur le rendement électrique (la tension générée par le convertisseur lors des phases de fonctionnement à la tension V hιgh correspondant à la tension maximale de celui-ci et n'impliquant donc pas de pertes résistives).
La figure 4 représente un mode de réalisation de l'invention appliqué au cas où le cœur fonctionnel (ici référencé 210) est un bloc recevant périodiquement (c'est-à-dire tous les T da ta) des données d'entrée, puis disposant d'un temps maximum T ta rget (parfois dénommé "latence du bloc") pour traiter ces données d'entrée (le traitement nécessitant N cycles d'horloge) et communiquer les données traitées au bloc suivant. Sur la figure 4, les éléments ayant une fonction correspondante à un élément de la figure 1 portent une référence augmentée de 200 par rapport à cet élément de la figure 1.
Les sondes 230, 231 , 232 utilisées dans ce mode de réalisation sont des oscillateurs en anneau, tels que décrits par exemple dans l'article "Product-
Representative 'at Speed' Test Structures for CMOS Characterization" , de B. M.
Ketchen et al., in IBM Journal of Research and Development, volume 50, n°4/5, juillet 2005.
On utilise par exemple en pratique un oscillateur avec des liaisons "fils longs" 230, un oscillateur à base de transistors à haute tension de seuil 231 et un oscillateur à base de transistors à basse tension de seuil 232. On pourrait également utiliser par exemple un oscillateur avec des éléments capacitifs. Un contrôleur d'adaptation 212 mesure régulièrement la fréquence de chacun des oscillateurs 230, 231 , 232, au moyen notamment d'une fréquence de référence F re fi - Lors de la phase de conception, on a simulé le fonctionnement du cœur 210 afin de déterminer les variations de sa fréquence maximum de fonctionnement en fonction notamment de la tension d'alimentation et de la température. On connaît par ailleurs, par exemple grâce au même type de simulation, les variations de la fréquence de chacun des oscillateurs mentionnés ci-dessus en fonction des mêmes paramètres (tension d'alimentation et température notamment) de telle sorte que l'on peut déterminer les fréquences maximum utilisables F max _estιm_hιgh et F ma χ_ e stιm_iow respectivement à la tension haute V hιgh et à la tension basse V| 0W comme une fonction (par exemple selon une modélisation simplifiée, une somme pondérée) des différentes fréquences des oscillateurs 230, 231 , 232. Les simulations de type Monte-Carlo peuvent par exemple être utilisées dans ce cadre.
Les fréquences de fonctionnement F max _estιm_hιgh et F ma χ_ e stιm_iow associées chacune à une des tensions fixes d'alimentation V hιgh et V| 0W sont transmises d'une part à un générateur d'horloge 220, par exemple réalisé par une boucle à verrouillage de phase (ou PLL de l'anglais "Phase Locked Loop") recevant un signal de référence F rβ f2 et d'autre part à un contrôleur de performance 222. Sur la base de ces informations F max _ e stιm_hιgh et F max _ e stιm_iow et d'une information T tar get représentant la latence du bloc, le contrôleur de performance 222 détermine le nombre de cycles d'horloge auquel le cœur 210 doit travailler
à la fréquence haute F max _estιm_hιgh (parmi les N cycles d'horloge nécessaires au traitement des données comme mentionné ci-dessus), en tenant compte également du temps de transition T tra nsιtιon nécessaire au passage d'un mode de fonctionnement à l'autre, de sorte que le temps de traitement n'excède pas le temps cible T ta rget- Cela revient à dire que le contrôleur de performance 222 détermine le nombre K qui vérifie :
T î.sag eî . = * + N ~ K + T . .
F max esîim high F max esîim low
Le nombre K de cycles de fonctionnement à la fréquence Fmax_estιm_hιgh (et donc à la tension V hιgh ) est communiqué par le contrôleur de performance 222 à un séquenceur de saut 224 qui commande le générateur d'horloge 220 au moyen d'un signal hopF de sorte que le générateur 220 travaille à la fréquence F max _estιm_hιgh (reçue du contrôleur d'adaptation 212) pendant les K premiers cycles d'horloge du traitement et à la fréquence Fmax_estιm_iow (également reçue du contrôleur d'adaptation 212) pendant les N-K cycles suivants. On synchronise pour ce faire le fonctionnement du séquenceur de saut 224 et celui du cœur 210, par exemple par échange d'une information de synchronisation (référencée synchro en figure 4).
Comme déjà mentionné, on peut prévoir une phase de transition de durée T tra nsιtιon pour tenir compte de la constante de temps d'asservissement de la boucle du générateur 220 ; le fonctionnement du cœur 210 sera par exemple dans ce cas interrompu pendant cette phase de transition et les N cycles d'horloge seront donc formés de K cycles avant la période de transition et de N- K cycles après la période de transition, comme représenté en figure 5.
Le séquenceur de saut 224 commande également un sélecteur de tension 214 de manière à ce que celui-ci applique la tension haute V hιgh pendant les K premiers cycles d'horloge et la tension basse V| 0W le reste du temps, notamment donc pendant la fin du traitement des données (N-K cycles) et pendant les phases d'attente des prochaines données à traiter (temps de latence T ta rget écoulé mais période de réception T da t a non écoulée), comme bien visible en figure 5 (où A représente l'activité du cœur 210 et où on a négligé la temps de transition T tran sιtιon).
Le sélecteur de tension 214 est par exemple du type décrit dans l'article "VDD-Hopping Accelerator for On-Chip Power Supplies Achieving
Nano-Second Order Transient Time", de K. Onizuka et al., in actes ASSCC novembre 2005, qui permet notamment une interruption du bloc lors de la transition évoquée ci-dessus.
Les modes de réalisation qui précèdent ne sont que des exemples possibles de mise en œuvre de l'invention.
Ainsi par exemple, bien qu'on ait envisagé ci-dessus une contrainte temporelle (exprimée sous forme de fréquence ou de temps de latence à respecter), la contrainte pourrait être de nature différente ; il pourrait s'agir par exemple d'une contrainte de puissance moyenne consommée (la durée de fonctionnement à fréquence haute étant limitée de sorte à respecter cette contrainte).
