Compartir a través de


Preparación del hardware para el modo de espera moderno

Cuando se activa el modo de espera moderno, los componentes de hardware deben estar preparados para realizar la transición a una operación de bajo consumo. Una vez preparados los componentes de software y las aplicaciones para la operación de baja potencia, los componentes de hardware, incluidos sus controladores de dispositivos de software, deben estar preparados de forma similar para realizar la operación de bajo consumo.

En el resto de este artículo se explica cómo preparar los dispositivos fuera y dentro del sistema en un chip (SoC), para que funcionen en un modo de bajo consumo después de que la plataforma de hardware entre en espera.

Transición de hardware al modo de bajo consumo

Todos los dispositivos que estén fuera y dentro del SoC deben entrar en un modo de bajo consumo para que la batería dure ampliamente durante el tiempo de suspensión. Después de que una plataforma de hardware entre en suspensión, los dispositivos de esta cambian a modos de bajo consumo en un proceso ordenado que comienza con los dispositivos que están fuera del SoC.

En primer lugar, todos los dispositivos fuera del soC o del procesador principal deben entrar en un modo de bajo consumo. El modo de alimentación puede ser un estado inactivo con control temporal; por ejemplo, se puede colocar un controlador táctil adjunto a I²C en un modo de suspensión. O bien, el modo de alimentación puede ser un estado de 0 vatios controlado mediante energía denominado D3cold. Una cámara web conectada al USB suele pasar al estado D3cold durante el modo de espera moderno. Para obtener más información, consulte Compatibilidad de D3cold en un dispositivos USB.

Cada clase de dispositivo y bus de conexión tiene su propia terminología y requisitos para realizar la transición de un dispositivo al modo de energía más bajo. Sin embargo, es fundamental que un diseñador del sistema planee un modo de funcionamiento de baja potencia para cada dispositivo de la plataforma durante el modo de espera moderno. La duración de la batería del sistema y la capacidad de colocar el SoC en un modo de bajo consumo dependen de la correcta administración de energía de cada dispositivo fuera del propio SoC.

A continuación, los dispositivos de red y radio se colocan en modo de baja potencia para la suspensión. Durante la suspensión, estos dispositivos a menudo siguen teniendo cierta energía que se aplica para mantener la conectividad, y es necesaria para reactivar el SoC si así lo requiere. Normalmente, las comunicaciones y los dispositivos de radio entran en el estado D2/D3 de baja potencia, aunque la entrada en cada estado es específica de la clase de dispositivo y del bus.

Después de que todos los dispositivos fuera del SoC, incluidos los dispositivos de comunicaciones, se hayan apagado, los controladores de host del SoC se desactivarán. Casi todos los soC tienen controladores de host USB, I²C, GPIO, SDIO y UART. Cada uno de estos componentes del SoC debe desactivarse para que el SoC entre en un modo de bajo consumo.

El proceso para preparar el hardware para que entre en un modo de bajo consumo durante la suspensión se puede visualizar como una pirámide al revés, tal como se muestra en el diagrama siguiente. El consumo más bajo se logra cuando todo el chip del SoC está apagado, pero esto solo puede ocurrir después de que cada conjunto de dispositivos que se muestra por encima del chip este en la pirámide se haya apagado.

Pirámide de energía

Apagado de los dispositivos que estén fuera del SoC

Cada dispositivo fuera del chip del soC debe entrar en un modo de bajo consumo para conseguir dos objetivos clave:

  • Reducir el consumo de energía del dispositivo.
  • Conseguir que el propio SoC se apague al permitir que el controlador de host en el SoC, al que está conectado el dispositivo, se apague.

El método para apagar cada dispositivo fuera del SoC varía según la clase de dispositivo y el bus conectado.

Algunos dispositivos fuera del SoC se colocan en un estado de 0 vatios, sin consumo de energía, denominado D3cold. Los dispositivos comunes del estado D3cold incluyen cámaras y sensores. El controlador debe guardar el estado de registro del dispositivo y, a continuación, pasar el dispositivo al estado de alimentación D3. El firmware ACPI quitará la energía alternando una línea GPIO o apagando un raíl de alimentación del IC de administración de energía (PMIC).

Algunos dispositivos fuera del SoC se colocan en un modo de inactividad de bajo consumo en el que se mantiene el estado de registro, o bien el dispositivo puede tener simplemente un control temporal. Por ejemplo, muchos controladores táctiles cuentan con un estado de control temporal que consume menos de un milivatio de potencia. Las ventajas típicas de usar un estado de control temporal son un tiempo de encendido más rápido y un menor costo, al no tener que conectar el dispositivo a un raíl de alimentación conmutable.

Por lo general, cada dispositivo fuera del SoC debe ser capaz de entrar en un modo de baja potencia que consume menos de un milivatio de potencia. Los dispositivos que no pueden lograr este nivel de energía con un estado interno de control temporal deben implementar la alimentación a través de D3cold.

Los dispositivos de red y radio son una excepción notable al objetivo de 1 milivatio. Los dispositivos de red y radio pueden requerir más energía para mantener una conexión a la red o para escuchar dispositivos inalámbricos. Algunos diseñadores del sistema hacen referencia a estas transiciones de estado de energía como tiempo de ejecución D3 (RTD3).

Administración de energía dirigida para dispositivos PCIe

Las tarjetas PCIe fuera del SoC deben habilitar un mecanismo de administración de energía dirigido denominado Device-S4 para asegurarse de que pueden entrar en un modo de bajo consumo. Sin el mecanismo Device-S4, si un usuario conecta un dispositivo a un puerto raíz PCIe con ranuras accesibles para usuarios en un sistema de espera moderno de escritorio, y el controlador del dispositivo no admite el entorno de ejecución D3 (RTD3), el dispositivo PCIe puede impedir que el sistema entre en DRIPS. Para evitar este problema, los OEM deben formar parte de los puertos raíz del dispositivo PCIe en Device-S4. Para que Device-S4 se active en un dispositivo PCIe determinado, se deben cumplir los siguientes requisitos:

  1. El puerto raíz PCIe principal del dispositivo debe especificarse como una restricción para DRIPS.
  2. El puerto raíz PCIe principal debe aplicar el restablecimiento fundamental del dispositivo en todos los elementos secundarios que se encuentran en la parte inferior del puerto raíz en la transición D0->D3 del puerto raíz y restablecer el dispositivo fundamental a esos elementos secundarios en la transición D3->D0. Para obtener más información sobre los restablecimientos fundamentales de PCIe, consulte la sección 6.6.1 de la Especificación base de PCI Express. La aplicación del restablecimiento fundamental puede proporcionarse mediante mecanismos ACPI complementarios. Para obtener más información, consulte esta guía sobre la administración de energía de PCI. Para indicar que la plataforma cumple con este requisito de restablecimiento fundamental, el firmware debe definir el valor _DSD con compatibilidad con el GUID {FDF06FAD-F744-4451-BB64-ECD792215B10}. Si esto no se así, el elemento DrIPS dirigido no se desencadenará en los dispositivos que estén en ese puerto raíz PCIe. Para obtener más información, consulte los datos específicos del dispositivo ACPI (_DSD) para puertos raíz PCIe.
  3. Los recursos de energía deben ser únicos en un puerto raíz PCIe determinado; es decir, no se deben compartir con ningún otro puerto raíz.

Tenga en cuenta que las tarjetas PCIe que requieren módulos de compatibilidad (CSM) no funcionarán en los sistemas modernos en espera. CSM no se admite en la BIOS de los sistemas modernos en espera debido al requisito de arranque seguro UEFI. Para obtener más información, consulte la especificación del programa de compatibilidad de hardware con Windows.

Para obtener más información sobre la administración de energía para clases de dispositivos concretas, se recomienda a los diseñadores del sistema revisar la administración de energía específica del dispositivo para el modo de espera moderno, así como documentación específica del dispositivo en Microsoft Collaborate.

Apagado de dispositivos de red

Apagar las redes y los dispositivos de radio es otra parte clave de la preparación del hardware para la operación de bajo consumo durante la suspensión. Las redes y los dispositivos de radio son diferentes de otros dispositivos fuera del SoC, ya que deben permanecer encendidos con energía aplicada para escuchar eventos interesantes y reactivar el SoC. Por ejemplo, la radio Wi-Fi debe ser capaz de escuchar paquetes que coincidan con patrones WoL y despertar el SoC cuando se detecte un paquete coincidente.

Windows realiza la transición de los dispositivos de red al estado D2/D3 durante la suspensión, si se espera que activen el SoC. Asimismo, la pila de red de Windows configurará las descargas de protocolos y patrones WoL antes de colocar el dispositivo en estado D2/D3 de baja potencia. Todos los dispositivos de red, como el Wi-Fi, la banda ancha móvil (MBB) y las redes Ethernet con cable, deben ser capaces de entrar en el estado D2/D3 durante el modo de suspensión. Si no se requiere un dispositivo de red para reactivar el sistema, Windows pasará el dispositivo al estado D3. El dispositivo de red se puede colocar en el estado D3 si el usuario ha habilitado el modo avión o si ha deshabilitado el dispositivo de red específico.

Cada dispositivo tiene un método físico diferente para reactivar el SoC desde su modo de energía más bajo. Se espera que los dispositivos de red en SDIO o UART señalen una línea GPIO para reactivar el SoC. Igualmente, se espera que los dispositivos de red conectados a través de USB o HSIC usen la señalización de reanudación USB en banda para reactivar el SoC. También se espera que los dispositivos de red en buses PCI o PCIe utilicen señalización PME en banda para activar el SoC.

Además, se espera que un dispositivo de radio, como un dispositivo Bluetooth o comunicaciones de campo cercano (NFC), pase al estado D2 si el usuario ha activado la radio para este dispositivo. En el estado D2, una radio Bluetooth escucha eventos de entrada de los mouse y teclados emparejados. Si se detecta un evento de entrada, la radio Bluetooth alterna una línea GPIO conectada al SoC, lo que hace que el SoC se active desde el modo de bajo consumo.

Cada dispositivo de radio o red tiene su propia implementación de apagado para el modo de espera moderno. Se recomienda a los diseñadores del sistema leer los documentos específicos de la clase del dispositivo en el sitio web de Microsoft Collaborate.

Apagado de los controladores de host en SoC

Después de que todos los dispositivos fuera del SoC, incluidos los dispositivos de red y radio, se hayan apagado, los controladores de host a los que están conectados deben apagarse también. Entre los controladores de host comunes se incluyen USB, PCI, SDIO, GPIO e I²C.

El controlador de dispositivo de cada controlador de host puede desconectar el hardware solo después de que cada dispositivo conectado al controlador de host se haya apagado. Un ejemplo común es el controlador de host USB. El controlador de host USB solo puede apagarse después de que todos los dispositivos USB conectados a él hayan entrado en un estado de suspensión selectivo. Si un controlador de host USB tiene un mouse USB y un teclado conectados, el controlador de host solo puede apagarse después de que el mouse y el teclado se hayan apagado. Si el mouse o el teclado permanece encendido, el controlador de host USB también permanecerá encendido.

Todos los controladores de host del SoC deben apagarse para que el propio SoC también se apague. Por este motivo es fundamental que cada dispositivo realice su propia administración de energía. El propio SoC solo puede apagarse cuando cada controlador de host se haya apagado. Los controladores de host solo pueden apagarse después de que todos los dispositivos conectados a ellos se hayan apagado.

Apagado de CPU y GPU

En términos de administración de energía, las CPU y GPU en el chip del SoC son diferentes de otros dispositivos. Las CPU y GPU se desactivan como parte del apagado del propio SoC y pueden desactivarse siempre que no tengan asignada ninguna actividad de software.

La mayoría de las actividades de software en el sistema se detendrán mediante las fases de preparación detalladas en la sección "Preparación del software para el modo de espera moderno". Las aplicaciones de Microsoft Store se pausarán como parte de la fase PLM. Asimismo, las aplicaciones de escritorio se pausarán como parte de la finalización de la fase DAM. Las únicas actividades de CPU que permanecen después de que la plataforma entre en la fase de resistencia son las operaciones inactivas de Windows. Del mismo modo, hay poca actividad de GPU porque todas las aplicaciones se han pausado y la pantalla está desactivada.

Windows administra continuamente el estado de energía de las CPU en el sistema, incluso cuando la pantalla está activada y el usuario está trabajando con el equipo. La misma administración del estado de energía de la CPU coloca a las CPU en un modo de bajo consumo durante la suspensión. Cuando todas las CPU están en modo de bajo consumo y todos los controladores host del SoC se han apagado, el propio SoC se puede apagar.

Apagado del SoC

Cuando todos los controladores de host individuales, las CPU y las GPU del SoC se han apagado, Windows determinará si es seguro apagar todo el SoC. El proveedor del SoC proporciona un complemento de motor de alimentación (PEP) para indicar a Windows en qué momento todo el estado del SoC se ha guardado para que este pueda entrar en modo de bajo consumo. En el caso de los SoC basados en Intel, el PEP se proporciona en la bandeja de entrada.

Cada proveedor de SoC tiene una implementación diferente de un estado de bajo consumo de soC. Normalmente, estos estados tienen controles temporales o de energía, en los que el contenido de la memoria se conserva en la actualización automática y el sistema puede activarse mediante un temporizador programable y un pequeño número de anclajes de GPIO que consumen muy poca potencia. Windows hace referencia al estado de energía de soC más bajo como estado de plataforma inactiva en tiempo de ejecución más profundo (DRIPS).

El estado DRIPS siempre tiene las siguientes características:

  • DRIPS es el estado de consumo de energía más bajo para el SoC en el que se conserva la memoria en un modo de actualización automática.
  • DRIPS permite al SoC reactivar eventos desde dispositivos de red, radio y entrada.
  • No se permite que ningún código de CPU se ejecute durante el estado DRIPS.
  • Cuando el SoC está en estado DRIPS, la plataforma consume la menor cantidad de energía posible durante el modo de suspensión (con la excepción de variaciones en el consumo de energía causado por redes y dispositivos de radio).