Clock gating vs power gating : les principales différences
Ce sont deux techniques de conception basse consommation qui réduisent la puissance des circuits inutilisés, mais elles n’arrêtent pas la même chose. Le clock gating coupe l’horloge des registres pour supprimer les commutations de signaux et réduit ainsi la puissance dynamique. L’alimentation reste présente : l’état est conservé et le circuit peut reprendre en un à quelques cycles. Le power gating coupe l’alimentation d’un bloc par un interrupteur et supprime, outre la puissance dynamique, presque toute la puissance statique due aux courants de fuite. En contrepartie, l’état est perdu, ce qui exige un mécanisme de sauvegarde, et la reprise prend du temps.
| Critère | Clock gating | Power gating |
|---|---|---|
| Puissance économisée | Puissance dynamique (commutations du réseau d’horloge, des bascules et de la logique en aval) | Puissance statique (fuites) et puissance dynamique |
| Élément coupé | L’horloge des registres | L’alimentation du bloc |
| Alimentation | Reste présente. Les courants de fuite continuent de circuler | Un interrupteur d’alimentation déconnecte la ligne d’alimentation du bloc |
| Conservation de l’état | Conservé | Perdu. L’état nécessaire est sauvegardé dans des bascules de rétention (registres de rétention) ou en mémoire |
| Temps de reprise | Un à quelques cycles | Long. L’alimentation est rétablie en limitant le courant d’appel, puis l’état est restauré ; généralement de l’ordre de la µs |
| Circuits nécessaires | ICG (cellule de clock gating à latch et porte ET) et logique générant le signal d’activation | Interrupteurs d’alimentation (header ou footer), cellules d’isolation, bascules de rétention et circuit de séquencement des alimentations |
| Granularité | Fine. Utilisable dès quelques registres | Grossière. Par bloc (domaine d’alimentation), comme un cœur de CPU ou un bloc IP |
| Conception et vérification | Les outils de synthèse logique peuvent l’insérer automatiquement à partir des conditions d’activation. La STA effectue les vérifications de clock gating | L’intention d’alimentation est décrite, notamment en UPF, et l’on vérifie jusqu’au comportement hors tension et aux séquences |
| Surcoût | Faible. Surface et retard de l’ICG | Surface et chute de tension des interrupteurs d’alimentation, énergie de sauvegarde et de restauration. Aucun gain pour les pauses courtes |
| Usage principal | Dans presque tous les circuits numériques, pour arrêter les registres des fonctions inactives | Arrêter les blocs inutilisés pendant longtemps : états de veille profonde des CPU, blocs inutilisés des SoC de smartphones |
Les valeurs indiquées sont des ordres de grandeur typiques et varient selon la génération de procédé et le produit.