今さら聞けないマルチプロセッサの基礎教えます ――キャッシュの共有,割り込みの共有,OSによる制御
3 組み込みシステムにおけるマルチコア
組み込みシステムでは,同じプロセッサ・コアを複数組み込む(対称型)マルチコア・システム以外に,異なるプロセッサ・コアを組み込む(非対称型)マルチコア・システムがよく利用されます.ここでは対称な構成の例として英国ARM社のプロセッサ・コア「MPCore」を,非対称な構成の例としてARMプロセッサ・コアとDSPコアを組み合わせた通信仕様を取り上げます.
● ARM社のMPCoreはキャッシュの一貫性を維持できる
2004年5月のEmbedded Processor Forum 2004において,ARM社はNECエレクトロニクスと提携して開発したマルチプロセッサ対応のコア「MPCore」を発表しました(1).MPCoreにはキャッシュの一貫性を維持するしくみとして,SCU(Snoop Control Unit)という回路が用意されています(図8).SCUはsnoop cacheを1次キャッシュのレベルで実現するしくみで,SMP構成のマルチプロセッサ・システムを実現可能にしています.
また,MPCoreには,外部機器からの割り込みを任意のプロセッサ・コアに自由に分散できる回路(Interrupt Distri-butor)が用意されています.このしくみは非対称なマルチコア構成を意識したものです.さらに,このプロセッサはマルチコア・システム内の任意のコアを動的にシャットダウン/復帰することができ,消費電力を制御できるようになっています.