Comments
Description
Transcript
Cortex-A9 テクニカルリファレンス マニュアル
Cortex -A9 ™ リ ビ ジ ョ ン : r2p2 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル Copyright © 2008-2010 ARM. All rights reserved. ARM DDI 0388FJ (ID013111) Cortex-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル Copyright © 2008-2010 ARM. All rights reserved. リ リ ース情報 本書には次の変更が加え ら れてい ます。 改訂履歴 日付 変更箇所 公開の有無 変更内容 2008 年 3 月 31 日 A 公開 r0p0 用の最初の リ リ ース 2008 年 7 月 8 日 B 公開版、 限定ア ク セ ス r0p1 用の最初の リ リ ース 2008 年 12 月 17 日 C 公開版、 限定ア ク セ ス r1p0 用の最初の リ リ ース 2009 年 9 月 30 日 D 公開版、 限定ア ク セ ス r2p0 用の最初の リ リ ース 2009 年 11 月 27 日 E 公開 r2p0 用の 2 番目の リ リ ース 2010 年 4 月 30 日 F 公開 r2p2 用の最初の リ リ ース 著作権 ま たは ™ の付いた用語 と ロ ゴは、 本著作権条項で特に明記 さ れていない限 り 、 EU お よ び他諸国におけ る ARM® の登録商標ま たは商標です。 本書に記載 さ れてい る 他の商標その他の名前は、 対応す る 所有者の商 標の場合があ り ます。 ® 本書に記載 さ れてい る 情報の全部ま たは一部、 な ら びに本書で紹介す る 製品は、 著作権所有者の文書に よ る 事前の許可を得ない限 り 、 転用 ・ 複製す る こ と を禁 じ ます。 本書に説明 さ れてい る 製品は、 継続的に開発 と 改良が行われてい ます。 本書で言及 さ れてい る 製品 と その 利用方法に関す る 記載事項について、 ARM は保証 し ません。 し たが っ て当社では、 製品の商品性ま たは 目的への適合性を含め、 黙示的 ・ 明示的に関係な く 一切の保証を行い ません。 本書は、 本製品の利用者をサポー ト す る こ と だけ を目的 と し てい ます。 本書に記載 さ れてい る 情報の使 用、 情報の誤 り ま たは省略、 あ る いは本製品の誤使用に よ っ て発生 し たいかな る 損失や損害について も 、 ARM は一切責任を負い ません。 本書におけ る ARM と い う 用語は、 「ARM、 ま たは該当す る 場合にはその子会社を含む」 と い う 意味で使 用 さ れてい ます。 機密保持ス テー タ ス 本書は非機密扱いであ り 、 本書を使用、 複製、 お よ び開示す る 権利は、 ARM お よ び ARM が本書を提供 し た当事者 と の間で締結 し た契約の条項に基づいた ラ イ セ ン ス の制限に よ り 異な り ます。 製品ス テー タ ス 本書の情報は最終版であ り 、 開発済み製品に対応 し てい ます。 Web ア ド レ ス http://www.arm.com ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential ii 目次 Cortex-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル 序章 本書について ................................................................................................ xii 表記規則 ...................................................................................................... xiv 参照資料 ....................................................................................................... xv ご意見 ・ ご質問 ........................................................................................... xvii 第1章 は じ めに 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 第2章 機能の説明 2.1 2.2 2.3 2.4 2.5 第3章 機能について .............................................................................................. 2-2 イ ン タ フ ェ ース ........................................................................................... 2-4 ク ロ ッ ク と リ セ ッ ト ................................................................................... 2-6 電力管理 ................................................................................................... 2-10 使用制限 ................................................................................................... 2-15 プ ログ ラ マ モデル 3.1 3.2 3.3 ARM DDI 0388FJ ID013111 Cortex-A9 プ ロ セ ッ サについて .................................................................. 1-2 Cortex-A9 のバ リ ア ン ト ............................................................................. 1-4 準拠性 ......................................................................................................... 1-5 機能 ............................................................................................................. 1-6 イ ン タ フ ェ ース ........................................................................................... 1-7 構成可能なオプ シ ョ ン ................................................................................ 1-8 テ ス ト 機能 .................................................................................................. 1-9 製品説明書、 設計フ ロー、 アーキテ ク チ ャ ............................................. 1-10 製品 リ ビ ジ ョ ン ......................................................................................... 1-13 プ ログ ラ マモデルについて ......................................................................... 3-2 ThumbEE アーキテ ク チ ャ .......................................................................... 3-3 ア ド バン ス ト SIMD アーキテ ク チ ャ .......................................................... 3-4 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential iii 3.4 3.5 3.6 3.7 3.8 第4章 デバ ッ グ イ ン タ フ ェ ースについて ............................................................ 10-2 Cortex-A9 デバ ッ グ イ ン タ フ ェ ースについて ........................................... 10-4 デバ ッ グレ ジ ス タ の説明 .......................................................................... 10-7 デバ ッ グ管理レ ジ ス タ ............................................................................ 10-13 外部デバ ッ グ イ ン タ フ ェ ース ................................................................. 10-16 パ フ ォ ーマ ン ス監視ユニ ッ ト について .................................................... 11-2 PMU 管理レ ジ ス タ ................................................................................... 11-3 パ フ ォ ーマ ン ス監視イ ベ ン ト ................................................................... 11-7 信号の説明 A.1 A.2 A.3 ARM DDI 0388FJ ID013111 プ リ ロー ド エ ン ジ ン について ..................................................................... 9-2 PLE 制御レ ジ ス タ の説明 ............................................................................ 9-3 PLE 操作 ..................................................................................................... 9-4 パフ ォ ーマ ン ス監視ユニ ッ ト 11.1 11.2 11.3 付録 A Cortex-A9 のレ ベル 2 イ ン タ フ ェ ース ....................................................... 8-2 レ ベル 2 メ モ リ イ ン タ フ ェ ースへのア ク セスの最適化 ............................. 8-7 STRT 命令 .................................................................................................. 8-9 デバ ッ グ 10.1 10.2 10.3 10.4 10.5 第 11 章 レ ベル 1 メ モ リ シ ス テムについて ............................................................. 7-2 セキ ュ リ テ ィ 拡張機能のサポー ト .............................................................. 7-4 レ ベル 1 命令側 メ モ リ シ ス テムについて ................................................... 7-5 レ ベル 1 デー タ 側 メ モ リ シ ス テムについて ............................................... 7-8 DSB について ............................................................................................. 7-9 デー タ のプ リ フ ェ ッ チ .............................................................................. 7-10 パ リ テ ィ エ ラ ーのサポー ト ...................................................................... 7-11 プ リ ロー ド エ ン ジ ン 9.1 9.2 9.3 第 10 章 6-2 6-4 6-6 6-7 6-8 レ ベル 2 メ モ リ イ ン タ フ ェ ース 8.1 8.2 8.3 第9章 MMU について ............................................................................................ TLB の構成 ................................................................................................. メ モ リ ア ク セス シーケ ン ス ....................................................................... MMU の稼働または非稼働 .......................................................................... 外部アボー ト .............................................................................................. レ ベル 1 メ モ リ シ ス テム 7.1 7.2 7.3 7.4 7.5 7.6 7.7 第8章 コ プ ロ セ ッ サ CP14 について ..................................................................... 5-2 CP14 Jazelle レ ジス タ の概要 .................................................................... 5-3 CP14 Jazelle レ ジス タ の詳細 .................................................................... 5-4 メ モ リ 管理ユニ ッ ト 6.1 6.2 6.3 6.4 6.5 第7章 シ ス テム制御について ................................................................................ 4-2 レ ジ ス タ の概要 .......................................................................................... 4-3 レ ジ ス タ の説明 .......................................................................................... 4-8 Jazelle DBX レ ジ ス タ 5.1 5.2 5.3 第6章 3-5 3-6 3-7 3-8 3-9 シ ス テム制御 4.1 4.2 4.3 第5章 セキ ュ リ テ ィ 拡張機能アーキテ ク チ ャ ...................................................... マルチ プ ロ セ ッ シ ン グ拡張機能 ................................................................. Jazelle 拡張機能 ......................................................................................... メ モ リ モデル .............................................................................................. Cortex-A9 プ ロ セ ッ サのア ド レ ス ............................................................... ク ロ ッ ク信号 と ク ロ ッ ク制御信号 .............................................................. A-2 リ セ ッ ト と リ セ ッ ト 制御 ............................................................................ A-3 割 り 込み ..................................................................................................... A-4 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential iv A.4 A.5 A.6 A.7 A.8 A.9 A.10 A.11 A.12 A.13 A.14 付録 B 命令サイ ク ル タ イ ミ ング B.1 B.2 B.3 B.4 B.5 B.6 付録 C 構成信号 ..................................................................................................... A-5 ス タ ンバイ信号 と イ ベン ト 待ち信号 .......................................................... A-6 電力管理信号 .............................................................................................. A-7 AXI イ ン タ フ ェ ース .................................................................................... A-8 パ フ ォ ーマ ン ス監視信号 .......................................................................... A-14 例外 フ ラ グ信号 ........................................................................................ A-17 パ リ テ ィ 信号 ............................................................................................ A-18 MBIST イ ン タ フ ェ ース ............................................................................. A-19 スキ ャ ン テ ス ト 信号 ................................................................................. A-20 外部デバ ッ グ イ ン タ フ ェ ース ................................................................... A-21 PTM イ ン タ フ ェ ース信号 ......................................................................... A-24 命令のサイ クル タ イ ミ ン グについて .......................................................... デー タ 処理命令 .......................................................................................... ロー ド / ス ト ア命令 .................................................................................... 乗算命令 ..................................................................................................... 分岐命令 ..................................................................................................... 直列化命令 .................................................................................................. B-2 B-3 B-4 B-7 B-8 B-9 リ ビジ ョ ン 用語集 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential v 表一覧 Cortex-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル 表 1-1 表 2-1 表 2-2 表 3-1 表 4-1 表 4-2 表 4-3 表 4-4 表 4-5 表 4-6 表 4-7 表 4-8 表 4-9 表 4-10 表 4-11 表 4-12 表 4-13 表 4-14 表 4-15 表 4-16 表 4-17 表 4-18 表 4-19 表 4-20 表 4-21 表 4-22 表 4-23 表 4-24 ARM DDI 0388FJ ID013111 改訂履歴 ........................................................................................................................ ii Cortex-A9 プ ロ セ ッ サの構成可能なオプ シ ョ ン ....................................................... 1-8 リ セ ッ ト モー ド ......................................................................................................... 2-7 Cortex-A9 プ ロ セ ッ サの電力モー ド ....................................................................... 2-10 プ ロ セ ッ サシス テム内のア ド レ ス タ イ プ ................................................................. 3-9 CP15 シス テム制御 コ プ ロ セ ッ サレ ジ ス タ の概要 .................................................... 4-3 c0 シ ス テム制御レ ジ ス タ ......................................................................................... 4-8 TLBTR のビ ッ ト 割 り 当て ......................................................................................... 4-9 MPIDR のビ ッ ト 割 り 当て ....................................................................................... 4-11 CCSIDR のビ ッ ト 割 り 当て .................................................................................... 4-12 CLIDR のビ ッ ト 割 り 当て ....................................................................................... 4-13 CSSELR のビ ッ ト 割 り 当て .................................................................................... 4-14 c1 シ ス テム制御レ ジ ス タ ....................................................................................... 4-15 SCTLR のビ ッ ト 割 り 当て ...................................................................................... 4-16 ACTLR のビ ッ ト 割 り 当て ...................................................................................... 4-19 CPACR のビ ッ ト 割 り 当て ...................................................................................... 4-21 SDER のビ ッ ト 割 り 当て ........................................................................................ 4-22 NSACR のビ ッ ト 割 り 当て ...................................................................................... 4-23 VCR のビ ッ ト 割 り 当て ........................................................................................... 4-25 c2 シ ス テム制御レ ジ ス タ ....................................................................................... 4-25 c3 シ ス テム制御レ ジ ス タ ....................................................................................... 4-26 c5 シ ス テム制御レ ジ ス タ ....................................................................................... 4-26 c6 シ ス テム制御レ ジ ス タ ....................................................................................... 4-26 c7 シ ス テム制御レ ジ ス タ ....................................................................................... 4-27 c8 シ ス テム制御レ ジ ス タ ....................................................................................... 4-28 c9 シ ス テム制御レ ジ ス タ ....................................................................................... 4-28 c10 シス テム制御レ ジス タ ..................................................................................... 4-29 TLB ロ ッ ク ダウン レ ジ ス タ のビ ッ ト 割 り 当て ........................................................ 4-29 c11 シス テム制御レ ジス タ ..................................................................................... 4-30 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential vi 表 4-25 表 4-26 表 4-27 表 4-28 表 4-29 表 4-30 表 4-31 表 4-32 表 4-33 表 4-34 表 4-35 表 4-36 表 4-37 表 4-38 表 4-39 表 5-1 表 5-2 表 5-3 表 5-4 表 5-5 表 5-6 表 8-1 表 8-2 表 8-3 表 8-4 表 8-5 表 8-6 表 9-1 表 10-1 表 10-2 表 10-3 表 10-4 表 10-5 表 10-6 表 10-7 表 10-8 表 10-9 表 10-10 表 10-11 表 10-12 表 10-13 表 10-14 表 11-1 表 11-2 表 11-3 表 11-4 表 11-5 表 11-6 表 11-7 表 A-1 表 A-2 表 A-3 表 A-4 表 A-5 表 A-6 表 A-7 表 A-8 表 A-9 表 A-10 表 A-11 ARM DDI 0388FJ ID013111 PLEIDR のビ ッ ト 割 り 当て ..................................................................................... 4-31 PLEASR のビ ッ ト 割 り 当て .................................................................................... 4-31 PLEFSR のビ ッ ト 割 り 当て .................................................................................... 4-32 PLEUAR のビ ッ ト 割 り 当て .................................................................................... 4-33 PLEPCR のビ ッ ト 割 り 当て .................................................................................... 4-34 c12 シス テム制御レ ジス タ ..................................................................................... 4-34 仮想化割 り 込みレ ジス タ のビ ッ ト 割 り 当て ............................................................ 4-35 c13 シス テム制御レ ジス タ ..................................................................................... 4-35 c15 シス テム制御レ ジス タ ..................................................................................... 4-36 電力制御レ ジス タ のビ ッ ト 割 り 当て ...................................................................... 4-37 NEON ビ ジーレ ジ ス タ のビ ッ ト 割 り 当て ............................................................... 4-38 TLB ロ ッ ク ダウン操作 ............................................................................................ 4-39 TLB VA レ ジ ス タ のビ ッ ト 割 り 当て ....................................................................... 4-40 TLB PA レ ジ ス タ のビ ッ ト 割 り 当て ....................................................................... 4-40 TLB 属性レ ジ ス タ のビ ッ ト 割 り 当て ...................................................................... 4-41 CP14 Jazelle レ ジス タ の概要 ................................................................................... 5-3 JIDR のビ ッ ト 割 り 当て ............................................................................................ 5-4 JOSCR のビ ッ ト 割 り 当て ........................................................................................ 5-6 JMCR のビ ッ ト 割 り 当て .......................................................................................... 5-7 Jazelle パラ メ ー タ レ ジ ス タ のビ ッ ト 割 り 当て ......................................................... 5-8 Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のビ ッ ト 割 り 当て ..................... 5-9 AXI マス タ 0 イ ン タ フ ェ ースの属性 ......................................................................... 8-2 AXI マス タ 1 イ ン タ フ ェ ースの属性 ......................................................................... 8-2 AWUSERM0[6:0] のエ ン コ ー ド ................................................................................ 8-4 ARUSERM1[6:0] のエ ン コ ー ド ................................................................................ 8-5 AWUSERM0[8:0] のエ ン コ ー ド ................................................................................ 8-5 Cortex-A9 のモー ド と AxPROT の値 ........................................................................ 8-9 PLE の新規チ ャ ネルプ ログ ラ ム操作のビ ッ ト 割 り 当て ........................................... 9-5 CP14 イ ン タ フ ェ ース レ ジ ス タ .............................................................................. 10-5 BVR と 対応する BCR ............................................................................................. 10-7 ブ レー ク ポ イ ン ト 値レ ジス タ のビ ッ ト の機能 ........................................................ 10-7 ブ レー ク ポ イ ン ト 制御レ ジス タ のビ ッ ト 割 り 当て ................................................. 10-8 BVR のビ ッ ト [22:20] の意味 ................................................................................ 10-10 WVR と 対応する WCR ......................................................................................... 10-10 ウ ォ ッ チポ イ ン ト 値レ ジス タ のビ ッ ト 機能 .......................................................... 10-11 ウ ォ ッ チポ イ ン ト 制御レ ジス タ のビ ッ ト 割 り 当て ............................................... 10-11 デバ ッ グ管理レ ジス タ .......................................................................................... 10-13 プ ロ セ ッ サ ID レ ジ ス タ ........................................................................................ 10-13 ペ リ フ ェ ラル識別レ ジス タ ................................................................................... 10-14 コ ンポーネ ン ト 識別レ ジス タ ............................................................................... 10-15 認証信号の制限 ..................................................................................................... 10-16 PMU レ ジ ス タ 名 と デバ ッ グ APB イ ン タ フ ェ ースア ド レ ス ................................ 10-18 パ フ ォ ーマ ン ス監視命令 と デバ ッ グ APB のマ ッ ピ ング ........................................ 11-2 PMU 管理レ ジ ス タ ................................................................................................. 11-3 プ ロ セ ッ サ ID レ ジ ス タ .......................................................................................... 11-3 ペ リ フ ェ ラル識別レ ジス タ ..................................................................................... 11-4 コ ンポーネ ン ト 識別レ ジス タ ................................................................................. 11-5 PMU レ ジ ス タ 名 と APB ア ド レ ス .......................................................................... 11-5 Cortex-A9 固有のイ ベン ト ...................................................................................... 11-7 Cortex-A9 のク ロ ッ ク 信号 と ク ロ ッ ク 制御信号 ....................................................... A-2 Cortex-A9 プ ロ セ ッ サの リ セ ッ ト 信号 ...................................................................... A-3 割 り 込みラ イ ン信号 .................................................................................................. A-4 構成信号 .................................................................................................................... A-5 CP15SDISABLE 信号 ............................................................................................... A-5 ス タ ンバイ信号 と イ ベン ト 待ち信号 ........................................................................ A-6 電力管理信号 ............................................................................................................ A-7 AXI Master0 の AXI-AW 信号 .................................................................................... A-8 AXI Master0 の AXI-W 信号 ...................................................................................... A-9 AXI Master0 の AXI-B 信号 ..................................................................................... A-10 AXI Master0 の AXI-AR 信号 ................................................................................... A-10 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential vii 表 A-12 表 A-13 表 A-14 表 A-15 表 A-16 表 A-17 表 A-18 表 A-19 表 A-20 表 A-21 表 A-22 表 A-23 表 A-24 表 A-25 表 A-26 表 A-27 表 A-28 表 A-29 表 B-1 表 B-2 表 B-3 表 B-4 表 B-5 表 C-1 表 C-2 表 C-3 表 C-4 表 C-5 ARM DDI 0388FJ ID013111 AXI Master0 の AXI-R 信号 ..................................................................................... A-11 AXI Master0 のク ロ ッ ク イ ネーブル信号 ................................................................ A-11 AXI Master1 の AXI-AR 信号 ................................................................................... A-12 AXI Master1 の AXI-R 信号 ..................................................................................... A-13 AXI Master1 のク ロ ッ ク イ ネーブル信号 ................................................................ A-13 パ フ ォ ーマ ン ス監視信号 ........................................................................................ A-14 イ ベン ト 信号 と イ ベン ト 番号 ................................................................................. A-14 DEFLAGS 信号 ....................................................................................................... A-17 パ リ テ ィ 信号 .......................................................................................................... A-18 MBIST イ ン タ フ ェ ース信号 .................................................................................... A-19 パ リ テ ィ サポー ト が実装 さ れている場合の MBIST 信号 ........................................ A-19 パ リ テ ィ サポー ト が実装 さ れていない場合の MBIST 信号 .................................... A-19 スキ ャ ン テ ス ト 信号 ................................................................................................ A-20 認証イ ン タ フ ェ ース信号 ........................................................................................ A-21 APB イ ン タ フ ェ ース信号 ....................................................................................... A-22 CTI 信号 .................................................................................................................. A-22 その他のデバ ッ グ信号 ............................................................................................ A-23 PTM イ ン タ フ ェ ース信号 ....................................................................................... A-24 デー タ 処理命令のサイ クル タ イ ミ ン グ ..................................................................... B-3 単一ロー ド / ス ト ア操作のサイ ク ル タ イ ミ ング ....................................................... B-4 複数ロー ド 操作のサイ クル タ イ ミ ン グ ..................................................................... B-5 複数ス ト ア操作のサイ クル タ イ ミ ン グ ..................................................................... B-6 乗算命令のサイ クル タ イ ミ ング ................................................................................ B-7 A 版 ........................................................................................................................... C-1 A 版 と B 版の相違点 ................................................................................................. C-1 B 版 と C 版の相違点 ................................................................................................. C-3 C 版 と D 版の相違点 ................................................................................................. C-4 D 版 と F 版の相違点 ................................................................................................. C-6 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential viii 図一覧 Cortex-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル 図 1-1 図 2-1 図 2-2 図 2-3 図 2-4 図 4-1 図 4-2 図 4-3 図 4-4 図 4-5 図 4-6 図 4-7 図 4-8 図 4-9 図 4-10 図 4-11 図 4-12 図 4-13 図 4-14 図 4-15 図 4-16 図 4-17 図 4-18 図 4-19 図 4-20 図 4-21 図 4-22 図 4-23 ARM DDI 0388FJ ID013111 タ イ ミ ング図の表記に使用 さ れる記号 ...................................................................... xiv Cortex-A9 ユニ プ ロ セ ッ サシ ス テム ......................................................................... 1-2 Cortex-A9 プ ロ セ ッ サの ト ッ プ レ ベル図 .................................................................. 2-2 PTM イ ン タ フ ェ ース信号 ......................................................................................... 2-4 3:1 のク ロ ッ ク 比で使用 さ れる ACLKENM0 ............................................................. 2-6 Cortex-A9 r2 設計の電力 ド メ イ ン .......................................................................... 2-14 TLBTR のビ ッ ト 割 り 当て ......................................................................................... 4-9 MPIDR のビ ッ ト 割 り 当て ....................................................................................... 4-10 CCSIDR のビ ッ ト 割 り 当て .................................................................................... 4-12 CLIDR のビ ッ ト 割 り 当て ....................................................................................... 4-13 CSSELR のビ ッ ト 割 り 当て .................................................................................... 4-14 SCTLR のビ ッ ト 割 り 当て ...................................................................................... 4-16 ACTLR のビ ッ ト 割 り 当て ...................................................................................... 4-19 CPACR のビ ッ ト 割 り 当て ...................................................................................... 4-20 SDER のビ ッ ト 割 り 当て ........................................................................................ 4-22 NSACR のビ ッ ト 割 り 当て ...................................................................................... 4-23 VCR のビ ッ ト 割 り 当て ........................................................................................... 4-25 TLB ロ ッ ク ダウン レ ジ ス タ のビ ッ ト 割 り 当て ........................................................ 4-29 PLEIDR のビ ッ ト 割 り 当て ..................................................................................... 4-30 PLEASR のビ ッ ト 割 り 当て .................................................................................... 4-31 PLEFSR のビ ッ ト 割 り 当て .................................................................................... 4-32 PLEUAR のビ ッ ト 割 り 当て .................................................................................... 4-33 PLEPCR のビ ッ ト 割 り 当て .................................................................................... 4-33 VIR のビ ッ ト 割 り 当て ............................................................................................ 4-35 電力制御レ ジス タ のビ ッ ト 割 り 当て ...................................................................... 4-37 NEON ビ ジーレ ジ ス タ のビ ッ ト 割 り 当て ............................................................... 4-37 構成ベース ア ド レ ス レ ジ ス タ のビ ッ ト 割 り 当て ................................................... 4-38 ロ ッ ク ダウン TLB イ ンデ ク スのビ ッ ト 割 り 当て ................................................... 4-39 TLB VA レ ジ ス タ のビ ッ ト 割 り 当て ....................................................................... 4-39 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential ix 図 4-24 図 4-25 図 4-26 図 5-1 図 5-2 図 5-3 図 5-4 図 5-5 図 7-1 図 7-2 図 9-1 図 10-1 図 10-2 図 10-3 図 10-4 図 10-5 ARM DDI 0388FJ ID013111 メ モ リ 空間識別子の形式 ........................................................................................ 4-40 TLB PA レ ジ ス タ のビ ッ ト 割 り 当て ....................................................................... 4-40 メ イ ン TLB 属性レ ジ ス タ のビ ッ ト 割 り 当て .......................................................... 4-41 JIDR のビ ッ ト 割 り 当て ............................................................................................ 5-4 JOSCR のビ ッ ト 割 り 当て ........................................................................................ 5-5 JMCR のビ ッ ト 割 り 当て .......................................................................................... 5-6 Jazelle パラ メ ー タ レ ジ ス タ のビ ッ ト 割 り 当て ......................................................... 5-8 Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のビ ッ ト 割 り 当て ..................... 5-9 分岐予測 と 命令キ ャ ッ シ ュ ....................................................................................... 7-5 パ リ テ ィ のサポー ト ................................................................................................ 7-11 新規チ ャ ネルプ ログ ラ ム操作のビ ッ ト 割 り 当て ...................................................... 9-5 デバ ッ グ レ ジス タ イ ン タ フ ェ ース と CoreSight イ ン フ ラ ス ト ラ ク チ ャ ................ 10-4 ブ レー ク ポ イ ン ト 制御レ ジス タ のビ ッ ト 割 り 当て ................................................. 10-8 ウ ォ ッ チポ イ ン ト 制御レ ジス タ のビ ッ ト 割 り 当て ............................................... 10-11 外部デバ ッ グ イ ン タ フ ェ ース信号 ........................................................................ 10-16 デバ ッ グ要求 と 再起動に固有の接続 .................................................................... 10-19 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential x 序章 本章では、 Cortex-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (TRM) の概要について説明 し ます。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 「本書について」 (ページ xii) • 「ご意見 ・ ご質問」 (ページ xvii) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xi 序章 本書について 本書は、 Cortex-A9 プ ロ セ ッ サ用のテ ク ニ カル リ フ ァ レ ン ス マニ ュ アルです。 製品 リ ビ ジ ョ ン ス テー タ ス rnpn 識別子は、 本書に記載 さ れてい る 製品の リ ビ ジ ョ ン ス テー タ ス を示 し てい ます。 各識別子の意味は次の と お り です。 rn 製品が大幅に修正 さ れた こ と を示 し てい ます。 pn 製品に小 さ な修正ま たは変更が加え ら れた こ と を示 し てい ます。 対象読者 本書は、 Cortex-A9 シ ス テ ム の実装に携わ る ハー ド ウ ェ ア / ソ フ ト ウ ェ アエ ン ジ ニ ア を対象に書かれてい ます。 プ ロ セ ッ サ を タ ーゲ ッ ト シ ス テ ム に統合す る ために必要 な情報を設計者に提供 し ます。 注 • Cortex-A9 プ ロ セ ッ サはシ ン グル コ ア プ ロ セ ッ サです。 • マルチプ ロ セ ッ サバ リ ア ン ト の Cortex-A9 MPCore™ プ ロ セ ッ サは、 1 つ~ 4 つの Cortex-A9 プ ロ セ ッ サ と ス ヌープ制御ユニ ッ ト (SCU) で構成 さ れてい ます。 詳 細については、 『Cortex-A9 MPCore テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参 照 し て下 さ い。 本書の構成 本書は以下の章に分かれてい ます。 第 1 章 は じ めに Cortex-A9 プ ロ セ ッ サ を紹介 し 、 主な機能ブ ロ ッ ク について説明 し ます。 第 2 章 機能の説明 Cortex-A9 の機能について説明 し ます。 第 3 章 プ ロ グ ラ マモデル Cortex-A9 の レ ジ ス タ と プ ロ グ ラ ミ ン グの詳細について説明 し ます。 第 4 章 シ ス テ ム制御 Cortex-A9 のシ ス テ ム レ ジ ス タ と プ ロ グ ラ ミ ン グの詳細について説明 し ます。 第 5 章 Jazelle DBX レ ジ ス タ CP14 コ プ ロ セ ッ サ と 、 その Jazelle DBX のデバ ッ グ以外の使用方法につ いて説明 し ます。 第 6 章 メ モ リ 管理ユニ ッ ト Cortex-A9 の メ モ リ 管理ユニ ッ ト (MMU) と 、 ア ド レ ス変換処理につい て説明 し ます。 第 7 章 レベル 1 メ モ リ シ ス テ ム キ ャ ッ シ ュ 、 変換ル ッ ク アサ イ ド バ ッ フ ァ (TLB)、 ス ト アバ ッ フ ァ を含 む、 Cortex-A9 の レベル 1 メ モ リ シ ス テ ム について説明 し ます。 第 8 章 レベル 2 メ モ リ イ ン タ フ ェース Cortex-A9 の レベル 2 メ モ リ イ ン タ フ ェ ース、 AXI イ ン タ フ ェ ース属性、 お よ び STRT 命令に関す る 情報について説明 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xii 序章 第 9 章 プ リ ロ ー ド エン ジ ン プ リ ロ ー ド エン ジ ン (PLE) と PLE 操作について説明 し ます。 第 10 章 デバ ッ グ Cortex-A9 のデバ ッ グサポー ト について説明 し ます。 第 11 章 パフ ォーマ ン ス監視ユニ ッ ト パフ ォーマン ス監視ユニ ッ ト (PMU) と 関連イベン ト について説明し ます。 付録 A 信号の説明 Cortex-A9 の信号の概要について説明 し ます。 付録 B 命令サ イ ク ル タ イ ミ ン グ Cortex-A9 の命令サ イ ク ル タ イ ミ ン グについて説明 し ます。 付録 C リ ビ ジ ョ ン 本書の各版におけ る 技術的な変更点について説明 し ます。 用語集 ARM DDI 0388FJ ID013111 本書で使用 さ れてい る 用語の定義について説明 し ます。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xiii 序章 表記規則 本書では次の表記規則が採用 さ れてい ます。 「書体の一般的な規則」 • • 「 タ イ ミ ン グ図」 • 「信号」 (ページ xv) 書体の一般的な規則 本書で使用 さ れてい る 書体の一般的な規則は次の と お り です。 斜体 重要な注釈の強調、 特別な用語の初出時、 本書内での相互参照 と 引用に使用 さ れ ます。 太字 メ ニ ュ ー名な ど の イ ン タ フ ェ ース要素を強調す る ために太字が使 用 さ れ ます。 信号名を示すために も 使用 さ れてい ます。 ま た、 必 要に応 じ て説明表の用語に も 太字が使用 さ れてい ます。 monospace コ マ ン ド 、 フ ァ イ ル名、 プ ロ グ ラ ム名、 ソ ース コ ー ド な ど の、 キーボー ド か ら 入力可能な テ キ ス ト を示 し てい ます。 monospace コ マ ン ド ま たはオプシ ョ ンに使用可能な略語を示 し てい ます。 コ マ ン ド やオプシ ョ ンの名前を全部入力す る 代わ り に、 下線部分の テ キ ス ト だけ を入力 し て こ れ ら を指定で き ます。 monospace italic 具体的な値に置 き 換え ら れ る 引数を示 し てい ます。 monospace bold サン プル コ ー ド 以外で使用 さ れてい る 場合、 言語のキー ワー ド を 示 し てい ます。 < および > コ ー ド ま たは コ ー ド 片の中で不等号の括弧で囲まれてい る 部分 は、 アセ ン ブ ラ 構文内で置 き 換え可能な こ と を示 し てい ます。 次 に例を示 し ます。 • MRC p15, 0 <Rd>, <CRn>, <CRm>, <opc2> タ イ ミ ン グ図 「 タ イ ミ ン グ図の表記に使用 さ れ る記号」 は、 タ イ ミ ン グ図で使用 さ れ る 構成要素を 示 し てい ます。 こ の図 と 異な る 意味で使用 さ れてい る 場合は、 その都度明記 し てい ます。 タ イ ミ ン グ図に明示 さ れていない タ イ ミ ン グ情報については、 推測で判断 し ないで下 さ い。 バ ス と 信号で影が付いてい る 部分は定義 さ れていないため、 その時点のバ ス と 信号 は、 影付 き の領域内の任意の値を取 り 得ます。 実際の レベルは重要ではな く 、 通常 の動作には影響 し ません。 䉪䊨䉾䉪 㪟㪠㪞㪟䈎䉌㪣㪦㪮䈻 ㆊᷰ 㪟㪠㪞㪟㪆㪣㪦㪮䈎䉌㪟㪠㪞㪟䈻 䊋䉴䈏ቯ⁁ᘒ 䊋䉴䈏㜞䉟䊮䊏䊷䉻䊮䉴䈻ㆫ⒖ 䊋䉴䈱ᄌൻ 㜞䉟䊮䊏䊷䉻䊮䉴䈎䉌ቯ⁁ᘒ䈱䊋䉴䈻 タ イ ミ ング図の表記に使用 さ れる記号 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xiv 序章 信号 信号の表記規則は次の と お り です。 信号レベル 小文字の n アサー ト さ れ る 信号レベルは、 その信号がア ク テ ィ ブ HIGH かア ク テ ィ ブ LOW かに依存 し ます。 「アサー ト さ れた」 と は、 次の状 態を意味 し ます。 • ア ク テ ィ ブ HIGH の信号が HIGH の状態 • ア ク テ ィ ブ LOW の信号が LOW の状態 ア ク テ ィ ブ LOW 信号の信号名の最初ま たは最後に付加 さ れます。 参照資料 こ のセ ク シ ョ ン では、 ARM Limited やサー ド パーテ ィ が発行 し てい る 出版物を紹介 し ます。 ARM の出版物は Infocenter , http://infocenter.arm.com で参照で き ます。 ARM の刊行物 本書には、 こ の製品に固有の情報が記載 さ れてい ます。 他の関連情報については、 以下の出版物を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 • ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル、 ARMv7-A お よ び ARMv7-R エ デ ィ シ ョ ン (ARM DDI 0406) • Cortex™-A9 MPCore テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (ARM DDI 0407) • Cortex-A9 浮動小数点 (FPU) テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (ARM DDI 0408) • Cortex-A9 NEON® メ デ ィ ア処理エン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (ARM DDI 0409) • Cortex-A9 構成お よ びサ イ ンオ フ ガ イ ド (ARM DII 00146) • Cortex-A9 MBIST コ ン ト ロ ー ラ テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (ARM DDI 0414) • CoreSight™ PTM™-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (ARM DDI 0401) • CoreSight PTM-A9 統合マニ ュ アル (ARM DII 0162) • CoreSight プ ロ グ ラ ム フ ロ ー ト レース ™ アーキ テ ク チ ャ 仕様、 v1.0、 v1.0 (ARM IHI 0035) • AMBA® レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ (L2C-310) テ ク ニ カル リ フ ァ レ ン ス マ ニ ュ アル (ARM DDI 0246) • AMBA AXI プ ロ ト コ ル v10 仕様 (ARM IHI 0022) • ARM 汎用割 り 込み コ ン ト ロ ー ラ アーキ テ ク チ ャ 仕様 (ARM IHI 0048) • PrimeCell® 汎用割 り 込み コ ン ト ロ ー ラ (PL390) テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル (ARM DDI 0416) • RealView ICE ユーザガ イ ド (ARM DUI 0155) • CoreSight アーキ テ ク チ ャ 仕様 (ARM IHI 0029) • CoreSight テ ク ノ ロ ジシ ス テ ム設計ガ イ ド (ARM DGI 0012) • ARM デバ ッ グ イ ン タ フ ェース v5 アーキ テ ク チ ャ 仕様 (ARM IHI 0031) • The ARM Cortex-A9 Processors ホ ワ イ ト ペーパー Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xv 序章 その他の刊行物 こ のセ ク シ ョ ン では、 サー ド パーテ ィ が発行 し てい る 関連出版物を紹介 し ます。 ARM DDI 0388FJ ID013111 • ANSI/IEEE Std 754-1985、 IEEE Standard for Binary Floating-Point Arithmetic • IEEE Std 1500-2005、 IEEE Standard Testability Method for Embedded Core-based Integrated Circuits Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xvi 序章 ご意見 ・ ご質問 ARM では、 本製品 と 本書に関す る ご意見をお待ち し てお り ます。 製品に関する ご意見 本製品に関す る ご意見 ・ ご質問がご ざい ま し た ら 、 次の情報 と と も に製品購入元ま で ご連絡下 さ い。 • 製品名 • 製品の リ ビ ジ ョ ン ま たはバージ ョ ン • で き る だけ詳細な説明。 該当す る 場合には、 現象 も ご記載下 さ い。 本書に関する ご意見 本書に関す る ご意見がご ざい ま し た ら 、 電子 メ ールに次の情報を ご記入の上、 [email protected] ま でお寄せ下 さ い。 • • • • 題名 資料番号、 ARM DDI 0388FJ ご意見のあ る ページ番号 ご意見についての簡潔な説明 補足ま たは改善すべ き 点についての一般的な ご意見 も お待ち し てお り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential xvii 第1章 は じ めに 本章では、 Cortex-A9 プ ロ セ ッ サ と その機能について紹介 し ます。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「Cortex-A9 プ ロ セ ッ サについて」 (ページ 1-2) 「Cortex-A9 のバ リ ア ン ト 」 (ページ 1-4) • • 「準拠性」 (ページ 1-5) 「機能」 (ページ 1-6) • 「 イ ン タ フ ェース」 (ページ 1-7) • 「構成可能なオプシ ョ ン」 (ページ 1-8) • 「テ ス ト 機能」 (ページ 1-9) • 「製品説明書、 設計フ ロ ー、 アーキ テ ク チ ャ」 (ページ 1-10) • • 「製品 リ ビ ジ ョ ン」 (ページ 1-13) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-1 は じ めに 1.1 Cortex-A9 プ ロ セ ッ サについて Cortex-A9 プ ロ セ ッ サは、 完全な仮想 メ モ リ 機能を提供す る レベル 1 キ ャ ッ シ ュ サブ シ ス テ ム を搭載 し た、 高性能で低消費電力の ARM マ ク ロ セルです。 Cortex-A9 プ ロ セ ッ サは、 ARMv7-A アーキ テ ク チ ャ を実装 し 、 32 ビ ッ ト ARM 命令、 16 ビ ッ ト お よ び 32 ビ ッ ト Thumb 命令、 お よ び Jazelle 状態での 8 ビ ッ ト Java™ バ イ ト コ ー ド を実 行 し ます。 Cortex-A9 ユニプ ロ セ ッ サ と 、 PL390 割 り 込み コ ン ト ロ ー ラ お よ び L2C-310 レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ を使用 し た設計の例を、 図 1-1 に示 し ます。 䊂䊋䉾䉫 䉟䊮䉺䊐䉢䊷䉴 䊂䊷䉺䉣䊮䉳䊮 䋨䉥䊒䉲䊢䊮䋩 㪤㪧㪜䉁䈢䈲 㪝㪧㪬 䊌䊐䉤䊷䊙䊮䉴 ⋙ⷞ䊡䊆䉾䊃 㩿㪧㪤㪬㪀 㪚㫆㫉㫋㪼㫏㪄㪘㪐 䊡䊆䊒䊨䉶䉾䉰 䊒䊥䊨䊷䊄 䉣䊮䉳䊮 䋨䉥䊒䉲䊢䊮䋩 㪘㪧㪙 䉟䊔䊮䊃 䉟䊮䉺䊐䉢䊷䉴 䊂䊷䉺 䉟䊮䉺䊐䉢䊷䉴 㪘㪤㪙㪘䊧䊔䊦㪉䉨䊞䉾䉲䊠䉮䊮䊃䊨䊷䊤㩿㪣㪉㪚㪄㪊㪈㪇㪀 㫅㪝㪠㪨 㫅㪠㪩㪨 ᳢↪ഀ䉍ㄟ䉂 䉮䊮䊃䊨䊷䊤 㩿㪞㪠㪚㪀 䊒䊨䉫䊤䊛 䊃䊧䊷䉴 䉟䊮䉺䊐䉢䊷䉴 㪚㫆㫉㪼㪪㫀㪾㪿㫋 䊃䊧䊷䉴㈩ା䉟䊮䊐䊤䉴䊃䊤䉪䉼䊞 図 1-1 Cortex-A9 ユニ プ ロ セ ッ サシ ス テム 1.1.1 デー タ エ ン ジ ン 設計にはデー タ エ ン ジ ン を含め る こ と がで き ます。 次に示すセ ク シ ョ ン では、 デー タ エ ン ジ ン オプシ ョ ンについて説明 し ます。 「 メ デ ィ ア処理エン ジ ン」 • • 「浮動小数点ユニ ッ ト 」 メ デ ィ ア処理エ ン ジ ン オプシ ョ ンの NEON メ デ ィ ア処理エン ジ ン (MPE) は、 ARMv7-A アーキ テ ク チ ャ 用の ARM ア ド バン ス ト 単一命令複数データ (SIMD) メ デ ィ ア処理エン ジ ン拡張機能です。 NEON MPE は、 整数 と 浮動小数点のベ ク タ 演算をサポー ト し 、 3 次元グ ラ フ ィ ッ ク や 画像処理な どのマルチ メ デ ィ ア アプ リ ケーシ ョ ンの性能向上に役立ち ます。 NEON MPE オプシ ョ ン を実装す る と 、 プ ロ セ ッ サの機能が拡張 さ れ、 ARMv7 ア ド バ ン ス ト SIMD お よ び VFPv3 D-32 命令セ ッ ト がサポー ト さ れます。 『Cortex-A9 NEON メ デ ィ ア処理エン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参 照 し て下 さ い。 浮動小数点ユニ ッ ト 設計にオプシ ョ ンの MPE が含ま れていない場合、 ア ド バン ス ト SIMD 拡張機能な し の ARMv7 VFPv3-D16 FPU を含め る こ と も で き ます。 こ の FPU は、 ト ラ ッ プ レ ス実 行を提供 し 、 ス カ ラ 演算に最適化 さ れてい ます。 Cortex-A9 FPU ハー ド ウ ェ アは、 非 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-2 は じ めに 推奨の VFP シ ョ ー ト ベ ク タ 機能をサポー ト し てい ません。 FPSCR.LEN フ ィ ール ド が 0 以外の と き に VFP デー タ 処理命令の実行を試み る と 、 FPSCR.DEX ビ ッ ト がセ ッ ト さ れ、 同期未定義命令例外が取得 さ れます。 必要であれば、 ソ フ ト ウ ェ アでシ ョ ー ト ベ ク タ 機能を エ ミ ュ レー ト で き ます。 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 1.1.2 シ ス テム設計 コ ンポーネ ン ト こ こ では、 図 1-1 (ページ 1-2) に示 さ れてい る PrimeCell コ ン ポーネ ン ト について 説明 し ます。 • 「PrimeCell 汎用割 り 込み コ ン ト ロ ー ラ 」 • 「AMBA レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ (L2C-310)」 PrimeCell 汎用割 り 込み コ ン ト ロー ラ PrimeCell 汎用割 り 込み コ ン ト ロ ー ラ (PL390) な ど の汎用割 り 込み コ ン ト ロ ー ラ を、 Cortex-A9 ユニプ ロ セ ッ サに接続す る こ と がで き ます。 Cortex-A9 MPCore には、 PL390 と 同 じ プ ロ グ ラ マモデルを共有す る 割 り 込み コ ン ト ロ ー ラ が内蔵 さ れてい ま すが、 細部は実装に よ っ て相違点があ り ます。 Cortex-A9 MPCore 割 り 込み コ ン ト ロ ー ラ については、 『Cortex-A9 MPCore テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 AMBA レ ベル 2 キ ャ ッ シ ュ コ ン ト ロー ラ (L2C-310) ARM ベース のシ ス テ ム で、 プ ロ セ ッ サに よ り 大量の メ モ リ ト ラ フ ィ ッ ク が生成 さ れ る 場合は、 パフ ォ ーマ ン ス改善のためにオ ンチ ッ プの 2 次キ ャ ッ シ ュ (レベル 2 キ ャ ッ シ ュ 、 ま たは L2 キ ャ ッ シ ュ と も 呼ばれ ます) を追加す る のが一般的な手法で す。 AMBA レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ は、 外部 メ モ リ へのア ク セ ス数の削減 に役立ち、 Cortex-A9 プ ロ セ ッ サや Cortex-A9 MPCore プ ロ セ ッ サで使用す る ために 最適化 さ れてい ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-3 は じ めに 1.2 Cortex-A9 のバ リ ア ン ト Cortex-A9 プ ロ セ ッ サは、 ユニプ ロ セ ッ サ構成 と マルチプ ロ セ ッ サ構成の両方で使用 で き ます。 マルチプ ロ セ ッ サ構成では、 レベル 1 デー タ キ ャ ッ シ ュ コ ヒ ーレ ン シ を維持す る ス ヌープ制御ユニ ッ ト (SCU) の制御下で、 最大 4 つの Cortex-A9 プ ロ セ ッ サ を キ ャ ッ シ ュ コ ヒ ーレ ン ト な ク ラ ス タ と し て使用で き ます。 Cortex-A9 MPCore マルチプ ロ セ ッ サには、 次の コ ン ポーネ ン ト が含まれ ます。 • 最大 4 つの Cortex-A9 プ ロ セ ッ サ • SCU。 次の機能を果た し ます。 — レベル 1 デー タ キ ャ ッ シ ュ 間での コ ヒ ーレ ン シ維持 — ア ク セ ラ レー タ コ ヒ ーレ ン シ ポー ト (ACP) の コ ヒ ーレ ン シ操作 — Cortex-A9 MPCore AXI マ ス タ イ ン タ フ ェース上での ト ラ ンザ ク シ ョ ンの ルーテ ィ ン グ — Cortex-A9 ユニプ ロ セ ッ サに よ る プ ラ イ ベー ト メ モ リ 領域へのア ク セ ス • 従来の ARM 割 り 込みを サポー ト す る 割 り 込み コ ン ト ロ ー ラ (IC) • プ ロ セ ッ サご と に 1 つのプ ラ イ ベー ト タ イ マ と プ ラ イ ベー ト ウ ォ ッ チ ド ッ グ • グ ロ ーバル タ イ マ • AXI 高速 ア ド バン ス ト マ イ ク ロ プ ロ セ ッ サ バ ス アーキ テ ク チ ャ (AMBA3) L2 イ ン タ フ ェース • ア ク セ ラ レー タ コ ヒ ーレ ン シ ポー ト (ACP)。 こ れは、 DMA エ ン ジ ン ま たは非 キ ャ ッ シ ュ 対象のペ リ フ ェ ラ ルに接続可能な、 オプシ ョ ンの AXI 64 ビ ッ ト ス レーブポー ト です。 詳細については、 『Cortex-A9 MPCore テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 次に示すシ ス テ ム レ ジ ス タ には、 Cortex-A9 MPCore 専用の使用法があ り ます。 • 「マルチプ ロ セ ッ サ類似性レ ジ ス タ 」 (ページ 4-10) 「補助制御レ ジ ス タ 」 (ページ 4-18) • • 「構成ベース ア ド レ ス レ ジ ス タ 」 (ページ 4-38) 一部の PMU イ ベン ト 信号には Cortex-A9 MPCore 専用の使用法があ り ます。 「パ フ ォーマ ン ス監視信号」 (ページ A-14) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-4 は じ めに 1.3 準拠性 Cortex-A9 プ ロ セ ッ サは、 次の よ う な機能を持つ ARMv7-A アーキ テ ク チ ャ を実装 し てい ます。 • 全体的な コ ー ド 密度が Thumb と 同程度で、 性能が ARM 命令 と 同程度の ARM Thumb®-2 32 ビ ッ ト 命令セ ッ ト アーキ テ ク チ ャ 。 ARM 命令セ ッ ト と Thumb 命 令セ ッ ト については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 • 実行環境を高速化す る ための Thumb 実行環境 (ThumbEE) アーキ テ ク チ ャ 。 ThumbEE 命令セ ッ ト については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ ア ル』 を参照 し て下 さ い。 • セキ ュ リ テ ィ を強化する ためのセキ ュ リ テ ィ 拡張機能。 セキ ュ リ テ ィ 拡張機能に ついては、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照し て下 さ い。 • 3 次元グ ラ フ ィ ッ ク や画像処理な ど のマルチ メ デ ィ ア アプ リ ケーシ ョ ン の性能 を向上 さ せ る 、 ア ド バン ス ト SIMD アーキ テ ク チ ャ 拡張機能。 ア ド バン ス ト SIMD アーキ テ ク チ ャ 拡張機能については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 実装固有の情報については、 『Cortex-A9 NEON メ デ ィ ア処理エン ジ ン テ ク ニ カ ル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 • IEEE 754 標準に完全準拠 し た浮動小数点演算機能を持つ、 ベ ク タ 浮動小数点 バージ ョ ン 3(VFPv3) アーキ テ ク チ ャ 拡張機能。 VFPv3 拡張機能については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 実装固有の情報については、 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 • ARM DDI 0388FJ ID013111 セ キ ュ リ テ ィ 拡張機能 と CoreSight のサポー ト を含む、 ARMv7 デバ ッ グ アーキ テ ク チ ャ 。 ARMv7 デバ ッ グ アーキ テ ク チ ャ については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-5 は じ めに 1.4 機能 Cortex-A9 プ ロ セ ッ サには次の よ う な機能があ り ます。 • 動的分岐予測機能を備え た スーパース カ ラ 、 可変長、 ア ウ ト オブオーダ パ イ プ ライン • ARM アーキ テ ク チ ャ v7-A 命令セ ッ ト の完全な実装 • セ キ ュ リ テ ィ 拡張機能 • メ モ リ 管理ユニ ッ ト (MMU) を備え たハーバー ド レベル 1 メ モ リ シ ス テ ム • デー タ 側バ ス用のマ ス タ 0 と 、 命令側バ ス用のマ ス タ 1 と で構成 さ れ る 、 2 つ の 64 ビ ッ ト AXI マ ス タ イ ン タ フ ェ ース • ARMv7 デバ ッ グ アーキ テ ク チ ャ プ ロ グ ラ ム ト レー ス マ ク ロ セル (PTM) イ ン タ フ ェ ー ス に よ る ト レ ー ス のサ • ポー ト • 最大 3 つの電力 ド メ イ ンに よ る 高度な電力管理のサポー ト • (オプシ ョ ン) プ リ ロ ー ド エ ン ジ ン • (オプシ ョ ン) Jazelle ハー ド ウ ェ ア ア ク セ ラ レーシ ョ ン • (オプシ ョ ン) MPE と VFPv3 を搭載 し たデー タ エ ン ジ ン ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-6 は じ めに 1.5 イ ン タ フ ェ ース プ ロ セ ッ サには次の外部 イ ン タ フ ェース があ り ます。 • AMBA AXI イ ン タ フ ェース • デバ ッ グ APBv3 外部デバ ッ グ イ ン タ フ ェ ース を含む、 v7 準拠のデバ ッ グ イ ン タ フ ェ ース • DFT こ れ ら の イ ン タ フ ェ ース の詳細については、 『AMBA AXI プ ロ ト コ ル仕様』、 『CoreSight アーキ テ ク チ ャ 仕様』、 『Cortex-A9 MBIST コ ン ト ロ ー ラ テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-7 は じ めに 構成可能なオプ シ ョ ン 1.6 Cortex-A9 プ ロ セ ッ サの構成可能なオプシ ョ ン を、 表 1-1 に示 し ます。 表 1-1 Cortex-A9 プ ロ セ ッ サの構成可能なオプ シ ョ ン 機能 選択可能な範囲 デ フ ォル ト 値 命令キ ャ ッ シ ュ サ イ ズ 16KB、 32KB、 64KB 32KB デー タ キ ャ ッ シ ュ サ イ ズ 16KB、 32KB、 64KB 32KB TLB のエン ト リ 数 64 エン ト リ ま たは 128 エン トリ 128 エン ト リ Jazelle アーキテ ク チ ャ 拡張機能 フルま たは ト リ ビ アル フル NEON テ ク ノ ロ ジ を搭載 し た メ デ ィ ア処理エン ジ ン あ り ま たはな し a なし FPU あ り ま たはな し a PTM イ ン タ フ ェース あ り ま たはな し 電源オ フ / 休眠モー ド 用の ラ ッ パ あ り ま たはな し パ リ テ ィ エ ラ ー検出のサポー ト - プ リ ロ ー ド エン ジ ン あ り ま たはな し プ リ ロ ー ド エン ジ ンの FIFO サ イ ズ b 16、 8、 ま たは 4 エン ト リ 16 エン ト リ ARM_BIST あ り ま たはな し あり デザ イ ン ウ ェ アの使用 使用ま たは未使用 使用 こ の機能を含め る か ど う かは、 構 成 と 設計に よ り 決定 さ れます。 a. MPE オプシ ョ ン と FPU RTL オプシ ョ ンは相互排他的です。 MPE オプシ ョ ン を選択 し た場合は、 MPE が VFPv3-D32 FPU と と も に実装 さ れます。 こ の場合、 FPU RTL オプシ ョ ンは使用で き ません。 MPE RTL オプシ ョ ンが実装 さ れていない場合 は、 FPU RTL オプシ ョ ン を選択 し 、 VFPv3-D16 FPU を実装す る こ と がで き ます。 b. 設計にプ リ ロ ー ド エン ジ ンが含まれてい る 場合のみ MBIST ソ リ ュ ーシ ョ ンは、 選択 し た Cortex-A9 プ ロ セ ッ サのキ ャ ッ シ ュ サ イ ズに適 合す る よ う に構成す る 必要があ り ます。 ま た、 Cortex-A9 設計内の RAM ブ ロ ッ ク に 対す る MBIST ソ リ ュ ーシ ョ ン の形式は、 プ ロ セ ッ サの実装時に決定す る 必要があ り ます。 詳細については、 『Cortex-A9 MBIST コ ン ト ロ ー ラ テ ク ニ カル リ フ ァ レ ン ス マニ ュ ア ル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-8 は じ めに 1.7 テ ス ト 機能 Cortex-A9 プ ロ セ ッ サには、 テ ス ト 機能はあ り ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-9 は じ めに 1.8 製品説明書、 設計フ ロー、 アーキテ ク チ ャ こ こ では、 Cortex-A9 フ ァ ミ リ の説明書、 設計フ ロ ー と の関係、 お よ び関連す る アー キ テ ク チ ャ の標準 と プ ロ ト コ ルについて説明 し ます。 こ のセ ク シ ョ ン に記載 さ れてい る 説明書の詳細については、 「参照資料」 (ページ xv) を参照 し て下 さ い。 1.8.1 説明書 Cortex-A9 フ ァ ミ リ の説明書は次の と お り です。 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル 『テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 (TRM) には、 Cortex-A9 フ ァ ミ リ の機能 と 、 動作に対す る 機能オプシ ョ ン の影響が記載 さ れてい ます。 設計フ ロ ーのすべての段階で必要 と な り ます。 Cortex-A9 プ ロ セ ッ サの 実装 と 統合の方法に よ っ ては、 TRM に記載 さ れてい る 動作の一部が適 用 さ れない場合があ り ます。 • 『Cortex-A9 TRM』 には、 ユニプ ロ セ ッ サバ リ ア ン ト に関す る 説明 • 『Cortex-A9 MPCore TRM』 には、 Cortex-A9 プ ロ セ ッ サのマルチプ が記載 さ れてい ます。 ロ セ ッ サバ リ ア ン ト に関す る 説明が記載 さ れてい ます。 • 『Cortex-A9 浮動小数点 (FPU) TRM』 には、 デー タ エ ン ジ ンの実装 固有の FPU 部分に関す る 説明が記載 さ れてい ます。 • 『Cortex-A9 NEON メ デ ィ ア処理エン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 には、 デー タ エ ン ジ ン のア ド バン ス ト SIMD Cortex-A9 実装固有の部分に関す る 説明が記載 さ れてい ます。 Cortex-A9 プ ロ セ ッ サのプ ロ グ ラ ミ ン グに関 し てのお問い合わせ先は次 の と お り です。 • 実装のビル ド 構成を決定する場合は、 実装者にお問い合わせ下さ い。 • 使用す る SoC の ピ ン構成を決定す る 場合は、 イ ン テ グ レー タ にお 問い合わせ下 さ い。 構成お よ びサ イ ン オ フ ガ イ ド 『構成お よ びサ イ ンオ フ ガ イ ド 』 (CSG) には、 次の内容が記載 さ れてい ます。 • 利用可能な ビル ド 構成オプシ ョ ン と 、 それ ら のオプシ ョ ンの選択 に関連す る 考慮事項 • ビル ド 構成オプシ ョ ンで レ ジ ス タ 転送レベル (RTL) を構成す る方法 • 構成 さ れた設計を サ イ ン オ フす る ための手順 ARM 製品の配布物には、 リ フ ァ レ ン ス ス ク リ プ ト と 、 それ ら を使用 し て設計を実装す る 方法についての説明が含まれてい ます。 EDA ツール のベン ダか ら 入手で き る リ フ ァ レ ン ス手法の説明書は、 こ の CSG を補 完す る も のです。 CSG は非公開書籍で、 ラ イ セ ン ス に よ っ てのみ入手で き ます。 1.8.2 設計 フ ロー プ ロ セ ッ サは、 合成可能な RTL と し て配布 さ れ ます。 プ ロ セ ッ サ を製品で使用す る 前に、 次の手順を実行す る 必要があ り ます。 1. ARM DDI 0388FJ ID013111 実装。 実装者は、 RTL を構成 し て合成 し 、 ハー ド マ ク ロ セルを製造 し ます。 必 要に応 じ て、 こ れに RAM の設計への統合が含まれます。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-10 は じ めに 2. 統合。 イ ン テ グ レー タ は、 実装 さ れた設計を SoC に接続 し ます。 こ れには、 SoC と メ モ リ シ ス テ ムお よ びペ リ フ ェ ラ ル と の接続が含ま れ ます。 3. プ ロ グ ラ ミ ン グ。 シ ス テ ムプ ロ グ ラ マは、 プ ロ セ ッ サの構成 と 初期化に必要な ソ フ ト ウ ェ ア を開発 し 、 必要なアプ リ ケーシ ョ ン ソ フ ト ウ ェ ア を テ ス ト し ます。 手順の各段階は、 • 別の団体が行っ て も か ま い ません。 • 次の段階の動作や機能に影響を与え る オプシ ョ ン を含む こ と がで き ます。 ビル ド の構成 実装者は、 RTL ソ ース フ ァ イ ルが事前処理 さ れ る 方法に影響す る オプ シ ョ ン を選択 し ます。 こ のオプシ ョ ン に よ り 、 特定の ロ ジ ッ ク が含ま れ る か、 ま たは除外 さ れ、 結果 と し て生成 さ れ る マ ク ロ セルの実装面 積や最大周波数に影響 し ます。 構成入力 イ ン テ グ レー タ は、 入力を特定の値に固定す る こ と で、 プ ロ セ ッ サの 機能の一部を構成 し ます。 こ れ ら の構成は、 ソ フ ト ウ ェ ア構成が行わ れ る 前の、 起動時の動作に影響 し ます。 構成に よ り 、 ソ フ ト ウ ェ アで 使用可能なオプシ ョ ン を制限す る こ と も で き ます。 ソ フ ト ウ ェ ア構成 プ ロ グ ラ マは、 ソ フ ト ウ ェ アか ら 可視の レ ジ ス タ に特定の値を プ ロ グ ラ ム し て、 プ ロ セ ッ サ を構成 し ます。 こ の操作は、 プ ロ セ ッ サの動作 に影響を与え ます。 注 本書には、 ビル ド 構成オプシ ョ ン に適用可能な実装定義の機能が記載 さ れてい ます。 機能が含まれてい る と い う 表現は、 適切な ビル ド と ピ ン構成オプシ ョ ンが選択 さ れ てい る こ と を意味 し ます。 機能が稼働 し てい る と い う 表現は、 その機能が ソ フ ト ウ ェ アで も 構成 さ れてい る こ と を意味 し ます。 1.8.3 アーキテ ク チ ャ と プ ロ ト コ ルの情報 Cortex-A9 プ ロ セ ッ サは、 次に示すセ ク シ ョ ン で説明 さ れてい る 仕様に準拠 し てい る か、 その仕様を実装 し てい ます。 「ARM アーキ テ ク チ ャ 」 • • 「ア ド バン ス ト マ イ ク ロ コ ン ト ロ ー ラ バ ス アーキ テ ク チ ャ」 • 「 ト レース マ ク ロ セル」 (ページ 1-12) 「デバ ッ グ アーキ テ ク チ ャ 」 (ページ 1-12) • 本テ ク ニカル リ フ ァ レ ン ス マニ ュ アルは、 アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル、 アーキテ ク チ ャ仕様、 プ ロ ト コル仕様、 および関連する外部標準を補完する も のです。 こ れ ら の ソ ースに記載 さ れてい る情報は、 本書で繰 り 返し言及 さ れていません。 ARM アーキテ ク チ ャ Cortex-A9 プ ロ セ ッ サは、 ARMv7-A アーキテ ク チ ャ プ ロ フ ァ イ ルを実装し ています。 詳細については、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照し て下 さ い。 ア ド バン ス ト マ イ ク ロ コ ン ト ロー ラ バス アーキテ ク チ ャ Cortex-A9 プ ロ セ ッ サは AMBA 3 プ ロ ト コ ルに準拠 し てい ます。 詳細については、 『AMBA AXI プ ロ ト コ ル仕様』 と 『AMBA 3 APB プ ロ ト コ ル仕様』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-11 は じ めに ト レ ースマ ク ロ セル v1.0 PFT アーキ テ ク チ ャ です。 詳細については、 『CoreSight プ ロ グ ラ ム フ ロ ー ト レース アーキ テ ク チ ャ 仕様』 を参照 し て下 さ い。 デバ ッ グアーキテ ク チ ャ プ ロ セ ッ サは、 ARMv7 デバ ッ グ アーキ テ ク チ ャ を実装 し てお り 、 セキ ュ リ テ ィ 拡張 機能 と CoreSight をサポー ト し てい ます。 『CoreSight アーキ テ ク チ ャ 仕様』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-12 は じ めに 1.9 製品 リ ビ ジ ョ ン こ こ では、 プ ロ セ ッ サの リ リ ース ご と の機能の違いについて簡単に説明 し ます。 「r0p0 と r0p1 の機能的な違い」 • • 「r0p1 と r1p0 の機能的な違い」 • 「r1p0 と r2p0 の機能的な違い」 (ページ 1-14) 1.9.1 r0p0 と r0p1 の機能的な違い r0p0 と r0p1 と で、 説明 さ れてい る 機能に変更はあ り ません。 こ の 2 つの リ ビ ジ ョ ンの唯一の違いは次の と お り です。 • r0p1 では、 r0p0 に関す る 既知のエ ン ジニ ア リ ン グに関す る 誤植がすべて修正 さ れてい ます。 • r0p1 では、 命令側 と デー タ 側の両方で、 マ イ ク ロ TLB エ ン ト リ 数が 8 か ら 32 にア ッ プグ レー ド さ れてい ます。 こ れ ら の変更はいずれ も 、 本書に記載 さ れてい る 機能に影響 し ません。 1.9.2 r0p1 と r1p0 の機能的な違い こ の 2 つの リ ビ ジ ョ ンの違いは次の と お り です。 • r1p0 では、 r0p1 に関す る 既知のエ ン ジニ ア リ ン グに関す る 誤植がすべて修正 さ れてい ます。 • r1p0 では、 CPUCLKOFF と DECLKOFF を使用 し て、 リ セ ッ ト シーケ ン ス中 に Cortex-A9 プ ロ セ ッ サ を制御す る こ と がで き ます。 「構成信号」 (ページ A-5) を参照 し て下 さ い。 • • — 設計のマルチプ ロ セ ッ サ実装には、 Cortex-A9 プ ロ セ ッ サ と 同数の CPUCLKOFF ピ ンが存在 し ます。 — DECLKOFF は、 リ セ ッ ト シーケ ン ス中のデー タ エ ン ジ ン ク ロ ッ ク を制御 し ます。 r1p0 には、 Cortex-A9 プ ロ セ ッ サの動的高水準 ク ロ ッ ク ゲー ト が搭載 さ れてい ます。 「動的高水準 ク ロ ッ ク ゲー ト 」 (ページ 2-8) を参照 し て下 さ い。 — MAXCLKLATENCY[2:0] バ ス が追加 さ れ ま し た。 「構成信号」 (ページ A-5) を参照 し て下 さ い。 — CP15 電力制御レ ジ ス タ の追加。 「電力制御レ ジ ス タ 」 (ページ 4-36) を参 照 し て下 さ い。 パフ ォ ーマ ン ス監視 イ ベン ト バ ス の拡張。 r1p0 では、 PMUEVENT が 52 ビ ッ ト 幅にな り ま し た。 — Cortex-A9 固有の イ ベン ト の追加。 表 2-2 (ページ 2-5) を参照 し て下 さ い。 — ARM DDI 0388FJ ID013111 イベン ト の説明が拡張 さ れま し た。 表 2-2 (ページ 2-5) を参照し て下 さ い。 • PMUSECURE と PMUPRIV の追加。 「パフ ォーマ ン ス監視信号」 (ページ A-14) を参照 し て下 さ い。 • 128 エ ン ト リ ま たは 64 エ ン ト リ 用の メ イ ン TLB オプシ ョ ン。 「TLB タ イ プ レ ジ ス タ 」 (ページ 4-9) を参照 し て下 さ い。 • DEFLAGS[6:0] が追加 さ れ ま し た。 「DEFLAGS[6:0]」 (ページ 4-37) を参照 し て 下 さ い。 • 電力管理信号の BISTSCLAMP が削除 さ れ ま し た。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-13 は じ めに 1.9.3 • ス キ ャ ン テ ス ト 信号の SCANTEST が削除 さ れま し た。 • 第 2 の置換方式の追加。 SCTLR.RR ビ ッ ト で選択 さ れます。 「シ ス テ ム制御レ ジ ス タ 」 (ページ 4-15) を参照 し て下 さ い。 • PL310 キ ャ ッ シ ュ コ ン ト ロ ー ラ の最適化に関す る 説明の追加。 「レベル 2 メ モ リ イ ン タ フ ェースへのア ク セ ス の最適化」 (ページ 8-7) を参照 し て下 さ い。 • DMB の直列化動作の変更。 • ID レ ジ ス タ の値が、 正 し い リ ビ ジ ョ ン を反映す る よ う に変更 さ れ ま し た。 「直列化命令」 (ページ B-9) を参照 し て下 さ い。 r1p0 と r2p0 の機能的な違い リ ビ ジ ョ ンの違いは次の と お り です。 • オプシ ョ ンのプ リ ロ ー ド エ ン ジ ン ハー ド ウ ェ アの機能 と サポー ト の追加。 — — NSACR に PLE ビ ッ ト が追加 さ れ ま し た。 「非セキ ュ ア ア ク セ ス制御レ ジ ス タ 」 (ページ 4-23) を参照 し て下 さ い。 プ リ ロ ー ド エ ン ジ ン レ ジ ス タ が追加 さ れ ま し た。 「CP15 c11 レ ジ ス タ の概 要」 (ページ 4-30) を参照 し て下 さ い。 1.9.4 プ リ ロ ー ド 操作 と MCRR 命令が追加 さ れま し た。 第 9 章 プ リ ロ ー ド エン ジ ン を参照 し て下 さ い。 — プ リ ロ ー ド エ ン ジ ン イ ベン ト の追加。 「パフ ォ ーマ ン ス監視」 (ページ 2-3)、 表 11-7 (ページ 11-7)、 お よ び 表 A-18 (ページ A-14) を参照 し て下 さ い。 • 電圧 ド メ イ ン の変更。 図 2-4 (ページ 2-14) を参照 し て下 さ い。 • NEON ビ ジーレ ジ ス タ 。 「NEON ビ ジーレ ジ ス タ 」 (ページ 4-37) を参照 し て下 さ い。 • ID レ ジ ス タ の値が、 正 し い リ ビ ジ ョ ン を反映す る よ う に変更 さ れ ま し た。 r2p0 と r2p1 の機能的な違い • 1.9.5 — な し。 r2p1 と r2p2 の機能的な違い • ARM DDI 0388FJ ID013111 な し 。 説明書の更新 と 修正のみ。 「D 版 と F 版の相違点」 (ページ C-6) を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 1-14 第2章 機能の説明 本章では、 製品の機能について説明 し ま す。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「機能について」 (ページ 2-2) • 「 イ ン タ フ ェース」 (ページ 2-4) 「 ク ロ ッ ク と リ セ ッ ト 」 (ページ 2-6) • 「電力管理」 (ページ 2-10) • 「使用制限」 (ページ 2-15) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-1 機能の説明 2.1 機能について Cortex-A9 プ ロ セ ッ サは、 完全な仮想 メ モ リ 機能を提供す る レベル 1 キ ャ ッ シ ュ サブ シ ス テ ム を搭載 し た、 高性能で低消費電力の ARM マ ク ロ セルです。 Cortex-A9 プ ロ セ ッ サの ト ッ プ レベル図を、 図 2-1 に示 し ます。 㪚㫆㫉㫋㪼㫏㪄㪘㪐䊒䊨䉶䉾䉰 䊂䊠䉝䊦 䊂䉮䊷䊄䉴䊁䊷䉳 䊧䉳䉴䉺ฬ ᄌᦝ䉴䊁䊷䉳 䊂䉞䉴䊌䉾䉼 䉴䊁䊷䉳 ᗐ䈎䉌 ‛ℂ䈻䈱 䊧䉳䉴䉺 䊒䊷䊦 䈱 䉨䊠䊷䈫 䊂䉞䉴䊌䉾䉼 ಽጘ 䊒䊥䊐䉢䉾䉼䉴䊁䊷䉳 䊌䊐䉤䊷䊙䊮䉴 ⋙ⷞ䊡䊆䉾䊃 㩿㪧㪤㪬㪀 㪘㪣㪬㪆㪤㪬㪣 䊤䉟䊃䊋䉾䉪 䉴䊁䊷䉳 㪘㪣㪬 䉝䉡䊃䉥䊑䉥䊷䉻 ⶄᢙ⊒ⴕ 㩿੍᷹䈅䉍㪀 ੍᷹ 䊒䊨䉫䊤䊛 䊃䊧䊷䉴 䊙䉪䊨䉶䊦㩿㪧㪫㪤㪀 䉟䊮䉺䊐䉢䊷䉴 㪝㪧㪬䉁䈢䈲 㪥㪜㪦㪥 䊨䊷䊄㪆 䉴䊃䉝 䉝䊄䊧䉴↢ᚑ 䊡䊆䉾䊃 䊜䊝䊥䉲䉴䊁䊛 ಽጘ੍᷹ 䉨䊠䊷 േ⊛ಽጘ੍᷹ 䉨䊞䉾䉲䊠 䊥䉺䊷䊮䉴䉺䉾䉪 䊨䊷䊄㪆䉴䊃䉝 䊡䊆䉾䊃 䊜䊝䊥▤ℂ 䊡䊆䉾䊃 ᄌ឵䊦䉾䉪䉝 䉰䉟䊄䊋䉾䊐䉜 䊒䊥䊨䊷䊄䉣䊮䉳䊮 䋨䉥䊒䉲䊢䊮䋩 䊂䊷䉺䉨䊞䉾䉲䊠 䊐䉢䉾䉼 図 2-1 Cortex-A9 プ ロ セ ッ サの ト ッ プ レ ベル図 2.1.1 レ ジ ス タ 名の変更 レ ジ ス タ 名の変更方式に よ っ て、 汎用レ ジ ス タ と 、 カ レ ン ト プ ロ グ ラ ム ス テー タ ス レ ジ ス タ (CPSR) の フ ラ グ ビ ッ ト の書 き 込み後書 き込み (WAW) 状態お よ び読み出 し 後書 き 込み (WAR) 状態におけ る ア ウ ト オブ オーダ実行が促進 さ れます。 こ の方式では、 32 個の ARM アーキ テ ク チ ャ レ ジ ス タ が 56 個の 32 ビ ッ ト 物理レ ジ ス タ のプールにマ ッ ピ ン グ さ れ、 8 個の 9 ビ ッ ト 物理レ ジ ス タ の専用プールを使用 し て CPSR の フ ラ グ (N、 Z、 C、 V、 Q、 GE) の名前が変更 さ れ ます。 2.1.2 命令キ ュ ー 命令キ ュ ーでは、 小ループモー ド に よ っ て、 小 さ な命令ループの実行中の消費電力 が低減 さ れます。 「エネルギー効率機能」 (ページ 2-10) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-2 機能の説明 2.1.3 動的分岐予測 プ リ フ ェ ッ チユニ ッ ト は、 グ ロ ーバル履歴バ ッ フ ァ (GHB)、 分岐 タ ーゲ ッ ト ア ド レ ス キ ャ ッ シ ュ (BTAC)、 リ タ ーン ス タ ッ ク を使用す る 、 2 レベルの動的分岐予測を実 装 し てい ます。 「レベル 1 命令側 メ モ リ シ ス テ ムについて」 (ページ 7-5) を参照 し て 下 さ い。 2.1.4 PTM イ ン タ フ ェ ース Cortex-A9 プ ロ セ ッ サは、 オプシ ョ ン と し て、 プ ロ グ ラ ム フ ロ ー ト レース (PFT) 命令 専用アーキ テ ク チ ャ プ ロ ト コ ルに準拠 し た プ ロ グ ラ ム ト レース マ ク ロ セル (PTM) イ ン タ フ ェース を実装 し ます。 ウ ェ イ ポ イ ン ト やプ ロ グ ラ ム フ ロ ーの変化 と と も に、 コ ン テ キ ス ト ID の変化な ど の イ ベン ト が出力 さ れ、 ト レース と コ ー ド イ メ ージの相 互関連付けが可能にな り ます。 「プ ロ グ ラ ム フ ロ ー ト レース と プ ロ グ ラ ム ト レース マ ク ロ セル イ ン タ フ ェース」 (ページ 2-4) を参照 し て下 さ い。 2.1.5 パ フ ォ ーマ ン ス監視 Cortex-A9 プ ロ セ ッ サが提供す る プ ロ グ ラ ム カ ウ ン タ と イ ベン ト モニ タ は、 プ ロ セ ッ サ と メ モ リ シ ス テ ム の動作に関す る 統計デー タ を収集す る よ う に構成可能です。 パフ ォ ーマ ン ス監視カ ウ ン タ と 関連す る 制御レ ジ ス タ には、 CP15 コ プ ロ セ ッ サ イ ン タ フ ェ ース と APB デバ ッ グ イ ン タ フ ェース か ら ア ク セ ス で き ます。 第 11 章 パ フ ォーマ ン ス監視ユニ ッ ト を参照 し て下 さ い。 2.1.6 割 り 込みの仮想化 割 り 込みの仮想化に よ り 、 ゲ ス ト オペレーテ ィ ン グ シ ス テ ム (OS) で修正版の例外動 作モデルを使用 し て、 割 り 込み処理を高速化で き ます。 「仮想化制御レ ジ ス タ 」 (ページ 4-24) を参照 し て下 さ い。 仮想化制御レ ジ ス タ の動作は、 プ ロ セ ッ サがセキ ュ ア状態にあ る か、 非セキ ュ ア状 態にあ る かに よ っ て異な り ます。 プ ロ セ ッ サがセ キ ュ ア状態にあ る と き に例外が発生 し た場合、 仮想化制御レ ジ ス タ の AMO、 IMO、 IFO ビ ッ ト は無視 さ れ ます。 例外が取得 さ れ る か ど う かは、 CPSR の A、 I、 F ビ ッ ト の設定のみに よ っ て決定 さ れ し ます。 プ ロ セ ッ サが非セキ ュ ア状態にあ る と き に例外が発生 し た場合、 SCR の EA、 FIQ、 ま たは IRQ ビ ッ ト がセ ッ ト さ れていなければ、 対応す る 例外が取得 さ れ る か ど う か は、 CPSR の A、 I、 F ビ ッ ト の設定のみに よ っ て決定 さ れます。 「非セキ ュ ア ア ク セ ス制御レ ジ ス タ 」 (ページ 4-23) を参照 し て下 さ い。 SCR の EA、 FIQ、 IRQ のいずれかの ビ ッ ト がセ ッ ト さ れてい る 場合は、 対応す る 例 外がモニ タ モー ド に ト ラ ッ プ さ れます。 こ の場合、 対応す る 例外が取得 さ れ る か ど う かは、 仮想化制御レ ジ ス タ の AMO、 IMO、 ま たは IFO ビ ッ ト に よ り マ ス ク さ れ た、 CPSR の A、 I、 F ビ ッ ト に よ っ て決定 さ れ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-3 機能の説明 2.2 イ ン タ フ ェ ース プ ロ セ ッ サには次の外部 イ ン タ フ ェース が存在 し ます。 • AMBA AXI イ ン タ フ ェース • APB CoreSight イ ン タ フ ェ ース • DFT イ ン タ フ ェース こ れ ら の イ ン タ フ ェ ース の詳細については、 『AMBA AXI プ ロ ト コ ル仕様』、 『CoreSight アーキ テ ク チ ャ 仕様』、 『CoreSight PFT アーキ テ ク チ ャ 仕様』、 『Cortex-A9 MBIST コ ン ト ロ ー ラ テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 2.2.1 プ ロ グ ラ ム フ ロー ト レース と プ ロ グ ラ ム ト レ ース マ ク ロ セルイ ン タ フ ェ ース Cortex-A9 プ ロ セ ッ サには、 プ ロ グ ラ ム フ ロ ー ト レース (PFT) アーキ テ ク チ ャ プ ロ ト コ ル も 実装 さ れてい ます。 次に示すセ ク シ ョ ン では、 Cortex-A9 の プ ロ グ ラ ム ト レー ス マ ク ロ セル (PTM) イ ン タ フ ェ ース について説明 し ます。 「プ ロ グ ラ ム フ ロ ー ト レース」 • • 「プ ロ グ ラ ム ト レース マ ク ロ セル信号」 プ ロ グ ラ ム フ ロー ト レ ース PFT は、 ウ ェ イ ポ イ ン ト を使用 し て ト レース と コ ー ド イ メ ージ を関連付け る 、 命令 専用の ト レース プ ロ ト コ ルです。 ウ ェ イ ポ イ ン ト と は、 分岐や コ ン テ キ ス ト ID の変 更な ど の、 プ ロ グ ラ ム フ ロ ーの変更や イ ベン ト で、 ト レース を行 う ためにために出 力す る 必要のあ る も のです。。 ウ ェ イ ポ イ ン ト を使用 し た ト レース方法については、 『CoreSight プ ロ グ ラ ム フ ロ ー ト レース アーキ テ ク チ ャ 仕様』 と 『CoreSight PTM-A9 テ ク ニ カル リ フ ァ レ ン ス マ ニ ュ アル』 を参照 し て下 さ い。 プ ロ グ ラ ム ト レ ース マ ク ロ セル信号 PTM イ ン タ フ ェース信号を、 図 2-2 に示 し ます。 WPTENABLE 㪚㫆㫉㫋㪼㫏㪄㪘㪐䊒䊨䉶䉾䉰 WPTCOMMIT[1:0] WPTCONTEXTID[31:0] WPTEXCEPTIONTYPE[3:0] WPTFLUSH WPTLINK WPTPC[31:0] WPTT32LINK WPTTAKEN WPTTARGETJBIT WPTTARGETPC[31:0] WPTTARGETTBIT WPTTRACEPROHIBITED WPTTYPE[2:0] WPTVALID WPTnSECURE WPTFIFOEMPTY 図 2-2 PTM イ ン タ フ ェ ース信号 詳細については、 付録 A 信号の説明お よ び 『CoreSight PTM-A9 テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-4 機能の説明 禁止領域 ト レース は一部の領域で禁止す る 必要があ り ます。 禁止領域の詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 Cortex-A9 プ ロ セ ッ サは、 ト レース、 パフ ォーマ ン ス監視、 PC サン プ リ ン グ を含む、 領域内の非侵 襲性デバ ッ グ用の禁止領域を判断す る 必要があ り ます。 禁止領域内の命令について は、 ウ ェ イ ポ イ ン ト が生成 さ れ ません。 Jazelle 状態の開始 と 終了のみが ト レース さ れます。 Jazelle 状態開始の ウ ェ イ ポ イ ン ト の後には、 Jazelle 状態終了の ウ ェ イ ポ イ ン ト が続 き ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-5 機能の説明 2.3 クロッ クと リセッ ト こ こ では、 プ ロ セ ッ サの ク ロ ッ ク と リ セ ッ ト について説明 し ます。 「同期 ク ロ ッ ク 」 • • 「リ セッ ト」 • 「動的高水準 ク ロ ッ ク ゲー ト 」 (ページ 2-8) 2.3.1 同期 ク ロ ッ ク Cortex-A9 ユニプ ロ セ ッ サには、 CLK と い う 機能 ク ロ ッ ク 入力が 1 つ存在 し ます。 Cortex-A9 ユニプ ロ セ ッ サには非同期 イ ン タ フ ェースは存在 し ません。 すべてのバス イ ン タ フ ェース と 割 り 込み信号が、 CLK を基準に し て同期 し てい る必要があ り ます。 AXI バ ス ク ロ ッ ク ド メ イ ンは、 ACLKEN 信号を使用 し て、 n:1 (CLK を基準 と し た AXI 対プ ロ セ ッ サの比率) で実行す る こ と がで き ます。 Cortex-A9 ユニプ ロ セ ッ サで、 CLK と ACLK の ク ロ ッ ク 比が 3:1 で使用 さ れ る ACKLENM0 の タ イ ミ ン グ例を、 図 2-3 に示 し ます。 CLK ACLK ACLKENM0 ARRDRM0 䉝䊄䊧䉴0 䉝䊄䊧䉴1 䉝䊄䊧䉴2 䉝䊄䊧䉴3 図 2-3 3:1 のク ロ ッ ク比で使用 さ れる ACLKENM0 マ ス タ ポー ト の Master0 では、 ACLKENM0 が HIGH の場合の CLK 立ち上が り エ ッ ジでのみ、 AXI 出力が変化 し ます。 2.3.2 リセッ ト Cortex-A9 プ ロ セ ッ サには次の リ セ ッ ト 入力が存在 し ます。 nCPURESET nCPURESET 信号は、 メ イ ン Cortex-A9 プ ロ セ ッ サ リ セ ッ ト で す。 こ の リ セ ッ ト に よ っ て、 MPE ま たは FPU オプシ ョ ンが存在 す る 場合に、 Cortex-A9 プ ロ セ ッ サ ロ ジ ッ ク と 、 FPU レ ジ ス タ フ ァ イ ルを含む FPU ロ ジ ッ ク が初期化 さ れます。 nNEONRESET nNEONRESET 信号は、 メ イ ン Cortex-A9 プ ロ セ ッ サ リ セ ッ ト と は無関係に、 NEON SIMD を制御す る リ セ ッ ト です。 nDBGRESET nDBGRESET 信号は、 デバ ッ グ ロ ジ ッ ク を初期化す る リ セ ッ ト で す。 第 10 章 デバ ッ グ を参照 し て下 さ い。 こ れ ら の信号はすべて、 ア ク テ ィ ブ LOW です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-6 機能の説明 リ セ ッ ト モー ド Cortex-A9 の設計に存在す る リ セ ッ ト 信号に よ っ て、 プ ロ セ ッ サの各部を個別に リ セ ッ ト で き ます。 リ セ ッ ト 信号 と 、 それ ら の使用可能な組み合わせ と 用途を、 表 2-1 に示 し ます。 表 2-1 リ セ ッ ト モー ド モー ド nCPURESET nNEONRESET nDBGRESET パ ワーオン リ セ ッ ト 、 コ ール ド リ セッ ト 0 0 0 プロセッサ リ セッ ト 、 ソ フ ト また は ウ ォーム リ セ ッ ト 0 0 1 SIMD MPE パ ワ ーオン リ セ ッ ト 1 0 1 デバ ッ グ ロ ジ ッ ク の リ セ ッ ト 1 1 0 リ セ ッ ト な し 、 通常の実行モー ド 1 1 1 パワーオ ン リ セ ッ ト シ ス テ ムの電力を最初にオ ン にす る と き に、 パ ワーオ ン リ セ ッ ト ま たは コール ド リ セ ッ ト を、 Cortex-A9 ユニプ ロ セ ッ サに適用す る 必要があ り ます。 パ ワーオ ン リ セ ッ ト の場合、 リ セ ッ ト 信号の先行エ ッ ジ、 つま り 立ち下が り エ ッ ジは、 CLK と 同期 し てい る 必要はあ り ませんが、 立ち上が り エ ッ ジは同期 し てい る 必要があ り ます。 正 し い リ セ ッ ト 動作を保証す る ために、 リ セ ッ ト 信号を 9 CLK サ イ ク ル以上アサー ト す る 必要があ り ます。 次の リ セ ッ ト シーケ ン ス をお勧め し ます。 1. nCPURESET、 nDBGRESET、 nNEONRESET (SIMD MPE が存在す る 場合) を適用 し ます。 2. 9 CLK サ イ ク ル以上待機 し てか ら 、 他の ク ロ ッ ク ド メ イ ン ご と に 1 ク ロ ッ ク 以 上待機 し ます。 他の コ ン ポーネ ン ト の説明書で要求 さ れてい る 場合は、 さ ら に 多 く の ク ロ ッ ク 分を待機 し ます。 こ れを上回 る ク ロ ッ ク サ イ ク ル分を適用 し て も 害はあ り ません。 ク ロ ッ ク ド メ イ ン ご と に 15 サ イ ク ルを適用す る こ と に よ っ て最大限の冗長性が実現 さ れ ます。 3. Cortex-A9 ユニプ ロ セ ッ サへの CLK ク ロ ッ ク 入力を停止 し ます。 デー タ エ ン ジ ンが存在す る 場合は、 NEONCLKOFF を使用 し ます。 「構成信号」 (ページ A-5) を参照 し て下 さ い。 4. 実装に応 じ て、 約 10 サ イ ク ルに相当す る 時間だけ待機 し ます。 こ れに よ っ て、 ク ロ ッ ク と リ セ ッ ト の ツ リ ーレ イ テ ン シが補償 さ れ ます。 5. すべての リ セ ッ ト を解放 し ます。 6. 再度、 ク ロ ッ ク と リ セ ッ ト の ツ リ ーレ イ テ ン シ を補償す る ために、 さ ら に 10 サ イ ク ルに相当す る 時間だけ待機 し ます。 7. ク ロ ッ ク を再起動 し ます。 ソフ トウェアリセッ ト プ ロ セ ッ サ ま たは ウ ォーム リ セ ッ ト では、 デバ ッ グ ロ ジ ッ ク を除 く Cortex-A9 プ ロ セ ッ サの大部分が初期化 さ れます。 プ ロ セ ッ サ リ セ ッ ト では、 ブ レー ク ポ イ ン ト と ウ ォ ッ チポ イ ン ト が保持 さ れ ます。 通常、 プ ロ セ ッ サ リ セ ッ ト は、 一定期間稼動 し ていたシ ス テ ム の リ セ ッ ト に使用 さ れ ます。 「パ ワーオン リ セ ッ ト 」 で説明 し た リ セ ッ ト シーケ ン ス と 同 じ も のを使用 し ます。 唯一の違いは、 シーケ ン ス中に nDBGRESET を HIGH に保持 し て、 デバ ッ グ レ ジ ス タ 内のすべての値が保持 さ れ る こ と を保証す る 必要があ る 点です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-7 機能の説明 プロセ ッサリ セ ッ ト プ ロ セ ッ サ ま たは ウ ォーム リ セ ッ ト では、 デバ ッ グ ロ ジ ッ ク を除 く Cortex-A9 プ ロ セ ッ サの大部分が初期化 さ れます。 プ ロ セ ッ サ リ セ ッ ト では、 ブ レー ク ポ イ ン ト と ウ ォ ッ チポ イ ン ト が保持 さ れ ます。 通常、 プ ロ セ ッ サ リ セ ッ ト は、 一定期間稼動 し ていたシ ス テ ム の リ セ ッ ト に使用 さ れ ます。 ウ ォーム リ セ ッ ト では、 nCPURESET と nNEONRESET を使用 し ます。 MPE SIMD ロ ジ ッ ク リ セ ッ ト こ の リ セ ッ ト では、 MPE のすべての SIMD ロ ジ ッ ク が初期化 さ れ ます。 こ の リ セ ッ ト は、 MPE の SIMD 部分が電力オ フ状態を終了 し た と き に適用 さ れ る こ と を想定 し た も のです。 こ の リ セ ッ ト は、 SIMD MPE ロ ジ ッ ク が、 他のプ ロ セ ッ サ ロ ジ ッ ク か ら 分離 さ れた 専用の電力 ド メ イ ン に実装 さ れてい る 構成にのみ適用 さ れ ます。 MPE SIMD リ セ ッ ト については、 次の リ セ ッ ト シーケ ン ス をお勧め し ます。 1. nNEONRESET を適用 し ます。 2. 9 CLK サ イ ク ル以上待機 し ます。 . こ れを上回 る ク ロ ッ ク サ イ ク ルを適用 し て も 害はあ り ません。 例えば、 ク ロ ッ ク ド メ イ ン ご と に 15 サ イ ク ルを適用す る こ と に よ っ て最大限の冗長性が実現 さ れます。 3. 1’b1 の値で NEONCLKOFF を アサー ト し ます。 4. 実装に応 じ て、 約 10 サ イ ク ルに相当す る 時間だけ待機 し ます。 こ れに よ っ て、 ク ロ ッ ク と リ セ ッ ト の ツ リ ーレ イ テ ン シが補償 さ れ ます。 5. nNEONRESET を解放 し ます。 6. 再度、 ク ロ ッ ク と リ セ ッ ト の ツ リ ーレ イ テ ン シ を補償す る ために、 さ ら に 10 サ イ ク ルに相当す る 時間だけ待機 し ます。 7. NEONCLKOFF を アサー ト 解除 し ます。 こ れに よ っ て、 プ ロ セ ッ サの SIMD MPE 部分に存在す る すべての レ ジ ス タ で、 リ セ ッ ト シーケ ン ス を終了す る と き に同 じ CLK エ ッ ジが検出 さ れ る こ と が保証 さ れます。 nNEONRESET を使用 し て、 Cortex-A9 プ ロ セ ッ サ リ セ ッ ト と 別に、 MPE ロ ジ ッ ク の SIMD 部分を制御 し ます。 こ の リ セ ッ ト は、 MPE の SIMD 部分を リ セ ッ ト 状態に保 持 し 、 MPE の SIMD 部分への電力供給のオ ン / オ フ が安全に行え る よ う にす る ため に使用 し ます。 表 2-2 (ページ 2-10) を参照 し て下 さ い。 デバ ッ グ リ セ ッ ト こ の リ セ ッ ト では、 ブ レー ク ポ イ ン ト や ウ ォ ッ チポ イ ン ト の値を含む、 Cortex-A9 ユ ニプ ロ セ ッ サ内のデバ ッ グ ロ ジ ッ ク が初期化 さ れます。 デバ ッ グ リ セ ッ ト を実行す る には、 nDBGRESET 信号を数 CLK サ イ ク ルの間だけ LOW にアサー ト す る 必要があ り ます。 2.3.3 動的高水準 ク ロ ッ ク ゲー ト 次に示すセ ク シ ョ ン では、 動的高水準 ク ロ ッ ク ゲー ト について説明 し ます。 • 「ゲー ト さ れ る ブ ロ ッ ク 」 (ページ 2-9) 「電力制御レ ジ ス タ 」 (ページ 2-9) • 「max_clk レ イ テ ン シ ビ ッ ト の影響」 (ページ 2-9) • 「動的高水準 ク ロ ッ ク ゲー ト 動作」 (ページ 2-9) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-8 機能の説明 ゲー ト さ れる ブ ロ ッ ク Cortex-A9 プ ロ セ ッ サ、 ま たは Cortex-A9 MPCore 設計の各プ ロ セ ッ サは、 次の動的 高水準 ク ロ ッ ク ゲー ト を サポー ト し ます。 • 整数 コ ア • シ ス テ ム制御ブ ロ ッ ク • デー タ エ ン ジ ン (実装 さ れてい る 場合) 電力制御レ ジ ス タ 電力制御レ ジ ス タ は、 動的高水準 ク ロ ッ ク ゲー ト を制御 し ます。 こ の レ ジ ス タ には、 こ れ ら のブ ロ ッ ク に共通の フ ィ ール ド が含まれてい ます。 • ク ロ ッ ク ゲー ト の イ ネーブルビ ッ ト • max_clk レ イ テ ン シ ビ ッ ト 「電力制御レ ジ ス タ 」 (ページ 4-36) を参照 し て下 さ い。 max_clk レ イ テ ン シ ビ ッ ト の影響 max_clk レ イ テ ン シ ビ ッ ト に よ っ て、 こ れ ら のブ ロ ッ ク のいずれかで ク ロ ッ ク が停止 さ れてか ら 、 新 し いア ク テ ィ ブ信号が受信で き る ま での遅延時間が決定 さ れます。 max_clk レ イ テ ン シで決定 さ れた値が実際の遅延 よ り 短い場合、 ク ロ ッ ク が停止 さ れ たブ ロ ッ ク は、 ク ロ ッ ク が供給 さ れな く て も ア ク テ ィ ブ信号を受信で き ます。 こ れ に よ っ て、 デバ イ ス が誤動作す る 可能性があ り ます。 max_clk レ イ テ ン シで決定 さ れた値が実際の遅延 よ り 長い場合、 マ ス タ ブ ロ ッ ク は、 ク ロ ッ ク が停止 さ れたブ ロ ッ ク への信号を送信す る 前に、 数サ イ ク ルだけ余分に待 機を行い ます。 こ れに よ っ て、 パフ ォ ーマ ン ス にい く ら かの影響が発生す る 可能性 があ り ます。 値が正 し く 設定 さ れていれば、 ク ロ ッ ク が停止 さ れたブ ロ ッ ク で、 ウ ェー ク ア ッ プ の最初の ク ロ ッ ク エ ッ ジでア ク テ ィ ブ信号が受信 さ れます。 こ れに よ っ て、 最適の パフ ォ ーマ ン ス が得 ら れます。 動的高水準 ク ロ ッ ク ゲー ト 動作 動的高水準 ク ロ ッ ク ゲー ト が可能であれば、 次の場合に整数 コ アの ク ロ ッ ク が停止 さ れ ます。 • 整数 コ アが空で、 ラ イ ン フ ィ ルを引 き 起 こ す命令 ミ ス が発生 し た場合 • 整数 コ アが空で、 命令 TLB ミ ス が発生 し た場合 • 整数 コ アがい っぱいで、 ラ イ ン フ ィ ルを引 き 起 こ すデー タ ミ ス が発生 し た場合 • 整数 コ アがい っぱいで、 ラ イ ン フ ィ ルバ ッ フ ァ が ビ ジーのためにデー タ ス ト ア が停止 さ れた場合 動的 ク ロ ッ ク ゲー ト が可能であれば、 次の場合にシ ス テ ム制御ブ ロ ッ ク の ク ロ ッ ク が停止 さ れ ます。 • 実行中のシ ス テ ム制御 コ プ ロ セ ッ サ命令が存在 し ない場合 • シ ス テ ム制御 コ プ ロ セ ッ サ命令がパ イ プ ラ イ ン に存在 し ない場合 • パフ ォ ーマ ン ス イ ベン ト が不可能な場合 • デバ ッ グが不可能な場合 動的 ク ロ ッ ク ゲー ト が可能な と き 、 デー タ エ ン ジ ン命令がデー タ エ ン ジ ンに も パ イ プ ラ イ ンに も 存在 し ない場合は、 デー タ エ ン ジ ン の ク ロ ッ ク が停止 さ れ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-9 機能の説明 2.4 電力管理 プ ロ セ ッ サは、 動的 と 静的の両方の電力消費を制御す る ための機構を提供 し ます。 静的電力制御は実装固有です。 説明については、 次に示すセ ク シ ョ ン を参照 し て下 さ い。 • エネルギー効率機能 • Cortex-A9 プ ロ セ ッ サの電力制御 2.4.1 エネルギー効率機能 エネルギー効率を向上させる Cortex-A9 プ ロ セ ッ サの機能には、 次の も のが含まれます。 2.4.2 • 正確な分岐予測 と 復帰予測に よ り 、 不正確な命令フ ェ ッ チ と デ コ ー ド 処理の回 数を減 ら し ます。 • 物理的にア ド レ ス指定 さ れた キ ャ ッ シ ュ の使用に よ り 、 キ ャ ッ シ ュ の フ ラ ッ シ ュ お よ び リ フ ィ ルの回数を減 ら し 、 シ ス テ ム の消費電力を抑え ます。 • マ イ ク ロ TLB の使用に よ り 、 サ イ ク ルご と に変換お よ び保護ル ッ ク ア ッ プで消 費 さ れ る 電力を減 ら し ます。 • キ ャ ッ シ ュ がシーケ ン シ ャ ルア ク セ ス情報を使用す る こ と で、 タ グ RAM への ア ク セ ス回数 と 、 不要なデー タ RAM へのア ク セ ス回数を減 ら し ます。 • 64 バ イ ト 未満の命令ループの多 く が、 追加の命令キ ャ ッ シ ュ ア ク セ ス な し で完 了す る こ と で、 電力消費が抑え ら れ ます。 Cortex-A9 プ ロ セ ッ サの電力制御 各種の電力 ド メ イ ン の実装を容易にす る ため、 Cortex-A9 プ ロ セ ッ サの周辺には レベ ルシ フ タ と ク ラ ン プのプ レース ホルダが挿入 さ れてい ます。 Cortex-A9 プ ロ セ ッ サには、 次の電力 ド メ イ ン を含め る こ と がで き ます。 • Cortex-A9 プ ロ セ ッ サ ロ ジ ッ ク 用の電力 ド メ イ ン • Cortex-A9 プ ロ セ ッ サ MPE 用の電力 ド メ イ ン • Cortex-A9 プ ロ セ ッ サ RAM 用の電力 ド メ イ ン 電力モー ド を、 表 2-2 に示 し ます。 表 2-2 Cortex-A9 プ ロ セ ッ サの電力モー ド モー ド Cortex-A9 プ ロ セ ッ サの RAM ア レ イ Cortex-A9 プ ロ セ ッ サロ ジ ッ ク Cortex-A9 デー タ エ ン ジ ン コメント フル実行モー ド 電力オン 電力オン 電力オン - ク ロ ッ ク が供給 さ れてい る ク ロ ッ ク が供給 さ れてい る 電力オン 電力オン ク ロ ッ ク が供給 さ れてい る ク ロ ッ クなし 電力オン 電力オ フ MPE が非稼働の 実行モー ド 電力オン MPE が電力オ フ の実行モー ド 電力オン MPE を非稼働にす る 方法について は、 「 コ プ ロ セ ッ サア ク セ ス制御レ ジ ス タ」 (ページ 4-20) を参照 し て下 さ い。 MPE は、 別の電力 ド メ イ ンに実装で き 、 個別に電力オ フ にす る こ と も で き ます。 ク ロ ッ ク が供給 さ れてい る ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-10 機能の説明 表 2-2 Cortex-A9 プ ロ セ ッ サの電力モー ド (続き) モー ド Cortex-A9 プ ロ セ ッ サの RAM ア レ イ Cortex-A9 プ ロ セ ッ サロ ジ ッ ク Cortex-A9 デー タ エ ン ジ ン コメント ス タ ンバ イ 電力オン 電力オン 電力オン ス タ ンバ イ モー ド 、 「ス タ ンバ イ モー ド 」 を参照 ウ ェーク ア ッ プ ロ ジ ッ ク のみに ク ロ ッ ク が供給 さ れ てい る ク ロ ッ ク が非稼 働か、 電力オ フ 休眠 状態 / 電圧を保持 電力オ フ 電力オ フ ウ ェ ー ク ア ッ プには外部 ウ ェ ー ク ア ッ プ イ ベン ト が必要 シャ ッ ト ダウン 電力オ フ 電力オ フ 電力オ フ ウ ェ ー ク ア ッ プには外部 ウ ェ ー ク ア ッ プ イ ベン ト が必要 休眠モー ド ま たはシ ャ ッ ト ダ ウ ン モー ド の開始は、 外部電力 コ ン ト ロ ー ラ で制御す る 必要があ り ます。 実行モー ド 実行モー ド は、 Cortex-A9 プ ロ セ ッ サのすべての機能が使用で き る 通常の動作モー ド です。 ス タ ンバイ モー ド WFI お よ び WFE ス タ ンバ イ モー ド では、 プ ロ セ ッ サの ク ロ ッ ク のほ と ん ど が非稼働 にな り ますが、 ロ ジ ッ ク へ引 き 続 き 電力が供給 さ れ ます。 こ れに よ り 、 静的な漏洩 電流 と 、 デバ イ ス を ウ ェー ク ア ッ プす る ためのわずかな ク ロ ッ ク 電力オーバヘ ッ ド のみに消費電力が削減 さ れ ます。 WFI ス タ ンバ イ モー ド は、 WFI 命令の実行に よ っ て開始 さ れます。 WFI ス タ ンバ イ モー ド か ら 実行モー ド への移行は、 次のいずれかの場合に発生し ます。 • マ ス ク さ れてい る か ど う かにかかわ ら ず、 割 り 込みが発生 し た場合 • CPSR.A ビ ッ ト の値にかかわ ら ず、 非同期デー タ アボー ト が発生 し た場合。 ウ ェ ー ク ア ッ プ イ ベン ト の保留中は、 プ ロ セ ッ サは低消費電力モー ド に移行で き ません。 • デバ ッ グが可能か ど う かにかかわ ら ず、 デバ ッ グ要求が発生 し た場合 • リ セッ ト時 WFE ス タ ンバ イ モー ド は、 WFE 命令の実行に よ っ て開始 さ れ ます。 WFE • • • • • ス タ ンバイ モー ド か ら実行モー ド への移行は、 次のいずれかの場合に発生し ます。 マ ス ク さ れていない割 り 込みが発生 し た場合 デバ ッ グが可能か ど う かにかかわ ら ず、 デバ ッ グ要求が発生 し た場合 同 じ プ ロ セ ッ サ上で以前に発生 し た例外復帰 リ セッ ト時 EVENTI 入力信号がアサー ト さ れた場合 デバ ッ グ要求は、 Cortex-A9 プ ロ セ ッ サの EDBGRQ ピ ン を使用 し て、 ま たは、 APB デバ ッ グ ポー ト 経由で Cortex-A9 プ ロ セ ッ サに発行 さ れたデバ ッ グ ホール ト 命令か ら 、 外部で生成 さ れたデバ ッ グ要求に よ っ て生成 さ れ ます。 デバ ッ グチ ャ ネルは、 WFI を通 し て ア ク テ ィ ブの ま ま です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-11 機能の説明 休眠モー ド 休眠モー ド では、 キ ャ ッ シ ュ への電力供給は変わ ら ず、 キ ャ ッ シ ュ の状態を保持 し なが ら 、 Cortex-A9 プ ロ セ ッ サへの電力供給を停止で き ます。 休眠モー ド 中に電力オ ンに保持す る 必要のあ る RAM ブ ロ ッ ク は次の と お り です。 • キ ャ ッ シ ュ に関連付け ら れてい る すべてのデー タ RAM • キ ャ ッ シ ュ に関連付け ら れてい る すべての タ グ RAM • 外部 RAM 電力オ ン状態に保持す る RAM ブ ロ ッ ク は、 別の電力 ド メ イ ンに実装す る 必要があ り ます。 休眠モー ド に移行す る 前に、 Cortex-A9 プ ロ セ ッ サの状態 (休眠モー ド 中 も 電力オ ン に保持 さ れ る RAM の内容は除 く ) を外部 メ モ リ に保存す る 必要があ り ます。 こ れ ら の状態保存操作では、 次の処理を必ず行 う 必要があ り ます。 • すべての ARM レ ジ ス タ (CPSR レ ジ ス タ お よ び SPSR レ ジ ス タ を含む) を保存 する。 • すべてのシ ス テ ム レ ジ ス タ を保存す る 。 • すべてのデバ ッ グ関連の状態を保存す る 。 • すべての状態保存が完了 し た こ と を保証す る ため、 デー タ 同期バ リ ア命令を実 行す る 。 • その後で、 Cortex-A9 プ ロ セ ッ サが STANDBYWFI を使用 し て電力 コ ン ト ロ ー ラ と 通信 し 、 WFI 命令の実行に よ り 、 休眠モー ド に移行す る 準備がで き た こ と を 通知 し ます。 詳細については、 「電力管理 コ ン ト ロ ー ラ と の通信」 (ページ 2-13) を参照 し て下 さ い。 • 電力を オ フ にす る 前に、 外部の電力制御機構を使用 し て、 Cortex-A9 プ ロ セ ッ サへの リ セ ッ ト 信号を アサー ト す る 必要があ り ます。 外部の電力 コ ン ト ロ ー ラ が、 休眠状態か ら 実行状態への移行を ト リ ガ し ます。 外部 の電力 コ ン ト ロ ー ラ は、 電力が復元 さ れ る 前に Cortex-A9 プ ロ セ ッ サへの リ セ ッ ト を アサー ト す る 必要があ り ます。 電力が復元 さ れた後で、 Cortex-A9 プ ロ セ ッ サは、 リ セ ッ ト 状態を終了 し て、 保存 さ れた状態を復元す る 必要があ る か ど う か を判断で き ます。 シ ャ ッ ト ダウ ン モー ド シ ャ ッ ト ダ ウ ン モー ド では、 デバ イ ス全体への電力がオ フ にな り ます。 キ ャ ッ シ ュ を含めて、 すべての状態を ソ フ ト ウ ェ アに よ っ て外部に保存す る 必要があ り ます。 こ の状態保存は割 り 込みが不可能な状態で実行 さ れ、 デー タ 同期バ リ ア操作で終了 し ます。 その後で、 Cortex-A9 プ ロ セ ッ サは、 休眠モー ド への移行時 と 同様に、 デバ イ ス の電力を オ フ にす る 準備がで き た こ と を電力 コ ン ト ロ ー ラ に通知 し ます。 プ ロ セ ッ サは、 リ セ ッ ト を アサー ト す る こ と に よ っ て実行状態に戻 り ます。 注 リ セ ッ ト を実行す る 前にプ ロ セ ッ サに電力を オ ン にす る 必要があ り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-12 機能の説明 電力管理 コ ン ト ロー ラ と の通信 Cortex-A9 プ ロ セ ッ サ と 外部の電力管理コ ン ト ロ ー ラ と の通信は、 ス タ ンバ イ 信号、 Cortex-A9 の入力 ク ラ ンプ信号、 お よ び DBGNOPWRDWN を使用 し て実行で き ます。 ス タ ンバ イ 信号 こ れ ら の信号は、 外部の電力管理 コ ン ト ロ ー ラ を制御 し ます。 STANDBYWFI 信号は、 Cortex-A9 プ ロ セ ッ サが電力オ フ モー ド に入 る 準備がで き た こ と を示 し ます。 「ス タ ンバ イ 信号 と イ ベン ト 待ち信号」 (ページ A-6) を参照 し て下 さ い。 Cortex-A9 の入力信号 外部の電力管理 コ ン ト ロ ー ラ は、 NEONCLAMP と CPURAMCLAMP を使用 し て、 電力がオ フ にな る 前に、 Cortex-A9 の電力 ド メ イ ン を相互 に分離 し ます。 こ れ ら の信号は、 Cortex-A9 プ ロ セ ッ サに電力 ド メ イ ン ク ラ ン プが実装 さ れてい る 場合にのみ意味を持ち ます。 「電力管理信号」 (ページ A-7) を参照 し て下 さ い。 DBGNOPWRDWN DBGNOPWRDWN は、 シ ス テ ム電力 コ ン ト ロ ー ラ に接続 さ れ、 エ ミ ュ レー ト モー ド で動作す る 要求 と 解釈 さ れ ます。 こ のモー ド では、 ソ フ ト ウ ェ ア ま たはハー ド ウ ェ アのハン ド シ ェ ー ク に よ っ て要求 さ れて も 、 Cortex-A9 プ ロ セ ッ サ と PTM への電力供給は実際には停止 さ れません。 「その他のデバ ッ グ イ ン タ フ ェース信号」 (ページ A-23) を参照 し て下 さ い。 2.4.3 電力 ド メ イ ン Cortex-A9 ユニプ ロ セ ッ サには、 Cortex-A9 ロ ジ ッ ク と RAM ア レ イ の間、 ま たは Cortex-A9 ロ ジ ッ ク と NEON SIMD ロ ジ ッ ク の間 (NEON が存在す る 場合) にオプ シ ョ ン のプ レース ホルダが含まれてい る ため、 こ れ ら の部品を別々の電圧 ド メ イ ン に実装で き ます。 2.4.4 Cortex-A9 の電圧 ド メ イ ン Cortex-A9 プ ロ セ ッ サには、 次の電力 ド メ イ ン を含め る こ と がで き ます。 • Cortex-A9 プ ロ セ ッ サ ロ ジ ッ ク セル用の電力 ド メ イ ン • Cortex-A9 プ ロ セ ッ サ デー タ エ ン ジ ン用の電力 ド メ イ ン • Cortex-A9 プ ロ セ ッ サ RAM 用の電力 ド メ イ ン 電力 ド メ イ ン を、 図 2-4 (ページ 2-14) に示 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-13 機能の説明 䉮䉝㪇 㪥㪜㪦㪥 㪪㪠㪤㪛 㪭㫄㫇㪼㪇 䉪䊤䊮䊒 㪚㪧㪬㪇䈱 㪩㪘㪤 䉪䊤䊮䊒㪆 䊧䊔䊦䉲䊐䉺 㪭㫉㪸㫄㪇 㪚㪧㪬㪇䈱䊨䉳䉾䉪 㪂 㪝㪧㪬 㪂 㪝㪧㪬㪆㪤㪧㪜䊨䉳䉾䉪䈫 䊧䉳䉴䉺䊐䉜䉟䊦 㪭㪺㫇㫌㪇 䉪䊤䊮䊒 図 2-4 Cortex-A9 r2 設計の電力 ド メ イ ン FPU は CPU 電力 ド メ イ ンの一部です。 FPU ク ロ ッ ク は CPU ク ロ ッ ク に基づ き ます。 静的お よ び動的の高水準 ク ロ ッ ク ゲー ト が存在 し ます。 NEON SIMD デー タ パ ス と ロ ジ ッ ク は、 専用の ク ロ ッ ク と リ セ ッ ト 信号を持つ、 別の 電力 ド メ イ ン に存在 し ます。 静的お よ び動的の高水準 ク ロ ッ ク ゲー ト が存在 し ます。 NEON が存在す る 場合は、 SIMD 部分に電力や ク ロ ッ ク を供給せずに、 FPU (非 SIMD) コ ー ド を実行で き ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-14 機能の説明 2.5 使用制限 こ こ では、 メ モ リ の整合性について説明 し ます。 Cortex-A9 プ ロ セ ッ サ内の メ モ リ コ ヒ ーレ ン シは、 ウ ィ ー ク リ ーオーダ メ モ リ 整合性 モデルに従っ て維持 さ れます。 注 共有可能属性が ラ イ ト バ ッ ク 、 ノ ーマル メ モ リ 以外の メ モ リ 領域に適用 さ れてい る 場合、 その領域に保存 さ れてい る デー タ はキ ャ ッ シ ュ 不可 と し て扱われます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 2-15 第3章 プ ログ ラ マ モデル 本章では、 プ ロ セ ッ サの レ ジ ス タ と プ ロ グ ラ ミ ン グ方法について説明 し ます。 本章は次 のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「プ ロ グ ラ マモデルについて」 (ページ 3-2) • 「ThumbEE アーキ テ ク チ ャ」 (ページ 3-3) 「ア ド バン ス ト SIMD アーキ テ ク チ ャ 」 (ページ 3-4) • 「セキ ュ リ テ ィ 拡張機能アーキ テ ク チ ャ」 (ページ 3-5) • 「マルチプ ロ セ ッ シ ン グ拡張機能」 (ページ 3-6) • 「Jazelle 拡張機能」 (ページ 3-7) • • 「 メ モ リ モデル」 (ページ 3-8) 「Cortex-A9 プ ロ セ ッ サのア ド レ ス」 (ページ 3-9) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-1 プ ログ ラ マモデル 3.1 プ ログ ラ マモデルについて Cortex-A9 プ ロ セ ッ サは ARMv7-A アーキ テ ク チ ャ を実装 し てい ます。 ARMv7-A アーキ テ ク チ ャ の詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マ ニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-2 プ ログ ラ マモデル 3.2 ThumbEE アーキテ ク チ ャ Thumb 実行環境 (ThumbEE) 拡張機能は、 動的に生成 さ れ る コ ー ド の タ ーゲ ッ ト と し て設計 さ れた、 Thumb 命令セ ッ ト のバ リ ア ン ト です。 ThumbEE 命令セ ッ ト については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-3 プ ログ ラ マモデル 3.3 ア ド バン ス ト SIMD アーキテ ク チ ャ ア ド バン ス ト SIMD アーキ テ ク チ ャ 拡張機能は、 主にオーデ ィ オ、 ビデオ、 3 次元グ ラ フ ィ ッ ク 、 画像、 音声の処理を対象 と し た命令が追加 さ れた、 メ デ ィ アお よ び信 号処理アーキ テ ク チ ャ です。 注 ア ド バン ス ト SIMD アーキ テ ク チ ャ 拡張機能、 それに関連 し た実装、 お よ び対応 ソ フ ト ウ ェ ア を ま と めて、 NEON MPE と 呼びます。 NEON MPE には、 ア ド バン ス ト SIMD 命令 と ARM VFPv3 命令の両方が含まれます。 ア ド バン ス ト SIMD 命令 と VFP 命令はすべて、 ARM 状態 と Thumb 状態の両方で使 用で き ます。 詳細については、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照し て下 さ い。 実装固有の情報については、 『Cortex-A9 NEON メ デ ィ ア処理エン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-4 プ ログ ラ マモデル 3.4 セキ ュ リ テ ィ 拡張機能アーキテ ク チ ャ セ キ ュ リ テ ィ 拡張機能の目的は、 セ キ ュ ア な ソ フ ト ウ ェ ア環境の構築を可能にす る こ と です。 こ こ では、 次の操作について説明 し ます。 • 「シ ス テ ムブー ト シーケ ン ス」 詳細については、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照し て下 さ い。 3.4.1 シ ス テムブー ト シーケ ン ス 注意 セ キ ュ リ テ ィ 拡張機能を使用すれば、 プ ロ セ ッ サ周辺の適切な シ ス テ ム設計に よ っ て、 よ り セキ ュ ア な実行のための隔離 さ れた ソ フ ト ウ ェ ア環境の構築が可能にな り ます。 こ のテ ク ノ ロ ジではプ ロ セ ッ サがハー ド ウ ェ ア攻撃か ら 保護 さ れないため、 リ セ ッ ト 処理 コ ー ド を含むハー ド ウ ェ アが適切に保護 さ れてい る こ と を確認す る 必 要があ り ます。 プ ロ セ ッ サは常に、 NS ビ ッ ト が 0 に設定 さ れた、 セキ ュ ア状態の特権スーパバ イ ザ モー ド でブー ト し ます。 こ のため、 セキ ュ リ テ ィ 拡張機能の使用を試みない コ ー ド は、 常にセキ ュ ア状態で実行 さ れ ます。 ソ フ ト ウ ェ アでセキ ュ ア状態 と 非セキ ュ ア 状態の両方が使用 さ れ る 場合は、 複雑なオペレーテ ィ ン グ シ ス テ ム な ど の信頼性の 低い ソ フ ト ウ ェ アは非セキ ュ ア状態で、 よ り 信頼性の高い ソ フ ト ウ ェ アはセキ ュ ア 状態で実行 さ れます。 次のシーケ ン ス は、 セ キ ュ リ テ ィ 拡張機能の標準的な使用を想定 し た も のです。 1. セ キ ュ ア状態で リ セ ッ ト を終了 し ます。 2. メ モ リ と ペ リ フ ェ ラ ルのセキ ュ リ テ ィ 状態を構成 し ます。 メ モ リ と ペ リ フ ェ ラ ルの一部は、 セ キ ュ ア状態で実行 さ れてい る ソ フ ト ウ ェ アか ら のみア ク セ ス可 能です。 3. セ キ ュ ア オペレーテ ィ ン グ シ ス テ ム を初期化 し ます。 必要な操作はオペレー テ ィ ン グ シ ス テ ムに よ っ て異な り ますが、 一般的に、 キ ャ ッ シ ュ 、 MMU、 例 外ベ ク タ 、 ス タ ッ ク の初期化が含ま れ ます。 4. セ キ ュ ア オペレーテ ィ ン グ シ ス テ ム と 非セ キ ュ ア オペレーテ ィ ン グ シ ス テ ム と の実行を切 り 替え る 例外を処理す る 、 セキ ュ アモニ タ ソ フ ト ウ ェ ア を初期化 し ます。 5. (オプシ ョ ン) セキ ュ ア状態環境の一部の要素を、 以後の構成で変更 さ れない よ う に固定 し ます。 6. セキ ュ アモニ タ ソ フ ト ウ ェ アで SMC 命令を使用し て、 制御を非セキ ュ ア オペレー テ ィ ン グシ ス テムに渡し、 非セキ ュ ア オペレーテ ィ ン グシ ス テ ムの初期化を可 能に し ます。 必要な操作はオペレーテ ィ ン グシ ス テ ムに よ っ て異な り ますが、 一 般的にキ ャ ッ シ ュ、 MMU、 例外ベ ク タ、 ス タ ッ ク の初期化が含まれます。 セ キ ュ ア ソ フ ト ウ ェ ア全体のセキ ュ リ テ ィ は、 シ ス テ ム設計 と セキ ュ ア ソ フ ト ウ ェ ア自体に依存 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-5 プ ログ ラ マモデル 3.5 マルチ プ ロ セ ッ シ ング拡張機能 マルチプ ロ セ ッ シ ン グ拡張機能は、 マルチプ ロ セ ッ シ ン グ機能を拡張す る 機能セ ッ ト です。 詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-6 プ ログ ラ マモデル 3.6 Jazelle 拡張機能 Cortex-A9 プ ロ セ ッ サは、 Jazelle 拡張機能を ハー ド ウ ェ ア でサポー ト し てい ま す。 こ のプ ロ セ ッ サは、 ほ と ん ど のバ イ ト コ ー ド の実行を高速化 し ます。 一部のバ イ ト コ ー ド は、 ソ フ ト ウ ェ アルーチ ン に よ り 実行 さ れ ます。 詳細については、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照し て下 さ い。 第 5 章 Jazelle DBX レ ジ ス タ も 参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-7 プ ログ ラ マモデル 3.7 メ モ リ モデル Cortex-A9 プ ロ セ ッ サは、 メ モ リ を、 0 か ら 昇順に番号が付け ら れたバ イ ト の配列 と し て参照 し ます。 例えば、 バ イ ト 0 ~ 3 は最初に ス ト ア さ れ る ワー ド を、 バ イ ト 4 ~ 7 は 2 番目に ス ト ア さ れ る ワ ー ド を保持 し ます。 プ ロ セ ッ サは、 リ ト ルエ ンデ ィ ア ン形式 と ビ ッ グエ ンデ ィ ア ン形式のいずれかで ワー ド を メ モ リ に ス ト アで き ます。 命令は常に リ ト ルエ ンデ ィ ア ン と し て扱われます。 注 ARMv7 は、 BE-32 メ モ リ モデルを サポー ト し てい ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-8 プ ログ ラ マモデル 3.8 Cortex-A9 プ ロ セ ッ サのア ド レ ス Cortex-A9 では、 VA と MVA は同一です。 Cortex-A9 プ ロ セ ッ サが非セキ ュ ア状態で動作 し てい る 場合は、 非セキ ュ アバージ ョ ンの変換テーブル ベース レ ジ ス タ を使用 し て、 変換テーブルル ッ ク ア ッ プが実行 さ れ ます。 こ の状況では、 VA は非セキ ュ ア PA に し か変換で き ません。 プ ロ セ ッ サが セ キ ュ ア状態の場合は、 セキ ュ アバージ ョ ンの変換テーブル ベース レ ジ ス タ を使用 し て変換テーブルル ッ ク ア ッ プが実行 さ れ ます。 こ の状況では、 VA のセ キ ュ リ テ ィ 状態は、 そのア ド レ ス の変換テーブル記述子の NS ビ ッ ト に よ っ て決定 さ れます。 プ ロ セ ッ サシ ス テ ム内のア ド レ ス タ イ プ を、 表 3-1 に示 し ます。 表 3-1 プ ロ セ ッ サシ ス テム内のア ド レ ス タ イ プ プロセ ッサ キャ ッ シュ 変換ル ッ ク アサイ ド バ ッ フ ァ AXI バス デー タ VA デー タ キ ャ ッ シ ュ は、 物理 イ ンデ ク ス物理 タ グ付 き (PIPT) です。 仮想ア ド レ ス を 物理ア ド レ ス に変換す る 物理 アド レス 命令 VA 命令キ ャ ッ シ ュ は、 仮想 イ ンデ ク ス物理 タ グ付 き (VIPT) です。 次に示すのは、 Cortex-A9 プ ロ セ ッ サか ら 命令が要求 さ れた と き に発生す る ア ド レ ス 操作の例です。 1. Cortex-A9 プ ロ セ ッ サは、 その と き の状態に応 じ て、 セキ ュ ア VA ま たは非セ キ ュ ア VA と し て、 命令の VA を発行 し ます。 2. 命令キ ャ ッ シ ュ には、 VA の低位ビ ッ ト に よ っ て イ ンデ ク ス が付け ら れます。 TLB は、 キ ャ ッ シ ュ ル ッ ク ア ッ プ と 並行 し て変換を実行 し ます。 プ ロ セ ッ サが セ キ ュ ア状態の場合は、 変換にセキ ュ ア記述子が使用 さ れ ます。 そ う でない場 合は、 非セキ ュ ア記述子が使用 さ れます。 3. TLB が VA に対 し て実行 し た保護チ ェ ッ ク でアボー ト が発生せず、 PA タ グが命 令キ ャ ッ シ ュ 内に存在す る 場合は、 命令デー タ がプ ロ セ ッ サに返 さ れます。 4. キ ャ ッ シ ュ ミ ス が発生 し た場合は、 PA が AXI バ ス イ ン タ フ ェ ース に渡 さ れ、 外部ア ク セ ス が実行 さ れます。 コ アが非セキ ュ ア状態にあ る と き 、 外部ア ク セ ス は常に非セキ ュ アです。 セ キ ュ ア状態では、 外部ア ク セ ス は、 選択 さ れた記 述子の NS 属性値に応 じ て、 セキ ュ ア ま たは非セ キ ュ アにな り ます。 ま た、 セ キ ュ ア状態では、 レベル 1 記述子が NS と し てマー ク さ れていて も 、 レベル 1 と レベル 2 のテーブル ウ ォ ー ク ア ク セ ス はセキ ュ ア と し てマー ク さ れます。 注 レベル 1 エ ン ト リ が非セキ ュ ア と し てマー ク さ れていて も 、 セキ ュ ア レベル 2 ル ッ ク ア ッ プはセキ ュ アにな り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 3-9 第4章 シス テム制御 本章では、 シ ス テ ム制御レ ジ ス タ の構造、 動作、 お よ び使用方法について説明 し ます。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「シ ス テ ム制御について」 (ページ 4-2) • 「レ ジ ス タ の概要」 (ページ 4-3) 「レ ジ ス タ の説明」 (ページ 4-8) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-1 システム制御 4.1 シ ス テム制御について シ ス テ ム制御 コ プ ロ セ ッ サ CP15 は、 プ ロ セ ッ サに実装 さ れてい る 機能に関す る ス テー タ ス情報を制御お よ び提供 し ます。 シ ス テ ム制御 コ プ ロ セ ッ サの主な機能は次 の と お り です。 • シ ス テ ム全体の制御 と 構成 • MMU の構成 と 管理 • キ ャ ッ シ ュ の構成 と 管理 • シ ス テ ムパフ ォーマ ン ス の監視 4.1.1 非推奨レ ジ ス タ ARMv7-A では、 次に示す機能については、 等価な機能が命令セ ッ ト に存在 し ます。 • 命令同期バ リ ア • デー タ 同期バ リ ア • デー タ メ モ リ バ リ ア • 割 り 込み待ち こ れ ら の レ ジ ス タ の使用はオプシ ョ ン で、 非推奨です。 ま た、 ARM アーキ テ ク チ ャ v7 では、 高速 コ ン テ キ ス ト ス イ ッ チ拡張機能が非推奨 で、 Cortex-A9 プ ロ セ ッ サには実装 さ れてい ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-2 システム制御 レ ジ ス タ の概要 4.2 すべての CP15 シ ス テ ム制御レ ジ ス タ を、 レ ジ ス タ へのア ク セ ス に使用 さ れ る パ ラ メ ー タ 順に、 表 4-1 に示 し ます。 • 1 次 CP15 コ プ ロ セ ッ サ レ ジ ス タ 、 CRn • opcode_1 の値 • 2 次 CP15 コ プ ロ セ ッ サ レ ジ ス タ 、 CRm • opcode_2 の値 表には、 レ ジ ス タ の CRn グループご と の属性概要への参照が含まれてい ます。 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 に記載 さ れてい る レ ジ ス タ につい ては、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル、 ARMv7-A お よ び ARMv7-M エデ ィ シ ョ ン』 , http://silver.arm.com/browse/AR570 を参照 し て下 さ い。 表 4-1 CP15 シ ス テム制御コ プ ロ セ ッ サレ ジ ス タ の概要 CRn 名前 レ ジ ス タ の説明 c0 - 「CP15 c0 レ ジ ス タ の概要」 (ページ 4-8) MIDR メ イ ン ID レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 CTR キ ャ ッ シ ュ タ イ プ レ ジ ス タ 、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TCMTR TCM タ イ プ レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TLBTR 「TLB タ イ プ レ ジ ス タ 」 (ページ 4-9) MPIDR 「マルチプ ロ セ ッ サ類似性レ ジ ス タ 」 (ページ 4-10) ID_PFR0 プ ロ セ ッ サ機能レ ジ ス タ 0、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_PFR1 プ ロ セ ッ サ機能レ ジ ス タ 1、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_DFR0 デバ ッ グ機能レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_MMFR0 メ モ リ モデル機能レ ジ ス タ 0、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_MMFR1 メ モ リ モデル機能レ ジ ス タ 1、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_MMFR2 メ モ リ モデル機能レ ジ ス タ 2、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_MMFR3 メ モ リ モデル機能レ ジ ス タ 3、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_ISAR0 命令セ ッ ト 属性レ ジ ス タ 0、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_ISAR1 命令セ ッ ト 属性レ ジ ス タ 1、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_ISAR2 命令セ ッ ト 属性レ ジ ス タ 2、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_ISAR3 命令セ ッ ト 属性レ ジ ス タ 3、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ID_ISAR4 命令セ ッ ト 属性レ ジ ス タ 4、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 CCSIDR 「キ ャ ッ シ ュ サ イ ズ識別レ ジ ス タ 」 (ページ 4-11) CLIDR 「キ ャ ッ シ ュ レベル ID レ ジ ス タ 」 (ページ 4-13) AIDR 「補助 ID レ ジ ス タ 」 (ページ 4-13) CSSELR 「キ ャ ッ シ ュ サ イ ズ選択レ ジ ス タ 」 (ページ 4-14) c0 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-3 システム制御 表 4-1 CP15 シス テム制御コ プ ロ セ ッ サレ ジ ス タ の概要 (続き) CRn 名前 レ ジ ス タ の説明 c1 - 「CP15 c1 レ ジ ス タ の概要」 (ページ 4-15) SCTLR 「シ ス テ ム制御レ ジ ス タ 」 (ページ 4-15) ACTLR 「補助制御レ ジ ス タ 」 (ページ 4-18) CPACR 「コ プ ロ セ ッ サア ク セ ス制御レ ジ ス タ 」 (ページ 4-20) SCR セキ ュ ア構成レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 SDER 「セキ ュ アデバ ッ グ イ ネーブルレ ジ ス タ」 (ページ 4-22) NSACR 「非セキ ュ ア ア ク セ ス制御レ ジ ス タ 」 (ページ 4-23) VCR 「仮想化制御レ ジ ス タ 」 (ページ 4-24) - 「CP15 c2 レ ジ ス タ の概要」 (ページ 4-25) TTBR0 変換テーブル ベース レ ジ ス タ 0、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TTBR1 変換テーブル ベース レ ジ ス タ 1、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TTBCR 変換テーブルベース制御レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 - 「CP15 c3 レ ジ ス タ の概要」 (ページ 4-26) DACR ド メ イ ン ア ク セ ス制御レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 c4 - 「CP15 c4、 未使用」 (ページ 4-26) c5 - 「CP15 c5 レ ジ ス タ の概要」 (ページ 4-26) DFSR データ フ ォール ト ス テータ ス レ ジ ス タ、 『ARM アーキテ ク チャ リ フ ァ レ ン ス マニ ュ アル』 を参照 IFSR 命令フ ォール ト ス テー タ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 ADFSR 補助デー タ フ ォール ト ス テー タ ス レ ジ ス タ 、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 AIFSR 補助命令フ ォール ト ス テー タ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を 参照 - 「CP15 c6 レ ジ ス タ の概要」 (ページ 4-26) DFAR デー タ フ ォール ト ア ド レ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 IFAR 命令フ ォール ト ア ド レ ス レ ジ ス タ 、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 c2 c3 c6 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-4 システム制御 表 4-1 CP15 シス テム制御コ プ ロ セ ッ サレ ジ ス タ の概要 (続き) CRn 名前 レ ジ ス タ の説明 c7 - 「CP15 c7 レ ジ ス タ の概要」 (ページ 4-27) ICIALLUIS 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 BPIALLIS PAR ICIALLU ICIMVAU BPIALL DCIMVAC DCISW V2PCWPR DCCVAC DCCSW DCCVAU DCCIMVAC DCCISW c8 - 「CP15 c8 レ ジ ス タ の概要」 (ページ 4-28) TLBIALLIS 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TLBIMVAIS TLBIASIDIS TLBIMVAAIS TLBIALL TLBIMVA TLBIASID TLBIMVAA ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-5 システム制御 表 4-1 CP15 シス テム制御コ プ ロ セ ッ サレ ジ ス タ の概要 (続き) CRn 名前 レ ジ ス タ の説明 c9 - 「CP15 c9 レ ジ ス タ の概要」 (ページ 4-28) PMCR パフ ォーマ ン ス モニ タ 制御レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMCNTENSET カ ウ ン ト イ ネーブル セ ッ ト レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMCNTENCLR カ ウ ン ト イ ネーブル ク リ ア レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMOVSR オーバフ ロ ーフ ラ グ ス テー タ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を 参照 PMSWINC ソ フ ト ウ ェ ア イ ン ク リ メ ン ト レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を 参照 PMSELR イ ベン ト カ ウ ン タ 選択レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMCCNTR サ イ ク ルカ ウ ン ト レ ジ ス タ 、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMXEVTYPER イ ベン ト 選択レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMXEVCNTR パフ ォーマ ン ス モニ タ カ ウ ン ト レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を 参照 PMUSERENR ユーザ イ ネーブル レ ジ ス タ 、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMINTENSET 割 り 込み イ ネーブルセ ッ ト レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 PMINTENCLR 割 り 込み イ ネーブル ク リ ア レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 - 「CP15 c10 レ ジ ス タ の概要」 (ページ 4-29) - 「TLB ロ ッ ク ダ ウ ン レ ジ ス タ 」 (ページ 4-29) PRRR 1 次領域再マ ッ プ レ ジ ス タ 、 『ARM アーキテ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 NRRR ノ ーマル メ モ リ 再マ ッ プ レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 - 「CP15 c11 レ ジ ス タ の概要」 (ページ 4-30) PLEIDR 「PLE ID レ ジ ス タ」 (ページ 4-30) PLEASR 「PLE 動作ス テー タ ス レ ジ ス タ 」 (ページ 4-31) PLEFSR 「PLE FIFO ス テー タ ス レ ジ ス タ」 (ページ 4-32) PLEUAR 「プ リ ロ ー ド エン ジ ン ユーザア ク セ ス許可レ ジ ス タ」 (ページ 4-32) PLEPCR 「プ リ ロ ー ド エン ジ ン パ ラ メ ー タ 制御レ ジ ス タ」 (ページ 4-33) - 「CP15 c12 レ ジ ス タ の概要」 (ページ 4-34) VBAR ベ ク タ ベース ア ド レ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 MVBAR モニ タ ベ ク タ ベース ア ド レ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を 参照 ISR 割 り 込みス テー タ ス レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 - 「仮想化割 り 込みレ ジ ス タ 」 (ページ 4-34) - 「CP15 c13 レ ジ ス タ の概要」 (ページ 4-35) FCSEIDR FCSE PID レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 CONTEXTIDR コ ン テ キ ス ト ID レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TPIDRURW ユーザ読み出 し / 書き 込み ソ フ ト ウ ェ ア ス レ ッ ド レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 TPIDRURO ユーザ読み出 し 専用 ソ フ ト ウ ェ ア ス レ ッ ド レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マ ニ ュ アル』 を参照 c10 c11 c12 c13 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-6 システム制御 表 4-1 CP15 シス テム制御コ プ ロ セ ッ サレ ジ ス タ の概要 (続き) 名前 レ ジ ス タ の説明 TPIDRPRW 特権専用 ソ フ ト ウ ェ ア ス レ ッ ド レ ジ ス タ 、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を 参照 c14 - 「CP15 c14、 未使用」 (ページ 4-36) c15 - 「CP15 c15 レ ジ ス タ の概要」 (ページ 4-36) - 「電力制御レ ジ ス タ 」 (ページ 4-36) - 「NEON ビ ジーレ ジ ス タ 」 (ページ 4-37) - 「構成ベース ア ド レ ス レ ジ ス タ」 (ページ 4-38) - 「TLB ロ ッ ク ダ ウ ン操作」 (ページ 4-39) CRn ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-7 システム制御 4.3 レ ジ ス タ の説明 こ こ では、 レ ジ ス タ へのア ク セ ス に使用 さ れ る 1 次 CP15 レ ジ ス タ 番号 CR n でグ ループ分け さ れた、 シ ス テ ム制御 コ プ ロ セ ッ サの レ ジ ス タ 割 り 当て と リ セ ッ ト 時の 値の要約を、 表に示 し ます。 CRn • • • • • • グループご と の レ ジ ス タ の要約では、 次の表記が使用 さ れます。 CRn は、 CP15 内部の レ ジ ス タ 番号です。 Op1 は、 レ ジ ス タ の Opcode_1 の値です。 CRm は、 操作対象の レ ジ ス タ です。 Op2 は、 レ ジ ス タ の Opcode_2 の値です。 タ イ プは次の と お り です。 — 読み出 し 専用 (RO) — 書 き 込み専用 (WO) — 読み出 し / 書 き 込み (RW) リ セ ッ ト 時の値は、 レ ジ ス タ の リ セ ッ ト 時の値です。 「PLE の新規チ ャ ネルプ ロ グ ラ ム操作」 (ページ 9-5) で説明 さ れてい る 新規チ ャ ネル のプ ロ グ ラ ム操作を除いて、 すべてのシ ス テ ム制御 コ プ ロ セ ッ サ レ ジ ス タ は 32 ビ ッ ト 幅です。 予約レ ジ ス タ は RAZ/WI です。 こ のセ ク シ ョ ン では、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 に記載 さ れ てい る レ ジ ス タ に関す る 情報は繰 り 返 し ません。 本章では、 実装定義の制御 コ プ ロ セ ッ サ レ ジ ス タ について説明 し ます。 4.3.1 CP15 c0 レ ジ ス タ の概要 CRn が c0 の と き にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-2 に示 し ます。 表 4-2 c0 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 MIDR RO 0x412FC090 r2p0 の メ イ ン ID レ ジ ス タ MIDR RO 0x412FC091 r2p1 の メ イ ン ID レ ジ ス タ MIDR RO 0x412FC092 r2p2 の メ イ ン ID レ ジ ス タ 1 CTR RO 0x83338003 キャ ッ シュ タ イプ レジス タ 2 TCMTR RO 0x00000000 TCM タ イ プ レ ジ ス タ 3 TLBTRa RO - 「TLB タ イ プ レ ジ ス タ 」 (ページ 4-9) 5 MPIDR RO - 「マルチプ ロ セ ッ サ類似性レ ジ ス タ」 (ページ 4-10) c1 ARM DDI 0388FJ ID013111 0 ID_PFR0 RO 0x00001231 プ ロ セ ッ サ機能レ ジ ス タ 0 1 ID_PFR1 RO 0x00000011 プ ロ セ ッ サ機能レ ジ ス タ 1 2 ID_DFR0 RO 0x00010444 デバ ッ グ機能レ ジ ス タ 2 4 ID_MMFR0 RO 0x00100103 メ モ リ モデル機能レ ジ ス タ 0 5 ID_MMFR1 RO 0x20000000 メ モ リ モデル機能レ ジ ス タ 1 6 ID_MMFR2 RO 0x01230000 メ モ リ モデル機能レ ジ ス タ 2 7 ID_MMFR3 RO 0x00102111 メ モ リ モデル機能レ ジ ス タ 3 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-8 システム制御 表 4-2 c0 シス テム制御レ ジ ス タ (続き) Op1 1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 c2 0 ID_ISAR0 RO 0x00101111 命令セ ッ ト 属性レ ジ ス タ 0 1 ID_ISAR1 RO 0x13112111 命令セ ッ ト 属性レ ジ ス タ 1 2 ID_ISAR2 RO 0x21232041 命令セ ッ ト 属性レ ジ ス タ 2 3 ID_ISAR3 RO 0x11112131 命令セ ッ ト 属性レ ジ ス タ 3 4 ID_ISAR4 RO 0x00011142 命令セ ッ ト 属性レ ジ ス タ 4 0 CCSIDR RO - 「キ ャ ッ シ ュ サ イ ズ識別レ ジ ス タ」 (ペー c0 ジ 4-11) 1 CLIDR RO 0x09000003 「キ ャ ッ シ ュ レベル ID レ ジ ス タ 」 (ペー ジ 4-13) 2 c0 7 AIDR RO 0x00000000 「補助 ID レ ジ ス タ 」 (ページ 4-13) 0 CSSELR RW - 「キ ャ ッ シ ュ サ イ ズ選択レ ジ ス タ」 (ペー ジ 4-14) a. TLBSIZE に よ っ て異な り ます。 「TLB タ イ プ レ ジ ス タ 」 を参照 し て下 さ い。 4.3.2 TLB タ イ プ レ ジ ス タ TLBTR の特徴は次の と お り です。 目的 TLB の ロ ッ ク 可能エ ン ト リ の数を返 し ます。 使用制限 TLBTR の使用制限は次の と お り です。 • • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 特権モー ド でのみア ク セ ス可能です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-2 (ページ 4-8) を参照 し て下 さ い。 TLBTR の ビ ッ ト 割 り 当て を、 図 4-1 に示 し ます。 31 24 23 SBZ 16 15 ILSize 8 7 DLSize 2 1 0 SBZ/UNP TLB_size nU 図 4-1 TLBTR のビ ッ ト 割 り 当て TLBTR の ビ ッ ト 割 り 当て を、 表 4-3 に示 し ます。 表 4-3 TLBTR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:24] SBZ - [23:16] ILsize 命令 TLB の ロ ッ ク 可能エン ト リ の数を示 し ます。 Cortex-A9 プ ロ セ ッ サでは 0 です。 [15:8] DLsize 統一 TLB ま たはデー タ TLB の ロ ッ ク 可能エン ト リ の数を示 し ます。 Cortex-A9 プ ロ セ ッ サでは 4 です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-9 システム制御 表 4-3 TLBTR のビ ッ ト 割 り 当て (続き) ビッ ト 名前 機能 [7:2] SBZ ま たは UNP - [1] TLB_size 0 = TLB のエン ト リ 数は 64 です。 1 = TLB のエン ト リ 数は 128 です。 [0] nU TLB が統一 さ れてい る か (0)、 命令 TLB と デー タ TLB が分離 さ れてい る か を示 し ます。 0 = Cortex-A9 プ ロ セ ッ サには統一 TLB が搭載 さ れてい ます。 TLBTR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,0,<Rd>,c0,c0,3; returns TLB details 4.3.3 マルチ プ ロ セ ッ サ類似性レ ジ ス タ MPIDR の特徴は次の と お り です。 目的 次の こ と を識別 し ます。 • プ ロ セ ッ サが Cortex-A9 MPCore 実装の一部か ど う か • Cortex-A9 MPCore プ ロ セ ッ サ内部の Cortex-A9 プ ロ セ ッ サア クセス • マルチプ ロ セ ッ サ ク ラ ス タ シ ス テ ム内の タ ーゲ ッ ト Cortex-A9 プ ロ セ ッ サ 使用制限 MPIDR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 構成 すべての構成で使用可能です。 U ビ ッ ト (ビ ッ ト [30]) の値は、 構成がマルチプ ロ セ ッ サ構成かユニプ ロ セ ッ サ構成かを示 し ます。 属性 レ ジ ス タ の概要については、 表 4-2 (ページ 4-8) を参照 し て下 さ い。 MPIDR の ビ ッ ト 割 り 当て を、 図 4-2 に示 し ます。 㪊㪈 㪊㪇 㪉㪐 㪈 㪈㪉 㪈㪈 㪪㪙㪱 㪏 㪎 䉪䊤䉴䉺㪠㪛 㪉 㪈 㪇 㪪㪙㪱 㪚㪧㪬 㪠㪛 㪬䊎䉾䊃 図 4-2 MPIDR のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-10 システム制御 MPIDR の ビ ッ ト 割 り 当て を、 表 4-4 に示 し ます。 表 4-4 MPIDR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31] - レ ジ ス タ が新 し いマルチプ ロ セ ッ サ形式を使用 し てい る こ と を示 し ます。 こ のビ ッ ト は常に 1 です。 [30] U ビッ ト マルチプ ロ セ ッ シ ン グ拡張機能。 0 = プ ロ セ ッ サは MPCore ク ラ ス タ の一部です。 1 = プ ロ セ ッ サはユニプ ロ セ ッ サです。 [29:12] - SBZ [11:8] クラスタ ID CLUSTERID 構成ピ ン で読み取 ら れた値a。 複数の Cortex-A9 MPCore プ ロ セ ッ サが存在する シ ス テ ムで、 それ ぞれの Cortex-A9 MPCore プ ロ セ ッ サを識別 し ます。 ユニ プ ロ セ ッ サ構成の場合は SBZ です。 [7:2] - SBZ [1:0] CPU ID Cortex-A9 MPCore 構成内の CPU 番号を示 し ます。 • 0x0 プ ロ セ ッ サは CPU0 です。 • 0x1 プ ロ セ ッ サは CPU1 です。 • 0x2 プ ロ セ ッ サは CPU2 です。 • 0x3 プ ロ セ ッ サは CPU3 です。 ユニプ ロ セ ッ サバージ ョ ンでは、 こ の値が 0x0 に固定 さ れ ます。 a. ユニプ ロ セ ッ サ実装には、 CLUSTERID ピ ンは存在 し ません。 MPIDR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,0,<Rd>,c0,c0,5; read Multiprocessor ID register 4.3.4 キ ャ ッ シ ュサイ ズ識別レ ジ ス タ CCSIDR の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 CSSELR で選択 さ れた キ ャ ッ シ ュ のアーキ テ ク チ ャ に関す る 情報 を提供 し ます。 使用制限 CCSIDR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-2 (ページ 4-8) を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-11 システム制御 CCSIDR の ビ ッ ト 割 り 当て を、 図 4-3 に示 し ます。 31 30 29 28 27 13 12 NumSets 2 Associativity 0 䊤䉟䊮 䉰䉟䉵 WT WB RA WA 図 4-3 CCSIDR のビ ッ ト 割 り 当て CSSIDR のビ ッ ト 割 り 当て を、 表 4-5 に示 し ます。 表 4-5 CCSIDR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31] WT ラ イ ト スルーがサポー ト さ れてい る か ど う か を示 し ます。 0 = ラ イ ト スルーがサポー ト さ れてい ません。 1 = ラ イ ト スルーがサポー ト さ れてい ます。 [30] WB ラ イ ト バ ッ ク がサポー ト さ れてい る か ど う か を示 し ます。 0 = ラ イ ト バ ッ ク がサポー ト さ れてい ません。 1 = ラ イ ト バ ッ ク がサポー ト さ れてい ます。 [29] RA 読み出 し 割 り 当てがサポー ト さ れてい る か ど う か を示 し ます。 0 = 読み出 し 割 り 当てがサポー ト さ れてい ません。 1 = 読み出 し 割 り 当てがサポー ト さ れてい ます。 [28] WA 書 き 込み割 り 当てがサポー ト さ れてい る か ど う か を示 し ます。 0 = 書 き 込み割 り 当てがサポー ト さ れてい ません。 1 = 書 き 込み割 り 当てがサポー ト さ れてい ます。 [27:13] NumSets セ ッ ト 数を示 し ます。 0x7F = 16KB キ ャ ッ シ ュ サ イ ズ 0xFF = 32KB キ ャ ッ シ ュ サ イ ズ 0x1FF = 64KB キ ャ ッ シ ュ サ イ ズ [12:3] Associativity ウ ェ イ 数を示 し ます。 b0000000011 = 4 ウ ェ イ [2:0] LineSize ワー ド 数を示 し ます。 b001 = 8 ワー ド / 行 CCSIDR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 1, <Rd>, c0, c0, 0; Read current Cache Size Identification Register CSSELR で命令キ ャ ッ シ ュ 値を読み出 し た場合、 ビ ッ ト [31:28] は b0010 です。 CSSELR でデー タ キ ャ ッ シ ュ 値を読み出 し た場合、 ビ ッ ト [31:28] は b0111 です。 「キ ャ ッ シ ュ サ イ ズ選択レ ジ ス タ 」 (ページ 4-14) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-12 システム制御 4.3.5 キ ャ ッ シ ュ レ ベル ID レ ジ ス タ CLIDR の特徴は次の と お り です。 目的 プ ロ セ ッ サに実装 さ れ、 シ ス テ ム制御 コ プ ロ セ ッ サの管理下にあ る キ ャ ッ シ ュ レベルを示 し ます。 使用制限 CLIDR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-2 (ページ 4-8) を参照 し て下 さ い。 CLIDR の ビ ッ ト 割 り 当て を、 図 4-4 に示 し ます。 31 30 29 27 26 LoU 24 23 LoC 21 20 L oUIS 18 17 CL 7 15 14 CL 6 12 11 10 CL 5 CL 4 8 6 5 CL 3 3 2 CL 2 0 CL 1 ੍⚂ 図 4-4 CLIDR のビ ッ ト 割 り 当て CLIDR の ビ ッ ト 割 り 当て を、 表 4-6 に示 し ます。 表 4-6 CLIDR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:30] - UNP ま たは SBZ [29:27] LoU b001 = 統一レベル [26:24] LoC b001 = コ ヒ ーレ ン シ レベル [23:21] LoUIS b001 = 内部共有可能統一レベル [20:18] CL 7 b000 = CL 7 にキ ャ ッ シ ュ が存在 し ない [17:15] CL 6 b000 = CL 6 にキ ャ ッ シ ュ が存在 し ない [14:12] CL 5 b000 = CL 5 にキ ャ ッ シ ュ が存在 し ない [11:9] CL 4 b000 = CL 4 にキ ャ ッ シ ュ が存在 し ない [8:6] CL 3 b000 = CL 3 にキ ャ ッ シ ュ が存在 し ない [5:3] CL 2 b000 = CL 2 に統一キ ャ ッ シ ュ が存在 し ない [2:0] CL 1 b011 = CL 1 に命令キ ャ ッ シ ュ と デー タ キ ャ ッ シ ュ が別々に存在す る CLIDR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 1,<Rd>, c0, c0, 1; Read CLIDR 4.3.6 補助 ID レ ジ ス タ AIDR の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 実装固有の情報を提供 し ます。 使用制限 AIDR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-13 システム制御 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-2 (ページ 4-8) を参照 し て下 さ い。 補助レベル ID レ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,1,<Rd>,c0,c0,7; Read Auxiliary ID Register 注 こ の実装では AIDR は使用 さ れ ません。 4.3.7 キ ャ ッ シ ュサイ ズ選択レ ジ ス タ CSSELR の特徴は次の と お り です。 目的 現在の CCSIDR を選択 し ます。 使用制限 CSSELR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態 と 非セキ ュ ア状態でバン ク さ れ ます。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-2 (ページ 4-8) を参照 し て下 さ い。 CSSELR の ビ ッ ト 割 り 当て を、 図 4-5 に示 し ます。 31 4 3 ੍⚂ 1 0 䊧䊔䊦 InD 図 4-5 CSSELR のビ ッ ト 割 り 当て CSSELR の ビ ッ ト 割 り 当て を、 表 4-7 に示 し ます。 表 4-7 CSSELR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:4] - UNP ま たは SBZ [3:1] レベル 選択 さ れた キ ャ ッ シ ュ レベル、 RAZ/WI。 Cortex-A9 プ ロ セ ッ サ内のキ ャ ッ シ ュ レベルは 1 つ し かないため、 こ の フ ィ ール ド の値は b000 です。 [0] InD 1 = 命令キ ャ ッ シ ュ 0 = デー タ キ ャ ッ シ ュ CSSELR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 2,<Rd>, c0, c0, 0; Read CSSELR MCR p15, 2,<Rd>, c0, c0, 0; Write CSSELR ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-14 システム制御 4.3.8 CP15 c1 レ ジ ス タ の概要 CRn が c1 の場合にア ク セ ス可能な CP15 レ ジ ス タ を、 表 4-8 に示 し ます。 表 4-8 c1 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 SCTLR RW -a 「シ ス テ ム制御レ ジ ス タ 」 1 ACTLRb RW 0x00000000 「補助制御レ ジ ス タ 」 (ページ 4-18) 2 CPACR RW c 「 コ プ ロ セ ッ サア ク セ ス制御レ ジ ス タ」 (ページ 4-20) 0 SCRd RW 0x00000000 セキ ュ ア構成レ ジ ス タ 1 SDERc RW 0x00000000 「セキ ュ アデバ ッ グ イ ネーブルレ ジ ス タ 」 (ページ 4-22) 2 NSACR RWe f 「非セキ ュ ア ア ク セ ス制御レ ジ ス タ 」 (ページ 4-23) 3 VCRc RW 0x00000000 「仮想化制御レ ジ ス タ 」 (ページ 4-24) c1 a. b. c. d. e. f. 4.3.9 入力信号に よ っ て異な り ます。 「シ ス テ ム制御レ ジ ス タ 」 を参照 し て下 さ い。 非セキ ュ ア状態では、 NSACR[18] = 0 の場合は RO、 NSACR[18] = 1 の場合は RW です。 NEON が存在す る 場合は 0x00000000 で、 NEON が存在 し ないか、 電力オ フ の場合は 0xC0000000 です。 非セキ ュ ア状態ではア ク セ ス で き ません。 こ の レ ジ ス タ は、 セキ ュ ア状態では読み出 し / 書 き 込み、 非セキ ュ ア状態では読み出 し 専用です。 NEON が存在す る 場合は 0x00000000 で、 NEON が存在 し ない場合は 0x0000C000 です。 シ ス テム制御レ ジ ス タ SCTLR の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 次の制御 と 構成を提供 し ます。 • メ モ リ ア ラ イ メ ン ト と エ ンデ ィ ア ン形式 • メ モ リ 保護 と フ ォール ト 動作 • MMU と キ ャ ッ シ ュ の稼動 • 割 り 込み と 割 り 込みレ イ テ ン シ動作 • 例外ベ ク タ の位置 • プ ロ グ ラ ム フ ロ ー予測 使用制限 SCTLR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • 部分的にバン ク さ れ ます。 バン ク ビ ッ ト と セキ ュ ア変更専 用ビ ッ ト を、 表 4-9 (ページ 4-16) に示 し ます。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-8 を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-15 システム制御 SCTLR の ビ ッ ト 割 り 当て を、 図 4-6 に示 し ます。 㪊㪈 㪊㪇 㪉㪐 㪉㪏 㪉㪎 㪉㪍 㪉㪌 㪉㪋 㪉㪊 㪉㪉 㪉㪈 㪉㪇 㪈㪐 㪈㪏 㪈㪎 㪈㪍 㪈㪌 㪈㪋 㪈㪊 㪈㪉 㪈㪈 㪈㪇 㪐 㪭 㪠 ੍⚂ 㪫㪜 㪘㪝㪜 㪫㪩㪜 㪜㪜 ੍⚂ 㪥㪤㪝㪠 㪟㪘 㪩㪩䊎䉾䊃 㪱 㪊 㪉 㪈 㪇 ੍⚂ 㪚 㪘 㪤 㪪㪮䊎䉾䊃 図 4-6 SCTLR のビ ッ ト 割 り 当て SCTLR の ビ ッ ト 割 り 当て を、 表 4-9 に示 し ます。 表 4-9 SCTLR のビ ッ ト 割 り 当て ビッ ト 名前 ア ク セス 機能 [31] - - SBZ [30] TE バン ク Thumb 例外 イ ネーブル。 0 = 例外は、 リ セ ッ ト も 含めて、 ARM 状態で処理 さ れます。 1 = 例外は、 リ セ ッ ト も 含めて、 Thumb 状態で処理 さ れます。 リ セ ッ ト 時の値は、 TEINIT 信号に よ っ て定義 さ れます。 [29] AFE バン ク ア ク セ ス フ ラ グ イ ネーブルビ ッ ト 。 0 = フルア ク セ ス許可動作。 こ れは リ セ ッ ト 時の値です。 ソ フ ト ウ ェ アに よ っ て、 ARMv6K 動作 と のバ イ ナ リ 互換性が維持 さ れます。 1 = 簡易ア ク セ ス許可動作。 Cortex-A9 プ ロ セ ッ サは、 AP[0] ビ ッ ト を ア ク セ ス フ ラ グ と し て再定義 し ます。 AFE ビ ッ ト の変更後は、 TLB を無効化す る 必要があ り ます。 [28] TRE バン ク こ のビ ッ ト は、 MMU 内の TEX 再マ ッ プ機能を制御 し ます。 0 = TEX 再マ ッ プは不可能です。 こ れは リ セ ッ ト 時の値です。 1 = TEX 再マ ッ プが可能です。 [27] NMFI 読み出 し 専用 マ ス ク 不能 FIQ のサポー ト 。 こ のビ ッ ト は ソ フ ト ウ ェ アで構成で き ません。 リ セ ッ ト 時の値は、 CFGNMFI 信号に よ っ て定義 さ れます。 [26] - - RAZ/SBZP [25] EE ビ ッ ト バン ク 例外発生時の CPSR E ビ ッ ト の設定方法を決定 し ます。 0 = 例外発生時に CPSR E ビ ッ ト が 0 にセ ッ ト さ れます。 1 = 例外発生時に CPSR E ビ ッ ト が 1 にセ ッ ト さ れます。 こ の値は、 変換テーブルル ッ ク ア ッ プ用の変換テーブルデー タ のエンデ ィ ア ン形式 も 示 し ます。 0 = リ ト ルエンデ ィ ア ン 1 = ビ ッ グエンデ ィ ア ン リ セ ッ ト 時の値は、 CFGEND 信号に よ っ て定義 さ れます。 [24] - - RAZ/WI [23:22] - - RAO/SBOP [21] - - RAZ/WI [20:19] - - RAZ/SBZP [18] - - RAO/SBOP [17] HA - RAZ/WI [16] - - RAO/SBOP ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-16 システム制御 表 4-9 SCTLR のビ ッ ト 割 り 当て (続き) ビッ ト 名前 ア ク セス 機能 [15] - - RAZ/SBZP [14] RR セキ ュ ア 変更専用 キ ャ ッ シ ュ 、 BTAC、 マ イ ク ロ TLB の置換方式。 こ のビ ッ ト は、 セキ ュ ア状態では 読み出 し / 書き 込み、 非セキ ュ ア状態では読み出 し 専用です。 0 = ラ ン ダ ム置換。 こ れは リ セ ッ ト 時の値です。 1 = ラ ウ ン ド ロ ビ ン置換 [13] V バン ク ベ ク タ ビ ッ ト 。 こ のビ ッ ト に よ り 、 次の よ う に例外ベ ク タ のベース ア ド レ ス が選択 さ れます。 0 = 通常の例外ベ ク タ 、 ベース ア ド レ ス 0x00000000。 セキ ュ リ テ ィ 拡張機能が実装 さ れてい る ため、 こ のベース ア ド レ ス を再マ ッ ピ ン グす る こ と がで き ます。 1 = 上位例外ベ ク タ (Hivecs)、 ベース ア ド レ ス 0xFFFF0000。 こ のベース ア ド レ ス は再 マ ッ ピ ン グ さ れ る こ と はあ り ません。 こ のビ ッ ト が VINITHI か ら 取得 さ れた場合は、 セキ ュ アバージ ョ ンの リ セ ッ ト 時 の値。 [12] I ビッ ト バン ク 命令をいずれかのキ ャ ッ シ ュ レベルにキ ャ ッ シ ュ で き る か ど う か を決定 し ます。 0 = すべての レベルで命令のキ ャ ッ シ ュ が不可能です。 こ れは リ セ ッ ト 時の値です。 1 = 命令のキ ャ ッ シ ュ が可能です。 [11] Z ビッ ト バン ク プ ロ グ ラ ム フ ロ ー予測を可能に し ます。 0 = プ ロ グ ラ ム フ ロ ー予測が不可能です。 こ れは リ セ ッ ト 時の値です。 1 = プ ロ グ ラ ム フ ロ ー予測が可能です。 [10] SW ビ ッ ト バン ク SWP/SWPB イ ネーブルビ ッ ト 。 0 = SWP お よ び SWPB は未定義です。 こ れは リ セ ッ ト 時の値です。 1 = SWP お よ び SWPB は正常に動作 し ます。 [9:7] - - RAZ/SBZP [6:3] - - RAO/SBOP [2] C ビッ ト バン ク デー タ をいずれかのキ ャ ッ シ ュ レベルでキ ャ ッ シ ュ で き る か ど う か を決定 し ます。 0 = すべてのレベルでデータ のキ ャ ッ シ ュ が不可能です。 こ れは リ セ ッ ト 時の値です。 1 = データ のキ ャ ッ シ ュ が可能です。 [1] A ビッ ト バン ク 厳格なデー タ ア ラ イ メ ン ト に よ っ て、 デー タ ア ク セ ス時のア ラ イ メ ン ト フ ォール ト の検出を可能に し ます。 0 = 厳格な ア ラ イ メ ン ト フ ォール ト チ ェ ッ ク が不可能です。 こ れは リ セ ッ ト 時の値 です。 1 = 厳格な ア ラ イ メ ン ト フ ォール ト チ ェ ッ ク が可能です。 [0] M ビッ ト バン ク MMU を稼働 し ます。 0 = MMU が非稼働です。 こ れは リ セ ッ ト 時の値です。 1 = MMU が稼働状態です。 セ キ ュ ア ま たは非セキ ュ アのユーザモー ド か ら SCTLR の読み書 き を試み る と 、 未定 義命令例外が発生 し ます。 CP15SDISABLE が HIGH の と き に、 セ キ ュ ア特権モー ド で こ の レ ジ ス タ への書 き 込 みを試み る と 、 未定義命令例外が発生 し ます。 非セキ ュ ア特権モー ド でセキ ュ ア変更専用ビ ッ ト に書き込みを試みて も 無視 さ れます。 セ キ ュ ア変更専用ビ ッ ト の読み出 し を試み る と 、 セキ ュ ア ビ ッ ト の値が返 さ れます。 読み出 し 専用ビ ッ ト の変更の試みは無視 さ れ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-17 システム制御 SCTRL にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0,<Rd>, c1, c0, 0; Read SCTLR MCR p15, 0,<Rd>, c1, c0, 0; Write SCTLR 4.3.10 補助制御レ ジ ス タ ACTLR の特徴は次の と お り です。 目的 次の要素を制御 し ます。 • パ リ テ ィ チ ェ ッ ク (実装 さ れてい る 場合) • 1 ウ ェ イ での割 り 当て • レベル 2 キ ャ ッ シ ュ を使用 し た排他的キ ャ ッ シ ュ • コ ヒ ーレ ン シモー ド 、 対称マルチプ ロ セ ッ シ ン グ (SMP)、 ま たは非対称マルチプ ロ セ ッ シ ン グ (AMP) • AXI 上での投機的ア ク セ ス • キ ャ ッ シ ュ 、 分岐予測、 お よ び TLB 保守操作のブ ロ ー ド キャス ト • L2C-310 キ ャ ッ シ ュ の割 り 当て。 — 使用制限 構成 属性 ARM DDI 0388FJ ID013111 0 の フル ラ イ ン書 き 込みモー ド ACTLR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態 と 非セキ ュ ア状態に共通 し てい ます。 • セキ ュ ア状態では RW です。 • NSACR.NS_SMP = 0 の場合、 非セキ ュ ア状態では RO です。 • NSACR.NS_SMP = 1 の場合、 非セキ ュ ア状態では RW です。 こ の場合は、 SMP ビ ッ ト 以外のビ ッ ト への書 き 込みが無視 さ れます。 すべての構成で使用可能です。 • すべての構成で、 SMP ビ ッ ト = 0 の場合は、 内部キ ャ ッ シ ュ 可能共有可能属性がキ ャ ッ シ ュ 不可 と し て扱われます。 • マルチプ ロ セ ッ サ構成で、 SMP ビ ッ ト がセ ッ ト さ れてい る 場合には、 次の規則が適用 さ れます。 — FW ビ ッ ト がセ ッ ト さ れてい る 場合は、 キ ャ ッ シ ュ 保 守操作 と TLB 保守操作のブ ロ ー ド キ ャ ス ト が許可 さ れ ます。 — FW ビ ッ ト がセ ッ ト さ れてい る 場合は、 同 じ コ ヒ ーレ ン シ ク ラ ス タ 内の他の Cortex-A9 プ ロ セ ッ サに よ る 、 キ ャ ッ シ ュ 保守操作 と TLB 保守操作のブ ロ ー ド キ ャ ス ト の受信が許可 さ れ ます。 — Cortex-A9 プ ロ セ ッ サは、 同 じ コ ヒ ーレ ン シ ク ラ ス タ 内 の他の Cortex-A9 プ ロ セ ッ サ と の間で、 共有内部 ラ イ ト バ ッ ク 、 書 き 込み割 り 当て ア ク セ ス の コ ヒ ーレ ン シ 要求を送受信で き ます。 レ ジ ス タ の概要については、 表 4-8 (ページ 4-15) を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-18 システム制御 ACTLR の ビ ッ ト 割 り 当て を、 図 4-7 に示 し ます。 㪈㪇 㪐 㪏 㪎 㪍 㪌 㪋 㪊 㪉 㪈 㪇 㪊㪈 㪬㪥㪧㪆㪪㪙㪱㪧 䊌䊥䊁䉞䉥䊮 㪈䉡䉢䉟䈪䈱ഀ䉍ᒰ䈩 㪜㪯㪚㪣 㪪㪤㪧 㪩㪘㪱㪆㪮㪠 㪇䈱䊐䊦䊤䉟䊮ᦠ䈐ㄟ䉂䊝䊷䊄 㪣㪈䊒䊥䊐䉢䉾䉼䉟䊈䊷䊑䊦 㪣㪉䊒䊥䊐䉢䉾䉼䊍䊮䊃 䉟䊈䊷䊑䊦 㪝㪮 図 4-7 ACTLR のビ ッ ト 割 り 当て ACTLR の ビ ッ ト 割 り 当て を、 表 4-10 に示 し ます。 表 4-10 ACTLR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:10] - UNP ま たは SBZP [9] パ リ テ ィ オン パ リ テ ィ チ ェ ッ ク のサポー ト (実装 さ れてい る 場合)。 0 = 非稼働です。 こ れは リ セ ッ ト 時の値です。 1 = 稼働 し てい ます。 パ リ テ ィ チ ェ ッ ク が実装 さ れていない場合、 こ の ビ ッ ト は 0 と し て読み出 さ れ、 書 き 込み は無視 さ れます。 [8] 1 ウ ェ イ での 割 り 当て 1 キ ャ ッ シ ュ ウ ェ イ のみでの割 り 当て を可能に し ます。 キ ャ ッ シ ュ 汚染を減 ら すため、 メ モ リ コ ピー操作 と 組で使用 さ れます。 リ セ ッ ト 時の値は 0 です。 [7] EXCL 排他キ ャ ッ シ ュ ビ ッ ト 。 排他キ ャ ッ シ ュ 構成では、 レベル 1 と レベル 2 に同時にデー タ を存在 さ せ る こ と がで き ま せん。 ま た、 内部キ ャ ッ シ ュ 属性が ラ イ ト バ ッ ク キ ャ ッ シ ュ 可能で レベル 1 に割 り 当て ら れてい る 場合は、 レベル 1 か ら の退出時に し かデー タ を キ ャ ッ シ ュ で き ません。 キ ャ ッ シ ュ コ ン ト ロ ー ラ が排他キ ャ ッ シ ュ 用に も 構成 さ れてい る こ と を確認 し て下 さ い。 0 = 非稼働です。 こ れは リ セ ッ ト 時の値です。 1 = 稼働 し てい ます。 [6] SMP Cortex-A9 プ ロ セ ッ サが コ ヒ ーレ ン シの一部か ど う か を示 し ます。 ユニプ ロ セ ッ サ構成では、 こ のビ ッ ト がセ ッ ト さ れてい る と 、 内部キ ャ ッ シ ュ 可能共有は キ ャ ッ シ ュ 可能 と し て扱われます。 リ セ ッ ト 時の値は 0 です。 [5:4] - RAZ/WI [3] 0 の フル ラ イ ン書 0 のフル ラ イ ン書き 込みモー ド を可能に し ますa。 リ セ ッ ト 時の値は 0 です。 き 込みモー ド [2] レベル 1 プ リ フェ ッチ イ ネーブル Dside プ リ フ ェ ッ チ。 0 = 非稼働です。 こ れは リ セ ッ ト 時の値です。 1 = 稼働 し てい ます。 [1] レベル 2 プ リ フェ ッチ イ ネーブル プ リ フ ェ ッ チ ヒ ン ト イ ネーブル a。 リ セ ッ ト 時の値は 0 です。 [0] FW キ ャ ッ シ ュ お よ び TLB 保守のブ ロ ー ド キ ャ ス ト 。 0 = 非稼働です。 こ れは リ セ ッ ト 時の値です。 1 = 稼働 し てい ます。 Cortex-A9 プ ロ セ ッ サが 1 つ し か存在 し ない場合は RAZ/WI です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-19 システム制御 a. こ の機能は、 Cortex-A9 AXI マ ス タ ポー ト に接続 さ れた ス レーブでサポー ト さ れてい る 場合のみ、 可能にす る 必要があ り ま す。 L2-310 キ ャ ッ シ ュ コ ン ト ロ ー ラ は こ の機能をサポー ト し てい ます。 「レベル 2 メ モ リ イ ン タ フ ェースへのア ク セ ス の最 適化」 (ページ 8-7) を参照 し て下 さ い。 ACTLR にア ク セ スす る には、 読み出 し - 変更 - 書 き 込みの手法を使用す る 必要があ り ます。 ACTLR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0,<Rd>, c1, c0, 1; Read ACTLR MCR p15, 0,<Rd>, c1, c0, 1; Write ACTLR CP15SDISABLE が HIGH の と き に、 セ キ ュ ア特権モー ド で こ の レ ジ ス タ への書 き 込 みを試み る と 、 未定義命令例外が発生 し ます。 4.3.11 コ プ ロ セ ッ サア ク セス制御レ ジ ス タ CPACR の特徴は次の と お り です。 目的 • コ プ ロ セ ッ サ CP11 と CP10 のア ク セ ス権を設定 し ます。 • 特定の コ プ ロ セ ッ サがシ ス テ ム内に存在す る か ど う か を、 ソ フ ト ウ ェ アで判断で き る よ う に し ます。 注 こ の レ ジ ス タ は、 CP14 ま たは CP15 へのア ク セ ス に影響を与え ま せん。 使用制限 CPACR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-8 (ページ 4-15) を参照 し て下 さ い。 CPACR のビ ッ ト 割 り 当て を、 図 4-8 に示 し ます。 31 30 29 24 23 22 21 20 19 RAZ/WI cp11 cp10 0 RAZ/WI D32DIS ASEDIS 図 4-8 CPACR のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-20 システム制御 CPACR のビ ッ ト 割 り 当て を、 表 4-11 に示 し ます。 表 4-11 CPACR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31] ASEDIS ア ド バン ス ト SIMD 拡張機能の非稼働。 0 = こ のビ ッ ト に よ っ て、 命令が未定義にな る こ と はあ り ません。 1 = 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 で、 ア ド バン ス ト SIMD 拡張機能の一部 であ る が、 VFPv3 命令ではない と さ れてい る すべての命令エン コ ー ド が未定義にな り ます。 詳細については、 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 と 『Cortex-A9 NEON メ デ ィ ア処理エン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 VFP のみが実装 さ れてい る 場合は、 RAO/WI です。 VFP と NEON のいずれ も 実装 さ れていない場合は、 UNK/SBZP です。 [30] D32DIS VFP レ ジ ス タ フ ァ イ ルの D16 ~ D31 の使用を不可能に し ます。 0 = こ のビ ッ ト に よ っ て、 命令が未定義にな る こ と はあ り ません。 1 = レ ジ ス タ の D16 ~ D31 のいずれかにア ク セ スする 場合、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 で VFPv3 命令 と さ れてい る すべての命令エン コ ー ド が未定義にな り ます。 詳細については、 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 と 『Cortex-A9 NEON メ デ ィ ア処理エン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 VFP のみを使用 し て実装 さ れてい る 場合は、 RAO/WI です。 VFP と NEON のいずれ も 実装 さ れていない場合は、 UNK/SBZP です。 [29:24] - RAZ/WI [23:22] cp11 コ プ ロ セ ッ サのア ク セ ス許可を定義 し ます。 リ セ ッ ト 時の状態はア ク セ ス拒否で、 コ プ ロ セ ッ サが存在 し ない場合 も こ の状態です。 b00 = ア ク セ ス拒否。 こ れは リ セ ッ ト 時の値です。 ア ク セ ス を試みる と 、 未定義命令例外が生 成 さ れます。 b01 = 特権モー ド ア ク セ ス のみ b10 = 予約 b11 = 特権モー ド ア ク セ ス と ユーザモー ド ア ク セ ス [21:20] cp10 コ プ ロ セ ッ サのア ク セ ス許可を定義 し ます。 リ セ ッ ト 時の状態はア ク セ ス拒否で、 コ プ ロ セ ッ サが存在 し ない場合 も こ の状態です。 b00 = ア ク セ ス拒否。 こ れは リ セ ッ ト 時の値です。 ア ク セ ス を試みる と 、 未定義命令例外が生 成 さ れます。 b01 = 特権モー ド ア ク セ ス のみ b10 = 予約 b11 = 特権モー ド ア ク セ ス と ユーザモー ド ア ク セ ス [19:0] - RAZ/WI 非セキ ュ ア状態での コ プ ロ セ ッ サへのア ク セ ス は、 「非セキ ュ ア ア ク セ ス制御レ ジ ス タ 」 (ページ 4-23) で設定 さ れてい る ア ク セ ス許可に よ っ て異な り ます。 CPACR ア ク セ ス ビ ッ ト の読み書 き は、 「非セキ ュ ア ア ク セ ス制御レ ジ ス タ 」 (ページ 4-23) の コ プ ロ セ ッ サに対応す る ビ ッ ト に よ っ て異な り ます。 CPACR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0,<Rd>, c1, c0, 2; Read Coprocessor Access Control Register MCR p15, 0,<Rd>, c1, c0, 2; Write Coprocessor Access Control Register CPACR 更新の直後に ISB を実行す る 必要があ り ます。 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 の 「 メ モ リ バ リ ア」 を参照 し て下 さ い。 ISB と レ ジ ス タ 更新 と の 間では、 ア ク セ ス権の変更の影響を受け る 命令は実行 し ないで下 さ い。 シ ス テ ムに特定の コ プ ロ セ ッ サが存在す る か ど う か を判断す る には、 対象の コ プ ロ セ ッ サのア ク セ ス ビ ッ ト に b11 を書 き 込みます。 シ ス テ ムにその コ プ ロ セ ッ サが存 在 し ない場合、 ア ク セ ス権は b00 に設定 さ れた ま ま です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-21 システム制御 注 NEON ま たは VFP シ ス テ ム レ ジ ス タ にア ク セ スす る 前に、 コ プ ロ セ ッ サ 10 と コ プ ロ セ ッ サ 11 の両方を稼働状態にす る 必要があ り ます。 4.3.12 セキ ュ アデバ ッ グ イ ネーブルレ ジ ス タ SDER の特徴は次の と お り です。 目的 Cortex-A9 デバ ッ グ を制御 し ます。 使用制限 SDER の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態でのみア ク セ ス可能です。 非セキ ュ ア状態で ア ク セ ス し よ う と す る と 、 未定義命令例外が発生 し ます。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-8 (ページ 4-15) を参照 し て下 さ い。 SDER の ビ ッ ト 割 り 当て を、 図 4-9 に示 し ます。 2 1 0 31 ੍⚂ SUNIDEN SUIDEN 図 4-9 SDER のビ ッ ト 割 り 当て SDER の ビ ッ ト 割 り 当て を、 表 4-12 に示 し ます。 表 4-12 SDER のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:2] - 予約 [1] セキ ュ アユーザ非侵襲性デバ ッ グ イ ネーブ ル 0 = セキ ュ アユーザ モー ド で非侵襲性デバ ッ グが許可 さ れません。 こ れは リ セ ッ ト 時の値です。 1 = セキ ュ アユーザ モー ド で非侵襲性デバ ッ グが許可 さ れます。 [0] セキ ュ アユーザ侵襲性デバ ッ グ イ ネーブル 0 = セキ ュ アユーザ モー ド で侵襲性デバ ッ グが許可 さ れません。 こ れは リ セ ッ ト 時の値です。 1 = セキ ュ アユーザ モー ド で侵襲性デバ ッ グが許可 さ れます。 SDER にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,0,<Rd>,c1,c1,1; Read Secure debug enable Register MCR p15,0,<Rd>,c1,c1,1; Write Secure debug enable Register ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-22 システム制御 4.3.13 非セキ ュ ア ア ク セス制御レ ジ ス タ NSACR の特徴は次の と お り です。 目的 コ プ ロ セ ッ サの非セキ ュ ア ア ク セ ス許可を設定 し ます。 使用制限 NSACR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態では読み出 し / 書 き 込みレ ジ ス タ • 非セ キ ュ ア状態では読み出 し 専用レ ジ ス タ 注 こ の レ ジ ス タ は、 デバ ッ グ制御レ ジ ス タ ま たはシ ス テ ム制御 コ プ ロ セ ッ サへの、 非セキ ュ ア ア ク セ ス許可には影響を与え ません。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-8 (ページ 4-15) を参照 し て下 さ い。 NSACR の ビ ッ ト 割 り 当て を、 図 4-10 に示 し ます。 19 18 17 16 15 14 13 12 11 10 9 31 T L UNK/SBZP 0 UNK/SBZP NS_SMP TL PLE NSASEDIS NSD32DIS UNK/SBZP CP11 CP10 図 4-10 NSACR のビ ッ ト 割 り 当て NSACR の ビ ッ ト 割 り 当て を、 表 4-13 に示 し ます。 表 4-13 NSACR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:19] - UNK/SBZP [18] NS_SMP 補助制御レ ジ ス タ の SMP ビ ッ ト が非セキ ュ ア状態で書き込み可能かど う かを決定し ます。 0 = 非セキ ュ ア状態で補助制御レ ジ ス タ に書き込む と 、 未定義例外が取得 さ れ、 SMP ビ ッ ト への書 き込みは無視 さ れます。 こ れは リ セ ッ ト 時の値です。 1 = 非セキ ュ ア状態で補助制御レ ジ ス タ に書き込む こ と に よ っ て、 SMP ビ ッ ト の値を変更で き ます。 他のビ ッ ト への書き込みは無視 さ れます。 [17] TL ロ ッ ク 可能 TLB エン ト リ が非セキ ュ ア状態で割 り 当て可能か ど う かを決定 し ます。 0 = ロ ッ ク 可能 TLB エン ト リ は割 り 当てで き ません。 こ れは リ セ ッ ト 時の値です。 1 = ロ ッ ク 可能 TLB エン ト リ を割 り 当て る こ と がで き ます。 [16] PLE プ リ ロ ー ド エン ジ ン リ ソ ース に対す る NS ア ク セ ス を制御 し ます。 0 = CP15 c11 へのセキ ュ ア ア ク セ ス のみが許可 さ れます。 すべての CP15 c11 への非セキ ュ ア ア ク セ ス は UNDEF に ト ラ ッ プ さ れます。 こ れはデフ ォ ル ト 値です。 1 = CP15 c11 ド メ イ ンへの非セキ ュ ア ア ク セ ス が許可 さ れます。 つま り 、 非セキ ュ ア状態で PLE リ ソ ース にア ク セ ス で き ます。 プ リ ロ ー ド エン ジ ンが実装 さ れていない場合、 こ の ビ ッ ト は RAZ/WI です。 第 9 章 プ リ ロ ー ド エ ン ジ ン を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-23 システム制御 表 4-13 NSACR のビ ッ ト 割 り 当て (続き) ビッ ト 名前 機能 [15] NSASEDIS 非セキ ュ ア ア ド バン ス ト SIMD 拡張機能を非稼働に し ます。 0 = こ のビ ッ ト は、 CPACR.ASEDIS への書 き 込みに影響 し ません。 こ れは リ セ ッ ト 時の値です。 1 = 非セキ ュ ア状態で実行 し てい る 場合、 CPACR.ASEDIS ビ ッ ト の値が 1 に固定 さ れ、 書 き 込みは 無視 さ れます。 詳細については、 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 と 『Cortex-A9 NEON メ デ ィ ア処理エンジ ン テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 [14] NSD32DIS VFP レ ジ ス タ フ ァ イ ルの D16 ~ D31 の非セキ ュ ア使用を不可能に し ます。 0 = こ のビ ッ ト は、 CPACR.D32DIS への書 き 込みに影響 し ません。 こ れは リ セ ッ ト 時の値です。 1 = 非セキ ュ ア状態で実行 し てい る 場合、 CPACR.D32DIS ビ ッ ト の値が 1 に固定 さ れ、 書 き 込みは 無視 さ れます。 詳細については、 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 と 『Cortex-A9 NEON メ デ ィ ア処理エンジ ン テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 [13:12] - UNK/SBZP [11] CP11 非セキ ュ ア状態での コ プ ロ セ ッ サ 11 へのア ク セ ス許可を決定 し ます。 0 = セキ ュ ア ア ク セ ス のみ。 こ れは リ セ ッ ト 時の値です。 1 = セキ ュ ア ア ク セ ス ま たは非セキ ュ ア ア ク セ ス [10] CP10 非セキ ュ ア状態での コ プ ロ セ ッ サ 10 へのア ク セ ス許可を決定 し ます。 0 = セキ ュ ア ア ク セ ス のみ。 こ れは リ セ ッ ト 時の値です。 1 = セキ ュ ア ア ク セ ス ま たは非セキ ュ ア ア ク セ ス [9:0] - UNK/SBZP NSACR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0,<Rd>, c1, c1, 2; Read NSACR data MCR p15, 0,<Rd>, c1, c1, 2; Write NSACR data 詳細については、 『Cortex-A9 浮動小数点ユニ ッ ト テ ク ニ カル リ フ ァ レ ン ス マニ ュ ア ル』 と 『Cortex-A9 NEON メ デ ィ ア処理エ ン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ ア ル』 を参照 し て下 さ い。 4.3.14 仮想化制御レ ジ ス タ VCR の特徴は次の と お り です。 目的 カ レ ン ト プ ロ グ ラ ム ス テー タ ス レ ジ ス タ (CPSR) の A、 I、 F ビ ッ ト の値に関係な く 、 例外を発生 さ せます。 ARM DDI 0388FJ ID013111 使用制限 VCR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能です。 • セキ ュ ア状態でのみア ク セ ス可能です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-8 (ページ 4-15) を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-24 システム制御 VCR の ビ ッ ト 割 り 当て を、 図 4-11 に示 し ます。 9 8 7 6 5 31 UNK/SBZP 0 UNK/SBZP 䉝䊗䊷䊃䊙䉴䉪 䉥䊷䊋䊤䉟䊄 㪠㪩㪨䊙䉴䉪䉥䊷䊋䊤䉟䊄 㪝㪠㪨䊙䉴䉪䉥䊷䊋䊤䉟䊄 図 4-11 VCR のビ ッ ト 割 り 当て VCR の ビ ッ ト 割 り 当て を、 表 4-14 に示 し ます。 表 4-14 VCR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:9] - UNK/SBZP [8] AMO アボー ト マ ス ク オーバ ラ イ ド 。 プ ロ セ ッ サが非セキ ュ ア状態で、 SCR.EA ビ ッ ト がセ ッ ト さ れてお り 、 AMO ビ ッ ト がセ ッ ト さ れて い る 場合は、 こ れに よ っ て、 CPSR.A ビ ッ ト の値に関係な く 、 非同期デー タ アボー ト 例外を取得で き ます。 プ ロ セ ッ サがセキ ュ ア状態、 ま たは SCR.EA ビ ッ ト がセ ッ ト さ れていない場合、 AMO ビ ッ ト は無 視 さ れます。 [7] IMO IRQ マ ス ク オーバ ラ イ ド 。 プ ロ セ ッ サが非セキ ュ ア状態で、 SCR.IRQ ビ ッ ト がセ ッ ト さ れてお り 、 IMO ビ ッ ト がセ ッ ト さ れて い る 場合は、 こ れに よ っ て、 CPSR.I ビ ッ ト の値に関係な く 、 IRQ 例外を取得で き ます。 プ ロ セ ッ サがセキ ュ ア状態、 ま たは SCR.IRQ ビ ッ ト がセ ッ ト さ れていない場合、 IMO ビ ッ ト は無 視 さ れます。 [6] IFO FIQ マ ス ク オーバ ラ イ ド 。 プ ロ セ ッ サが非セキ ュ ア状態で、 SCR.FIQ ビ ッ ト がセ ッ ト さ れてお り 、 IFO ビ ッ ト がセ ッ ト さ れて い る 場合は、 こ れに よ っ て、 CPSR.F ビ ッ ト の値に関係な く 、 FIQ 例外を取得で き ます。 プ ロ セ ッ サがセキ ュ ア状態、 ま たは SCR.FIQ ビ ッ ト がセ ッ ト さ れていない場合、 IFO ビ ッ ト は無視 さ れます。 [5:0] - UNK/SBZP VCR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0,<Rd>, c1, c1, 3; Read VCR data MCR p15, 0,<Rd>, c1, c1, 3; Write VCR data 4.3.15 CP15 c2 レ ジ ス タ の概要 CRn が c2 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-15 に示 し ます。 表 4-15 c2 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 TTBR0 RW - 1 TTBR1 RW - 変換テーブルベース レ ジ ス タ 1 2 TTBCR RW 0x00000000a 変換テーブルベース制御レ ジ ス タ a. セキ ュ ア状態でのみ。 非セキ ュ アバージ ョ ン を必要な値でプ ロ グ ラ ムす る 必要があ り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-25 システム制御 CP15 c3 レ ジ ス タ の概要 4.3.16 CRn が c3 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-16 に示 し ます。 表 4-16 c3 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 DACR RW - ド メ イ ン ア ク セ ス制御レ ジ ス タ CP15 c4、 未使用 4.3.17 CRn を c4 に設定 し て ア ク セ スす る CP15 レ ジ ス タ は存在 し ません。 CP15 c5 レ ジ ス タ の概要 4.3.18 CRn が c5 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-17 に示 し ます。 表 4-17 c5 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 DFSR RW - デー タ フ ォール ト ス テー タ ス レ ジ ス タ 1 IFSR RW - 命令フ ォール ト ス テー タ ス レ ジ ス タ 0 ADFSR - - 補助デー タ フ ォール ト ス テー タ ス レ ジ ス タ 1 AIFSR - - 補助命令フ ォール ト ス テー タ ス レ ジ ス タ c1 CP15 c6 レ ジ ス タ の概要 4.3.19 CRn が c6 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-18 に示 し ます。 表 4-18 c6 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 DFAR RW - デー タ フ ォール ト ア ド レ ス レ ジ ス タ 2 IFAR RW - 命令フ ォール ト ア ド レ ス レ ジ ス タ ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-26 システム制御 CP15 c7 レ ジ ス タ の概要 4.3.20 CRn が c7 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-19 に示 し ます。 表 4-19 c7 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0~3 予約 WO - - 4 NOPa WO - - 0 ICIALLUIS WO - キ ャ ッ シ ュ 操作レ ジ ス タ 6 BPIALLIS WO - 7 予約 WO - c4 0 PAR RW - - c5 0 ICIALLU WO - キ ャ ッ シ ュ 操作レ ジ ス タ 1 ICIMVAU WO - 2~3 予約 WO - 4 ISB WO ユーザ 「非推奨レ ジ ス タ 」 (ページ 4-2) 6 BPIALL WO - キ ャ ッ シ ュ 操作レ ジ ス タ 1 DCIMVAC WO - 2 DCISW WO - c8 0~7 V2PCWPR WO - VA か ら PA への変換操作 c10 1 DCCVAC WO - キ ャ ッ シ ュ 操作レ ジ ス タ 2 DCCSW WO - 4 DSB WO ユーザ 5 DMB WO ユーザ c11 1 DCCVAU WO - c14 1 DCCIMVAC WO - 2 DCCISW WO - c1 c6 0 「非推奨レ ジ ス タ 」 (ページ 4-2) キ ャ ッ シ ュ 操作レ ジ ス タ a. こ の操作は、 WFI 命令に よ っ て実行 さ れます。 「非推奨レ ジ ス タ 」 (ページ 4-2) も 参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-27 システム制御 CP15 c8 レ ジ ス タ の概要 4.3.21 CRn が c8 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-20 に示 し ます。 表 4-20 c8 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c3 0 TLBIALLISa WO - - 1 TLBIMVAISb WO - - 2 TLBIASIDISb WO - - 3 TLBIMVAAISa WO - - 0 TLBIALLa WO - - 1 TLBIMVAb WO - - 2 TLBIASIDb WO - - 3 TLBIMVAAa WO - - c5、 c6、 ま たは c7 a. ロ ッ ク ダ ウ ン さ れたエ ン ト リ に影響を与え ません。 b. 一致 し た ロ ッ ク 済みエ ン ト リ を無効化 し ます。 「ASID の一致に よ る TLB エン ト リ の無効化」 (ページ 4-41) も 参照 し て下 さ い。 CP15 c9 レ ジ ス タ の概要 4.3.22 CRn が c9 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-21 に示 し ます。 表 4-21 c9 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c12 0 PMCR RW 0x41093000 パフ ォーマ ン ス モニ タ 制御レ ジ ス タ 1 PMCNTENSET RW 0x00000000 カ ウ ン ト イ ネーブル セ ッ ト レ ジ ス タ 2 PMCNTENCLR RW 0x00000000 カ ウ ン ト イ ネーブル ク リ ア レ ジ ス タ 3 PMOVSR RW - オーバフ ロ ーフ ラ グ ス テー タ ス レ ジ ス タ 4 PMSWINC WO - ソ フ ト ウ ェアイ ン ク リ メ ン ト レジス タ 5 PMSELR RW 0x00000000 イ ベン ト カ ウ ン タ 選択レ ジ ス タ 0 PMCCNTR RW - サ イ ク ルカ ウ ン ト レ ジ ス タ 1 PMXEVTYPER RW - イ ベン ト 選択レ ジ ス タ 2 PMXEVCNTR RW - パフ ォーマ ン ス モニ タ カ ウ ン ト レ ジ ス タ 0 PMUSERENR RWa 0x00000000 ユーザ イ ネーブル レ ジ ス タ 1 PMINTENSET RW 0x00000000 割 り 込み イ ネーブルセ ッ ト レ ジ ス タ 2 PMINTENCLR RW 0x00000000 割 り 込み イ ネーブル ク リ ア レ ジ ス タ c13 c14 a. ユーザモー ド では RO 第 11 章 パフ ォーマ ン ス監視ユニ ッ ト を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-28 システム制御 4.3.23 CP15 c10 レ ジ ス タ の概要 CRn が c10 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-22 に示 し ます。 表 4-22 c10 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 TLB ロ ッ ク ダ ウ ン レ ジ ス タa RW 0x00000000 「TLB ロ ッ ク ダ ウ ン レ ジ ス タ 」 c2 0 PRRR RW 0x00098AA4 1 次領域再マ ッ プ レ ジ ス タ 1 NRRR RW 0x44E048E0 ノ ーマル メ モ リ 再マ ッ プ レ ジ ス タ a. 非セ キ ュ ア状態では、 NSCAR.TL = 0 な ら ばア ク セ ス不可、 NSACR.TL = 1 な ら ば RW です。 4.3.24 TLB ロ ッ ク ダウ ン レ ジ ス タ TLB ロ ッ ク ダ ウ ン レ ジ ス タ の特徴は次の と お り です。 目的 ハー ド ウ ェ ア変換テーブル ウ ォー ク に よ っ て、 ど こ に TLB エ ン ト リ を配置す る か を制御 し ます。 TLB エ ン ト リ は次のいずれかの 位置に配置で き ます。 • TLB のセ ッ ト ア ソ シエ イ テ ィ ブ領域 • TLB の ロ ッ ク ダ ウ ン領域 と 、 ロ ッ ク ダ ウ ン領域内の書 き 込 み対象エ ン ト リ TLB の ロ ッ ク ダ ウ ン領域には 4 つのエ ン ト リ があ り ます。 使用制限 TLB • • • ロ ッ ク ダ ウ ン レ ジ ス タ の使用制限は次の と お り です。 特権モー ド でのみア ク セ ス可能 セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 NSACR.TL が 0 の場合はア ク セ ス不可です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-22 を参照 し て下 さ い。 TLB ロ ッ ク ダ ウ ン レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-12 に示 し ます。 31 30 29 28 27 1 0 UNK/SBZP P 㪬㪥㪢㪆㪪㪙㪱㪧 䊯䉞䉪䊁䉞䊛 図 4-12 TLB ロ ッ ク ダウン レ ジ ス タ のビ ッ ト 割 り 当て TLB ロ ッ ク ダ ウ ン レ ジ ス タ の ビ ッ ト 割 り 当て を、 表 4-23 に示 し ます。 表 4-23 TLB ロ ッ ク ダウン レ ジ ス タ のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 ビッ ト 名前 機能 [31:30] - UNK/SBZP [29:28] ヴィ クティ ム ロ ッ ク ダ ウ ン領域 [27:1] - UNK/SBZP [0] P 保存ビ ッ ト 。 リ セ ッ ト 時の値は 0 です。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-29 システム制御 TLB ロ ッ ク ダ ウ ン レ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0,<Rd>, c10, c0, 0; Read TLB Lockdown victim MCR p15, 0,<Rd>, c10, c0, 0; Write TLB Lockdown victim TLB ロ ッ ク ダ ウ ン レ ジ ス タ に、 保存ビ ッ ト (P ビ ッ ト ) がセ ッ ト さ れた状態で書 き 込む と 、 次の よ う な効果があ り ます。 1 後続のハー ド ウ ェ ア変換テーブル ウ ォ ー ク において、 0 ~ 3 の範囲の ヴ ィ ク テ ィ ム で指定 さ れたエ ン ト リ にあ る ロ ッ ク ダ ウ ン領域に TLB エ ン ト リ が配置 さ れます。 0 後続のハー ド ウ ェ ア変換テーブル ウ ォ ー ク において、 TLB のセ ッ ト ア ソ シエ イ テ ィ ブ領域に TLB エ ン ト リ が配置 さ れ ます。 「ASID の一致に よ る TLB エン ト リ の無効化」 (ページ 4-41) を参照 し て下 さ い。 4.3.25 CP15 c11 レ ジ ス タ の概要 CRn が c11 の場合にア ク セ ス可能なシ ス テ ム制御レ ジ ス タ を、 表 4-24 に示 し ます。 表 4-24 c11 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 PLEIDR ROa - 「PLE ID レ ジ ス タ」 2 PLEASR ROa - 「PLE 動作ス テー タ ス レ ジ ス タ」 (ページ 4-31) 4 PLEFSR ROa - 「PLE FIFO ス テー タ ス レ ジ ス タ」 (ページ 4-32) 0 PLEUAR 特権 R/W ユーザ RO - 特権 R/W ユーザ RO - c1 1 PLEPCR 「プ リ ロ ー ド エン ジ ン ユーザア ク セ ス許可レ ジ ス タ」 (ページ 4-32) 「プ リ ロ ー ド エン ジ ン パ ラ メ ー タ 制御レ ジ ス タ」 (ページ 4-33) a. PLE が存在 し ない場合は RAZ です。 4.3.26 PLE ID レ ジ ス タ PLEIDR の特徴は次の と お り です。 目的 PLE が存在す る か ど う か、 お よ びその FIFO のサ イ ズ を示 し ます。 使用制限 PLEIDR の使用制限は次の と お り です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 • 構成ビ ッ ト に関係な く 、 ユーザモー ド と 特権モー ド でア ク セ ス可能です。 構成 PLE が存在す る か ど う かに関係な く 、 すべての Cortex-A9 構成で 使用可能です。 属性 表 4-24 を参照 し て下 さ い。 PLEIDR の ビ ッ ト 割 り 当て を、 図 4-13 に示 し ます。 㪉㪈 㪉㪇 㪊㪈 㪩㪘㪱 㪈㪍 㪈㪌 㪝㪠㪝㪦 䉰䉟䉵 㪈 㪇 㪩㪘㪱 㪈 図 4-13 PLEIDR のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-30 システム制御 PLEIDR の ビ ッ ト 割 り 当て を、 表 4-25 に示 し ます。 表 4-25 PLEIDR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:21] - - [20:16] PLE FIFO サ イ ズ 使用可能な値は次の と お り です。 • 5'b00000 は、 PLE が存在 し ない こ と を示 し ます。 • 5'b00100 は、 PLE が存在 し 、 FIFO サ イ ズが 4 エン ト リ であ る こ と を示 し ます。 • 5'b01000 は、 PLE が存在 し 、 FIFO サ イ ズが 8 エン ト リ であ る こ と を示 し ます。 • 5'b10000 は、 PLE が存在 し 、 FIFO サ イ ズが 16 エン ト リ であ る こ と を示 し ます。 [15:1] - RAZ [0] - 1 で、 こ の構成にプ リ ロ ー ド エン ジ ンが存在す る こ と を示 し ます。 PLEIDR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0, <Rt>, c11, c0, 0; Read PLEIDR 4.3.27 PLE 動作ス テー タ ス レ ジ ス タ PLEASR の特徴は次の と お り です。 目的 PLE エ ン ジ ン が現在ア ク テ ィ ブか ど う か を示 し ます。 使用制限 PLEASR の使用制限は次の と お り です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 • 構成ビ ッ ト に関係な く 、 ユーザモー ド と 特権モー ド でア ク セ ス可能です。 構成 PLE が存在す る か ど う かに関係な く 、 すべての Cortex-A9 構成で 使用可能です。 属性 表 4-24 (ページ 4-30) を参照 し て下 さ い。 PLEASR のビ ッ ト 割 り 当て を、 図 4-14 に示 し ます。 31 1 0 R RAZ 図 4-14 PLEASR のビ ッ ト 割 り 当て PLEASR のビ ッ ト 割 り 当て を、 表 4-26 に示 し ます。 表 4-26 PLEASR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:1] - - [0] R PLE チ ャ ネル実行中 1 = プ リ ロ ー ド エン ジ ンが PLE 要求の処理中です。 PLEASR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0, <Rt>, c11, c0, 2; Read PLEASR ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-31 システム制御 4.3.28 PLE FIFO ス テー タ ス レ ジ ス タ PLEFSR の特徴は次の と お り です。 目的 PLE FIFO 内で使用可能なエ ン ト リ が ど の く ら い残っ てい る か を 示 し ます。 使用制限 PLEFSR の使用制限は次の と お り です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 • 構成ビ ッ ト に関係な く 、 ユーザモー ド と 特権モー ド でア ク セ ス可能です。 NSAC.PLE が非セキ ュ ア ア ク セ ス を制御 し ます。 構成 PLE が存在す る か ど う かに関係な く 、 すべての Cortex-A9 構成で 使用可能です。 属性 表 4-24 (ページ 4-30) を参照 し て下 さ い。 PLEFSR の ビ ッ ト 割 り 当て を、 図 4-15 に示 し ます。 31 5 4 0 ↪น⢻䈭 䉣䊮䊃䊥 RAZ/WI 図 4-15 PLEFSR のビ ッ ト 割 り 当て PLEFSR の ビ ッ ト 割 り 当て を、 表 4-27 に示 し ます。 表 4-27 PLEFSR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:5] - - [4:0] 使用可能なエン ト リ PLE FIFO 内で使用可能なエン ト リ 数 こ れは、 構成固有の FIFO 内の総エン ト リ 数 と 、 すでにプ ロ グ ラ ム さ れてい る エン ト リ 数 と の差です。 PLEFSR は、 新 し い PLE チ ャ ネルを プ ロ グ ラ ムす る 前に、 エ ン ト リ が使用可能か ど う か をチ ェ ッ ク す る ために使用 し ます。 PLEFSR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0, <Rt>, c11, c0, 4; Read the PLESFR 4.3.29 プ リ ロー ド エ ン ジ ン ユーザア ク セス許可レ ジ ス タ PLEUAR の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 ユーザモー ド で PLE 操作が使用可能か ど う か を制御 し ます。 使用制限 PLEUAR の使用制限は次の と お り です。 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 • 構成ビ ッ ト に関係な く 、 ユーザモー ド と 特権モー ド でア ク セ ス可能です。 構成 プ リ ロ ー ド エ ン ジ ンが存在す る 構成でのみ使用可能です。 それ以 外の構成では、 未定義命令例外が取得 さ れ ます。 属性 表 4-24 (ページ 4-30) を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-32 システム制御 PLEUAR のビ ッ ト 割 り 当て を、 図 4-16 に示 し ます。 31 1 0 U RAZ 図 4-16 PLEUAR のビ ッ ト 割 り 当て PLEUAR のビ ッ ト 割 り 当て を、 表 4-28 に示 し ます。 表 4-28 PLEUAR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:1] - RAZ [0] U ユーザア ク セ ス許可 1 = ユーザモー ド で PLE 領域にア ク セ ス し て、 PLE 操作を実行で き ます。 PLEUAR にア ク セ スす る には、 次の命令を使用 し ます。 MCR p15, 0, <Rt>, c11, c1, 0; Read PLEAUR MRC p15, 0, <Rt>, c11, c1, 0; Write PLEAUR 4.3.30 プ リ ロー ド エ ン ジ ン パ ラ メ ー タ 制御レ ジ ス タ PLEPCR の特徴は次の と お り です。 目的 PLE の発行レー ト と 転送サ イ ズ を制限す る ために、 特権モー ド で のみ使用可能な PLE 制御パ ラ メ ー タ を保存 し ます。 使用制限 PLEPCR の使用制限は次の と お り です。 • 読み出 し / 書 き 込みレ ジ ス タ • 特権モー ド でのみア ク セ ス可能 • セキ ュ ア状態 と 非セキ ュ ア状態 と で共通です。 • NSACR.PLE が非セ キ ュ ア ア ク セ ス を制御 し ます。 構成 プ リ ロ ー ド エ ン ジ ンが存在す る 構成でのみ使用可能です。 それ以 外の構成では、 未定義命令例外が取得 さ れ ます。 属性 表 4-24 (ページ 4-30) を参照 し て下 さ い。 PLEPCR の ビ ッ ト 割 り 当て を、 図 4-17 に示 し ます。 㪊㪈 㪊㪇 㪉㪐 㪩㪘㪱 㪈㪍 㪈㪌 䊑䊨䉾䉪䉰䉟䉵 䊙䉴䉪 㪇 㪏 㪎 䊑䊨䉾䉪ᢙ䊙䉴䉪 㪧㪣㪜䉡䉢䉟䊃⁁ᘒ 図 4-17 PLEPCR のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-33 システム制御 PLEPCR の ビ ッ ト 割 り 当て を、 表 4-29 に示 し ます。 表 4-29 PLEPCR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:30] - RAZ [29:16] ブロ ッ クサイズ マス ク 特権モー ド で PLE 転送の最大ブ ロ ッ ク サ イ ズ を制限で き る よ う に し ます。 転送 さ れ る ブ ロ ッ ク サ イ ズは、 (ブ ロ ッ ク サ イ ズ) & (ブ ロ ッ ク サ イ ズ マ ス ク ) です。 例えば、 14'b11111111111111 のブ ロ ッ ク サ イ ズ マ ス ク は、 最大値が 16k × 4 バ イ ト のブ ロ ッ ク サ イ ズの転送を許可 し ます。 14'b00000000000000 のブ ロ ッ ク サ イ ズ マ ス ク は、 ブ ロ ッ ク サ イ ズ を 1 × 4 バ イ ト に制限 し ます。 [15:8] ブ ロ ッ ク 数マ ス ク 特権モー ド で単一の PLE 転送の最大ブ ロ ッ ク 数を制限で き る よ う に し ます。 転送 さ れ る ブ ロ ッ ク 数は、 (ブ ロ ッ ク 数) & (ブ ロ ッ ク 数マ ス ク ) です。 例えば、 8'b11111111 のブ ロ ッ ク 数マ ス ク は、 最大 256 個のブ ロ ッ ク の転送を許可 し ま す。 8'b00000000 のブ ロ ッ ク 数マ ス ク は、 転送を 1 ブ ロ ッ ク のデー タ のみに制限 し ます。 [7:0] PLE ウ ェ イ ト 状態 特権モー ド で、 PLE エン ジ ンで実行 さ れ る PLD 要求の発行レー ト を制限 し て、 外部 メ モ リ 帯域幅の飽和を回避で き る よ う に し ます。 PLE ウ ェ イ ト 状態は、 PLE エン ジ ン で実行 さ れ る 2 つの PLD 要求間に挿入 さ れ る サ イ ク ル数を指定 し ます。 PLE ウ ェ イ ト 状態 = 8'b11111111 の場合、 PLE エン ジ ン で 256 サ イ ク ルご と に 1 つの PLD 要求 (1 キ ャ ッ シ ュ ラ イ ン) を発行で き ます。 PLE ウ ェ イ ト 状態 = 8'b000000000 の場合、 PLE エン ジ ンで 1 サ イ ク ルご と に 1 つの PLD を発行で き ます。 PLEPCR にア ク セ スす る には、 次の命令を使用 し ます。 MCR p15, 0, <Rt>, c11, c1, 1; Read PLEPCR MRC p15, 0, <Rt>, c11, c1, 1; Write PLEPCR 4.3.31 CP15 c12 レ ジ ス タ の概要 CRn が c12 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-30 に示 し ます。 表 4-30 c12 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 VBAR RW 0x00000000a ベ ク タ ベース ア ド レ ス レ ジ ス タ 1 MVBAR RW - モニ タ ベ ク タ ベース ア ド レ ス レ ジ ス タ 0 ISR RO 0x00000000 割 り 込みス テー タ ス レ ジ ス タ 1 仮想化割 り 込みレ ジ ス タ RW 0x00000000 「仮想化割 り 込みレ ジ ス タ 」 c1 a. セキ ュ アバージ ョ ンのみが 0 に リ セ ッ ト さ れます。 非セキ ュ アバージ ョ ンは ソ フ ト ウ ェ アでプ ロ グ ラ ムす る 必要があ り ます。 4.3.32 仮想化割 り 込みレ ジ ス タ VIR の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 保留中の仮想割 り 込みが存在す る か ど う か を示 し ます。 使用制限 VIR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能 • セキ ュ ア状態でのみア ク セ ス可能 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-30 を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-34 システム制御 仮想割 り 込みは、 プ ロ セ ッ サが NS 状態に移行 し た直後に発行 さ れ ます。 VIR のビ ッ ト 割 り 当て を、 図 4-18 に示 し ます。 31 0 9 8 7 6 5 UNK/SBZP UNK/SBZP VA VI VF 図 4-18 VIR のビ ッ ト 割 り 当て 仮想化割 り 込みレ ジ ス タ の ビ ッ ト 割 り 当て を、 表 4-31 に示 し ます。 表 4-31 仮想化割 り 込みレ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:9] - UNK/SBZP [8] VA 仮想アボー ト ビ ッ ト 。 セ ッ ト さ れてい る 場合、 対応する アボー ト が通常のアボー ト と 同様に ソ フ ト ウ ェ アに送信 さ れま す。 仮想アボー ト は、 プ ロ セ ッ サが非セキ ュ ア状態の と き にのみ発生 し ます。 [7] VI 仮想 IRQ ビ ッ ト 。 セ ッ ト さ れてい る 場合は、 対応する IRQ が通常の IRQ と 同様に ソ フ ト ウ ェ アに送信 さ れます。 仮想 IRQ は、 プ ロ セ ッ サが非セキ ュ ア状態の と き にのみ発生 し ます。 [6] VF 仮想 FIQ ビ ッ ト 。 セ ッ ト さ れてい る 場合、 対応する FIQ が通常の FIQ と 同様に ソ フ ト ウ ェ アに送信 さ れます。 仮想 FIQ は、 プ ロ セ ッ サが非セキ ュ ア状態の と き にのみ発生 し ます。 [5:0] - UNK/SBZP VIR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15, 0, <Rd>, c12, c1, 1 ; Read Virtualization Interrupt Register MCR p15, 0, <Rd>, c12, c1, 1 ; Write Virtualization Interrupt Register 4.3.33 CP15 c13 レ ジ ス タ の概要 CRn が c13 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-32 に示 し ます。 表 4-32 c13 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 FCSEIDR RW 0x00000000 「非推奨レ ジ ス タ」 (ページ 4-2) 1 CONTEXTIDR RW - コ ン テ キ ス ト ID レ ジ ス タ 2 TPIDRURW RWa - ソ フ ト ウ ェ ア ス レ ッ ド ID レ ジ ス タ 3 TPIDRURO ROb - 4 TPIDRPRW RW - a. ユーザモー ド で RW b. ユーザモー ド で RO ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-35 システム制御 4.3.34 CP15 c14、 未使用 CRn を c14 に設定 し て ア ク セ スす る CP15 レ ジ ス タ は存在 し ません。 4.3.35 CP15 c15 レ ジ ス タ の概要 CRn が c15 の場合にア ク セ ス可能な シ ス テ ム制御レ ジ ス タ を、 表 4-33 に示 し ます。 表 4-33 c15 シ ス テム制御レ ジ ス タ Op1 CRm Op2 名前 タ イプ リ セ ッ ト 時の値 説明 0 c0 0 電力制御レ ジ ス タ RWa b 「電力制御レ ジ ス タ 」 c1 0 NEON ビ ジーレ ジ ス タ RO 0x00000000 「NEON ビ ジーレ ジ ス タ 」 (ページ 4-37) c0 0 構成ベース ア ド レ ス ROc d 「構成ベース ア ド レ ス レ ジ ス タ 」 (ペー 4 ジ 4-38) 5 2 読み出 し 用の ロ ッ ク ダ ウ ン TLB エン ト リ の選択 WOe - 4 書 き 込み用の ロ ッ ク ダ ウ ン TLB エン ト リ の選択 WOe - c5 2 メ イ ン TLB VA レ ジ ス タ RWe - c6 2 メ イ ン TLB PA レ ジ ス タ RWe - c7 2 メ イ ン TLB 属性レ ジ ス タ RW - c4 「TLB ロ ッ ク ダ ウ ン操作」 (ページ 4-39) セ キ ュ ア状態では RW です。 非セ キ ュ ア状態では読み出 し 専用です。 リ セ ッ ト 時の値は、 MAXCLKLATENCY[2:0] の値に よ っ て異な り ます。 「構成信号」 (ページ A-5) を参照 し て下 さ い。 セ キ ュ ア特権モー ド では RW で、 非セキ ュ ア状態 と ユーザセキ ュ ア状態では RO です。 Cortex-A9 ユニプ ロ セ ッ サ実装では、 構成ベース ア ド レ ス が 0 に設定 さ れます。 Cortex-A9 MPCore 実装では、 構成ベース ア ド レ ス が PERIPHBASE[31:13] に リ セ ッ ト さ れ る ため、 ソ フ ト ウ ェ アでプ ラ イ ベー ト メ モ リ 領域の位置を決定で き ます。 e. 非セキ ュ ア状態ではア ク セ ス不可です。 a. b. c. d. 4.3.36 電力制御レ ジ ス タ 電力制御レ ジ ス タ の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 次の設定を可能に し ます。 • Cortex-A9 プ ロ セ ッ サの実装の ク ロ ッ ク レ イ テ ン シ • 動的 ク ロ ッ ク ゲー ト 使用制限 • • 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-33 を参照 し て下 さ い。 セキ ュ ア状態では読み出 し / 書 き 込みレ ジ ス タ 非セ キ ュ ア状態では読み出 し 専用レ ジ ス タ Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-36 システム制御 電力制御レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-19 に示 し ます。 㪊㪈 㪈㪈 㪈㪇 㪏 㪎 ੍⚂ 㪈 㪇 ੍⚂ ᦨᄢ䉪䊨䉾䉪䊧䉟䊁䊮䉲 േ⊛䉪䊨䉾䉪䉭䊷䊃䈱⸵น 図 4-19 電力制御レ ジ ス タ のビ ッ ト 割 り 当て 電力制御レ ジ ス タ の ビ ッ ト 割 り 当て を、 表 4-34 に示 し ます。 表 4-34 電力制御レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:11] - 予約 [10:8] 最大 ク ロ ッ ク レ イ テ ン シ リ セ ッ ト 終了時点で MAXCLKLATENCY ピ ンに現れた値をサンプ リ ン グ し ま す。 こ の値は実装固有のパ ラ メ ー タ を反映 し てい る ため、 ソ フ ト ウ ェ アで変更 し ない こ と をお勧め し ます。 [7:1] - 予約 [0] 動的 ク ロ ッ ク ゲー ト イ ネーブル リ セ ッ ト 時には不可能な状態です。 電力制御レ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,0,<Rd>,c15,c0,0; Read Power Control Register MCR p15,0,<Rd>,c15,c0,0; Write Power Control Register 4.3.37 NEON ビ ジーレ ジ ス タ NEON ビ ジーレ ジ ス タ の特徴は次の と お り です。 目的 ソ フ ト ウ ェ アで、 NEON 命令が実行中か ど う か を判断で き る よ う に し ます。 使用制限 • • 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 4-33 (ページ 4-36) を参照 し て下 さ い。 セキ ュ ア状態では読み出 し 専用レ ジ ス タ 非セ キ ュ ア状態では読み出 し 専用レ ジ ス タ NEON ビ ジーレ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-20 に示 し ます。 㪊㪈 㪈 㪇 ੍⚂ 㪥㪜㪦㪥䊎䉳䊷 図 4-20 NEON ビ ジーレ ジ ス タ のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-37 システム制御 NEON ビ ジーレ ジ ス タ の ビ ッ ト 割 り 当て を、 表 4-35 に示 し ます。 表 4-35 NEON ビ ジーレ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:1] - 予約 [0] NEON ビ ジー ソ フ ト ウ ェ アは、 こ の ビ ッ ト を使用 し て、 NEON 命令が実行中か ど う か を判 断で き ます。 NEON パ イ プ ラ イ ン ま たは コ アパ イ プ ラ イ ン内に NEON 命令が 存在す る 場合、 こ の ビ ッ ト が 1 にセ ッ ト さ れます。 NEON ビ ジーレ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,0,<Rd>,c15,c1,0; Read NEON busy Register 4.3.38 構成ベース ア ド レ ス レ ジ ス タ 構成ベース ア ド レ ス レ ジ ス タ の特徴は次の と お り です。 目的 リ セ ッ ト 時に物理ベース ア ド レ ス値を取得 し ます。 使用制限 構成ベース ア ド レ ス レ ジ ス タ の使用制限は次の と お り です。 • セキ ュ ア特権モー ド では読み出 し / 書 き 込み • 非セ キ ュ ア状態では読み出 し 専用 • ユーザモー ド では読み出 し 専用 構成 Cortex-A9 ユニプ ロ セ ッ サ実装では、 ベース ア ド レ ス が 0 に設定 さ れます。 Cortex-A9 MPCore 実装では、 PERIPHBASE[31:13] に リ セ ッ ト さ れ る ため、 ソ フ ト ウ ェ アでプ ラ イ ベー ト メ モ リ 領域の位置を決定 で き ます。 属性 レ ジ ス タ の概要については、 表 4-33 (ページ 4-36) を参照 し て下 さ い。 構成ベース ア ド レ ス レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-21 に示 し ます。 31 0 䊔䊷䉴䉝䊄䊧䉴 図 4-21 構成ベース ア ド レ ス レ ジ ス タ のビ ッ ト 割 り 当て 構成ベース ア ド レ ス レ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 MRC p15,4,<Rd>,c15,c0,0; Read Configuration Base Address Register MCR p15,4,<Rd>,c15,c0,0; Write Configuration Base Address Register ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-38 システム制御 4.3.39 TLB ロ ッ ク ダウ ン操作 TLB ロ ッ ク ダ ウ ン操作を使用すれば、 TLB の ロ ッ ク ダ ウ ン エ ン ト リ を保存ま たは復 元で き ます。 定義済みの TLB ロ ッ ク ダ ウ ン操作を、 表 4-36 に示 し ます。 表 4-36 TLB ロ ッ ク ダウン操作 説明 デー タ 命令 読み出 し 用の ロ ッ ク ダ ウ ン TLB エン ト リ の 選択 メ イ ン TLB イ ンデ ク ス MCR p15,5,<Rd>,c15,c4,2 書 き 込み用の ロ ッ ク ダ ウ ン TLB エン ト リ の 選択 メ イ ン TLB イ ンデ ク ス MCR p15,5,<Rd>,c15,c4,4 ロ ッ ク ダ ウ ン TLB VA レ ジ ス タ の読み出 し デー タ MRC p15,5,<Rd>,c15,c5,2 ロ ッ ク ダ ウ ン TLB VA レ ジ ス タ の書 き 込み デー タ MCR p15,5,<Rd>,c15,c5,2 ロ ッ ク ダ ウ ン TLB PA レ ジ ス タ の読み出 し デー タ MRC p15,5,<Rd>,c15,c6,2 ロ ッ ク ダ ウ ン TLB PA レ ジ ス タ の書き 込み デー タ MCR p15,5,<Rd>,c15,c6,2 ロ ッ ク ダ ウ ン TLB 属性レ ジ ス タ の読み出 し デー タ MRC p15,5,<Rd>,c15,c7,2 ロ ッ ク ダ ウ ン TLB 属性レ ジ ス タ の書き 込み デー タ MCR p15,5,<Rd>,c15,c7,2 読み出 し 用の ロ ッ ク ダ ウ ン TLB エ ン ト リ の選択操作は、 ロ ッ ク ダ ウ ン TLB の VA/PA/ 属性の読み出 し 操作に よ っ てデー タ が読み出 さ れ る エ ン ト リ を選択す る ため に使用 し ます。 書 き 込み用の ロ ッ ク ダ ウ ン TLB エ ン ト リ の選択操作は、 ロ ッ ク ダ ウ ン TLB の VA/PA/ 属性の書 き 込み操作に よ っ てデー タ が書 き 込まれ る エ ン ト リ を選 択す る ために使用 し ます。 TLB PA レ ジ ス タ は、 TLB ロ ッ ク ダ ウ ン レ ジ ス タ にア ク セ スす る と き に、 最後に書 き 込み / 読み出 し を行 う レ ジ ス タ にす る 必要があ り ます。 ロ ッ ク ダ ウ ン TLB エ ン ト リ へのア ク セ ス に使用す る イ ンデ ク ス レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-22 に示 し ます。 31 2 1 0 䉟䊮䊂 䉪䉴 UNK/SBZP 図 4-22 ロ ッ ク ダウン TLB イ ンデ ク スのビ ッ ト 割 り 当て TLB VA レ ジ ス タ のビ ッ ト 割 り 当て を、 図 4-23 に示 し ます。 12 11 10 9 31 0 VPN 䊒䊨䉶䉴 NS UNK/SBZP 図 4-23 TLB VA レ ジ ス タ のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-39 システム制御 TLB VA レ ジ ス タ のビ ッ ト 割 り 当て を、 表 4-37 に示 し ます。 表 4-37 TLB VA レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:12] VPN 仮想ページ番号。 テーブルのサ イ ズが原因で、 ページテーブル変換の一部 と し て変換 さ れない仮想ページ 番号のビ ッ ト は、 読み出 し 時は予測不能な値にな り 、 書き 込み時は SBZ です。 [11] - UNK/SBZP [10] NS NS ビ ッ ト [9:0] プロセス メ モ リ 空間識別子 メ モ リ 空間識別子の ビ ッ ト 割 り 当て を、 図 4-24 に示 し ます。 㪐 㪏 㪎 䉫䊨䊷䊋䊦䉣䊮䊃䊥 㪈 䉝䊄䊧䉴ⓨ㑆⼂ሶ䉣䊮䊃䊥 㪇 㪇 㪬㪥㪢㪆㪪㪙㪱㪧 㪘㪪㪠㪛 㪬㪥㪢㪆㪪㪙㪱㪧 図 4-24 メ モ リ 空間識別子の形式 TLB PA レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-25 に示 し ます。 31 12 11 8 7 6 5 4 3 PPN SZ UNK/SBZP 1 0 AP V UNK/SBZP 図 4-25 TLB PA レ ジ ス タ のビ ッ ト 割 り 当て TLB PA レ ジ ス タ の ビ ッ ト の機能を、 表 4-38 に示 し ます。 表 4-38 TLB PA レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:12] PPN 物理ページ番号。 ページテーブル変換の一部 と し て変換 さ れない物理ページ番号のビ ッ ト は、 読み出 し 時は予測不能 で、 書 き 込み時は SBZP です。 [11:8] - UNK/SBZP [7:6] SZ 領域サ イ ズ。 b00 = 16MB の スーパーセ ク シ ョ ン b01 = 4KB のページ b10 = 64KB のページ b11 = 1MB のセ ク シ ョ ン 他の値はすべて予約 さ れてい ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-40 システム制御 表 4-38 TLB PA レ ジス タ のビ ッ ト 割 り 当て (続き) ビッ ト 名前 機能 [5:4] - UNK/SBZP [3:1] AP ア ク セ ス許可。 b000 = すべてのア ク セ ス で許可フ ォール ト が生成 さ れます。 b001 = スーパバ イ ザア ク セ ス専用、 ユーザア ク セ ス で フ ォール ト が生成 さ れます。 b010 = スーパバ イ ザ読み出 し / 書き 込みア ク セ ス、 ユーザ書 き 込みア ク セ ス で フ ォール ト が生成 さ れ ます。 b011 = フルア ク セ ス、 フ ォール ト は生成 さ れません。 b100 = 予約 b101 = スーパバ イ ザ読み出 し 専用 b110 = スーパバ イ ザ / ユーザ読み出 し 専用 b111 = スーパバ イ ザ / ユーザ読み出 し 専用 [0] V 値ビ ッ ト 。 こ のエン ト リ が ロ ッ ク さ れ、 有効であ る こ と を示 し ます。 TLB 属性レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 4-26 に示 し ます。 㪈㪉 㪈㪈 㪈㪇 㪊㪈 㪥 㪪 㪬㪥㪢㪆㪪㪙㪱㪧 㪎 㪍 䊄䊜䉟䊮 㪯 㪥 㪌 㪋 㪊 㪉 㪈 㪇 㪫㪜㪯 㪚 㪙 㪪 図 4-26 メ イ ン TLB 属性レ ジ ス タ のビ ッ ト 割 り 当て TLB 属性レ ジ ス タ の ビ ッ ト 割 り 当て を、 表 4-39 に示 し ます。 Cortex-A9 プ ロ セ ッ サ はサブページ をサポー ト し てい ません。 表 4-39 TLB 属性レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:12] - UNK/SBZP [11] NS 非セキ ュ ア記述 [10:7] ド メ イン TLB エン ト リ の ド メ イ ン番号 [6] XN 実行不可属性 [5:3] TEX [2:1] CB 領域 タ イ プのエン コ ー ド 。 詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 [0] S 共有属性 ASID の一致に よ る TLB エ ン ト リ の無効化 こ れは、 指定 さ れた ア ド レ ス空間識別子 (ASID) の値 と 一致す る すべての TLB エ ン ト リ を無効化す る 、 単一の割 り 込み可能操作です。 こ の機能は、 ロ ッ ク さ れたエ ン ト リ の無効化を行い ます。 グ ロ ーバル と し てマー ク さ れてい る エ ン ト リ は、 こ の機 能では無効化 さ れません。 Cortex-A9 プ ロ セ ッ サでは、 こ の操作の完了に数サ イ ク ルかか り ます。 命令は割 り 込 み可能です。 割 り 込みが発生す る と 、 r14 の状態が、 MCR 命令が実行 さ れなか っ た こ と を示す よ う に設定 さ れます。 そのため、 r14 は MCR のア ド レ ス に 4 を加え た値を指 し ます。 その後で、 割 り 込みルーチンは自動的に、 MCR 命令の位置か ら 再開 さ れま ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-41 システム制御 す。 こ の操作が割 り 込まれ、 し ば ら く し て再開 さ れた場合は、 指定 さ れた ASID を使 用す る 割 り 込みに よ っ て TLB に フ ェ ッ チ さ れたすべてのエ ン ト リ が、 再開 さ れた無 効化に よ っ て無効に さ れます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 4-42 第5章 Jazelle DBX レ ジ ス タ 本章では、 CP14 コ プ ロ セ ッ サの概要 と 、 デバ ッ グ以外の用途について説明 し ます。 本 章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 「 コ プ ロ セ ッ サ CP14 について」 (ページ 5-2) • 「CP14 Jazelle レ ジ ス タ の概要」 (ページ 5-3) • 「CP14 Jazelle レ ジ ス タ の詳細」 (ページ 5-4) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-1 Jazelle DBX レ ジス タ 5.1 コ プ ロ セ ッ サ CP14 について コ プ ロ セ ッ サ C14 のデバ ッ グ以外の用途は、 Java バ イ ト コ ー ド のハー ド ウ ェ ア ア ク セ ラ レーシ ョ ン を サポー ト す る こ と です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-2 Jazelle DBX レ ジス タ 5.2 CP14 Jazelle レ ジ ス タ の概要 Jazelle 拡張機能の Cortex-A9 実装では、 次の規則が適用 さ れ ます。 • Jazelle 状態がサポー ト さ れ ます。 BXJ 命令で Jazelle 状態に移行 し ます。 • CP14 Jazelle レ ジ ス タ を、 表 5-1 に示 し ます。 すべての Jazelle レ ジ ス タ ア ク セ ス にお いて、 CRm と Op2 は 0 です。 すべての Jazelle レ ジ ス タ は 32 ビ ッ ト 幅です。 表 5-1 CP14 Jazelle レ ジ ス タ の概要 Op1 CRn 名前 タ イプ リ セ ッ ト 時の値 ページ 7 0 JazelleID レ ジ ス タ (JIDR) RWa 0xF4100168 (ページ 5-4) 7 1 Jazelle OS 制御レ ジ ス タ (JOSCR) RW - (ページ 5-5) 7 2 Jazelle メ イ ン構成レ ジ ス タ (JMCR) RW - (ページ 5-6) 7 3 Jazelle パ ラ メ ー タ レ ジ ス タ RW - (ページ 5-7) 7 4 Jazelle 構成可能オペコ ー ド 変換テーブルレ ジ ス タ WO - (ページ 5-8) a. 書 き 込み操作の影響については、 「JIDR の書き込み操作」 (ページ 5-5) を参照 し て下 さ い。 Jazelle 拡張機能の詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-3 Jazelle DBX レ ジス タ 5.3 CP14 Jazelle レ ジ ス タ の詳細 次に示すセ ク シ ョ ン では、 表 5-1 (ページ 5-3) での番号順に、 CP14 Jazelle DBX レ ジ ス タ の内容を説明 し ます。 「Jazelle ID レ ジ ス タ 」 • • 「Jazelle オペレーテ ィ ン グ シ ス テ ム制御レ ジ ス タ 」 (ページ 5-5) 「Jazelle メ イ ン構成レ ジ ス タ 」 (ページ 5-6) • 「Jazelle パ ラ メ ー タ レ ジ ス タ 」 (ページ 5-7) • 「Jazelle 構成可能オペ コー ド 変換テーブルレ ジ ス タ 」 (ページ 5-8) • 5.3.1 Jazelle ID レ ジ ス タ JIDR の特徴は次の と お り です。 目的 ソ フ ト ウ ェ アで、 プ ロ セ ッ サか ら 提供 さ れ る Jazelle 拡張機能の実 装を判断で き る よ う に し ます。 使用制限 JIDR の使用制限は次の と お り です。 • 特権モー ド でア ク セ ス可能 • CD ビ ッ ト が ク リ ア さ れてい る 場合は、 ユーザモー ド で も ア ク セ ス可能です。 「Jazelle オペレーテ ィ ン グ シ ス テ ム制御レ ジ ス タ 」 (ページ 5-5) を参照 し て下 さ い。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 5-1 (ページ 5-3) を参照 し て下 さ い。 JIDR の ビ ッ ト 割 り 当て を、 図 5-1 に示 し ます。 31 28 27 Arch 20 Design 12 11 SArchMajor 8 7 6 5 0 SArchMinor RAZ TrTableSz TrTbleFrm 図 5-1 JIDR のビ ッ ト 割 り 当て JIDR の ビ ッ ト 割 り 当て を、 表 5-2 に示 し ます。 表 5-2 JIDR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:28] Arch メ イ ン ID レ ジ ス タ と 同 じ アーキ テ ク チ ャ コ ー ド が使用 さ れます。 [27:20] Design サブアーキ テ ク チ ャ 設計者の実装者 コ ー ド が格納 さ れます。 [19:12] SArchMajor サブアーキ テ ク チ ャ コ ー ド [11:8] SArchMinor サブアーキ テ ク チ ャ マ イ ナーコ ー ド [7] - RAZ [6] TrTbleFrm Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ の形式を示 し ます。 [5:0] TrTbleSz Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のサ イ ズ を示 し ます。 JIDR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p14, 7, <Rd>, c0, c0, 0; Read Jazelle Identity Register ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-4 Jazelle DBX レ ジス タ JIDR の書き込み操作 JIDR に書 き 込む と 、 変換テーブルが ク リ ア さ れ ます。 こ の操作に よ っ て、 構成可能 オペ コ ー ド がすべて、 ソ フ ト ウ ェ アのみで実行 さ れ る よ う にな り ます。 「Jazelle 構成 可能オペコ ー ド 変換テーブルレ ジ ス タ 」 (ページ 5-8) を参照 し て下 さ い。 5.3.2 Jazelle オペ レ ーテ ィ ン グシ ス テム制御レ ジ ス タ JOSCR の特徴は次の と お り です。 目的 オペレーテ ィ ン グ シ ス テ ム で、 Jazelle 拡張機能ハー ド ウ ェ アへの ア ク セ ス を制御で き る よ う に し ます。 使用制限 JOSCR の使用制限は次の と お り です。 • 特権モー ド でのみア ク セ ス可能 • リ セ ッ ト 後は 0 に設定 さ れ、 特権モー ド で書 き 込む必要が あ り ます。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 5-1 (ページ 5-3) を参照 し て下 さ い。 JOSCR の ビ ッ ト 割 り 当て を、 図 5-2 に示 し ます。 㪊㪈 㪉 㪈 㪇 ੍⚂䇮㪩㪘㪱 㪚㪭 㪚㪛 図 5-2 JOSCR のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-5 Jazelle DBX レ ジス タ JOSCR の ビ ッ ト 割 り 当て を、 表 5-3 に示 し ます。 表 5-3 JOSCR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:2] - 予約、 RAZ [1] CV 構成有効ビ ッ ト 。 0 = Jazelle 構成が無効です。 Jazelle ハー ド ウ ェ アが稼働状態で Jazelle 状態への移行を試み る と 、 次の動作が行われます。 • 構成無効 Jazelle 例外が生成 さ れます。 • こ のビ ッ ト がセ ッ ト さ れ、 Jazelle 構成が有効 と し てマー ク さ れます。 1 = Jazelle 構成が有効です。 Jazelle ハー ド ウ ェ アが稼働状態であれば、 Jazelle 状態への移 行が成功 し ます。 例外が発生す る と 、 CV ビ ッ ト が自動的に ク リ ア さ れます。 [0] CD 構成不可能ビ ッ ト 。 0 = ユーザモー ド での Jazelle 構成が可能です。 • JIDR の読み出 し が成功 し ます。 • その他の Jazelle 構成レ ジ ス タ を読み出す と 、 未定義命令例外が生成 さ れます。 • JOSCR に書 き 込む と 、 未定義命令例外が生成 さ れます。 • その他の Jazelle 構成レ ジ ス タ への書き 込みは成功 し ます。 1 = ユーザモー ド での Jazelle 構成は不可能です。 • Jazelle 構成レ ジ ス タ を読み出す と 、 未定義命令例外が生成 さ れます。 • Jazelle 構成レ ジ ス タ に書 き 込む と 、 未定義命令例外が生成 さ れます。 JOSCR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p14, 7, <Rd>, c1, c0, 0; Read JOSCR MCR p14, 7. <Rd>, c1, c0, 0; Write JOSCR 5.3.3 Jazelle メ イ ン構成レ ジ ス タ JMCR の特徴は次の と お り です。 目的 Jazelle ハー ド ウ ェ アの構成 と その動作を示 し ます。 使用制限 特権モー ド でのみア ク セ ス可能です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 5-1 (ページ 5-3) を参照 し て下 さ い。 JMCR のビ ッ ト 割 り 当て を、 図 5-3 に示 し ます。 31 30 29 28 27 26 25 1 0 UNK/SBZP SP IS OP AP FP nAR JE 図 5-3 JMCR のビ ッ ト 割 り 当て ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-6 Jazelle DBX レ ジス タ JMCR のビ ッ ト 割 り 当て を、 表 5-4 に示 し ます。 表 5-4 JMCR のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31] nAR 非配列操作 (nAR) ビ ッ ト 。 0 = 実装 さ れていれば、 ハー ド ウ ェ アで配列操作を実行 し ます。 実装 さ れていない場合は、 VM 実装テーブル内の適切なハン ド ラ を呼び出 し ます。 1 = すべての配列操作を、 VM 実装テーブル内の適切なハン ド ラ を呼び出 し て実行 し ます。 [30] FP FP ビ ッ ト は、 Jazelle ハー ド ウ ェ アに よ る JVM 浮動小数点オペ コ ー ド の実行方法を制御 し ま す。 0 = すべての JVM 浮動小数点オペ コ ー ド を、 VM 実装テーブル内の適切なハン ド ラ を呼び出 し て実行 し ます。 1 = 可能であれば、 VFP 命令を発行 し て JVM 浮動小数点オペ コ ー ド を実行 し ます。 それ以外の場合は、 VM 実装テーブル内の適切なハン ド ラ を呼び出 し ます。 こ の実装では、 FP は 0 に設定 さ れ、 読み出 し 専用です。 [29] AP 配列ポ イ ン タ (AP) ビ ッ ト は、 Jazelle ハー ド ウ ェ アに よ る オペ ラ ン ド ス タ ッ ク 上の配列参照 の処理方法を制御 し ます。 0 = 配列参照がハン ド ル と し て処理 さ れます。 1 = 配列参照がポ イ ン タ と し て処理 さ れます。 [28] OP オブジ ェ ク ト ポ イ ン タ (OP) ビ ッ ト は、 Jazelle ハー ド ウ ェ アに よ る オペ ラ ン ド ス タ ッ ク 上の オブジ ェ ク ト 参照の処理方法を制御 し ます。 0 = オブジ ェ ク ト 参照がハン ド ル と し て処理 さ れます。 1 = オブジ ェ ク ト 参照がポ イ ン タ と し て処理 さ れます。 [27] IS イ ンデ ク ス サ イ ズ (IS) ビ ッ ト は、 ク イ ッ ク オブジ ェ ク ト フ ィ ール ド ア ク セ ス に関連付け ら れた イ ンデ ク ス のサ イ ズ を示 し ます。 0 = ク イ ッ ク オブジ ェ ク ト フ ィ ール ド イ ンデ ク スは 8 ビ ッ ト です。 1 = ク イ ッ ク オブジ ェ ク ト フ ィ ール ド イ ンデ ク スは 16 ビ ッ ト です。 [26] SP 静的ポ イ ン タ (SP) ビ ッ ト は、 Jazelle ハー ド ウ ェ アに よ る 静的参照の処理方法を制御 し ます。 0 = 静的参照がハン ド ル と し て処理 さ れます。 1 = 静的参照がポ イ ン タ と し て処理 さ れます。 [25:1] - UNK/SBZP [0] JE Jazelle イ ネーブル (JE) ビ ッ ト は、 Jazelle ハー ド ウ ェ アが稼働す る か ど う か を制御 し ます。 0 = Jazelle ハー ド ウ ェ アは非稼働状態です。 • BXJ 命令が BX 命令 と 同様に動作 し ます。 • CPSR 内の J ビ ッ ト を セ ッ ト す る と 、 Jazelle 非稼働 Jazelle 例外が発生 し ます。 1 = Jazelle ハー ド ウ ェ アが稼働状態です。 • BXJ 命令で Jazelle 状態に移行 し ます。 • CPSR の J ビ ッ ト を セ ッ ト す る と 、 Jazelle 状態に移行 し ます。 JMCR にア ク セ スす る には、 次の命令を使用 し ます。 MRC p14, 7, <Rd>, c2, c0, 0; Read JMCR MCR p14, 7. <Rd>, c2, c0, 0; Write JMCR 5.3.4 Jazelle パラ メ ー タ レ ジ ス タ Jazelle パ ラ メ ー タ レ ジ ス タ の特徴は次の と お り です。 ARM DDI 0388FJ ID013111 目的 Jazelle ハー ド ウ ェ アの動作方法を構成する パ ラ メ ー タ を示 し ます。 使用制限 特権モー ド でのみア ク セ ス可能です。 構成 すべての構成で使用可能です。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-7 Jazelle DBX レ ジス タ 属性 レ ジ ス タ の概要については、 表 5-1 (ページ 5-3) を参照 し て下 さ い。 Jazelle パ ラ メ ー タ レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 5-4 に示 し ます。 31 22 21 UNK/SBZP 17 16 BSH 12 11 sADO 8 7 ARO 4 3 STO 0 ODO 図 5-4 Jazelle パラ メ ー タ レ ジ ス タ のビ ッ ト 割 り 当て Jazelle パ ラ メ ー タ レ ジ ス タ の ビ ッ ト 割 り 当て を、 表 5-5 に示 し ます。 表 5-5 Jazelle パラ メ ー タ レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:22] - UNK/SBZP [21:17] BSH バ ウ ン ド シ フ ト (BSH) ビ ッ ト には、 配列記述子ワ ー ド 内の配列バ ウ ン ド (配列内の項目 数) のオ フ セ ッ ト がビ ッ ト 単位で格納 さ れます。 [16:12] sADO 符号付き 配列記述子オフ セ ッ ト (sADO) ビ ッ ト には、 配列参照か ら 配列記述子ワー ド ま でのオ フ セ ッ ト が、 ワ ー ド 単位で格納 さ れます。 オ フ セ ッ ト は、 符号絶対値符号付き 数 量です。 • ビ ッ ト [16] はオ フ セ ッ ト の符号を示 し ます。 オ フ セ ッ ト は、 こ のビ ッ ト が ク リ ア さ れ てい る 場合は正で、 こ のビ ッ ト がセ ッ ト さ れてい る 場合は負です。 • ビ ッ ト [15:12] は、 オ フ セ ッ ト の絶対値を示 し ます。 [11:8] ARO 配列参照オフ セ ッ ト (ARO) ビ ッ ト には、 配列参照か ら 、 配列デー タ ま たは配列デー タ ポ イ ン タ ま でのオ フ セ ッ ト が、 ワ ー ド 単位で格納 さ れます。 [7:4] STO [3:0] ODO 静的オフ セ ッ ト (STO) ビ ッ ト には、 静的参照か ら 、 静的ま たは静的ポ イ ン タ ま でのオ フ セ ッ ト が、 ワ ー ド 単位で格納 さ れます。 オブジ ェ ク ト 記述子オフ セ ッ ト (ODO) ビ ッ ト には、 オブジ ェ ク ト デー タ ブ ロ ッ ク の ベース か ら フ ィ ール ド ま でのオ フ セ ッ ト が、 ワ ー ド 単位で格納 さ れます。 Jazelle パ ラ メ ー タ レ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 MRC p14, 7, <Rd>, c3, c0, 0; Read Jazelle Parameters Register MCR p14, 7. <Rd>, c3, c0, 0; Write Jazelle Parameters Register 5.3.5 Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ の特徴は次の と お り です。 目的 0xCB ~ 0xFD の範囲の構成可能なオペ コ ー ド と 、 Jazelle ハー ド ウ ェ アで提供 さ れ る 操作 と の間の変換を実行 し ます。 使用制限 特権モー ド でのみア ク セ ス可能です。 構成 すべての構成で使用可能です。 属性 レ ジ ス タ の概要については、 表 5-1 (ページ 5-3) を参照 し て下 さ い。 Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のビ ッ ト 割 り 当て を、 図 5-5 (ペー ジ 5-9) に示 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-8 Jazelle DBX レ ジス タ 㪊㪈 㪈㪍 㪈㪌 㪬㪥㪢㪆㪪㪙㪱㪧 㪈㪇 㪐 䉥䊕䉮䊷䊄 㪋 㪊 㪬㪥㪢㪆㪪㪙㪱㪧 㪇 ᠲ 図 5-5 Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のビ ッ ト 割 り 当て Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のビ ッ ト 割 り 当て を、 表 5-6 に示 し ます。 表 5-6 Jazelle 構成可能オペ コ ー ド 変換テーブルレ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 機能 [31:16] - UNK/SBZP [15:10] オペコ ー ド 構成可能オペコ ー ド の下位ビ ッ ト が格納 さ れます。 [9:4] - UNK/SBZP [3:0] 操作 操作 0x0 ~ 0x9 の コ ー ド が格納 さ れます。 こ の レ ジ ス タ にア ク セ スす る には、 次の命令を使用 し ます。 ARM DDI 0388FJ ID013111 MRC p14, 7, <Rd>, c4, c0, 0; Read Jazelle Configurable Opcode Translation Table Register MCR p14, 7. <Rd>, c4, c0, 0; Write Jazelle Configurable Opcode Translation Table Register Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 5-9 第6章 メ モ リ 管理ユニ ッ ト 本章では、 MMU について説明 し ます。 本章は次のセ ク シ ョ ンか ら 構成 さ れてい ます。 • 「MMU について」 (ページ 6-2) 「TLB の構成」 (ページ 6-4) • 「 メ モ リ ア ク セ ス シーケ ン ス」 (ページ 6-6) • 「MMU の稼働ま たは非稼働」 (ページ 6-7) • 「外部アボー ト 」 (ページ 6-8) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-1 メ モ リ 管理ユニ ッ ト 6.1 MMU について MMU は、 レベル 1 お よ びレベル 2 メ モ リ シ ス テ ム と 連携 し て、 仮想ア ド レ ス を物理 ア ド レ ス に変換 し ます。 ま た、 外部 メ モ リ と のア ク セ ス も 制御 し ます。 仮想 メ モ リ シ ス テ ム アーキ テ ク チ ャ バージ ョ ン 7(VMSAv7) には次の よ う な機能があ り ます。 • 4KB、 64KB、 1MB、 16MB を サポー ト す る ページ テーブル エ ン ト リ • 16 個の ド メ イ ン • コ ン テ キ ス ト ス イ ッ チ TLB フ ラ ッ シ ュ に関す る 要件を排除す る ための、 グ ロ ー バルお よ びア ド レ ス空間識別子 • ア ク セ ス許可チ ェ ッ ク 機能の拡張 VMSAv7 アーキ テ ク チ ャ の完全な説明については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 プ ロ セ ッ サは、 ア ド レ ス変換 と ア ク セ ス許可チ ェ ッ ク を提供する、 セキ ュ リ テ ィ 拡張 機能およ びマルチプ ロ セ ッ サ拡張機能に よ り 拡張 さ れた、 ARMv7-A MMU を実装 し てい ます。 MMU は、 メ イ ン メ モ リ の変換テーブルにア ク セ スす る、 テーブル ウ ォー ク ハー ド ウ ェ ア を制御 し ます。 MMU の使用に よ り 、 一連の仮想 / 物理ア ド レ ス マ ッ ピ ン グ と メ モ リ 属性に よ る、 き め細かな メ モ リ シ ス テ ム制御が可能にな り ます。 注 VMSAv7 では、 レベル 1 記述子形式ページ テーブル ベース ア ド レ ス の ビ ッ ト 9 は実 装定義です。 Cortex-A9 プ ロ セ ッ サ設計では、 こ の ビ ッ ト は使用 さ れ ません。 MMU には次の よ う な機能があ り ます。 • 命令側マ イ ク ロ TLB — • デー タ 側マ イ ク ロ TLB — • 6.1.1 32 個の完全ア ソ シエ イ テ ィ ブエ ン ト リ 32 個の完全ア ソ シエ イ テ ィ ブエ ン ト リ 統一 メ イ ン TLB — 64 エ ン ト リ (2 × 32 エ ン ト リ ) TLB と 、 128 エ ン ト リ (2 × 64 エ ン ト リ ) TLB。 いずれ も 、 統一 2 ウ ェ イ ア ソ シエ イ テ ィ ブです。 — エ ン ト リ 単位 ロ ッ ク モデルを使用 し た、 4 つの ロ ッ ク 可能エ ン ト リ — レベル 1 デー タ キ ャ ッ シ ュ 内でル ッ ク ア ッ プ を実行す る 、 ハー ド ウ ェ ア ページ テーブル ウ ォー ク をサポー ト し ます。 メ モ リ 管理ユニ ッ ト MMU は次の操作を実行 し ます。 • 仮想ア ド レ ス と ASID のチ ェ ッ ク • ド メ イ ン ア ク セ ス許可のチ ェ ッ ク • メ モ リ 属性のチ ェ ッ ク • 仮想ア ド レ ス か ら 物理ア ド レ スへの変換 • 4 つのページ (領域) サ イ ズのサポー ト • キ ャ ッ シ ュ ま たは外部 メ モ リ へのア ク セ ス のマ ッ ピ ン グ • ハー ド ウ ェ ア と ソ フ ト ウ ェ アでの TLB ロ ー ド ド メ イン Cortex-A9 プ ロ セ ッ サは、 16 個のア ク セ ス ド メ イ ン をサポー ト し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-2 メ モ リ 管理ユニ ッ ト TLB Cortex-A9 プ ロ セ ッ サは 2 レベルの TLB 構造を実装 し てい ます。 メ イ ン TLB の 4 つ のエ ン ト リ が ロ ッ ク 可能です。 ASID メ イ ン TLB エ ン ト リ は、 グ ロ ーバルにす る こ と も 、 ア ド レ ス空間識別子 (ASID) を 使用 し て特定のプ ロ セ ス ま たはアプ リ ケーシ ョ ン に関連付け る こ と も で き ます。 ASID の使用に よ り 、 コ ン テ キ ス ト ス イ ッ チ中に TLB エ ン ト リ の内容が保持 さ れ る ため、 後で ロ ー ド し 直す必要がな く な り ます。 「ASID の一致に よ る TLB エン ト リ の 無効化」 (ページ 4-41) を参照 し て下 さ い。 シ ス テム制御 コ プ ロ セ ッ サ TLB の保守お よ び構成操作は、 コ アに統合 さ れてい る 専用 コ プ ロ セ ッ サの CP15 を 経由 し て制御 さ れます。 こ の コ プ ロ セ ッ サは、 レベル 1 メ モ リ シ ス テ ム を構成す る ための標準的な機構を提供 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-3 メ モ リ 管理ユニ ッ ト 6.2 TLB の構成 次に示すセ ク シ ョ ン では、 TLB の構成について説明 し ます。 「マ イ ク ロ TLB」 • • 「 メ イ ン TLB」 6.2.1 マ イ ク ロ TLB ページ テーブル情報の レベル 1 キ ャ ッ シ ュ は、 命令側 と デー タ 側のそれぞれに実装 さ れ る 32 エ ン ト リ のマ イ ク ロ TLB です。 こ れ ら のブ ロ ッ ク は、 単一 CLK サ イ ク ル で仮想ア ド レ ス の、 完全ア ソ シエ イ テ ィ ブル ッ ク ア ッ プ を提供 し ます。 マ イ ク ロ TLB は、 ア ド レ ス を比較す る ために物理ア ド レ ス を キ ャ ッ シ ュ に返 し 、 保 護属性をチ ェ ッ ク し てプ リ フ ェ ッ チアボー ト ま たはデー タ アボー ト を通知 し ます。 メ イ ン TLB に関連す る すべての操作は、 命令 と デー タ の両方のマ イ ク ロ TLB に影響 を与え、 それ ら の フ ラ ッ シ ュ を引 き 起 こ し ます。 同様に、 コ ン テ キ ス ト ID レ ジ ス タ を変更す る と 、 マ イ ク ロ TLB が フ ラ ッ シ ュ さ れ ます。 6.2.2 メ イ ン TLB メ イ ン TLB は、 マ イ ク ロ TLB か ら の ミ ス を捕捉 し ます。 ま た、 ロ ッ ク 可能な変換エ ン ト リ の ソ ース の集中化を可能に し ます。 メ イ ン TLB へのア ク セ ス に必要なサ イ ク ル数は、 マ イ ク ロ TLB 間の要求の競合や、 他の実装固有の要因に よ っ て異な り ます。 メ イ ン TLB の ロ ッ ク 可能領域内にあ る エ ン ト リ は、 エ ン ト リ 単位で ロ ッ ク 可能です。 ロ ッ ク 可能領域に ロ ッ ク さ れてい る エ ン ト リ がなければ、 ロ ッ ク さ れていないエ ン ト リ を割 り 当て て、 メ イ ン TLB ス ト レージの合計サ イ ズ を増やす こ と がで き ます。 メ イ ン TLB は、 次の要素の組み合わせ と し て実装 さ れ ます。 • 4 要素の完全ア ソ シエ イ テ ィ ブな、 ロ ッ ク 可能配列 • 2 × 32 ま たは 2 × 64 エ ン ト リ の、 2 ウ ェ イ ア ソ シエ イ テ ィ ブ構造 TLB 一致プ ロ セス 各 TLB エ ン ト リ には、 仮想ア ド レ ス、 ページサ イ ズ、 物理ア ド レ ス、 一連の メ モ リ プ ロ パテ ィ が格納 さ れ ます。 各エ ン ト リ は、 特定のアプ リ ケーシ ョ ン空間に関連付 け ら れた も の、 ま たはすべてのアプ リ ケーシ ョ ン空間に対 し て グ ロ ーバルな も の と し てマー ク さ れます。 CONTEXIDR は、 現在選択 さ れてい る アプ リ ケーシ ョ ン空間 を示 し ます。 修飾仮想ア ド レ ス の ビ ッ ト [31:N] が一致すれば、 TLB エ ン ト リ は一致 し ます。 こ こ で、 N は TLB エ ン ト リ のページサ イ ズの log2 です。 こ のエ ン ト リ は、 グ ロ ーバル と し て、 ま たは現在の ASID と 一致す る ASID と し てマー ク さ れます。 TLB エ ン ト リ は、 次の条件が真の場合に一致 し ます。 • エ ン ト リ の仮想ア ド レ ス が、 要求 さ れた ア ド レ ス の仮想ア ド レ ス と 一致す る 。 • エ ン ト リ の非セ キ ュ ア TLB ID (NSTID) が、 セキ ュ ア状態ま たは非セキ ュ ア状態 の MMU 要求 と 一致す る 。 • エ ン ト リ の ASID が現在の ASID と 一致す る か、 グ ロ ーバルであ る 。 オペレーテ ィ ン グ シ ス テ ムは常に、 2 つ以上の TLB エ ン ト リ が一致 し ない よ う にす る 必要があ り ます。 スーパーセ ク シ ョ ン、 セ ク シ ョ ン、 ラ ージページのサポー ト に よ っ て、 TLB の単一 エ ン ト リ のみを使用 し て、 メ モ リ の大 き な領域のマ ッ ピ ン グが可能です。 ア ド レ ス のマ ッ ピ ン グが TLB に見つか ら ない場合は、 ハー ド ウ ェ アで自動的に変換テーブル が読み出 さ れ、 マ ッ ピ ン グが TLB 内に配置 さ れます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-4 メ モ リ 管理ユニ ッ ト TLB ロ ッ ク ダウ ン TLB は、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 に記載 さ れてい る よ う に、 TLB のエ ン ト リ 単位 ロ ッ ク モデルをサポー ト し ます。 詳細については、 「TLB ロ ッ ク ダ ウ ン操作」 (ページ 4-39) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-5 メ モ リ 管理ユニ ッ ト 6.3 メ モ リ ア ク セス シーケ ン ス プ ロ セ ッ サが メ モ リ ア ク セ ス を生成す る と 、 MMU で次の処理が実行 さ れます。 1. 関連す る 命令ま たはデー タ マ イ ク ロ TLB で、 要求 さ れた仮想ア ド レ ス、 現在の ASID、 現在のセキ ュ リ テ ィ 状態のル ッ ク ア ッ プ を実行 し ます。 2. マ イ ク ロ TLB で ミ ス が発生 し た場合は、 メ イ ン TLB で、 要求 さ れた仮想ア ド レ ス、 現在の ASID、 現在のセ キ ュ リ テ ィ 状態のル ッ ク ア ッ プ を実行 し ます。 3. メ イ ン TLB で ミ ス が発生 し た場合は、 ハー ド ウ ェ ア変換テーブル ウ ォ ー ク を実 行 し ます。 変換テーブルベース レ ジ ス タ の IRGN ビ ッ ト を セ ッ ト す る と 、 キ ャ ッ シ ュ 可能領域 でハー ド ウ ェ ア変換テーブル ウ ォ ー ク を実行す る よ う に MMU を構成で き ます。 IRGN ビ ッ ト のエ ン コ ー ド が ラ イ ト バ ッ ク の場合は、 レベル 1 デー タ キ ャ ッ シ ュ の ル ッ ク ア ッ プが実行 さ れ、 デー タ キ ャ ッ シ ュ か ら デー タ が読み出 さ れ ます。 IRGN ビ ッ ト のエ ン コ ー ド が ラ イ ト ス ルーま たはキ ャ ッ シ ュ 不可の場合は、 外部 メ モ リ へ のア ク セ ス が実行 さ れます。 MMU の処理の結果、 指定 さ れた仮想ア ド レ ス について、 一致す る 非セキ ュ ア TLB ID(NSTID) を持つ、 グ ロ ーバルマ ッ ピ ン グ ま たは現在選択 さ れてい る ASID のマ ッ ピ ン グが、 TLB に見つか ら ない可能性があ り ます。 こ の場合、 TTB 制御レ ジ ス タ の PD0 ま たは PD1 ビ ッ ト に よ り 変換テーブル ウ ォー ク が可能にな っ ていれば、 ハー ド ウ ェ アで変換テーブル ウ ォ ー ク が実行 さ れ ます。 変換テーブル ウ ォ ー ク が不可能な 場合は、 プ ロ セ ッ サがセ ク シ ョ ン変換フ ォール ト を返 し ます。 MMU で一致す る TLB エ ン ト リ が見つか っ た場合は、 次の よ う にそのエ ン ト リ の情 報が使用 さ れます。 1. ア ク セ ス許可ビ ッ ト と ド メ イ ンに よ っ て、 ア ク セ ス が可能か ど う かが判断 さ れ ます。 一致す る エ ン ト リ が許可チ ェ ッ ク に合格 し なか っ た場合は、 MMU か ら メ モ リ アボー ト が通知 さ れ ます。 ア ク セ ス許可ビ ッ ト の説明、 ア ボー ト の タ イ プ と 優先度に関す る 説明、 お よ び IFSR と デー タ フ ォール ト ス テー タ ス レ ジ ス タ (DFSR) の説明については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 2. TLB エ ン ト リ と CP15 c10 再マ ッ プ レ ジ ス タ の両方で指定 さ れてい る メ モ リ 領 域属性に よ っ て、 キ ャ ッ シ ュ と ラ イ ト バ ッ フ ァ が制御 さ れ、 ア ク セ ス が次の ど れであ る かが決定 さ れます。 • セ キ ュ ア ま たは非セキ ュ ア • 共有ま たは非共有 • ノ ーマル メ モ リ 、 デバ イ ス、 ま たは ス ト ロ ン グ リ オーダ 3. MMU は、 メ モ リ ア ク セ ス を行 う ため、 仮想ア ド レ ス を物理ア ド レ ス に変換 し ます。 MMU で一致す る エ ン ト リ が見つか ら なか っ た場合は、 ハー ド ウ ェ ア テーブル ウ ォ ー ク が実行 さ れ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-6 メ モ リ 管理ユニ ッ ト 6.4 MMU の稼働または非稼働 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 に記載 さ れてい る 方法で、 MMU を 稼働ま たは非稼働にで き ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-7 メ モ リ 管理ユニ ッ ト 6.5 外部アボー ト 外部 メ モ リ エ ラ ーは、 MMU で検出 さ れた も のではな く 、 メ モ リ シ ス テ ム で発生 し た も の と し て定義 さ れます。 外部 メ モ リ エ ラ ーの発生は非常に稀であ る と 想定 さ れま す。 外部アボー ト は、 要求がプ ロ セ ッ サの外部に出力 さ れた と き に、 AXI イ ン タ フ ェ ース で フ ラ グが付け ら れたエ ラ ーに よ っ て引 き 起 こ さ れ ます。 セキ ュ ア構成レ ジ ス タ の EA ビ ッ ト を セ ッ ト し て、 外部アボー ト がモニ タ モー ド に ト ラ ッ プす る よ う に構成で き ます。 6.5.1 デー タ の読み出 し / 書き込み時の外部アボー ト デー タ の読み出 し / 書 き 込み時に外部で生成 さ れたエ ラ ーは、 非同期な場合があ り ま す。 こ れは、 こ の よ う な アボー ト でアボー ト ハン ド ラ が開始 さ れた と き 、 例外を引 き 起 こ し た命令のア ド レ ス が r14_abt に保存 さ れていない可能性があ る こ と を意味 し ます。 非同期アボー ト が発生 し た場合、 DFAR は予測不能です。 複数 ロ ー ド / ス ト ア操作の場合、 DFAR にキ ャ プチ ャ さ れ る ア ド レ ス は、 同期外部ア ボー ト を生成 し た ア ド レ ス です。 6.5.2 同期アボー ト と 非同期アボー ト フ ォ ール ト タ イ プ を判断す る ために、 デー タ アボー ト の場合は DFSR を、 命令ア ボー ト の場合は IFSR を読み出 し ます。 プ ロ セ ッ サは、 ソ フ ト ウ ェ アの互換性を維持す る 目的でのみ、 補助フ ォ ール ト ス テー タ ス レ ジ ス タ をサポー ト し てい ます。 アボー ト が生成 さ れて も 、 プ ロ セ ッ サが こ の レ ジ ス タ を変更す る こ と はあ り ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 6-8 第7章 レ ベル 1 メ モ リ シス テム 本章では、 レベル 1 メ モ リ シ ス テ ム について説明 し ます。 本章は次のセ ク シ ョ ン か ら 構 成 さ れてい ます。 「レベル 1 メ モ リ シ ス テ ムについて」 (ページ 7-2) • 「セキ ュ リ テ ィ 拡張機能のサポー ト 」 (ページ 7-4) • 「レベル 1 命令側 メ モ リ シ ス テ ムについて」 (ページ 7-5) • 「レベル 1 デー タ 側 メ モ リ シ ス テ ムについて」 (ページ 7-8) • 「DSB について」 (ページ 7-9) • • 「デー タ のプ リ フ ェ ッ チ」 (ページ 7-10) 「パ リ テ ィ エ ラ ーのサポー ト 」 (ページ 7-11) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-1 レベル 1 メ モ リ システム 7.1 レ ベル 1 メ モ リ シ ス テムについて レベル 1 メ モ リ シ ス テ ムには次の よ う な特徴 と 機能があ り ます。 • ラ イ ン長が 32 バ イ ト 固定の、 独立 し た命令キ ャ ッ シ ュお よ びデータ キ ャ ッ シ ュ • メ モ リ シ ス テ ム全体にわた る 64 ビ ッ ト のデー タ パ ス • 4 つの メ モ リ ページ サ イ ズのサポー ト • 外部 メ モ リ シ ス テ ム の メ モ リ 属性のエ ク ス ポー ト • セ キ ュ リ テ ィ 拡張機能のサポー ト レベル 1 メ モ リ シ ス テ ムのデー タ 側には、 次の よ う な特徴 と 機能があ り ます。 • 2 つの 32 バ イ ト ラ イ ン フ ィ ル バ ッ フ ァ と 、 1 つの 32 バ イ ト 退出バ ッ フ ァ • 4 エ ン ト リ の 64 ビ ッ ト 結合ス ト アバ ッ フ ァ 注 こ れ ら を使用す る 前に、 命令キ ャ ッ シ ュ 、 デー タ キ ャ ッ シ ュ 、 TLB、 BTAC を無効化 す る 必要があ り ます。 メ イ ン TLB は無効化す る 必要があ り ませんが、 安全上の理由 か ら 推奨 さ れ ます。 こ れに よ っ て、 将来の リ ビ ジ ョ ン のプ ロ セ ッ サ と の互換性が保 証 さ れ ます。 7.1.1 メ モ リ シ ス テム こ こ では、 次の ト ピ ッ ク について説明 し ます。 • 「キ ャ ッ シ ュ機能」 • 「ス ト アバ ッ フ ァ 」 (ページ 7-3) キ ャ ッ シ ュ機能 Cortex-A9 プ ロ セ ッ サには、 命令キ ャ ッ シ ュ と デー タ キ ャ ッ シ ュ が別々に存在 し ま す。 こ れ ら のキ ャ ッ シ ュ には、 次の よ う な特徴があ り ます。 • キ ャ ッ シ ュ 単位で無効にす る こ と がで き ます。 「シ ス テ ム制御レ ジ ス タ 」 (ペー ジ 4-15) を参照 し て下 さ い。 • キ ャ ッ シ ュ 置換方式は、 疑似 ラ ウ ン ド ロ ビ ン と 疑似 ラ ン ダ ム の ど ち ら かです。 • ど ち ら のキ ャ ッ シ ュ も 4 ウ ェ イ セ ッ ト ア ソ シエ イ テ ィ ブです。 • キ ャ ッ シ ュ ラ イ ンの長 さ は 8 ワー ド です。 • キ ャ ッ シ ュ ミ ス時、 重要な ワー ド か ら 先にキ ャ ッ シ ュ フ ィ ルが行われます。 • 実装時に、 命令キ ャ ッ シ ュ と デー タ キ ャ ッ シ ュ を別々に 16KB、 32KB、 ま たは 64KB のサ イ ズに構成で き ます。 • 電力消費を抑え る ため、 多 く のキ ャ ッ シ ュ 操作がシーケ ン シ ャ ルに実行 さ れ る 特性を活か し て、 キ ャ ッ シ ュ 全体の読み出 し 回数が削減 さ れ ます。 キ ャ ッ シ ュ 読み出 し が前のキ ャ ッ シ ュ 読み出 し か ら シーケ ン シ ャ ルに行われ、 かつ同 じ キ ャ ッ シ ュ ラ イ ンが読み出 さ れ る 場合、 前に読み出 し たデー タ RAM セ ッ ト の みがア ク セ ス さ れ ます。 命令キ ャ ッ シ ュの特徴 命令キ ャ ッ シ ュ には、 仮想的に イ ンデ ク スが付け ら れ、 物理的に タ グが付け ら れます。 デー タ キ ャ ッ シ ュの特徴 デー タ キ ャ ッ シ ュ には、 物理的に イ ンデ ク ス が付け ら れ、 物理的に タ グが付け ら れ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-2 レベル 1 メ モ リ システム デー タ キ ャ ッ シ ュ の読み出 し ミ ス と 書 き 込み ミ ス はいずれ も 非ブ ロ ッ キ ン グで、 未 解決デー タ キ ャ ッ シ ュ 読み出 し ミ ス が最高 4 回ま で、 未解決デー タ キ ャ ッ シ ュ 書 き 込み ミ ス が最高 4 回ま でサポー ト さ れ ます。 ス ト アバ ッ フ ァ Cortex-A9 CPU は、 デー タ 結合機能を持つ 4 つの 64 ビ ッ ト ス ロ ッ ト で構成 さ れ る ス ト アバ ッ フ ァ を備え てい ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-3 レベル 1 メ モ リ システム 7.2 セキ ュ リ テ ィ 拡張機能のサポー ト Cortex-A9 プ ロ セ ッ サは、 セキ ュ リ テ ィ 拡張機能をサポー ト し てお り 、 メ モ リ シ ス テ ム に対する メ モ リ 要求のセキ ュ ア ま たは非セキ ュ ア ス テータ ス をエ ク ス ポー ト し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-4 レベル 1 メ モ リ システム 7.3 レ ベル 1 命令側 メ モ リ シ ス テムについて レベル 1 命令側 メ モ リ シ ス テ ムは、 Cortex-A9 プ ロ セ ッ サに命令ス ト リ ーム を提供 し ます。 総合的なパフ ォーマ ン ス を向上 し 、 電力消費を低減す る ため、 次の機能が含 ま れてい ます。 • 動的分岐予測 • 命令のキ ャ ッ シ ュ こ の動作を、 図 7-1 に示 し ます。 ᄌ឵䊦䉾䉪䉝䉰䉟䊄䊋䉾䊐䉜㩿䌔䌌䌂㪀 㪣㪈䊜䊝䊥䉲䉴䊁䊛 ಽጘ੍᷹ ಽጘవ䉝䊄䊧䉴 䉨䊞䉾䉲䊠㩿㪙㪫㪘㪚㪀 䊐䉢䉾䉼 䊐䊨䊷 䉫䊨䊷䊋䊦ጁᱧ 䊋䉾䊐䉜㩿㪞㪟㪙㪀 䉨䊞䉾䉲䊠 㪈㪍㪢㪙䌾㪍㪋㪢㪙 䊂䉮䊷䉻 ಽ㔌㪝㪠㪝㪦 䊥䉺䊷䊮䉴䉺䉾䉪 䉮䉝䈎䉌 㪧㪚䉕ᒝ 䋨੍᷹䊚䉴䋩 㪂 ੍᷹ᦝᣂ 図 7-1 分岐予測 と 命令キ ャ ッ シ ュ ISide は次の要素で構成 さ れてい ます。 プ リ フ ェ ッ チユニ ッ ト (PFU) プ リ フ ェ ッ チユニ ッ ト には、 次の要素で構成 さ れ る 2 レベルの予測機構 が実装 さ れてい ます。 • 512 エ ン ト リ の BTAC。 RAM に実装 さ れ、 2 ウ ェ イ × 256 エ ン ト リ と し て編成 さ れてい ます。 • グ ロ ーバル履歴バ ッ フ ァ (GHB)。 4096 個の 2 ビ ッ ト 予測器が RAM に実装 さ れてい ます。 • リ タ ーン ス タ ッ ク 。 8 つの 32 ビ ッ ト エ ン ト リ が含ま れてい ます。 予測方式は、 ARM 状態、 Thumb 状態、 ThumbEE 状態、 Jazelle 状 態で使用で き ます。 ま た、 ARM か ら Thumb へ、 Thumb か ら ARM への状態遷移 も 予測で き ます。 その他の状態遷移は予測で き ませ ん。 ま た、 コ アのモー ド を変更す る 命令 も 予測で き ません。 「プ ロ グ ラ ム フ ロ ー予測」 (ページ 7-6) を参照 し て下 さ い。 命令キ ャ ッ シ ュ コ ン ト ロ ー ラ 命令キ ャ ッ シ ュ コ ン ト ロ ー ラ は、 プ リ フ ェ ッ チユニ ッ ト で予測 さ れたプ ロ グ ラ ム フ ロ ーに応 じ て、 メ モ リ か ら 命令を フ ェ ッ チ し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-5 レベル 1 メ モ リ システム 命令キ ャ ッ シ ュ は 4 ウ ェ イ セ ッ ト ア ソ シエ イ テ ィ ブです。 命令キ ャ ッ シ ュ には次の よ う な特徴があ り ます。 7.3.1 • サ イ ズ を 16KB、 32KB、 ま たは 64KB に構成可能です。 • 仮想 イ ンデ ク ス物理 タ グ付 き (VIPT) • 64 ビ ッ ト ネ イ テ ィ ブのア ク セ ス に よ り 、 サ イ ク ルご と に最大 4 つ の命令を プ リ フ ェ ッ チユニ ッ ト に送 る こ と がで き ます。 • セ キ ュ リ テ ィ 拡張機能のサポー ト • ロ ッ ク ダ ウ ンはサポー ト し てい ません。 プ ロ グ ラ ム フ ロー予測の可能化 CP15 c1 制御レ ジ ス タ の Z ビ ッ ト を 1 にセ ッ ト す る と 、 プ ロ グ ラ ム フ ロ ー予測が可能 にな り ます。 「シ ス テ ム制御レ ジ ス タ 」 (ページ 4-15) を参照 し て下 さ い。 プ ロ グ ラ ム フ ロ ー予測を可能にす る 前に、 BTAC フ ラ ッ シ ュ 操作を実行す る 必要があ り ます。 こ の操作に よ り 、 GHB が既知の状態に設定 さ れ る 効果 も あ り ます。 7.3.2 プ ロ グ ラ ム フ ロー予測 次に示すセ ク シ ョ ン では、 プ ロ グ ラ ム フ ロ ー予測について説明 し ます。 「予測 さ れ る命令 と 予測 さ れない命令」 • • 「Thumb 状態の条件付 き分岐」 • 「 リ タ ーン ス タ ッ ク 予測」 (ページ 7-7) 予測 さ れる命令 と 予測 さ れない命令 こ こ では、 プ ロ セ ッ サが予測す る 命令を示 し ます。 特に記載がなければ、 こ の リ ス ト は ARM 命令、 Thumb 命令、 ThumbEE 命令、 Jazelle 命令に適用 さ れ ます。 通常、 フ ロ ー予測ハー ド ウ ェ アは、 次の も のを含むすべての分岐命令を、 ア ド レ シ ン グ モー ド に関係な く 予測 し ます。 • 条件付 き 分岐 • 無条件分岐 • 間接分岐 • PC をデス テ ィ ネーシ ョ ン と す る デー タ 処理操作 • ARM 状態 と Thumb 状態 と を切 り 替え る 分岐 ただ し 、 一部の分岐命令は予測 さ れ ません。 • 状態を切 り 替え る 分岐 (ARM か ら Thumb、 Thumb か ら ARM への移行を除 く ) • 接尾文字が S の命令は、 一般に例外か ら の復帰に使用 さ れ、 特権モー ド と セ キ ュ リ テ ィ 状態を変更す る 副作用があ る ため、 予測 さ れません。 • すべてのモー ド 変更命令 Thumb 状態の条件付き分岐 Thumb 状態では、 通常は無条件 と し てエ ン コ ー ド さ れ る 分岐を、 If-Then-Else (ITE) ブ ロ ッ ク に含め る こ と に よ っ て条件付 き にで き ます。 こ の分岐は、 通常の条件付 き 分 岐 と し て扱われます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-6 レベル 1 メ モ リ システム リ タ ーン ス タ ッ ク 予測 リ タ ーン ス タ ッ ク には、 関数呼び出 し 型分岐命令の次の命令のア ド レ ス と 実行状態 が保存 さ れます。 こ のア ド レ ス は、 r14 に保存 さ れ る リ ン ク レ ジ ス タ の値 と 同 じ で す。 次に示す命令では、 予測 さ れた場合に リ タ ーン ス タ ッ ク のプ ッ シ ュ が実行 さ れ ます。 • BL イ ミ デ ィ エー ト • BLX(1) イ ミ デ ィ エー ト BLX(2) レ ジ ス タ • HBL (ThumbEE 状態) • HBLP (ThumbEE 状態) • 次に示す命令では、 予測 さ れた場合に リ タ ーン ス タ ッ ク のポ ッ プが実行 さ れます。 BX r14 • • MOV pc, r14 • LDM r13, {…pc} • LDR pc, [r13] LDR 命令は、 r13 がベース レ ジ ス タ であれば、 任意のア ド レ シ ン グモー ド を使用で き ます。 加え て、 ThumbEE 状態では、 r9 を ス タ ッ ク ポ イ ン タ と し て使用す る こ と も で き る ため、 デス テ ィ ネーシ ョ ン と し て PC を、 ベース レ ジ ス タ と し て r9 を使用 し た LDR 命令 と LDM 命令 も 、 リ タ ーン ス タ ッ ク ポ ッ プ と し て扱われます。 例外か ら の復帰命令はプ ロ セ ッ サの特権モー ド と セキ ュ リ テ ィ 状態を変更する可能性 があ る ため、 予測 さ れません。 こ れには、 LDM(3) 命令 と MOVS pc, r14 命令が含まれます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-7 レベル 1 メ モ リ システム 7.4 レ ベル 1 デー タ 側 メ モ リ シ ス テムについて レベル 1 デー タ キ ャ ッ シ ュ は、 物理的に イ ンデ ク ス と タ グが付け ら れた キ ャ ッ シ ュ と し て編成 さ れてい ます。 マ イ ク ロ TLB では、 キ ャ ッ シ ュ ア ク セ ス を実行す る 前 に、 仮想ア ド レ ス か ら 物理ア ド レ ス が生成 さ れ ます。 7.4.1 ロー カルモ ニ タ Cortex-A9 プ ロ セ ッ サの レベル 1 メ モ リ シ ス テ ム には ロ ーカルモニ タ があ り ます。 こ れは 2 状態の、 オープ ン で排他的な ス テー ト マシ ン で、 排他 ロ ー ド / ス ト ア (LDREXB、 LDREXH、 LDREX、 LDREXD、 STREXB、 STREXH、 STREX、 STREXD) ア ク セ スお よ び排他 ク リ ア (CLREX) 命令を管理 し ます。 こ れ ら の命令を使用すれば、 セマ フ ォ を構築 し て、 CPU 上で実行 さ れてい る 複数のプ ロ セ ス の同期 と 、 そのセマ フ ァ に対 し て同 じ 一貫 し た メ モ リ 位置を使用 し てい る 複数のプ ロ セ ッ サの同期を保証で き ます。 注 排他ス ト アでは、 MMU フ ォール ト が生成 さ れた り 、 ロ ーカルモニ タ の状態にかかわ ら ず、 プ ロ セ ッ サでデー タ ウ ォ ッ チポ イ ン ト 例外が取得 さ れた り す る 可能性があ り ます。 表 10-8 (ページ 10-11) を参照 し て下 さ い。 こ れ ら の命令の詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 中間 STR 操作の処理 LDREX/STREX コ ー ド シーケ ン ス に中間 STR 操作が存在 し て も 、 その中間 STR が内部排他 モニ タ に影響を与え る こ と はあ り ません。 ロ ーカルモニ タ は、 LDREX の後で排他ア ク セ ス状態にな り 、 STR 後は排他ア ク セ ス状態を維持 し 、 STREX の後にのみオープ ン ア ク セ ス状態に戻 り ます。 LDREX 操作 と STREX 操作のサイ ズが異な る場合 LDREX 操作 と STREX 操作のサ イ ズが異な る 場合は、 タ グ付 き ア ド レ ス バ イ ト が ス ト ア操作のサ イ ズ と 一致す る 、 ま たはサ イ ズの範囲内であ る こ と を保証す る ために チ ェ ッ ク が行われ ます。 LDREX 命令の タ グ付 き ア ド レ ス の粒度は 8 ワー ド で、 8 ワ ー ド 境界にア ラ イ ン さ れま す。 こ のサ イ ズは実装定義であ る ため、 ソ フ ト ウ ェ アは他の ARM コ アで も こ の粒度 が同 じ であ る こ と を前提 と はで き ません。 7.4.2 外部アボー ト 処理 レベル 1 デー タ キ ャ ッ シ ュ は、 ア ク セ ス の メ モ リ 領域の属性に応 じ て、 2 種類の外部 アボー ト を処理 し ます。 ARM DDI 0388FJ ID013111 • すべての ス ト ロ ン グ リ オーダ ア ク セ ス で、 同期アボー ト 機構が使用 さ れます。 • すべてのキ ャ ッ シ ュ 可能、 デバ イ ス、 ノ ーマルのキ ャ ッ シ ュ 不可 メ モ リ の要求 では、 非同期アボー ト 機構が使用 さ れ ます。 例えば、 読み出 し 時の ミ ス で ラ イ ン フ ィ ルが発行 さ れ、 アボー ト が返 さ れた場合、 そのアボー ト は非同期 と し て フ ラ グ付け さ れます。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-8 レベル 1 メ モ リ システム 7.5 DSB について Cortex-A9 プ ロ セ ッ サは、 DSB 命令の SY オプシ ョ ンのみを実装 し てい ます。 他のすべ ての DSB オプシ ョ ンは、 完全な シ ス テ ム DSB 操作 と し て動作 し ますが、 ソ フ ト ウ ェ ア は こ の動作を前提 と はで き ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-9 レベル 1 メ モ リ システム 7.6 デー タ のプ リ フ ェ ッ チ こ こ では、 次の ト ピ ッ ク について説明 し ます。 「PLD 命令」 • • 「デー タ のプ リ フ ェ ッ チ と 監視」 7.6.1 PLD 命令 すべての PLD 命令は、 専用 リ ソ ース を持つ Cortex-A9 プ ロ セ ッ サの専用ユニ ッ ト で処 理 さ れ ます。 こ れに よ っ て、 整数 コ ア ま たは ロ ー ド ス ト ア ユニ ッ ト の リ ソ ース を使 用す る こ と が回避 さ れます。 7.6.2 デー タ のプ リ フ ェ ッ チ と 監視 Cortex-A9 デー タ キ ャ ッ シ ュ は、 プ ロ セ ッ サで発生 し た キ ャ ッ シ ュ ミ ス を監視す る 自 動プ リ フ ェ ッ チ機構を実装 し てい ます。 こ のユニ ッ ト は、 2 つの独立 し たデー タ ス ト リ ーム を監視お よ びプ リ フ ェ ッ チで き ます。 ま た、 ソ フ ト ウ ェ アで CP15 補助制御レ ジ ス タ の ビ ッ ト を使用 し て ア ク テ ィ ブにす る こ と がで き ます。 「補助制御レ ジ ス タ 」 (ページ 4-18) を参照 し て下 さ い。 ソ フ ト ウ ェ アで PLD 命令を発行 し た場合、 PLD プ リ フ ェ ッ チユニ ッ ト が常に、 デー タ プ リ フ ェ ッ チ機構か ら の要求 よ り も 優先 さ れます。 投機的プ リ フ ェ ッ チ機構でプ リ フ ェ ッ チ さ れた ラ イ ンは、 割 り 当て前に破棄 さ れ る 可能性があ り ます。 PLD 命令は 常に実行 さ れ、 破棄 さ れ る こ と はあ り ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-10 レベル 1 メ モ リ システム 7.7 パ リ テ ィ エ ラ ーのサポー ト 構成にパ リ テ ィ エ ラ ーのサポー ト が実装 さ れてい る場合、 次の よ う な特徴があ り ます。 • パ リ テ ィ 方式は偶数パ リ テ ィ です。 0000000 のバ イ ト の場合、 パ リ テ ィ は 0 です。 • 設計に含まれ る それぞれの RAM についてパ リ テ ィ 情報が生成 さ れ ます。 一般 に、 RAM のバ イ ト ご と に 1 つのパ リ テ ィ ビ ッ ト が生成 さ れ ます。 RAM の ビ ッ ト 幅が 8 の倍数でない場合は、 残 り のビ ッ ト で 1 つのパ リ テ ィ ビ ッ ト が生成 さ れ ます。 パ リ テ ィ ビ ッ ト 書 き 込み可能デー タ も サポー ト さ れ ます。 • パ リ テ ィ がサポー ト さ れてい る 設計の RAM ア レ イ には、 RAM バン ク のデー タ と と も にパ リ テ ィ 情報が格納 さ れ ます。 そのため、 設計でパ リ テ ィ のサポー ト を実装す る 場合、 RAM ア レ イ の幅が広 く な り ます。 • Cortex-A9 ロ ジ ッ ク に、 パ リ テ ィ 生成 ロ ジ ッ ク と パ リ テ ィ チ ェ ッ ク ロ ジ ッ ク が 追加 さ れ ます。 パ リ テ ィ サポー ト 設計の機能 と ス テージ を、 図 7-2 に示 し ます。 ス テージ 1 と 2 で は、 RAM 書 き 込み と パ リ テ ィ 生成が並列に実行 さ れ ます。 RAM 読み出 し と パ リ テ ィ チ ェ ッ ク は、 ス テージ 3 と 4 で並列に実行 さ れます。 㪚㫆㫉㫋㪼㫏㪄㪘㪐 䊒䊨䉶䉾䉰䊨䉳䉾䉪 㪚㫆㫉㫋㪼㫏㪄㪘㪐 䊒䊨䉶䉾䉰䊨䉳䉾䉪 㪩㪘㪤䉝䊧䉟 㪛㪝㪝 㪩㪘㪤 ㈩ 㪛㪝㪝 䊤䉾䉼 㪛㪝㪝 㪛㪝㪝 㪈 㪉 ᦠ䈐ㄟ䉂䊂䊷䉺ㆬᛯ 㪩㪘㪤ᦠ䈐ㄟ䉂 䊌䊥䊁䉞↢ᚑ 䊌䊥䊁䉞ᦠ䈐ㄟ䉂䋨㪮㪛㪘㪫㪘ౝ䋩 ᯏ⢻䊌䉴䋨㪩㪘㪤⺒䉂䈚䋩 㪩㪘㪤⺒䉂䈚䋨䉝䊄䊧䉴䋩 䊌䊥䊁䉞䊌䉴䋨䊌䊥䊁䉞䉼䉢䉾䉪㩷㪂 䉣䊤䊷ႎ๔䋩 㪊 㪛㪝㪝 㪋 㪌 ᯏ⢻䊌䉴䋨㪩㪘㪤ᦠ䈐ㄟ䉂䋩 䊌䊥䊁䉞䊌䉴䋨䊌䊥䊁䉞↢ᚑ䋩 㪩㪘㪤⺒䉂䈚䋨䊂䊷䉺䋩 䊌䊥䊁䉞䉼䉢䉾䉪䋨䊋䉟䊃න䋩 ⚿ว䈘䉏䈢䊌䊥䊁䉞୯ 㪧㪘㪩㪠㪫㪰㪝㪘㪠㪣㪲㪎㪑㪇㪴 図 7-2 パ リ テ ィ のサポー ト パ リ テ ィ エ ラ ーは、 出力信号 PARITYFAIL[7:0] に よ っ て報告 さ れます。 通常は、 対 応す る RAM 読み出 し か ら 3 ク ロ ッ ク サ イ ク ル後に、 PARITYFAIL[7:0] に よ っ てパ リ テ ィ エ ラ ーが報告 さ れ ます。 注 こ れは、 正確なエ ラ ー検出方式ではあ り ません。 設計者は、 RAM 用のア ド レ ス レ ジ ス タ パ イ プ ラ イ ン を追加す る こ と に よ っ て、 正確なエ ラ ー検出方式を実装で き ます。 こ の ロ ジ ッ ク を正 し く 実装す る のは設計者の責任です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-11 レベル 1 メ モ リ システム 7.7.1 GHB と BTAC のデー タ 破損 こ の方式では、 GHB RAM と BTAC RAM に対す る パ リ テ ィ エ ラ ー サポー ト が提供 さ れますが、 こ の機能に よ っ て行え る 診断は限定 さ れ ます。 GHB デー タ ま たは BTAC デー タ が破損 し た場合は、 Cortex-A9 プ ロ セ ッ サで機能エ ラ ーが生成 さ れません。 GHB デー タ ま たは BTAC デー タ の破損は、 分岐予測 ミ ス と し て検出 さ れ、 修正 さ れ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 7-12 第8章 レ ベル 2 メ モ リ イ ン タ フ ェ ース 本章では、 レベル 2 メ モ リ イ ン タ フ ェース について説明 し ます。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 「Cortex-A9 の レベル 2 イ ン タ フ ェース」 (ページ 8-2) • 「レベル 2 メ モ リ イ ン タ フ ェースへのア ク セ ス の最適化」 (ページ 8-7) • 「STRT 命令」 (ページ 8-9) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-1 レベル 2 メ モ リ イ ン タ フ ェ ース 8.1 Cortex-A9 のレ ベル 2 イ ン タ フ ェ ース こ こ では、 Cortex-A9 の レベル 2 イ ン タ フ ェース について説明 し ます。 「Cortex-A9 の レベル 2 イ ン タ フ ェース について」 • • 「サポー ト さ れてい る AXI 転送」 (ページ 8-3) 「AXI ト ラ ンザ ク シ ョ ン ID」 (ページ 8-3) • 「STRT 命令」 (ページ 8-9) • 8.1.1 Cortex-A9 のレ ベル 2 イ ン タ フ ェ ースについて Cortex-A9 の レベル 2 イ ン タ フ ェ ース は、 64 ビ ッ ト 幅の AXI バ ス マ ス タ で構成 さ れ ます。 • M0 はデー タ 側バ ス です。 • M1 は命令側バ ス で、 書 き 込みチ ャ ネルは存在 し ません。 AXI マ ス タ 0 イ ン タ フ ェース の属性を、 表 8-1 に示 し ます。 表 8-1 AXI マス タ 0 イ ン タ フ ェ ースの属性 属性 形式 書 き 込み発行機能 以下を含めて 12 • 8 つのキ ャ ッ シ ュ 不可書 き 込み • 4 つの退出 読み出 し 発行機能 以下を含めて 10 • 6 つの ラ イ ン フ ィ ル読み出 し • 4 つのキ ャ ッ シ ュ 不可読み出 し 統合発行機能 22 書 き 込み ID 機能 2 書 き 込み イ ン タ ー リ ーブ機能 1 書 き 込み ID 幅 2 読み出 し ID 機能 3 読み出 し ID 幅 2 AXI マ ス タ 1 イ ン タ フ ェース の属性を、 表 8-2 に示 し ます。 表 8-2 AXI マス タ 1 イ ン タ フ ェ ースの属性 ARM DDI 0388FJ ID013111 属性 形式 書き 込み発行機能 なし 読み出 し 発行機能 命令読み出 し 4 つ 統合発行機能 4 書き 込み ID 機能 なし 書き 込み イ ン タ ー リ ーブ機能 なし Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-2 レベル 2 メ モ リ イ ン タ フ ェ ース 表 8-2 AXI マス タ 1 イ ン タ フ ェ ースの属性 (続き) 属性 形式 書き 込み ID 幅 なし 読み出 し ID 機能 4 読み出 し ID 幅 2 注 表 8-1 (ページ 8-2) と 表 8-2 (ページ 8-2) の数値は、 Cortex-A9 MP プ ロ セ ッ サの理 論上の最大値です。 標準的なシ ス テ ム で、 こ れ ら の数値に到達す る 可能性はほ と ん ど あ り ません。 シ ス テ ム リ ソ ース についてのプ ロ フ ァ イ リ ン グ を実行 し 、 その結果 に応 じ てパフ ォ ーマ ン ス を最適化す る よ う に調整を行 う こ と をお勧め し ます。 AXI プ ロ ト コ ルお よ び各 AXI 信号の意味については、 本書では解説 し ません。 詳細 については、 『AMBA AXI プ ロ ト コ ル v1.0 仕様』 を参照 し て下 さ い。 サポー ト さ れている AXI 転送 Cortex-A9 のマ ス タ ポー ト では、 可能な AXI ト ラ ンザ ク シ ョ ン の一部 し か生成 さ れま せん。 キ ャ ッ シ ュ 可能 ト ラ ンザ ク シ ョ ン についは、 次の と お り です。 • 読み出 し 転送用の WRAP4 64 ビ ッ ト ( ラ イ ン フ ィ ル) • 書 き 込み転送用の INCR4 64 ビ ッ ト (退出) キ ャ ッ シ ュ 不可 ト ラ ンザ ク シ ョ ン については、 次の と お り です。 • INCR N (N : 1 ~ 9) 64 ビ ッ ト 読み出 し 転送 • 64 ビ ッ ト 書 き 込み転送用の INCR 1 • INCR N (N : 1 ~ 16) 32 ビ ッ ト 読み出 し 転送 • 32 ビ ッ ト 書 き 込み転送用の INCR N (N : 1 ~ 2) • 8 ビ ッ ト お よ び 16 ビ ッ ト 読み出 し / 書 き 込み転送用の INCR 1 • 8 ビ ッ ト 、 16 ビ ッ ト 、 32 ビ ッ ト 、 64 ビ ッ ト 排他読み出 し / 書 き 込み転送用の INCR 1 • ス ワ ッ プ を行 う 8 ビ ッ ト お よ び 32 ビ ッ ト 読み出 し / 書 き 込み ( ロ ッ ク 付 き ) の INCR 1 • • AXI • • • • • 8.1.2 ト ラ ンザ ク シ ョ ン には、 次の規則が適用 さ れ ます。 WRAP バース ト は、 読み出 し 転送、 64 ビ ッ ト 、 4 転送のみです。 INCR 1 は、 任意のサ イ ズの読み出 し / 書 き 込みが可能です。 INCR バース ト (複数転送) は、 32 ビ ッ ト ま たは 64 ビ ッ ト のみです。 ど の ト ラ ンザ ク シ ョ ン も FIXED と し てマー ク さ れません。 すべてのバ イ ト ス ト ロ ーブが LOW の状態で書 き 込み転送が発生す る 可能性が あ り ます。 AXI ト ラ ンザ ク シ ョ ン ID AXI ID 信号は次の よ う にエ ン コ ー ド さ れます。 • ARM DDI 0388FJ ID013111 デー タ 側読み出 し バ ス の場合は、 ARIDM0 が次の よ う にエ ン コ ー ド さ れます。 — 2'b00: キ ャ ッ シ ュ 不可ア ク セ ス Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-3 レベル 2 メ モ リ イ ン タ フ ェ ース — — — 8.1.3 2'b01: 未使用 2'b10: ラ イ ン フ ィ ル 0 ア ク セ ス 2'b11: ラ イ ン フ ィ ル 1 ア ク セ ス • 命令側読み出 し バ ス の場合は、 ARIDM1 が次の よ う にエ ン コ ー ド さ れます。 — 2'b00: 未解決 ト ラ ンザ ク シ ョ ン — 2'b01: 未解決 ト ラ ンザ ク シ ョ ン — 2'b10: 未解決 ト ラ ンザ ク シ ョ ン — 2'b11: 未解決 ト ラ ンザ ク シ ョ ン • デー タ 側書 き 込みバ ス の場合は、 AWIDM0 が次の よ う にエ ン コ ー ド さ れます。 — 2'b00: キ ャ ッ シ ュ 不可ア ク セ ス — 2'b01: 未使用 — 2'b10: ラ イ ン フ ィ ル 0 退出 — 2'b11: ラ イ ン フ ィ ル 1 退出 AXI USER ビ ッ ト AXI USER ビ ッ ト のエ ン コ ー ド は次の と お り です。 デー タ 側読み出 し バス、 ARUSERM0[6:0] ARUSERM0[6:0] の ビ ッ ト エ ン コ ー ド を、 表 8-3 に示 し ます。 表 8-3 AWUSERM0[6:0] のエ ン コ ー ド ビッ ト 名前 説明 [6] 予約 b0 [5] レベル 2 プ リ フェ ッチ ヒ ン ト こ の読み出 し ア ク セ ス が レベル 2 に対する プ リ フ ェ ッ チ ヒ ン ト で、 デー タ を返す と 想定 さ れていない こ と を示 し ます。 [4:1] 内部属性 b0000 = ス ト ロ ン グ リ オーダ b0001 = デバ イ ス b0011 = ノ ーマル メ モ リ 、 キ ャ ッ シ ュ 不可 b0110 = ラ イ ト スルー b0111 = ラ イ ト バ ッ ク 、 書き 込み割 り 当てな し b1111 = ラ イ ト バ ッ ク 、 書き 込み割 り 当て [0] 共有ビ ッ ト b0 = 非共有 b1 = 共有 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-4 レベル 2 メ モ リ イ ン タ フ ェ ース 命令側読み出 し バス、 ARUSERM1[6:0] ARUSERM1[6:0] の ビ ッ ト エ ン コ ー ド を、 表 8-4 に示 し ます。 表 8-4 ARUSERM1[6:0] のエ ン コ ー ド ビッ ト 名前 説明 [6] 予約 b0 [5] 予約 b0 [4:1] 内部属性 b0000 = ス ト ロ ン グ リ オーダ b0001 = デバ イ ス b0011 = ノ ーマル メ モ リ 、 キ ャ ッ シ ュ 不可 b0110 = ラ イ ト スルー b0111 = ラ イ ト バ ッ ク 、 書 き 込み割 り 当てな し b1111 = ラ イ ト バ ッ ク 、 書 き 込み割 り 当て [0] 共有ビ ッ ト b0 = 非共有 b1 = 共有 デー タ 側書き込みバス、 AWUSERM0[8:0] AWUSERM0[8:0] の ビ ッ ト エ ン コ ー ド を、 表 8-5 に示 し ます。 表 8-5 AWUSERM0[8:0] のエ ン コ ー ド ビッ ト 名前 説明 [8] 早期 BRESP イ ネーブ ルビ ッ ト レベル 2 ス レーブが、 書き 込み要求に対す る 早期 BRESP 応答を送信で き る こ と を示 し ます。 「早期 BRESP」 (ページ 8-7) を参照 し て下 さ い。 [7] 0 の フル ラ イ ン書 き 込 みビ ッ ト こ のア ク セ ス が、 キ ャ ッ シ ュ ラ イ ン全体に 0 が書 き込まれ る操作であ る こ と を示 し ま す。 「0 のフル ラ イ ン書き込み」 (ページ 8-8) を参照 し て下 さ い。 [6] ク リ ーン退出 書 き 込みア ク セ ス が、 ク リ ーン キ ャ ッ シ ュ ラ イ ンの退出であ る こ と を示 し ます。 [5] レベル 1 退出 書 き 込みア ク セ ス が、 レベル 1 か ら のキ ャ ッ シ ュ ラ イ ン退出であ る こ と を示 し ます。 [4:1] 内部属性 b0000 = ス ト ロ ン グ リ オーダ b0001 = デバ イ ス b0011 = ノ ーマル メ モ リ 、 キ ャ ッ シ ュ 不可 b0110 = ラ イ ト スルー b0111 = ラ イ ト バ ッ ク 、 書き 込み割 り 当てな し b1111 = ラ イ ト バ ッ ク 、 書き 込み割 り 当て [0] 共有ビ ッ ト b0 = 非共有 b1 = 共有 8.1.4 排他レ ベル 2 キ ャ ッ シ ュ Cortex-A9 プ ロ セ ッ サは、 排他キ ャ ッ シ ュ モー ド をサポー ト す る レベル 2 キ ャ ッ シ ュ に接続で き ます。 こ のモー ド は、 Cortex-A9 プ ロ セ ッ サ と レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ の両方でア ク テ ィ ブにす る 必要があ り ます。 こ のモー ド では、 Cortex-A9 プ ロ セ ッ サのデー タ キ ャ ッ シ ュ と レベル 2 キ ャ ッ シ ュ は 排他です。 ど の時点で も 、 特定のア ド レ ス は レベル 1 デー タ キ ャ ッ シ ュ と レベル 2 キ ャ ッ シ ュ のいずれかにキ ャ ッ シ ュ さ れ、 両方に同時にキ ャ ッ シ ュ さ れ る こ と はあ ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-5 レベル 2 メ モ リ イ ン タ フ ェ ース り ません。 こ れは、 Cortex-A9 プ ロ セ ッ サに接続 さ れた レベル 2 キ ャ ッ シ ュ の使用可 能空間 と 効率性の向上に大 き な影響を与え ます。 排他キ ャ ッ シ ュ 構成が選択 さ れて い る 場合、 次の規則が適用 さ れ ます。 ARM DDI 0388FJ ID013111 • デー タ キ ャ ッ シ ュ ラ イ ン置換方式が、 ヴ ィ ク テ ィ ム ラ イ ン が ク リ ーン な場合で も 常に レベル 2 メ モ リ に退出す る よ う に変更 さ れ ます。 • レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ 内の ラ イ ンがダーテ ィ な場合は、 こ のア ド レ ス に対す る プ ロ セ ッ サか ら の読み出 し 要求に よ っ て、 外部 メ モ リ への ラ イ ト バ ッ ク と プ ロ セ ッ サへの ラ イ ン フ ィ ルが発生 し ます。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-6 レベル 2 メ モ リ イ ン タ フ ェ ース 8.2 レ ベル 2 メ モ リ イ ン タ フ ェ ースへのア ク セスの最適化 こ こ では、 レベル 2 メ モ リ イ ン タ フ ェースへのア ク セ ス の最適化について説明 し ま す。 こ れ ら のア ク セ ス の最適化に よ り 、 Cortex-A9 AXI マ ス タ ポー ト に AXI 準拠でな い要求が生成 さ れ る こ と があ り ます。 こ れ ら の AXI 準拠でない要求は、 Cortex-A9 AXI マ ス タ ポー ト に接続 さ れた ス レーブでサポー ト 可能な場合にのみ生成す る 必要 があ り ます。 レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ は、 こ の種の要求を サポー ト し ます。 次に示すサブセ ク シ ョ ン では、 こ れ ら の要求について説明 し ます。 「レベル 2 メ モ リ イ ン タ フ ェース に対す る プ リ フ ェ ッ チ ヒ ン ト 」 • • 「早期 BRESP」 • 「0 の フル ラ イ ン書 き込み」 (ページ 8-8) 「投機的 コ ヒ ーレ ン ト 要求」 (ページ 8-8) • 8.2.1 レ ベル 2 メ モ リ イ ン タ フ ェ ースに対する プ リ フ ェ ッ チ ヒ ン ト Cortex-A9 プ ロ セ ッ サは、 レベル 2 メ モ リ コ ン ト ロ ー ラ に対する プ リ フ ェ ッ チ ヒ ン ト 要求を生成で き ます。 こ のプ リ フ ェ ッ チ ヒ ン ト 要求は、 デー タ が返 さ れ る こ と を想定 し ていない、 Cortex-A9 プ ロ セ ッ サで生成 さ れ る AXI 準拠でない読み出 し 要求です。 レベル 2 へのプ リ フ ェ ッ チ ヒ ン ト 要求は、 次の方法で生成で き ます。 • レベル 2 プ リ フ ェ ッ チ ヒ ン ト 機能 (ACTLR のビ ッ ト [1]) を稼働状態にす る 。 こ の機能が稼働状態であれば、 Cortex-A9 プ ロ セ ッ サは、 コ ヒ ーレ ン ト メ モ リ 上で通常の フ ェ ッ チパ タ ーン を検出 し た と き に、 自動的に レベル 2 プ リ フ ェ ッ チ ヒ ン ト 要求を発行で き ます。 こ の機能は、 Cortex-A9 MPCore プ ロ セ ッ サでの み ト リ ガ さ れ、 ユニプ ロ セ ッ サでは ト リ ガ さ れません。 • Cortex-A9 プ ロ セ ッ サで利用可能であれば、 PLE 動作をプ ロ グ ラ ムす る。 こ の場 合、 PLE エン ジ ンが、 プ ロ グ ラ ム さ れたア ド レ ス で一連の レベル 2 プ リ フ ェ ッ チ ヒ ン ト 要求を発行 し ます。 第 9 章 プ リ ロ ー ド エン ジ ン を参照 し て下 さ い。 レベル 2 プ リ フ ェ ッ チ ヒ ン ト 要求は、 ARUSER[5] ビ ッ ト がセ ッ ト さ れてい る こ と で 識別 さ れ ます。 注 L2C-310 の追加プ ロ グ ラ ミ ン グは必要あ り ません。 8.2.2 早期 BRESP AXI 仕様に よ れば、 応答チ ャ ネル上での BRESP 応答は、 マ ス タ か ら 最後のデー タ が 送信 さ れた時点でのみマ ス タ に返す必要があ り ます。 Cortex-A9 プ ロ セ ッ サは、 デー タ が送信 さ れたか ど う かにかかわ ら ず、 ア ド レ ス が ス レーブで受け付け ら れた直後 に返却 さ れた BRESP 応答を処理す る こ と も で き ます。 こ れに よ っ て、 Cortex-A9 プ ロ セ ッ サは、 ス レーブが早期 BRESP 機能を サポー ト 可能な場合に、 書 き 込み用の帯 域幅を広げ る こ と がで き ます。 Cortex-A9 プ ロ セ ッ サは、 AWUSER[8] ビ ッ ト を セ ッ ト す る こ と に よ っ て、 そのア ク セ ス に対す る 早期 BRESP 応答を受け付け可能であ る こ と を ス レーブに伝達 し ます。 こ の機能に よ り プ ロ セ ッ サの性能を最適化で き ます が、 早期 BRESP 機能に よ っ て AXI 準拠でない要求が生成 さ れます。 ス レーブは、 AWUSER[8] がセ ッ ト さ れた書 き 込み要求を受け取っ た と き 、 最後のデー タ の受信後 に BRESP 応答を返す (AXI 準拠) こ と も 、 事前に応答を返す (AXI 非準拠) こ と も で き ます。 L2C-310 キ ャ ッ シ ュ コ ン ト ロ ー ラ は、 こ の AXI 準拠でない機能を サポー ト し ます。 Cortex-A9 で、 こ の機能を可能にす る ためプ ロ グ ラ ミ ン グの必要はあ り ません。 こ の 機能はデフ ォ ル ト で可能です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-7 レベル 2 メ モ リ イ ン タ フ ェ ース 注 こ の最適化か ら メ リ ッ ト が得 ら れ る よ う に、 レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ を プ ロ グ ラ ムす る 必要があ り ます。 『AMBA レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ (L2C-310) テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 8.2.3 0 の フ ルラ イ ン書き込み こ の機能が可能な場合、 Cortex-A9 プ ロ セ ッ サは、 単一の要求で、 非 コ ヒ ーレ ン ト キ ャ ッ シ ュ ラ イ ン全体のビ ッ ト を 0 と し て、 L2C-310 キ ャ ッ シ ュ コ ン ト ロ ー ラ に書 き 込む こ と がで き ます。 こ の操作に よ っ て、 性能が向上 し 、 あ る 程度の電力が節約 さ れ ます。 こ の機能に よ り プ ロ セ ッ サの性能を最適化で き ますが、 こ の特殊な ア ク セ ス に対 し て ス レーブ を最適化 さ せ る 必要があ り ます。 こ の要求は、 関連す る AWUSERM0[7] ビ ッ ト を セ ッ ト す る こ と に よ っ て、 0 の フル ラ イ ン書 き 込み と し て マー ク さ れ ます。 ACTLR の ビ ッ ト [3] を セ ッ ト す る と 、 こ の機能が可能にな り ます。 「補助制御レ ジ ス タ 」 (ページ 4-18) を参照 し て下 さ い。 こ の機能を サポー ト す る には、 Cortex-A9 プ ロ セ ッ サで こ の機能を可能にす る 前に、 L2C-310 キ ャ ッ シ ュ コ ン ト ロ ー ラ を プ ロ グ ラ ムす る 必要があ り ます。 『AMBA レベル 2 キ ャ ッ シ ュ コ ン ト ロ ー ラ (L2C-310) テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 8.2.4 投機的 コ ヒ ーレ ン ト 要求 こ の最適化は、 Cortex-A9 MPCore プ ロ セ ッ サでのみ使用で き ます。 『Cortex-A9 MPCore テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-8 レベル 2 メ モ リ イ ン タ フ ェ ース 8.3 STRT 命令 STRT 命令を使用 し てい る 場合は、 キ ャ ッ シ ュ 不可書 き 込みア ク セ ス に特に注意す る 必要があ り ます。 外部バ ス に正 し い情報を渡すため、 次のいずれかの条件が成 り 立っ てい る こ と を確認 し て下 さ い。 ア ク セ ス が ス ト ロ ン グ リ オーダ メ モ リ に対 し て行われ る 。 • こ れに よ っ て、 STRT 命令が ス ト アバ ッ フ ァ 内で結合 し ない こ と が保証 さ れます。 ア ク セ ス がデバ イ ス メ モ リ に対 し て行われ る 。 • こ れに よ っ て、 STRT 命令が ス ト アバ ッ フ ァ 内で結合 し ない こ と が保証 さ れます。 DSB 命令が STRT の前後で発行 さ れ る 。 • こ れに よ っ て、 STRT が、 同 じ 64 ビ ッ ト ア ド レ ス の既存の ス ロ ッ ト や、 同 じ 64 ビ ッ ト ア ド レ ス の別の書 き 込み と 結合す る こ と がな く な り ます。 Cortex-A9 のモー ド と 、 対応す る AxPROT の値を、 表 8-6 に示 し ます。 表 8-6 Cortex-A9 のモー ド と AxPROT の値 プ ロ セ ッ サモー ド ア ク セス タ イ プ AxPROT の値 ユーザ キ ャ ッ シ ュ 可能読み出 し ア ク セ ス ユーザ 特権 ユーザ 特権 キ ャ ッ シ ュ 不可読み出 し ア ク セ ス 特権 ARM DDI 0388FJ ID013111 ユーザ 特権 - キ ャ ッ シ ュ 可能書き 込みア ク セ ス 常に特権 と し てマー ク さ れ る ユーザ キ ャ ッ シ ュ 不可書き 込みア ク セ ス ユーザ 特権 キ ャ ッ シ ュ 不可書き 込みア ク セ ス 特権 (STRT を使用 し てい る 場合は 除 き ます) Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 8-9 第9章 プ リ ロー ド エ ン ジ ン 設計に プ リ ロ ー ド エン ジ ン (PLE) を含め る こ と がで き ます。 PLE は、 選択 さ れた メ モ リ 領域を レベル 2 に ロ ー ド し ます。 本章では、 PLE について説明 し ます。 本章は次の項目 か ら 構成 さ れてい ます。 • 「プ リ ロ ー ド エン ジ ンについて」 (ページ 9-2) 「PLE 制御レ ジ ス タ の説明」 (ページ 9-3) • 「PLE 操作」 (ページ 9-4) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 9-1 プ リ ロー ド エ ン ジ ン 9.1 プ リ ロー ド エ ン ジ ンについて 実装 さ れてい る 場合、 PLE は選択 さ れた メ モ リ 領域を レベル 2 に ロ ー ド し ます。 PLE を プ ロ グ ラ ムす る には、 MCRR プ リ ロ ー ド チ ャ ネル操作を使用 し て下 さ い。 専用の イ ベン ト に よ り 、 メ モ リ 領域の動作を監視 し ます。 L2C-310 の追加 イ ベン ト に よ り 、 PLE の動作 も 監視で き ます。 プ リ ロ ー ド 操作パ ラ メ ー タ は、 次の要素を含む PLE FIFO に入力 さ れます。 • プ ロ グ ラ ム対象のパ ラ メ ー タ — ベース ア ド レ ス — ス ト ラ イ ド長 — ブロ ッ ク数 • 有効ビ ッ ト • NS 状態ビ ッ ト • 変換テーブルベース (TTB) ア ド レ ス ア ド レ ス空間識別子 (ASID) の値 • プ リ ロ ー ド ブ ロ ッ ク は複数のページエ ン ト リ に ま たが る こ と がで き ます。 コ ン テ キ ス ト ス イ ッ チが発生 し て も 、 プ ロ グ ラ ム さ れたエ ン ト リ は有効な ま ま残 る 可能性が あ り ます。 プ リ ロ ー ド エ ン ジ ンは、 独自の TTB パ ラ メ ー タ と ASID パ ラ メ ー タ を使用す る こ と を除いて、 標準の PLD 要求 と 同様にキ ャ ッ シ ュ ラ イ ン のプ リ ロ ー ド 要求を処理 し ま す。 変換アボー ト が発生 し た場合は、 プ リ ロ ー ド 要求が無視 さ れ、 プ リ ロ ー ド エ ン ジ ンか ら 次の要求が発行 さ れます。 すべての MMU 設定が保存 さ れ る わけではあ り ません。 ド メ イ ン、 TEX 再マ ッ プ、 1 次再マ ッ プ、 通常再マ ッ プ、 ア ク セ ス許可の レ ジ ス タ は保存 さ れません。 そのため、 こ れ ら の レ ジ ス タ のいずれかに書 き 込む と 、 FIFO 全体 と ア ク テ ィ ブチ ャ ネルが フ ラ ッ シ ュ さ れ ます。 さ ら に、 変換ル ッ ク アサ イ ド バ ッ フ ァ (TLB) 保守操作では、 FIFO エ ン ト リ に も 保守 操作を適用す る 必要があ り ます。 こ の操作は次の よ う に実行 さ れ ます。 MVA と ASID に よ る 無効化時 一致す る ASID を持つすべてのエ ン ト リ を無効化 し ます。 ASID に よ る 無効化時 一致す る ASID を持つすべてのエ ン ト リ を無効化 し ます。 MVA と すべての ASID に よ る 無効化時 FIFO 全体を フ ラ ッ シ ュ し ます。 TLB 全体の無効化時 FIFO 全体を フ ラ ッ シ ュ し ます。 こ の規則は、 PLE ア ク テ ィ ブチ ャ ネルに も 適用可能です。 プ リ ロ ー ド エ ン ジ ンは、 次の MCRR 命令を定義 し て、 プ リ ロ ー ド ブ ロ ッ ク に使用 し ます。 MCRR p15, 0, <Rt>,<Rt2> c11;Program new PLE channel FIFO のエ ン ト リ 数は、 RTL 構成設計の選択 と し て設定で き ます。 使用可能なサ イ ズ は次の と お り です。 • 16 エ ン ト リ • 8 エン ト リ • 4 エン ト リ ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 9-2 プ リ ロー ド エ ン ジ ン 9.2 PLE 制御レ ジ ス タ の説明 PLE 制御レ ジ ス タ は、 CRn が c11 の と き にア ク セ ス さ れ る CP15 レ ジ ス タ です。 「CP15 c11 レ ジ ス タ の概要」 (ページ 4-30) を参照 し て下 さ い。 次に示すセ ク シ ョ ン では、 PLE 制御レ ジ ス タ について説明 し ます。 「PLE ID レ ジ ス タ 」 (ページ 4-30) • 「PLE 動作ス テー タ ス レ ジ ス タ 」 (ページ 4-31) • 「PLE FIFO ス テー タ ス レ ジ ス タ 」 (ページ 4-32) • 「プ リ ロ ー ド エン ジ ン ユーザア ク セ ス許可レ ジ ス タ 」 (ページ 4-32) • • 「プ リ ロ ー ド エン ジ ン パ ラ メ ー タ 制御レ ジ ス タ 」 (ページ 4-33) すべての CP15 c11 シ ス テ ム制御レ ジ ス タ について、 非セキ ュ ア ア ク セ ス は NSAC.PLE に よ っ て制御 さ れます。 こ れ ら の制御レ ジ ス タ で使用 さ れ る 操作を、 「PLE 操作」 (ページ 9-4) に示 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 9-3 プ リ ロー ド エ ン ジ ン 9.3 PLE 操作 次に示すセ ク シ ョ ン では、 PLE 操作について説明 し ます。 「プ リ ロ ー ド エン ジ ンの FIFO フ ラ ッ シ ュ 操作」 • • 「プ リ ロ ー ド エン ジ ンのチ ャ ネル一時停止操作」 • 「プ リ ロ ー ド エン ジ ンのチ ャ ネル再開操作」 • 「プ リ ロ ー ド エン ジ ンのチ ャ ネル停止操作」 (ページ 9-5) 「PLE の新規チ ャ ネルプ ロ グ ラ ム操作」 (ページ 9-5) • すべてのプ リ ロ ー ド エ ン ジ ン操作には、 次の規則が適用 さ れ ます。 9.3.1 • 非セキ ュ ア実行は、 NSACR.PLE に よ っ て制御 さ れます。 • ユーザ実行は、 PLEUAR.EN に よ っ て制御 さ れます。 • こ の操作は、 プ リ ロ ー ド エ ン ジ ン が存在す る 構成でのみ使用可能です。 それ以 外の構成では、 未定義命令例外が取得 さ れ ます。 プ リ ロー ド エ ン ジ ンの FIFO フ ラ ッ シ ュ操作 PLEFF 操作の特徴は次の と お り です。 目的 現在実行中の PLE チ ャ ネルを含めて、 事前にプ ロ グ ラ ム さ れたす べての PLE チ ャ ネルを フ ラ ッ シ ュ し ます。 PLE FIFO フ ラ ッ シ ュ 操作を実行す る には、 次の命令を使用 し ます。 MCR p15, 0, <Rt>, c11, c2, 1 こ の操作では、 <Rt> は無視 さ れます。 9.3.2 プ リ ロー ド エ ン ジ ンのチ ャ ネル一時停止操作 PLEPC 操作の特徴は次の と お り です。 目的 PLE の動作を一時停止 し ます。 PLEPC 操作は、 ア ク テ ィ ブな PLE チ ャ ネルが存在 し ない場合で も 実行で き ます。 こ の場合、 後で新 し い PLE チ ャ ネルがプ ロ グ ラ ム さ れて も 、 PLE のチ ャ ネル再開操作 が実行 さ れ る ま で、 PLE の動作は再開 さ れ ません。 PLE PC 操作を実行す る には、 次の命令を使用 し ます。 MCR p15, 0, <Rt>, c11, c3, 0 こ の操作では、 <Rt> は無視 さ れます。 9.3.3 プ リ ロー ド エ ン ジ ンのチ ャ ネル再開操作 PLERC 操作の特徴は次の と お り です。 目的 プ リ ロ ー ド エ ン ジ ンの動作を再開 さ せます。 PLE が一時停止 し ていない と き に PLERC 操作を実行 し た場合、 チ ャ ネル再開操作は 無視 さ れ ます。 PLERC 操作を実行す る には、 次の命令を使用 し ます。 MCR p15, 0, <Rt>, c11, c3, 1 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 9-4 プ リ ロー ド エ ン ジ ン 9.3.4 プ リ ロー ド エ ン ジ ンのチ ャ ネル停止操作 PLEKC 操作の特徴は次の と お り です。 目的 現在ア ク テ ィ ブな PLE チ ャ ネルを停止 し ます。 こ の操作は、 PLE FIFO 内の PLE 要求に対 し ては何 も 動作を行い ません。 PLEKC 操作を実行す る には、 次の命令を使用 し ます。 MCR p15, 0, <Rt>, c11, c3, 2 9.3.5 PLE の新規チ ャ ネルプ ロ グ ラ ム操作 PLE の新規チ ャ ネルプ ロ グ ラ ム操作の特徴は次の と お り です。 目的 レベル 2 メ モ リ にプ リ ロ ー ド す る 、 新 し い メ モ リ 領域を プ ロ グ ラ ム し ます。 現在ア ク テ ィ ブな PLE チ ャ ネルを停止 し ます。 PLE の新規チ ャ ネルプ ロ グ ラ ム操作に関す る <Rt> と <Rt2> の ビ ッ ト 割 り 当て を、 図 9-1 に示 し ます。 Rt は、 ベース ア ド レ ス が格納 さ れた レ ジ ス タ です。 Rt2 は、 ブ ロ ッ ク の長 さ 、 ス ト ラ イ ド 、 お よ び数が格納 さ れた レ ジ ス タ です。 㪩㪘㪱㪆 㪮㪠 䊔䊷䉴䉝䊄䊧䉴㩿㪭㪘㪀 㪍㪊 㪊㪋 㪊㪊 㪊㪉 㪊㪈 㪈㪏 㪈㪎 㐳䈘 㪈㪇 㪐 䉴䊃䊤䉟䊄 㪉 㪈 㪇 䊑䊨䉾䉪ᢙ 㪩㪘㪱㪆 㪮㪠 図 9-1 新規チ ャ ネルプ ログ ラ ム操作のビ ッ ト 割 り 当て PLE の新規チ ャ ネルプ ロ グ ラ ム操作の ビ ッ ト 割 り 当て を、 表 9-1 に示 し ます。 表 9-1 PLE の新規チ ャ ネルプ ログ ラ ム操作のビ ッ ト 割 り 当て ビッ ト 名前 説明 [63:34] ベース ア ド レ ス (VA) こ れは、 プ リ ロ ー ド す る 最初の メ モ リ ブ ロ ッ ク の 32 ビ ッ ト ベース仮想ア ド レ ス です。 こ のア ド レ ス は ワー ド 境界にア ラ イ ン さ れてい ます。 つま り 、 ビ ッ ト [33:32] は RAZ/WI です。 [33:32] - RAZ/WI [31:18] 長さ プ リ ロ ー ド す る ブ ロ ッ ク の長 さ を指定 し ます。 長 さ は、 ワー ド の倍数 と し てエン コ ー ド さ れます。 範囲は、 14'b0000000000 (単一ワー ド ブ ロ ッ ク ) ~ 14'b11111111111111 (16K ワー ド ブ ロ ッ ク ) です。 [17:10] スト ライド ブ ロ ッ ク 間のプ リ ロ ー ド ス ト ラ イ ド を指定 し ます。 プ リ ロ ー ド ス ト ラ イ ド は、 2 つのブ ロ ッ ク の開始ア ド レ ス の差です。 ス ト ラ イ ド は、 ワー ド の倍数 と し てエン コ ー ド さ れま す。 範囲は、 8'b00000000 (連続ブ ロ ッ ク ) ~ 8'b11111111 (256 ワー ド 単位のプ リ フ ェ ッ チブ ロ ッ ク ) です。 [9:2] ブロ ッ ク数 プ リ ロ ー ド す る ブ ロ ッ ク の数を指定 し ます。 値の範囲は、 単一ブ ロ ッ ク のプ リ ロ ー ド を示す 8'b00000000 か ら 、 256 ブ ロ ッ ク を示す 8'b11111111 ま でです。 [1:0] - RAZ/WI 新規チ ャ ネルのプ ロ グ ラ ム操作には、 次の MCRR 操作を使用 し ます。 MCRR p15, 0, <Rt>,<Rt2> c11; Program new PLE channel ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 9-5 プ リ ロー ド エ ン ジ ン 注 新 し く プ ロ グ ラ ム さ れた PLE エ ン ト リ は、 PLE FIFO に使用可能なエ ン ト リ があれ ば、 その FIFO に書 き 込まれ ます。 FIFO がオーバフ ロ ー し た場合は、 命令が警告な し に失敗 し て、 FIFO オーバフ ロ ー イ ベン ト 信号がアサー ト さ れます。 プ リ ロ ー ド イ ベン ト については、 表 11-7 (ページ 11-7) を参照 し て下 さ い。 「PLE FIFO ス テー タ ス レ ジ ス タ 」 (ページ 4-32) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 9-6 第 10 章 デバ ッ グ 本章では、 プ ロ セ ッ サのデバ ッ グユニ ッ ト について説明 し ます。 こ の機能は、 アプ リ ケーシ ョ ン ソ フ ト ウ ェ ア、 オペレーテ ィ ン グ シ ス テ ム、 ハー ド ウ ェ アの開発を支援 し ま す。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「デバ ッ グ イ ン タ フ ェース について」 (ページ 10-2) 「Cortex-A9 デバ ッ グ イ ン タ フ ェース について」 (ページ 10-4) • • 「デバ ッ グ レ ジ ス タ の説明」 (ページ 10-7) 「デバ ッ グ管理レ ジ ス タ 」 (ページ 10-13) • 「外部デバ ッ グ イ ン タ フ ェース」 (ページ 10-16) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-1 デバ ッ グ 10.1 デバ ッ グ イ ン タ フ ェ ースについて Cortex-A9 プ ロ セ ッ サは、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 に記載 さ れてい る ARMv7 デバ ッ グ アーキ テ ク チ ャ を実装 し てい ます。 ま た、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 に記載 さ れてい る デバ ッ グ イ ベン ト の組 も 実装 し てい ます。 さ ら に、 次の機能が実装 さ れてい ます。 • Cortex-A9 プ ロ セ ッ サ固有の イ ベン ト 。 詳細については、 「パフ ォーマ ン ス監視 イ ベン ト 」 (ページ 11-7) を参照 し て下 さ い。 • シ ス テ ム コ ヒ ーレ ン シ イ ベン ト 「パフ ォーマ ン ス監視」 (ページ 2-3) を参照 し て下 さ い。 第 11 章 パフ ォーマ ン ス監 視ユニ ッ ト も 参照 し て下 さ い。 10.1.1 デバ ッ グモー ド デバ ッ グモー ド は、 認証信号に よ っ て制御 さ れます。 認証信号は、 プ ロ セ ッ サモー ド の特定のサブセ ッ ト と セキ ュ リ テ ィ 状態でのみ動作をデバ ッ グ ま たは ト レース で き る よ う に、 プ ロ セ ッ サを構成 し ます。 「認証信号」 (ページ 10-16) を参照 し て下 さ い。 注 Cortex-A9 プ ロ セ ッ サは、 SPIDEN ピ ンに よ っ て侵襲性デバ ッ グが可能にな っ てい る 場合のみ、 セキ ュ ア ユーザモー ド でのホール ト モー ド デバ ッ グ をサポー ト し ます。 SPIDEN が LOW の場合は、 SDR.SUIDEN ビ ッ ト を セ ッ ト す る こ と に よ っ て、 セキ ュ ア ユーザモー ド でのモニ タ モー ド デバ ッ グのみを使用で き ます。 つま り 、 SPIDEN が LOW の場合、 SDR.SUIDEN ビ ッ ト が 1 にセ ッ ト さ れていて も 、 コ アはホールデ バ ッ グ モー ド に移行す る こ と はで き ません。 外部の SPIDEN ピ ン を HIGH に設定す る こ と に よ っ て、 こ の制限を取 り 除 く こ と がで き ます。 10.1.2 ブ レ ー ク ポ イ ン ト と ウ ォ ッ チポ イ ン ト 次の よ う な種類があ り ます。 • 6 つのブ レー ク ポ イ ン ト 。 こ れ ら の う ち BRP4 と BRP5 には、 コ ン テ キ ス ト ID 比較機能が含ま れてい ます。 「ブ レー ク ポ イ ン ト 値レ ジ ス タ 」 (ページ 10-7) と 「ブ レー ク ポ イ ン ト 制御レ ジ ス タ 」 (ページ 10-8) を参照 し て下 さ い。 • 4 つの ウ ォ ッ チポ イ ン ト 。 ウ ォ ッ チポ イ ン ト イ ベン ト は常に同期で、 同期デー タ アボー ト と 同 じ 動作を行 い ます。 デバ ッ グ開始方法 (DBGDSCR[5:2]) の値が b0010 にな る こ と はあ り ま せん。 ウ ォ ッ チポ イ ン ト が設定 さ れた ア ク セ ス で同期アボー ト が発生 し た場合、 同期 アボー ト の方が ウ ォ ッ チポ イ ン ト よ り も 優先 さ れます。 アボー ト が非同期で、 ア ク セ ス に関連付け る こ と がで き ない場合、 取得 さ れ る 例外は予測不能です。 キ ャ ッ シ ュ 保守操作では、 ウ ォ ッ チポ イ ン ト イ ベン ト は生成 さ れ ません。 「ウ ォ ッ チポ イ ン ト 値レ ジ ス タ 」 (ページ 10-10) と 「ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ 」 (ページ 10-11) を参照 し て下 さ い。 10.1.3 非同期アボー ト Cortex-A9 プ ロ セ ッ サは、 可能性のあ る すべての未解決な非同期デー タ ア ボー ト が、 デバ ッ グ状態に入 る 前に認識 さ れ る こ と を保証 し てい ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-2 デバ ッ グ 10.1.4 プ ロ セ ッ サのイ ン タ フ ェ ース Cortex-A9 プ ロ セ ッ サには、 デバ ッ グ と パフ ォ ーマ ン ス モニ タ に関す る 次の イ ン タ フ ェ ース が存在 し ます。 デバ ッ グ レ ジ ス タ こ の イ ン タ フ ェース は、 ベース ラ イ ン CP14 イ ン タ フ ェ ース、 拡張 CP14 イ ン タ フ ェ ース、 お よ び メ モ リ マ ッ プ さ れた イ ン タ フ ェース です。 「CTI 信号」 (ページ A-22) と 「APB イ ン タ フ ェース信号」 (ページ A-22) を参照 し て下 さ い。 パフ ォーマ ン ス モニ タ こ の イ ン タ フ ェースは、 CP15 ベース の イ ン タ フ ェース と 、 メ モ リ マ ッ プ さ れた イ ン タ フ ェース です。 「パフ ォーマ ン ス監視」 (ページ 2-3) を参 照 し て下 さ い。 第 11 章 パフ ォーマ ン ス監視ユニ ッ ト も 参照 し て下 さ い。 10.1.5 リ セ ッ ト のデバ ッ グ レ ジ ス タ への影響 nDBGRESET nDBGRESET は、 デバ ッ グ ロ ジ ッ ク リ セ ッ ト 信号です。 こ の信号は、 パ ワ ーオ ン リ セ ッ ト シーケ ン ス中にアサー ト す る 必要があ り ます。 他の リ セ ッ ト 信号であ る nCPURESET お よ び nNEONRESET は、 MPE が存在すれば、 デバ ッ グ ロ ジ ッ ク に影響を与え ません。 デバ ッ グ リ セ ッ ト 時には、 次の規則が適用 さ れ ます。 • デバ ッ グ状態は変更 さ れません。 つま り 、 DBGSCR.HALTED は変更 さ れません。 • プ ロ セ ッ サは、 保留 さ れてい る ホール ト デバ ッ グ イ ベン ト の DBGDRCR.HaltReq を削除 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-3 デバ ッ グ 10.2 Cortex-A9 デバ ッ グ イ ン タ フ ェ ースについて デバ ッ グ イ ン タ フ ェ ース は、 次の要素で構成 さ れてい ます。 • ベース ラ イ ン CP14 イ ン タ フ ェ ース • 拡張 CP14 イ ン タ フ ェ ース • デバ ッ グ ア ク セ ス ポー ト (DAP) 経由で外部のデバ ッ ガに接続 さ れ る 、 外部デ バ ッ グ イ ン タ フ ェース Cortex-A9 デバ ッ グ イ ン タ フ ェース を、 図 10-1 に示 し ます。 䉪䊨䉴䊃䊥䉧 䊙䊃䊥䉾䉪䉴㩿㪚㪫㪤㪀 䉪䊨䉴䊃䊥䉧 䉟䊮䉺䊐䉢䊷䉴 䉲䉴䊁䊛 䊋䉴 㪭㪪㫆㪺㔚ജ䊄䊜䉟䊮 㪭㪺㫆㫉㪼㔚ജ䊄䊜䉟䊮 㪚㫆㫉㫋㪼㫏㪄㪘㪐 䊒䊨䉶䉾䉰 䊔䊷䉴䊤䉟䊮 㪚㪧㪈㪋 䉟䊮䉺䊐䉢䊷䉴䈫 ᒛ㪚㪧㪈㪋 䉟䊮䉺䊐䉢䊷䉴 䊂䊋䉾䉫 䊧䉳䉴䉺 㪩㪦㪤䊙䉾䊒 䋨䉥䊒䉲䊢䊮䋩 䊂䊋䉾䉫 䉝䉪䉶䉴 䊘䊷䊃 㩿㪛㪘㪧㪀 䋨䉥䊒䉲䊢䊮䋩 䊂䊋䉾䉫 ⋧ធ⛯ 䊂䊋䉾䉫 㪘㪧㪙 図 10-1 デバ ッ グレ ジ ス タ イ ン タ フ ェ ース と CoreSight イ ン フ ラ ス ト ラ ク チ ャ 10.2.1 デバ ッ グ レ ジ ス タ へのア ク セス デバ ッ グ レ ジ ス タ には、 次の方法でア ク セ ス で き ます。 • cp14 イ ン タ フ ェース経由。 デバ ッ グ レ ジ ス タ が、 コ プ ロ セ ッ サ命令にマ ッ プ さ れます。 • 次の例外を伴 う 、 関連オ フ セ ッ ト を使用 し た APB 経由 — DBGRAR — DBGSAR — DBGSCR-int — DBGTR-int DBSCR と DBGTR の外部ビ ュ ーには、 メ モ リ マ ッ プ さ れた APB ア ク セ ス経由でア ク セ ス で き ます。 CP14 イ ン タ フ ェ ース レ ジ ス タ を、 表 10-1 (ページ 10-5) に示 し ます。 他の レ ジ ス タ については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-4 デバ ッ グ 表 10-1 CP14 イ ン タ フ ェ ース レ ジ ス タ レ ジ ス タ 番号 オフセ ッ ト CP14 命令 ア ク セス レジス タ名 説明 0 0x000 0, c0, c0, 0 RO DBGDIDRa b - - 0, c1, c0, 0 RO DBGDRARa - - - 0, c2, c0, 0 RO DBGDSARa - - - 0, c0, c1, 0 RO DBGDSCRintab - 5 - 0, c0, c5, 0 R DBGDTRRXinta - W DBGDTRTXinta - 6 0x018 0, c0, c6, 0 RW DBGWFAR DBGWFAR の使用は、 ウ ォ ッ チポ イ ン ト が同期 し てい る ため、 ARMv7 アーキ テ ク チ ャ では非推奨です。 7 0x01C 0, c0, c7, 0 RW DBGVCR - 8 - - - 予約 - 9 0x024 0, c0, c9, 0 RAZ/WI DBGECR 実装 さ れていない 10 0x028 0, c0, c10, 0 RAZ/WI DBGDSCCR 「デバ ッ グ状態キ ャ ッ シ ュ 制御レ ジ ス タ (DBGDSCCR)」 (ページ 10-7) 11 0x02C 0, c0, c11, 0 RAZ/WI DBGDSMCR 実装 さ れていない 12 ~ 31 - - - 予約 - 32 0x080 0, c0, c0, 2 RW DBGDTRRXext - 33 0x084 0, c0, c1, 2 WO DBGITR - 33 0x084 0, c0, c1, 2 RO DBGPCSR - 34 0x088 0, c0, c2, 2 RW DBGDSCRext - 35 0x08C 0, c0, c3, 2 RW DBGDTRTXext - 36 0x090 0, c0, c4, 2 WO DBGDRCR - 37 ~ 63 - - - 予約 - 64 ~ 68 0x100 ~ 0x114 0, c0, c0 ~ c5, 4 RW DBGBVRn 69 ~ 79 - - - 予約 80 ~ 85 0x140 ~ 0x154 0, c0, c0 ~ c5, 5 RW DBGBCRn - - - 予約 96 ~ 99 0x180 ~ 0x18BC 0, c0, c0 ~ c3, 6 RW DBGWVRn - - - 予約 112 ~ 115 0x1C0 ~ 0x1DC 0, c0, c0 ~ c3, 7 RW DBGWCRn - - ARM DDI 0388FJ ID013111 「ブ レー ク ポ イ ン ト 制御レ ジ ス タ 」 - 「ウ ォ ッ チポ イ ン ト 値レ ジ ス タ 」 (ページ 10-10) 100 ~ 111 - (ページ 10-8) 86 ~ 95 116 ~ 191 「ブ レー ク ポ イ ン ト 値レ ジ ス タ 」 (ページ 10-7) - 「ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ 」 (ページ 10-11) 予約 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential - 10-5 デバ ッ グ 表 10-1 CP14 イ ン タ フ ェ ース レ ジ ス タ (続き) レ ジ ス タ 番号 オフセ ッ ト CP14 命令 ア ク セス レジス タ名 説明 192 0x300 0, c1, c0, 4 RAZ/WI DBGOSLAR 実装 さ れていない 193 0x304 0, c1, c1, 4 RAZ/WI DBGOSLSR 実装 さ れていない 194 0x308 0, c1, c2, 4 RAZ/WI DBGOSSRR 実装 さ れていない 195 - - - 予約 - 196 0x310 0, c1, c4, 4 RO DBGPRCR - 197 0x314 0, c1, c5, 4 RO DBGPRSR - 198 ~ 511 - - - 予約 - 512 ~ 575 0x800 ~ 0x8FC - - - PMU レ ジ ス タ c 576 ~ 831 - - - 予約 - 832 ~ 895 0xD00 ~ 0xDFC 0, c6, c0, 15, 4~7 RW 予測不能 - 896 ~ 927 - - 予約 - 928 ~ 959 0xE80 ~ 0xEFC0 0, c7, c0, 15, 2~3 RAZ/WI - - 960 0xF00 0, c7, c0, 4 RAZ/WI DBGITCTRL 統合モー ド 制御レ ジ ス タ 961 ~ 999 0xF04 ~ 0xF9C - - - - 1000 0xFA0 0, c7, c8, 6 RW DBGCLAIMSET ク レーム タ グ セ ッ ト レ ジ ス タ 1001 0xFA4 0, c7, c9, 6 RW DBGCLAIMCLR ク レーム タ グ ク リ ア レ ジ ス タ 1002 ~ 1003 - - - 予約 - 1004 0xFB0 0, c7, c12, 6 WO DBGLAR ロ ッ ク ア クセス レジス タ 1005 0xFB4 0, c7, c13, 6 RO DBGLSR ロ ッ ク ス テー タ ス レ ジ ス タ 1006 0xFB8 0, c7, c14, 6 RO DBGAUTHSTATUS 認証ス テー タ ス レ ジ ス タ 1007 ~ 1009 - - - 予約 - 1010 0xFC8 0, c7, c2, 7 RAZ DBGDEVID - 1011 0xFCC 0, c7, c3, 7 RO DBGDEVTYPE デバ イ ス タ イ プ レ ジ ス タ 1012 ~ 1016 0xFD0 ~ 0xFEC 0, c7, c4 ~ 8, 7 RO PERIPHERALID 「CoreSight 識別レ ジ ス タ 」 (ページ 10-14) 1017 ~ 1019 - - - 予約 - 1020 ~ 1023 0xFF0 ~ 0xFFC 0, c7, c12 ~ 15, 7 RO COMPONENTID 「CoreSight 識別レ ジ ス タ 」 (ページ 10-14) a. ベース ラ イ ン CP14 イ ン タ フ ェース。 こ の レ ジ ス タ には、 メ モ リ マ ッ プ さ れた イ ン タ フ ェース と CP14 イ ン タ フ ェ ース を経由 し た外部ビ ュ ー も 存在 し ます。 b. DBGSCR のビ ッ ト [12] が ク リ ア さ れてい る 場合、 ユーザモー ド でア ク セ ス で き ます。 特権モー ド で も ア ク セ ス で き ます。 c. PMU レ ジ ス タ は、 CP15 イ ン タ フ ェース の一部です。 拡張 CP14 イ ン タ フ ェース か ら 読み出す と 、 0 が返 さ れます。 「CP15 c9 レ ジ ス タ の概要」 (ページ 4-28) を参照 し て下 さ い。 第 11 章 パフ ォーマン ス監視ユニ ッ ト も 参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-6 デバ ッ グ 10.3 デバ ッ グ レ ジ ス タ の説明 こ こ では、 デバ ッ グ レ ジ ス タ について説明 し ます。 10.3.1 デバ ッ グ状態キ ャ ッ シ ュ制御レ ジ ス タ (DBGDSCCR) DSCCR は、 プ ロ セ ッ サがデバ ッ グ状態の と き に、 キ ャ ッ シ ュ の動作を制御 し ます。 Cortex-A9 プ ロ セ ッ サは、 デバ ッ グ状態キ ャ ッ シ ュ 制御レ ジ ス タ の機能を実装 し てい ません。 デバ ッ グ状態キ ャ ッ シ ュ 制御レ ジ ス タ は 0 と し て読み出 さ れます。 10.3.2 ブ レ ー ク ポ イ ン ト 値レ ジ ス タ ブ レー ク ポ イ ン ト 値レ ジ ス タ (BVR) は、 オ フ セ ッ ト が 0x100 ~ 0x114 の レ ジ ス タ 64 ~ 68 です。 各 BVR には、 次の よ う に、 ブ レー ク ポ イ ン ト 制御レ ジ ス タ (BCR) が関 連付け ら れてい ます。 • BVR0 と BCR0 • BVR1 と BCR1 こ のパ タ ーン が BVR5 と BCR5 ま で続 き ます。 ブ レー ク ポ イ ン ト レ ジ ス タ のペアであ る BVRn と BCRn は、 ブ レー ク ポ イ ン ト レ ジ ス タ ペア (BRPn) と 呼ばれます。 BVR と 、 対応す る BCR を、 表 10-2 に示 し ます。 表 10-2 BVR と 対応する BCR ブ レー ク ポ イ ン ト 値レ ジ ス タ ブ レー ク ポ イ ン ト 制御レ ジス タ レジス タ レ ジス タ 番号 オフセッ ト レ ジス タ レ ジ ス タ 番号 オフセッ ト BVR0 64 0x100 BCR0 80 0x140 BVR1 65 0x104 BCR1 81 0x144 BVR2 66 0x108 BCR2 82 0x148 BVR3 66 0x10C BCR3 83 0x14C BVR4 67 0x110 BCR4 84 0x150 BVR5 68 0x114 BCR5 85 0x154 こ の レ ジ ス タ に含まれてい る ブ レー ク ポ イ ン ト 値は、 命令仮想ア ド レ ス (IVA) ま たは コ ン テ キ ス ト ID に対応 し てい ます。 ブ レー ク ポ イ ン ト を設定可能な対象は次の と お り です。 • IVA • コ ン テ キ ス ト ID 値 • IVA と コ ン テ キ ス ト ID のペア IVA と コ ン テ キ ス ト ID のペアの場合は、 2 つの BRP を リ ン ク す る 必要があ り ます。 IVA と コ ン テ キ ス ト ID のペアが同時に一致 し た と き に、 デバ ッ グ イ ベン ト が生成 さ れ ます。 ブ レー ク ポ イ ン ト 値レ ジ ス タ の各ビ ッ ト 値の意味を、 表 10-3 に示 し ます。 表 10-3 ブ レー ク ポ イ ン ト 値レ ジ ス タ のビ ッ ト の機能 ARM DDI 0388FJ ID013111 ビッ ト 名前 説明 [31:0] - ブ レー ク ポ イ ン ト 値。 リ セ ッ ト 時 の値は 0 です。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-7 デバ ッ グ 注 10.3.3 • BRP4 と BRP5 のみが コ ン テ キ ス ト ID 比較を サポー ト し ます。 • BVR0[1:0]、 BVR1[1:0]、 BVR2[1:0]、 BVR3[1:0] は、 コ ン テ キ ス ト ID 比較をサ ポー ト し ていないため、 書 き 込みに対 し ては常に 0 ま たは保持で、 読み出 し に 対 し ては読み出 し 値 0 です。 • BVR と 照合す る コ ン テ キ ス ト ID 値は、 CP15 コ ン テ キ ス ト ID レ ジ ス タ の内容 で指定 さ れます。 ブ レ ー ク ポ イ ン ト 制御レ ジ ス タ BCR は読み出 し / 書 き 込みレ ジ ス タ で、 次の設定に必要な制御ビ ッ ト が含まれてい ます。 • ブ レー ク ポ イ ン ト • リ ン ク 付 き ブ レー ク ポ イ ン ト BCR の ビ ッ ト 配置を、 図 10-2 に示 し ます。 㪊㪈 㪉㪐 㪉㪏 㪉㪋 㪉㪊 㪉㪉 䊑䊧䊷䉪䊘䉟䊮䊃 䈱䉝䊄䊧䉴䊙䉴䉪 ੍⚂ 㪉㪇 㪈㪐 㪤 㪈㪍 㪈㪌 㪈㪋 㪈㪊 䊥䊮䉪ઃ䈐 㪙㪩㪧 ੍⚂ 㪐 㪏 ੍⚂ 㪌 㪋 㪊 㪉 㪈 㪇 䊋䉟䊃䉝䊄䊧䉴 ㆬᛯ 䉶䉨䊠䉝⁁ᘒ䉝䉪䉶䉴ᓮ 㪪㪧 㪙 ੍⚂ 図 10-2 ブ レー ク ポ イ ン ト 制御レ ジ ス タ のビ ッ ト 割 り 当て ブ レー ク ポ イ ン ト 制御レ ジ ス タ の各ビ ッ ト 値の意味を、 表 10-4 に示 し ます。 表 10-4 ブ レー ク ポ イ ン ト 制御レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 説明 [31:29] - 読み出 し 時は RAZ、 書き 込み時は SBZP [28:24] ブ レー ク ポ イ ン ト ア ド レ ス マス ク ブ レー ク ポ イ ン ト ア ド レ ス マ ス ク RAZ/WI b00000 = マ ス ク な し [23] - 読み出 し 時は RAZ、 書き 込み時は SBZP [22:20] M BVR の意味。 b000 = 命令仮想ア ド レ ス一致 b001 = リ ン ク 付き 命令仮想ア ド レ ス一致 b010 = リ ン ク な し コ ン テ キ ス ト ID b011 = リ ン ク 付き コ ン テ キ ス ト ID b100 = 命令仮想ア ド レ ス不一致 b101 = リ ン ク 付き 命令仮想ア ド レ ス不一致 b11x = 予約 注 BCR0[21]、 BCR1[21]、 BCR2[21]、 BCR3[21] は、 コ ン テ キ ス ト ID 比較機能がないため、 読み出 し に対 し て RAZ です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-8 デバ ッ グ 表 10-4 ブ レー ク ポ イ ン ト 制御レ ジス タ のビ ッ ト 割 り 当て (続き) ビッ ト 名前 説明 [19:16] リ ン ク 付 き BRP リ ン ク 付 き BRP 番号。 こ こ にエン コ ー ド さ れ る バ イ ナ リ 番号は、 こ の BRP と リ ン ク さ れ る 別の BRP を示 し てい ます。 注 • • BRP が自分自身 と リ ン ク さ れてい る 場合、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が 生成 さ れ る か ど う かは予測不能です。 BRP が別の BRP と リ ン ク さ れてお り 、 その別の BRP が リ ン ク 付 き コ ン テ キ ス ト ID 一致用に構成 さ れていない場合、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れ る か ど う かは予測不能です。 [15:14] セキ ュ ア状態ア ク セ ス制御 セキ ュ ア状態ア ク セ ス制御。 こ のフ ィ ール ド を使用 し て、 ブ レー ク ポ イ ン ト をプ ロ セ ッ サのセキ ュ リ テ ィ 状態に対 し て条件付き にで き ます。 b00 = ブ レー ク ポ イ ン ト は、 セキ ュ ア状態 と 非セキ ュ ア状態の両方で一致 し ます。 b01 = ブ レー ク ポ イ ン ト は、 非セキ ュ ア状態でのみ一致 し ます。 b10 = ブ レー ク ポ イ ン ト は、 セキ ュ ア状態でのみ一致 し ます。 b11 = 予約 [13:9] - 読み出 し 時は RAZ、 書き 込み時は SBZP [8:5] バ イ ト ア ド レ ス選 択 バ イ ト ア ド レ ス選択。 IVA と 一致す る よ う にプ ロ グ ラ ム さ れたブ レー ク ポ イ ン ト の場合 は、 ワ ー ド ア ラ イ ン し た ア ド レ ス を BVR に書き 込む必要があ り ます。 その後で こ の フ ィ ール ド を使用 し て、 特定のバ イ ト ア ド レ ス がア ク セ ス さ れた場合にのみ ヒ ッ ト す る よ う にブ レー ク ポ イ ン ト をプ ロ グ ラ ムで き ます。 IVA 一致用に BRP をプ ロ グ ラ ム し た場合、 こ の フ ィ ール ド は次の意味 と な り ます。 b0000 = ブ レー ク ポ イ ン ト は一切 ヒ ッ ト し ません。 b0011 = BVR & 0xFFFFFFFC + 0 のア ド レ ス か ら 始ま る 2 バ イ ト のいずれかがア ク セ ス さ れた 場合に、 ブ レー ク ポ イ ン ト が ヒ ッ ト し ます。 b1100 = BVR & 0xFFFFFFFC + 2 のア ド レ ス か ら 始ま る 2 バ イ ト のいずれかがア ク セ ス さ れた 場合に、 ブ レー ク ポ イ ン ト が ヒ ッ ト し ます。 b1111 = BVR & 0xFFFFFFFC + 0 のア ド レ ス か ら 始ま る 4 バ イ ト のいずれかがア ク セ ス さ れた 場合に、 ブ レー ク ポ イ ン ト が ヒ ッ ト し ます。 IVA 不一致用に BRP をプ ロ グ ラ ム し た場合は、 対応する IVA ブレー ク ポ イ ン ト が ヒ ッ ト し ないブレー ク ポ イ ン ト が ヒ ッ ト し ます。 つま り 、 IVA 不一致ブレー ク ポ イ ン ト でカバー さ れる ア ド レ スの範囲は、 対応する IVA ブレー ク ポ イ ン ト の否定イ メ ージ と な り ます。 コ ン テ キ ス ト ID 比較用に BRP をプ ロ グ ラ ムする 場合は、 こ の フ ィ ール ド を b1111 に セ ッ ト す る 必要があ り ます。 それ以外の場合、 ブ レー ク ポ イ ン ト お よ びウ ォ ッ チポ イ ン ト デバ ッ グ イ ベン ト が期待 し た よ う に生成 さ れない場合があ り ます。 注 BCR[8] と BCR[7] が等 し く ない、 ま たは BCR[6] と BCR[5] が等 し く ない値を BCR[8:5] へ 書 き 込んだ場合、 結果は予測不能です。 [4:3] - 読み出 し 時は RAZ、 書き 込み時は SBZP [2:1] SP スーパバ イ ザア ク セ ス制御。 ブ レー ク ポ イ ン ト を、 プ ロ セ ッ サのモー ド について条件付 き にで き ます。 b00 = ユーザ、 シ ス テ ム、 ま たは スーパバ イ ザ b01 = 特権 b10 = ユーザ b11 = 任意 [0] B ブ レー ク ポ イ ン ト イ ネーブル。 0 = ブ レー ク ポ イ ン ト は不可能です。 こ れは リ セ ッ ト 時の値です。 1 = ブ レー ク ポ イ ン ト が可能です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-9 デバ ッ グ BVR ビ ッ ト の意味を、 表 10-5 に示 し ます。 表 10-5 BVR のビ ッ ト [22:20] の意味 BVR[22:20] 意味 b000 対応す る BVR[31:2] が IVA バ ス と 比較 さ れ、 プ ロ セ ッ サの状態が こ の BCR と 比較 さ れます。 IVA と 状態 の組み合わせが一致 し た場合に、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れます。 b001 対応す る BVR[31:2] が IVA バ ス と 比較 さ れ、 プ ロ セ ッ サの状態が こ の BCR と 比較 さ れます。 こ の BRP は、 BCR[19:16] リ ン ク 付 き BRP フ ィ ール ド で示 さ れ る BRP と リ ン ク さ れてい ます。 IVA、 コ ン テ キ ス ト ID、 お よ び状態の組み合わせが一致 し た場合に、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れます。 b010 対応す る BVR[31:0] が CP15 コ ン テ キ ス ト ID レ ジ ス タ 、 c13 と 、 プ ロ セ ッ サの状態が こ の BCR と 、 それ ぞれ比較 さ れます。 こ の BRP は他の BRP と リ ン ク さ れてい ません。 コ ン テ キ ス ト ID と 状態の両方が一 致 し た場合、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れます。 こ の BRP では、 BCR[8:5] を b1111 に セ ッ ト す る 必要があ り ます。 それ以外の場合、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れ る か ど う かは予測不能です。 b011 対応す る BVR[31:0] が、 CP15 コ ン テ キ ス ト ID レ ジ ス タ 、 c13 と 比較 さ れます。 こ の BRP は、 別の BRP (BCR[21:20] = b01 タ イ プ) ま たは WRP (WCR[20] = b1) と リ ン ク さ れてい ます。 IVA ま たは DVA と コ ン テ キ ス ト ID の組み合わせの一致時に、 ブ レー ク ポ イ ン ト ま たは ウ ォ ッ チポ イ ン ト デバ ッ グ イ ベン ト を生 成 し ます。 こ の BRP では、 BCR[8:5] を b1111 に、 BCR[15:14] を b00 に、 BCR[2:1] を b11 にセ ッ ト す る 必 要があ り ます。 それ以外の場合、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れ る か ど う かは予測不能 です。 b100 対応す る BVR[31:2] と BCR[8:5] が IVA バ ス と 比較 さ れ、 プ ロ セ ッ サの状態が こ の BCR と 比較 さ れます。 IVA が一致せず、 状態が一致 し た場合に、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れます。 b101 対応する BVR[31:2] と BCR[8:5] が IVA バス と 比較 さ れ、 プ ロ セ ッ サの状態が こ の BCR と 比較 さ れます。 こ の BRP は、 BCR[19:16] リ ン ク 付き BRP フ ィ ール ド で示 さ れ る BRP と リ ン ク さ れてい ます。 IVA が一致 せず、 状態 と コ ン テキ ス ト ID が一致 し た場合に、 ブ レー ク ポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れます。 b11x 予約。 動作は予測不能です。 10.3.4 ウ ォ ッ チポ イ ン ト 値レ ジ ス タ ウ ォ ッ チポ イ ン ト 値レ ジ ス タ (WVR) は、 オ フ セ ッ ト が 0x180 ~ 0x18C の レ ジ ス タ 96 ~ 99 です。 各 WVR には、 ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ (WCR) が関連付け ら れて い ます。 次に例を示 し ます。 • WVR0 と WCR0 • WVR1 と WCR1 こ のパ タ ーン が WVR3 と WCR3 ま で続 き ます。 WVR と 、 対応す る WCR を、 表 10-6 に示 し ます。 表 10-6 WVR と 対応する WCR ウ ォ ッ チポ イ ン ト 値レ ジ ス タ ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ レジス タ レ ジス タ 番号 オフセ ッ ト レジス タ レ ジス タ 番号 オフセ ッ ト WVR0 96 0x180 WCR0 112 0x1C0 WVR1 97 0x184 WCR1 113 0x1C4 WVR2 98 0x188 WCR2 114 0x1C8 WVR3 99 0x18C WCR3 115 0x1DC ウ ォ ッ チポ イ ン ト レ ジ ス タ のペアであ る WVRn と WCRn は、 ウ ォ ッ チポ イ ン ト レ ジ ス タ ペア (WRPn) と 呼ばれ ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-10 デバ ッ グ WVR に格納 さ れた ウ ォ ッ チポ イ ン ト 値は、 常にデー タ 仮想ア ド レ ス (DVA) に対応 し 、 次のいずれかに設定で き ます。 • DVA • DVA と コ ン テ キ ス ト ID のペア DVA と コ ン テ キ ス ト ID のペアの場合は、 WRP と 、 コ ン テ キ ス ト ID 比較機能を持つ BRP と を リ ン ク す る 必要があ り ます。 デバ ッ グ イ ベン ト は、 DVA と コ ン テ キ ス ト ID のペアが同時に一致 し た場合に生成 さ れます。 ウ ォ ッ チポ イ ン ト 値レ ジ ス タ の各ビ ッ ト 値の と 機能 と の対応を、 表 10-7 に示 し ます。 表 10-7 ウ ォ ッ チポ イ ン ト 値レ ジ ス タ のビ ッ ト 機能 10.3.5 ビッ ト 名前 説明 [31:2] - ウ ォ ッ チポ イ ン ト のア ド レ ス [1:0] - 読み出 し 時は RAZ、 書 き 込み時は SBZP ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ WCR には、 次のポ イ ン ト を設定す る ために必要な制御ビ ッ ト が保持 さ れます。 • ウ ォ ッ チポ イ ン ト • リ ン ク 付 き ウ ォ ッ チポ イ ン ト ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ の ビ ッ ト 配置を、 図 10-3 に示 し ます。 㪊㪈 㪉㪐 㪉㪏 㪉㪋 㪉㪊 㪉㪈 㪉㪇 㪈㪐 䉡䉤䉾䉼䊘䉟䊮䊃䈱 䉝䊄䊧䉴䊙䉴䉪 ੍⚂ 㪜 㪐 㪏 㪈㪍 㪈㪌 㪈㪋 㪈㪊 㪈㪉 䊥䊮䉪ઃ䈐 㪙㪩㪧 ੍⚂ 㪌 㪋 㪈 㪇 㪊㪉 䊋䉟䊃 㪣㪆㪪 䉝䊄䊧䉴ㆬᛯ 㪪㪧 㪮 ੍⚂ 䉶䉨䊠䉝⁁ᘒ䉝䉪䉶䉴ᓮ 㪩㪘㪱䇮ᦠ䈐ㄟ䉂ᤨ㪪㪙㪱㪧 図 10-3 ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ のビ ッ ト 割 り 当て ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ の各ビ ッ ト 値 と 機能 と の対応を、 表 10-8 に示 し ます。 表 10-8 ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ のビ ッ ト 割 り 当て ビッ ト 名前 説明 [31:29] - 読み出 し 時は RAZ、 書 き 込み時は SBZP [28:24] ウ ォ ッ チポ イ ン ト ア ド レ スマス ク ウ ォ ッ チポ イ ン ト ア ド レ ス のマ ス ク [23:21] - 読み出 し 時は RAZ、 書 き 込み時は SBZP [20] E リ ン ク イ ネーブル ビ ッ ト 。 0 = リ ン ク は不可能です。 1 = リ ン ク が可能です。 こ のビ ッ ト がセ ッ ト さ れてい る 場合、 こ の ウ ォ ッ チポ イ ン ト は、 リ ン ク 付 き BRP フ ィ ー ル ド で選択 さ れた BRP を保持 し てい る コ ン テ キ ス ト ID に リ ン ク さ れてい ます。 [19:16] リ ン ク 付 き BRP リ ン ク 付 き BRP 番号。 こ こ にエン コ ー ド さ れ る バ イ ナ リ 数値は、 こ の WRP と リ ン ク さ れ る BRP を保持 し てい る コ ン テ キ ス ト ID を示 し てい ます。 WRP が別の BRP と リ ン ク さ れてお り 、 その別の BRP が リ ン ク 付 き コ ン テ キ ス ト ID 一致用に構成 さ れていない場合、 ウ ォ ッ チポ イ ン ト デバ ッ グ イ ベン ト が生成 さ れ る か ど う かは予測不能です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-11 デバ ッ グ 表 10-8 ウ ォ ッ チポ イ ン ト 制御レ ジス タ のビ ッ ト 割 り 当て (続き) ビッ ト 名前 説明 [15:14] セキ ュ ア状態ア ク セ ス制御 セキ ュ ア状態ア ク セ ス制御。 こ の フ ィ ール ド を使用 し て、 ウ ォ ッ チポ イ ン ト を プ ロ セ ッ サのセキ ュ リ テ ィ 状態について条件付 き にで き ます。 b00 = ウ ォ ッ チポ イ ン ト は、 セキ ュ ア状態 と 非セキ ュ ア状態の両方で一致 し ます。 b01 = ウ ォ ッ チポ イ ン ト は、 非セキ ュ ア状態でのみ一致 し ます。 b10 = ウ ォ ッ チポ イ ン ト は、 セキ ュ ア状態でのみ一致 し ます。 b11 = 予約 [13] - 読み出 し 時は RAZ、 書 き 込み時は SBZP [12:9] - RAZ/WI [8:5] バ イ ト ア ド レ ス選 択 バ イ ト ア ド レ ス選択。 WVR には ワー ド ア ラ イ ン し た ア ド レ ス がプ ロ グ ラ ム さ れます。 こ の フ ィ ール ド を使用 し て、 特定のバ イ ト ア ド レ ス がア ク セ ス さ れた場合のみ ヒ ッ ト する よ う に、 ウ ォ ッ チポ イ ン ト を プ ロ グ ラ ムで き ます。 [4:3] L/S ロ ー ド / ス ト ア ア ク セ ス。 ウ ォ ッ チポ イ ン ト を、 実行 さ れた ア ク セ ス の タ イ プについて条 件付 き にで き ます。 b00 = 予約 b01 = ロ ー ド 、 排他 ロ ー ド 、 ス ワ ッ プ b10 = ス ト ア、 排他ス ト ア、 ス ワ ッ プ b11 = 両方 SWP と SWPB は、 b01、 b10、 b11 の場合に ウ ォ ッ チポ イ ン ト を ト リ ガ し ます。 排他 ロ ー ド 命令は、 b01 ま たは b11 の場合に ウ ォ ッ チポ イ ン ト を ト リ ガ し ます。 排他ス ト ア命令 は、 プ ロ セ ッ サ内部の ロ ーカルモニ タ を通過 し た場合にのみ、 b10 ま たは b11 の場合に ウ ォ ッ チポ イ ン ト を ト リ ガ し ます。a [2:1] SP 特権ア ク セ ス制御。 ウ ォ ッ チポ イ ン ト を、 実行 さ れ る ア ク セ ス の特権について条件付き にで き ます。 b00 = 予約 b01 = 特権付 き 、 プ ロ セ ッ サが メ モ リ に特権ア ク セ ス を行っ た場合のみ一致 し ます。 b10 = ユーザ、 非特権ア ク セ ス でのみ一致 し ます。 b11 = 両方、 すべてのア ク セ ス に一致 し ます。 注 すべての場合について、 一致の条件 と な る のはア ク セ ス の特権で、 プ ロ セ ッ サのモー ド ではあ り ません。 [0] W ウ ォ ッ チポ イ ン ト イ ネーブル。 0 = ウ ォ ッ チポ イ ン ト が不可能です。 こ れは リ セ ッ ト 時の値です。 1 = ウ ォ ッ チポ イ ン ト が可能です。 a. 排他ス ト アでは、 MMU フ ォール ト が生成 さ れた り 、 ロ ーカルモニ タ の状態にかかわ ら ず、 プ ロ セ ッ サでデー タ ウ ォ ッ チポ イ ン ト 例外が取得 さ れた り す る 可能性があ り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-12 デバ ッ グ 10.4 デバ ッ グ管理レ ジ ス タ こ の管理レ ジ ス タ は、 すべての CoreSight コ ン ポーネ ン ト に実装 さ れてい る 、 標準化 さ れた レ ジ ス タ のセ ッ ト を定義 し ます。 こ こ では、 こ れ ら の レ ジ ス タ について説明 し ます。 こ れ ら の レ ジ ス タ にア ク セ スす る には、 cp14 イ ン タ フ ェース を使用す る 必 要があ り ます。 Cortex-A9 デバ ッ グユニ ッ ト の管理レ ジ ス タ の内容を、 表 10-9 に示 し ます。 表 10-9 デバ ッ グ管理レ ジ ス タ 10.4.1 オフセッ ト レ ジ ス タ 番号 ア ク セス ニーモニ ッ ク 説明 0xD00 ~ 0xDFC 832 ~ 895 RO - 0xE00 ~ 0xEF0 854 ~ 956 - - RAZ 0xF00 960 RW ITCTRL - 0xF04 ~ 0xF9C 961 ~ 999 RAZ - 管理レ ジ ス タ の拡張用 と し て予約 0xFA0 1000 RW CLAIMSET - 0xFA4 1001 RW CLAIMCLR - 0xFA8 ~ 0xFBC 1002 ~ 1003 - - RAZ 0xFB0 1004 WO LOCKACCESS - 0xFB4 RO LOCKSTATUS - 0xFB8 RO AUTHSTATUS - 「プ ロ セ ッ サ ID レ ジ ス タ 」 0xFBC ~ 0xFC4 1007 ~ 1009 - - RAZ 0xFC8 1010 RO DEVID デバ イ ス ID 0xFCC 1011 RO DEVTYPE - 0xFD0 ~ 0xFFC 1012 ~ 1023 R - 「CoreSight 識別レ ジ ス タ」 (ページ 10-14) プ ロ セ ッ サ ID レ ジ ス タ プ ロ セ ッ サ ID レ ジ ス タ は読み出 し 専用レ ジ ス タ で、 対応す る CP15 ID コ ー ド レ ジ ス タ お よ び機能 ID レ ジ ス タ と 同 じ 値を返 し ます。 それぞれのプ ロ セ ス ID レ ジ ス タ に関連付け ら れてい る オ フ セ ッ ト 値、 レ ジ ス タ 番 号、 ニーモニ ッ ク 、 お よ び各レ ジ ス タ の説明を、 表 10-10 に示 し ます。 表 10-10 プ ロ セ ッ サ ID レ ジ ス タ オフセッ ト (16 進数) レ ジ ス タ 番号 ニーモニ ッ ク 0xD00 832 CPUID 0xD04 833 0xD08 レジス タ値 説明 RO 0x80000000 ID コ ー ド レ ジ ス タ a CTYPR RO 0x80038003 キャ ッ シュ タ イプ レジス タ 834 - RAZ - - 0xD0C 835 TTYPR RO 0x00000400 TLB タ イ プ レ ジ ス タ 0xD10 ~ 0xD1C 836 ~ 839 - - - 予約 0xD20 840 ID_PFR0 RO 0x00001231 プ ロ セ ッ サ機能レ ジ ス タ 0 0xD24 841 ID_PFR1 RO 0x00000011 プ ロ セ ッ サ機能レ ジ ス タ 1 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-13 デバ ッ グ 表 10-10 プ ロ セ ッ サ ID レ ジ ス タ (続き) オフセッ ト (16 進数) レ ジ ス タ 番号 ニーモニ ッ ク 0xD28 842 ID_DFR0 0xD2C 843 0xD30 レジス タ値 説明 RO 0x00010444 デバ ッ グ機能レ ジ ス タ 0 ID_AFR0 RAZ - 補助機能レ ジ ス タ 0 844 ID_MMFR0 RO 0x00100103 メ モ リ モデル機能レ ジ ス タ 0 0xD34 845 ID_MMFR1 RO 0x20000000 メ モ リ モデル機能レ ジ ス タ 1 0xD38 846 ID_MMFR2 RO 0x01230000 メ モ リ モデル機能レ ジ ス タ 2 0xD3C 847 ID_MMFR3 RO 0x00002111 メ モ リ モデル機能レ ジ ス タ 3 0xD40 848 ID_ISAR0 RO 0x00101111 命令セ ッ ト 属性レ ジ ス タ 0 0xD44 849 ID_ISAR1 RO 0x13112111 命令セ ッ ト 属性レ ジ ス タ 1 0xD48 850 ID_ISAR2 RO 0x21232041 命令セ ッ ト 属性レ ジ ス タ 2 0xD4C 851 ID_ISAR3 RO 0x11112131 命令セ ッ ト 属性レ ジ ス タ 3 0xD50 852 ID_ISAR4 RO 0x00011142 命令セ ッ ト 属性レ ジ ス タ 4 0xD54 853 ID_ISAR5 RAZ - 命令セ ッ ト 属性レ ジ ス タ 5 a. ユニプ ロ セ ッ サバージ ョ ンの場合 = 0x80000000 マルチプ ロ セ ッ サバージ ョ ンの場合 = 0xC0000n0m n = CLUSTERID 入力 m = CPU 番号 (CPU0 の場合は 0x0、 CPU1 の場合は 0x1、 CPU2 の場合は 0x2、 CPU3 の場合は 0x3) 10.4.2 CoreSight 識別レ ジ ス タ こ の識別レ ジ ス タ は読み出 し 専用レ ジ ス タ で、 ペ リ フ ェ ラ ル識別レ ジ ス タ と コ ン ポーネ ン ト 識別レ ジ ス タ で構成 さ れます。 ペ リ フ ェ ラ ル識別レ ジ ス タ は、 すべての CoreSight コ ン ポーネ ン ト に必要な標準的な情報を提供 し ます。 各レ ジ ス タ のビ ッ ト [7:0] のみが使用 さ れます。 コ ン ポーネ ン ト 識別レ ジ ス タ は、 プ ロ セ ッ サ を CoreSight コ ン ポーネ ン ト と し て識別 し ます。 各レ ジ ス タ の ビ ッ ト [7:0] のみが使用 さ れ、 他の ビ ッ ト は RAZ です。 こ れ ら の レ ジ ス タ の値は固定です。 それぞれのペ リ フ ェ ラ ル識別レ ジ ス タ に関連付け ら れてい る オ フ セ ッ ト 値、 レ ジ ス タ 番号、 お よ び各レ ジ ス タ の説明を、 表 10-11 に示 し ます。 表 10-11 ペ リ フ ェ ラル識別レ ジ ス タ ARM DDI 0388FJ ID013111 オフセッ ト (16 進数) レ ジ ス タ 番号 値 説明 0xFD0 1012 0x04 ペ リ フ ェ ラ ル識別レ ジ ス タ 4 0xFD4 1013 - 予約 0xFD8 1014 - 予約 0xFDC 1015 - 予約 0xFE0 1016 0x09 ペ リ フ ェ ラ ル識別レ ジ ス タ 0 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-14 デバ ッ グ 表 10-11 ペ リ フ ェ ラル識別レ ジ ス タ (続き) オフセッ ト (16 進数) レ ジ ス タ 番号 値 説明 0xFE4 1017 0xBC ペ リ フ ェ ラ ル識別レ ジ ス タ 1 0xFE8 1018 0x0B ペ リ フ ェ ラ ル識別レ ジ ス タ 2 0xFEC 1019 0x00 ペ リ フ ェ ラ ル識別レ ジ ス タ 3 それぞれの コ ン ポーネ ン ト 識別レ ジ ス タ に関連付け ら れてい る オ フ セ ッ ト 値、 レ ジ ス タ 番号、 値を、 表 10-12 に示 し ます。 表 10-12 コ ンポーネ ン ト 識別レ ジ ス タ ARM DDI 0388FJ ID013111 オフセ ッ ト (16 進数) レ ジス タ 番号 値 説明 0xFF0 1020 0x0D コ ン ポーネ ン ト 識別レ ジ ス タ 0 0xFF4 1021 0x90 コ ン ポーネ ン ト 識別レ ジ ス タ 1 0xFF8 1022 0x05 コ ン ポーネ ン ト 識別レ ジ ス タ 2 0xFFC 1023 0xB1 コ ン ポーネ ン ト 識別レ ジ ス タ 3 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-15 デバ ッ グ 10.5 外部デバ ッ グ イ ン タ フ ェ ース シ ス テ ムは、 Cortex-A9 APB ス レーブポー ト を経由 し て、 メ モ リ マ ッ プ さ れたデバ ッ グ レ ジ ス タ にア ク セ ス で き ます。 こ の APB ス レーブ イ ン タ フ ェース は、 32 ビ ッ ト 幅のデー タ 、 ス ト ール、 ス レーブ生 成アボー ト 、 お よ び 2 × 4KB の メ モ リ を マ ッ プす る 11 のア ド レ ス ビ ッ ト ([12:2]) を サポー ト し ます。 ア ク セ ス さ れ る コ ン ポーネ ン ト は、 PADDRDBG[12:0] の ビ ッ ト [12] で選択 さ れます。 • Cortex-A9 プ ロ セ ッ サのデバ ッ グ領域にア ク セ スす る には、 PADDRDBG[12] = 0 を使用 し ます。 デバ ッ グ リ ソ ース の メ モ リ マ ッ ピ ン グについては、 表 10-1 (ページ 10-5) を参照 し て下 さ い。 • Cortex-A9 プ ロ セ ッ サのパフ ォ ーマ ン ス監視ユニ ッ ト (PMU) 領域にア ク セ スす る には、 PADDRDBG[12] = 1 を使用 し ます。 PMU リ ソ ース の メ モ リ マ ッ ピ ン グ については、 第 11 章 パフ ォーマ ン ス監視ユニ ッ ト を参照 し て下 さ い。 PADDRDBG31 信号は、 ア ク セ ス の ソ ース を プ ロ セ ッ サに指示 し ます。 外部デバ ッ グ信号の完全な一覧については、 付録 A 信号の説明 を参照 し て下 さ い。 外部デバ ッ グ イ ン タ フ ェース信号を、 図 10-4 に示 し ます。 DBGEN SPIDEN NIDEN SPNIDEN PADDRDBG[12:2] COMMTX COMMRX DBGCPUDONE DBGACK EDBGRQ DBGRESTARTED DBGRESTART 㪚㫆㫉㫋㪼㫏㪄㪘㪐 䊒䊨䉶䉾䉰 PSELDBG PADDRDBG31 PENABLEDBG PREADYDBG PSLVERRDBG PWRITEDBG PWDATADBG[31:0] PRDATADBG[31:0] nDBGRESET DBGROMADDR[31:12] DBGROMADDRV DBGSELFADDR[31:15] DBGSELFADDRV DBGSWENABLE DBGNOPWRDWN 図 10-4 外部デバ ッ グ イ ン タ フ ェ ース信号 10.5.1 認証信号 認証信号 と 、 関連す る デバ ッ グ ア ク セ ス許可 と の有効な組み合わせの一覧を、 表 10-13 に示 し ます。 表 10-13 認証信号の制限 SPIDEN DBGENa SPNIDEN NIDEN セキ ュ ア侵襲 性デバ ッ グが 許可 さ れる b 非セキ ュ ア侵 襲性デバ ッ グ が許可 さ れる セキ ュ ア非侵 襲性デバ ッ グ が許可 さ れる 非セキ ュ ア非侵 襲性デバ ッ グが 許可 さ れる 0 0 0 0 いいえ いいえ いいえ いいえ 0 0 0 1 いいえ いいえ いいえ はい 0 0 1 0 いいえ いいえ いいえ いいえ 0 0 1 1 いいえ いいえ はい はい ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-16 デバ ッ グ 表 10-13 認証信号の制限 (続き) SPIDEN DBGENa SPNIDEN NIDEN セキ ュ ア侵襲 性デバ ッ グが 許可 さ れる b 非セキ ュ ア侵 襲性デバ ッ グ が許可 さ れる セキ ュ ア非侵 襲性デバ ッ グ が許可 さ れる 非セキ ュ ア非侵 襲性デバ ッ グが 許可 さ れる 0 1 0 0 いいえ はい いいえ はい 0 1 0 1 いいえ はい いいえ はい 0 1 1 0 いいえ はい はい はい 0 1 1 1 いいえ はい はい はい 1 0 0 0 いいえ いいえ いいえ いいえ 1 0 0 1 いいえ いいえ はい はい 1 0 1 0 いいえ いいえ いいえ いいえ 1 0 1 1 いいえ いいえ はい はい 1 1 0 0 はい はい はい はい 1 1 0 1 はい はい はい はい 1 1 1 0 はい はい はい はい 1 1 1 1 はい はい はい はい a. DBGEN が LOW の場合、 プ ロ セ ッ サは、 こ の信号が LOW の と き にホール ト デバ ッ グ イ ベン ト が無視 さ れ る こ と を除 いて、 DBGDSCR[15:14] が b00 であ る かの よ う に動作 し ます。 b. 侵襲性デバ ッ グは、 コ アの動作に影響を与え る 操作 と し て定義 さ れます。 例えば、 ブ レー ク ポ イ ン ト の検出は侵襲性デ バ ッ グ と し て定義 さ れますが、 パフ ォ ーマ ン ス カ ウ ン タ と ト レース は非侵襲性です。 10.5.2 認証信号の変更 NIDEN、 DBGEN、 SPIDEN、 SPNIDEN 入力信号は、 特定の値に固定 さ れ る か、 特 定の外部デバ イ ス に よ っ て制御 さ れます。 Cortex-A9 プ ロ セ ッ サで実行 さ れてい る ソ フ ト ウ ェ アで、 認証信号を駆動す る 外部デ バ イ ス を制御す る 場合は、 安全な シーケ ン ス を使用 し て変更を行 う 必要があ り ます。 1. 実装固有の命令シーケ ン ス を実行 し て、 信号の値を変更 し ます。 例えば、 特定 の値を シ ス テ ムペ リ フ ェ ラ ルの制御レ ジ ス タ に書 き 込む、 単一の STR 命令を実 行 し ます。 2. 手順 1 に メ モ リ 操作が含まれ る 場合は、 DSB を発行 し ます。 3. DSCR ま たは認証ス テー タ ス レ ジ ス タ を ポー リ ン グ し 、 プ ロ セ ッ サが こ れ ら の 信号の値の変化をすでに検出 し てい る か ど う か をチ ェ ッ ク し ます。 DSB が完了 し てか ら 数サ イ ク ル後ま で、 シ ス テ ムが信号の変化を プ ロ セ ッ サに発行 し ない 可能性があ る ため、 こ の操作が必要です。 4. ISB、 例外開始、 ま たは例外終了を実行 し ます。 ソ フ ト ウ ェ アは、 こ の手順が完了す る ま で、 認証信号の新 し い値に依存す る デバ ッ グ ま たは分析操作を実行で き ません。 デバ ッ ガがデバ ッ グ状態で、 ITR 経由でプ ロ セ ッ サ を制御す る と き に も 、 同 じ 規則が適用 さ れ ます。 関連す る DBGEN、 NIDEN、 SPIDEN、 SPNIDEN の値の組み合わせは、 DSCR[17:16]、 DSCR[15:14]、 ま たは認証ス テー タ ス レ ジ ス タ を ポー リ ン グす る こ と で判断で き ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-17 デバ ッ グ 10.5.3 デバ ッ グ APB イ ン タ フ ェ ース PMU レ ジ ス タ 名 と 、 対応す る デバ ッ グ APB イ ン タ フ ェース上のア ド レ ス を、 表 10-14 に示 し ます。 表 10-14 PMU レ ジ ス タ 名 と デバ ッ グ APB イ ン タ フ ェ ースア ド レ ス 10.5.4 PMU レ ジス タ 名 デバ ッ グ APB ア ド レ ス PMU イ ベン ト カ ウ ン タ 0 0x000 PMU イ ベン ト カ ウ ン タ 1 0x004 PMU イ ベン ト カ ウ ン タ 2 0x008 PMU イ ベン ト カ ウ ン タ 3 0x00C PMU イ ベン ト カ ウ ン タ 4 0x010 PMU イ ベン ト カ ウ ン タ 5 0x014 pmccntr 0x07C pmevtyper0 0x400 pmevtyper1 0x404 pmevtyper2 0x408 pmevtyper3 0x40C pmevtyper4 0x410 pmevtyper5 0x414 pmcntenset 0xC00 pmcntenclr 0xC20 pmintenset 0xC40 pmintenclr 0xC60 pmovsr 0xC80 pmswinc 0xCA0 pmcr 0xE04 pmuserenr 0xE08 外部デバ ッ グ要求イ ン タ フ ェ ース 次に示すセ ク シ ョ ンでは、 外部デバ ッ グ要求イ ン タ フ ェース信号について説明し ます。 • 「EDBGRQ」 (ページ 10-19) • 「DBGACK」 (ページ 10-19) • 「DBGCPUDONE」 (ページ 10-19) • 「COMMRX と COMMTX」 (ページ 10-20) • 「 メ モ リ マ ッ プ さ れた ア ク セ ス、 DBGROMADDR、 DBGSELFADDR」 (ページ 10-20) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-18 デバ ッ グ EDBGRQ こ の信号は、 ホール ト デバ ッ グ イ ベン ト を生成 し ます。 つま り 、 デバ ッ グ状態に移 行す る よ う プ ロ セ ッ サに要求 し ます。 こ の イ ベン ト が発生す る と 、 デバ ッ グ開始方 法ビ ッ ト の DSCR[5:2] が b0100 にセ ッ ト さ れ ます。 EDBGRQ がアサー ト さ れ る 場 合、 DBGACK がアサー ト さ れ る ま で保持す る 必要があ り ます。 こ れを行わない場 合、 プ ロ セ ッ サの動作は予測不能です。 DBGACK プ ロ セ ッ サは、 シ ス テ ムがデバ ッ グ状態に移行 し た こ と を示すため、 DBGACK を ア サー ト し ます。 こ れは、 EDBGRQ 信号のハン ド シ ェー ク と し て機能 し ます。 DBGACK 信号は、 デバ ッ ガに よ り DSCR[10] (DbgAck) ビ ッ ト が 1 にセ ッ ト さ れた と き も 、 HIGH に駆動 さ れ ます。 DBGCPUDONE コ アがデバ ッ グ状態への移行手順の一部 と し て デー タ 同期バ リ ア (DSB) を完了 し た 時点で、 DBGCPUDONE がアサー ト さ れます。 プ ロ セ ッ サは、 非デバ ッ グ状態での メ モ リ ア ク セ ス がすべて完了 し た後にのみ DBGCPUDONE を アサー ト し ます。 こ のため、 シ ス テ ムは、 プ ロ セ ッ サに よ っ て発 行 さ れたすべての メ モ リ ア ク セ ス が、 デバ ッ ガに よ っ て実行 さ れた操作の結果であ る こ と を示す イ ン ジ ケー タ と し て、 DBGCPUDONE を使用で き ます。 デバ ッ グ要求 と 再起動に固有の Cortex-A9 接続 と 、 CoreSight ピ ン を、 図 10-5 に示 し ます。 CPU0 CTI0 EDBGRQ CTITRIGOUT[0] CTITRIGOUTACK[0] DBGACK D D Q Q DBGRESTART 0 DBGRESTARTED 1 D Q DBGTRIGGERREQ CTITRIGIN[0] DBGTRIGGERACK CTITRIGINACK[0] DBGRESTARTREQ CTITRIGOUT[7] DBGRESTARTACK CTITRIGOUTACK[7] 䊒䊨䉶䉾䉰㪚㪣㪢 図 10-5 デバ ッ グ要求 と 再起動に固有の接続 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-19 デバ ッ グ COMMRX と COMMTX COMMRX お よ び COMMTX 出力信号は、 DTR 上の割 り 込み駆動通信を可能に し ま す。 こ れ ら の信号を割 り 込み コ ン ト ロ ー ラ に接続す る こ と に よ っ て、 チ ャ ネル上に 新 し いデー タ が存在す る 場合、 ま たはチ ャ ネルが ク リ アで転送が可能な場合であれ ばいつで も 、 デバ ッ グ通信チ ャ ネルを使用 し てい る ソ フ ト ウ ェ アに割 り 込む こ と が で き ます。 COMMRX は、 プ ロ セ ッ サが読み出すデー タ が CP14 DTR に保持 さ れてい る 場合に アサー ト さ れ、 プ ロ セ ッ サがそのデー タ を読み出 し た と き にアサー ト 解除 さ れます。 その値は、 DBGDSCR[30] DTRRX フルフ ラ グ と 同 じ です。 COMMTX は、 CP14 で書 き 込みデー タ の準備がで き た と き にアサー ト さ れ、 プ ロ セ ッ サがデー タ を書 き 込んだ と き にアサー ト 解除 さ れ ます。 その値は、 DBGDSCR[29] DTRTX フルフ ラ グの反転 と 同 じ です。 メ モ リ マ ッ プ さ れたア ク セス、 DBGROMADDR、 DBGSELFADDR Cortex-A9 プ ロ セ ッ サには、 メ モ リ マ ッ プ さ れたデバ ッ グ イ ン タ フ ェ ース が存在 し ま す。 Cortex-A9 プ ロ セ ッ サは、 AXI バ ス を通過す る ロ ー ド 命令 と ス ト ア命令を実行す る こ と に よ っ て、 デバ ッ グ レ ジ ス タ と PMU レ ジ ス タ にア ク セ ス で き ます。 DBGROMADDR は、 デバ ッ グ コ ン ポーネ ン ト の物理ア ド レ ス を示す ROM テーブル のベース ア ド レ ス を示 し ます。 DBGSELFADDR は、 ROM テーブルか ら 、 プ ロ セ ッ サに内蔵 さ れた レ ジ ス タ の物理 ア ド レ ス ま でのオ フ セ ッ ト を示 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 10-20 第 11 章 パフ ォ ーマ ン ス監視ユニ ッ ト 本章では、 パフ ォーマ ン ス監視ユニ ッ ト (PMU) と 、 PMU で使用可能な レ ジ ス タ につい て説明 し ます。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「パフ ォーマ ン ス監視ユニ ッ ト について」 (ページ 11-2) 「PMU 管理レ ジ ス タ 」 (ページ 11-3) • • 「パフ ォーマ ン ス監視 イ ベン ト 」 (ページ 11-7) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-1 パフ ォ ーマ ン ス監視ユニ ッ ト 11.1 パフ ォ ーマ ン ス監視ユニ ッ ト について Cortex-A9 プ ロ セ ッ サの PMU は、 プ ロ セ ッ サ と メ モ リ シ ス テ ム の動作に関す る 統計 デー タ を収集す る 6 つのカ ウ ン タ を提供 し ます。 それぞれのカ ウ ン タ で、 Cortex-A9 プ ロ セ ッ サで使用可能な 58 の イ ベン ト のいずれか を カ ウ ン ト で き ます。 PMU カ ウ ン タ と 、 関連す る 制御レ ジ ス タ には、 内部の CP15 イ ン タ フ ェース だけで な く 、 デバ ッ グ APB イ ン タ フ ェース か ら も ア ク セ ス で き ます。 PMU レ ジ ス タ の マ ッ ピ ン グ を、 表 11-1 に示 し ます。 表 11-1 パフ ォ ーマ ン ス監視命令 と デバ ッ グ APB のマ ッ ピ ング デバ ッ グ APB イ ン タ フ ェ ース のマ ッ ピ ン グ CP15 命令 ア ク セス リセッ ト 名前 0x000 0, c9, c13, 2 RW - PMXEVCNTR0 0x004 0, c9, c13, 2 RW - PMXEVCNTR1 0x008 0, c9, c13, 2 RW - PMXEVCNTR2 0x00C 0, c9, c13, 2 RW - PMXEVCNTR3 0x010 0, c9, c13, 2 RW - PMXEVCNTR4 0x014 0, c9, c13, 2 RW - PMXEVCNTR5 0x07C 0, c9, c13, 0 RW - PMCCNTR 0x400 0, c9, c13, 1 RW - PMXEVTYPER0 0x404 0, c9, c13, 1 RW - PMXEVTYPER1 0x408 0, c9, c13, 1 RW - PMXEVTYPER2 0x40C 0, c9, c13, 1 RW - PMXEVTYPER3 0x410 0, c9, c13, 1 RW - PMXEVTYPER4 0x414 0, c9, c13, 1 RW - PMXEVTYPER5 0xC00 0, c9, 0 c12, 1 RW - PMCNTENSET 0xC20 0, c9, c12, 2 RW - PMCNTENCLR 0xC40 0, c9, c14, 1 RW - PMINTENSET 0xC60 0, c9, c14, 2 RW - PMINTENCLR 0xC80 0, c9, c12, 3 RW - PMOVSR 0xCA0 0, c9, c12, 4 WO - PMSWINC 0xE04 0, c9, c12, 0 RW 0x41093000 PMCR 0xE08 0, c9, c14, 0 RWa 0x00000000 PMUSERENR - 0, c9, c12, 5 RW - PMSELR a. ユーザモー ド では読み出 し 専用です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-2 パフ ォ ーマ ン ス監視ユニ ッ ト 11.2 PMU 管理レ ジ ス タ PMU 管理レ ジ ス タ は、 すべての CoreSight コ ン ポーネ ン ト に実装 さ れた、 標準化 さ れた レ ジ ス タ のセ ッ ト を定義 し ます。 こ こ では、 こ れ ら の レ ジ ス タ について説明 し ます。 こ れ ら の レ ジ ス タ にア ク セ スす る には、 cp14 イ ン タ フ ェ ース を使用す る 必要 があ り ます。 Cortex-A9 デバ ッ グユニ ッ ト の管理レ ジ ス タ の内容を、 表 11-2 に示 し ます。 表 11-2 PMU 管理レ ジ ス タ 11.2.1 オフセ ッ ト レ ジス タ 番号 ア ク セス ニーモニ ッ ク 説明 0xD00 ~ 0xDFC 832 ~ 895 RO - 「プ ロ セ ッ サ ID レ ジ ス タ」 0xE00 ~ 0xEF0 854 ~ 956 - - RAZ 0xF00 960 RW ITCTRL - 0xF04 ~ 0xF9C 961 ~ 999 RAZ - 管理レ ジ ス タ の拡張用 と し て予約 0xFA0 1000 RW CLAIMSET - 0xFA4 1001 RW CLAIMCLR - 0xFA8 ~ 0xFBC 1002 ~ 1003 - - RAZ 0xFB0 1004 WO LOCKACCESS - 0xFB4 RO LOCKSTATUS - 0xFB8 RO AUTHSTATUS - 0xFBC ~ 0xFC4 1007 ~ 1009 - - RAZ 0xFC8 1010 RO DEVID デバ イ ス ID 0xFCC 1011 RO DEVTYPE - 0xFD0 ~ 0xFFC 1012 ~ 1023 R - 「CoreSight 識別レ ジ ス タ」 (ページ 11-4) プ ロ セ ッ サ ID レ ジ ス タ プ ロ セ ッ サ ID レ ジ ス タ は読み出 し 専用レ ジ ス タ で、 対応す る CP15 ID コ ー ド レ ジ ス タ お よ び機能 ID レ ジ ス タ と 同 じ 値を返 し ます。 それぞれのプ ロ セ ッ サ ID レ ジ ス タ に関連付け ら れたオ フ セ ッ ト 値、 レ ジ ス タ 番号、 ニーモニ ッ ク 、 お よ び説明を、 表 11-3 に示 し ます。 表 11-3 プ ロ セ ッ サ ID レ ジ ス タ オフセッ ト (16 進数) レ ジ ス タ 番号 ニーモニ ッ ク ア ク セス レ ジス タ 値 説明 0xD00 832 CPUID RO 0x80000000 ID コ ー ド レ ジ ス タ a 0xD04 833 CTYPR RO 0x80038003 キャ ッ シュ タ イプ レジス タ 0xD08 834 - RAZ - - 0xD0C 835 TTYPR RO 0x00000400 TLB タ イ プ レ ジ ス タ 0xD10 ~ 0xD1C 836 ~ 839 - - - 予約 0xD20 840 ID_PFR0 RO 0x00001231 プ ロ セ ッ サ機能レ ジ ス タ 0 0xD24 841 ID_PFR1 RO 0x00000011 プ ロ セ ッ サ機能レ ジ ス タ 1 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-3 パフ ォ ーマ ン ス監視ユニ ッ ト 表 11-3 プ ロ セ ッ サ ID レ ジ ス タ (続き) オフセッ ト (16 進数) レ ジ ス タ 番号 ニーモニ ッ ク ア ク セス レ ジス タ 値 説明 0xD28 842 ID_DFR0 RO 0x00010444 デバ ッ グ機能レ ジ ス タ 0 0xD2C 843 ID_AFR0 RAZ - 補助機能レ ジ ス タ 0 0xD30 844 ID_MMFR0 RO 0x00100103 メ モ リ モデル機能レ ジ ス タ 0 0xD34 845 ID_MMFR1 RO 0x20000000 メ モ リ モデル機能レ ジ ス タ 1 0xD38 846 ID_MMFR2 RO 0x01230000 メ モ リ モデル機能レ ジ ス タ 2 0xD3C 847 ID_MMFR3 RO 0x00002111 メ モ リ モデル機能レ ジ ス タ 3 0xD40 848 ID_ISAR0 RO 0x00101111 命令セ ッ ト 属性レ ジ ス タ 0 0xD44 849 ID_ISAR1 RO 0x13112111 命令セ ッ ト 属性レ ジ ス タ 1 0xD48 850 ID_ISAR2 RO 0x21232041 命令セ ッ ト 属性レ ジ ス タ 2 0xD4C 851 ID_ISAR3 RO 0x11112131 命令セ ッ ト 属性レ ジ ス タ 3 0xD50 852 ID_ISAR4 RO 0x00011142 命令セ ッ ト 属性レ ジ ス タ 4 0xD54 853 ID_ISAR5 RAZ - 命令セ ッ ト 属性レ ジ ス タ 5 a. ユニプ ロ セ ッ サバージ ョ ンの場合 = 0x80000000 マルチプ ロ セ ッ サバージ ョ ンの場合 = 0xC0000n0m n = CLUSTERID 入力 m = CPU 番号 (CPU0 の場合は 0x0、 CPU1 の場合は 0x1、 CPU2 の場合は 0x2、 CPU3 の場合は 0x3) 11.2.2 CoreSight 識別レ ジ ス タ こ の識別レ ジ ス タ は読み出 し 専用レ ジ ス タ で、 ペ リ フ ェ ラ ル識別レ ジ ス タ と コ ン ポーネ ン ト 識別レ ジ ス タ で構成 さ れます。 ペ リ フ ェ ラ ル識別レ ジ ス タ は、 すべての CoreSight コ ン ポーネ ン ト に必要な標準的な情報を提供 し ます。 各レ ジ ス タ のビ ッ ト [7:0] のみが使用 さ れます。 コ ン ポーネ ン ト 識別レ ジ ス タ は、 プ ロ セ ッ サ を CoreSight コ ン ポーネ ン ト と し て識別 し ます。 各レ ジ ス タ の ビ ッ ト [7:0] のみが使用 さ れ、 他の ビ ッ ト は RAZ です。 こ れ ら の レ ジ ス タ の値は固定です。 それぞれのペ リ フ ェ ラ ル識別レ ジ ス タ に関連付け ら れたオ フ セ ッ ト 値、 レ ジ ス タ 番 号、 値、 お よ び説明を、 表 11-4 に示 し ます。 表 11-4 ペ リ フ ェ ラル識別レ ジ ス タ ARM DDI 0388FJ ID013111 オフセ ッ ト (16 進数) レ ジ ス タ 番号 値 説明 0xFD0 1012 0x04 ペ リ フ ェ ラ ル識別レ ジ ス タ 4 0xFD4 1013 - 予約 0xFD8 1014 - 予約 0xFDC 1015 - 予約 0xFE0 1016 0xA0 ペ リ フ ェ ラ ル識別レ ジ ス タ 0 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-4 パフ ォ ーマ ン ス監視ユニ ッ ト 表 11-4 ペ リ フ ェ ラル識別レ ジ ス タ (続き) オフセ ッ ト (16 進数) レ ジ ス タ 番号 値 説明 0xFE4 1017 0xB9 ペ リ フ ェ ラ ル識別レ ジ ス タ 1 0xFE8 1018 0x0B ペ リ フ ェ ラ ル識別レ ジ ス タ 2 0xFEC 1019 0x00 ペ リ フ ェ ラ ル識別レ ジ ス タ 3 それぞれの コ ン ポーネ ン ト 識別レ ジ ス タ に関連付け ら れたオ フ セ ッ ト 値、 レ ジ ス タ 番号、 値を、 表 11-5 に示 し ます。 表 11-5 コ ンポーネ ン ト 識別レ ジ ス タ 11.2.3 オフセ ッ ト (16 進数) レ ジ ス タ 番号 値 説明 0xFF0 1020 0x0D コ ン ポーネ ン ト 識別レ ジ ス タ 0 0xFF4 1021 0x90 コ ン ポーネ ン ト 識別レ ジ ス タ 1 0xFF8 1022 0x05 コ ン ポーネ ン ト 識別レ ジ ス タ 2 0xFFC 1023 0xB1 コ ン ポーネ ン ト 識別レ ジ ス タ 3 PMU APB イ ン タ フ ェ ース PMU レ ジ ス タ名 と 、 対応する APB イ ン タ フ ェースのア ド レ ス を、 表 11-6 に示し ます。 表 11-6 PMU レ ジ ス タ 名 と APB ア ド レ ス ARM DDI 0388FJ ID013111 PMU レ ジ ス タ 名 デバ ッ グ APB ア ド レ ス PMU イ ベン ト カ ウ ン タ 0 0x000 PMU イ ベン ト カ ウ ン タ 1 0x004 PMU イ ベン ト カ ウ ン タ 2 0x008 PMU イ ベン ト カ ウ ン タ 3 0x00C PMU イ ベン ト カ ウ ン タ 4 0x010 PMU イ ベン ト カ ウ ン タ 5 0x014 pmccntr 0x07C pmevtyper0 0x400 pmevtyper1 0x404 pmevtyper2 0x408 pmevtyper3 0x40C pmevtyper4 0x410 pmevtyper5 0x414 pmcntenset 0xC00 pmcntenclr 0xC20 pmintenset 0xC40 pmintenclr 0xC60 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-5 パフ ォ ーマ ン ス監視ユニ ッ ト 表 11-6 PMU レ ジス タ 名 と APB ア ド レ ス (続き) ARM DDI 0388FJ ID013111 PMU レ ジ ス タ 名 デバ ッ グ APB ア ド レ ス pmovsr 0xC80 pmswinc 0xCA0 pmcr 0xE04 pmuserenr 0xE08 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-6 パフ ォ ーマ ン ス監視ユニ ッ ト 11.3 パフ ォ ーマ ン ス監視イ ベン ト Cortex-A9 プ ロ セ ッ サは、 次の例外を除いて、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マ ニ ュ アル』 に記載 さ れてい る アーキ テ ク チ ャ イ ベン ト を実装 し てい ます。 0x08 アーキ テ ク チ ャ 的に実行 さ れた メ モ リ 読み出 し 命令 0x0E アーキ テ ク チ ャ 的に実行 さ れた、 例外か ら の復帰以外のプ ロ シージ ャ か ら の復帰 イ ベン ト と 、 対応す る PMUEVENT 信号については、 表 A-18 (ページ A-14) を参 照 し て下 さ い。 PMU は、 こ の他に、 Cortex-A9 固有の イ ベン ト のセ ッ ト を提供 し ます。 11.3.1 Cortex-A9 固有のイ ベン ト Cortex-A9 固有の イ ベン ト を、 表 11-7 に示 し ます。 表 11-7 の値列の 「正確」 は、 イ ベン ト が正確にカ ウ ン ト さ れ る こ と を意味 し ます。 ス ト ールや投機的な命令に関連 し た イ ベン ト は、 同 じ 列の 「近似」 で示 さ れ ます。 表 11-7 Cortex-A9 固有のイ ベン ト イ ベン ト 説明 値 0x40 Java バ イ ト コ ー ド の実行a 投機的な も の も 含めて、 デ コ ー ド さ れた Java バ イ ト コ ー ド の数を カ ウ ン ト し ます。 近似 0x41 実行 さ れた ソ フ ト ウ ェ ア Java バ イ ト コ ー ド a 投機的な も の も 含めて、 デ コ ー ド さ れた ソ フ ト ウ ェ ア Java バ イ ト コ ー ド の数を カ ウ ン ト し ます。 近似 0x42 実行 さ れた Jazelle 後方分岐 a Jazelle で、 分岐を行 う も の と し て実行 さ れた分岐の数を カ ウ ン ト し ます。 こ れには、 過去の ロ ー ド / ス ト アの遅延アボー ト が原因で フ ラ ッ シ ュ さ れた分岐が含まれます。 近似 0x50 コ ヒ ーレ ン ト ラ イ ン フ ィ ル ミ ス b Cortex-A9 プ ロ セ ッ サで実行 さ れ、 他の Cortex-A9 プ ロ セ ッ サすべてで ミ ス し た コ ヒ ーレ ン ト ラ イ ン フ ィ ル要求の数を カ ウ ン ト し ます。 こ れは、 その要求が外部 メ モ リ に送信 さ れた こ と を意味 し ます。 正確 0x51 コ ヒ ーレ ン ト ラ イ ン フ ィ ル ヒ ッ ト b Cortex-A9 プ ロ セ ッ サで実行 さ れ、 他の Cortex-A9 プ ロ セ ッ サで ヒ ッ ト し た、 コ ヒ ーレ ン ト ラ イ ン フ ィ ル要求の数を カ ウ ン ト し ます。 こ れは、 ラ イ ン フ ィ ルデー タ が該当の Cortex-A9 キ ャ ッ シ ュ か ら 直接フ ェ ッ チ さ れた こ と を意味 し ます。 正確 0x60 命令キ ャ ッ シ ュ 依存ス ト ールサ イ ク ル プ ロ セ ッ サで新 し い命令を受け入れ る 準備はで き てい る が、 命令側の準備がで き ていないために プ ロ セ ッ サで命令が受信 さ れず、 命令キ ャ ッ シ ュ が 1 つ以上の ラ イ ン フ ィ ルを実行 し てい る サ イ ク ル数を カ ウ ン ト し ます。 近似 0x61 デー タ キ ャ ッ シ ュ 依存ス ト ールサ イ ク ル 近似 コ アに ど のパ イ プ ラ イ ンに も 発行で き ない命令が存在 し 、 ロ ー ド / ス ト アユニ ッ ト に保留中の TLB 要求はないが、 保留中の ラ イ ン フ ィ ル要求が 1 つ以上存在す る サ イ ク ル数を カ ウ ン ト し ます。 0x62 メ イ ン TLB ミ ス ス ト ール サ イ ク ル プ ロ セ ッ サが、 メ イ ン TLB か ら の変換テーブル ウ ォー ク の完了を待ちなが ら ス ト ール し てい る サ イ ク ル数を カ ウ ン ト し ます。 プ ロ セ ッ サの ス ト ールは、 命令側で命令が提供で き ない、 デー タ 側 で必要なデー タ が提供で き ない、 ま たは メ イ ン TLB 変換テーブル ウ ォー ク の完了を待っ てい る 場 合に発生す る 可能性があ り ます。 近似 0x63 STREX 成功 アーキ テ ク チ ャ 的に実行 さ れ、 成功 し た STREX 命令の数を カ ウ ン ト し ます。 正確 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-7 パフ ォ ーマ ン ス監視ユニ ッ ト 表 11-7 Cortex-A9 固有のイ ベン ト (続き) イ ベン ト 説明 値 0x64 STREX 失敗 アーキ テ ク チ ャ 的に実行 さ れ、 失敗 し た STREX 命令の数を カ ウ ン ト し ます。 正確 0x65 デー タ 退出 デー タ キ ャ ッ シ ュ の ラ イ ン フ ィ ルが原因の退出要求の数を カ ウ ン ト し ます。 正確 0x66 発行で命令がデ ィ スパ ッ チ さ れない 発行ス テージが空か、 命令をデ ィ スパ ッ チで き ないために、 ど の命令 も デ ィ スパ ッ チ さ れなかっ たサ イ ク ル数を カ ウ ン ト し ます。 正確 0x67 発行が空 発行ス テージが空であ る サ イ ク ル数を カ ウ ン ト し ます。 正確 0x68 近似 コ ア名前変更ス テージか ら の命令 レ ジ ス タ 名変更ス テージ を通過 し た命令の数を カ ウ ン ト し ます。 こ の数は、 投機的に発行 さ れた 命令の総数の近似で、 アーキ テ ク チ ャ 的に発行 さ れた命令の総数の よ り 正確な近似です。 こ の近 似は、 主に、 分岐予測失敗率に依存 し ます。 名前変更ス テージは、 1 つのサ イ ク ルで 2 つの命令を処理で き る ため、 イ ベン ト は 2 ビ ッ ト 長です。 • b00 = コ ア名前変更ス テージか ら の命令はあ り ません。 • b01 = コ ア名前変更ス テージか ら の命令が 1 つ存在 し ます。 • b10 = コ ア名前変更ス テージか ら の命令が 2 つ存在 し ます。 こ れ ら の値の PMUEVENT バ ス ビ ッ ト へのマ ッ プ方法については、 表 A-17 (ページ A-14) を参照 し て下 さ い。 0x6E 予測可能関数か ら の復帰 例外か ら の復帰以外で、 条件 コ ー ド が失敗 し なか っ たプ ロ シージ ャ か ら の復帰の数を カ ウ ン ト し ます。 こ のカ ウ ン ト には、 以前の ロ ー ド / ス ト アの遅延アボー ト が原因で フ ラ ッ シ ュ さ れた、 プ ロ シージ ャ か ら の復帰が含まれます。 次の命令のみが報告 さ れます。 • BX R14 • MOV PC LR • POP {..,pc} • LDR pc,[sp],#offset 次の命令は報告 さ れません。 • LDMIA R9!,{..,PC} (ThumbEE 状態のみ) • LDR PC,[R9],#offset (ThumbEE 状態のみ) • BX R0 (Rm != R14) • MOV PC,R0 (Rm != R14) • LDM SP,{...,PC} ( ラ イ ト バ ッ ク が未指定) LDR PC,[SP,#offset] (不正な ア ド レ シ ン グモー ド ) • 近似 0x70 メ イ ン実行ユニ ッ ト 命令 プ ロ セ ッ サの メ イ ン実行パ イ プ ラ イ ン、 乗算パ イ プ ラ イ ン、 算術論理演算ユニ ッ ト パ イ プ ラ イ ン で実行 さ れた命令の数を カ ウ ン ト し ます。 カ ウ ン ト さ れた命令は投機的で も あ り ます。 近似 0x71 第 2 実行ユニ ッ ト 命令 プ ロ セ ッ サの第 2 実行パ イ プ ラ イ ン (ALU) で実行 さ れた命令の数を カ ウ ン ト し ます。 カ ウ ン ト さ れた命令は投機的で も あ り ます。 近似 0x72 ロ ー ド / ス ト ア命令 ロ ー ド / ス ト アユニ ッ ト で実行 さ れた命令の数を カ ウ ン ト し ます。 カ ウ ン ト さ れた命令は投機的で も あ り ます。 近似 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-8 パフ ォ ーマ ン ス監視ユニ ッ ト 表 11-7 Cortex-A9 固有のイ ベン ト (続き) イ ベン ト 説明 0x73 近似 浮動小数点命令 レ ジ ス タ 名変更ス テージ を通過 し た浮動小数点命令の数を カ ウ ン ト し ます。 命令は こ の ス テージ で も 投機的です。 1 つのサ イ ク ルで 2 つの浮動小数点命令を名前変更で き る ため、 イ ベン ト は 2 ビ ッ ト 長です。 0b00 = ど の浮動小数点命令 も 名前変更 さ れません。 0b01 = 1 つの浮動小数点命令が名前変更 さ れます。 0b10 = 2 つの浮動小数点命令が名前変更 さ れます。 こ れ ら の値の PMUEVENT バ ス ビ ッ ト へのマ ッ プ方法については、 表 A-17 (ページ A-14) を参照 し て下 さ い。 0x74 近似 NEON 命令 レ ジ ス タ 名変更ス テージ を通過 し た NEON 命令の数を カ ウ ン ト し ます。 命令は こ の ス テージで も 投機的です。 1 つのサ イ ク ルで 2 つの NEON 命令を名前変更で き る ため、 イ ベン ト は 2 ビ ッ ト 長です。 0b00 = ど の NEON 命令 も 名前変更 さ れません。 0b01 = 1 つの NEON 命令が名前変更 さ れます。 0b10 = 2 つの NEON 命令が名前変更 さ れます。 こ れ ら の値の PMUEVENT バ ス ビ ッ ト へのマ ッ プ方法については、 表 A-17 (ページ A-14) を参照 し て下 さ い。 0x80 PLD が原因のプ ロ セ ッ サ ス ト ール PLD ス ロ ッ ト がすべてい っぱいなため、 プ ロ セ ッ サが ス ト ール し たサ イ ク ル数を カ ウ ン ト し ます。 近似 0x81 メ モ リ への書 き 込みが原因のプ ロ セ ッ サ ス ト ール デー タ 側がいっぱいで、 外部 メ モ リ への書 き 込みを実行中なため、 プ ロ セ ッ サ と デー タ 側の両方 が ス ト ール し たサ イ ク ル数を カ ウ ン ト し ます。 近似 0x82 命令側の メ イ ン TLB ミ ス が原因のプ ロ セ ッ サ ス ト ール 命令側で発行された要求に対する メ イ ン TLB ミ スが原因の、 ス ト ールサ イ ク ル数を カ ウ ン ト し ます。 近似 0x83 デー タ 側の メ イ ン TLB ミ ス が原因のプ ロ セ ッ サ ス ト ール デー タ 側で発行 さ れた要求に対す る メ イ ン TLB ミ ス が原因の、 ス ト ールサ イ ク ル数を カ ウ ン ト し ます。 近似 0x84 近似 命令マ イ ク ロ TLB ミ ス が原因のプ ロ セ ッ サ ス ト ール 命令側のマ イ ク ロ TLB ミ ス が原因の、 ス ト ールサ イ ク ル数を カ ウ ン ト し ます。 こ の イ ベン ト には、 対応す る メ イ ン TLB イ ベン ト でカ ウ ン ト 済みの、 メ イ ン TLB ミ ス に よ る ス ト ールサ イ ク ルは含ま れません。 0x85 デー タ マ イ ク ロ TLB ミ ス が原因のプ ロ セ ッ サ ス ト ール デー タ 側のマ イ ク ロ TLB ミ ス が原因の、 ス ト ールサ イ ク ル数を カ ウ ン ト し ます。 こ の イ ベン ト に は、 対応す る メ イ ン TLB イ ベン ト でカ ウ ン ト 済みの、 メ イ ン TLB ミ ス に よ る ス ト ールサ イ ク ルは 含まれません。 近似 0x86 DMB が原因のプ ロ セ ッ サ ス ト ール DMB メ モ リ バ リ アの実行が原因の ス ト ールサ イ ク ル数を カ ウ ン ト し ます。 こ れには、 投機的で あ っ て も 、 実行 さ れたすべての DMB 命令が含まれます。 近似 0x8A 整数 ク ロ ッ ク 稼働 整数 コ ア ク ロ ッ ク が稼働 し てい る サ イ ク ル数を カ ウ ン ト し ます。 近似 0x8B デー タ エン ジ ン ク ロ ッ ク 稼働 デー タ エン ジ ン ク ロ ッ ク が稼働 し てい る サ イ ク ル数を カ ウ ン ト し ます。 近似 0x90 ISB 命令 アーキ テ ク チ ャ 的に実行 さ れた ISB 命令の数を カ ウ ン ト し ます。 正確 ARM DDI 0388FJ ID013111 値 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-9 パフ ォ ーマ ン ス監視ユニ ッ ト 表 11-7 Cortex-A9 固有のイ ベン ト (続き) イ ベン ト 説明 値 0x91 DSB 命令 アーキ テ ク チ ャ 的に実行 さ れた DSB 命令の数を カ ウ ン ト し ます。 正確 0x92 DMB 命令 アーキ テ ク チ ャ 的に実行 さ れた DMB 命令の数を カ ウ ン ト し ます。 近似 0x93 外部割 り 込み プ ロ セ ッ サで実行 さ れた外部割 り 込みの数を カ ウ ン ト し ます。 近似 0xA0 完了 し た PLE キ ャ ッ シ ュ ラ イ ン要求c 正確 0xA1 ス キ ッ プ さ れた PLE キ ャ ッ シ ュ ラ イ ン要求 c 正確 0xA2 PLE FIFO フ ラ ッ シ ュ c 正確 0xA3 完了 し た PLE 要求 c 正確 0xA4 PLE FIFO オーバフ ロ ー c 正確 0xA5 プ ロ グ ラ ム さ れた PLE 要求 c 正確 a. 設計に Jazelle 拡張機能が実装 さ れてい る 場合のみ。 そ う でない場合は、 0 と し て読み出 さ れます。 b. Cortex-A9 のマルチプ ロ セ ッ サバ リ ア ン ト で使用 さ れます。 c. PLE が存在す る 場合にのみア ク テ ィ ブにな り ます。 そ う でない場合は、 0 と し て読み出 さ れます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential 11-10 付録 A 信号の説明 こ の付録では、 Cortex-A9 の信号を一覧表で説明 し ます。 本章は次のセ ク シ ョ ン か ら 構 成 さ れてい ます。 • 「 ク ロ ッ ク 信号 と ク ロ ッ ク 制御信号」 (ページ A-2) 「 リ セ ッ ト と リ セ ッ ト 制御」 (ページ A-3) • • 「割 り 込み」 (ページ A-4) 「構成信号」 (ページ A-5) • 「ス タ ンバ イ 信号 と イ ベン ト 待ち信号」 (ページ A-6) • 「電力管理信号」 (ページ A-7) • 「AXI イ ン タ フ ェース」 (ページ A-8) • 「パフ ォーマ ン ス監視信号」 (ページ A-14) • • 「例外フ ラ グ信号」 (ページ A-17) 「パ リ テ ィ 信号」 (ページ A-18) • 「MBIST イ ン タ フ ェース」 (ページ A-19) • 「ス キ ャ ン テ ス ト 信号」 (ページ A-20) • 「外部デバ ッ グ イ ン タ フ ェース」 (ページ A-21) • • 「PTM イ ン タ フ ェース信号」 (ページ A-24) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-1 信号の説明 A.1 ク ロ ッ ク信号 と ク ロ ッ ク制御信号 Cortex-A9 プ ロ セ ッ サには、 外部的に生成 さ れ る グ ロ ーバル ク ロ ッ ク が 1 つ存在 し ま す。 ク ロ ッ ク 信号 と ク ロ ッ ク 制御信号を、 表 A-1 に示 し ます。 表 A-1 Cortex-A9 のク ロ ッ ク 信号 と ク ロ ッ ク 制御信号 名前 I/O ソ ース CLK I ク ロ ッ ク コ ン ト ローラ 説明 グ ロ ーバル ク ロ ッ ク 。 「 ク ロ ッ ク と リ セ ッ ト 」 (ページ 2-6) を参照 し て下 さ い。 MAXCLKLATENCY[2:0] I ARM DDI 0388FJ ID013111 実装固有の静的な値 動的な ク ロ ッ ク ゲー ト 遅延を制御 し ます。 こ の ピ ンは、 プ ロ セ ッ サの リ セ ッ ト 中にサンプ リ ン グ さ れ ます。 「動的高水準 ク ロ ッ ク ゲー ト 」 (ページ 2-8) を参照 し て下 さ い。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-2 信号の説明 A.2 リ セ ッ ト と リ セ ッ ト 制御 リ セ ッ ト 信号 と リ セ ッ ト 制御信号を、 表 A-2 に示 し ます。 表 A-2 Cortex-A9 プ ロ セ ッ サの リ セ ッ ト 信号 名前 I/O ソ ース 説明 nCPURESET I リ セ ッ ト コ ン ト ローラ Cortex-A9 プ ロ セ ッ サの リ セ ッ ト nDBGRESET I Cortex-A9 プ ロ セ ッ サのデバ ッ グ ロ ジッ クの リ セッ ト NEONCLKOFFa I MPE SIMD ロ ジ ッ ク ク ロ ッ ク 制御。 0 = MPE SIMD ロ ジ ッ ク ク ロ ッ ク を 停止 し ません。 1 = MPE SIMD ロ ジ ッ ク ク ロ ッ ク を 停止 し ます。 nNEONRESETa I Cortex-A9 MPE SIMD ロ ジ ッ ク の リ セッ ト a. MPE が存在す る 場合のみ 「 リ セ ッ ト 」 (ページ 2-6) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-3 信号の説明 A.3 割 り 込み 割 り 込み ラ イ ン信号を、 表 A-3 に示 し ます。 表 A-3 割 り 込みラ イ ン信号 ARM DDI 0388FJ ID013111 名前 I/O ソ ース 説明 nFIQ I 割 り 込み ソ ース Cortex-A9 プ ロ セ ッ サの FIQ 要求入力 ラ イ ン。 ア ク テ ィ ブ LOW の高速割 り 込み要求が、 次の よ う に設 定 さ れます。 0 = 高速割 り 込みを ア ク テ ィ ブに し ます。 1 = 高速割 り 込みを非ア ク テ ィ ブに し ます。 プ ロ セ ッ サは、 nFIQ 入力を レベル感知 と し て扱い ます。 nIRQ I 割 り 込み ソ ース Cortex-A9 プ ロ セ ッ サの IRQ 要求入力 ラ イ ン。 ア ク テ ィ ブ LOW の割 り 込み要求が、 次の よ う に設定 さ れます。 0 = 割 り 込みを ア ク テ ィ ブに し ます。 1 = 割 り 込みを非ア ク テ ィ ブに し ます。 プ ロ セ ッ サは、 nIRQ 入力を レベル感知 と し て扱い ます。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-4 信号の説明 A.4 構成信号 プ ロ セ ッ サの リ セ ッ ト 中にのみサン プ リ ン グ さ れ る 構成信号を、 表 A-4 に示 し ます。 表 A-4 構成信号 名前 I/O ソ ース 説明 CFGEND I シ ス テ ム構成制御 リ セ ッ ト 時に、 SCTLR の EE ビ ッ ト の状態を制御 し ます。 0 = EE ビ ッ ト は LOW です。 1 = EE ビ ッ ト は HIGH です。 CFGNMFI I 高速割 り 込みを マ ス ク 不能に構成 し ます。 0 = CP15 c1 制御レ ジ ス タ の NMFI ビ ッ ト を ク リ ア し ます。 1 = CP15 c1 制御レ ジ ス タ の NMFI ビ ッ ト を セ ッ ト し ます。 TEINIT I デフ ォ ル ト の例外処理状態。 0 = ARM 1 = Thumb リ セ ッ ト 時に、 SCTLR.TE ビ ッ ト がセ ッ ト さ れます。 VINITHI I リ セ ッ ト 時の例外ベ ク タ の位置を制御 し ます。 0 = ア ド レ ス 0x00000000 で例外ベ ク タ を開始 し ます。 1 = ア ド レ ス 0xFFFF0000 で例外ベ ク タ を開始 し ます。 SCTLR.V ビ ッ ト がセ ッ ト さ れます。 CP15SDISABLE 信号を、 表 A-5 に示 し ます。 表 A-5 CP15SDISABLE 信号 名前 I/O ソ ース 説明 CP15SDISABLE I セキ ュ リ テ ィ コ ン ト ロ ー ラ セキ ュ ア状態で、 一部のシ ス テ ム制御プ ロ セ ッ サ レ ジ ス タ へ の書き 込みア ク セ ス を不可能に し ます。 0 = 不可能 1 = 可能 「シ ス テ ム制御レ ジ ス タ 」 (ページ 4-15) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-5 信号の説明 A.5 ス タ ンバイ信号 と イ ベン ト 待ち信号 ス タ ンバ イ 信号 と イ ベン ト 待ち信号を、 表 A-6 に示 し ます。 表 A-6 ス タ ンバイ信号 と イ ベン ト 待ち信号 名前 I/O ソ ース またはデス テ ィ ネーシ ョ ン 説明 EVENTI I 外部 コ ヒ ーレ ン ト エージ ェ ン ト Cortex-A9 プ ロ セ ッ サを WFE 状態か ら ウ ェー ク ア ッ プ さ せ る ための イ ベン ト 入力 EVENTO O STANDBYWFI O STANDBYWFE O イ ベン ト 出力。 こ の信号は、 SEV 命令が実行 さ れた 1 プ ロ セ ッ サ ク ロ ッ ク サ イ ク ルについて、 ア ク テ ィ ブ HIGH にな り ます。 電力 コ ン ト ロ ー ラ プ ロ セ ッ サが WFI 状態か ど う か を示 し ます。 0 = プ ロ セ ッ サが イ ベン ト 待ち状態ではあ り ません。 1 = プ ロ セ ッ サが イ ベン ト 待ち状態です。 プ ロ セ ッ サが WFE 状態か ど う かを示 し ます。 0 = プ ロ セ ッ サが イ ベン ト 待ち状態ではあ り ません。 1 = プ ロ セ ッ サが イ ベン ト 待ち状態です。 「ス タ ンバ イ モー ド 」 (ページ 2-11) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-6 信号の説明 A.6 電力管理信号 電力管理信号を、 表 A-7 に示 し ます。 表 A-7 電力管理信号 名前 I/O ソ ース 説明 CPURAMCLAMP I 電力コ ン ト ロ ー ラ CPU RAM イ ン タ フ ェ ース ク ラ ンプを ア ク テ ィ ブに し ます。 0 = ク ラ ンプは非ア ク テ ィ ブです。 1 = ク ラ ンプはア ク テ ィ ブです。 NEONCLAMPa I Cortex-A9 MPE SIMD ロ ジ ッ ク ク ラ ンプ を ア ク テ ィ ブに し ます。 0 = ク ラ ンプは非ア ク テ ィ ブです。 1 = ク ラ ンプはア ク テ ィ ブです。 a. MPE が存在す る 場合のみ 「電力管理」 (ページ 2-10) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-7 信号の説明 A.7 AXI イ ン タ フ ェ ース Cortex-A9 設計には、 2 つの AXI マ ス タ ポー ト を含め る こ と がで き ます。 次に示すセ ク シ ョ ン では、 AXI イ ン タ フ ェース について説明 し ます。 「AXI Master0 信号のデー タ ア ク セ ス」 • • 「AXI Master1 信号の命令ア ク セ ス」 (ページ A-11) A.7.1 AXI Master0 信号のデー タ ア ク セス 次に示すセ ク シ ョ ン では、 デー タ の読み出 し / 書 き 込みア ク セ ス に使用 さ れ る AXI Master0 イ ン タ フ ェース信号について説明 し ます。 「AXI Master0 の書 き込みア ド レ ス信号」 • • 「書 き込みデー タ チ ャ ネル信号」 (ページ A-9) • 「書 き込み応答チ ャ ネル信号」 (ページ A-10) 「読み出 し デー タ チ ャ ネル信号」 (ページ A-10) • 「読み出 し デー タ チ ャ ネル信号」 (ページ A-11) • 「AXI Master0 の ク ロ ッ ク イ ネーブル信号」 (ページ A-11) • AXI Master0 の書き込みア ド レ ス信号 AXI Master0 の AXI 書 き 込みア ド レ ス信号を、 表 A-8 に示 し ます。 表 A-8 AXI Master0 の AXI-AW 信号 名前 I/O ソ ース またはデス テ ィ ネーシ ョ ン 説明 AWADDRM0[31:0] O AXI シ ス テ ムデバ イ ス AWBURSTM0[1:0] O バース ト タ イ プ = b01、 INCR イ ン ク リ メ ン ト バース ト AWCACHEM0[3:0] O キ ャ ッ シ ュ タ イ プ。 メ モ リ 領域の メ モ リ タ イ プ と 外部 キ ャ ッ シ ュ 方式に よ っ て決定 さ れ る 、 キ ャ ッ シ ュ 可能属 性に関する 追加情報を提供 し ます。 AWIDM0[1:0] O 要求 ID ARM DDI 0388FJ ID013111 アドレス Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-8 信号の説明 表 A-8 AXI Master0 の AXI-AW 信号 (続き) 名前 I/O ソ ース またはデス テ ィ ネーシ ョ ン 説明 AWLENM0[3:0] O AXI シ ス テ ムデバ イ ス AWLOCKM0[1:0] O ロ ッ ク タ イプ AWPROTM0[2:0] O 保護 タ イ プ AWREADYM0 I ア ド レ ス準備完了 AWSIZEM0[1:0] O デー タ 転送サ イ ズ。 b000 = 8 ビ ッ ト 転送 b001 = 16 ビ ッ ト 転送 b010 = 32 ビ ッ ト 転送 b011 = 64 ビ ッ ト 転送 AWUSERM0[8:0] O [8] 早期 BRESP。 L2C-310 で使用 さ れます。 [7] 0 の フル ラ イ ン書 き 込み。 L2C-310 で使用 さ れます。 [6] ク リ ーニ ン グ退出 [5] レベル 1 退出 [4:1] メ モ リ タ イ プ と 内部キ ャ ッ シ ュ 方式 b0000 = ス ト ロ ン グ リ オーダ b0001 = デバ イ ス b0011 = ノ ーマル メ モ リ 、 キ ャ ッ シ ュ 不可 b0110 = ラ イ ト スルー b0111 = ラ イ ト バ ッ ク 、 書き 込み割 り 当てな し b1111 = ラ イ ト バ ッ ク 、 書き 込み割 り 当て [0] 共有 AWVALIDM0 O ア ド レ ス有効 各バース ト で生成可能なデー タ 転送数 書き込みデー タ チ ャ ネル信号 AXI Master0 の AXI 書 き 込みデー タ 信号を、 表 A-9 に示 し ます。 表 A-9 AXI Master0 の AXI-W 信号 ARM DDI 0388FJ ID013111 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 WDATAM0[63:0] O AXI シ ス テ ムデバ イ ス 書き 込むデー タ WIDM0[1:0] O 書き 込み ID WLASTM0 O 書き 込み最終指示 WREADYM0 I 書き 込み準備完了 WSTRBM0[7:0] O 書き 込みバ イ ト レーン ス ト ロ ーブ WVALIDM0 O 書き 込み有効 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-9 信号の説明 書き込み応答チ ャ ネル信号 AXI Master0 の AXI 書 き 込み応答信号を、 表 A-10 に示 し ます。 表 A-10 AXI Master0 の AXI-B 信号 名前 I/O ソ ースまたは デス テ ィ ネーシ ョ ン 説明 BIDM0[1:0] I AXI シ ス テ ムデバ イ ス 応答 ID BREADYM0 O 応答準備完了 BRESPM0[1:0] I 書 き 込み応答 BVALIDM0 I 応答有効 読み出 し デー タ チ ャ ネル信号 AXI Master0 の AXI 読み出 し ア ド レ ス信号を、 表 A-11 に示 し ます。 表 A-11 AXI Master0 の AXI-AR 信号 名前 I/O ソ ース またはデス テ ィ ネーシ ョ ン 説明 ARADDRM0[31:0] O AXI シ ス テ ムデバ イ ス アド レス ARBURSTM0[1:0] O バース ト タ イ プ。 b01 = INCR イ ン ク リ メ ン ト バース ト b10 = WRAP ラ ッ プバース ト ARCACHEM0[3:0] O キ ャ ッ シ ュ タ イ プで、 キ ャ ッ シ ュ 可能属性に関する 追加 情報を提供 し ます。 ARIDM0[1:0] O 要求 ID ARLENM0[3:0] O 各バース ト 内で発生可能なデー タ 転送の数 ARLOCKM0[1:0] O ロ ッ ク タ イプ ARPROTM0[2:0] O 保護 タ イ プ ARREADYM0 I ア ド レ ス準備完了 ARSIZEM0[1:0] O ARUSERM0[4:0] O [4:1] メ モ リ タ イ プ と 内部キ ャ ッ シ ュ 方式。 b0000 = ス ト ロ ン グ リ オーダ b0001 = デバ イ ス b0011 = ノ ーマル メ モ リ 、 キ ャ ッ シ ュ 不可 b0110 = ラ イ ト スルー b0111 = ラ イ ト バ ッ ク 、 書 き 込み割 り 当てな し b1111 = ラ イ ト バ ッ ク 、 書 き 込み割 り 当て [0] 共有 ARVALIDM0 O ア ド レ ス有効 ARM DDI 0388FJ ID013111 AXI シ ス テ ムデバ イ ス バース ト サ イ ズ。 b000 = 8 ビ ッ ト 転送 b001 = 16 ビ ッ ト 転送 b010 = 32 ビ ッ ト 転送 b011 = 64 ビ ッ ト 転送 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-10 信号の説明 読み出 し デー タ チ ャ ネル信号 AXI Master0 の AXI 読み出 し デー タ 信号を、 表 A-12 に示 し ます。 表 A-12 AXI Master0 の AXI-R 信号 名前 I/O ソ ース またはデス テ ィ ネーシ ョ ン 説明 RVALIDM0 I AXI シ ス テ ムデバ イ ス 読み出 し 有効 RDATAM0[63:0] I 読み出 し デー タ RRESPM0[1:0] I 読み出 し 応答 RLASTM0 I 読み出 し 最終指示 RIDM0[1:0] I 読み出 し ID RREADYM0 O 読み出 し 準備完了 AXI Master0 の ク ロ ッ ク イ ネーブル信号 こ こ では、 AXI Master0 の ク ロ ッ ク イ ネーブル信号について説明 し ます。 AXI Master0 の ク ロ ッ ク イ ネーブル信号を、 表 A-13 に示 し ます。 表 A-13 AXI Master0 のク ロ ッ ク イ ネーブル信号 名前 I/O ソ ース 説明 ACLKENM0 I ク ロ ッ ク コ ン ト ローラ AXI バス の ク ロ ッ ク イ ネーブルで、 AXI イ ン タ フ ェ ース を シ ス テ ム ク ロ ッ ク の整数比で動作可能に し ます。 「 ク ロ ッ ク と リ セ ッ ト 」 (ページ 2-6) を参照 し て下 さ い。 A.7.2 AXI Master1 信号の命令ア ク セス 次に示すセ ク シ ョ ン では、 命令ア ク セ ス に使用 さ れ る AXI Master1 イ ン タ フ ェース信 号について説明 し ます。 「読み出 し デー タ チ ャ ネル信号」 • • 「読み出 し デー タ チ ャ ネル信号」 (ページ A-13) 「AXI Master1 の ク ロ ッ ク イ ネーブル信号」 (ページ A-13) • 読み出 し デー タ チ ャ ネル信号 AXI Master1 の AXI 読み出 し ア ド レ ス信号を、 表 A-14 (ページ A-12) に示 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-11 信号の説明 表 A-14 AXI Master1 の AXI-AR 信号 名前 I/O デス テ ィ ネーシ ョ ン 説明 ARADDRM1[31:0] O AXI シ ス テ ムデバ イ ス アド レス ARBURSTM1[1:0] O バース ト タ イ プ。 b01 = INCR イ ン ク リ メ ン ト バース ト b10 = WRAP ラ ッ プバース ト ARCACHEM1[3:0] O キ ャ ッ シ ュ タ イ プで、 キ ャ ッ シ ュ 可能属性に関する 追加情報を提 供 し ます。 ARIDM1[5:0] O 要求 ID ARLENM1[3:0] O 各バース ト 内で発生可能なデー タ 転送の数 ARLOCKM1[1:0] O ロ ッ ク タ イ プ。 b00 = 通常ア ク セ ス ARPROTM1[2:0] O 保護 タ イ プ ARREADYM1 I ア ド レ ス準備完了 ARSIZEM1[1:0] O ARUSERM1[4:0] O [4:1] = 内部属性 b0000 = ス ト ロ ン グ リ オーダ b0001 = デバ イ ス b0011 = ノ ーマル メ モ リ 、 キ ャ ッ シ ュ 不可 b0110 = ラ イ ト スルー b0111 = ラ イ ト バ ッ ク 、 書 き 込み割 り 当てな し b1111 = ラ イ ト バ ッ ク 、 書 き 込み割 り 当て [0] = 共有 ARVALIDM1 O ア ド レ ス有効 ARM DDI 0388FJ ID013111 AXI シ ス テ ムデバ イ ス バース ト サ イ ズ。 b000 = 8 ビ ッ ト 転送 b001 = 16 ビ ッ ト 転送 b010 = 32 ビ ッ ト 転送 b011 = 64 ビ ッ ト 転送 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-12 信号の説明 読み出 し デー タ チ ャ ネル信号 AXI Master1 の AXI 読み出 し デー タ 信号を、 表 A-15 に示 し ます。 表 A-15 AXI Master1 の AXI-R 信号 名前 I/O ソ ースまたはデス テ ィ ネーシ ョ ン 説明 RVALIDM1 I AXI シ ス テ ムデバ イ ス 読み出 し 有効 RDATAM1[63:0] I 読み出 し デー タ RRESPM1[1:0] I 読み出 し 応答 RLASTM1 I 読み出 し 最終指示 RIDM1[5:0] I 読み出 し ID RREADYM1 O 読み出 し 準備完了 AXI Master1 の ク ロ ッ ク イ ネーブル信号 こ こ では、 AXI Master1 の ク ロ ッ ク イ ネーブル信号について説明 し ます。 AXI Master1 の ク ロ ッ ク イ ネーブル信号を、 表 A-16 に示 し ます。 表 A-16 AXI Master1 のク ロ ッ ク イ ネーブル信号 名前 I/O ソ ース 説明 ACLKENM1 I ク ロ ッ ク コ ン ト ローラ AXI バス の ク ロ ッ ク イ ネーブルで、 AXI イ ン タ フ ェ ース を シ ス テ ム ク ロ ッ ク の整数比で動作可能に し ます。 「 ク ロ ッ ク と リ セ ッ ト 」 (ページ 2-6) を参照 し て下 さ い。 第 8 章 レベル 2 メ モ リ イ ン タ フ ェース を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-13 信号の説明 A.8 パフ ォ ーマ ン ス監視信号 パフ ォ ーマ ン ス監視信号を、 表 A-17 に示 し ます。 表 A-17 パフ ォ ーマ ン ス監視信号 名前 I/O デス テ ィ ネーシ ョ ン 説明 PMUEVENT[57:0] O PTM ま たは外部監視 ユニ ッ ト パフ ォーマ ン ス監視ユニ ッ ト イ ベン ト バ ス。 表 A-18 を参照 し て 下 さ い。 PMUIRQ O パフ ォーマ ン ス監視ユニ ッ ト の割 り 込み信号 PMUSECURE O Cortex-A9 プ ロ セ ッ サの状態を示 し ます。 0 = 非セキ ュ ア状態 1 = セキ ュ ア状態 こ の信号は、 CoreSight ト レース配信 イ ン フ ラ ス ト ラ ク チ ャ に入 力 さ れません。 PMUPRIV O Cortex-A9 プ ロ セ ッ サの状態を示 し ます。 0 = ユーザモー ド 1 = 特権モー ド こ の信号は、 CoreSight ト レース配信 イ ン フ ラ ス ト ラ ク チ ャ に入 力 さ れません。 PMUEVENT 信号 と 、 その イ ベン ト 番号 と の関係を、 表 A-18 に示 し ます。 表 A-18 イ ベン ト 信号 と イ ベン ト 番号 名前 イ ベン ト 番号 説明 PMUEVENT[0] 0x00 ソフ ト ウェアインク リ メ ン ト PMUEVENT[1] 0x01 命令キ ャ ッ シ ュ ミ ス PMUEVENT[2] 0x02 命令マ イ ク ロ TLB ミ ス PMUEVENT[3] 0x03 デー タ キ ャ ッ シ ュ ミ ス PMUEVENT[4] 0x04 デー タ キ ャ ッ シ ュ ア ク セ ス PMUEVENT[5] 0x05 デー タ マ イ ク ロ TLB ミ ス PMUEVENT[6] 0x06 デー タ 読み出 し PMUEVENT[7] 0x07 デー タ 書 き 込み - 0x08 未使用a PMUEVENT[8] 0x68 b00 = ど の命令 も 名前変更 さ れません。 b01 = 1 つの命令が名前変更 さ れます。 b10 = 2 つの命令が名前変更 さ れます。 PMUEVENT[10] 0x09 例外検出 PMUEVENT[11] 0x0A 例外か ら の復帰 PMUEVENT[12] 0x0B 書 き 込み コ ン テ キ ス ト ID PMUEVENT[13] 0x0C ソ フ ト ウ ェ アでの PC 変更 PMUEVENT[14] 0x0D イ ミ デ ィ エー ト 分岐 - 0x0E 未使用b PMUEVENT[15] 0x6E 予測可能な関数か ら の復帰b PMUEVENT[9] ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-14 信号の説明 表 A-18 イ ベン ト 信号 と イ ベン ト 番号 (続き) 名前 イ ベン ト 番号 説明 PMUEVENT[16] 0x0F アンア ラ イ ン ド PMUEVENT[17] 0x10 予測に失敗 し たか、 予測 さ れなかっ た分岐 エ ク ス ポー ト な し 0x11 サ イ ク ルカ ウ ン ト PMUEVENT[18] 0x12 予測可能な分岐 PMUEVENT[19] 0x40 Java バ イ ト コ ー ド PMUEVENT[20] 0x41 ソ フ ト ウ ェ ア Java バ イ ト コ ー ド PMUEVENT[21] 0x42 Jazelle 後方分岐 PMUEVENT[22] 0x50 コ ヒ ーレ ン ト ラ イ ン フ ィ ル ミ ス c PMUEVENT[23] 0x51 コ ヒ ーレ ン ト ラ イ ン フ ィ ル ヒ ッ ト c PMUEVENT[24] 0x60 命令キ ャ ッ シ ュ 依存ス ト ール PMUEVENT[25] 0x61 デー タ キ ャ ッ シ ュ 依存ス ト ール PMUEVENT[26] 0x62 メ イ ン TLB ミ ス ス ト ール PMUEVENT[27] 0x63 STREX 成功 PMUEVENT[28] 0x64 STREX 失敗 PMUEVENT[29] 0x65 デー タ 退出 PMUEVENT[30] 0x66 発行に よ り 命令がデ ィ スパ ッ チ さ れない PMUEVENT[31] 0x67 発行が空 PMUEVENT[32] 0x70 メ イ ン実行ユニ ッ ト パ イ プ PMUEVENT[33] 0x71 第 2 実行ユニ ッ ト パ イ プ PMUEVENT[34] 0x72 ロ ー ド / ス ト アパ イ プ PMUEVENT[35] 0x73 b00 = ど の浮動小数点命令 も 名前変更 さ れません。 b01 = 1 つの浮動小数点命令が名前変更 さ れます。 b10 = 2 つの浮動小数点命令が名前変更 さ れます。 0x74 b00 = ど の NEON 命令 も 名前変更 さ れません。 b01 = 1 つの NEON 命令が名前変更 さ れます。 b10 = 2 つの NEON 命令が名前変更 さ れます。 PMUEVENT[39] 0x80 PLD ス ト ール PMUEVENT[40] 0x81 書 き 込みス ト ール PMUEVENT[41] 0x82 命令 メ イ ン TLB ミ ス ス ト ール PMUEVENT[42] 0x83 デー タ メ イ ン TLB ミ ス ス ト ール PMUEVENT[43] 0x84 命令マ イ ク ロ TLB ミ ス ス ト ール PMUEVENT[44] 0x85 デー タ マ イ ク ロ TLB ミ ス ス ト ール PMUEVENT[45] 0x86 DMB ス ト ール PMUEVENT[46] 0x8A 整数 コ ア ク ロ ッ ク 稼働 PMUEVENT[47] 0x8B デー タ エン ジ ン ク ロ ッ ク 稼働 PMUEVENT[48] 0x90 ISB PMUEVENT[36] PMUEVENT[37] PMUEVENT[38] ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-15 信号の説明 表 A-18 イ ベン ト 信号 と イ ベン ト 番号 (続き) 名前 イ ベン ト 番号 説明 PMUEVENT[49] 0x91 DSB PMUEVENT[50] 0x92 DMB PMUEVENT[51] 0x93 外部割 り 込み PMUEVENT[52] 0xA0 PLE キ ャ ッ シ ュ ラ イ ン要求の完了 PMUEVENT[53] 0xA1 PLE キ ャ ッ シ ュ ラ イ ン要求の ス キ ッ プ PMUEVENT[54] 0xA2 PLE FIFO フ ラ ッ シ ュ PMUEVENT[55] 0xA3 完了 し た PLE 要求 PMUEVENT[56] 0xA4 PLE FIFO オーバフ ロ ー PMUEVENT[57] 0xA5 プ ロ グ ラ ム さ れた PLE 要求 a. Cortex-A9 プ ロ セ ッ サでは生成 さ れません。 同様の イ ベン ト 0x68 に置 き 換え ら れてい ます。 b. Cortex-A9 プ ロ セ ッ サでは生成 さ れません。 同様の イ ベン ト 0x6E に置 き 換え ら れてい ます。 c. マルチプ ロ セ ッ サ構成で使用 さ れます。 「Cortex-A9 固有の イ ベン ト 」 (ページ 11-7) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-16 信号の説明 A.9 例外フ ラ グ信号 DEFLAGS 信号を、 表 A-19 に示 し ます。 表 A-19 DEFLAGS 信号 名前 I/O デス テ ィ ネーシ ョ ン 説明 DEFLAGS[6:0] O 例外監視ユニ ッ ト デー タ エン ジ ン出力フ ラ グ。 Cortex-A9 プ ロ セ ッ サにデー タ エ ン ジ ン (MPE ま たは FPU) が内蔵 さ れてい る 場合にのみ実装 さ れます。 DE が MPE の場合、 ビ ッ ト は次の意味です。 • ビ ッ ト [6] が FPSCR[27] の値を示 し ます。 • ビ ッ ト [5] が FPSCR[7] の値を示 し ます。 • ビ ッ ト [4:0] が FPSCR[4:0] の値を示 し ます。 DE が FPU の場合、 ビ ッ ト は次の意味です。 • ビ ッ ト [6] は 0 です。 • ビ ッ ト [5] が FPSCR[7] の値を示 し ます。 • ビ ッ ト [4:0] が FPSCR[4:0] の値を示 し ます。 FPSCR の詳細については、 『Cortex-A9 浮動小数点ユニ ッ ト (FPU) テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 と 『Cortex-A9 NEON® メ デ ィ ア処理エ ン ジ ン テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-17 信号の説明 A.10 パ リ テ ィ 信号 パ リ テ ィ 信号を、 表 A-20 に示 し ます。 こ の信号はパ リ テ ィ が定義 さ れてい る 場合の み存在 し ます。 「パ リ テ ィ エ ラ ーのサポー ト 」 (ページ 7-11) を参照 し て下 さ い。 表 A-20 パ リ テ ィ 信号 ARM DDI 0388FJ ID013111 名前 I/O デス テ ィ ネーシ ョ ン 説明 PARITYFAIL[7:0] O パ リ テ ィ 監視デバ イ ス RAM ア レ イ か ら のパ リ テ ィ 出力ピ ン。 0 = パ リ テ ィ エ ラ ーな し 1 = パ リ テ ィ エ ラ ーあ り ビ ッ ト [7] BTAC パ リ テ ィ エ ラ ー ビ ッ ト [6] GHB パ リ テ ィ エ ラ ー ビ ッ ト [5] 命令 タ グ RAM パ リ テ ィ エ ラ ー ビ ッ ト [4] 命令デー タ RAM パ リ テ ィ エ ラ ー ビ ッ ト [3] メ イ ン TLB パ リ テ ィ エ ラ ー ビ ッ ト [2] D 外部 RAM パ リ テ ィ エ ラ ー ビ ッ ト [1] デー タ タ グ RAM パ リ テ ィ エ ラ ー ビ ッ ト [0] デー タ デー タ RAM パ リ テ ィ エ ラ ー Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-18 信号の説明 A.11 MBIST イ ン タ フ ェ ース MBIST イ ン タ フ ェ ース信号を、 表 A-21 に示 し ます。 こ れ ら の信号は、 BIST イ ン タ フ ェ ース が存在す る 場合にのみ存在 し ます。 表 A-21 MBIST イ ン タ フ ェ ース信号 名前 I/O ソ ース 説明 MBISTADDR[10:0] I MBIST コ ン ト ロ ー ラ MBIST ア ド レ スバ ス MBISTARRAY[19:0] I RAM のテ ス ト に使用 さ れ る MBIST アレ イ MBISTENABLE I MBIST テ ス ト イ ネーブル MBISTWRITEEN I グ ロ ーバル書き 込み イ ネーブル MBISTREADEN I グ ロ ーバル読み出 し イ ネーブル 一部の MBIST 信号のサ イ ズは、 実装でパ リ テ ィ サポー ト がサポー ト さ れてい る か ど う かに よ っ て異な り ます。 パ リ テ ィ サポー ト が実装 さ れてい る 場合の こ れ ら の信号 を、 表 A-22 に示 し ます。 表 A-22 パ リ テ ィ サポー ト が実装 さ れている場合の MBIST 信号 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 MBISTBE[32:0] I MBIST コ ン ト ロ ー ラ MBIST 書 き 込み イ ネーブル MBISTINDATA[71:0] I MBIST デー タ 入力 MBISTOUTDATA[71:0] O MBIST デー タ 出力 パ リ テ ィ サポー ト が実装 さ れていない場合の こ れ ら の信号を、 表 A-23 に示 し ます。 表 A-23 パ リ テ ィ サポー ト が実装 さ れていない場合の MBIST 信号 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 MBISTBE[25:0] I MBIST コ ン ト ロ ー ラ MBIST 書 き 込み イ ネーブル MBISTINDATA[63:0] I MBIST デー タ 入力 MBISTOUTDATA[63:0] O MBIST デー タ 出力 MBIST については、 『Cortex-A9 r0p0 MBIST テ ク ニ カル リ フ ァ レ ン ス マニ ュ アル』 を 参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-19 信号の説明 A.12 スキ ャ ン テ ス ト 信号 ス キ ャ ン テ ス ト 信号を、 表 A-24 に示 し ます。 表 A-24 スキ ャ ン テ ス ト 信号 ARM DDI 0388FJ ID013111 名前 I/O デス テ ィ ネーシ ョ ン 説明 SE I DFT コ ン ト ロ ー ラ ス キ ャ ン イ ネーブル。 0 = 不可能 1 = 可能 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-20 信号の説明 A.13 外部デバ ッ グ イ ン タ フ ェ ース 次に示すセ ク シ ョ ン では、 外部デバ ッ グ イ ン タ フ ェース信号について説明 し ます。 「認証 イ ン タ フ ェース」 • • 「APB イ ン タ フ ェース信号」 (ページ A-22) 「CTI 信号」 (ページ A-22) • • 「その他のデバ ッ グ イ ン タ フ ェース信号」 (ページ A-23) A.13.1 認証イ ン タ フ ェ ース 認証 イ ン タ フ ェース信号を、 表 A-25 に示 し ます。 表 A-25 認証イ ン タ フ ェ ース信号 ARM DDI 0388FJ ID013111 名前 I/O ソ ース 説明 DBGEN I セキ ュ リ テ ィ コ ン ト ローラ 侵襲性デバ ッ グ イ ネーブル。 0 = 不可能 1 = 可能 NIDEN I 非侵襲性デバ ッ グ イ ネーブル。 0 = 不可能 1 = 可能 SPIDEN I セキ ュ ア特権侵襲性デバ ッ グ イ ネーブル。 0 = 不可能 1 = 可能 SPNIDEN I セキ ュ ア特権非侵襲性デバ ッ グ イ ネーブル。 0 = 不可能 1 = 可能 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-21 信号の説明 A.13.2 APB イ ン タ フ ェ ース信号 APB イ ン タ フ ェ ース信号を、 表 A-26 に示 し ます。 表 A-26 APB イ ン タ フ ェ ース信号 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン PENABLEDBG I CoreSight APB デバ イ ス APB ク ロ ッ ク イ ネーブル PRDATADBG[31:0] O APB 読み出 し デー タ バ ス PSELDBG I デバ ッ グ レ ジ ス タ の選択。 0 = デバ ッ グ レ ジ ス タ が選択 さ れません。 1 = デバ ッ グ レ ジ ス タ が選択 さ れます。 PSLVERRDBG O APB ス レーブエ ラ ー信号 PWRITEDBG I APB 読み出 し / 書 き 込み信号 PADDRDBG[12:2] I プロ グ ラ ミ ングア ド レ ス PADDRDBG31 I APB ア ド レ スバ ス のビ ッ ト [31]。 0 = 外部デバ ッ ガのア ク セ ス ではあ り ません。 1 = 外部デバ ッ ガのア ク セ ス です。 PREADYDBG O APB ス レーブ準備完了。 APB ス レーブは PREADY を アサー ト し て転送を延長で き ます。 PWDATADBG[31:0] I APB 書 き 込みデー タ A.13.3 説明 CTI 信号 CTI 信号を、 表 A-27 に示 し ます。 表 A-27 CTI 信号 ソ ース または デス テ ィ ネーシ ョ ン 説明 外部デバ ッ ガ ま たは CoreSight 相互接続 外部デバ ッ グ要求。 0 = 外部デバ ッ グ要求な し 1 = 外部デバ ッ グ要求あ り プ ロ セ ッ サは EDBGRQ 入力を レベル感知 と し て扱い ます。 EDBGRQ 入力は、 プ ロ セ ッ サで DBGACK がアサー ト さ れ る ま でアサー ト し てお く 必要があ り ます。 名前 I/O EDBGRQ I DBGACK O デバ ッ グ応答信号 DBGCPUDONE O Cortex-A9 プ ロ セ ッ サか ら 発行 さ れたすべての メ モ リ ア ク セ ス が、 デバ ッ ガで実行 さ れた操作に よ る も のであ る こ と を示 し ま す。 ア ク テ ィ ブ HIGH。 DBGRESTART I コ アがデバ ッ グ状態を終了 し ます。 DBGRESTARTED がアサー ト 解除 さ れ る ま で HIGH に保つ必要があ り ます。 0 = 不可能 1 = 可能 DBGRESTARTED O デバ ッ グ状態 と 通常状態 と の間を移行す る ため、 DBGRESTART と と も に使用 さ れます。 0 = 不可能 1 = 可能 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-22 信号の説明 A.13.4 その他のデバ ッ グ イ ン タ フ ェ ース信号 その他のデバ ッ グ イ ン タ フ ェース信号を、 表 A-28 に示 し ます。 表 A-28 その他のデバ ッ グ信号 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 COMMRX O デバ ッ グ通信チ ャ ネル 通信チ ャ ネル受信 デー タ 転送レ ジ ス タ フルフ ラ グの受信部分。 0=空 1 = フル COMMTX O デバ ッ グ通信チ ャ ネル 通信チ ャ ネル送信 デー タ 転送レ ジ ス タ フルフ ラ グの送信部分。 0=空 1 = フル DBGNOPWRDWN O デバ ッ ガ デバ ッ ガが、 Cortex-A9 プ ロ セ ッ サ を電力オ フ に し ない よ う 要求 し ま し た。 DBGSWENABLE I 外部デバ ッ ガ LOW の場合は、 外部デバ ッ グエージ ェ ン ト でのみデバ ッ グ レ ジ ス タ を変更で き ます。 0 = 不可能 1 = 可能 DBGROMADDR[31:12] I シ ス テ ム構成 ROM テーブルの物理ア ド レ ス の ビ ッ ト [31:12] を示 し ます。 ア ド レ ス が決定で き ない場合は、 こ の信号を 0 に固定 し ます。 DBGROMADDRV I DBGROMADDR の有効信号。 ア ド レ スが決定で き ない場合は、 こ の信号を LOW に固定し ます。 DBGSELFADDR[31:15] I ROM テーブルの物理ア ド レ ス か ら 、 デバ ッ グ レ ジ ス タ が メ モ リ マ ッ プ さ れ る 物理ア ド レ ス ま での、 符号付き 2 の補数形式のオ フ セ ッ ト の、 ビ ッ ト [31:15] を示 し ます。 オ フ セ ッ ト が決定で き ない場合は、 こ の信号を 0 に固定 し ます。 DBGSELFADDRV I DBGSELFADDR の有効信号。 オフセ ッ ト が決定でき ない場合は、 この信号を LOW に固定し ます。 第 10 章 デバ ッ グ を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-23 信号の説明 A.14 PTM イ ン タ フ ェ ース信号 PTM イ ン タ フ ェース信号を、 表 A-29 に示 し ます。 こ れ ら の信号は、 PTM イ ン タ フ ェ ース が存在す る 場合にのみ存在 し ます。 I/O 列の I は、 PTM イ ン タ フ ェース か ら Cortex-A9 プ ロ セ ッ サへの入力を示 し ます。 O は、 Cortex-A9 プ ロ セ ッ サか ら PTM への出力を示 し ます。 こ れ ら の信号はすべて、 Cortex-A9 ク ロ ッ ク ド メ イ ン に存在 し ます。 表 A-29 PTM イ ン タ フ ェ ース信号 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 WPTCOMMIT[1:0] O PTM デバ イ ス こ のサ イ ク ルを コ ミ ッ ト し た ウ ェ イ ポ イ ン ト の数。 有効な ウ ェ イ ポ イ ン ト を示 し 、 同 じ サ イ ク ル内で コ ミ ッ ト する こ と がで き ます。 WPTCONTEXTID[31:0] O ウ ェ イ ポ イ ン ト の コ ン テ キ ス ト ID。 こ の信号は、 ウ ェ イ ポ イ ン ト の条件 コ ー ド に関係な く 、 TRUE にす る 必要があ り ます。 コ ア コ ン テ キ ス ト ID が設定 さ れていない場合は、 WPTCONTEXTID[31:0] で 0 を報告す る 必要があ り ます。 WPTENABLE I ウ ェ イ ポ イ ン ト イ ネーブル WPTEXCEPTIONTYPE[3:0] O 例外 タ イ プ。 b0001 = ホール ト デバ ッ グモー ド b0010 = セキ ュ アモニ タ b0100 = 不正確データ アボー ト b0101 = T2EE ト ラ ッ プ b1000 = リ セ ッ ト b1001 = 未定義 b1010 = SVC b1011 = プ リ フ ェ ッ チアボー ト / ソ フ ト ウ ェ アブレーク ポ イ ン ト b1100 = 正確データ アボー ト / ソ フ ト ウ ェ ア ウ ォ ッ チポ イ ン ト b1110 = IRQ b1111 = FIQ WPTFLUSH O ウ ェ イ ポ イ ン ト フ ラ ッ シ ュ 信号 WPTLINK O ウ ェ イ ポ イ ン ト は分岐で、 リ ン ク レ ジ ス タ を更新 し ます。 WPTTYPE が直接分岐ま たは間接分岐の場合のみ HIGH にな り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-24 信号の説明 表 A-29 PTM イ ン タ フ ェ ース信号 (続き) 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 WPTPC[31:0] O PTM デバ イ ス ウ ェ イ ポ イ ン ト の最終実行ア ド レ ス イ ン ジ ケー タ 。 こ れは、 例外が発生 し た場合のベース リ ン ク レ ジ ス タ です。 ウ ェ イ ポ イ ン ト が リ セ ッ ト 例外の場合は 0 と 一致 し ます。 WPTT32LINK O Thumb 状態で最後に実行 さ れたア ド レ ス のサ イ ズ を示し ます。 0 = 16 ビ ッ ト 命令 1 = 32 ビ ッ ト 命令 WPTTAKEN O ウ ェ イ ポ イ ン ト の条件 コ ー ド が成功 し ま し た。 ア ド レ ス は、 こ の信号の値にかかわ ら ず使用 さ れます。 すべての ウ ェ イ ポ イ ン ト 例外分岐についてセ ッ ト す る 必要が あ り ます。 WPTTARGETJBIT O ウ ェ イ ポ イ ン ト デス テ ィ ネーシ ョ ンの J ビ ッ ト WPTTARGETPC[31:0] O ウ ェ イ ポ イ ン ト タ ーゲ ッ ト ア ド レ ス。 T ビ ッ ト が 0 の場合、 ビ ッ ト [1] を 0 にす る 必要があ り ます。 J ビ ッ ト が 0 の場合、 ビ ッ ト [0] を 0 にする 必要があ り ます。 WPTTYPE が禁止 さ れてい る か、 デバ ッ グの場合、 こ の値は 0 です。 WPTTARGETTBIT O ウ ェ イ ポ イ ン ト デス テ ィ ネーシ ョ ンの T ビ ッ ト WPTTRACEPROHIBITED O WPTTYPE[2:0] O PTM デバ イ ス 現在の ウ ェ イ ポ イ ン ト タ ーゲ ッ ト に対す る ト レース が禁止 さ れます。 禁止 さ れた領域へのエン ト リ を示 し ます。 ト レース が再開 さ れ る ま で、 ウ ェ イ ポ イ ン ト は ト レース さ れません。 NIDEN と DBGEN の両方が LOW の場合、 フ ラ イ ト 中の ウ ェ イ ポ イ ン ト が コ ア を出た後に、 こ の信号を恒久的にアサー ト す る 必要があ り ます。 入力の変化がサンプ リ ン グ さ れた こ と を保証す る には、 例外ま たはシ リ アル分岐が必要です。 WPTTRACEPROHIBITED がセ ッ ト さ れた状態で、 WPTVALID が観測 さ れ る のは 1 サ イ ク ルだけにする 必要が あ り ます。 こ の ウ ェ イ ポ イ ン ト で ト レース は停止 し 、 観測 さ れ る 次の ウ ェ イ ポ イ ン ト は Isync パケ ッ ト です。 ト レース で使用 さ れ る パケ ッ ト については、 『CoreSight PTM アーキ テ ク チ ャ仕様』 を参照 し て下 さ い。 ウ ェ イポイン ト タ イプ b000 = 直接分岐 b001 = 間接分岐 b010 = 例外 b011 = DMB/DSB/ISB b100 = デバ ッ グ開始 b101 = デバ ッ グ終了 b110 = 無効 b111 = 無効 デバ ッ グ開始の後には、 デバ ッ グ終了が続 く 必要があ り ます。 注 デバ ッ グ終了は命令の実行を反映 し ません。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-25 信号の説明 表 A-29 PTM イ ン タ フ ェ ース信号 (続き) 名前 I/O ソ ース または デス テ ィ ネーシ ョ ン 説明 WPTVALID O PTM デバ イ ス ウ ェ イ ポ イ ン ト が有効であ る こ と が確認 さ れます。 WPTnSECURE O 現在の ウ ェ イ ポ イ ン ト に続 く 命令が、 非セキ ュ ア状態で実行 さ れます。 NS ビ ッ ト がセ ッ ト さ れ、 プ ロ セ ッ サがセキ ュ ア モニ タ モー ド でない場合、 命令は非セキ ュ ア状態です。 セキ ュ リ テ ィ 拡張機能については、 「シ ス テ ム制御について」 (ページ 4-2) を参照 し て下 さ い。 WPTFIFOEMPTY O PTM イ ン タ フ ェ ース の FIFO に、 投機的ウ ェ イ ポ イ ン ト が存 在 し ません。 「 イ ン タ フ ェース」 (ページ 2-4) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential A-26 付録 B 命令サイ クル タ イ ミ ング 本章では、 Cortex-A9 プ ロ セ ッ サの整数命令のサ イ ク ル タ イ ミ ン グについて説明 し ます。 本章は次のセ ク シ ョ ン か ら 構成 さ れてい ます。 • 「命令のサ イ ク ル タ イ ミ ン グについて」 (ページ B-2) 「デー タ 処理命令」 (ページ B-3) • • 「 ロ ー ド / ス ト ア命令」 (ページ B-4) 「乗算命令」 (ページ B-7) • 「分岐命令」 (ページ B-8) • 「直列化命令」 (ページ B-9) • ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-1 命令サイ クル タ イ ミ ング B.1 命令のサイ クル タ イ ミ ングについて 本章では、 特定の コ ー ド シーケ ン ス に必要な実行時間を見積 も る ための情報を提供 し ます。 Cortex-A9 プ ロ セ ッ サの複雑 さ のため、 手動で正確な タ イ ミ ン グ情報を計算 す る こ と は不可能です。 命令 タ イ ミ ン グは、 多 く の場合、 同時に実行 さ れてい る 命 令、 メ モ リ シ ス テ ム の動作、 お よ び命令フ ロ ー以外の イ ベン ト の影響を受け ます。 可能性のあ る 命令の相互作用 と 、 プ ロ セ ッ サ内で発生す る 可能性のあ る イ ベン ト の 詳細な説明は、 本書の範囲を越え てい ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-2 命令サイ クル タ イ ミ ング B.2 デー タ 処理命令 デー タ 処理命令の実行ユニ ッ ト サ イ ク ル時間を、 表 B-1 に示 し ます。 表 B-1 に示 さ れてい る のは、 次の よ う な場合です。 ソ ース レ ジ ス タ 上のシ フ ト な し 例 : ADD r0, r1, r2 イ ミ デ ィ エー ト ソ ース レ ジ ス タ に よ る シ フ ト 例 : ADD r0, r1, r2 LSL #2 レジス タによ るシフ ト 例 : ADD r0, r1, r2 LSL r3 表 B-1 デー タ 処理命令のサイ ク ル タ イ ミ ング シ フ ト の種類 命令 シフ ト なし 定数 レ ジス タ MOV 1 1 2 AND, EOR, SUB, RSB, ADD, ADC, SBC, RSC, CMN, ORR, BIC, MVN, TST, TEQ, CMP 1 2 3 QADD, QSUB, QADD8, QADD16, QSUB8, QSUB16, SHADD8, SHADD16, SHSUB8, SHSUB16, UQADD8, UQADD16, UQSUB8, UQSUB16, UHADD8, UHADD16, UHSUB8, UHSUB16, QASX, QSAX, SHASX, SHSAX, UQASX, UQSAX, UHASX, UHSAX 2 - - QDADD, QDSUB, SSAT, USAT 3 - - PKHBT, PKHTB 1 2 - SSAT16, USAT16, SADD8, SADD16, SSUB8, SSUB16,UADD8, UADD16, USUB8, USUB16, SASX, SSAX, UASX, USAX 1 - - SXTAB, SXTAB16, SXTAH, UXTAB, UXTAB16, UXTAH 3 - - SXTB, STXB16, SXTH, UXTB, UTXB16, UXTH 2 - - BFC, BFI, UBFX, SBFX 2 - - CLZ, MOVT, MOVW, RBIT, REV, REV16, REVSH, MRS 1 - - モー ド ビ ッ ト ま たは制御ビ ッ ト を変更 し ない MSR 1 - - 「直列化命令」 (ページ B-9) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-3 命令サイ クル タ イ ミ ング B.3 ロー ド / ス ト ア命令 ロ ー ド / ス ト ア命令は次の よ う に分類 さ れ ます。 LDR 命令な ど の単一 ロ ー ド / ス ト ア命令 • LDM 命令な ど の複数 ロ ー ド / ス ト ア命令 • 複数 ロ ー ド お よ び複数ス ト ア命令では、 通常は、 レ ジ ス タ リ ス ト 内の レ ジ ス タ の数 に よ っ て、 ロ ー ド ま たは ス ト ア命令の実行に必要なサ イ ク ル数が決定 さ れます。 Cortex-A9 プ ロ セ ッ サには、 ロ ー ド 命令か ら 後続のデー タ 処理命令にデー タ を直接転 送す る 特別なパ ス が、 実行ユニ ッ ト に存在 し ます。 こ のパ ス は、 次の条件が満た さ れた と き に使用 さ れます。 • データ処理命令が、 SUB、 RSB、 ADD、 ADC、 SBC、 RSC、 CMN、 MVN、 CMP のいずれかであ る。 • 転送 さ れ る ソ ース レ ジ ス タ が、 シ フ ト 操作に含ま れていない。 単一 ロ ー ド / ス ト ア操作のサ イ ク ル タ イ ミ ン グ を、 表 B-2 に示 し ます。 結果レ イ テ ン シは、 最初に ロ ー ド さ れ る レ ジ ス タ の レ イ テ ン シです。 表 B-2 単一ロー ド / ス ト ア操作のサイ ク ル タ イ ミ ング 結果レ イ テ ン シ 命令サイ ク ル LDR ,[reg] AGU サイ クル 高速転送の場合 その他の場合 1 2 3 1 3 4 2 3 4 2 4 5 LDR ,[reg imm] LDR ,[reg reg] LDR ,[reg reg LSL #2] LDR ,[reg reg LSL reg] LDR ,[reg reg LSR reg] LDR ,[reg reg ASR reg] LDR ,[reg reg ROR reg] LDR ,[reg reg, RRX] LDRB LDRB LDRB LDRB LDRH LDRH LDRH LDRH ,[reg] ,[reg imm] ,[reg reg] ,[reg reg LSL #2] ,[reg] ,[reg imm] ,[reg reg] ,[reg reg LSL #2] LDRB ,[reg reg LSL reg] LDRB ,[reg reg ASR reg] LDRB ,[reg reg LSL reg] LDRB ,[reg reg ASR reg] LDRH ,[reg reg LSL reg] LDRH ,[reg reg ASR reg] LDRH ,[reg reg LSL reg] LDRH ,[reg reg ASR reg] Cortex-A9 プ ロ セ ッ サは、 サ イ ク ルご と に 2 つの 32 ビ ッ ト レ ジ ス タ を ロ ー ド ま たは ス ト アで き ます。 ただ し 、 64 ビ ッ ト にア ク セ スす る には、 ア ド レ ス を 64 ビ ッ ト ア ラ イ ン ド にす る 必要があ り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-4 命令サイ クル タ イ ミ ング こ の ス ケ ジ ュ ー リ ン グは、 ア ド レ ス生成ユニ ッ ト (AGU) で実行 さ れます。 AGU で複 数 ロ ー ド ま たは複数ス ト ア操作を処理す る ために必要なサ イ ク ル数は、 レ ジ ス タ リ ス ト の長 さ と 、 ア ド レ ス が 64 ビ ッ ト ア ラ イ ン ド か ど う かに よ っ て異な り ます。 結果 レ イ テ ン シは、 最初に ロ ー ド さ れ る レ ジ ス タ の レ イ テ ン シです。 複数 ロ ー ド 操作のサ イ ク ル タ イ ミ ン グ を、 表 B-3 に示 し ます。 表 B-3 複数ロー ド 操作のサイ ク ル タ イ ミ ング 命令を処理する ための AGU サイ クル数 命令 結果レ イ テ ン シ 64 ビ ッ ト 境界にア ラ イ ン さ れたア ド レ ス 高速転送の場合 その他の場合 1 2 3 1 2 2 3 LDM ,{ 対象レ ジ ス タ 3 個 } 2 2 2 3 LDM ,{ 対象レ ジ ス タ 4 個 } 2 3 2 3 LDM ,{ 対象レ ジ ス タ 5 個 } 3 3 2 3 LDM ,{ 対象レ ジ ス タ 6 個 } 3 4 2 3 LDM ,{ 対象レ ジ ス タ 7 個 } 4 4 2 3 LDM ,{ 対象レ ジ ス タ 8 個 } 4 5 2 3 LDM ,{ 対象レ ジ ス タ 9 個 } 5 5 2 3 LDM ,{ 対象レ ジ ス タ 10 個 } 5 6 2 3 LDM ,{ 対象レ ジ ス タ 11 個 } 6 6 2 3 LDM ,{ 対象レ ジ ス タ 12 個 } 6 7 2 3 LDM ,{ 対象レ ジ ス タ 13 個 } 7 7 2 3 LDM ,{ 対象レ ジ ス タ 14 個 } 7 8 2 3 LDM ,{ 対象レ ジ ス タ 15 個 } 8 8 2 3 LDM ,{ 対象レ ジ ス タ 16 個 } 8 9 2 3 はい いいえ LDM ,{ 対象レ ジ ス タ 1 個 } 1 LDM ,{ 対象レ ジ ス タ 2 個 } LDRD RFE ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-5 命令サイ クル タ イ ミ ング 複数ス ト ア操作のサ イ ク ル タ イ ミ ン グ を、 表 B-4 に示 し ます。 表 B-4 複数ス ト ア操作のサイ ク ル タ イ ミ ング AGU サイ クル 命令 64 ビ ッ ト 境界にア ラ イ ン し ている はい いいえ STM ,{ 対象レ ジ ス タ 1 個 } 1 1 STM ,{ 対象レ ジ ス タ 2 個 } 1 2 STM ,{ 対象レ ジ ス タ 3 個 } 2 2 STM ,{ 対象レ ジ ス タ 4 個 } 2 3 STM ,{ 対象レ ジ ス タ 5 個 } 3 3 STM ,{ 対象レ ジ ス タ 6 個 } 3 4 STM ,{ 対象レ ジ ス タ 7 個 } 4 4 STM ,{ 対象レ ジ ス タ 8 個 } 4 5 STM ,{ 対象レ ジ ス タ 9 個 } 5 5 STM ,{ 対象レ ジ ス タ 10 個 } 5 6 STM ,{ 対象レ ジ ス タ 11 個 } 6 6 STM ,{ 対象レ ジ ス タ 12 個 } 6 7 STM ,{ 対象レ ジ ス タ 13 個 } 7 7 STM ,{ 対象レ ジ ス タ 14 個 } 7 8 STM ,{ 対象レ ジ ス タ 15 個 } 8 8 STM ,{ 対象レ ジ ス タ 16 個 } 8 9 STRD SRS ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-6 命令サイ クル タ イ ミ ング B.4 乗算命令 乗算命令のサ イ ク ル タ イ ミ ン グ を、 表 B-4 (ページ B-6) に示 し ます。 表 B-5 乗算命令のサイ ク ル タ イ ミ ング 命令 サイ ク ル数 結果レ イ テ ン シ MUL(S), MLA(S) 2 4 SMULL(S), UMULL(S), SMLAL(S), UMLAL(S) 3 4 (最初に書 き 込まれ る レ ジ ス タ ) 5 (2 番目に書き 込まれ る レ ジ ス タ ) SMULxy, SMLAxy, SMULWy, SMLAWy 1 3 SMLALxy 2 3 (最初に書 き 込まれ る レ ジ ス タ ) 4 (2 番目に書き 込まれ る レ ジ ス タ ) SMUAD, SMUADX, SMLAD, SMLADX, SMUSD, SMUSDX, SMLSD, SMLSDX 1 3 SMMUL, SMMULR, SMMLA, SMMLAR, SMMLS, SMMLSR 2 4 SMLALD, SMLALDX, SMLSLD, SMLDLDX 2 3 (最初に書 き 込まれ る レ ジ ス タ ) 4 (2 番目に書き 込まれ る レ ジ ス タ ) UMAAL 3 4 (最初に書 き 込まれ る レ ジ ス タ ) 5 (2 番目に書き 込まれ る レ ジ ス タ ) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-7 命令サイ クル タ イ ミ ング B.5 分岐命令 分岐命令には さ ま ざ ま な タ イ ミ ン グ特性があ り ます。 • イ ミ デ ィ エー ト 位置への分岐命令は、 実行ユニ ッ ト サ イ ク ルを消費 し ません。 • PC レ ジ ス タ に対す る デー タ 処理命令は、 標準の命令 と し て実行ユニ ッ ト で処 理 さ れ ます。 「デー タ 処理命令」 (ページ B-3) を参照 し て下 さ い。 • PC レ ジ ス タ への ロ ー ド 命令は、 標準の命令 と し て実行ユニ ッ ト で処理 さ れま す。 「 ロ ー ド / ス ト ア命令」 (ページ B-4) を参照 し て下 さ い。 ま た、 動的分岐予測の詳細については、 「レベル 1 命令側 メ モ リ シ ス テ ムについて」 (ページ 7-5) を参照 し て下 さ い。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-8 命令サイ クル タ イ ミ ング B.6 直列化命令 ア ウ ト オブオーダ実行はいつで も 使用で き る わけではあ り ません。 命令に よ っ ては 直列化す る 場合があ り ます。 直列化命令は、 プ ロ セ ッ サに対 し て、 次の命令が実行 さ れ る 前に、 フ ラ グ と 汎用レ ジ ス タ に対す る すべての変更を完了す る よ う に強制 し ます。 こ こ では、 直列化命令の タ イ ミ ン グ を一覧表で示 し ます。 B.6.1 直列化命令 次の例外開始命令は直列化命令です。 • SVC SMC • BKPT • • プ リ フ ェ ッ チアボー ト ハン ド ラ を呼び出す命令 • 未定義命令例外ハン ド ラ を呼び出す命令 モー ド ま たはプ ロ グ ラ ム制御を変更す る 次の命令は、 直列化命令です。 MSR CPSR (制御ビ ッ ト ま たはモー ド ビ ッ ト を変更す る 場合) • • S ビ ッ ト がセ ッ ト さ れた、 PC に対す る デー タ 処理 (MOVS pc, r14 な ど) LDM pc ^. • CPS • • SETEND • RFE 次の命令は直列化命令です。 • ISB と DMB を除 く 、 cp14 ま たは cp15 に対す る すべての MCR • デバ ッ グ レ ジ ス タ の MRC p14 WFE、 WFI、 SEV • • CLREX • DSB r1p0 実装では、 DMB は、 すべての命令の終了ではな く 、 以前のすべての LDR/STR 命令の 終了を待ち ます。 SPSR を変更す る 次の命令は、 直列化命令です。 • ARM DDI 0388FJ ID013111 MSR SPSR Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential B-9 付録 C リ ビジ ョ ン こ の付録では、 本書の各版の技術的な相違点について説明 し ます。 表 C-1 A 版 変更内容 場所 初版 - 表 C-2 A 版 と B 版の相違点 変更内容 場所 ロ ー ド / ス ト アユニ ッ ト と ア ド レ ス生成の明確化 図 1-1 (ページ 1-2) 高速ループモー ド を小ループモー ド に変更 • • • • 図 1-1 (ページ 1-2) 小ループモー ド (ページ 1-3) 「命令キ ャ ッ シ ュ の特徴」 (ページ 7-2) 電力消費制御について (ページ 12-6) 分岐予測を動的分岐予測に変更 • • • 「機能」 (ページ 1-6) 「レベル 1 命令側 メ モ リ シ ス テ ムについて」 (ページ 7-5) 「分岐命令」 (ページ B-8) L1 キ ャ ッ シ ュ コ ヒ ーレ ン シ を L1 デー タ キ ャ ッ シ ュ コ ヒ ーレ ン シに変更 「Cortex-A9 のバ リ ア ン ト 」 (ページ 1-4) プ ロ セ ッ サ機能レ ジ ス タ 0 の リ セ ッ ト 時の値を修正 表 4-29 (ページ 4-46) PMSWINC の説明を整合す る よ う に変更 • • ARM DDI 0388FJ ID013111 表 4-29 (ページ 4-46) ソ フ ト ウ ェ ア イ ン ク リ メ ン ト レ ジ ス タ (ページ 4-100) Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-1 リ ビジ ョ ン 表 C-2 A 版 と B 版の相違点 (続き) 変更内容 場所 MIDR ビ ッ ト [3:0] を 0 か ら 1 に更新 表 4-1 (ページ 4-5) ID_MMFR3 [23:20] ビ ッ ト の値を 0x1 に訂正 表 4-42 (ページ 4-50) AFE ビ ッ ト の説明の訂正 表 4-51 (ページ 4-62) 補助制御レ ジ ス タ のビ ッ ト フ ィ ール ド の訂正 • • S パ ラ メ ー タ の値の訂正 セ ッ ト / ウ ェ イ 形式 (ページ 4-83) 表 4-52 (ページ 4-66) 図 4-36 (ページ 4-66) ビ ッ ト [11]、 [10]、 [8] の説明を、 表 と 整合する よ う に 図 4-41 (ページ 4-87) 修正 アーキ テ ク チ ャ 的に削除 さ れた イ ベン ト 0x68 の説明 の訂正 表 4-80 (ページ 4-123) TLB ロ ッ ク ダ ウ ンエン ト リ 番号を 8 か ら 4 に訂正 c10、 TLB ロ ッ ク ダ ウ ン レ ジ ス タ (ページ 4-134) A、 I、 F ビ ッ ト の説明の訂正 c12、 割 り 込みス テー タ ス レ ジ ス タ (ページ 4-147) マ イ ク ロ TLB エン ト リ 数を 8 か ら 32 に変更 「マ イ ク ロ TLB」 (ページ 6-4) キ ャ ッ シ ュ タ イ プに関す る 重複情報の削除 「マ イ ク ロ TLB」 (ページ 6-4) IRGN ビ ッ ト の説明を、 TTBCR か ら TTBR0/TTRBR1 に修正 「 メ イ ン TLB」 (ページ 6-4) 使用前のキ ャ ッ シ ュ と BTAC の無効化に関する 注を 追加 「レベル 1 メ モ リ シ ス テ ムについて」 (ページ 7-2) パ リ テ ィ サポー ト 方式の情報のセ ク シ ョ ン を追加 「パ リ テ ィ エ ラ ーのサポー ト 」 (ページ 7-11) L2 マ ス タ イ ン タ フ ェース M0 お よ び M1 の一覧表 と 説明を追加 「Cortex-A9 のレベル 2 イ ン タ フ ェース について」 (ページ 8-2) DBSCR の外部説明への相互参照を追加。 DBSCR 外 部ビ ュ ーへの参照を含め る よ う に脚注を拡張。 表 10-1 (ページ 10-5) DBGDSCR の説明を訂正 し 、 内部ビ ュ ー と 外部 ビ ュ ーの説明を追加 CP14 c1、 デバ ッ グ ス テー タ スお よ び制御レ ジ ス タ (DBGDSCR) (ページ 8-9) MOE ビ ッ ト の説明の順序変更 と 拡張 表 8-2 (ページ 8-10) 表 10-1 か ら の相互参照の追加 • • • • • • • • • ARM DDI 0388FJ ID013111 デバ ッ グ状態キ ャ ッ シ ュ 制御レ ジ ス タ (DBGDSCCR) (ページ 8-8) CP14 c1、 デバ ッ グ ス テー タ スお よ び制御レ ジ ス タ (DBGDSCR) (ページ 8-9) デバ イ ス電力オ フお よ び リ セ ッ ト ス テー タ ス レ ジ ス タ (DBGPRSR) (ページ 8-27) 統合モー ド 制御レ ジ ス タ (DBGITCTRL) (ページ 8-45) ク レーム タ グ ク リ ア レ ジ ス タ (DBGCLAIMCLR) (ペー ジ 8-47) ロ ッ ク ア ク セ ス レ ジ ス タ (DBGLAR) (ページ 8-48) ロ ッ ク ス テー タ ス レ ジ ス タ (DBGLSR) (ページ 8-49) 認証ス テー タ ス レ ジ ス タ (DBGAUTHSTATUS) (ペー ジ 8-49) デバ イ ス タ イ プ レ ジ ス タ (DBGDEVTYPE) (ページ 8-50) Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-2 リ ビジ ョ ン 表 C-2 A 版 と B 版の相違点 (続き) 変更内容 場所 表 10-1 の脚注の訂正 表 10-1 (ページ 10-5) バ イ ト ア ド レ ス フ ィ ール ド のエン ト リ の訂正 表 10-8 (ページ 10-11) 割 り 込み信号の説明の訂正 表 A-3 (ページ A-4) AXI USER の説明の拡張 • • • 表 A-8 (ページ A-8) 表 A-11 (ページ A-10) 表 A-14 (ページ A-12) 表 C-3 B 版 と C 版の相違点 変更内容 場所 「2.8.1 64 ビ ッ ト 幅のバ ス上の LE ア ク セ ス と BE-8 ア ク セ ス」 の削除 - 「第 4 章 ア ン ア ラ イ ン ド デー タ ア ク セ ス と エンデ ィ ア ン混在デー タ ア ク セ ス のサポー ト 」 の削除 電力管理信号 BISTSCLAMP の削除 - 動的高水準 ク ロ ッ ク ゲー ト の追加 動的高水準 ク ロ ッ ク ゲー ト (ページ 2-9) TLB 情報の更新 表 1-1 (ページ 1-10)、 表 4-10 (ページ 4-15)、 表 4-37 (ペー ジ 4-44) ID_MMF3[15:12] の説明の短縮 メ モ リ モデル機能レ ジ ス タ 3 (ページ 4-49) PL310 最適化への参照を含め る よ う に ACTLR を更新 補助制御レ ジ ス タ (ページ 4-64) 2 つ目の置換方式に関す る 情報の追加。 選択は SCTLR.RR ビ ッ ト で行われます。 「シ ス テ ム制御レ ジ ス タ」 (ページ 4-15) イ ベン ト 情報の拡張 Cortex-A9 固有の イ ベン ト (ページ 4-32) DEFLAGS[6:0] の追加 DEFLAGS[6:0] (ページ 4-37、 「パフ ォーマン ス監視信号」 (ページ A-14)) 電力制御レ ジ ス タ の説明の追加 電力制御レ ジ ス タ (ページ 4-63) L2 メ モ リ イ ン タ フ ェース に対す る PL310 の最適化の 説明の追加 「レベル 2 メ モ リ イ ン タ フ ェースへのア ク セ ス の最適化」 (ペー ウ ォ ッ チポ イ ン ト ア ド レ ス のマ ス ク 処理の追加 「ウ ォ ッ チポ イ ン ト 制御レ ジ ス タ 」 (ページ 10-11) デバ ッ グ要求再起動の図の追加 「 リ セ ッ ト のデバ ッ グ レ ジ ス タ への影響」 (ページ 10-3) CPUCLKOFF 情報の追加 表 A-4 (ページ A-5)、 非レ ジ ス ト 信号 (ページ B-3) DECLKOFF 情報の追加 表 A-4 (ページ A-5)、 非レ ジ ス ト 信号 (ページ B-3) MAXCLKLATENCY[2:0] 情報の追加 「構成信号」 (ページ A-5) ARM DDI 0388FJ ID013111 ジ 8-7) Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-3 リ ビジ ョ ン 表 C-3 B 版 と C 版の相違点 (続き) 変更内容 場所 PMUEVENT バス の説明の拡張 「パフ ォーマン ス監視信号」 (ページ A-14) PMUSECURE と PMUPRIV の追加 「パフ ォーマン ス監視信号」 (ページ A-14) DMB の直列化動作の説明の更新 「直列化命令」 (ページ B-9) 表 C-4 C 版 と D 版の相違点 変更内容 場所 ブ ロ ッ ク 図に プ リ ロ ー ド エン ジ ン (PE) を追加 図 1-1 (ページ 1-2) 割 り 込み信号の修正 デー タ エン ジ ン オプシ ョ ンの明確化 「デー タ エン ジ ン」 (ページ 1-2) シ ス テ ム設計 コ ン ポーネ ン ト の明確化 「シ ス テ ム設計 コ ン ポーネン ト 」 (ペー ジ 1-3) 準拠性の明確化 「準拠性」 (ページ 1-5) PE を機能に追加 「機能」 (ページ 1-6) 構成オプシ ョ ンに PE と PE FIFO サ イ ズ を追加 「構成可能なオプシ ョ ン」 (ページ 1-8) NEON SIMD お よ び FPU オプシ ョ ンの明確化 表 1-1 (ページ 1-8) テ ス ト 機能 セ ク シ ョ ンの追加 「テ ス ト 機能」 (ページ 1-9) 「2.1.3 PTM イ ン タ フ ェ ース」 の書 き 直 し 「パフ ォーマン ス監視」 (ページ 2-3) 「2.1.5 割 り 込みの仮想化」 の追加 「割 り 込みの仮想化」 (ページ 2-3) 電力制御の説明に NEON SIMD ク ロ ッ ク ゲー ト を追加 「電力制御レ ジ ス タ 」 (ページ 2-9) nDERESET を nNEONRESET に変更 「 リ セ ッ ト モー ド 」 (ページ 2-7) nWDRESET の追加 nPERIPHRESET の追加 電圧 ド メ イ ン境界 と 説明の変更 図 2-4 (ページ 2-14) 「2.1.5 デー タ エン ジ ン ロ ジ ッ ク リ セ ッ ト 」 の置き 換え 「MPE SIMD ロ ジ ッ ク リ セ ッ ト 」 (ペー ジ 2-8) Cortex-A9 入力信号 DECLAMP の削除、 レベルシ フ タ 基準の削除 「電力管理コ ン ト ロ ー ラ と の通信」 (ページ 2-13) 「表 3-1 J ビ ッ ト と T ビ ッ ト のエン コ ー ド 」 の削除 - Jazelle 拡張機能 (ページ 3-3) の移動 「Jazelle 拡張機能」 (ページ 3-7) NEON テ ク ノ ロ ジ (ページ 3-4) の名前変更 と 更新 「ア ド バン ス ト SIMD アーキ テ ク チ ャ」 (ページ 3-4) 「3.4 プ ロ セ ッ サの動作状態」 の削除 ARM DDI 0388FJ ID013111 - Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-4 リ ビジ ョ ン 表 C-4 C 版 と D 版の相違点 (続き) 変更内容 場所 「3.5 デー タ 型」 の削除 - 「マルチプ ロ セ ッ シ ン グ拡張機能」 セ ク シ ョ ンの追加 「マルチプ ロ セ ッ シ ン グ拡張機能」 (ページ 3-6) 「3.6 メ モ リ フ ォーマ ッ ト 」 の名前変更 と 移動 「 メ モ リ モデル」 (ページ 3-8) 「3.8 セキ ュ リ テ ィ 拡張機能の概要」 の名前変更 と 移動 「セキ ュ リ テ ィ 拡張機能アーキテ ク チ ャ」 (ページ 3-5) 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 資料 と 重複 し てい る 内容、 「シ ス テ ム制御について」 (ページ 4-2) 表、 図を 4.1 か ら 削除 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 資料 と 重複 し てい る 4.2 の 内容を削除、 セ ク シ ョ ンの名前変更 「レ ジ ス タ の概要」 (ページ 4-3) 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 資料 と 重複 し てい る 4.3 の 内容を削除、 セ ク シ ョ ンの名前変更 「レ ジ ス タ の説明」 (ページ 4-8) 脚注 e の削除 表 4-8 (ページ 4-15) プ リ ロ ー ド エン ジ ン レ ジ ス タ の追加 「CP15 c11 レ ジ ス タ の概要」 (ページ 4-30) - 「PLE ID レ ジ ス タ 」 (ページ 4-30) - 「PLE 動作ス テー タ ス レ ジ ス タ 」 (ペー ジ 4-31) 「PLE FIFO ス テー タ ス レ ジ ス タ 」 (ペー - ジ 4-32) - 「プ リ ロ ー ド エン ジ ン ユーザア ク セ ス許 可レ ジ ス タ 」 (ページ 4-32) - 「プ リ ロ ー ド エン ジ ン パ ラ メ ー タ制御レ ジ ス タ」 (ページ 4-33) 新 し い章に 「4.4 CP14 Jazelle レ ジ ス タ 」 と 「4.5 CP14 Jazelle レ ジ ス タ の説 明」 を追加 第 5 章 Jazelle DBX レ ジ ス タ 「第 5 章 メ モ リ 管理ユニ ッ ト 」 で、 「5.6 MMU の ソ フ ト ウ ェ ア ア ク セ ス可能 レ ジ ス タ 」 セ ク シ ョ ン を削除 - 「レベル 1 メ モ リ シ ス テ ム」 章で、 Cortex-A9 キ ャ ッ シ ュ 方式のセ ク シ ョ ン を 削除 - L2 メ モ リ イ ン タ フ ェース に関す る プ リ フ ェ ッ チ ヒ ン ト の説明を更新 し て拡 張 「レベル 2 メ モ リ イ ン タ フ ェース に対す る プ リ フ ェ ッ チ ヒ ン ト 」 (ページ 8-7) BRESP と キ ャ ッ シ ュ コ ン ト ロ ー ラ の動作の明確化 「早期 BRESP」 (ページ 8-7) 0 の フル ラ イ ン書 き 込み、 信号名を AWUSERM0[7] に訂正 「0 のフル ラ イ ン書 き込み」 (ページ 8-8) 投機的 コ ヒ ーレ ン ト 要求のセ ク シ ョ ン を追加 「投機的コ ヒ ーレ ン ト 要求」 (ページ 8-8) PARITYFAIL の未使用ビ ッ ト を HIGH に固定する こ と に関する 文の削除 「パ リ テ ィ エ ラ ーのサポー ト 」 (ページ 7-11) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-5 リ ビジ ョ ン 表 C-4 C 版 と D 版の相違点 (続き) 変更内容 場所 PE の説明の追加 第 9 章 プ リ ロー ド エン ジ ン PMU の説明の追加 第 11 章 パフ ォーマン ス監視ユニ ッ ト デバ ッ グの章、 「デバ ッ グ シ ス テ ムについて」 の削除 - デバ ッ グの章、 「デバ ッ グモー ド 」 の削除 - 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 資料 と 重複する 部分の削除 外部デバ ッ グ イ ン タ フ ェース、 PADDRDBG[12:0] の説明の追加 「外部デバ ッ グ イ ン タ フ ェース」 (ペー ジ 10-16) デバ ッ グ APB イ ン タ フ ェース のセ ク シ ョ ンの追加 「デバ ッ グ APB イ ン タ フ ェース」 (ペー ジ 10-18) 信号の説明の修正 と 拡張、 ソ ース / デス テ ィ ネーシ ョ ン列の追加 付録 A 信号の説明 PMUEVENT[46] の説明の訂正 表 A-17 (ページ A-14) PMUEVENT[47] の説明の訂正 AC 特性付録の削除 - D 版 と E 版の相違点はあ り ません。 表 C-5 D 版 と F 版の相違点 変更内容 場所 PL310 の名前を L2C-310 に変更 本書全体 VFPv3 を VFPv3 D-32 に訂正 「 メ デ ィ ア処理エン ジ ン」 (ページ 1-2) Cortex-A9 FPU ハー ド ウ ェ アの説明を明確化のため書 き 直 し 「浮動小数点ユニ ッ ト 」 (ページ 1-2) SCU の説明の拡張 「Cortex-A9 のバ リ ア ン ト 」 (ページ 1-4) 動的分岐予測の説明の追加 「動的分岐予測」 (ページ 2-3) 最後の段落を削除 「エネルギー効率機能」 (ページ 2-10) WFI/WFE を 「ス タ ンバ イ 」 に訂正 表 2-2 (ページ 2-10) 明確化のため名前の変更 と 書 き 直 し 「ス タ ンバ イ モー ド 」 (ページ 2-11) 休眠モー ド ク ラ ンプ情報の削除 「休眠モー ド 」 (ページ 2-12) IEM サポー ト の名前変更 と 書 き 直 し 「電力 ド メ イ ン」 (ページ 2-13) 「プ ロ グ ラ マモデルについて」 (ページ 重複資料の削除 3-2) デバ ッ グ レ ジ ス タ の説明の訂正 表 4-1 (ページ 4-3) r2p1 と r2p2 の メ イ ン ID レ ジ ス タ 値の追加 表 4-2 (ページ 4-8) デバ ッ グ レ ジ ス タ 名の訂正 表 4-2 (ページ 4-8) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-6 リ ビジ ョ ン 表 C-5 D 版 と F 版の相違点 (続き) 変更内容 場所 説明の明確化 と 脚注の追加 表 4-4 (ページ 4-11) 「キ ャ ッ シ ュ サ イ ズ識別レ ジ ス タ」 目的の説明の拡張 (ページ 4-11) シ ス テ ム制御レ ジ ス タ の値の訂正。 脚注の修正。 表 4-8 (ページ 4-15) ビ ッ ト [17] の機能の訂正 表 4-9 (ページ 4-16) 脚注 d の訂正 表 4-33 (ページ 4-36) 目的の説明の拡張 「電力制御レ ジ ス タ 」 (ページ 4-36) 構成の説明の訂正 「構成ベース ア ド レ ス レ ジ ス タ」 (ペー ジ 4-38) 章の名前変更 第 5 章 Jazelle DBX レ ジ ス タ 「6.1 アプ リ ケーシ ョ ン固有」 を 「ア ド レ ス空間固有」 に訂正 「MMU について」 (ページ 6-2) 統一 メ イ ン TLB の説明の明確化 「 メ モ リ 管理ユニ ッ ト 」 (ページ 6-2) ページサ イ ズに関す る 重複情報の削除 ASID の説明の訂正 と 拡張。 相互参照の追加。 TLB 一致プ ロ セ ス のページサ イ ズに関す る 重複情報の削除 同期お よ び非同期アボー ト の不正な相互参照の削除 「TLB 一致プ ロ セ ス」 (ページ 6-4) 「同期アボー ト と 非同期アボー ト 」 (ページ 6-8) 「キ ャ ッ シ ュ機能」 (ページ 7-2) キ ャ ッ シ ュ 機能の相互参照の訂正 実装情報の削除 リ タ ーン ス タ ッ ク 予測の ARM ま たは Thumb 状態を命令状態に変更 「 リ タ ーン ス タ ッ ク 予測」 (ページ 7-7) DSB のセ ク シ ョ ンの追加 「DSB について」 (ページ 7-9) AXI Master0 イ ン タ フ ェ ース属性の値の訂正 表 8-1 (ページ 8-2) デバ ッ グの章を PMU の章の前に移動 図の描 き 直 し 図 10-1 (ページ 10-4) ビ ッ ト 形式の訂正 表 10-1 (ページ 10-5) CLUSTERID 値に関す る 脚注の追加 表 10-10 (ページ 10-13) 値列の追加 表 10-11 (ページ 10-14) DBGCPUDONE の説明の拡張 「DBGCPUDONE」 (ページ 10-19) PMU 管理レ ジ ス タ のセ ク シ ョ ンの追加 「PMU 管理レ ジ ス タ 」 (ページ 11-3) 信号の説明の拡張 「構成信号」 (ページ A-5) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-7 リ ビジ ョ ン 表 C-5 D 版 と F 版の相違点 (続き) 変更内容 場所 信号の説明の拡張、 AXI か ら の重複情報の削除 表 A-8 (ページ A-8) AWBURSTM0[1:0] AWLENM0[3:0] AWLOCKM0[1:0] 信号の説明の拡張、 AXI か ら の重複情報の削除 表 A-11 (ページ A-10) ARLENM0[3:0] ARLOCKM0[1:0] タ イ ト ルの変更 「AXI Master1 信号の命令ア ク セ ス」 (ページ A-11) AXI か ら の重複情報の削除 表 A-14 (ページ A-12) ARLENM1[3:0] PMUEVENT[46] と PMUEVENT[47] の訂正 表 A-17 (ページ A-14) 「は じ めに」 の短縮。 DSB 動作に関す る 注の追加。 「直列化命令」 (ページ B-9) ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential C-8 用語集 こ の用語集では、 ARM のマニ ュ アルで使用 さ れてい る 用語の一部について説明 し ます。 複数の意味を持つ用語については、 本書では用語集に示す意味で使用 さ れてい ます。 AHB ア ド バン ス ト ハ イ パフ ォ ーマ ン ス バ ス 参照。 AHB-AP AHB ア ク セ ス ポー ト 参照。 AHB-Lite 完全な AMBA AHB プ ロ ト コ ル仕様のサブセ ッ ト 。 大部分の AMBA AHB マ ス タ / ス レーブ設計に必要なすべての基本機能を提供 し てお り 、 特に複数レ イ ヤの AMBA 相互 接続で使用 さ れ ます。 ほ と ん ど の場合、 完全な AMBA AHB イ ン タ フ ェース で提供 さ れ てい る 追加の機能は、 AMBA AXI プ ロ ト コ ル イ ン タ フ ェ ース で実装す る と よ り 効率的 にな り ます。 AHB ア ク セスポー ト (AHB-AP) DAP のオプシ ョ ン コ ン ポーネ ン ト で、 SoC への AHB イ ン タ フ ェ ース を提供 し ます。 AMBA ア ド バン ス ト マ イ ク ロ コ ン ト ロ ー ラ バ ス アーキ テ ク チ ャ 参照。 APB ア ド バン ス ト ペ リ フ ェ ラ ルバ ス 参照。 ARM 状態 ARM (32 ビ ッ ト ) ワ ー ド ア ラ イ ン ド 命令を実行 し てい る プ ロ セ ッ サは、 ARM 状態で動 作 し てい ます。 ARM 命令 ARM プ ロ セ ッ サが実行す る 操作を示すワ ー ド 。 ARM 命令は ワ ー ド ア ラ イ ン し てい る 必 要があ り ます。 ATB ア ド バン ス ト ト レース バ ス 参照。 ATB ブ リ ッ ジ 同期 ATB ブ リ ッ ジは レ ジ ス タ ス ラ イ ス を提供す る ため、 パ イ プ ラ イ ン ス テージの追加 に よ っ て、 タ イ ミ ン グ収束が容易にな り ます。 ま た、 2 つの同期 ATB ド メ イ ン間の単 方向 リ ン ク を提供 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-1 用語集 非同期 ATB ブ リ ッ ジは、 非同期 ク ロ ッ ク を使用す る 2 つの ATB ド メ イ ン間の単方向 リ ン ク を提供 し ます。 こ れは、 異な る ク ロ ッ ク ド メ イ ン に存在す る コ ン ポーネ ン ト を ATB ポー ト で接続す る のを サポー ト す る こ と が目的です。 ATPG 自動テ ス ト パ タ ーン生成参照。 AXI ア ド バン ス ト エ ク ス テ ン シブル イ ン タ フ ェース 参照。 AXI のチ ャ ネル順序 と イ ン タ フ ェ ース こ のブ ロ ッ ク 図は、 次の こ と を示 し てい ます。 • AXI チ ャ ネル信号が記述 さ れ る 順序 • AXI コ ン ポーネ ン ト のマ ス タ / ス レーブ イ ン タ フ ェース表記規則 㪘㪯㪠 䊙䉴䉺 ᦠ䈐ㄟ䉂䉝䊄䊧䉴䉼䊞䊈䊦㩿㪘㪮㪀 ᦠ䈐ㄟ䉂䊂䊷䉺䉼䊞䊈䊦㩿㪮㪀 ᦠ䈐ㄟ䉂ᔕ╵䉼䊞䊈䊦㩿㪙㪀 ⺒䉂䈚䉝䊄䊧䉴䉼䊞䊈䊦㩿㪘㪩㪀 ⺒䉂䈚䊂䊷䉺䉼䊞䊈䊦㩿㪩㪀 㪘㪯㪠䊙䉴䉺 䉟䊮䉺䊐䉢䊷䉴 AXI 用語 㪘㪯㪠⋧ធ⛯ 㪘㪯㪠䉴䊧䊷䊑 䉟䊮䉺䊐䉢䊷䉴 ᦠ䈐ㄟ䉂䉝䊄䊧䉴䉼䊞䊈䊦㩿㪘㪮㪀 ᦠ䈐ㄟ䉂䊂䊷䉺䉼䊞䊈䊦㩿㪮㪀 ᦠ䈐ㄟ䉂ᔕ╵䉼䊞䊈䊦㩿㪙㪀 ⺒䉂䈚䉝䊄䊧䉴䉼䊞䊈䊦㩿㪘㪩㪀 ⺒䉂䈚䊂䊷䉺䉼䊞䊈䊦㩿㪩㪀 㪘㪯㪠䊙䉴䉺 䉟䊮䉺䊐䉢䊷䉴 㪘㪯㪠 䉴䊧䊷䊑 㪘㪯㪠䉴䊧䊷䊑 䉟䊮䉺䊐䉢䊷䉴 次の AXI 用語が一般的に使用 さ れてい ます。 こ れ ら は、 マ ス タ と ス レーブの両方に 適用 さ れ ます。 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ン 書 き 込みア ド レ ス ま たは先頭の書 き 込みデー タ は転送 さ れたが、 書 き 込 み応答が ま だ転送 さ れていない状態の ト ラ ンザ ク シ ョ ン。 ア ク テ ィ ブな転送 xVALID1 ハン ド シ ェー ク はアサー ト さ れたが、 xREADY が ま だアサー ト さ れていない状態の転送。 ア ク テ ィ ブな読み出 し ト ラ ンザ ク シ ョ ン 読み出 し ア ド レ ス は転送 さ れたが、 最後の読み出 し デー タ が ま だ転送 さ れていない状態の ト ラ ンザ ク シ ョ ン。 完了 し た転送 xVALID/xREADY ハン ド シ ェー ク が完了 し た状態の転送。 送信 ペ イ ロ ー ド を駆動 し 、 関連す る xVALID 信号を アサー ト す る 動作。 転送 単一の情報交換。 つま り 、 1 回の xVALID/xREADY ハン ド シ ェー ク に よ る 処理。 ト ラ ンザ ク シ ョ ン 転送のバース ト 全体で、 ア ド レ ス、 1 つま たは複数のデー タ 転送、 応答 転送 (書 き 込みのみ) で構成 さ れます。 ペ イ ロ ー ド 転送に含まれ る 、 ハン ド シ ェー ク 以外の信号。 1. 信号名に x が含まれてい る 場合、 次の AXI チ ャ ネルを意味 し ます。 AW 書 き 込みア ド レ ス チ ャ ネル W 書 き 込みデー タ チ ャ ネル B 書 き 込み応答チ ャ ネル AR 読み出 し ア ド レ ス チ ャ ネル R 読み出 し デー タ チ ャ ネル ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-2 用語集 次の AXI 用語は、 マ ス タ イ ン タ フ ェース属性です。 最高のパフ ォ ーマ ン ス を引 き 出 すには、 AXI マ ス タ イ ン タ フ ェース を持つすべての コ ン ポーネ ン ト に対 し て、 こ れ ら を指定す る 必要があ り ます。 書 き 込み ID 機能 マ ス タ イ ン タ フ ェ ース で、 ア ク テ ィ ブなすべての書 き 込み ト ラ ンザ ク シ ョ ン について同時に生成可能な、 異な る AWID 値の最大数。 書 き 込み ID 幅 AWID バ ス と WID バ ス の ビ ッ ト 数。 書 き 込み イ ン タ ー リ ーブ機能 マ ス タ イ ン タ フ ェ ース でデー タ 送信が可能な、 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ンの数。 こ の数は、 最初の ト ラ ンザ ク シ ョ ン か ら カ ウ ン ト さ れ ます。 書 き 込み発行機能 マ ス タ イ ン タ フ ェ ース で生成可能な、 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ン の最大数。 統合発行機能 マ ス タ イ ン タ フ ェ ース で生成可能な ア ク テ ィ ブ ト ラ ンザ ク シ ョ ンの最大 数。 こ れは、 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ン と 読み出 し ト ラ ン ザ ク シ ョ ン用に同 じ 記憶域を使用す る マ ス タ イ ン タ フ ェース に対 し て、 書 き 込み発行機能、 ま たは読み出 し 発行機能の代わ り に指定 さ れます。 読み出 し ID 機能 マ ス タ イ ン タ フ ェ ース で、 ア ク テ ィ ブなすべての読み出 し ト ラ ンザ ク シ ョ ン について同時に生成可能な、 異な る ARID 値の最大数。 読み出 し ID 幅 ARID バ ス の ビ ッ ト 数。 読み出 し 発行機能 マ ス タ イ ン タ フ ェ ース で生成可能な、 ア ク テ ィ ブな読み出 し ト ラ ンザ ク シ ョ ン の最大数。 次に示す AXI 用語は、 ス レーブ イ ン タ フ ェース属性です。 最高のパフ ォ ーマ ン ス を 引 き 出すには、 AXI ス レーブ イ ン タ フ ェース を持つすべての コ ン ポーネ ン ト に対 し て、 こ れ ら を指定す る 必要があ り ます。 書 き 込み受け付け機能 ス レーブ イ ン タ フ ェ ース で受け付け可能な、 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ン の最大数。 書 き 込み イ ン タ ー リ ーブ深度 ス レーブ イ ン タ フ ェ ース でデー タ 受信可能な、 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ンの数。 こ の数は、 最初の ト ラ ンザ ク シ ョ ン か ら カ ウ ン ト さ れ ます。 統合受け付け機能 ス レーブ イ ン タ フ ェ ース で受け付け可能な、 ア ク テ ィ ブな ト ラ ンザ ク シ ョ ン の最大数。 こ れは、 ア ク テ ィ ブな書 き 込み ト ラ ンザ ク シ ョ ン と 読 み出 し ト ラ ンザ ク シ ョ ンの両方に同 じ 記憶域を使用す る ス レーブ イ ン タ フ ェ ース について、 書 き 込み受け付け機能、 ま たは読み出 し 受け付け機 能の代わ り に指定 さ れます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-3 用語集 読み出 し 受け付け機能 ス レーブ イ ン タ フ ェ ース で受け付け可能な、 ア ク テ ィ ブな読み出 し ト ラ ンザ ク シ ョ ン の最大数。 読み出 し デー タ 再順序付け深度 ス レーブ イ ン タ フ ェ ース でデー タ 送信可能な、 ア ク テ ィ ブな読み出 し ト ラ ンザ ク シ ョ ンの数。 こ の数は、 最初の ト ラ ンザ ク シ ョ ン か ら カ ウ ン ト さ れ ます。 BE-32 ワー ド 不変シ ス テ ム での、 ビ ッ グエ ンデ ィ ア ン形式の メ モ リ ビ ュ ー。 BE-8、 LE、 バ イ ト 不変、 ワ ー ド 不変 も 参照。 BE-8 バ イ ト 不変シ ス テ ム での、 ビ ッ グエ ンデ ィ ア ン形式の メ モ リ ビ ュ ー。 BE-32、 LE、 バ イ ト 不変、 ワー ド 不変 も 参照。 CPI 命令あ た り のサ イ ク ル数参照。 CPSR カ レ ン ト プ ロ グ ラ ム ス テー タ ス レ ジ ス タ 参照。 DBGTAP デバ ッ グ テ ス ト ア ク セ ス ポー ト 参照。 DNM 変更不可参照。 EmbeddedICE-RT デバ ッ グ可能な ARM プ ロ セ ッ サで リ アル タ イ ム デバ ッ グのために使用 さ れ る 、 JTAG ベース のハー ド ウ ェ ア。 EmbeddedICE ロ ジ ッ ク ARM プ ロ セ ッ サ コ アに対す る TAP ベース のデバ ッ グサポー ト を提供す る オ ンチ ッ プ の ロ ジ ッ ク ブ ロ ッ ク 。 JTAG イ ン タ フ ェース を使用 し て、 ARM コ ア上の TAP コ ン ト ロ ー ラ 経由でア ク セ ス さ れます。 IEEE 754 規格 IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE Std. 754-1985。 浮動小数点 シ ス テ ムに関す る デー タ 型、 正常な動作、 例外の タ イ プ と 処理、 エ ラ ーバ ウ ン ド を 規定 し てい る 規格です。 ほ と ん ど のプ ロ セ ッ サが、 ハー ド ウ ェ ア単体ま たはハー ド ウ ェ ア と ソ フ ト ウ ェ アの組み合わせに よ っ て、 こ の規格に準拠す る よ う に構築 さ れ てい ます。 IEM イ ン テ リ ジ ェ ン ト 電力管理参照。 IGN 無視参照。 JTAG ジ ョ イ ン ト テ ス ト ア ク シ ョ ン グループ 参照。 LE バ イ ト 不変 と ワー ド 不変の両方のシ ス テ ム におけ る 、 リ ト ルエ ンデ ィ ア ン形式の メ モ リ ビ ュ ー。 バ イ ト 不変 と ワー ド 不変 も 参照。 LSU ロ ー ド ス ト ア ユニ ッ ト 参照。 MMU メ モ リ 管理ユニ ッ ト 参照。 MPU メ モ リ 保護ユニ ッ ト 参照。 PA 物理ア ド レ ス 参照。 RealView ICE JTAG イ ン タ フ ェ ース を使用 し て、 組み込みプ ロ セ ッ サ コ ア をデバ ッ グす る ためのシ ス テ ム。 SBO 常に 1 参照。 SBZ 常に 0 参照。 SBZP 常に 0 ま たは保持参照。 SCREG ARM TAP コ ン ト ロ ー ラ 内で現在選択 さ れてい る ス キ ャ ンチ ェ イ ン番号。 SPSR 保存プ ロ グ ラ ム ス テー タ ス レ ジ ス タ 参照。 TAP テ ス ト ア ク セ ス ポー ト 参照。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-4 用語集 Thumb 状態 Thumb (16 ビ ッ ト ) ハーフ ワー ド ア ラ イ ン ド 命令を実行 し てい る プ ロ セ ッ サは、 Thumb 状態で動作 し てい ます。 Thumb 命令 ARM プ ロ セ ッ サが Thumb 状態で実行す る 動作を指定す る ハーフ ワー ド 。 Thumb 命 令は、 ハーフ ワー ド ア ラ イ ン ド の必要があ り ます。 TLB 変換ル ッ ク アサ イ ド バ ッ フ ァ 参照。 UNP 予測不能参照。 VA 修飾仮想ア ド レ ス 参照。 VA 仮想ア ド レ ス 参照。 WB ラ イ ト バ ッ ク 参照。 WT ラ イ ト ス ルー参照。 アーキテ ク チ ャ プ ロ セ ッ サ と その付属 コ ン ポーネ ン ト を特徴付け、 同様の特徴を持つデバ イ ス を、 ハーバー ド アーキ テ ク チ ャ 、 命令セ ッ ト アーキ テ ク チ ャ 、 ARMv6 アーキ テ ク チ ャ な ど の よ う に、 その動作を記述す る と き にグループ化す る こ と を可能にす る 、 ハー ド ウ ェ アお よ び ソ フ ト ウ ェ アの編成。 ア ド バン ス ト エ ク ス テ ン シ ブルイ ン タ フ ェ ース (AXI) 独立 し た ア ド レ ス / 制御フ ェーズ と デー タ フ ェ ーズ、 バ イ ト ス ト ロ ーブに よ る ア ン ア ラ イ ン ド デー タ 転送、 開始ア ド レ ス のみの発行に よ る バース ト ベース の ト ラ ンザ ク シ ョ ン、 低 コ ス ト DMA を可能にす る 独立 し た読み出 し お よ び書 き 込みデー タ チ ャ ネ ル、 複数の未解決ア ド レ ス の発行機能、 ア ウ ト オブオーダー ト ラ ンザ ク シ ョ ン の実 行、 レ ジ ス タ ス テージの追加が容易な こ と に よ る タ イ ミ ン グ ク ロ ージ ャ の提供を サ ポー ト す る バ ス プ ロ ト コ ル。 AXI プ ロ ト コ ルには、 低消費電力動作の信号処理を カ バーす る オプシ ョ ン の拡張機能 も 含まれ ます。 AXI は、 パフ ォ ーマ ン ス が高 く 、 ク ロ ッ ク 周波数が高いシ ス テ ム の設計を目的 と し てお り 、 高速のサブ ミ ク ロ ン相互接続に最適な多 く の機能が含まれてい ます。 ア ド バン ス ト ト レースバス (ATB) CoreSight の ト レース キ ャ プチ ャ 資源を共有す る ため、 ト レースデバ イ ス に よ っ て使 用 さ れ る バ ス。 ア ド バン ス ト ハイパ フ ォ ーマ ン スバス (AHB) ア ド レ ス / 制御フ ェ ーズ と デー タ フ ェーズ と の間で 1 つの固定パ イ プ ラ イ ン を使用す る バ ス プ ロ ト コ ル。 AMBA AXI プ ロ ト コ ルで提供 さ れてい る 機能のサブセ ッ ト のみ をサポー ト し ます。 完全な AMBA AHB プ ロ ト コ ル仕様には、 一般的なマ ス タ / ス レーブ IP 開発では必要 と さ れない機能が多 く 含まれてい る ため、 通常はプ ロ ト コ ル のサブセ ッ ト だけ を使用す る こ と をお勧め し ます。 こ のサブセ ッ ト は、 AMBA AHB-Lite プ ロ ト コ ル と し て定義 さ れてい ます。 ア ド バン ス ト マ イ ク ロ コ ン ト ロ ー ラ バ ス アーキ テ ク チ ャ と AHB-Lite も 参照。 ア ド バン ス ト ペ リ フ ェ ラルバス (APB) AXI や AHB よ り も 単純なバ ス プ ロ ト コ ル。 タ イ マ、 割 り 込み コ ン ト ロ ー ラ 、 UART、 I/O ポー ト な ど の補助的な、 ま たは汎用のペ リ フ ェ ラ ルで使用す る ために設計 さ れて い ます。 メ イ ン のシ ス テ ムバ スへの接続は、 シ ス テ ム と ペ リ フ ェ ラ ル と の間のバ ス ブ リ ッ ジ を経由 し て行われ る ため、 シ ス テ ムの消費電力を抑え ら れ ます。 ア ド バン ス ト マ イ ク ロ コ ン ト ロー ラバス アーキテ ク チ ャ (AMBA) 相互接続のための方針が記載 さ れた、 プ ロ ト コ ル仕様の フ ァ ミ リ 。 AMBA は、 オ ン チ ッ プバ ス に関す る ARM のオープ ン な規格です。 シ ス テ ムオ ンチ ッ プ (SoC) を構築 す る 機能ブ ロ ッ ク の相互接続 と 管理のための方針が記載 さ れた、 オ ンチ ッ プバ ス の 仕様です。 1 つま たは複数の CPU や信号プ ロ セ ッ サ、 お よ び複数のペ リ フ ェ ラ ルを 含む組み込みプ ロ セ ッ サの開発に役立ち ます。 AMBA は、 SoC モジ ュ ール用の共通 バ ッ ク ボーン を定義す る こ と に よ っ て、 再利用可能な設計手法を よ り 完全な も のに し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-5 用語集 ア ド レ シ ングモー ド 命令で使用す る 値を生成す る ために、 多 く の命令で共有 さ れ る 機構。 ARM ア ド レ シ ン グモー ド の う ち 4 つでは、 値 と し て メ モ リ ア ド レ ス が生成 さ れます。 こ れは、 ア ド レ シ ン グモー ド の従来の役割です。 5 番目のア ド レ シ ン グモー ド では、 デー タ 処理 命令のオペ ラ ン ド と し て使用 さ れ る 値が生成 さ れます。 アボー ト メ モ リ ア ク セ ス に関連す る 値が無効であ る こ と を コ アに通知す る 機構。 アボー ト は、 無効な命令ま たはデー タ メ モ リ へのア ク セ ス を実行 し た結果 と し て、 外部ま たは内 部の メ モ リ シ ス テ ム で発生す る 可能性があ り ます。 アボー ト は、 プ リ フ ェ ッ チア ボー ト と デー タ アボー ト 、 内部アボー ト と 外部アボー ト に分類 さ れます。 デー タ アボー ト 、 外部アボー ト 、 プ リ フ ェ ッ チアボー ト も 参照。 アボー ト モデル アボー ト モデルは、 デー タ アボー ト 例外に対す る ARM プ ロ セ ッ サの応答 と し て定義 さ れた動作です。 アボー ト モデルに よ っ て、 ベース レ ジ ス タ の ラ イ ト バ ッ ク を指定 す る ロ ー ド / ス ト ア命令に関す る 動作が異な り ます。 アライン ド デー タ サ イ ズ を定義 し てい る バ イ ト 数で割 り 切れ る ア ド レ ス に格納 さ れてい る デー タ 項目を、 ア ラ イ ン ド 、 ま たはア ラ イ ン し てい る と 呼びます。 ア ラ イ ン し てい る ワー ド と ハーフ ワ ー ド のア ド レ ス は、 それぞれ 4 と 2 で割 り 切れます。 し たがっ て、 ワー ド ア ラ イ ン ド と ハーフ ワー ド ア ラ イ ン ド と い う 用語は、 それぞれ 4 と 2 で割 り 切れ る ア ド レ ス を意味 し ます。 イ ンデ ク ス キ ャ ッ シ ュ イ ンデ ク ス 参照。 イ ンデ ク ス レ ジ ス タ 一部の ロ ー ド / ス ト ア命令で指定 さ れ る レ ジ ス タ 。 こ の レ ジ ス タ の値は、 メ モ リ に送 信 さ れ る 仮想ア ド レ ス を生成す る ために、 オ フ セ ッ ト と し てベース レ ジ ス タ の値に 加算ま たは減算 さ れます。 一部のア ド レ シ ン グモー ド では、 必要に応 じ て、 イ ンデ ク ス レ ジ ス タ の値を シ フ ト し てか ら 加算ま たは減算で き ます。 イ ン テ リ ジ ェ ン ト 電力管理 (IEM) デバ イ ス の消費電力を低減す る ために使用 さ れ る 技術で、 動的な電圧ス ケー リ ン グ と ク ロ ッ ク 周波数の変更を可能に し ます。 ヴィ クテ ィム キ ャ ッ シ ュ ミ ス のためにキ ャ ッ シ ュ ラ イ ン の置 き 換えが必要 と な っ た場合、 必要な 領域を確保す る ために破棄 さ れ る キ ャ ッ シ ュ ラ イ ン。 取 り 出すヴ ィ ク テ ィ ム を選択 す る 方法は、 プ ロ セ ッ サに よ っ て異な り ます。 ヴ ィ ク テ ィ ムはキ ャ ス ト ア ウ ト と 呼 ばれ る こ と も あ り ます。 ウェ イ キ ャ ッ シ ュ ウ ェ イ 参照。 ウ ォ ーム リ セ ッ ト コ ア リ セ ッ ト と 呼ばれ る こ と も あ り ます。 デバ ッ グ コ ン ト ロ ー ラ と デバ ッ グ ロ ジ ッ ク を除 く 、 プ ロ セ ッ サの大部分を初期化 し ます。 こ の種類の リ セ ッ ト は、 プ ロ セ ッ サのデバ ッ グ機能を使用 し てい る 場合に便利です。 ウ ォ ッ チポ イ ン ト ウ ォ ッ チポ イ ン ト は、 デバ ッ ガで提供 さ れてい る 機構で、 特定の メ モ リ ア ド レ ス に 保存 さ れてい る デー タ が変更 さ れた と き にプ ロ グ ラ ム の実行を停止 し ます。 プ ロ グ ラ マは、 ウ ォ ッ チポ イ ン ト を挿入す る こ と に よ っ て、 メ モ リ が書 き 込まれた と き の レ ジ ス タ の内容、 メ モ リ の位置、 変数の値を検査 し て、 プ ロ グ ラ ム が正常に動作 し てい る か ど う か を テ ス ト で き ます。 プ ロ グ ラ ム のテ ス ト が完了 し た後で、 ウ ォ ッ チ ポ イ ン ト は削除 さ れ ます。 ブ レー ク ポ イ ン ト も 参照。 エ ンデ ィ ア ン形式 バ イ ト の順序。 デー タ ワー ド の連続す る バ イ ト が メ モ リ に保存 さ れ る 順序を決定す る 方式。 シ ス テ ムの メ モ リ マ ッ ピ ン グの見え方。 リ ト ルエ ンデ ィ ア ン と ビ ッ グエ ンデ ィ ア ン も 参照。 外部アボー ト 不正な メ モ リ ア ク セ ス の実行を停止 し なければな ら ない こ と を、 外部 メ モ リ シ ス テ ム か ら コ アに通知す る 手段。 外部アボー ト は、 無効な メ モ リ へのア ク セ ス を試みた 結果 と し て、 外部 メ モ リ シ ス テ ム に よ っ て引 き 起 こ さ れます。 アボー ト 、 デー タ アボー ト 、 プ リ フ ェ ッ チア ボー ト も 参照。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-6 用語集 書き込み 書 き 込みは、 ス ト アの意味を持つ操作 と し て定義 さ れ ます。 ARM 命令の SRS、 STM、 STRD、 STC、 STRT、 STRH、 STRB、 STRBT、 STREX、 SWP、 SWPB と 、 Thumb 命令の STM、 STR、 STRH、 STRB、 PUSH が該当 し ます。 ハー ド ウ ェ アで高 速化 さ れ る Java バ イ ト コ ー ド の場合は、 Java ス タ ッ ク の状態 と Java ハー ド ウ ェ ア ア ク セ ラ レーシ ョ ンの実装に よ っ ては、 大量の書 き 込みが発生す る 可能性があ り ます。 書き込み完了 メ モ リ シ ス テ ムは、 ト ラ ンザ ク シ ョ ン内で、 書 き 込みの効果がシ ス テ ム内のすべて のプ ロ セ ッ サに可視にな っ た こ と を保証で き る 時点で、 書 き 込みが完了 し た こ と を プ ロ セ ッ サに通知 し ます。 書 き 込みが、 メ モ リ 同期化基本命令に関連 し てい る 場合 や、 デバ イ ス領域ま たは ス ト ロ ン グ リ オーダ領域を対象 と し てい る 場合、 こ れには 該当 し ません。 こ の よ う な場合、 書 き 込みの効果が可視な こ と と 、 タ ーゲ ッ ト の状 態が更新 さ れた こ と と の区別が不可能であ る 場合を除いて、 メ モ リ シ ス テ ムは、 ア ク セ ス に よ っ て タ ーゲ ッ ト の状態が変更 さ れた と き だけ、 書 き 込みの完了を通知で き ます。 一部の種類の メ モ リ に対す る こ の厳格な要件に よ っ て、 メ モ リ ア ク セ ス の副作用が すべて発生 し た こ と を プ ロ セ ッ サで保証で き ます。 こ の機能を使用す る と 、 副作用 が可視にな る ま で、 プ ロ グ ラ ムの順序でその後に行われ る 動作の開始を保留す る こ と がで き ます。 仮想ア ド レ ス (VA) MMU は、 変換テーブルを使用 し て、 仮想ア ド レ ス を物理ア ド レ ス に変換 し ます。 プ ロ セ ッ サは仮想ア ド レ ス で コ ー ド を実行 し 、 そのア ド レ ス は物理 メ モ リ では別の場 所に存在す る 可能性があ り ます。 修飾仮想ア ド レ ス と 物理ア ド レ ス も 参照。 カ レ ン ト プ ログ ラ ム ス テー タ ス レ ジ ス タ (CPSR) 現在動作中のプ ロ セ ッ サの ス テー タ ス を保持 し てい る レ ジ ス タ 。 完全ア ソ シ エ イ テ ィ ブキ ャ ッ シ ュ キ ャ ッ シ ュ 全体が 1 つのキ ャ ッ シ ュ セ ッ ト だけで構成 さ れてい る キ ャ ッ シ ュ 。 キ ャ ッ シ ュ エ ン ト リ の数は、 キ ャ ッ シ ュ ウ ェ イ の数 と 同 じ です。 直接マ ッ プキ ャ ッ シ ュ も 参照。 キャ ッ シ ュ プ ロ セ ッ サ と メ イ ン メ モ リ の間に配置 さ れ、 使用頻度の高い命令やデー タ の コ ピー を格納お よ び取得す る ために使用 さ れ る 、 オ ンチ ッ プ ま たはオ フ チ ッ プの高速ア ク セ ス メ モ リ 位置のブ ロ ッ ク 。 こ れに よ っ て、 メ モ リ ア ク セ ス の平均速度が大幅に向 上す る ため、 プ ロ セ ッ サのパフ ォ ーマ ン ス も 向上 し ます。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 キャ ッ シ ュウ ェ イ キ ャ ッ シ ュ ラ イ ン ま たはブ ロ ッ ク のグループ。 キ ャ ッ シ ュ ウ ェ イ のサ イ ズは、 2 の ( イ ンデ ク ス の ビ ッ ト 数) 乗です。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 キャ ッ シ ュセ ッ ト キ ャ ッ シ ュ セ ッ ト は、 キ ャ ッ シ ュ ラ イ ン ま たはブ ロ ッ ク のグループです。 キ ャ ッ シ ュ セ ッ ト には、 同 じ イ ンデ ク ス でア ド レ ス指定が可能なすべての ウ ェ イ が含まれ ます。 キ ャ ッ シ ュ セ ッ ト の数は、 必ず 2 のべ き 乗です。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 キ ャ ッ シ ュの競合 特定のキ ャ ッ シ ュ セ ッ ト を使用す る 、 使用頻度の高い メ モ リ キ ャ ッ シ ュ ラ イ ン の数 が、 キ ャ ッ シ ュ のセ ッ ト ア ソ シエテ ィ ビ テ ィ を超え た と き 。 こ の場合、 メ イ ン メ モ リ の動作が増大 し て、 パフ ォーマ ン ス が低下 し ます。 キャ ッ シ ュ ヒ ッ ト 命令ま たは命令がア ク セ スす る デー タ がすでにキ ャ ッ シ ュ に保持 さ れてい る ため、 高速で処理可能な メ モ リ ア ク セ ス。 キャ ッ シ ュ ミ ス 命令ま たは命令がア ク セ スす る デー タ がキ ャ ッ シ ュ に存在 し ないために、 メ イ ン メ モ リ へのア ク セ ス が必要にな り 、 高速で処理で き ない メ モ リ ア ク セ ス。 キ ャ ッ シ ュ用語の図 こ の図は、 次のキ ャ ッ シ ュ 用語を示 し た も のです。 • ブロ ッ ク ア ド レス • キャ ッシュ ラ イン ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-7 用語集 キャ ッシュセッ ト キャ ッシュ ウ ェ イ イ ンデ ク ス タグ • • • • 䊑䊨䉾䉪䉝䊄䊧䉴 䉺䉫 䉟䊮䊂䉪䉴 䊪䊷䊄 䉨䊞䉾䉲䊠䉡䉢䉟 䊋䉟䊃 䉨䊞䉾䉲䊠䉶䉾䊃 䊪䊷䊄⇟ภ 䉨䊞䉾䉲䊠䊤䉟䊮 䊤䉟䊮⇟ภ 㪇 㪈 㪉 㪊 䉺䉫 䉺䉫 㪋 䉺䉫 㪌 䉺䉫 㪍 㪎 㫅 㪉 㪈 㪇 䉨䊞䉾䉲䊠䈱 䉺䉫㪩㪘㪤 㫄 㪉 㪈 㪇 㪊 䉨䊞䉾䉲䊠䈱 䊂䊷䉺㪩㪘㪤 㪔 䊍䉾䊃 䋨䉡䉢䉟⇟ภ䋩 キャ ッ シ ュ ラ イ ン ⺒䉂䈚䊂䊷䉺 䋨ኻᔕ䈜䉎䉡䉢䉟䋩 キ ャ ッ シ ュ内の記憶域の基本単位。 キ ャ ッ シ ュ ラ イ ンは、 サ イ ズが常に 2 のべき乗 (通 常は 4 ま たは 8 ワー ド ) で、 適切な メ モ リ 境界にア ラ イ ン し てい る必要があ り ます。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 キ ャ ッ シ ュ ラ イ ン イ ンデ ク ス キ ャ ッ シ ュ ウ ェ イ 内の各キ ャ ッ シ ュ ラ イ ン に関連付け ら れた番号。 各キ ャ ッ シ ュ ウ ェ イ 内のキ ャ ッ シ ュ ラ イ ン には、 0 か ら (セ ッ ト ア ソ シエテ ィ ビ テ ィ - 1) ま での 番号が付け ら れます。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-8 用語集 キ ャ ッ シ ュ ロ ッ ク ダウン 上書 き さ れない よ う に、 キ ャ ッ シ ュ メ モ リ 内の ラ イ ン を固定す る こ と 。 重要な命令 やデー タ を キ ャ ッ シ ュ に ロ ー ド し 、 それ ら を含むキ ャ ッ シ ュ ラ イ ン が後か ら 再割 り 当て さ れない よ う にす る こ と がで き ます。 こ れに よ っ て、 対象の命令やデー タ に対 す る 以降のア ク セ ス が、 必ずキ ャ ッ シ ュ ヒ ッ ト にな る ため、 可能な限 り 高速に実行 さ れ る こ と が保証 さ れます。 キ ュ ーの先頭ポ イ ン タ ラ イ ト バ ッ フ ァ 内で、 次に書 き 込ま れ る エ ン ト リ へのポ イ ン タ 。 ク リ ーニ ング キ ャ ッ シ ュ 内で変更 さ れていないキ ャ ッ シ ュ ラ イ ン を、 ク リ ーン な キ ャ ッ シ ュ ラ イ ン と 呼びます。 キ ャ ッ シ ュ を ク リ ーニ ン グす る と は、 ダーテ ィ な キ ャ ッ シ ュ エ ン ト リ を メ イ ン メ モ リ に書 き 込む こ と です。 キ ャ ッ シ ュ ラ イ ンが ク リ ーン な場合は、 次 の レベルの メ モ リ にキ ャ ッ シ ュ と 同 じ デー タ が保持 さ れてい る ため、 キ ャ ッ シ ュ ミ ス が発生 し た と き にキ ャ ッ シ ュ ラ イ ンが書 き 込ま れ る こ と はあ り ません。 ダーテ ィ も 参照。 ク ロ ッ ク ゲー ト 制御信号でマ ク ロ セルの ク ロ ッ ク 信号を ゲー ト し 、 その ク ロ ッ ク を使用す る こ と に よ っ て、 マ ク ロ セルの動作状態が制御 さ れ ます。 コアリセッ ト ウ ォ ーム リ セ ッ ト 参照。 コ ール ド リ セ ッ ト パ ワ ーオ ン リ セ ッ ト と 呼ばれ る こ と も あ り ます。 電力オ ン に よ り プ ロ セ ッ サが起動 す る こ と を意味 し ます。 電力を オ フ に し てか ら 再度オ ン にす る と 、 メ イ ン メ モ リ と 多 く の内部設定が ク リ ア さ れ ます。 プ ロ グ ラ ム の障害に よ っ てはプ ロ セ ッ サが ロ ッ ク し 、 シ ス テ ム を再度使用可能にす る ために コ ール ド リ セ ッ ト が必要な場合があ り ます。 それ以外の場合は、 ウ ォ ーム リ セ ッ ト のみが必要です。 ウ ォ ーム リ セ ッ ト も 参照。 コ ヒ ーレ ン シ メ モ リ コ ヒ ーレ ン シ 参照。 コ プロセ ッサ メ イ ン プ ロ セ ッ サ を補完す る プ ロ セ ッ サ。 メ イ ン プ ロ セ ッ サが実行で き ない付加機 能を実行 し ます。 通常は、 浮動小数点算術演算、 信号処理、 メ モ リ 管理な ど に使用 さ れ ます。 コ ン テキス ト マルチ タ ス ク のオペレーテ ィ ン グ シ ス テ ム で、 各プ ロ セ ス が動作す る 環境。 ARM プ ロ セ ッ サでは、 メ モ リ 内でア ク セ ス可能な物理ア ド レ ス範囲 と 、 それに関連付け ら れた メ モ リ ア ク セ ス許可の意味に限定 さ れ ます。 再マ ッ ピ ング アプ リ ケーシ ョ ンの実行開始後に、 物理 メ モ リ ま たはデバ イ ス のア ド レ ス を変更す る こ と 。 通常、 こ の動作は、 初期化完了後に ROM を RAM に置 き 換え る ために行わ れ ます。 指数 浮動小数点数の構成要素で、 表現 さ れ る 数値の値を決定す る ために使用 さ れ、 通常 は 2 の整数乗を示 し ます。 実装固有 動作がアーキ テ ク チ ャ で定義 さ れていないが、 実装ご と に文書化す る 必要がない こ と を意味 し ます。 使用可能な実装オプシ ョ ンが多数あ り 、 選択 し たオプシ ョ ンに よ っ て ソ フ ト ウ ェ アの互換性に影響がない場合に使用 さ れ ます。 実装定義 動作がアーキ テ ク チ ャ で定義 さ れていないため、 実装ご と に定義 し て文書化す る 必 要があ る こ と を意味 し ます。 自動テ ス ト パ タ ーン生成 (ATPG) 特殊な ソ フ ト ウ ェ ア ツールを使用 し て、 ASIC 設計用の製造テ ス ト ベ ク タ を自動生成 す る 処理。 ジ ョ イ ン ト テ ス ト ア ク シ ョ ングループ (JTAG) IEEE 1149.1 規格を策定 し た団体の名前。 こ の規格では、 集積回路デバ イ ス の イ ン サーキ ッ ト テ ス ト に使用 さ れ る 、 バ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ が定義 さ れて い ます。 頭文字の JTAG で広 く 知 ら れてい ます。 条件付き実行 ARM DDI 0388FJ ID013111 条件 コ ー ド フ ラ グが、 命令の実行開始時に該当す る 条件が TRUE であ る こ と を示 し てい る 場合は、 命令が正常に実行 さ れ ます。 それ以外の場合、 命令は何 も 実行 し ま せん。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-9 用語集 条件フ ィ ール ド 命令が実行可能な条件を指定す る 、 命令内の 4 ビ ッ ト の フ ィ ール ド 。 スキ ャ ン チ ェ イ ン ス キ ャ ンチ ェ イ ンはシ リ アル接続 さ れたデバ イ ス で構成 さ れ、 標準の JTAG TAP イ ン タ フ ェ ース を使用 し てバ ウ ン ダ リ ス キ ャ ン技術を実装 し てい ます。 各デバ イ ス には 少な く と も 1 つの TAP コ ン ト ロ ー ラ があ り 、 TDI と TDO と の間の接続チ ェ イ ン を 形成す る シ フ ト レ ジ ス タ を搭載 し てい ます。 こ のチ ェ イ ン を通 し て、 テ ス ト デー タ がシ フ ト さ れ ます。 プ ロ セ ッ サには数個のシ フ ト レ ジ ス タ を搭載で き る ため、 デバ イ ス の選択 し た部分にア ク セ ス で き ます。 制御ビ ッ ト プ ロ グ ラ ム ス テー タ ス レ ジ ス タ (PSR) の最下位 8 ビ ッ ト 。 制御ビ ッ ト は、 例外が発 生 し た と き に変化 し ます。 プ ロ セ ッ サが特権モー ド の場合にのみ、 ソ フ ト ウ ェ アか ら 変更で き ます。 セッ ト キ ャ ッ シ ュ セ ッ ト 参照。 セ ッ ト ア ソ シエイ テ ィ ブ キャ ッ シ ュ セ ッ ト ア ソ シエ イ テ ィ ブ キ ャ ッ シ ュ では、 メ モ リ ア ド レ ス を セ ッ ト 数で割っ た剰余 に対応す る キ ャ ッ シ ュ 内の位置にのみ、 ラ イ ン を配置で き ます。 キ ャ ッ シ ュ 内に n 個の ウ ェ イ があ る 場合、 そのキ ャ ッ シ ュ は n ウ ェ イ セ ッ ト ア ソ シエ イ テ ィ ブ と 呼ば れ ます。 セ ッ ト ア ソ シエテ ィ ビ テ ィ には、 1 以上の任意の値を使用す る こ と がで き 、 必ず し も 2 のべ き 乗にす る 必要はあ り ません。 ダーテ ィ ラ イ ト バ ッ ク キ ャ ッ シ ュ内で変更 さ れたキ ャ ッ シ ュ ラ イ ン を、 ダーテ ィ なキ ャ ッ シ ュ ラ イ ン と 呼びます。 キ ャ ッ シ ュ ラ イ ンは、 ダーテ ィ ビ ッ ト を セ ッ ト する こ と に よ っ て、 ダーテ ィ と し てマー ク さ れます。 キ ャ ッ シ ュ ラ イ ンがダーテ ィ な場合は、 次の レ ベルの メ モ リ に更新 さ れていないデー タ が保持 さ れてい る ため、 キ ャ ッ シ ュ ミ ス が発 生 し た と き にキ ャ ッ シ ュ ラ イ ン を メ モ リ に書き込む必要があ り ます。 ダーテ ィ デー タ を メ イ ン メ モ リ に書き込む処理を、 キ ャ ッ シ ュ の ク リ ーニ ン グ と 呼びます。 ク リ ーニ ン グ も 参照。 タグ キ ャ ッ シ ュ 内のキ ャ ッ シ ュ ラ イ ン の識別に使用 さ れ る ブ ロ ッ ク ア ド レ ス の上位部分。 CPU か ら のブ ロ ッ ク ア ド レ ス は、 セ ッ ト 内の各 タ グ と 並列に比較 さ れ、 対応す る ラ イ ンがキ ャ ッ シ ュ に存在す る か ど う かが判断 さ れ ます。 存在す る 場合はキ ャ ッ シ ュ ヒ ッ ト と な り 、 その ラ イ ン を キ ャ ッ シ ュ か ら フ ェ ッ チで き ます。 ブ ロ ッ ク ア ド レ ス が ど の タ グに も 対応 し ない場合はキ ャ ッ シ ュ ミ ス と な り 、 その ラ イ ンは次の レベル の メ モ リ か ら フ ェ ッ チ さ れ る 必要があ り ます。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 ダブルワー ド 64 ビ ッ ト のデー タ 項目。 特に指定のない限 り 、 その内容は符号な し 整数 と みな さ れ ます。 ダブルワー ド ア ラ イ ン ド メ モ リ ア ド レ ス が 8 で割 り 切れ る デー タ 項目。 直接マ ッ プキ ャ ッ シ ュ 1 ウ ェ イ のセ ッ ト ア ソ シエ イ テ ィ ブキ ャ ッ シ ュ 。 各キ ャ ッ シ ュ セ ッ ト は、 単一の キ ャ ッ シ ュ ラ イ ン で構成 さ れてい る ため、 キ ャ ッ シ ュ のル ッ ク ア ッ プでは、 単一の キ ャ ッ シ ュ ラ イ ンが選択 さ れてチ ェ ッ ク が行なわれます。 通信チ ャ ネル デバ ッ グ イ ン タ フ ェ ース を使用 し て、 プ ロ セ ッ サ上で実行中の ソ フ ト ウ ェ ア と 外部 ホ ス ト と の間で通信を行 う ために使用 さ れ る ハー ド ウ ェ ア。 こ の通信がデバ ッ グ目 的の場合は、 デバ ッ グ通信チ ャ ネル と 呼ばれ ます。 ARMv6 準拠の コ アの通信チ ャ ネ ルには、 デー タ 転送レ ジ ス タ 、 デー タ ス テー タ スお よ び制御レ ジ ス タ の一部のビ ッ ト 、 お よ び JTAG イ ン タ フ ェ ース におけ る DBGTAP コ ン ト ロ ー ラ の よ う な外部デ バ ッ グ イ ン タ フ ェ ース コ ン ト ロ ー ラ が含まれ ます。 常に 0 (SBZ) ソ フ ト ウ ェ アで 0 (ビ ッ ト フ ィ ール ド の場合はすべての ビ ッ ト に 0) を書 き 込む必要 があ り ます。 1 を書 き 込んだ場合、 結果は予測不能です。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-10 用語集 常に 0 または保持 (SBZP) ソ フ ト ウ ェ アで 0 (ビ ッ ト フ ィ ール ド の場合はすべての ビ ッ ト に 0) を書 き 込むか、 同 じ プ ロ セ ッ サの同 じ フ ィ ール ド か ら 以前に読み出 し た値を その ま ま書 き 戻 し て保 持す る 必要があ り ます。 常に 1 (SBO) ソ フ ト ウ ェ アで 1 (ビ ッ ト フ ィ ール ド の場合はすべての ビ ッ ト に 1) を書 き 込む必要 があ り ます。 0 を書 き 込んだ場合、 結果は予測不能です。 デー タ アボー ト 不正な メ モ リ ア ク セ ス の実行を停止 し なければな ら ない こ と を、 メ モ リ シ ス テ ムか ら コ アに通知す る 手段。 デー タ アボー ト は、 無効なデー タ メ モ リ にア ク セ ス し よ う と し た と き に発生 し ます。 アボー ト 、 外部アボー ト 、 プ リ フ ェ ッ チアボー ト も 参照。 デー タ キ ャ ッ シ ュ プ ロ セ ッ サ と メ イ ン メ モ リ と の間に配置 さ れ、 使用頻度の高いデー タ の コ ピーを格 納お よ び取得す る ために使用 さ れ る 、 オ ンチ ッ プの高速ア ク セ ス メ モ リ 位置のブ ロ ッ ク 。 こ れに よ っ て、 メ モ リ ア ク セ ス の平均速度が大幅に向上す る ため、 プ ロ セ ッ サのパフ ォ ーマ ン ス も 向上 し ます。 テ ス ト ア ク セスポー ト (TAP) JTAG バ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ の入出力 イ ン タ フ ェ ース と 制御 イ ン タ フ ェ ース を形成す る 、 4 つの必須端子 と 1 つのオプシ ョ ン端子の集合。 必須端子は、 TDI、 TDO、 TMS、 TCK です。 オプシ ョ ン端子は、 TRST です。 こ の信号は、 デ バ ッ グ ロ ジ ッ ク の リ セ ッ ト に使用 さ れ る ため、 ARM コ アには不可欠です。 デバ ッ ガ ソ フ ト ウ ェ アの障害を検出 し 、 場所を特定 し 、 修正す る ために使用 さ れ る プ ロ グ ラ ム と 、 ソ フ ト ウ ェ アのデバ ッ グ を サポー ト す る カ ス タ ムハー ド ウ ェ ア と を組み合わ せたデバ ッ グ シ ス テ ム。 デバ ッ グア ク セス ポー ト (DAP) シ ス テ ムバ スへのア ク セ ス で、 AMBA (AHB ま たは AHB-Lite) マ ス タ と し て動作す る TAP ブ ロ ッ ク 。 DAP は、 シ ス テ ム規模のデバ ッ グ を サポー ト す る 、 モジ ュ ラ ーブ ロ ッ ク のセ ッ ト を総称す る ために使用 さ れ る 用語です。 DAP はモジ ュ ラ ー コ ン ポー ネ ン ト で、 単一のデバ ッ グ イ ン タ フ ェース を通 し て、 メ モ リ マ ッ プ さ れた AHB や CoreSight APB な ど複数のシ ス テ ム に対 し て、 任意のア ク セ ス をサポー ト す る よ う 拡 張可能な よ う に意図 さ れてい ます。 同期化基本命令 メ モ リ 同期化基本命令は、 メ モ リ の同期を保証す る ために使用 さ れ る 命令です。 こ れには、 LDREX、 STREX、 SWP、 SWPB 命令が含まれます。 ト ラップ VFP コ プ ロ セ ッ サに例外状態が発生 し 、 FPSCR レ ジ ス タ の対応す る 例外 イ ネーブル ビ ッ ト がセ ッ ト さ れてい る 場合。 ユーザ ト ラ ッ プ ハン ド ラ が実行 さ れ ます。 内部スキ ャ ン チ ェ イ ン 一連の レ ジ ス タ が互いに接続 さ れ、 デバ イ ス を経由す る パ ス を形成 し た も ので、 デ バ イ ス の内部 ノ ー ド へテ ス ト パ タ ーン を イ ン ポー ト し 、 結果の値を エ ク ス ポー ト す る 運用テ ス ト で使用 さ れ ます。 バース ト 連続ア ド レ ス に対す る 一連の転送。 ア ド レ ス が連続 し てい る ため、 2 回目以降の転送 ではア ド レ ス を指定す る 必要があ り ません。 こ の方法に よ っ て、 一連の転送の実行 速度が向上 し ます。 AHB バ ス上のバース ト は、 HBURST 信号を使用 し て制御 さ れま す。 こ の信号に よ っ て、 転送が 1 ビー ト 、 4 ビー ト 、 8 ビー ト 、 16 ビー ト の どれであ る か、 ア ド レ ス が ど の よ う に イ ン ク リ メ ン ト さ れ る かが指定 さ れ ます。 ビー ト も 参照。 ハー フ ワー ド 16 ビ ッ ト のデー タ 項目。 バイ ト 8 ビ ッ ト のデー タ 項目。 バイ ト 不変 バ イ ト 不変のシ ス テ ム では、 リ ト ルエ ンデ ィ ア ン と ビ ッ グエ ンデ ィ ア ンの動作が切 り 替え ら れて も 、 メ モ リ の各バ イ ト のア ド レ ス は変更 さ れません。 1 バ イ ト を超え る デー タ 項目を メ モ リ か ら ロ ー ド 、 ま たは メ モ リ に ス ト アす る と き 、 そのデー タ 項目 を構成す る バ イ ト が、 メ モ リ ア ク セ ス のエ ンデ ィ ア ン形式に応 じ て正 し い順序に配 列 さ れ ます。 ARM アーキ テ ク チ ャ では、 ARMv6 お よ びそれ以降のバージ ョ ン でバ ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-11 用語集 イ ト 不変シ ス テ ムがサポー ト さ れてい ます。 バ イ ト 不変のサポー ト が選択 さ れてい る 場合は、 ア ン ア ラ イ ン ド のハーフ ワー ド と ワ ー ド での メ モ リ ア ク セ ス も サポー ト さ れ ます。 複数ワ ー ド ア ク セ ス は、 ワー ド ア ラ イ ン し てい る 必要があ り ます。 ワー ド 不変 も 参照。 バイ ト レーン ス ト ローブ AHB 信号 HBSTRB の こ と で、 ア ン ア ラ イ ン ド ま たはエ ンデ ィ ア ン混在のデー タ ア ク セ ス を行 う と き 、 転送に含まれ る ア ク テ ィ ブなバ イ ト レーン を決定す る ために使 用 さ れます。 HBSTRB の 1 ビ ッ ト は、 デー タ バ ス の 8 ビ ッ ト に相当 し ます。 ハイ ベ ク タ 例外ベ ク タ の代替位置。 ハ イ ベ ク タ のア ド レ ス範囲は、 ア ド レ ス空間の最下位では な く 、 最上位付近にあ り ます。 バウン ダ リ スキ ャ ン チ ェ イ ン バ ウ ン ダ リ ス キ ャ ン チ ェ イ ンは、 標準の JTAG TAP イ ン タ フ ェ ース を使用 し てバ ウ ン ダ リ ス キ ャ ン技術を実装 し てい る デバ イ ス のシ リ アル接続で構成 さ れ ます。 各デ バ イ ス には少な く と も 1 つの TAP コ ン ト ロ ー ラ があ り 、 TDI と TDO と の間の接続 チ ェ イ ン を形成す る シ フ ト レ ジ ス タ を搭載 し てい ます。 こ のチ ェ イ ン を通 し て、 テ ス ト デー タ がシ フ ト さ れ ます。 プ ロ セ ッ サには数個のシ フ ト レ ジ ス タ を搭載で き る ため、 デバ イ ス の選択 し た部分にア ク セ ス で き ます。 パワーオン リ セ ッ ト コ ール ド リ セ ッ ト 参照。 バン ク レ ジ ス タ 現在のプ ロ セ ッ サモー ド に よ っ て用途が定義 さ れ る 物理レ ジ ス タ 。 バン ク レ ジ ス タ は、 r8 ~ r14 です。 ビー ト バース ト 内の個別の転送を意味す る 別の用語。 例えば、 INCR4 バース ト は 4 ビー ト で構成 さ れます。 バース ト も 参照。 ビ ッ グエ ンデ ィ ア ン デー タ ワー ド の最上位バ イ ト か ら 最下位バ イ ト ま でが、 メ モ リ ア ド レ ス の昇順に保 存 さ れ る バ イ ト 配列方式。 リ ト ルエ ンデ ィ ア ン と エ ンデ ィ ア ン形式 も 参照。 ビ ッ グエ ンデ ィ ア ン メ モ リ 次の よ う な条件が満た さ れ る メ モ リ を指 し ます。 • ワー ド ア ラ イ ン し た ア ド レ ス のバ イ ト ま たはハーフ ワ ー ド が、 そのア ド レ ス の ワー ド 内で最上位のバ イ ト ま たはハーフ ワー ド であ る 。 • ハーフ ワー ド ア ラ イ ン さ れた ア ド レ ス のバ イ ト が、 そのア ド レ ス のハーフ ワー ド 内で最上位バ イ ト であ る 。 リ ト ルエ ンデ ィ ア ン メ モ リ も 参照。 標準遅延フ ォ ーマ ッ ト (SDF) バ ス の各ビ ッ ト レベル ま での タ イ ミ ン グ情報が含まれ、 SDF バ ッ ク ア ノ テーシ ョ ン で使用 さ れ る フ ァ イ ル形式。 SDF フ ァ イ ルは複数の方法で生成で き ますが、 遅延計 算機か ら 生成 さ れ る のが最 も 一般的です。 不正確 ト レース 命令ま たはデー タ の ト レース が、 予想 よ り も 早 く ま たは遅 く 、 開始ま たは終了す る 可能性があ る フ ィ ル タ リ ン グ構成。 ほ と ん ど の場合、 ト レース は予想 よ り も 遅 く 開 始ま たは終了 し ます。 例えば、 メ モ リ 上の特定の位置への 4 回目の書 き 込み後に ト レース を開始 し 、 4 回目 の書 き 込みを実行 し た命令は ト レースせず、 その後の命令を ト レースす る よ う に、 カ ウ ン タ を使用 し て TraceEnable を構成 し た場合です。 こ れは、 TraceEnable の構成 でカ ウ ン タ を使用 し た場合は、 必ず不正確 ト レース が実行 さ れ る ためです。 不正命令 ARM DDI 0388FJ ID013111 アーキ テ ク チ ャ で未定義の命令。 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-12 用語集 物理ア ド レ ス (PA) MMU は、 修飾仮想ア ド レ ス (VA) に対 し て変換を実行 し 、 AXI に渡 し て外部ア ク セ ス を実行す る ための 物理ア ド レ ス (PA) を生成 し ます。 ま た、 PA は、 デー タ がキ ャ ッ シ ュ か ら キ ャ ス ト ア ウ ト さ れた と き にア ド レ ス変換の必要がない よ う に、 デー タ キ ャ ッ シ ュ に も 格納 さ れます。 フ ラ ッ ト ア ド レ スマ ッ ピ ング メ モ リ 空間内の物理ア ド レ ス と 、 対応す る 仮想ア ド レ ス が等 し く な る よ う に メ モ リ を編成す る 方式。 プリフ ェ ッチ パ イ プ ラ イ ン処理のプ ロ セ ッ サで、 先行す る 命令の実行が完了す る 前に、 その後の 命令を メ モ リ か ら フ ェ ッ チ し てパ イ プ ラ イ ンに送 り 込む処理。 プ リ フ ェ ッ チ さ れた 命令は、 必ず実行 さ れ る と は限 り ません。 プ リ フ ェ ッ チアボー ト 不正な メ モ リ ア ク セ ス の実行を停止 し なければな ら ない こ と を、 メ モ リ シ ス テ ムか ら コ アに通知す る 手段。 プ リ フ ェ ッ チアボー ト は、 無効な命令 メ モ リ へのア ク セ ス を試みた結果 と し て、 外部ま たは内部の メ モ リ シ ス テ ム に よ り 引 き 起 こ さ れ る 可能 性があ り ます。 デー タ アボー ト 、 外部アボー ト 、 アボー ト も 参照。 ブ レー ク ポ イ ン ト プ ロ グ ラ ムの実行を停止 さ せ る 位置にあ る 命令を特定す る ために、 デバ ッ ガに よ っ て提供 さ れ る 機構。 プ ロ グ ラ マは、 ブ レー ク ポ イ ン ト を挿入す る こ と に よ っ て、 プ ロ グ ラ ムの実行中の決ま っ た位置で、 レ ジ ス タ の内容、 メ モ リ の位置、 変数の値を 検査 し て、 プ ロ グ ラ ム が正常に動作 し てい る か ど う か を テ ス ト で き ます。 プ ロ グ ラ ムのテ ス ト が完了 し た後で、 ブ レー ク ポ イ ン ト は削除 さ れます。 ウ ォ ッ チポ イ ン ト も 参照。 プロセ ッサ コ ン ピ ュ ー タ 命令を使用 し てデー タ を処理す る ために必要な、 コ ン ピ ュ ー タ シ ス テ ムの回路。 プ ロ セ ッ サは、 マ イ ク ロ プ ロ セ ッ サの略称です。 完全に機能す る 最小の コ ン ピ ュ ー タ シ ス テ ム を作成す る には、 ク ロ ッ ク ソ ース、 電源、 メ イ ン メ モ リ も 必 要です。 ブロ ッ クア ド レス タ グ、 イ ンデ ク ス、 ワー ド フ ィ ール ド で構成 さ れ る ア ド レ ス。 タ グ ビ ッ ト に よ っ て、 キ ャ ッ シ ュ ヒ ッ ト 時に照合す る キ ャ ッ シ ュ エ ン ト リ を保持す る ウ ェ イ が識別 さ れま す。 イ ンデ ク ス ビ ッ ト に よ っ て、 ア ド レ ス指定 さ れ る セ ッ ト が識別 さ れます。 ワ ー ド フ ィ ール ド には、 キ ャ ッ シ ュ エ ン ト リ 内の特定の ワ ー ド 、 ハーフ ワー ド 、 バ イ ト の識別に使用可能な ワー ド ア ド レ ス が格納 さ れ ます。 こ の用語集の最後のページにあ る キ ャ ッ シ ュ 用語の図 も 参照。 分岐予測 パ イ プ ラ イ ン化 さ れたプ ロ セ ッ サで、 条件付 き 分岐が行なわれ る か ど う か を予測す る 処理。 分岐の発生を正確に予測す る こ と に よ っ て、 プ ロ セ ッ サは、 完全に条件が 解決 さ れ る 前に、 分岐以後の命令を プ リ フ ェ ッ チで き ます。 分岐予測は、 ソ フ ト ウ ェ アで、 ま たはカ ス タ ムハー ド ウ ェ ア を使用 し て実行で き ます。 分岐予測手法は、 ラ ン タ イ ム前に予測が決定 さ れ る 場合は静的 と し て、 プ ロ グ ラ ムの実行中に予測決 定を変更で き る 場合は動的 と し て分類 さ れ ます。 ベース レ ジ ス タ 命令のア ド レ ス計算の基準値を保持す る ために、 ロ ー ド / ス ト ア命令で指定 さ れ る レ ジ ス タ 。 命令 と そのア ド レ シ ン グモー ド に よ っ ては、 メ モ リ に送 ら れ る 仮想ア ド レ ス を形成す る ために、 ベース レ ジ ス タ の値にオ フ セ ッ ト を加算ま たは減算で き ます。 ベース レ ジ ス タ ラ イ ト バ ッ ク 命令の タ ーゲ ッ ト ア ド レ ス計算に使用 さ れ る ベース レ ジ ス タ の内容を、 ア ド レ ス が メ モ リ 順序で次の上位ま たは下位ア ド レ ス を指 し 示す よ う に更新す る こ と 。 こ れに よ っ て、 命令で連続 し た転送を行 う と き 、 そのたびに タ ーゲ ッ ト ア ド レ ス を フ ェ ッ チす る 必要がな く 、 連続す る メ モ リ に対 し て よ り 高速なバース ト ア ク セ ス が可能に な り ます。 ペナルテ ィ 命令フ ロ ーが仮定ま たは予想 と 異な る ため、 実行ス テージの有効なパ イ プ ラ イ ン動 作が発生 し ないサ イ ク ル数。 変換テーブル メ モ リ 内に保持 さ れ る テーブルで、 さ ま ざ ま な固定サ イ ズの メ モ リ 領域のプ ロ パ テ ィ を定義 し たデー タ が含ま れます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-13 用語集 変換テーブルウ ォ ー ク 完全な変換テーブルル ッ ク ア ッ プ を実行す る 処理。 ハー ド ウ ェ アに よ っ て自動的に 実行 さ れ ます。 変換ル ッ ク アサイ ド バ ッ フ ァ (TLB) 最近使用 さ れたページテーブル エ ン ト リ のキ ャ ッ シ ュ で、 メ モ リ ア ク セ ス のたびに ページ テーブル ウ ォ ー ク を行 う オーバヘ ッ ド を回避す る ために使用 さ れます。 メ モ リ 管理ユニ ッ ト の一部分です。 変更不可 (DNM) 変更不可フ ィ ール ド の値は、 ソ フ ト ウ ェ アで変更 し ない よ う にす る 必要があ り ます。 DNM フ ィ ール ド は、 予測不能な値 と し て読み出 さ れ、 同 じ プ ロ セ ッ サの同 じ フ ィ ー ル ド か ら 読み出 さ れた同 じ 値のみを書 き 込む必要があ り ます。 DNM フ ィ ール ド につ いての記載では、 括弧付 き の RAZ ま たは RAO が続いて、 将来の互換性のために ビ ッ ト を読み出す方法を示 し てい る 場合があ り ますが、 プ ロ グ ラ マは こ の動作を前 提 と すべ き ではあ り ません。 ホール ト デバ ッ グモー ド 互いに排他な 2 つのデバ ッ グモー ド の う ちの 1 つ。 ホール ト デバ ッ グモー ド では、 ブ レー ク ポ イ ン ト や ウ ォ ッ チポ イ ン ト な ど のデバ ッ グ イ ベン ト が発生す る と 、 プ ロ セ ッ サが特別なデバ ッ グ状態に入 り ます。 デバ ッ グ状態では、 プ ロ セ ッ サが外部デ バ ッ グ イ ン タ フ ェ ース を通 し て制御 さ れ ます。 こ の イ ン タ フ ェース は、 プ ロ セ ッ サ 状態、 コ プ ロ セ ッ サ状態、 メ モ リ 、 I/O 位置のすべてにア ク セ ス で き ます。 モニ タ デバ ッ グモー ド も 参照。 ホス ト デー タ や他のサービ ス を別の コ ン ピ ュ ー タ に提供す る コ ン ピ ュ ー タ 。 特に、 デバ ッ グ対象の タ ーゲ ッ ト にデバ ッ グサービ ス を提供す る コ ン ピ ュ ー タ 。 保存プ ログ ラ ムス テー タ ス レ ジ ス タ (SPSR) 現在のモー ド への切 り 替え を引 き 起 こ し た例外が発生す る 直前の、 タ ス ク の CPSR を保持 し てい る レ ジ ス タ 。 マイ ク ロプロセ ッサ プ ロ セ ッ サ参照。 マ ク ロ セル イ ン タ フ ェ ース と 動作が定義 さ れた複合論理ブ ロ ッ ク 。 一般的な VLSI シ ス テ ムは、 複数のマ ク ロ セル (プ ロ セ ッ サ、 ETM、 メ モ リ ブ ロ ッ ク な ど) と 、 特定用途の論理 回路で構成 さ れます。 未サポー ト 値 VFP コ プ ロ セ ッ サのハー ド ウ ェ アでは処理 さ れず、 サポー ト コ ー ド にバ ウ ン ス さ れ て完了 さ れ る 特定のデー タ 値。 こ の よ う なデー タ には、 無限大、 NaN、 通常 と 異な る 値、 0 が含まれます。 こ れ ら の値をハー ド ウ ェ アで完全に ま たは部分的にサポー ト す る か、 サポー ト コ ー ド にその処理の完了を ゆだね る かは、 実装で選択で き ます。 未サポー ト デー タ の処理か ら 発生 し たすべての例外は、 対応す る 例外 イ ネーブル ビ ッ ト がセ ッ ト さ れてい る 場合に、 ユーザ コ ー ド に ト ラ ッ プ さ れます。 ミス キ ャ ッ シ ュ ミ ス 参照。 未定義 未定義命令 ト ラ ッ プ を生成す る 命令を指 し ます。 ARM 例外の詳細については、 『ARM アーキ テ ク チ ャ リ フ ァ レ ン ス マニ ュ アル』 を参照 し て下 さ い。 無効化 有効ビ ッ ト を ク リ ア し 、 キ ャ ッ シ ュ ラ イ ン を無効 と し てマー ク す る こ と 。 こ の処理 は、 キ ャ ッ シ ュ ラ イ ン に有効な キ ャ ッ シ ュ エ ン ト リ が含まれていない場合に必ず実 行す る 必要があ り ます。 例えば、 キ ャ ッ シ ュ の フ ラ ッ シ ュ 後は、 すべての ラ イ ンが 無効にな り ます。 無視 (IGN) メ モ リ 書 き 込みを無視す る 必要があ り ます。 命令あた り のク ロ ッ ク 数 (CPI) 命令あ た り のサ イ ク ル数 (CPI) 参照。 命令あた り のサイ ク ル数 (CPI) 命令あ た り のサ イ ク ル数 (ま たは命令あ た り の ク ロ ッ ク 数) は、 1 ク ロ ッ ク サ イ ク ル で実行可能な コ ン ピ ュ ー タ 命令の数の指標です。 こ の性能指標は、 同 じ 命令セ ッ ト を実装 し た異な る CPU のパフ ォ ーマ ン ス を比較す る ために使用で き ます。 値が低い ほ ど、 パフ ォ ーマ ン ス が高い こ と を意味 し ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-14 用語集 命令キ ャ ッ シ ュ プ ロ セ ッ サ と メ イ ン メ モ リ と の間に配置 さ れ、 使用頻度の高い命令の コ ピーを格納 お よ び取得す る ために使用 さ れ る 、 オ ンチ ッ プの高速ア ク セ ス メ モ リ 位置のブ ロ ッ ク 。 こ れに よ っ て、 メ モ リ ア ク セ ス の平均速度が大幅に向上す る ため、 プ ロ セ ッ サ のパフ ォ ーマ ン ス も 向上 し ます。 命令サイ ク ル数 命令がパ イ プ ラ イ ン の実行ス テージ を占有す る サ イ ク ル数。 メ モ リ 管理ユニ ッ ト (MMU) キ ャ ッ シ ュ と 、 メ モ リ ブ ロ ッ ク に対す る ア ク セ ス許可を制御 し 、 仮想ア ド レ ス を物 理ア ド レ ス に変換す る ハー ド ウ ェ ア。 メ モ リ コ ヒ ーレ ン シ メ モ リ は、 デー タ 読み出 し ま たは命令フ ェ ッ チに よ っ て読み出 さ れた値が、 最後に その位置に書 き 込まれた値 と 一致 し ていれば、 コ ヒ ーレ ン ト です。 メ モ リ コ ヒ ーレ ン シは、 メ イ ン メ モ リ 、 ラ イ ト バ ッ フ ァ 、 キ ャ ッ シ ュ を搭載 し たシ ス テ ムの よ う に、 対応す る 物理位置が複数存在す る 場合には、 実現が難 し く な り ます。 メ モ リ バン ク イ ン タ ー リ ーブ さ れてい る メ モ リ において、 並列にい く つかに分割 さ れてい る メ モ リ の う ちの 1 つで、 通常は 1 ワー ド 幅です。 こ れに よ っ て、 一度に単一ワー ド ではな く 、 複数ワー ド を読み書き で き ます。 すべての メ モ リ バン ク は同時にア ド レ ス指定 さ れ、 バン ク イ ネーブル信号ま たはチ ッ プセ レ ク ト 信号に よ っ て、 転送ご と にア ク セ ス さ れ る バン ク が決定 さ れます。 連続 し た ワー ド ア ド レ スへア ク セ スする と 、 連続 し た バン ク へのア ク セ ス が発生 し ます。 こ れに よ っ て、 バン ク ア ク セ ス に関連する遅延は 隣接バン ク へのア ク セ ス中に発生する ため、 メ モ リ 転送が高速化 さ れます。 メ モ リ 保護ユニ ッ ト (MPU) メ モ リ ブ ロ ッ ク に対す る ア ク セ ス許可を制御す る ハー ド ウ ェ ア。 MMU と は異な り 、 MPU は仮想ア ド レ ス か ら 物理ア ド レ スへの変換は行ない ません。 モニ タ デバ ッ グモー ド 互いに排他な 2 つのデバ ッ グモー ド の う ちの 1 つ。 モニ タ デバ ッ グモー ド では、 プ ロ セ ッ サは、 デバ ッ グモニ タ ま たはオペレーテ ィ ン グ シ ス テ ム のデバ ッ グ タ ス ク で 提供 さ れ る ソ フ ト ウ ェ ア アボー ト ハン ド ラ を稼働 し ます。 こ れに よ っ て、 ブ レー ク ポ イ ン ト ま たは ウ ォ ッ チポ イ ン ト に遭遇 し て、 通常のプ ロ グ ラ ム実行が中断 し てい る 間であ っ て も 、 重要な シ ス テ ム割 り 込み処理を継続す る こ と がで き ます。 ホール ト モー ド も 参照。 予測不能 読み出 し の場合は、 こ の位置か ら 読み出 し に よ っ て返 さ れ るデー タ が予測不能な こ と を意味 し ます。 デー タ はどの よ う な値に も な り 得ます。 書き 込みの場合は、 こ の位置 への書き込みに よ っ て予測不能な動作が発生する か、 デバ イ ス の構成に予測不能な変 化が発生する こ と を意味 し ます。 予測不能な命令に よ っ て、 プ ロ セ ッ サ ま たはシ ス テ ムのいずれかの部分に停止やハン グが発生 し ない よ う にする必要があ り ます。 読み出 し 読み出 し は、 ロ ー ド の意味を持つ メ モ リ 操作 と し て定義 さ れます。 ARM 命令の LDM、 LDRD、 LDC、 LDR、 LDRT、 LDRSH、 LDRH、 LDRSB、 LDRB、 LDRBT、 LDREX、 RFE、 STREX、 SWP、 SWPB と 、 Thumb 命令の LDM、 LDR、 LDRSH、 LDRH、 LDRSB、 LDRB、 POP が該当 し ます。 ハー ド ウ ェ アで高速化 さ れ る Java バ イ ト コ ー ド の場合は、 Java ス タ ッ ク の状態 と Java ハー ド ウ ェ ア ア ク セ ラ レーシ ョ ン の実装に よ っ ては、 大量の読み出 し が発生す る 可能性があ り ます。 予約 制御レ ジ ス タ ま たは命令の形式に含まれてい る フ ィ ール ド が実装で定義 さ れ る 、 ま たは 0 ではない場合に予測不能な結果が引 き 起 こ さ れ る 場合、 その フ ィ ール ド は予 約 と 記載 さ れてい ます。 こ れ ら の フ ィ ール ド は、 アーキ テ ク チ ャ の将来の拡張に備 え て予約 さ れ る 場合 と 、 実装固有の場合があ り ます。 実装で使用 さ れないすべての 予約ビ ッ ト は、 0 と し て読み書 き す る 必要があ り ます。 ラ イ ト スルー (WT) ラ イ ト ス ルー キ ャ ッ シ ュ では、 キ ャ ッ シ ュ が更新 さ れ る と 同時にデー タ が メ イ ン メ モ リ に書 き 込ま れます。 ラ イ ト バ ッ ク (WB) ラ イ ト バ ッ ク キ ャ ッ シ ュ では、 キ ャ ッ シ ュ ミ ス に続 く ラ イ ン の置 き 換えでキ ャ ッ シ ュ か ら 削除 さ れたデー タ のみが、 メ イ ン メ モ リ に書 き 込まれ ます。 それ以外の場 合は、 プ ロ セ ッ サの書 き 込みに よ っ てのみ、 キ ャ ッ シ ュ が更新 さ れ ます。 コ ピー バ ッ ク と 呼ばれ る こ と も あ り ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-15 用語集 ラ イ ト バッ フ ァ デー タ キ ャ ッ シ ュ と メ イ ン メ モ リ と の間に、 FIFO バ ッ フ ァ と し て配置 さ れてい る 高 速 メ モ リ ブ ロ ッ ク 。 メ イ ン メ モ リ への ス ト ア を最適化す る ために使用 さ れます。 ライン キ ャ ッ シ ュ ラ イ ン 参照。 リ ト ルエ ンデ ィ ア ン デー タ ワー ド の最下位バ イ ト か ら 最上位バ イ ト ま でが、 メ モ リ ア ド レ ス の昇順に保 存 さ れ る バ イ ト 配列方式。 ビ ッ グエ ンデ ィ ア ン と エ ンデ ィ ア ン形式 も 参照。 リ ト ルエ ンデ ィ ア ン メ モ リ 次の よ う な条件が満た さ れ る メ モ リ を指 し ます。 • ワー ド ア ラ イ ン さ れた ア ド レ ス のバ イ ト ま たはハーフ ワー ド が、 そのア ド レ ス にあ る ワー ド 内の最下位のバ イ ト ま たはハーフ ワー ド であ る 。 • ハーフ ワー ド ア ラ イ ン さ れた ア ド レ ス のバ イ ト が、 そのア ド レ ス にあ る ハーフ ワー ド 内の最下位バ イ ト であ る 。 ビ ッ グエ ンデ ィ ア ン メ モ リ も 参照。 領域 命令ま たはデー タ メ モ リ 空間の一部分。 例外 プ ロ グ ラ ムの実行に割 り 込む必要があ る ほ ど重大であ る と 判断 さ れた、 フ ォール ト ま たはエ ラ ー イ ベン ト 。 例 と し て、 無効な メ モ リ ア ク セ ス、 外部割 り 込み、 未定義 命令の実行な ど が挙げ ら れます。 例外が発生す る と 、 通常のプ ロ グ ラ ム フ ロ ーが中 断 さ れ、 対応す る 例外ベ ク タ で実行が再開 さ れ ます。 例外ベ ク タ には、 例外を処理 す る 割 り 込みハン ド ラ の最初の命令が含ま れてい ます。 例外処理ルーチ ン 割 り 込みハン ド ラ 参照。 例外ベ ク タ 割 り 込みベ ク タ 参照。 ロー ド / ス ト ア アーキテ ク チ ャ デー タ 処理操作が、 メ モ リ の内容に対 し て直接ではな く 、 レ ジ ス タ の内容に対 し て のみ行われ る プ ロ セ ッ サアーキ テ ク チ ャ 。 ロー ド ス ト ア ユニ ッ ト (LSU) プ ロ セ ッ サで、 ロ ー ド / ス ト ア転送を処理す る 部分。 ワー ド 32 ビ ッ ト のデー タ 項目。 ワー ド 不変 ワー ド 不変シ ス テ ム では、 リ ト ルエ ンデ ィ ア ン動作 と ビ ッ グエ ンデ ィ ア ン動作 と の 切 り 替え時に、 各 メ モ リ バ イ ト のア ド レ ス が変更 さ れ ます。 こ れに よ っ て、 一方の エ ンデ ィ ア ン形式でア ド レ ス A が割 り 当て ら れたバ イ ト は、 他方のエ ンデ ィ ア ン形 式ではア ド レ ス A EOR 3 が割 り 当て ら れ ます。 こ のため、 メ モ リ のア ラ イ ン さ れた ワー ド は、 エ ンデ ィ ア ン形式に関係な く 、 常に メ モ リ 上の同 じ 4 バ イ ト に同 じ 順序 で構成 さ れ ます。 エ ンデ ィ ア ン形式の切 り 替えは、 バ イ ト 配列が変わ る ためではな く 、 バ イ ト ア ド レ ス が変更 さ れ る ために発生 し ます。 ARM アーキ テ ク チ ャ では、 ARMv3 以降のバージ ョ ン で ワー ド 不変シ ス テ ム がサポー ト さ れてい ます。 ワー ド 不 変のサポー ト が選択 さ れてい る 場合、 ア ン ア ラ イ ン ド ア ド レ ス が指定 さ れた ロ ー ド / ス ト ア命令の動作は命令に よ っ て異な り 、 通常は、 ア ン ア ラ イ ン ド ア ク セ ス に対 し て予測 さ れ る 動作にはな り ません。 ワー ド 不変シ ス テ ム では、 エ ンデ ィ ア ン形式が 設定 さ れ る 前の リ セ ッ ト ハン ド ラ の冒頭部分を除いては、 常に期待通 り のバ イ ト ア ド レ ス が生成 さ れ る エ ンデ ィ ア ン形式を使用 し 、 リ セ ッ ト ハン ド ラ の冒頭部分では、 ア ラ イ ン し た ワー ド メ モ リ ア ク セ ス のみを使用す る こ と をお勧め し ます。 バ イ ト 不変 も 参照。 割 り 込みハン ド ラ 割 り 込みが発生 し た と き に、 プ ロ セ ッ サの制御が渡 さ れ る プ ロ グ ラ ム。 割 り 込みベ ク タ 下位 メ モ リ 、 ま たはハ イ ベ ク タ が構成 さ れてい る 場合は上位 メ モ リ の複数の固定ア ド レ ス の 1 つで、 対応す る 割 り 込みハン ド ラ の最初の命令が格納 さ れてい ます。 ARM DDI 0388FJ ID013111 Copyright © 2008-2010 ARM. All rights reserved. Non-Confidential Glossary-16