要件の変更 - 2023.2 日本語

Versal アダプティブ SoC システム ソフトウェア開発者向けガイド (UG1304)

Document ID
UG1304
Release Date
2023-10-18
Version
2023.2 日本語

サブシステムがペリフェラル ノードを使用する場合、ノードの機能に対する要件が変わることがあります。たとえば、使用していないインターフェイスがある場合、そのインターフェイス ポートを低電力ステートに移行させたり、完全に電源をオフにしたりすることがあります。XPm_SetRequirement を使用すると、サブシステムがペリフェラル ノードの機能に対する要件を変更できます。再び要件を変更する可能性がある場合、通常サブシステムはペリフェラル ノードをリリースしません。

次に示す呼び出しの例は、電源を投入してプロセッサ ノードからアクセスできるように node 引数の要件を変更しています。

XPm_SetRequirement(node, PM_CAP_ACCESS, 0, REQUEST_ACK_NO);
重要: ノードの要件を 0 に設定することと、ペリフェラル ノードをリリースすることは同じではありません。ペリフェラル ノードをリリースすると、ほかのサブシステムがそのデバイスを独占的に使用する可能性があります。

複数のサブシステムが 1 つのペリフェラル ノード (通常はメモリ) を共有する場合、PMC はすべてのサブシステムの要件を満たすようにペリフェラル ノードの電力ステートを選択します。

ペリフェラル ノードに対する要件には、機能要件とレイテンシ要件があります。機能要件には、最高機能ステート、いくつかの中間機能ステート、非アクティブ ステート (ただしコンフィギュレーションは保持)、およびオフ ステートがあります。レイテンシ要件は、ペリフェラル ノードがいずれかのステートから最高機能ステートへ切り替わるまでの最大許容時間を指定します。この時間制限を満たすことができない場合、PMC はほかの機能要件にかかわらずペリフェラル ノードを最高機能ステートのままにします。

XPM_SetRequirement の詳細は、 『BSP およびライブラリ資料コレクション』 (UG643) を参照してください。