アーキテクチャの視点でみたARMコアの変遷と動向 ――LSI設計者は「ファミリ」に,ソフト開発者は「アーキテクチャ」に注目

M.P.I

tag: 組み込み

技術解説 2006年4月17日

● 組み込み応用をねらった"濃い味付け"のRISC CPU

 ARMプロセッサは,"ごく普通"の32ビットRISC(re-duced instruction set computer)プロセッサです.ロード/ストア型アーキテクチャのレジスタ・マシンであり,フラットでリニアなメモリ空間にアクセスし,命令セットは固定長です.しかし,RISCプロセッサとしては濃い味付けがなされたアーキテクチャでもあります.これは基本となるARM7TDMIから変わっていません.以下に,ARMプロセッサの独特の部分を列挙します.

1) 基本は3オペランドで32ビット固定長の"ARM"命令セットだが,現行のARM応用製品のほぼすべてで16ビット固定長の"Thumb"命令セットが併用されている

2) "ARM"命令セットには,全命令に条件フィールドがあり,条件付き実行が可能である.これにより,分岐によるパイプラインの乱れを最小化できる.また,ほとんどの命令でオペランドをビット・シフトできる.1命令当たりの可能な操作が大きい例外的なRISCプロセッサといえる.反面,ほかのRISCプロセッサで一般的な遅延分岐は排除している

3) レジスタ・バンクに対応している

4) コプロセッサ命令による命令セット拡張に対応している

 1)は,組み込み応用で厳しいメモリ容量の制限に配慮し,プログラム容量の削減に貢献するのが目的です.3)は,リアルタイム制御などを考慮した割り込みに対するレスポンスの改善がねらいです.2)はハンド・コーディングでアセンブラによりミドルウェアなどをガリガリとチューニングしていく作業で威力を発揮する特性と思われ,アーキテクチャの源流の歴史を感じさせます.4)は,IPとして特定用途向けシステムLSIなどに組み込むときに,LSI設計者に拡張の余地を与えるものです.

 もちろん,ARMプロセッサにも課題はあります.現存のほとんどの製品が対応しているThumb命令セット単独では割り込みハンドラなどは記述できず,つねにARM命令セットへの切り替えが行われます.その結果,ルーチンにより2種類のコンテキストのコードを使い分ける必要があります(ただし,最近のThumb2命令セットに対応するものからは,Thumb2命令,ARM命令をコンテキストで切り替える必要がなくなった).また,2)の特徴から,演算回路の実装上,ほかのプロセッサと比べてクリティカル・パスが長くなりがちです.論理合成可能なソフト・マクロとして組み込まれる傾向と合わせて,クロック周波数を上げづらいなどの弱い面も持ち合わせています.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日