狠狠撸

狠狠撸Share a Scribd company logo
プログラマーのため
                のARM CPU概論
                  第7回関東Qt勉強会




11年11月26日土曜日
アジェンダ


               ?ARM CPUの概要

                ? Cortex-Mシリーズ

                ? Cortex-Aシリーズ

               ?Linaroの概要

11年11月26日土曜日
Please Follow Me
                  @himamura
                     ?基本的にハード屋さんです
                     ?組み込み系です
                     ?Linaro倶楽部
                     ?関東Qt勉強会
                     ?関東MeeGo勉強会

11年11月26日土曜日
アジェンダ


               ?ARM CPUの概要

                ? Cortex-Mシリーズ

                ? Cortex-Aシリーズ

               ?Linaroの概要

11年11月26日土曜日
础搁惭アーキテクチャ
                                                    ARM v7-A             Cortex-A15

                                                                   Cortex-A9

                                                           Cortex-A8
                                    ARM v6                               ン
                                                                        ョ
                                                 ARM11 MPCore       シ
                                                                   ー
                                           ARM1176JZ(F)-S      ケ
                                                             リ
                                       ARM1136J(F)-S
                                                           プ           Cortex-A5
                                                         ア
                                              ARM1156T2(F)-S

               ARM v5                               ARM v7-R
                                ARM1026EJ-S
                                                             Cortex-R4F
                                                         Cortex-R4 イム
                                    ARM926E-S                   ア ルタ
                                                               リ
                        ARM968E-S
                           ARM946E-S
                                                        マイクロコントローラ
                                                    ARM v7-M          Cortex-M4
  ARM v4
                                                      Cortex-M3    SC300
                                                    ARM v6-M
        ARM7TDMI        SC100                                              SC000
                                                       Cortex-M1       Cortex-M0

11年11月26日土曜日
アジェンダ


               ?ARM CPUの概要

                ? Cortex-Mシリーズ

                ? Cortex-Aシリーズ

               ?Linaroの概要

11年11月26日土曜日
ARM MCUの主力Cortex-M3

           高性能MCU
               1.25 DMIPS/MHz
           すべてC言語で記述できる
               Thumb-2, 16/32ビット混在のハイブリッドな命令セット
           柔軟なコンフィギュレーションが可能
               ネスト可能なベクタ割り込みコントローラ(NVIC)
               洗練されたデバッグとトレース対応
           スリープモードによる省電力が可能
           実績あるMCUコア
               2004年に発表
               世界中での実績


11年11月26日土曜日
デジタル信号処理への展开颁辞谤迟别虫-惭4

           これまでのCortex-MとDSP機能を一つのコアに
           統合
               既存のCortex-Mの技術、機能、利点をすべて活用
          信号処理技術への差別要因を加える? DSP、
          SIMD、浮動小数点
               ひとつの開発ツールで利用できる

                   従来のCortex-M3             信号処理要素
                     使いやすい        Cortex   シングルサイクルMAC
                      高性能                    統合したSIMD
                     低消費電力         M4         浮動小数点




11年11月26日土曜日
下位のコアを包含する命令セット




11年11月26日土曜日
OMAP5の中のCortex-M4




11年11月26日土曜日
アジェンダ


               ?ARM CPUの概要

                ? Cortex-Mシリーズ

                ? Cortex-Aシリーズ

               ?Linaroの概要

11年11月26日土曜日
11年11月26日土曜日
础搁惭インストラクションセットの进化

                                         Cortex
                                     Thumb-EE


                                      VFPv3
                          ARM11
                                      NEON
                                     Adv SIMD

                         Thumb-2


               ARM9      TrustZone
               ARM10
                          SIMD

               VFPv2

               Jazelle                          Thumb-2 Only

                 V4        V5           V6          V6
                 V5        V6         V7-A/R       V7-M


11年11月26日土曜日
颁辞谤迟别虫-础8/础9の特徴

                    特徴                          利点
                       メディアと信号を高速処理することにより、特定アプリケーション
     NEON メディア?プロセシング?
                       向けの性能を高め、アプリケーション?ソフトウェアの開発とサ
            エンジン
                       ポートを統合する利便性を提供
                                 単精度と倍精度のスカラ浮動小数点演算を大幅に高速化します。ま
               浮动小数点ユニット         た、従来のARM FPU の2 倍の性能により、業界をリードする画
                                 像処理、グラフィックス、科学技術計算機能を提供

                                 従来の ARM コードのピーク性能を提供しつつ、命令の保存に必要
           Thumb2テクノロジー
                                 なメモリを最大30%縮小


                                 デジタル著作権管理から電子決済まで、多様なセキュリティ?アプ
         TrustZoneテクノロジー
                                 リケーションの信頼性高い実装を保証


                                 バイト?コード言語のJIT、AOT コンパイルにおいてコード?サイ
               Jazelle RCT、DBX
                                 ズを3 分の1まで縮小すると同時に、Java 命令の直接バイト?
                  テクノロジー
                                 コード実行によって従来の仮想マシンでの高速処理に対応



11年11月26日土曜日
高いメモリ効率罢丑耻尘产2命令

        データの有効利用/
        効率的なアクセス
       アンアラインドデータをコアが
       サポート
       パックした構造体を容易に扱う
       事ができる
       データ領域を有効に利用
        コードサイズが小さ
        い
       コード密度の高いThumb-2命令
       セット
       ARM7のThumb命令の上位互換
       16ビット長と32ビット長の命令
       を混在
       実行モードの切り替えが不要




11年11月26日土曜日
浮动小数点ユニット
           ? 高性能な単精度、倍精度浮動小数点命令を提供
           ? これらの命令は、ARM VFPv3アーキテクチャとの互換性を持ち、先行世
             代のARM浮動小数点コプロセッサともソフトウェア互換
           ? IEEE-754 完全準拠の浮動小数点に対応し、初めて従来の「ランファス
             ト」モードと同じ速度で動作
           ? トラップ例外がないため、ソフトウェアが簡素化され、浮動小数点コード
             の性能がさらに高くなる
           ? ARM Mali?グラフィックス?プロセッサなどの組み込み3D プロセッサと
             のインタラクションを強化するため、16 ビットの浮動小数点データ型変換
             を行う命令も追加されている
           ? 先行世代の ARM 浮動小数点コプロセッサに比べ、平均2 倍以上の浮動小
             数点性能を提供する
           ? Cortex-A9 FPU は、高度なグラフィックス、3D、イメージング、科学技
             術計算を使用する各種ソリューションを大幅に強化する


11年11月26日土曜日
狈贰翱狈(メディア?プロセシング?エンジン)

        ? Cortex-A8 プロセッサに最初に導入されたARM NEON Advanced SIMD
          命令セットの実装により、メディア処理および信号処理機能を高速実行
        ? MPE は、Cortex-A9 プロセッサの浮动小数点ユニット(FPU)を拡張するも
          ので、4 個のMAC および64 ビット、128 ビット?レジスタ?セットの追
          加により、8、16、32 ビット整数、32 ビット浮動小数点のデータ量につい
          て毎サイクル、豊富なSIMD 演算を実行
        ? SIMD 機能を高める特長として、このMPE は、Fused データ型に対応して
          いるためにパッキング/アンパッキングのオーバヘッドがなく、ストラク
          チャード?ロード/ストア機能によってアルゴリズム形式とマシン形式の間
          のデータ?シャッフルが無い
        ? MPE の使用により、FPU が使えるレジスタ?ファイルも大きくなり、設計
          は32 個の倍精度レジスタをサポートできることになる
        ? 32/64 ビット?スカラ浮動小数点およびコア整数演算性能はそのまま




11年11月26日土曜日
オープンソースでのNEON




11年11月26日土曜日
11年11月26日土曜日
狈贰翱狈が无い有名な颁笔鲍




               Tegra2
11年11月26日土曜日
11年11月26日土曜日
11年11月26日土曜日
11年11月26日土曜日
11年11月26日土曜日
アジェンダ


               ?ARM CPUの概要

                ? Cortex-Mシリーズ

                ? Cortex-Aシリーズ

               ?Linaroの概要

11年11月26日土曜日
11年11月26日土曜日
LinuxベースのディストリビューションとSoC




11年11月26日土曜日
Linaroの作業範囲




11年11月26日土曜日
Linaroのエンジニアユニット




11年11月26日土曜日
Linaroの立ち位置




11年11月26日土曜日
Linaroのロードマップ




11年11月26日土曜日
Linaroのロードマップ




11年11月26日土曜日
Abobe FlashとAIRのサポート




11年11月26日土曜日
HTML5




11年11月26日土曜日
CSSとSMPのロードマップ




11年11月26日土曜日
OESFによるLinaro Android




11年11月26日土曜日
Linaro 11.10 Ubuntu

   * This month Linaro Ubuntu LEB images are based on Ubuntu 11.10 (Oneiric)
   featuring the latest and greatest Unity 3D experience ported to OpenGL ES by the
   Linaro Graphics Working Group. Note that this is one month ahead of plan and a
   remarkable achievement of the Developer Platform Team with support from the
   whole Linaro engineering organization.

   * The Graphics Working Group has integrated GLEW with OpenGL ES support
   on Ubuntu 11.10 images. It is packaged and available at the Linaro Overlay PPA.

   * After a few month of investment into libjpeg-turbo optimization by the Multimedia
   Working Group, the recently started libpng effort carried
   successes this month and an initial component release of libpng 1.5 with a first set
   of ARM optimization is included in this release. PNG is a key
   building block of web browsing technology and improvements will be a
   direct benefit for usability in todays ARM based products.

   The Ubuntu-based images consist of two parts. The first part is a hardware pack,
   which can be found under the hwpacks directory and contains hardware
   specific packages (such as the kernel and bootloader). The second part is the rootfs,
   which is combined with the hardware pack to create a complete
   image. For more information on how to create an image please see:
    http://wiki.linaro.org/Platform/DevPlatform/Ubuntu/ImageInstallation


11年11月26日土曜日
ご清聴ありがとうございました。


                    Q&A



11年11月26日土曜日

More Related Content

第7回関东辩迟勉强会

  • 1. プログラマーのため のARM CPU概論 第7回関東Qt勉強会 11年11月26日土曜日
  • 2. アジェンダ ?ARM CPUの概要 ? Cortex-Mシリーズ ? Cortex-Aシリーズ ?Linaroの概要 11年11月26日土曜日
  • 3. Please Follow Me @himamura ?基本的にハード屋さんです ?組み込み系です ?Linaro倶楽部 ?関東Qt勉強会 ?関東MeeGo勉強会 11年11月26日土曜日
  • 4. アジェンダ ?ARM CPUの概要 ? Cortex-Mシリーズ ? Cortex-Aシリーズ ?Linaroの概要 11年11月26日土曜日
  • 5. 础搁惭アーキテクチャ ARM v7-A Cortex-A15 Cortex-A9 Cortex-A8 ARM v6 ン ョ ARM11 MPCore シ ー ARM1176JZ(F)-S ケ リ ARM1136J(F)-S プ Cortex-A5 ア ARM1156T2(F)-S ARM v5 ARM v7-R ARM1026EJ-S Cortex-R4F Cortex-R4 イム ARM926E-S ア ルタ リ ARM968E-S ARM946E-S マイクロコントローラ ARM v7-M Cortex-M4 ARM v4 Cortex-M3 SC300 ARM v6-M ARM7TDMI SC100 SC000 Cortex-M1 Cortex-M0 11年11月26日土曜日
  • 6. アジェンダ ?ARM CPUの概要 ? Cortex-Mシリーズ ? Cortex-Aシリーズ ?Linaroの概要 11年11月26日土曜日
  • 7. ARM MCUの主力Cortex-M3 高性能MCU 1.25 DMIPS/MHz すべてC言語で記述できる Thumb-2, 16/32ビット混在のハイブリッドな命令セット 柔軟なコンフィギュレーションが可能 ネスト可能なベクタ割り込みコントローラ(NVIC) 洗練されたデバッグとトレース対応 スリープモードによる省電力が可能 実績あるMCUコア 2004年に発表 世界中での実績 11年11月26日土曜日
  • 8. デジタル信号処理への展开颁辞谤迟别虫-惭4 これまでのCortex-MとDSP機能を一つのコアに 統合 既存のCortex-Mの技術、機能、利点をすべて活用 信号処理技術への差別要因を加える? DSP、 SIMD、浮動小数点 ひとつの開発ツールで利用できる 従来のCortex-M3 信号処理要素 使いやすい Cortex シングルサイクルMAC 高性能 統合したSIMD 低消費電力 M4 浮動小数点 11年11月26日土曜日
  • 11. アジェンダ ?ARM CPUの概要 ? Cortex-Mシリーズ ? Cortex-Aシリーズ ?Linaroの概要 11年11月26日土曜日
  • 13. 础搁惭インストラクションセットの进化 Cortex Thumb-EE VFPv3 ARM11 NEON Adv SIMD Thumb-2 ARM9 TrustZone ARM10 SIMD VFPv2 Jazelle Thumb-2 Only V4 V5 V6 V6 V5 V6 V7-A/R V7-M 11年11月26日土曜日
  • 14. 颁辞谤迟别虫-础8/础9の特徴 特徴 利点 メディアと信号を高速処理することにより、特定アプリケーション NEON メディア?プロセシング? 向けの性能を高め、アプリケーション?ソフトウェアの開発とサ エンジン ポートを統合する利便性を提供 単精度と倍精度のスカラ浮動小数点演算を大幅に高速化します。ま 浮动小数点ユニット た、従来のARM FPU の2 倍の性能により、業界をリードする画 像処理、グラフィックス、科学技術計算機能を提供 従来の ARM コードのピーク性能を提供しつつ、命令の保存に必要 Thumb2テクノロジー なメモリを最大30%縮小 デジタル著作権管理から電子決済まで、多様なセキュリティ?アプ TrustZoneテクノロジー リケーションの信頼性高い実装を保証 バイト?コード言語のJIT、AOT コンパイルにおいてコード?サイ Jazelle RCT、DBX ズを3 分の1まで縮小すると同時に、Java 命令の直接バイト? テクノロジー コード実行によって従来の仮想マシンでの高速処理に対応 11年11月26日土曜日
  • 15. 高いメモリ効率罢丑耻尘产2命令 データの有効利用/ 効率的なアクセス アンアラインドデータをコアが サポート パックした構造体を容易に扱う 事ができる データ領域を有効に利用 コードサイズが小さ い コード密度の高いThumb-2命令 セット ARM7のThumb命令の上位互換 16ビット長と32ビット長の命令 を混在 実行モードの切り替えが不要 11年11月26日土曜日
  • 16. 浮动小数点ユニット ? 高性能な単精度、倍精度浮動小数点命令を提供 ? これらの命令は、ARM VFPv3アーキテクチャとの互換性を持ち、先行世 代のARM浮動小数点コプロセッサともソフトウェア互換 ? IEEE-754 完全準拠の浮動小数点に対応し、初めて従来の「ランファス ト」モードと同じ速度で動作 ? トラップ例外がないため、ソフトウェアが簡素化され、浮動小数点コード の性能がさらに高くなる ? ARM Mali?グラフィックス?プロセッサなどの組み込み3D プロセッサと のインタラクションを強化するため、16 ビットの浮動小数点データ型変換 を行う命令も追加されている ? 先行世代の ARM 浮動小数点コプロセッサに比べ、平均2 倍以上の浮動小 数点性能を提供する ? Cortex-A9 FPU は、高度なグラフィックス、3D、イメージング、科学技 術計算を使用する各種ソリューションを大幅に強化する 11年11月26日土曜日
  • 17. 狈贰翱狈(メディア?プロセシング?エンジン) ? Cortex-A8 プロセッサに最初に導入されたARM NEON Advanced SIMD 命令セットの実装により、メディア処理および信号処理機能を高速実行 ? MPE は、Cortex-A9 プロセッサの浮动小数点ユニット(FPU)を拡張するも ので、4 個のMAC および64 ビット、128 ビット?レジスタ?セットの追 加により、8、16、32 ビット整数、32 ビット浮動小数点のデータ量につい て毎サイクル、豊富なSIMD 演算を実行 ? SIMD 機能を高める特長として、このMPE は、Fused データ型に対応して いるためにパッキング/アンパッキングのオーバヘッドがなく、ストラク チャード?ロード/ストア機能によってアルゴリズム形式とマシン形式の間 のデータ?シャッフルが無い ? MPE の使用により、FPU が使えるレジスタ?ファイルも大きくなり、設計 は32 個の倍精度レジスタをサポートできることになる ? 32/64 ビット?スカラ浮動小数点およびコア整数演算性能はそのまま 11年11月26日土曜日
  • 20. 狈贰翱狈が无い有名な颁笔鲍 Tegra2 11年11月26日土曜日
  • 25. アジェンダ ?ARM CPUの概要 ? Cortex-Mシリーズ ? Cortex-Aシリーズ ?Linaroの概要 11年11月26日土曜日
  • 37. Linaro 11.10 Ubuntu * This month Linaro Ubuntu LEB images are based on Ubuntu 11.10 (Oneiric) featuring the latest and greatest Unity 3D experience ported to OpenGL ES by the Linaro Graphics Working Group. Note that this is one month ahead of plan and a remarkable achievement of the Developer Platform Team with support from the whole Linaro engineering organization. * The Graphics Working Group has integrated GLEW with OpenGL ES support on Ubuntu 11.10 images. It is packaged and available at the Linaro Overlay PPA. * After a few month of investment into libjpeg-turbo optimization by the Multimedia Working Group, the recently started libpng effort carried successes this month and an initial component release of libpng 1.5 with a first set of ARM optimization is included in this release. PNG is a key building block of web browsing technology and improvements will be a direct benefit for usability in todays ARM based products. The Ubuntu-based images consist of two parts. The first part is a hardware pack, which can be found under the hwpacks directory and contains hardware specific packages (such as the kernel and bootloader). The second part is the rootfs, which is combined with the hardware pack to create a complete image. For more information on how to create an image please see: http://wiki.linaro.org/Platform/DevPlatform/Ubuntu/ImageInstallation 11年11月26日土曜日
  • 38. ご清聴ありがとうございました。 Q&A 11年11月26日土曜日