AMD とエコシステム パートナーが提供するエンベデッド ツールおよびランタイム環境は、構想から製品リリースまでを効率的に素早く実現することを目的としています。AMD は、オープンソース OS/ベアメタル ドライバー、複数のランタイム/OS 環境、統合開発環境など、AMD の Zynq™ SoC、Zynq™ UltraScale+™ MPSoC、MicroBlaze™ プロセッサ コア、および Arm® Cortex® M1/M3 マイクロコントローラーを使用してエンベデッド システムを構築するために必要なすべてを提供します。
AMD の Zynq SoC や Zynq UltraScale+ MPSoC デバイスにセキュリティや仮想化ソフトウェア ドライバーなどの高度な機能を実装できる包括的なサポートを活用することで、よりスマートで高度に接続された差別化システムを実現できます。
AMD は、GIT リポジトリでソースコードや Yocto レシピ ファイルを提供するだけでなく、シンプルな Linux 開発フローをサポートする PetaLinux ツールも提供しています。これにより、AMD シリコンの Linux サポートは、自社のビルド システムまたはサードパーティ ツールで対応できます。AMD の Linux プロジェクトは、Versal™ ACAP、 Zynq™ SoC 、および MicroBlaze™ での開発向けにカスタマイズされた非商用の Linux 開発プロジェクトです。
AMD リリースの Linux カーネル サポートは次のとおりです。
新しい Vitis™ 統合ソフトウェア プラットフォーム、SDK、エコシステム パートナーのツールなど、Zynq および MPSoC プラットフォームで SoC 同様の C/C++ プログラミングをサポートする複数の開発環境が用意されています。
AMD ソフトウェア開発環境 |
---|
|
AMD エコシステムのソフトウェア開発環境およびツール |
AMD は、エンベデッド Linux ソリューションの構築および運用をサポートする 2 種類のツールを提供しています。1 つは AMD の PetaLinux で、もう 1 つはオープンソース プロジェクトの Yocto です。PetaLinux は、エンベデッド Linux を迅速に構築するための GUI を提供し、Yocto は経験豊富なユーザーがそれぞれのボードに最適なカスタム Linux を構築するために使用できます。
AMD 製品は、広範なオープンソース リソースでサポートされているため、AMD SoC やエミュレーション プラットフォーム向けの Linux ベース アプリケーションを開発、ブート、実行、デバッグ、さらには維持することが可能です。また、アプリケーション例、カーネル コンフィギュレーション、Yocto レシピ、マルチプロセッシング、リアルタイム ソリューションが提供されているため、デバイス ドライバーや Linux オープン ソース開発者は、使い慣れたソースやツールを見つけることはもちろん、サポート フォーラムで同じ関心を持つ開発者と交流して意見を交換できます。
リアルタイム オペレーティング システム (RTOS) とは、通常バッファリング遅延がなく、リアルタイムにデータを処理するリアルタイム アプリケーション向けのオペレーティング システム (OS) です。(wikipedia.org より抜粋)
RTOS で最も重要な要素はシンプルさと軽量を維持することです。ほかには、最小限の割り込みレイテンシとスレッド切り替えレイテンシが重要です。RTOS では、どれだけ膨大なデータを処理できるかではなく、迅速かつ確定的に応答できることが重要とされています。
FreeRTOS カーネルは、2003 年頃 Richard Barry 氏によって開発され、その後リチャードの会社 Real Time Engineers Ltd が開発と管理を引き継ぎました。
FreeRTOS は大成功を収め、2017 年には FreeRTOS プロジェクトの管理を AWS (アマゾン ウェブ サービス) に委任しました。Richard 氏は、その後も AWS チームの一員として FreeRTOS の管理に携わっています。
FreeRTOS™ は、AWS の 35 以上のアーキテクチャをサポートする市場を牽引する RTOS であり、2017 年には 3 分に 1 回ダウンロードされていました。FreeRTOS カーネルは、専門的な開発、厳密な品質管理、堅牢性、充実したサポートを特徴とし、専有のソース コードの公開要件なしで商用アプリケーションで自由に使用できます。(参照: https://www.freertos.org/RTOS.html)
詳細は、https://www.freertos.org/RTOS.html をご覧ください。
プロセッサ | [Device] |
---|---|
64 ビット Cortex-A53 アプリケーション プロセッサ (APU) および 32 ビット Cortex-R5 リアルタイム プロセッサ (RPU) | ZynqUS+ SoC デバイス |
32 ビット Cortex-A9 アプリケーション プロセッサ (APU) | Zynq 7000 SoC デバイス |
32 ビット MicroBlaze プロセッサ | すべての AMD デバイス ファミリ |
AMD 製品の FreeRTOS の詳細は、AMD FreeRTOS をご覧ください。
ライブラリ |
---|
|
ベアメタル ドライバーおよびライブラリについての詳細は、AMD Wiki のベアメタルおよびライブラリをご覧ください。
オペレーティング システム | 安全性認定 | Zynq 7000 サポート | Zynq UltraScale+ APU サポート | Zynq UltraScale+ RPU サポート | MicroBlaze サポート |
---|---|---|---|---|---|
AMD スタンドアロン (ベア メタル) 環境およびAMD ソフトウェア開発キット (SDK) | ![]() |
![]() |
![]() |
![]() |
|
DDC-I DEOS | ![]() |
![]() |
![]() |
||
eSol eT-kernel | ![]() |
![]() |
![]() |
||
eCOS | ![]() |
![]() |
|||
イー・フォース株式会社 | ![]() |
![]() |
![]() |
||
ENEA OSE | ![]() |
![]() |
お問い合わせ | ||
Etas RTA-OS | ![]() |
![]() |
|||
Green Hills Software INTEGRITY | ![]() |
![]() |
![]() |
||
LynxOS 7.0 | ![]() |
お問い合わせ | お問い合わせ | ||
Mentor Nucleus | ![]() |
![]() |
![]() |
![]() |
お問い合わせ |
Micrium uC/OS-II | ![]() |
![]() |
![]() |
![]() |
![]() |
Micrium uC/OS-III | ![]() |
![]() |
![]() |
![]() |
|
RTEMS | ![]() |
![]() |
![]() |
||
Sciopta | ![]() |
![]() |
![]() |
![]() |
|
Segger embOS | ![]() |
||||
Wittenstein OpenRTOS | ![]() |
お問い合わせ | お問い合わせ | お問い合わせ | |
Wittenstein SafeRTOS | ![]() |
![]() |
お問い合わせ | お問い合わせ | ![]() |
Sysgo PikeOS | ![]() |
![]() |
![]() |
![]() |
AMD は、高度なマルチ OS システム デザインを完成させるために必要な技術、資料、およびサポートを提供しています。AMD エコシステムが提供する製品は以下のとおりです。
ソフトウェア | Zynq 7000 サポート | Zynq UltraScale+ サポート |
---|---|---|
Dave Embedded FreeRTOS/Linux on the Bora board | ![]() |
|
General Dynamics Mission Systems OKL4 | ![]() |
|
Green Hills INTEGRITY Multivisor | ![]() |
|
Lynx Secure Separation Kernel Hypervisor | ![]() |
|
Mentor Hypervisor | ![]() |
![]() |
Mentor Trusted Execution Environment | ![]() |
![]() |
QNX Hypervisor | ![]() |
|
Wind River Hypervisor | お問い合わせ | お問い合わせ |
AMD は、オープン ソース プロジェクトおよび、Open Asymmetric Multi Processing (OpenAMP) もサポートしています。OpenAMP (Open Asymmetric Multi-Processing) は、非対称型マルチプロセッシング (AMP) システム用ソフトウェア アプリケーションの開発に必要なソフトウェア コンポーネントを提供するフレームワークです。詳細は、Open Source をご覧ください。
AMD は、Zynq/MPSoC アプリケーション向けに広範なトレーニングおよびサポート オプションを提供しています。設計手法、ビデオ チュートリアル、開発者向けフォーラム、Wiki、オンライン サポート、デザイン サービス、FAQ、およびブログなどを通して、迅速なアプリケーションの市場参入をサポートしています。
アジア太平洋 | ヨーロッパ、中東およびアフリカ | インド | 日本 | 北米 |
---|---|---|---|---|
Avnet Design Service | Barco Silex | CoreEL Technologies | 株式会社 画像技研 | A2e Technologies |
Huasang Electron Device | Missing Link Electronics | iWave Systems Technologies | OKI アイディエス | Ashton Electronic Systems |
Realtime Technology | Plextek | 株式会社システック | Bottom Line Technologies | |
QdeSys |
東京エレクトロンデバイス | DesignLinx Hardware Solutions, LLC | ||
Sensor to Image |
東芝デジタル メディア エンジニアリング | Digital Design Corp | ||
Topic Embedded System B.V. |
DornerWorks | |||
Xylon |
Fidus Systems | |||
SYSGO GmbH | Missing Link Electronic | |||
Hardent, Inc. |
MicroBlaze™ は、AMD FPGA ベースの 32 ビット RISC Harvard アーキテクチャ ソフト プロセッサです。AXI インターフェイス、メモリ管理ユニット (MMU)、命令/データ サイド キャッシュ、パイプラインの深さ設定、浮動小数点ユニット (FPU) など、高度なアーキテクチャ オプションが多数あります。
ソフト プロセッサ コアは AMD のソフトウェア ツールに含まれており、次の 3 つのプリセットで展開されています。
![]() クリックして拡大表示 |
マイクロコントローラー プリセット (最大 200DMIPs)
|
![]() クリックして拡大表示 |
リアルタイム プロセッサ プリセット (最大 200DMIPs)
|
![]() クリックして拡大表示 |
アプリケーション プロセッサ プリセット (最大 180DMIPs)
|
Cortex-M1 および Cortex-M3 プロセッサは、低い消費電力、少いロジック リソース、そして短い割り込みレイテンシに最適化されて設計された 32 ビット プロセッサです。Cortex-M1 は、通信、制御、管理が必要な制約の多いアプリケーションに最適ですが、M3 は幅広いエンベデッド/IoT アプリケーションに対応します。上位互換性を保つため、Cortex-M1 は Cortex-M3 の命令セットと機能のサブセットを実装します。
AMD とエコシステム パートナーが提供するエンベデッド ツールおよびランタイム環境は、構想から製品リリースまでを効率的に素早く実現することを目的としています。AMD は、オープンソース OS/ベアメタル ドライバー、複数のランタイム/OS 環境、統合開発環境、コンパイラ、デバッガー、プロファイリング ツールなど、AMD の Zynq™ SoC、 Zynq™ UltraScale+™ MPSoC デバイス、MicroBlaze™ プロセッサ コア、および Arm® Cortex®-M1/M3 マイクロ コントローラーを使用してエンベデッド システムを構築するために必要なすべてを提供します。
Zynq 7000 SoC サポート | Zynq UltraScale+ APU サポート | Zynq UltraScale+ RPU サポート | MicroBlaze サポート | |
---|---|---|---|---|
非商用 | ||||
Linux、U-Boot、その他多数 (AMD GIT) | ![]() |
![]() |
![]() |
|
Yocto/OpenEmbedded サポート | ![]() |
![]() |
![]() |
|
PetaLinux ツール | ![]() |
![]() |
![]() |
|
Arch Linux ARM | ![]() |
|||
Ubuntu Linux | AMD デバイス向け認定 Ubuntu | |||
Android | ![]() |
![]() |
||
商用ソリューション | ||||
Enea Linux | ![]() |
|||
Mentor Embedded Linux | ![]() |
![]() |
||
Suse Linux | ![]() |
|||
Sysgo ELinOS | ![]() |
![]() |
AMD は、オープンソース コミュニティに参加しています。その主な目的とプロジェクトは次のとおりです。Hackster Community Portal には、その他のデザインおよび情報が掲載されています。
AMD では、デバイスにプロセッサを導入した当初からオープンソース Linux を使用しています。最初の製品は 2001年の Virtex-II Pro です。以来、オープンソース Linux を利用し、2007 年からアップストリーム パッチの提供を開始しました。Zynq™ 7000 で Linux コミュニティでの地位を確立し始め、現在では Linux U-Boot プロジェクトに大きく貢献する存在となりました。
Linaro とは、Arm Ecosystem 向けにソフトウエアを開発するオープンソースのエンジニアリング組織です。Arm と提携して Arm Ecosystem を共同で管理しています。
「96Boards」のページにあるように、96Boards は、最新の Arm ベース プロセッサをリーゾナブルに利用できるように Linaro が作成した一連のハードウェア仕様です。これら仕様は、ソフトウェア アプリケーション、ハードウェア デバイス、カーネル、およびその他のシステム ソフトウェア開発者用に公開されており、SoC に依存しない (プロセッサに依存しない) 開発プラットフォームの標準ボード レイアウトを定義しています。
アヴネット社は、96Board 仕様に準拠した AMD デバイス搭載の「Ultra96」 を提供しています。Ultra96 の開発には、Avnet 社、AMD、Linaro コミュニティが携わりました。詳細は、http://zedboard.org/product/ultra96-v2-development-board をご覧ください。
OpenAMP は、オープンソース ソリューションを使用するヘテロジニアスなエンベデッド システムにおいて動作環境間の相互作用を標準化するための Linaro コミュニティ プロジェクトです。OpenAMP の主な取り組みは次のとおりです。
Yocto プロジェクトとは、ハードウェア アーキテクチャに関係なく、エンベデッド製品用の Linux ベースのカスタム システムを作成できるようサポートするオープンソースの共同プロジェクトです。このプロジェクトは、世界中の開発者がエンベデッド デバイス向けのカスタム Linux イメージを作成する際に利用できる技術、ソフトウェア スタック、コンフィギュレーション、またベスト プラクティスを共有するための手段を提供しています。