プラットフォーム管理ソフトウェア アーキテクチャ - 2023.2 日本語

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

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

Versal デバイスのアーキテクチャには、すべてのシステム リソースのパワーアップ、パワーダウン、および監視を制御する専用のプラットフォーム管理コントローラー (PMC) ユニットがあります。複数のプロセッサを統合したヘテロジニアス システムのプラットフォーム管理に最適な機能を備えたシステムには、大きなメリットがあります。その一方で、システムの動作は非常に複雑になります。プラットフォーム管理フレームワークはこの複雑さを抽象化し、ユーザーが消費電力バジェットの目標を満たし、リソースを効率よく管理する上で必要な API のみを提供します。

PLM に渡される CDO に基づいて、PLM はリソースのトポロジを構築してプラットフォーム管理フレームワークに追加します。プラットフォーム管理フレームワークは電源ドメイン、電源アイランド、クロック、リセット、ピンなどのリソース、およびこれらリソースと CPU コア、メモリ、およびペリフェラル デバイスとの関係を管理します。

図 1. プラットフォーム管理フレームワーク

Versal デバイスのプラットフォーム管理フレームワークは、EEMI の実装をベースにしています (詳細は、 『Embedded Energy Management Interface: EEMI API リファレンス ガイド』 (UG1200) 参照)。プロセッシング ユニットが PLM にメッセージを送信するための API や、PLM がプロセッシング ユニットにメッセージを送信するためのコールバック関数があります。

EEMI が提供する共通の API を使用して、すべてのソフトウェア コンポーネントがコアやペリフェラルを管理できます。電力管理に関しては、複雑なプロセッサ クラスターや単一コアをサスペンドするなどのハイレベルな管理目標を EEMI で指定できます。この基本アーキテクチャでは、最適な省電力アプローチをユーザーが簡単に実装できるようになります。

Linux デバイス ツリーは、各デバイスに共通する記述フォーマットと電力特性を提供します。また、Linux は CPU およびクロック周波数スケーリングや CPU ホットプラグなどの基本的な電力管理機能も提供します。カーネルは、実装された API を利用して電力管理を実行します。

24 以上の API にアクセス可能な XilPM クライアント ライブラリを使用して、独自のプラットフォーム管理アプリケーションを作成することも可能です。API は、次のような機能に分類されます。

  • メモリやペリフェラルなどのセカンダリ デバイスの電力管理
  • クロック管理
  • リセット管理
  • ピン管理
  • その他

次の図に、API ベースのプラットフォーム管理ソフトウェア アーキテクチャを示します。

図 2. API ベースのプラットフォーム管理ソフトウェア アーキテクチャ