組み込みプロセッサの最新動向 ――ヘテロジニアスなマルチプロセッサ構成が主流に
●多様化したコア間の相互接続方式
それぞれのコアはシステムLSIの設計を始める以前に,ある程度固まった回路ブロックであることが多いので,システムLSIの設計の中心は,それぞれのコア間の相互接続(インターコネクション)であると言っても過言ではないかもしれません.メモリへの接続を含む相互接続のアーキテクチャや実装(インプリメンテーション)方法を変更すれば,たとえ同じコアを使ったとしても,システムLSI全体の性能は大きく変わります.そして集積度の向上にともなって,現時点では,それらの相互接続の大部分はチップ上(オンチップ)にあるのです.チップの外(オフチップ)に出力されるのは,例えばUSBやIEEE 1394といった,何らかの規格化されたインターフェースだけになりつつあります.
接続方式の進化も進んでいます.ともかく接続できればよいという,いわゆる外部バスと大差のない「内部バス」のレベルからはとうに決別しています(そのような古いタイプの内部バスを使っている場合は,何らかの互換性のつごうがあるのだろう).集積度の高いプロセスで製造され,相互接続をチップ上で実現するのであれば,何もボトルネックを生みやすい従来型のプロセッサ・バスを使う必要はありません.複数の経路を重ねて並列動作を許したり(マルチレイヤ化),複数の経路をスイッチで切り替えたり,数百ビット以上もの幅の広いバスを用意したりと,実に多様な接続方法が利用されています(図3).
さらにチップ上の相互接続方式の現在の焦点は,上記のような物理的接続形態のトレードオフの問題に加えて,どれだけ効率的にその接続を使い切るか,といった問題に移りつつあります.なにせ,複数のコアが勝手にアクセスし続けるのです.何の対策も施さなければ,相互のトラフィックの衝突により効率が低下することは必至です.
相互接続方式については,IPコアの流通基盤になりうるという側面もありますが,今回は,これについては割愛します.