モダン スタンバイのストレスと長期間のテスト
システム設計者は、潜在的な信頼性の問題を特定して解決するために、モダン スタンバイ システムでストレス テストと長期間のテストを実行する必要があります。 モダン スタンバイを使用すると、システムが低電力のスクリーンオフ状態の場合でも、実行を継続できます。 この状態は、従来の ACPI スリープ (S3) と休止状態 (S4) の状態とは異なります。この状態では、システムハードウェアとソフトウェアの大半が停止し、その後、再開時に再起動されるまで非アクティブのままになります。
モダン スタンバイを使用すると、システムは長時間の総時間を確保できるため、S3 と S4 のみをサポートするシステムで検出されないハードウェアとソフトウェアの信頼性の問題が発生する可能性があります。
開始と終了
すべてのモダン スタンバイ システムを検証して、少なくとも 1000 サイクルにおいて、障害のない状態で最新のスタンバイを終了する必要があります。 モダン スタンバイを開始して終了するには、ユーザーがシステムでの低電力操作とのやり取りを行い、信頼性が非常に高い必要があります。
モダン スタンバイを正常に入力して終了すると、次のようなハードウェア、ファームウェア、およびデバイス ドライバーのコンポーネントが検証されます。
- 電源管理 IC (PMIC) を含む、電源ボタン操作を管理するプラットフォーム ハードウェア。
- ディスプレイ パネルの管理および初期化のハードウェア。
- Wi-Fi とネットワーク デバイスのファームウェアとドライバー。
- グラフィックス デバイス ドライバー。
PwrTest ツール を使用して、モダン スタンバイの開始と終了のストレステストを自動化できます。 PwrTest は、Windows Driver Kit (WDK) の一部としてターゲットシステムにインストールする必要があります。これには、モダン スタンバイシステムのシステム電源ボタンを自動化するための追加ソフトウェアが含まれています。
テスト シナリオ | 予想される結果 | 診断に関する注意事項 |
---|---|---|
システムは、少なくとも 1000 サイクルにおいて、モダン スタンバイを確実に入力して終了できます。 |
PwrTest ツールと、/cs コマンドラインオプションを使用して、1000 サイクルのモダン スタンバイを通じてシステムを自動的にリサイクルします。 予想される結果として、システムはすべての 1000 サイクルを完了します。 |
ストレステストを 1000 サイクルに段階的に上げることをお勧めします。 まず、100サイクルをテストします。 エラーが検出された場合は、システムをカーネルデバッガーと SoC ハードウェア デバッガーに接続し、100 サイクルテストを繰り返して、問題の根本原因をキャプチャして特定します。 100 サイクルテストが正常に完了したら、サイクル数を 500 サイクルに拡張し、次に 1000 サイクルまで拡張します。 |
SoC 低電力状態の移行
アイドル状態とアクティブな状態の間の SoC 遷移の管理を担当するファームウェアとドライバーは、モダン スタンバイで長時間にわたって動作するというストレスに耐えられるように、高い信頼性を備えている必要があります。 SoC 低電力状態の移行は、長期間のモダン スタンバイテストによって実現される必要があります。 このテストにより、週末など、モダン スタンバイ期間中にシステムが確実に動作し続けるようにすることができます。 このテストは、AC 電源に接続しているときに実行する必要があります。
測定シナリオ | 予想される結果 | 電力に関する注意事項 |
---|---|---|
システムは、100 時間連続してモダン スタンバイ状態を維持し、終了時にも機能します。 システムは、100 時間 Wi-Fi 接続を維持し、Wi-Fi 接続は終了時まで機能します。 |
システムをモダン スタンバイ状態にし、100 時間後に電源ボタンでスリープ解除します。 予想される結果として、システムは瞬時に電源がオンになり、Wi-Fi ネットワークの追加構成や選択を行わずに Wi-Fi 接続が動作します。 |
長期間のテストを 100 時間まで段階的に増やすことをお勧めします。 まず、24 時間テストします。 エラーが検出された場合は、システムをカーネル デバッガーと SoC ハードウェア デバッガーに接続し、24 時間 テストを繰り返して、問題の根本原因をキャプチャして特定します。 24時間のテストが正常に完了したら、期間を 100 時間に延長します。 |
Windows HLK モダン スタンバイ ストレス テスト
Windows Hardware Lab Kit (HLK) には、デバイスドライバーがデバイス操作に対して実行されるときに、自動でモダン スタンバイ遷移を実行するドライバー検証ツールの同時実行ストレスという、コネクト スタンバイ ストレスという名前の最新のスタンバイ ストレス テストが含まれています。 このテストは、システムがモダン スタンバイ電源状態との間で遷移するときに、デバイスとそのドライバーが引き続き機能することを検証するように設計されています。
このテストは、システムがモダン スタンバイ状態になった後も期待どおりに動作し続けることを検証するうえで重要な部分です。 このテストは Windows HLK の一部として含まれており、システム認定を行うために必要です。
テスト操作
このテストでは、Windows Device Testing Framework (wdtf) SimpleIO インターフェイスを使用して、システムで列挙されたデバイスを実行します。 これらのデバイスには、センサー、カメラ、オーディオ、グラフィックス、Wi-Fi、ストレージ、Bluetooth デバイスが含まれます。 このテストでは、システムをモダン スタンバイに 1 分間配置してから、システムを最新のスタンバイから移行し、デバイスを 30 秒間練習します。 このサイクルは、150 回繰り返されます。
テストの実行中に、ドライバーの検証ツールが有効になり、ドライバーのバグとメモリ リークを識別できるようになります。
このテストは、次のシステムまたはデバイスドライバーの問題を特定するのに役立ちます。
- モダン スタンバイ セッション後のデバイス操作中に、システムが応答しなくなったりクラッシュしたりします。
- デバイスの動作後に、システムが低電力状態 (最も深いランタイムアイドルプラットフォーム状態または DRIPS) に入ることができません。
- ドライバーの検証ツールによって識別されるドライバーの問題 (システムの破損、ドライバーのエラー、メモリ リークなど)。
- モダン スタンバイから再開した後のドライバーの問題 (無応答、クラッシュ、または問題コードを含む)。
テスト エラーの解決
テストでは複数のデバイスを練習するため、さまざまな種類のテスト エラーが発生する可能性があります。 テスト エラーの種類を特定することは、システムまたはドライバーの問題の根本原因を見つけるための最初の手順です。
このテストは、通常、次の 3 つの障害モードのいずれかで失敗します。
- テストが失敗し、検出されたエラーに関するデータを含む Windows HLK ログにエラーが記録されます。
- テストは失敗しますが、システムはエラーの結果として Windows HLK サーバーに報告しません。ただし、システムは応答性が高く、ローカルの相互作用と連携します。
- テストが完了せず、テスト対象のシステムがクラッシュしたか、または応答しなくなります (黒い画面が表示されます)。
Windows HLK ログに記録されるテスト エラーのデバッグ
テストの失敗が Windows HLK ログに記録されると、次の2つの一般的なエラーの種類があります。
- テスト中にシステムが低電力状態 (DRIPS) に入ることができませんでした。
- ドライバーとの通信ができなくなり、タイムアウトが発生したことが、テストによって検出されました。
テストログの一部として含まれている SleepStudy レポートを使用して、システムが低電力状態になるのを防ぐためのコンポーネント (DRIPS) を識別できます。 次は一般的な原因のいくつかです。
- NDIS 6.3 およびモダン スタンバイ機能をサポートしていない有線イーサネットアダプターの使用など、セットアップと構成の問題をテストします。
- ワイヤード (有線) LAN ネットワークでの DHCP サーバーの問題。
- モダン スタンバイ中に、独自の低電力モードに正しくアイドル状態になっていないデバイスまたはドライバー。
テストログには、時間内に I/O 要求に応答しなかったデバイスを示すエラーメッセージが含まれている場合もあります。 この状態は、システムがモダン スタンバイから再開したときにユーザーまたはアプリが機能しなくなる可能性があるため、テストの失敗と見なされます。
テスト ログには、I/O 操作を実行する最後のデバイスが示されます。これらのデバイスがテスト エラーの原因です。 次の例のテストログ出力は、ACPI\XXXX\2 DAFA3FF &DAFA3FF&の 1 台のデバイスがタイムアウトしたことを示しています。
メッセージ |
2013 年 7 月 16 日 午前 12:50:24.333 |
WDTF_SIMPLEIO_STRESS_PROC : - WaitAsyncCompletion(Some Location Sensor Device ACPI\XXXX\2&DAFA3FF&1) |
メッセージ |
2013 年 7 月 16 日 午前 12:59:24.333 |
WDTF_SIMPLEIO_STRESS_PROC : - WaitAsyncCompletion(Some Other Device XXX_XXX\UART_XXX\3&2F829BAD&0&F00D) |
エラーの一般的な原因は、GPS の受信が不適切であるため、GPS デバイスの I/O 要求への応答に非常に長い時間がかかることです。 GPS デバイスを使用するシステムでこのテストを実行する方法の詳細については、「GPS が装備されているシステムのメモ」を参照してください。
ログのないテストエラーのデバッグ (および応答性の高いシステム)
テスト対象のシステムがまだ実行されていても、テストが実行中であるという兆候がない場合、原因としては、システムで致命的なエラーが発生したか再起動したことが考えられます。 これらの問題をデバッグするには、システム ディレクトリでダンプ ファイルを確認し、システムをリセットする可能性のあるハードウェア ウォッチドッグを無効にします。
システムが応答していない場合のテストエラーのデバッグ (黒い画面)
システムが黒い画面で固まっている場合、問題を診断するには、カーネルデバッガーがシステムに接続されている必要があります。
カーネル デバッガーが既に接続されていて、システムがカーネル デバッガーに応答していない場合は、システムがロックアップする原因を特定するためにハードウェア デバッガーが必要です。 デバッグの詳細については、コア シリコン / SoC プロバイダーに問い合わせてください。
その他の HLK のドキュメント
GPS を装備したシステムに関する注意事項
システム内テストに GPS デバイスまたはセンサーデバイスがある場合は、テストを実行する前に次の Windows 設定を有効にする必要があります。
- Panel\Hardware と sound\ location 設定 Windows location プラットフォームを有効にする
- PC Settings\Privacy\Location: Windows とアプリで自分の場所を使用する
Windows Driver Kit (WDK) のセンサー診断ツールを使用して、テストサイトでの GPS 信号の受信を確認できます。 詳細については、「センサー診断ツールによるセンサーの機能のテスト」を参照してください。