可能性と複雑性に満ちあふれた「AMP」へようこそ:SYSTEM DESIGN JOURNAL(5/5 ページ)
「AMP」(非対称型マルチプロセッシング)は今まさに注目すべき技術ですが、AMPとは何であり、なぜ必要なのでしょう。何より、組み込みシステムにおいてAMPの実装にはどんな利点や課題があるのでしょうか。
「ある程度」の問題
紹介したかなり幅広いハードウェアレベルの代替手段は、AMPの大きな利点を物語っています。それは、システム内の最も要求の厳しい各タスクに合わせてハードウェアやOS環境をカスタマイズできることです。その一方で、AMP最大のリスクも示しています。それは、注意しないとシステム内全ての重要なタスクが異なる実行/通信/デバッグ環境や異なるメモリモデルに直面する恐れがあることです。
そこで役立つのがOpenAMPのような標準です。また、エンベデッドハイパーバイザーも同様に役立ちます。
「ハイパーバイザーとは、仮想マシンをスケジューリングし、仮想マシン同士が相互に通信できるようにするRTOSと考えることです」と前出のChabroux氏は助言します。ハイパーバイザーは、MMUのセットアップだけでなく、適切なコードを適切なプロセッサにバインドする、仮想メモリ、デバイス、ネットワーク接続を作成する、FPGA内のソフトウェアプロセッサをインスタンス化する、さらにはタスク間通信のための統一的な手段を提供することも可能です。
これらのサービスにより、各ワークロードを望ましい仮想システムで処理できるように、AMPシステムをソフトウェア定義にすることが可能ですが、その一方で代償もあります。
ハイパーバイザーは、CPUサイクル、メモリ、電力を消費する他、割り込み応答時間などのクリティカルパスにレイテンシを追加する可能性があります。そして、Chabroux氏が指摘するように、ソフトウェアの急激な複雑化を回避するには、ハイパーバイザーに対するハードウェアサポートが必要です。
CPUによるマルチスレッディング、FPGAによるライブパーシャルリコンフィギュラビリティ、DRAMコントローラーおよびバスコントローラー、さらにはDMAコントローラーによる複数のアクティブチャネルをサポートするためのレジスタは、いずれもソフトウェアの複雑性の大幅な低減やハイパーバイザーのレイテンシ短縮につながります。
ハイパーバイザーを使用するかどうかはともかく、AMPはシステム要件を満たすための最善の手段となり得ます。しかし、組み立て式家具メーカーの担当者が言いそうなことですが、やはり「ある程度の組み立てが必要」であることが大きな問題です。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 走行距離不安症の数学
ハイブリッドカーやドローンなど、リチウムイオン(Li-ion)バッテリーを動力源とするものは増え続けています。電池切れや発熱、発火といったリスクへの対処は絶対必要ですが、Li-ionの管理は容易ではなく、数学的な手法が欠かせません。 - 錠前が暗示するIoTセキュリティの3要件
IoTの進化は創造的なプロセスと懐疑的なプロセスの2つを無視できない存在まで引き上げました。懐疑的なプロセスの筆頭は、安全性に対する懸念です。物理的な安全と個人情報の安全という両方の安全がなければ、IoTは行き詰まる可能性があります。 - クラウドに生まれる新たなレイヤーの形
IoTやビッグデータコンピューティングの圧力により、クラウドには「層化」とも呼べる現象が起こっています。それはアプリケーションデータフローと実際の帯域幅、そしてレイテンシ制約という競合する課題への対応です。 - ニューラル・ネットワークと力の指輪
指輪物語の「1つの指輪」は全ての指輪を統べる力を持ちました。ではニューラルネットワークは人工知能という力の指輪を統べる、1つの指輪なのでしょうか。 - SoC設計者がIPに関心を持つべきタイミング
SoCが自律走行車やIoTなどの分野に進出しようとしていますが、求められる要件は分野によって大きく異なります。その結果、SoC開発者がIP(Intellectual Property)を評価・統合する方法に変化が見られます。