La technologie portable devient de plus en plus populaire, la demande de microprocesseurs écoénergétiques n'a jamais été plus forte. Des moniteurs de fitness et de veilles intelligentes aux moniteurs médicaux avancés et aux lunettes de réalité augmentées, ces appareils comptent sur de petits processeurs alimentés par batterie qui doivent équilibrer les performances élevées avec un tirage minimal de puissance. Les microprocesseurs de série d'instructions complexes (ICSC), traditionnellement connus pour leurs riches ensembles d'instructions et leur débit élevé dans les environnements de bureau et de serveur.

Cet article explore les principes fondamentaux de l'architecture du CDCI, les contraintes de puissance spécifiques des appareils portables et les techniques de conception avancées de faible puissance qui permettent aux processeurs modernes du CDCI de prospérer dans des environnements ultra-faible puissance.

Comprendre les microprocesseurs du CDCI

Les microprocesseurs CDCI (Complex Instruction Set Computer) sont conçus pour exécuter des instructions complexes en utilisant moins de lignes de code d'assemblage que leurs homologues RISC. Chaque instruction peut effectuer des tâches de bas niveau telles que les opérations de mémoire, les calculs arithmétiques et le flux de commande en une seule commande.

Historiquement, les architectures du CDCI ont dominé les marchés des ordinateurs personnels et des serveurs. La famille x86, développée par Intel et AMD, est l'exemple le plus important, offrant des décennies de compatibilité en arrière et un vaste écosystème de logiciels. Cependant, l'efficacité énergétique de ces conceptions a été une préoccupation persistante.

Les principales caractéristiques des transformateurs du CDCI qui influent sur la consommation d'énergie sont les suivantes :

  • Les instructions complexes sont divisées en séquences de micro-opérations, qui nécessitent des cycles logiques et d'horloge supplémentaires.
  • Longues d'instructions variables:[ Les décorateurs doivent manipuler des instructions de différentes tailles, de plus en plus complexes et d'énergie par instruction décodée.
  • Exécution à cycle multiple:[ De nombreuses instructions prennent plusieurs cycles d'horloge pour terminer, conduisant à une puissance dynamique plus élevée.
  • Grands fichiers de registre et caches :[ Pour réduire la latence d'accès à la mémoire, les processeurs du CDCI intègrent souvent des caches importants, qui consomment une puissance statique et dynamique.

Malgré ces défis, les progrès récents dans la conception de faible puissance ont fait du CISC une option viable pour les applications portables. Par exemple, les processeurs Quark et Atom d'Intel, basés sur l'architecture x86 du CISC, ont été déployés dans des systèmes et des usures intégrés à faible puissance.

Principaux facteurs de consommation d'énergie dans les conceptions du CDCI

Pour concevoir efficacement des processeurs CSI écoénergétiques pour les articles usables, les ingénieurs doivent comprendre les sources principales de dissipation de puissance.

Puissance dynamique

La puissance dynamique est consommée lorsque les transistors se déplacent entre les états logiques. Elle est directement proportionnelle à la tension de fonctionnement au carré, à la fréquence de l'horloge et au facteur d'activité (la fraction des barrières qui se déplacent par cycle d'horloge). Dans les processeurs du CDCI, la complexité du chemin de données et de la logique de contrôle conduit à des facteurs d'activité élevée, en particulier lors du décodage de l'instruction et de l'exécution des instructions microcodées.

Puissance statique (défaut)

La puissance statique, ou courant de fuite, coule même lorsque les transistors ne changent pas. Elle devient dominante aux noeuds de processus plus petits (p. ex. 28nm et moins). Dans les processeurs portables, qui doivent rester au ralenti pendant de longues périodes pour sauver la batterie, le courant de fuite peut drainer la batterie même si le dispositif n'est pas utilisé.

Puissance à court-circuit

La puissance en court-circuit se produit brièvement lors du changement de circuit lorsque les réseaux de traction et de traction se conduisent simultanément. Bien qu'il s'agisse habituellement d'une petite fraction de la puissance totale, elle peut devenir importante dans les circuits mal conçus.

Dans le contexte des appareils portables, le processeur doit également gérer la puissance des périphériques tels que les capteurs, les radios sans fil et les écrans. Une approche globale du système sur puce (SoC) où le coeur du CDCI est intégré avec des accélérateurs de faible puissance et des circuits de sommeil dédiés est souvent adoptée.

Défis liés aux applications portables

Les appareils portables imposent des exigences uniques sur la conception de microprocesseurs. L'article original énumérait plusieurs défis; nous allons développer chacun avec un contexte plus profond et des implications pratiques.

Capacité limitée de la batterie

Les batteries portables sont limitées par leur taille et leur poids. Une montre intelligente abrite généralement une batterie de 200 à 500 mAh, alors qu'un traqueur de fitness peut avoir 50 à 200 mAh. Pour un processeur du CDCI fonctionnant à des fréquences même modérées (p. ex. 200 MHz), la consommation de puissance active doit être maintenue bien en dessous de 100 mW pour obtenir une journée complète de fonctionnement.

Besoin de longues heures de fonctionnement

Les utilisateurs s'attendent à ce que les articles puissent durer au moins une journée, souvent plus, en une seule charge. L'opération continue comprend des tâches de fond comme le comptage par étapes, la surveillance de la fréquence cardiaque et la communication Bluetooth à basse énergie (BLE). Le coeur du CDCI doit pouvoir se réveiller des états de sommeil profonds, effectuer des calculs périodiques et se remettre rapidement au sommeil.

Contraintes de miniaturisation

La taille physique du SoC est limitée. Un jeu plus petit réduit les coûts et permet des dispositifs plus compacts, mais il réduit également la capacité d'intégrer de grands caches ou de multiples cœurs. Les conceptions du CDCI, qui reposent souvent sur 32–64 KB de cache L1 et quelques centaines de KB de cache L2, doivent être mises en œuvre à une petite empreinte.

Maintien du rendement du traitement pour l'analyse des données en temps réel

Les appareils portables doivent traiter les données des capteurs en temps réel pour des applications telles que la détection de chute, l'analyse ECG ou la reconnaissance vocale. Alors qu'un simple microcontrôleur (par exemple ARM Cortex-M) peut suffire pour des tâches de base, des algorithmes plus complexes bénéficient du parallélisme de niveau d'instruction supérieur et d'un ensemble d'instructions plus riche d'un processeur du CDCI. Le défi est d'exécuter ces algorithmes sans dépasser le budget de puissance.

Techniques de conception à faible puissance pour processeurs du CDCI

Les ingénieurs ont conçu une batterie de techniques pour réduire la consommation d'énergie dans les microprocesseurs du CDCI tout en préservant les performances, au besoin.

Patinage d'horloge et de puissance

Par exemple, si l'unité de point flottant (FPU) n'est pas nécessaire, son horloge peut être fermée, éliminant la consommation dynamique de puissance dans les registres et la logique du FPU. Dans les processeurs du CISC, le système de gage d'horloge est appliqué au niveau de la micro-exploitation – lorsqu'une instruction complexe est décodée, seules les unités d'exécution pertinentes (ALU, charge/magasin, etc.) sont horlogées. Le système de gage d'énergie va plus loin en interrompant l'alimentation en blocs de ralenti, réduisant à la fois la puissance dynamique et statique. Le défi avec le système de gage est l'énergie et le temps nécessaires pour réveiller un bloc (latence de réveil).

Voltage dynamique et calibrage de fréquence (DVFS)

Pendant les tâches de lumière comme la lecture d'une notification, la tension et la fréquence peuvent être réduites au minimum (p. ex. 0,6 V à 50 MHz), ce qui réduit considérablement la puissance dynamique (depuis les échelles de puissance avec V2f). Lorsqu'une explosion de calcul est nécessaire, la tension peut être montée (p. ex. 1,0 V à 400 MHz). Les processeurs du CDCI bénéficient de DVFS parce que leur nature microcodée peut tolérer les changements de fréquence gracieusement. Cependant, le régulateur de tension et l'unité de gestion de puissance sur puce (PMU) doivent être soigneusement conçus pour minimiser les frais de transition.

Optimisation de l'ensemble d'instructions

Bien que la philosophie du CDCI soit de fournir des instructions complexes, bon nombre de ces instructions sont rarement utilisées dans les charges de travail usure. Les concepteurs peuvent créer un sous-ensemble de l'ensemble d'instructions optimisé pour les algorithmes de traitement des capteurs typiques.

  • Fusion Macro-op:[ Combinant plusieurs instructions simples en une seule micro-op pour améliorer l'efficacité du pipeline et réduire l'énergie de récupération et de décodage.
  • Les accélérateurs de logiciels pour les opérations courantes :[ Par exemple, une instruction personnalisée pour multi-accumulation (MAC) utilisée pour le filtrage peut réduire le nombre d'instructions exécutées.
  • Raccordement de microcodes:[ Remplacer les séquences de microcodes à faible puissance par des séquences plus efficaces pour des tâches spécifiques.

En adaptant l'ensemble d'instructions ou l'implémentation aux applications portables, les concepteurs peuvent réaliser des économies d'énergie de 20 à 40 % sans sacrifier les performances.

Découplage des processus et des tensions

Le passage à un nœud de processus semi-conducteur plus avancé (p. ex. de 28nm à 7nm) réduit la puissance dynamique et statique en raison de la faible capacité et de la tension d'alimentation réduite. Cependant, les nouveaux nœuds sont coûteux et peuvent avoir des fuites plus élevées à des tensions inférieures. Le calcul à quasi seuil (NTC) exploite le processeur à une tension d'alimentation proche de la tension de seuil du transistor (p. ex. 0,3-0,5V). À ces tensions, la puissance dynamique est considérablement plus faible, mais les performances diminuent considérablement et les variations de processus deviennent problématiques.

Architectures multi-cores hétérogéniques

Une stratégie populaire dans le calcul mobile et portable consiste à combiner un noyau de CVIC haute performance avec un ou plusieurs cœurs ultra-faible puissance.L'architecture de LITTLE (utilisée par ARM, mais également applicable aux conceptions du CVIC) permet de réduire le gros cœur de CVIC quand il n'est pas nécessaire et exécute des tâches de fond sur le petit cœur. Par exemple, un noyau de RISC de faible puissance pour le sondage des capteurs et la manipulation de la pile Bluetooth pourrait être utilisé, tandis que le cœur de CVIC est activé uniquement pour des tâches à forte intensité de calcul comme la reconnaissance de la parole.

Hiérarchie de la mémoire Optimisations

Les processeurs CDCI ont généralement plusieurs niveaux de cache. Pour les appareils portables, un petit cache L1 (16-32 KB) qui fonctionne à basse tension peut être utilisé. De plus, l'utilisation de la mémoire de code de correction d'erreurs (ECC) peut réduire le besoin de bandes de protection de tension, permettant ainsi un fonctionnement à basse tension. La taille de la ligne Cache peut être réduite pour minimiser l'énergie par accès. De plus, une mémoire de scratch (mémorisation couplée étroitement) peut être utilisée pour les structures de données critiques, offrant un temps d'accès déterministe et une énergie inférieure à un cache pleinement associatif.

Études de cas et exemples

Plusieurs processeurs du monde réel démontrent comment les principes du CDCI sont adaptés aux applications portables et IoT de faible puissance.

Intel Quark SoC

La gamme Quark d'Intel, en particulier la série D2000 et SE, est un processeur CDCI de 32 bits pour les systèmes embarqués à faible puissance. Il comprend un pipeline en ordre, un seul noyau, avec une grille d'horloge et un petit cache. Le Quark D2000, par exemple, consomme aussi peu que 1,5mW en sommeil profond et environ 30mW en mode actif (à 32 MHz). Il prend en charge un sous-ensemble de l'instruction x86, permettant aux développeurs d'utiliser des outils standard x86. Intel optimise la microarchitecture en réduisant l'exécution spéculative et en simplifiant la prévision des branches, qui sont des consommateurs importants de puissance dans les puces x86 de bureau.

Série G intégrée AMD

Les processeurs G-Series d'AMD intègrent des cœurs de CDCI x86 avec des graphiques Radeon sur une seule matrice, ciblant des périphériques embarqués à faible puissance. Le GX-210JA, par exemple, fonctionne au TDP 6W. Bien que ces processeurs ne soient pas aussi bas que Quark, ils sont utilisés dans des lunettes intelligentes et des casques de réalité augmentée où les performances graphiques sont nécessaires. Ils utilisent les technologies PowerTune et Enduro d'AMD pour ajuster dynamiquement la fréquence et la tension.

Émulation du CDCI fondée sur le RISC-V

Il est intéressant de noter que certains chercheurs explorent des moyens d'imiter les ensembles d'instructions du CDCI sur les noyaux RISC-V pour obtenir une meilleure efficacité énergétique. En mettant en œuvre une couche de traducteur qui convertit les instructions x86 en micro-opérations RISC-V, ils peuvent tirer parti de l'efficacité énergétique des noyaux RISC-V modernes tout en maintenant la compatibilité logicielle.

Technologies émergentes et orientations futures

L'avenir des transformateurs de CDCI écoénergétiques pour les articles à porter est façonné par les progrès continus dans les matériaux, la conception des circuits et l'architecture.

Opération de tension quasi seuil (VNT)

La recherche sur les architectures adaptatives de biais corporel et résilientes aux erreurs contribue à atténuer ces problèmes. Pour les appareils portables, les cœurs du CDCI de NTV pourraient fonctionner à une fréquence inférieure à 100 MHz avec des budgets de puissance inférieurs à quelques milliwatts tout en effectuant un travail utile.

Intégration de la mémoire non volatile

Les mémoires émergentes non volatiles comme RAM (Magnetosistive RAM) et RAM (Résistive RAM) peuvent être utilisées comme caches rapides et de faible puissance ou scratchpads. Ils conservent les données lorsque la puissance est supprimée, éliminant la nécessité de rafraîchir la mémoire ou de recharger à partir du flash. Dans un processeur CISS, un cache L2 basé sur RAM pourrait réduire considérablement la puissance de fuite.

Régulation adaptative et contrôle de la tension

Les futurs processeurs intégreront des capteurs sur puce (température, trempage de tension, processus) à la fréquence d'horloge fine et à la tension d'alimentation en temps réel. Ce contrôle adaptatif permet à la conception de fonctionner plus près du point d'énergie minimum dans une large gamme de conditions.

Accélération spécifique au domaine

Au lieu de se fier uniquement au cœur du CDCI pour tous les calculs, les accélérateurs portables intégreront des accélérateurs spécialisés pour des tâches telles que l'inférence du réseau neuronal, la fusion des capteurs et les opérations cryptographiques. Ces accélérateurs peuvent être mis en œuvre comme moteurs microcodés personnalisés ou comme coprocesseurs étroitement couplés. Le cœur du CDCI agit comme superviseur, déchargeant le calcul sur ces blocs de faible puissance.

Conclusion

En combinant les techniques traditionnelles de gestion de l'énergie – gateing d'horloge, gateting d'alimentation, DVFS – avec des innovations architecturales telles que des conceptions hétérogènes multi-cœurs, l'optimisation des ensembles d'instructions et le fonctionnement quasi-seuil, les ingénieurs peuvent créer des processeurs du CISC qui offrent les performances nécessaires pour des expériences de portables riches tout en respectant des budgets énergétiques stricts. À mesure que la technologie des procédés continue d'évoluer et que de nouveaux types de mémoire mûrissent, l'écart entre la consommation d'énergie du CISC et celle des cœurs plus simples du CISC se rétrécira.

Le succès continu de la technologie portable dépendra de la capacité à emballer des calculs de plus en plus sophistiqués dans des enveloppes de puissance toujours plus petites. Les microprocesseurs du CDCI, avec leur longue histoire d'innovation et un large soutien logiciel, sont prêts à jouer un rôle vital dans ce futur, tant que les concepteurs restent engagés dans des principes d'efficacité énergétique.