Transition entre les états inactifs et actifs

Pendant la veille, Windows passe régulièrement la plateforme SoC du mode inactif au mode actif pour effectuer des activités qui ajoutent de la valeur, telles que la réception d’une notification par e-mail ou l’exécution d’une tâche de maintenance. En outre, des transitions à la demande vers le mode actif peuvent se produire en réponse aux entrées utilisateur, aux interruptions des appareils réseau et à d’autres événements matériels.

Une fois que le soC est entré dans l’état DRIPS, la plateforme est généralement dans son mode d’alimentation la plus faible. Pendant la veille, la plateforme bascule régulièrement entre ce mode inactif (DRIPS) et le mode actif. Une faible puissance est obtenue en mode veille en passant la majeure partie du temps en mode DRIPS et de très petites quantités de temps en mode actif.

Transition de l’inactif à l’actif

Windows effectue la transition du soC vers le mode actif pour les raisons suivantes :

  • Événement de veille à la demande en raison d’une interruption d’un appareil réseau (Wi-Fi, haut débit mobile ou Ethernet). L’appareil réseau génère une interruption lorsqu’un modèle WoL correspondant est détecté ou lorsque l’état du média ou de la connexion change. L’interruption réveille le SoC à l’aide d’un GPIO hors bande, d’une signalisation de reprise USB inbande ou d’une interruption PCI PME.
  • Événement de sortie de veille à la demande en raison d’une interruption d’un appareil de plateforme à partir d’une source telle que la jauge de carburant de la batterie, le contrôleur de charge de la batterie ou les capteurs thermiques.
  • Événement de sortie de veille à la demande en raison d’une interruption causée par une entrée utilisateur au niveau d’un clavier, d’un pavé tactile, d’un périphérique USB externe, d’un bouton d’alimentation ou d’un commutateur de couvercle.

Dès que le SoC se réveille et que la plateforme quitte l’état DRIPS, les processeurs recommencèrent à exécuter le code. Toutefois, l’écran reste hors tension, sauf si l’interruption est due à l’entrée de l’utilisateur ou à la connexion à une source d’alimentation. Le pilote de l’appareil qui provoque l’interruption est chargé de signaler la présence de l’utilisateur au système d’exploitation si l’interruption correspond à l’entrée de l’utilisateur. Le gestionnaire d’alimentation Windows détermine si l’écran doit être sous tension ; le concepteur de système doit uniquement s’assurer que l’interruption de chaque appareil est connectée et programmée pour sortir le SoC de l’état DRIPS.

Les concepteurs de systèmes doivent travailler en étroite collaboration avec le fournisseur de soC pour connecter les interruptions d’appareil pour la mise en éveil du SoC. Certains appareils SoC nécessitent que les interruptions d’appareil soient connectées à des entrées spéciales « prenant en charge la veille » ou configurées pour la sortie de veille à l’aide du microprogramme système.

Transition d’actif à inactif

Windows fait passer la plateforme SoC du mode actif au mode inactif une fois que toutes les activités logicielles sont arrêtées et que les appareils sur et hors de la puce SoC sont entrés dans des états de faible consommation.

Le SoC effectue des transitions entre les modes inactif et actif pendant la veille en fonction des déclencheurs expliqués dans la section précédente. Chaque fois que le SoC est actif, Windows tente activement de le ramener à l’état inactif (DRIPS) pour réduire la consommation d’énergie.

Le SoC est également actif lorsque le système quitte la veille moderne en réponse à une entrée utilisateur, telle qu’une pression sur le bouton d’alimentation. Le soC est automatiquement remis à l’état inactif (DRIPS) lorsque toutes les conditions suivantes sont remplies :

  • Tous les appareils en dehors du SoC ont été mis hors tension.
  • Tous les périphériques réseau et radio sont entrés dans leur état de faible consommation pour attendre des paquets correspondant à des modèles WoL ou des interruptions de sortie de veille.
  • Tous les contrôleurs hôtes du SoC ont été mis hors tension.
  • Toutes les tâches en arrière-plan de l’application sont terminées.
  • Toute l’activité processeur et GPU s’est arrêtée et tous les processeurs sont inactifs.

Presque tous les problèmes d’alimentation de secours modernes sont liés à la vérification de l’ensemble de ces cinq conditions ont été remplies. Windows inclut un outil de diagnostic intégré appelé SleepStudy pour vous aider à découvrir quelles conditions ne sont pas remplies lorsque le SoC est empêché d’entrer dans l’état inactif (DRIPS).