最終更新:2011-02-18 (金) 01:28:03 (4809d)  

ARM/アーキテクチャ
Top / ARM / アーキテクチャ

http://www.jp.arm.com/products/processors/architecture.html

ARMv3?

ARMv4

ARMv4は、現在サポートされているアーキテクチャの中で最も旧いバージョンです。これより前のバージョンはすべて廃盤となっています。実装には、ARM7TM?プロセッサ・ファミリのいくつか、Intel StrongARM®プロセッサなどがあります。ARMv4は、32ビットのアドレス空間で動作する32ビットISAと考えることができます。

ARMv4T

ARMv4Tアーキテクチャでは、16ビットのThumb命令セットの追加により、32ビット・システムの長所をすべて維持しつつ、コンパイラがコンパクトなコードを生成できるようになりました(同等の32ビット・コードに比べ、メモリを35%節約)。

ARMv5

ARMv5TE (ARM Thumb+DSP拡張命令)

1999年、ARMv5TEアーキテクチャでは、Thumbアーキテクチャを改良するとともに、ARM「拡張(Enhanced)」DSP命令セットをARM命令セット・アーキテクチャに追加しました。

Thumbの変更により、新しい命令がいくつか加わったほか、ThumbARMのインタワーキングが改善されました。これにより、コンパイラの性能が大幅に高まり、ARMルーチンとThumbルーチンを組み合わせてコード・サイズと性能のバランスを取る機能も改善されました。

拡張DSP命令は、飽和演算?に対応し、音声DSPアプリケーションの性能を70%向上させます。多くのシステムは、マイクロコントローラの柔軟性とDSPのデータ処理性能を必要とします。これまで設計者は、コスト上の理由で性能を妥協するか、複雑なマルチプロセッサ方式を採用するしかありませんでした。拡張(E)命令は、汎用CPUDSP機能を加え、性能と柔軟性を高めるよう設計されました。

ARMv5TEJ? (ARM Thumb+DSP拡張命令+ARM Jazelle?)

2000年、ARMv5TEJアーキテクチャでは、Javaを高速処理するためのJazelle?テクノロジー拡張が追加されました。これは、メモリ・フットプリントの小さい設計に特に適しています。JazelleテクノロジーによるJavaバイトコード高速処理は、ソフトウェアだけを使用したJava仮想マシン(JVM)より大幅に高い性能を提供します。Javaを高速処理しないコアに比べ、Javaの実行速度は8倍となり、消費電力は80%削減されます。この機能により、プラットフォーム開発者は、1個のプロセッサで、Javaコードと既存のオペレーティングシステム(OS)、アプリケーションを実行することが可能となります。

ARMv6(ARM Thumb+DSP拡張命令+ARM Jazelle?,SIMD)

2001年に発表されたARMv6アーキテクチャは、メモリ・システム、例外処理、マルチプロセシング環境のサポートなど、多くの面で改良されています。SIMD(Single Instruction Multiple Data)ソフトウェア実行に対応するメディア命令も追加されました。SIMD拡張命令は、ビデオ・コーデック、オーディオ・コーデックなど、幅広いソフトウェア・アプリケーションに最適化され、性能を最大4倍に高めます。さらに、Thumb-2、TrustZoneテクノロジーが、ARMv6アーキテクチャのバリアントとして導入されました。ARMv6アーキテクチャの最初の実装は、2002年春に発表されたARM1136J(F)-STMプロセッサでした。2003年には、ARM1156T2(F)-STM、ARM1176JZ(F)-STMプロセッサが発表されました。

  • ARMv6T2?
  • ARMv6KZ?
  • ARMv6K?

ARMv7

Cortexプロセッサ・ファミリのベースとなるARMv7アーキテクチャは、3つのプロセッサ・プロファイルを定義しています。Aプロファイルは高度な仮想メモリ・ベースのOSとユーザ・アプリケーション、Rプロファイルはリアルタイム・システムに適し、Mプロファイルは、マイクロコントローラと低コスト・アプリケーションに最適化されています。

すべてのARMv7アーキテクチャ・プロファイルは、Thumb-2テクノロジーを実装しています。Thumb-2は、業界をリードするARMのThumbコード圧縮技術の延長であり、既存のARMソリューションと完全なコード互換性を維持しています。ARMv7アーキテクチャは、DSPおよびメディア処理のスループットを最大400%高めるNEONテクノロジー拡張も搭載しています。また、浮動小数点サポートの改良により、従来の組み込み制御アプリケーションだけでなく、次世代の3Dグラフィックスおよびゲーム・フィジクスのニーズにも対応します。