• 検索結果がありません。

NVIC のプ ログ ラ マモデル

ドキュメント内 Cortex-M3 Technical Reference Manual (ページ 161-200)

こ のセ ク シ ョ ン では、 NVIC レ ジ ス タ の リ ス ト を示 し 、 説明を行い ます。 こ の セ ク シ ョ ンは次の項目か ら 構成 さ れてい ます。

NVIC レ ジ ス タ のマ ッ プ

NVIC レ ジ ス タ の説明

p. 8-7

8.2.1 NVIC レ ジ ス タ のマ ッ プ

NVIC レ ジ ス タ の一覧を、 テーブル 8-1 に示 し ます。 NVIC はシ ス テ ム制御空 間に含まれてい ます。 NVIC 空間は次の よ う に分け ら れてい ます。

0xE000E0000xE000E00F、 割 り 込み タ イ プ レ ジ ス タ

0xE000E0100xE000E0FF、 シ ス テ ム タ イ マ

0xE000E1000xE000ECFF、 NVIC

0xE000ED000xE000ED8F、 シ ス テ ム制御ブ ロ ッ ク (次の項目が含まれ ます)

— CPUID

— シ ス テ ム制御、 コ ン フ ィ ギ ュ レーシ ョ ン、 ス テー タ ス

— フ ォ ール ト 通知

0xE000EF000xE000EF0F、 ソ フ ト ウ ェ ア ト リ ガ例外レ ジ ス タ

0xE000EFD00xE000EFFF、 ID 空間

テーブル 8-1 NVIC レ ジ ス タ

レ ジ ス タ 名 タ イ プ ア ド レ ス リ セ ッ ト 時の値 ページ

割 り 込み制御 タ イ プ レ ジ ス タ 読み出 し 専用 0xE000E004 a 8-7 補助制御レ ジ ス タ 読み出 し / 書 き 込み 0xE000E008 0x00000000 8-8 SysTick 制御お よ びス テー タ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000E010 0x00000000 8-9 SysTick リ ロ ー ド 値レ ジ ス タ 読み出 し / 書 き 込み 0xE000E014 予測不能 8-11 SysTick 現在値レ ジ ス タ 読み出 し / 書 き 込み

ク リ ア

0xE000E018 予測不能 8-11

SysTick 較正値レ ジ ス タ 読み出 し 専用 0xE000E01C STCALIB 8-12 割 り 込み要求 (IRQ)0 ~ 31 イ ネーブルセ ッ

ト レ ジ ス タ

読み出 し / 書 き 込み 0xE000E100 0x00000000 8-13

. . . . .

. . . . .

. . . . . 割 り 込み要求 (IRQ)224 ~ 239 イ ネーブル

セ ッ ト レ ジ ス タ

読み出 し / 書 き 込み 0xE000E11C 0x00000000 8-13

割 り 込み要求 (IRQ)0 ~ 31 イ ネーブル ク リ ア レ ジ ス タ

読み出 し / 書 き 込み 0xE000E180 0x00000000 8-14

. . . . .

. . . . .

. . . . .

割 り 込み要求 (IRQ)224 ~ 239 イ ネーブル ク リ ア レ ジ ス タ

読み出 し / 書 き 込み 0xE000E19C 0x00000000 8-14

割 り 込み要求 (IRQ)0 ~ 31 保留セ ッ ト レ ジ ス タ

読み出 し / 書 き 込み 0xE000E200 0x00000000 8-15

. . . . .

. . . . .

. . . . .

割 り 込み要求 (IRQ)224 ~ 239 保留セ ッ ト レ ジ ス タ

読み出 し / 書 き 込み 0xE000E21C 0x00000000 8-15

割 り 込み要求 (IRQ)0 ~ 31 保留 ク リ ア レ ジ ス タ

読み出 し / 書 き 込み 0xE000E280 0x00000000 8-16

. . . . .

. . . . .

. . . . .

割 り 込み要求 (IRQ)224 ~ 239 保留 ク リ ア レ ジ ス タ

読み出 し / 書 き 込み 0xE000E29C 0x00000000 8-16

割 り 込み要求 (IRQ)0 ~ 31 ア ク テ ィ ブ ビ ッ ト レ ジ ス タ

読み出 し 専用 0xE000E300 0x00000000 8-17

. . . . .

. . . . .

テーブル 8-1 NVIC レ ジ ス タ (続 く )

レ ジ ス タ 名 タ イ プ ア ド レ ス リ セ ッ ト 時の値 ページ

. . . . . 割 り 込み要求 (IRQ)224 ~ 239 ア ク テ ィ ブ

ビ ッ ト レ ジ ス タ

読み出 し 専用 0xE000E31C 0x00000000 8-17

通常割 り 込み要求 (IRQ)0 ~ 3 優先度レ ジ ス タ

読み出 し / 書 き 込み 0xE000E400 0x00000000 8-17

. . . . .

. . . . .

. . . . .

通常割 り 込み要求 (IRQ)224 ~ 239 優先度レ ジ ス タ

読み出 し / 書 き 込み 0xE000E4EC 0x00000000 8-17

CPUID ベース レ ジ ス タ 読み出 し 専用 0xE000ED00 0x412FC230 8-19 割 り 込み制御状態レ ジ ス タ 読み出 し / 書 き 込み、

ま たは読み出 し 専用

0xE000ED04 0x00000000 8-20

ベ ク タ テーブルオ フ セ ッ ト レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED08 0x00000000 8-22 アプ リ ケーシ ョ ン割 り 込み / リ セ ッ ト 制御

レ ジ ス タ

読み出 し / 書 き 込み 0xE000ED0C 0x00000000b 8-24

シ ス テ ム制御レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED10 0x00000000 8-27 構成制御レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED14 0x00000000 8-28 シ ス テ ムハン ド ラ 4 ~ 7 優先度レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED18 0x00000000 8-30 シ ス テ ムハン ド ラ 8 ~ 11 優先度レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED1C 0x00000000 8-30 シ ス テ ムハン ド ラ 12 ~ 15 優先度レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED20 0x00000000 8-30 シ ス テ ムハン ド ラ 制御お よ び状態レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED24 0x00000000 8-31 構成可能フ ォール ト ス テー タ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED28 0x00000000 8-35 ハー ド フ ォール ト ス テー タ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED2C 0x00000000 8-41 デバ ッ グ フ ォール ト ス テー タ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED30 0x00000000 8-42 メ モ リ 管理ア ド レ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED34 予測不能 8-44 バ ス フ ォール ト ア ド レ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED38 予測不能 8-45

テーブル 8-1 NVIC レ ジ ス タ (続 く )

レ ジ ス タ 名 タ イ プ ア ド レ ス リ セ ッ ト 時の値 ページ

補助フ ォール ト ス テー タ ス レ ジ ス タ 読み出 し / 書 き 込み 0xE000ED3C 0x00000000 8-46 PFR0: プ ロ セ ッ サ機能レ ジ ス タ 0 読み出 し 専用 0xE000ED40 0x00000030 -PFR0: プ ロ セ ッ サ機能レ ジ ス タ 1 読み出 し 専用 0xE000ED44 0x00000200 -DFR0: デバ ッ グ機能レ ジ ス タ 0 読み出 し 専用 0xE000ED48 0x00100000 -AFR0: 補助機能レ ジ ス タ 0 読み出 し 専用 0xE000ED4C 0x00000000 -MMFR0: メ モ リ モデル機能レ ジ ス タ 0 読み出 し 専用 0xE000ED50 0x00000030 -MMFR1: メ モ リ モデル機能レ ジ ス タ 1 読み出 し 専用 0xE000ED54 0x00000000 -MMFR2: メ モ リ モデル機能レ ジ ス タ 2 読み出 し 専用 0xE000ED58 0x00000000 -MMFR3: メ モ リ モデル機能レ ジ ス タ 3 読み出 し 専用 0xE000ED5C 0x00000000 -ISAR0: ISA 機能レ ジ ス タ 0 読み出 し 専用 0xE000ED60 0x01141110 -ISAR1: ISA 機能レ ジ ス タ 1 読み出 し 専用 0xE000ED64 0x02111000 -ISAR2: ISA 機能レ ジ ス タ 2 読み出 し 専用 0xE000ED68 0x21112231 -ISAR3: ISA 機能レ ジ ス タ 3 読み出 し 専用 0xE000ED6C 0x01111110 -ISAR4: ISA 機能レ ジ ス タ 4 読み出 し 専用 0xE000ED70 0x01310102

-ソ フ ト ウ ェ ア ト リ ガ割 り 込みレ ジ ス タ 書 き 込み専用 0xE000EF00 - 8-46 ペ リ フ ェ ラ ル識別レ ジ ス タ (PID4) 読み出 し 専用 0xE000EFD0 0x04 -ペ リ フ ェ ラ ル識別レ ジ ス タ (PID5) 読み出 し 専用 0xE000EFD4 0x00 -ペ リ フ ェ ラ ル識別レ ジ ス タ (PID6) 読み出 し 専用 0xE000EFD8 0x00 -ペ リ フ ェ ラ ル識別レ ジ ス タ (PID7) 読み出 し 専用 0xE000EFDC 0x00 -ペ リ フ ェ ラ ル識別レ ジ ス タ ビ ッ ト [7:0]

(PID0)

読み出 し 専用 0xE000EFE0 0x00

-ペ リ フ ェ ラ ル識別レ ジ ス タ ビ ッ ト [15:8]

(PID1)

読み出 し 専用 0xE000EFE4 0xB0

-ペ リ フ ェ ラ ル識別レ ジ ス タ ビ ッ ト [23:16]

(PID2)

読み出 し 専用 0xE000EFE8 0x2B

テーブル 8-1 NVIC レ ジ ス タ (続 く )

レ ジ ス タ 名 タ イ プ ア ド レ ス リ セ ッ ト 時の値 ページ

8.2.2 NVIC レ ジ ス タ の説明

以下のセ ク シ ョ ン では、 NVIC レ ジ ス タ の使用法について説明 し ます。

Note

メ モ リ 保護ユニ ッ ト

(MPU) レ ジ ス タ 、 お よ びデバ ッ グ レ ジ ス タ については、

それぞれ 9 章

Memory Protection Unit

と 10 章

Core Debug

を参照 し て下 さ い。

割 り 込み コ ン ト ロー ラ タ イ プ レ ジ ス タ

NVIC がサポー ト し てい る 割 り 込み線の数を確認す る には、 割 り 込み コ ン ト ロ ー ラ タ イ プ レ ジ ス タ を読み込みます。

こ の レ ジ ス タ のア ド レ ス、 ア ク セ ス タ イ プ、 リ セ ッ ト 時の状態は次の と お り です。

ア ド レ ス 0xE000E004 ア ク セ ス 読み出 し 専用

リ セ ッ ト 時 そのプ ロ セ ッ サ実装で定義 さ れてい る 割 り 込みの数に依存 し ま す。

割 り 込みコ ン ト ローラ タ イ プ レジ ス タのビ ッ ト 割 り 当てを、 図 8-1 に示し ます。

ペ リ フ ェ ラ ル識別レ ジ ス タ ビ ッ ト [31:24]

(PID3)

読み出 し 専用 0xE000EFEC 0x00

-コ ン ポーネ ン ト 識別レ ジ ス タ ビ ッ ト [7:0]

(CID0)

読み出 し 専用 0xE000EFF0 0x0D

-コ ン ポーネ ン ト 識別レ ジ ス タ ビ ッ ト [15:8]

(CID1)

読み出 し 専用 0xE000EFF4 0xE0

-コ ン ポーネ ン ト 識別レ ジ ス タ ビ ッ ト [23:16] (CID2)

読み出 し 専用 0xE000EFF8 0x05

-コ ン ポーネ ン ト 識別レ ジ ス タ ビ ッ ト [31:24] (CID3)

読み出 し 専用 0xE000EFFC 0xB1 -a. リ セ ッ ト 時の値は、 定義 さ れてい る 割 り 込みの数に よ っ て異な り ます。

b. ビ ッ ト [10:8] は リ セ ッ ト さ れます。 ENDIANESS ビ ッ ト の ビ ッ ト [15] は、 BIGEND のサンプ リ ン グに よ る リ セ ッ ト 時にセ ッ ト さ れます。

テーブル 8-1 NVIC レ ジ ス タ (続 く )

レ ジ ス タ 名 タ イ プ ア ド レ ス リ セ ッ ト 時の値 ページ

図 8-1 割 り 込み コ ン ト ロー ラ タ イ プ レ ジ ス タ のビ ッ ト 割 り 当て 割 り 込み コ ン ト ロ ー ラ タ イ プ レ ジ ス タ の ビ ッ ト 割 り 当ての説明を、 テーブ ル 8-2 に示 し ます。

補助制御レ ジ ス タ

補助制御レ ジ ス タ は、 プ ロ セ ッ サ内部の特定の機能面を無効にす る ために使 用 し ます。

こ の レ ジ ス タ のア ド レ ス、 ア ク セ ス タ イ プ、 リ セ ッ ト 時の状態は次の と お り です。

ア ド レ ス 0xE000E008

ア ク セ ス 読み出 し / 書 き 込み リ セ ッ ト 時 0x00000000

補助制御レ ジ ス タ の ビ ッ ト 割 り 当て を、 図 8-2 に示 し ます。

31 5 4 0

INTLINESNUM 予約

テーブル 8-2 割 り 込み コ ン ト ロー ラ タ イ プ レ ジ ス タ のビ ッ ト 割 り 当て

ビ ッ ト フ ィ ール ド 機能

[31:5] - 予約

[4:0] INTLINESNUM 割 り 込み線の合計数で、 32 個のグループ 単位で示 さ れます。

b00000 = 0...32a b00001 = 33...64 b00010 = 65...96 b00011 = 97...128 b00100 = 129...160 b00101 = 161...192 b00110 = 193...224 b00111 = 225...256a

a. プ ロ セ ッ サは、 1 ~ 240 の外部割 り 込みのみをサポー ト し ます。

図 8-2 補助制御レ ジ ス タ のビ ッ ト 割 り 当て 補助制御レ ジ ス タ の ビ ッ ト 割 り 当ての説明を、 テーブル 8-3 に示 し ます。

SysTick 制御お よびス テー タ ス レ ジ ス タ

SysTick 機能を有効にす る には、 SysTick 制御お よ びス テー タ ス レ ジ ス タ を使 用 し ます。

こ の レ ジ ス タ のア ド レ ス、 ア ク セ ス タ イ プ、 リ セ ッ ト 時の状態は次の と お り です。

ア ド レ ス 0xE000E010

ア ク セ ス 読み出 し / 書 き 込み リ セ ッ ト 時 0x00000000

SysTick 制御およびス テータ ス レジ ス タのビ ッ ト 割 り 当てを、 図 8-3 に示し ます。

31 0

予約

1 2

DISFOLD DISDEFWBUF

3

DISMCYCINT

テーブル 8-3 補助制御レ ジ ス タ のビ ッ ト 割 り 当て

ビ ッ ト フ ィ ール ド 機能

[31:3] - 予約

[2] DISFOLD IT フ ォールデ ィ ン グ を禁止 し ます。

[1] DISDEFWBUF デフ ォ ル ト の メ モ リ マ ッ プ ア ク セ ス中の ラ イ ト バ ッ フ ァ の使用を禁止 し ます。

こ れに よ っ て、 すべてのバ ス フ ォール ト が正確なバ ス フ ォール ト にな り ますが、

メ モ リ へス ト アが完了 し なければ、 次の命令を実行で き ないため、 プ ロ セ ッ サの 性能が低下 し ます。

[0] DISMCYCINT マルチサ イ ク ル命令の割 り 込みを禁止 し ます。 こ れに よ っ て、 割 り 込みの ス タ ッ キ ン グが発生す る 前に LDM/STM が完了す る ため、 プ ロ セ ッ サの割 り 込みレ イ テ ン シが増大 し ます。

図 8-3 SysTick 制御およびス テー タ ス レ ジ ス タ のビ ッ ト 割 り 当て SysTick 制御お よ びス テー タ ス レ ジ ス タ の ビ ッ ト 割 り 当ての説明を、 テーブ ル 8-4 に示 し ます。

31 0

予約 予約

16 15 17

COUNTFLAG

1 2

CLKSOURCE TICKINT ENABLE

テーブル 8-4 SysTick 制御およびス テー タ ス レ ジ ス タ のビ ッ ト 割 り 当て

ビ ッ ト フ ィ ール ド 機能

[31:17] - 予約

[16] COUNTFLAG 最後の読み出 し の後に タ イ マが 0 にな っ た場合、 1 を返 し ます。 アプ リ ケーシ ョ ンに よ り SysTick 制御お よ びス テー タ ス レ ジ ス タ の ど の部分で も 読み出 さ れ る と 、 ク リ ア さ れます。 デバ ッ ガが DAP を使用 し て読み出 し た と き 、 AHB-AP 制御レ ジ ス タ の MasterType ビ ッ ト が 0 にセ ッ ト さ れてい る 場合だけは、 こ の ビ ッ ト は読み 出 し 時に ク リ ア さ れます。

[2] CLKSOURCE 0 = 外部参照 ク ロ ッ ク 1 = コ ア ク ロ ッ ク

参照 ク ロ ッ ク が提供 さ れない場合は、 コ ア ク ロ ッ ク と 同 じ ク ロ ッ ク が供給 さ れ る よ う に 1 の ま ま保持 し ます。 コ ア ク ロ ッ ク には、 参照 ク ロ ッ ク と 比べて最低で も 2.5 倍以上の ス ピー ド が要求 さ れます。 こ の要件が満た さ れない場合、 カ ウ ン ト 値は予測不能です。

[1] TICKINT 1 = 0 ま でカ ウ ン ト ダ ウ ンす る と 、 SysTick ハン ド ラ を保留 し ます。

0 = 0 ま でカ ウ ン ト ダ ウ ン し て も 、 SysTick ハン ド ラ を保留 し ません。 ソ フ ト ウ ェ アは、 COUNTFLAG を使用 し て、 0 ま でカ ウ ン ト さ れたかど う かを判断で き ます。

[0] ENABLE 1 = カ ウ ン タ はマルチシ ョ ッ ト 方式で動作 し ます。 つま り 、 カ ウ ン タ に リ ロ ー ド 値 が ロ ー ド さ れてか ら 、 カ ウ ン ト ダ ウ ンが開始 さ れます。 0 にな る と 、

COUNTFLAG を 1 にセ ッ ト し ます。 ま た、 オプシ ョ ン で、 TICKINT に基づいて SysTick ハン ド ラ を保留す る こ と も で き ます。 その後、 リ ロ ー ド 値を再び ロ ー ド

し て、 カ ウ ン ト を開始 し ます。

0 = カ ウ ン タ は禁止 さ れてい ます。

ドキュメント内 Cortex-M3 Technical Reference Manual (ページ 161-200)

関連したドキュメント