ARMのARM命令セットのバージョンとバージョンを[ターン]

:----より転載  http://www.cnblogs.com/loleng/archive/2011/06/14/2080447.html

多くの場合、我々はそうで異なる発現ARM7、ARM9、ARM11、およびarmv6kとを参照してください。そして、GCCコンパイラでは、多くの場合、そうで-march、-mcpuとを使用しています。彼らはそれの意味を表現し、何?サムはそれが非常に明確ではないが、漠然とした概念についてあります。今日ではよく見ています。

ARM(アドバンストRISCマシン)は、マイクロプロセッサ業界、よく知られている企業です。私たちは、高性能、低コスト、低消費電力RISCプロセッサ、関連技術やソフトウェアの大規模な数を設計しました。1985年に、最初のプロトタイプARMは、ケンブリッジ、イギリスで生まれました。ARMのチップ設計だけでなく、生産を備えています。ARMは、世界有数の半導体、ソフトウェアおよびOEMメーカーの多くにその技術をライセンス供与している、それは各ベンダーによって得られた独自のARM関連の技術とサービスです。今回の提携では、ARM RISCは間もなく創業者の多くのグローバルスタンダードとなって。

ARM社は、6つの主要な命令セットアーキテクチャのバージョンを定義します。V1-V6。(従って、上記は、ARMv6命令セットバージョン番号を意味します)。すなわち:ARMアーキテクチャ

ARMv1:

プロトタイプのこのバージョンではない商用製品のため、ARM1です。

ARMv2:

 V1のバージョンは、乗算命令とコプロセッサ命令の32ビットの結果のためのサポートを含むように拡張されています。

ARMv3:

 ARMの最初のマイクロプロセッサコアARM6バージョン3は、IPコアとして、独立したプロセッサは、オンチップ・キャッシュを有し、MMUのバッファを書き込みCPU集積しました。

ARMv4の:

現在、ARMの最も広く使用されている命令セットのバージョン。

ARM7TDMI、ARM720T、ARM9TDMI、ARM940T、 ARM920T、インテルなどのストロングは、ARMv4Tではバージョンに基づいています。
ARMv5以降:

ARM9E-S、ARM966E-S、ARM1020E、ARM 1022EとのXScaleはARMv5TE以降です。

ARM9EJ-S、ARM926EJ-S、ARM7EJ-S、ARM1026EJ-SはARMv5EJに基づいています。

ARM10も使用すること。

次のようにどこに接尾辞の意味は次のとおりです。

E:拡張DSP命令セット。これは、すべての16ビット乗算演算とアルゴリズムを含みます。

J:新しいJavaをサポートしています。

ARMv6以降:

ARMv6のコアARM11ファミリプロセッサを使用します。

ARM1136J(F)-S主な機能は、ARMv6 SIMD、親指のJazelle、DBX、(VFP)、MMUに基づくものです。

ARM1156T2(F)は、ARMv6T2以降の主な特徴は、SIMD、Thumb-2の、(VFP)、MPUに基づくものである-S。

ARM1176JZ(F)は、MMU、TrustZoneのに基づいて、(F)-S ARM1136EJに基づいARMv6KZ増加を-S。

コア1-4に基づいて、(F)-S ARM1136EJに基づいて、ARM11 MPCoreのARMv6KはSMP、MMUを含むことができます。

ARMv7-A:

ARMプロセッサ・コア:

ARMは、ARMのプロセッサコアの数、最新のビットARM11を開発しました。

ARM7マイクロプロセッサファミリ
低消費電力の32ビットRISCプロセッサノイマン型の。ポータブル製品のための非常に低消費電力化。
 ICE-RTデバッグを容易にするために開発した組み込みロジックを持ちます。
 3段パイプライン構造。3段パイプライン構造を提供することができる0.9MIPS
 16ビットThumb命令セットと互換性の高いコード密度を、。
 その上のWindows CE、Linuxでは、パームOSを含むオペレーティング・システム、を幅広くサポート。
 命令およびARM9シリーズ、ARM9EシリーズとARM10Eシリーズ互換性、ユーザーフレンドリーな製品のアップグレード。
 130MIPSまででクロック。
 主な応用分野:マルチメディアアプリケーションおよび組込み産業用制御、インターネット機器、ネットワークやモデム機器、携帯電話などの様々な。

ARM7TDMIマイクロプロセッサ
 4種類:
 ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。
 ARM7TMDIは、現在最も広く使用されている32ビット組込みRISCプロセッサであるローエンドARMプロセッサコアです。
 注:「ARMコア」ではないチップ、例えば、RAM、ROMなどの他の成分とARMコアは、オンチップ・ペリフェラルの組み合わせが一緒に実際のチップを構成します。

 

マイクロプロセッサのARM9ファミリ
 ARM9ファミリのマイクロプロセッサは、高性能と低消費電力の面で最高のパフォーマンスを提供します。
 レベル5の整数パイプライン、
 ハーバードアーキテクチャ。
 32ビット、16ビットARM命令セットとThumb命令セット。
 MMUの完全なパフォーマンスはWindows CE、Linuxでは、パームOSや他の主流の組み込みオペレーティングシステムをサポートしています。
 高いコマンドおよびデータ処理機能を備えたサポートデータキャッシュと命令キャッシュ、。
 主な用途:無線機器、計測機器、安全システム、セットトップボックス、ハイエンドのプリンタ、デジタルカメラやデジタルビデオカメラ。
 3種類:ARM920T、ARM922TおよびARM940T。

ARM9Eマイクロプロセッサシリーズ
 シングルプロセッサコア、マイクロコントローラ、DSP、Javaアプリケーションシステムソリューション。
 サポートDSP命令セット。
 5段整数パイプラインは、命令実行の高効率。
 32ビット、16ビットARM命令セットとThumb命令セット。
 VFP9のサポート浮動小数点処理コプロセッサ。
 MMUの完全なパフォーマンスはWindows CE、Linuxでは、パームOSや他の主流の組み込みオペレーティングシステムをサポートしています。
 MPUは、リアルタイム・オペレーティング・システムをサポートしています。
 サポートデータキャッシュと命令キャッシュは、
 300MIPSまででクロック。
 メインアプリケーション:無線フィールド機器、デジタル家電、画像形成装置、産業用制御、記憶装置とネットワーク機器の次世代。
 三種類:ARM926EJ-S、ARM946E-SおよびARM966E-S。

 

ARM10Eマイクロプロセッサシリーズ
 約50%増加同じARM9、同じクロック周波数で、性能に比べて、極めて低い消費電力。
 サポートDSP命令セット。
 6段の整数パイプラインは、命令実行の高効率。
 32ビット、16ビットARM命令セットとThumb命令セット。
 VFP10のサポート浮動小数点処理コプロセッサ。
 MMUの完全なパフォーマンスはWindows CE、Linuxでは、パームOSや他の主流の組み込みオペレーティングシステムをサポートしています。
 サポートデータキャッシュと命令キャッシュ。
 400MIPSまででクロック。
 組み込み同時読み取り/書き込み操作部材。
 メインアプリケーション:無線フィールド機器、デジタル家電、画像形成装置、産業用制御、通信及び情報システムの次の世代。
 3種類:ARM1020E、ARM1022EとARM1026EJ-S。

SecurCoreのマイクロプロセッサ・ファミリ
 セキュリティニーズのために設計されており、完全な32ビットRISC技術・セキュリティ・ソリューションを提供するように設計。
 オペレーティングシステムおよびアプリケーションデータの安全性を確保するための柔軟な保護ユニット。
 ソフトコア技術、外部の検出を防止するためにスキャンされます。
 ユーザーは、セキュリティ機能およびその他のコプロセッサを統合することができます。
 主な用途:電子商取引、電子政府、電子バンキング、ネットワークや認証システムなど高いセキュリティ製品やアプリケーションを、必要とするアプリケーションのために。
 4種類:のSecurCore SC100、SC110のSecurCore、のSecurCore SC200 とのSecurCore SC210。

XScaleプロセッサ
 ベースのソリューションアーキテクチャをARMv5TE以降、フル性能、費用対効果の高い、低電力プロセッサです。
 支持Thumb命令と16ビットDSP命令セット。
 デジタル携帯電話、PDAおよびネットワーク製品およびその他の場面で使用されてきました。
 インテルのXScaleプロセッサは、現在、ARMマイクロプロセッサの主要なプロモーションです

 

ARM11:ARMv6,8段パイプライン命令セット、1.25DMIPS /メガヘルツ

皮質A8:命令セットのARMv7-Aは、13段の整数パイプラインは、スーパースカラデュアルエミッション、2.0DMIPS / MHzのは、ネオン標準は、マルチコアサポートしていない
スコーピオン:命令セットのARMv7-Aが、許可A8の基本命令セットにハイパスアクセスデザインに。13整数パイプライン、スーパースカラデュアルエミッション、部分的にオーダー実行、2.1DMIPS / MHzで、ネオン標準、マルチコアのうち
のCortex-A9:命令セットのARMv7-A、8段整数パイプライン、デュアルエミッションスーパースカラ、注文のうち、 2.5DMIPS / MHzで、任意ネオン/ VFPv3の、マルチコア
のCortex-A5:命令セットのARMv7-A、8段整数パイプライン、1.57DMIPS / MHzで、任意ネオン/ VFPv3の、マルチコア

皮質A15:命令セットのARMv7-A、スーパースカラ、注文のうち、任意ネオン/ VFPv4、マルチコア

 

  ARMツールチェーンを使用する場合は、そうであっ-mcpuは-marchと。

-mcpu =

-mtune =

彼らは、ターゲットプロセッサ(ターゲットARMプロセッサ)を指定します。

可选的参数为:アーム2' 、 `arm250' 、` ARM3' 、 `ARM6' 、` arm60' 、 `arm600' 、` ARM610' 、 `arm620' 、` ARM7' 、 `arm7m '` arm7d'、 ` arm7dm ' `arm7di'、` ARM7DMI ' `arm70' 、` arm700' 、 `arm700i'、` arm710' 、 `arm710c '` arm7100' 、 `ARM7500' 、` arm7500fe'、 `ARM7TDMI」、` arm7tdmi- S'、 `arm8' 、`ストロング ' `strongarm110' 、` strongarm1100' 、 `arm8' 、` arm810' 、 `ARM9' 、` ARM9E'、 `ARM920' 、` ARM920T ' `ARM922T'、` arm946e- S'、 `ARM966E-S'、` ARM968E-S'、 `ARM926EJ-S'、` ARM940T ' `ARM9TDMI'、` ARM10TDMI ' `ARM1020T'、` arm1026ej-S'、 `ARM10E '` ARM1020E' `arm1022e '` ARM1136J-S'、 `ARM1136JF-S'、' MPCoreの'、' mpcorenovfp '` ARM1176JZ-S'、 `ARM1176JZF-S'、`のXScale'、 `iwmmxt」、` EP9312'、のCortex-A8、のCortex-A9

 

-march =

  ARMアーキテクチャをターゲットにしています。ターゲットプロセッサアーキテクチャ。

 `armv2' 、` armv2a ' `armv3' 、` armv3m'、 `ARMV4' 、` ARMV4T ' `のARMv5' 、` ARMV5T'、 `ARMv5TE以降 '`のARMv6' 、 `armv6j'、` iwmmxt」、 `EP9312 」。ARMv7-等。

転載:http://blog.sina.com.cn/s/blog_602f87700100kaa3.html

 

アーキテクチャ プロセッサ・ファミリ
ARMv1 ARM1
ARMv2 ARM2、  ARM3
ARMv3 ARM6、  ARM7
ARMv4の StrongARM、  ARM7TDMI、  ARM9 TDMI
ARMv5以降 ARM7EJ、  ARM9E、  ARM10E、  のXScale
ARMv6の ARM11、  ARMのCortex-M
ARMv7 ARMのCortex-A、  ARMのCortex-M、  ARMのCortex-R
ARMv8  

親指

新しいARMプロセッササムと呼ばれる16ビット命令モードは、おそらく、各条件式の操作命令に関連する4つの状況が消費されます。Thumbモード、小さいオペコードが少ない機能を持っています。たとえば、唯一の支店は、条件式とすることができ、多くのオペコードは、CPUレジスタのすべてにアクセスすることはできません。一部の操作は、より多くの命令を必要としていても、:しかし、短いオペコードは、(コードがメモリ内の占有スペースを意味します)より全体的なコード密度を提供します。特にポートまたはメモリバス幅より良好より32ビットの符号性能を提供する、32以下、より短い親指オペコード限られたメモリ帯域幅のより効率的な使用の場合に限定されます。わずか32ビットデータパスおよび他のアドレッシング範囲が狭くアドレス16ビット(例えば、有する典型的な埋め込まれたハードウェア事前にゲームボーイを)。この場合、プログラムは、一般的に生存可能なThumbコードにコンパイルされ、そしてそれらは限られた32ビットのバス幅を置くことができるように、独自のCPU命令セットのプログラム領域32に関連するいくつかの(非親指)の使用を最適化しますメモリ。

親指のプロセッサの第一の技術は、ARM7TDMIを提供します。すべてのARM9を含む以降の家族、のXScaleは、親指の技術が含まれています。

Jazelle

ARMはまた、技術開発のJazelle DBX  彼らはいくつかのアーキテクチャ上で高速に実行することができ、(直接バイトコード実行を)Javaバイトコードをちょうどあなたがバイトコードに特別なソフトウェアをサポートしていない番号を呼び出すときのような他の動作モードとして、提供することができます特定のバイトコードの動作を加速します。これは、既存のARMとThumbモードで互いの間で実行されます。

「J」の名前は、CPUにマーク文字にのJazelle:プロセッサの最初の技術はのJazelle「ARM7EJ-S」を提供しています。携帯電話メーカーは、実行加速できるようにするために使用されたJava MEの開発を続けてゲームやアプリケーションを、ひいては技術に貢献しました。

Thumb-2の

Thumb-2の技術は、最初の「ARM1156コア」に登場し、2003年に発表しました。Thumb-2の命令が広く設定されるように、16ビットThumb命令セットは32ビット命令の追加の使用に制限されて延びています。したがっては、Thumb-2を標的とほぼThumbコードの密度に到達することであるが、メモリ32に設定されたARM命令近傍特性を示すことができます。

Thumb-2のこれまでビットバー操作、動作条件、及び分岐テーブル構築機能を含む命令の様々な由来するARMおよびThumb命令セット、から。

親指実行環境(トThumbEE)

トThumbEEは、また、親指-2EEとして知られている、として知られている業界のJazelle RCTの 2005年に発表された技術は、最初に「のCortex-A8」プロセッサに登場しました。トThumbEEは、命令コード生成器(例えば、の運用段階のために特に適していることが設定されるように、動作環境、親指-2からスケーラビリティの数から供給された時間コンパイラ)。親指2EEのような言語の数のために設計されてリンボジャワ、C PerlのPythonの、および可能リアルタイムコンパイラが出力小さく、性能に影響を与えることなく、コードをコンパイルすることができます。

、提供トThumbEE新機能は、自動的に含めて、各アクセス・コマンドが無効なポインタでチェックし、配列の境界は、命令を実行することができ確認し、頻繁に呼び出されるコードの小さな部分を含む分類器、に分岐することができます一般的なメモリ構成を行うための新しいオブジェクトのような高レベルの言語機能を実装するために使用。

アドバンストSIMD(NEON)

アドバンストSIMD拡張セット、64ビットおよび128ビットの組み合わせである「NEON」技術、などの業界の単一命令多数のマルチメディア信号処理手順について標準化を促進する能力を有する命令(SIMD)のセット。NEONは、10MHzのプロセッサ上で実行することができるMP3のオーディオデコーダ、13 MHz以下で実行できる適応マルチレート音声圧縮符号化。NEONは、独立して、命令セット、各レジスタアレイ、およびハードウェア実行の広範なセットを有します。NEONは、8、16及び64ビットの単精度浮動小数点および整数データをサポートし、単一命令複数モード動作の数、音声及び映像にグラフィックス及びゲーム処理部を実行します。単一命令複数命令セットベクトルプロセッサスーパー同時処理の数を含んで決定的な要素です。NEONの技術では、SIMD 16が同時に操作を作りました。

VFP

VFP(ベクトル浮動小数点)は、ARMアーキテクチャのコプロセッサ技術で導出されます。これは、低コストの単精度および倍精度浮動小数点能力を提供し、と完全に互換性がバイナリ浮動小数点演算のためのANSI / IEEE規格754-1985規格VFPは、PDA、スマートフォン、音声圧縮及び解凍、3D画像とデジタルオーディオ、プリンタ、セットトップボックス、および自動車用途などのほとんどの用途に適した浮動小数点演算を提供します。VFPアーキテクチャはまた、短い命令ベクトルのSIMD並列動作をサポートします。この画像信号処理アプリケーションは、非常に役に立つコードサイズを低減し、出力効率を増加させます。

ARMベースのプロセッサ、他の目に見える浮動小数点、またはSIMDコプロセッサは、さらに、FPA、FPE含むiWMMXtをVFPは、彼らが同様の機能を提供しますが、オペコードは、互換性のレベルではありません。

http://zh.wikipedia.org/wiki/ARM%E6%9E%B6%E6%A7%8B

ます。https://www.cnblogs.com/QuLory/archive/2012/10/23/2735142.htmlで再現

おすすめ

転載: blog.csdn.net/weixin_33939380/article/details/93154341