Estados de Low-Power dispositivo

Los estados de alimentación del dispositivo D1, D2 y D3 son los estados de bajo consumo de energía del dispositivo. A partir Windows 8, D3 se divide en dos subestados, D3hot y D3cold.

D1 y D2 son estados intermedios de baja potencia. Muchas clases de dispositivos no definen estos estados. Todos los dispositivos deben definir D3hot.

En las secciones siguientes se describen D1, D2 y D3:

Estado de energía del dispositivo D1

El estado de energía del dispositivo D1 es el estado de bajo consumo de energía del dispositivo de mayor potencia. Tiene las características siguientes:

Consumo de energía
El consumo es menor que en el estado D0, pero mayor o igual que en el estado D2. Con frecuencia, D1 es un estado de reloj en el que el dispositivo recibe la potencia suficiente para conservar el contexto de hardware del dispositivo. Normalmente, la especificación de un bus o clase de dispositivo que admite D1 describe este estado con más detalle.

Contexto del dispositivo
En general, el hardware conserva el contexto del dispositivo y el controlador no necesita restaurarlo. La especificación de un bus o clase de dispositivo que admite D1 normalmente proporciona requisitos detallados para conservar este contexto.

Comportamiento del controlador de dispositivo
Los controladores deben guardar y restaurar o reinicializar cualquier contexto perdido por el hardware. Sin embargo, normalmente, los dispositivos pierden poco contexto al entrar en este estado.

Tiempo de restauración
En general, el tiempo necesario para restaurar el dispositivo a D0 desde D1 debe ser menor que la restauración de D2 a D0.

Funcionalidad de reactivación
Un dispositivo en D1 podría ser capaz de solicitar reactivación. Para proporcionar información sobre si este estado puede admitir una señal de reactivación, un controlador de bus usa la estructura DEVICE_CAPABILITIES o, a partir de Windows 8, la interfaz GUID_D3COLD_SUPPORT_INTERFACE controlador.

Normalmente, los dispositivos que usan D1 lo hacen porque la reanudación desde este estado no requiere que el controlador restaure el contexto de hardware completo del dispositivo. Para minimizar la percepción del usuario de retraso, la restauración de un dispositivo a D0 desde D1 debería conllevar el menor retraso posible. Minimizar el retraso en la transición de estado es más importante que reducir el consumo de energía.

Estado de energía del dispositivo D2

D2 es un estado intermedio de bajo consumo de energía del dispositivo con las siguientes características:

Consumo de energía
El consumo es menor o igual que en el estado D1.

Contexto del dispositivo
En general, el hardware pierde la mayoría del contexto del dispositivo. Con frecuencia, este estado conserva la parte del contexto que se usa para señalar eventos de reactivación. La especificación de un bus o clase de dispositivo que admite D2 normalmente proporciona requisitos detallados para conservar este contexto.

Comportamiento del controlador de dispositivo
Los controladores de dispositivos deben guardar y restaurar o reinicializar cualquier contexto perdido por el hardware. Un dispositivo típico pierde la mayoría del contexto cuando entra en D2.

Tiempo de restauración
La restauración del dispositivo de D2 a D0 tarda al menos tanto como restaurar el dispositivo de D1 a D0. Un adaptador de gráficos que tiene un búfer de marco grande es un ejemplo de un dispositivo que tiene una gran cantidad de contexto de hardware para restaurar después de una transición de D2 a D0. Para este tipo de dispositivo, el tiempo de restauración de D2 puede ser mucho mayor que el tiempo de restauración de D1.

Funcionalidad de reactivación
Un dispositivo en D2 podría ser capaz de solicitar reactivación. Para proporcionar información sobre si este estado puede admitir una señal de reactivación, un controlador de bus usa la estructura DEVICE_CAPABILITIES o, a partir de Windows 8, la interfaz GUID_D3COLD_SUPPORT_INTERFACE controlador.

Normalmente, los controladores que admiten D2 lo hacen porque sus dispositivos no pueden admitir la reactivación desde D3. Para estos dispositivos, el consumo de energía en el estado D2 se reduce al nivel más bajo desde el que el dispositivo puede recuperarse en respuesta a una señal de reactivación. A diferencia del estado D1, que se implementa para reducir el retraso que percibe el usuario, el objetivo a la hora de implementar el estado D2 es conservar la energía. Como resultado, el tiempo de restauración de D2 a D0 normalmente supera el de D1 a D0. En el estado D2, por ejemplo, una menor alimentación en el bus podría hacer que un dispositivo apague parte de su funcionalidad, lo que requiere tiempo adicional para reiniciar y restaurar el dispositivo.

Muchas clases de dispositivo no definen este estado.

Estado de energía del dispositivo D3

D3 es el estado de bajo consumo de energía del dispositivo de bajo consumo. Todos los dispositivos deben admitir este estado.

A partir Windows 8, el sistema operativo subdivide D3 en dos subestaciones independientes y distintas, D3hot y D3cold. Las versiones anteriores de Windows definen el estado D3, pero no los subestados D3hot y D3cold. Sin embargo, todas las versiones de la especificación de la interfaz de administración de energía de PCI Bus definen subestados D3hot y D3cold independientes, y las versiones 4 y posteriores de la especificación de Interfaz avanzada de configuración y energía definen subestaciones D3hot y D3cold.

Aunque las versiones de Windows anteriores Windows 8 no definen explícitamente los subestados D3hot y D3cold de D3, estas subestado existen implícitamente en estas versiones anteriores de Windows. Un dispositivo está implícitamente en el subestado D3hot si el dispositivo está explícitamente en el estado D3 y el equipo está en el estado de alimentación del sistema S0. En D3hot, un dispositivo está conectado a una fuente de alimentación (aunque el dispositivo podría estar configurado para dibujar una corriente baja) y se puede detectar la presencia del dispositivo en el bus. Un dispositivo está implícitamente en la subestado D3cold si está explícitamente en el estado D3 y el equipo está en un estado Sx de bajo consumo (un estado distinto de S0). En este subestado D3cold implícito, el dispositivo podría recibir una corriente complicada, pero el dispositivo y el equipo se desactivarán eficazmente hasta que se produzca un evento de reactivación.

A partir Windows 8, un dispositivo puede entrar y salir de la subestado D3cold mientras el equipo permanece en el estado S0. Para admitir este nuevo comportamiento, D3hot y D3cold deben definirse explícitamente como subestados distintos de D3.

D3hot es el único subestado de D3 que el dispositivo puede escribir directamente desde D0. Un dispositivo realiza una transición de D0 a D3hot bajo control de software por parte del controlador del dispositivo. En D3hot, el dispositivo se puede detectar en el bus al que se conecta. El bus debe permanecer en el estado D0 mientras el dispositivo está en la subestado D3hot. Desde D3hot, el dispositivo puede volver a D0 o escribir D3cold. D3cold solo se puede especificar desde D3hot.

D3cold es un subestado de D3 en el que el dispositivo está conectado físicamente al bus, pero no se puede detectar la presencia del dispositivo en el bus (es decir, hasta que el dispositivo se vuelva a conectar). En D3cold, se cumple una o ambas de las siguientes condiciones:

  • El bus al que se conecta el dispositivo está en un estado de bajo consumo.
  • El dispositivo está en un estado de bajo consumo en el que el dispositivo no responde cuando el conductor del bus intenta detectar su presencia en el bus.

La transición de D3hot a D3cold se produce sin interacción del controlador de dispositivo. En su lugar, el controlador de dispositivo indica si está preparado para una transición D3cold antes de iniciar la transición de D0 a D3hot. Posteriormente, puede o no producirse una transición de D3hot a D3cold, en función de si todas las condiciones son correctas para habilitar esta transición.

Dos de estas condiciones son que todos los dispositivos que usan la misma fuente de alimentación están en D3hot y están preparados para una transición D3cold. Cuando el último de estos dispositivos entra en D3hot, el controlador de bus primario o el controlador de filtro ACPI apaga la fuente de alimentación a estos dispositivos, es decir, que los dispositivos entran en D3cold.

Un dispositivo que se encuentra en D3cold solo puede salir de esta subestado si escribe D0. No hay ninguna transición directa de D3cold a D3hot.

Cuando el equipo está en estado S0 y un dispositivo entra en el subestado D3hot, el controlador de dispositivo normalmente no puede determinar de antemano si la siguiente transición del dispositivo será a D3cold o D0. La única excepción es cuando el equipo se prepara para salir del estado S0. En este caso, la siguiente transición es a D3cold.

En las secciones siguientes se describen D3hot y D3cold:

Para obtener más información, vea Compatibilidad con D3cold en un controlador.

Subestado D3hot

D3hot tiene las siguientes características:

Consumo de energía La energía se quita principalmente del dispositivo, pero no del equipo en su conjunto. El equipo, que se encuentra en el estado S0, podría seguir ejecutándose en este estado o podría estar preparándose para pasar de S0 a un estado Sx de bajo consumo.

Contexto del dispositivo
El controlador de dispositivo es el único responsable de restaurar el contexto del dispositivo. El controlador debe conservar y restaurar todo el contexto del dispositivo o debe reinicializar el dispositivo tras la transición al estado D0.

Comportamiento del controlador de dispositivo
El controlador de dispositivo es el único responsable de restaurar el contexto del dispositivo, normalmente a partir de la configuración de trabajo más reciente.

Tiempo de restauración
El tiempo total de restauración es el más alto de cualquiera de los estados de energía del dispositivo, excepto D3cold, pero normalmente no es mucho mayor que el tiempo de restauración de D2.

Funcionalidad de reactivación
Un dispositivo en el subestado D3hot puede o no poder solicitar reactivación. Para proporcionar información sobre si este subestado puede admitir una señal de reactivación, un controlador de bus usa la estructura DEVICE_CAPABILITIES o, a partir de Windows 8, la interfaz GUID_D3COLD_SUPPORT_INTERFACE controlador.

En D3hot, solo está disponible la actual mínima. Los controladores y el hardware deben estar preparados para la ausencia de energía. La especificación de un bus que admite D3hot normalmente proporciona requisitos detallados para las fuentes de alimentación que se pueden usar en este estado. Para devolver el dispositivo al estado de funcionamiento, los controladores del dispositivo deben ser capaces de restaurar y reinicializar el dispositivo sin depender del BIOS para ejecutar ningún código en la ROM de opción que pueda estar disponible para el dispositivo.

El controlador de bus primario no quitará la energía del sistema del bus primario de ningún dispositivo que entre en D3hot a menos que el equipo en su conjunto haga la transición al estado S0.

Todas las clases de dispositivo definen el subestado D3hot.

Subestado D3cold

D3cold tiene las siguientes características:

Consumo de energía
La energía se ha quitado por completo del dispositivo y posiblemente de todo el sistema. Es posible que el dispositivo pueda dibujar el actual de orígenes de banda lateral, en función de su construcción.

Contexto del dispositivo
El controlador de dispositivo es el único responsable de restaurar el contexto del dispositivo. El controlador debe conservar y restaurar el contexto del dispositivo o debe reinicializar el dispositivo tras la transición al estado D0.

Comportamiento del controlador de dispositivo
El controlador de dispositivo es el único responsable de restaurar el contexto del dispositivo, normalmente a partir de la configuración de trabajo más reciente.

Tiempo de restauración
El tiempo total de restauración es el más alto de cualquiera de los estados de energía del dispositivo.

Funcionalidad de reactivación
En el subestado D3cold, es posible que un dispositivo pueda desencadenar una señal de reactivación para reactivar un equipo en modo de espera. Esta funcionalidad se notifica en la estructura DEVICE_CAPABILITIES y, a partir de Windows 8, por la rutina GetIdleWakeInfo en la interfaz GUID_D3COLD_SUPPORT_INTERFACE controlador. Una vez que la señal reactiva el equipo, el controlador del dispositivo inicia la transición del dispositivo de D3cold a D0. Para obtener más información, vea los comentarios siguientes.

A partir Windows 8, un dispositivo en el subestado D3cold puede desencadenar una señal de reactivación en un equipo que se encuentra en el estado de alimentación del sistema S0. Esta funcionalidad se notifica mediante la rutina GetIdleWakeInfo . La DEVICE_CAPABILITIES estructura no contiene información sobre esta funcionalidad. Una vez que llega la señal de reactivación, el controlador del dispositivo inicia la transición del dispositivo de D3cold a D0. En este caso, el equipo está activo cuando llega la señal y solo el dispositivo necesita reactivar.

En muchas plataformas de hardware existentes, un dispositivo que se encuentra en un estado Dx de bajo consumo de energía puede desencadenar una señal de reactivación para reactivar un equipo en modo de inmoción. Sin embargo, es posible que el mismo dispositivo no pueda desencadenar una señal de reactivación si el equipo se ejecuta en el estado S0. Por lo tanto, el controlador de este dispositivo no debe iniciar la transición del dispositivo de D0 a un estado Dx de bajo consumo cuando el equipo está en estado S0. De lo contrario, una vez que el dispositivo deje D0, no estará disponible hasta que el equipo deje el estado S0. Este dispositivo debe dejar el estado D0 solo cuando el equipo se prepara para salir del estado S0.

Si un dispositivo que está en un estado Dx de bajo consumo de energía puede desencadenar una señal de reactivación en un equipo que se ejecuta en el estado S0, no es necesario que el dispositivo permanezca en D0 cuando el equipo está en S0. Si el equipo está en S0 y el dispositivo está en D0 pero está inactivo, el controlador puede activar el dispositivo para desencadenar una señal de reactivación y, a continuación, iniciar la transición del dispositivo de D0 a este estado Dx de bajo consumo.

Algunas clases de dispositivo definen el subestado D3cold.

Para obtener más información, vea Compatibilidad con D3cold en un controlador.