Hero Slide Images

AMD のエンベデッド ソフトウェア エコシステム

2024.1 リリースが利用可能に

今すぐダウンロード
Hero Slide Images

AMD のエンベデッド ソフトウェア エコシステム

最新情報

概要

AMD アダプティブ SoC エンベデッド ソフトウェア エコシステム

ソフトウェアを活用して、迅速なイノベーションとコネクティビティを実現

AMD のエンベデッド ソフトウェア エコシステムは、エンベデッド システムの開発をサポートし、構想段階から完成までのプロセスを効率化します。ツールやランタイムなど、包括的な環境を提供するソフトウェア エコシステムは、エンベデッド製品ポートフォリオに含まれる AMD Zynq™ 7000 SoC、Zynq UltraScale+™ MPSoC、Versal™ アダプティブ SoC、および  MicroBlaze プロセッサ および MicroBlaze V プロセッサ コア などのデバイス機能を効果的に活用するように構築されています。AMD の製品は、革新的なセキュリテ機能や仮想化ソフトウェア ドライバーなど高度な技術を採用し、AMD Zynq および Versal デバイスにこれらの技術が組み込まれています。このような相互作用によって、次世代エンベデッド アプリケーションの要求に応える革新的なシステムを構築する可能性が広がります。

2574500-embedded-software-stack

ビルド/開発ツール

Linux

AMD Linux は、AMD 製品で最も一般的に使用されているオペレーティング システムです。AMD は Linux 開発を簡素化するために PetaLinux ツールを提供し、Git リポジトリではソースコードや Yocto レシピ ファイルも提供しています。これにより、AMD シリコンの Linux サポートを、自社のビルド システムやサードパーティのツールを利用して提供できるようになっています。AMD Linux プロジェクトは、Versal™ アダプティブ SoCZynq™ UltraScale™ MPSoC、 Zynq 7000 SoC、および MicroBlaze プロセッサを使用する開発向けにカスタマイズした非商用の Linux 開発プロジェクトです。

AMD リリースの Linux カーネル サポートは次のとおりです。

  • 2023.x では v6.1
  • 2022.x では v5.15
  • 2021.x では v5.10

ビルド ツール

AMD は、エンベデッド Linux ソリューションの構築および運用をサポートする 2 種類のツールを提供しています。1 つは AMD の PetaLinux で、もう 1 つはオープンソース プロジェクトの Yocto です。PetaLinux は、エンベデッド Linux を迅速に構築するための GUI を提供し、Yocto は経験豊富なユーザーがそれぞれのボードに最適なカスタム Linux を構築するために使用できます。

AMD 製品は、広範なオープンソース リソースでサポートされているため、AMD SoC やエミュレーション プラットフォーム向けの Linux ベース アプリケーションを開発、ブート、実行、デバッグ、さらには維持することが可能です。AMD はサンプル アプリケーション、カーネル コンフィギュレーション、Yocto レシピ、マルチプロセッシング/リアルタイム ソリューション、デバイス ドライバーなどを提供しています。Linux オープンソース開発者は、使い慣れたソースやツールを見つけることはもちろん、サポート フォーラムで同じ関心を持つ開発者と交流して意見を交換できます。

ソフトウェア開発ツール

新しい Vitis™ 統合ソフトウェア プラットフォーム、SDK、エコシステム パートナーのツールなど、Zynq および Versal プラットフォームで SoC 同様の C/C++ プログラミングをサポートする複数の開発環境が用意されています。

AMD ソフトウェア開発環境
AMD エコシステムのソフトウェア開発環境およびツール

RTOS & ライブラリ パートナー

RTOS、ハイパーバイザー、ベアメタル

RTOS

リアルタイム オペレーティング システム (RTOS) とは、通常バッファーの遅延がなく、リアルタイムにデータを処理するリアルタイム アプリケーション向けのオペレーティング システム (OS) です。(wikipedia.org より抜粋)

RTOS で最も重要な要素はシンプルさと軽量を維持することです。ほかには、最小限の割り込みレイテンシとスレッド切り替えレイテンシが重要です。RTOS では、どれだけ膨大なデータを処理できるかではなく、迅速かつ確定的に応答できることが重要とされています。

FreeRTOS

FreeRTOS は、AWS の 35 以上のアーキテクチャをサポートする市場を牽引する RTOS であり、2017 年には 3 分に 1 回ダウンロードされていました。FreeRTOS カーネルは、専門的な開発、厳密な品質管理、堅牢性、充実したサポートを特徴とし、専有のソース コードの公開要件なしで商用アプリケーションで自由に使用できます。(参照: https://www.freertos.org/RTOS.html)

FreeRTOS の詳細は、https://www.freertos.org/RTOS.html をご覧ください。

freertos-logo

reeRTOS カーネル ポートは、次の AMD アダプティブ SoC、FPGA、および SOM で使用できます。

プロセッサ デバイス
64 ビット Arm® Cortex®-A72 アプリケーション プロセッサ (APU) および 32 ビット Cortex-R5 リアルタイム プロセッサ (RPU) Versal™ アダプティブ SoC デバイス
64 ビット Arm Cortex-A53 アプリケーション プロセッサ (APU) および 32 ビット Cortex-R5 リアルタイム プロセッサ (RPU) Zynq™ UltraScale+™ MPSoC デバイス & Kria™ SOM
デュアル コア Arm Cortex-A9 ベースのアプリケーション プロセッサ ユニット (APU) Zynq 7000 SoC デバイス
32 ビット MicroBlaze プロセッサ すべての AMD デバイス ファミリ

AMD 製品の FreeRTOS の詳細およびサポート リソースについては、AMD FreeRTOS をご覧ください。

AMD およびエコシステム パートナーの RTOS サポート:

プロバイダー 製品 Zynq 7000 SoC Zynq UltraScale+ MPSoC Versal アダプティブ SoC MicroBlaze
Cortex-A9 Cortex-A53 Cortex-R5 VCU Mali-400 Cortex-A72 Cortex-R5F AIE
AMD ベアメタル
AMD FreeRTOS X X
BlackBerry QNX Neutrino X X X X
QNX OS for Safety X X X X
Wind River VxWorks X X X
Green Hills INTEGRITY-178 X X X X X X X
INTEGRITY X X X X X X
u-velOsity X X X X X X X
Siemens Nucleus X X X X X
PX5 PX5 RTOS X X X X X X
Microsoft Azure RTOS X X X X X
ETAS ETAS RTA-OS X X X X X X
Sysgo PikeOS X X X X X X X
PikeOS for MPU X X X X X X X X
Lynx LynxOS-178 X X X X X X X X
Weston Embedded Cesium Cs/OS2, OS3 X X X X X X
DDC-I Deos X

X X X X X X
RTEMS RTEMS X X X
eForce uC3 X

X X X X X X
ENEA OSE X

X X X X X X
eSOL eT-kernel X X X X X X X
Silicon Labs Micrium uc/OS-II / OS-III5 X X X X X X
Sciopta Sciopta RTOS X X X X X X
Wittenstein SafeRTOS X X X X X X X X
Segger emBOS 1 X X X X X X X X

注記: ほとんどの RTOS は一定レベルの安全基準に対する認証を取得しています。安全性に関する特定の要件がある場合は、OS ベンダーにお問い合わせください。

1 - SMP サポートなし
2 - Micrium はサポートのみ対応。現在は、Weston Embedded 社が「Cesium」というブランド名で OS を提供。
3 - アーキテクチャ サポート パッケージ
4 - 開発中
5 - レガシのみ。サポートについては、Weston Embedded 社にお問い合わせください。

詳細およびサポート リソースについては、AMD Wiki のエンベデッド ソフトウェア エコシステムをご覧ください。

仮想化およびハイパーバイザー

AMD は、高度なマルチ OS システム デザインを完成させるために必要な技術、資料、およびサポートを提供しています。AMD エコシステムが提供する製品は次のとおりです。

ベンダー 製品 Versal アダプティブ SoC Zynq UltraScale+ MPSoC Zynq 7000 SoC
AMD Xen Hypervisor X
BlackBerry QNX Hypervisor X
Wind River Helix Virtualization Platform X
Sysgo PikeOS Hypervisor X
Green Hills Integrity Multivisor X
Lynx LynxSecure Separation Kernel Hypervisor X
Dornerworks SEL4 X
Siemens Nucleus Hypervisor X
General Dynamics Mission Systems OKL4 Microvisor X X

注記: 1 - サービス契約が必要

詳細およびサポート リソースについては、AMD Wiki のエンベデッド ソフトウェア エコシステムをご覧ください。

ベアメタルおよびライブラリ

AMD は、その他のライブラリおよびベアメタル ドライバーも提供しています。このライブラリは、AMD のデバイス専用に開発されています。

ライブラリ
  • wip – ネットワーク TCP/IP スタック
  • xilisf – フラッシュ
  • スタンドアロン BSP – ボード サポート パッケージ
  • xilffs – FAT File システム
  • xilfpga – PL/FPGA 管理 (ビットストリーム 読み込み)
  • xilskey – セキュリティ
  • xilsecure – セキュリティ
  • xilrsa – セキュリティ

ベアメタル ドライバーおよびライブラリの詳細およびサポート リソースについては、AMD Wiki の ベアメタル およびライブラリをご覧ください。

エンベデッド Linux

オープンソースの Linux は、エンベデッド ハードウェアで最も一般的に使用されるオペレーティング システムであり、AMD は 2001 年の AMD Virtex™-II Pro FPGA リリース以来、自社の FPGA およびアダプティブ SoC デバイス向けに Linux サポートを提供しています。また、AMD は、PetaLinux や Yocto などのビルド環境に加えて、 Canonical 社認定の Ubuntu など AMD デバイスをターゲットにしたサードパーティ ベンダーによる商用サポートも提供しています。

Yocto

Yocto プロジェクト で以下のように記載されています。「Yocto プロジェクトとは、ハードウェア アーキテクチャに関係なく、エンベデッド製品用の Linux ベースのカスタム システムを作成できるようサポートするオープンソースの共同プロジェクトです。このプロジェクトは、世界中の開発者がエンベデッド デバイス向けのカスタム Linux イメージを作成する際に利用できる技術、ソフトウェア スタック、コンフィギュレーション、またベスト プラクティスを共有するための手段を提供しています。」

PetaLinux

PetaLinux ツールは、AMD のプロセッシング システム上でエンベデッド Linux ソリューションをカスタマイズ、ビルド、および評価するために必要なものをすべて提供します。設計生産性の加速を目的とするこのソリューションは、AMD のハードウェア デザイン ツールと連動し、Versal™ アダプティブ SoC、Zynq™ UltraScale+™ MPSoC、Zynq 7000 SoC、および MicroBlaze™ プロセッサ向けの Linux システム開発をサポートします。

Linux

プロバイダー 製品 ディストリビューション Versal アダプティブ SoC Zynq UltraScale+ MPSoC Zynq 7000 SoC MicroBlaze
AMD PetaLinux Yocto
Yocto Yocto
Canonical Ubuntu Debian X X
Wind River Wind River Linux Yocto X
Foundies.io FoundriesFactory Yocto X X
Siemens Sokol Flex OS Yocto X X
Sokol Omni OS Debian X X X
TimeSys Linux Services Yocto X
MontaVista CGX/CGE Yocto X X
ArchLinuxARM ArchLinuxARM 該当なし X X X

情報: 1 - VCK190 向けベアメタル

詳細およびサポート リソースについては、AMD Wiki のエンベデッド ソフトウェア エコシステムをご覧ください。

オープンソース プロジェクト

QEMU

QEMU (Quick EMUlator) はオープンソースで、クロスプラットフォームのシステム エミュレーターです。主に x86 アーキテクチャの Linux オペレーティング システム上で実行され、AMD ZCU102 や VCK190 ボードなどフルシステム (一般的にゲストと呼ばれるもの) をエミュレートできます。

エミュレーションの対象となるのは、プロセッサ、ペリフェラル、開発ボード上のその他のハードウェアが含まれ、仮想化されたハードウェア上で実際のオペレーティング システムやアプリケーションを起動できます。

また、QEMU は CAN、Ethernet、USB などのインターフェイスを介してホスト マシンと通信できるため、ゲスト マシンはホストから実世界のデータをリアルタイムで受け取り、利用することが可能になります。

Xen ハイパーバイザー

Xen は、Xen プロジェクトによって開発および管理され、オープンソース コミュニティに提供されているタイプ 1 ハイパーバイザです。Xen を使用することで、AMD Zynq™ UltraScale+™ MPSoC 上で複数のオペレーティング システムのインスタンスやベアメタル アプリケーションを実行できるようになります。Xen ハイパーバイザの詳細は、Xen プロジェクト開始ページをご覧ください。

U-Boot

U-Boot は、Linux コミュニティで最も使用されているオープンソースの汎用ブートローダーです。AMD ボード上で実行できる U-Boot を提供しており、これらは Git ツリー (https://github.com/Xilinx/u-boot-xlnx) から入手できます。

Arm Trusted Firmware

Arm® Trusted Firmware は ARMv8-A アーキテクチャ向けのセキュア ソフトウェア リファレンスを提供します。また、PSCI (Power State Coordination Interface) などのさまざまなインターフェイス規格やセキュア モニター コードを実装できるため、非セキュアなソフトウェアとの連携を実現できます。AMD の Arm Trusted Firmware ポートは、https://github.com/Xilinx/arm-trusted-firmware で入手可能です。

リソース

ビデオ
トレーニング

トレーニングおよびサポート

AMD は、Zynq™ UltraScale+™ MPSoC アプリケーション向けに広範なトレーニングおよびサポート オプションを提供しています。設計手法、ビデオ チュートリアル、開発者向けフォーラム、Wiki、オンライン サポート、デザイン サービス、FAQ、およびブログなどを通して、迅速なアプリケーションの市場参入をサポートしています。

クイック リンク