8.5MB

本ドキュメントはCypress (サイプレス) 製品に関する情報が記載されております。
FUJITSU SEMICONDUCTOR
CM71-10147-2
CONTROLLER MANUAL
FR80
32 ビット・マイクロコントローラ
MB91605A Series
ハードウェアマニュアル
FR80
32 ビット・マイクロコントローラ
MB91605A Series
ハードウェアマニュアル
富士通セミコンダクターのマイコンを効率的に開発するための情報を下記 URL にてご紹介いたします。
ご採用を検討中 , またはご採用いただいたお客様に有益な情報を公開しています。
開発における最新の注意事項に関しては , 必ず「Check Sheet」を参照してください。
「デザインレビューシート」はシステム開発において , 問題を未然に防ぐことを目的として , 最低限必要と思わ
れるチェック項目をリストにしたものです。
http://edevice.fujitsu.com/micom/jp-support/
富士通セミコンダクター株式会社
MB91605A シリーズ
はじめに
富士通セミコンダクター半導体製品につきまして , 平素より格別のご愛顧を賜り厚くお礼申
し上げます。
MB91605A シリーズをご利用になる前に , 本書および『データシート』をご一読ください。
■ 本書の目的と対象読者
本書は , 実際に MB91605A シリーズを使用して製品を開発される技術者を対象に ,
MB91605A シリーズの機能や動作 , 使い方について解説しています。
■ 商標
FR は , FUJITSU RISC controller の略で , 富士通セミコンダクター株式会社の製品です。
その他の社名および製品名は各社の商標もしくは登録商標です。
■ サンプルプログラムおよび開発環境
FR80ファミリの周辺機能を動作させるためのサンプルプログラムを無償で提供してお
ります。また , MB91605A シリーズで使用する開発環境も掲載しています。当社マイ
コンの動作仕様や使用方法の確認などにお役立てください。
• マイコンサポート情報
http://jp.fujitsu.com/microelectronics/products/micom/support/
* サンプルプログラムは , 予告なしに変更することがあります。また , サンプルプログ
ラムは標準的な動作や使い方を示したものですので,お客様のシステム上でご使用の際
は十分評価された上でご使用ください。
また , サンプルプログラムの使用に起因し生じた損害については , 当社は一切その責任
を負いません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
i
MB91605A シリーズ
•
•
•
•
•
•
本資料の記載内容は , 予告なしに変更することがありますので , ご用命の際は営業部門にご確認くださ
い。
本資料に記載された動作概要や応用回路例は , 半導体デバイスの標準的な動作や使い方を示したもので ,
実際に使用する機器での動作を保証するものではありません。したがいまして , これらを使用するにあ
たってはお客様の責任において機器の設計を行ってください。これらの使用に起因する損害などについ
ては , 当社はその責任を負いません。
本資料に記載された動作概要・回路図を含む技術情報は , 当社もしくは第三者の特許権 , 著作権等の知的
財産権やその他の権利の使用権または実施権の許諾を意味するものではありません。また , これらの使用
について , 第三者の知的財産権やその他の権利の実施ができることの保証を行うものではありません。し
たがって , これらの使用に起因する第三者の知的財産権やその他の権利の侵害について , 当社はその責任
を負いません。
本資料に記載された製品は , 通常の産業用 , 一般事務用 , パーソナル用 , 家庭用などの一般的用途に使用
されることを意図して設計・製造されています。極めて高度な安全性が要求され , 仮に当該安全性が確保
されない場合 , 社会的に重大な影響を与えかつ直接生命・身体に対する重大な危険性を伴う用途(原子力
施設における核反応制御 , 航空機自動飛行制御 , 航空交通管制 , 大量輸送システムにおける運行制御 , 生
命維持のための医療機器 , 兵器システムにおけるミサイル発射制御をいう), ならびに極めて高い信頼性
が要求される用途(海底中継器 , 宇宙衛星をいう)に使用されるよう設計・製造されたものではありませ
ん。したがって , これらの用途にご使用をお考えのお客様は , 必ず事前に営業部門までご相談ください。
ご相談なく使用されたことにより発生した損害などについては , 責任を負いかねますのでご了承くださ
い。
半導体デバイスはある確率で故障が発生します。当社半導体デバイスが故障しても , 結果的に人身事故 ,
火災事故 , 社会的な損害を生じさせないよう , お客様は , 装置の冗長設計 , 延焼対策設計 , 過電流防止対策
設計 , 誤動作防止設計などの安全設計をお願いします。
本資料に記載された製品を輸出または提供する場合は , 外国為替及び外国貿易法および米国輸出管理関
連法規等の規制をご確認の上 , 必要な手続きをおとりください。
• 本書に記載されている社名および製品名などの固有名詞は , 各社の商標または登録商標です。
Copyright ©2008-2010 FUJITSU SEMICONDUCTOR LIMITED All rights reserved.
ii
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
本書の使い方
■ 機能の探し方
本書では次の方法で , 使いたい機能の説明を探すことができます。
• 目次から探す
本書の内容を記載順に示します。
• レジスタ一覧から探す
本デバイスのレジスタが一覧で記載されています。調べたいレジスタの名称から ,
配置アドレスやレジスタの説明ページを探すことができます。
本文中では各レジスタの配置アドレスを記載しておりません。各レジスタのアド
レスを確認するときは , 「付録 A I/O マップ」および「付録 B レジスタ一覧」を
参照してください。
• 索引から探す
周辺機能の名称などのキーワードから機能の説明を探すことができます。
■ 章について
本書では , 基本的に 1 つの周辺機能を 1 つの章で説明しています。
■ 用語について
本書で使用している用語について示します。
用語
CM71-10147-2
説明
ワード
32 ビット単位でのアクセスを指します。
ハーフワード
16 ビット単位でのアクセスを指します。
バイト
8 ビット単位でのアクセスを指します。
FUJITSU SEMICONDUCTOR LIMITED
iii
MB91605A シリーズ
iv
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
目次
第1章
1.1
1.2
1.3
1.4
第2章
2.1
2.2
2.3
第3章
概要 ............................................................................................................1
MB91605A シリーズの概要 ................................................................................................... 2
MB91605A シリーズの品種構成 ............................................................................................ 5
MB91605A シリーズのブロックダイヤグラム ...................................................................... 6
外形寸法図 ............................................................................................................................. 7
MB91605A シリーズの端子 .......................................................................9
端子配列図 ........................................................................................................................... 10
端子機能一覧 ....................................................................................................................... 11
入出力回路形式 ................................................................................................................... 20
CPU ..........................................................................................................23
3.1 メモリ空間 ........................................................................................................................... 24
3.2 内部アーキテクチャの特徴 .................................................................................................. 26
3.3 動作モード ........................................................................................................................... 27
3.4 パイプライン ....................................................................................................................... 28
3.5 命令概要 .............................................................................................................................. 30
3.5.1
算術演算 .................................................................................................................... 30
3.5.2
ロードとストア ......................................................................................................... 30
3.5.3
分岐 ........................................................................................................................... 31
3.5.4
論理演算とビット操作 .............................................................................................. 31
3.5.5
ダイレクトアドレッシング ....................................................................................... 31
3.5.6
ビットサーチ ............................................................................................................. 31
3.5.7
その他 ........................................................................................................................ 31
3.6 基本プログラミングモデル .................................................................................................. 32
3.7 レジスタ .............................................................................................................................. 33
3.7.1
汎用レジスタ (R0 ∼ R15) ......................................................................................... 33
3.7.2
プログラムステータスレジスタ (PS) ........................................................................ 34
3.7.3
プログラムカウンタ (PC) .......................................................................................... 38
3.7.4
テーブルベースレジスタ (TBR) ................................................................................ 39
3.7.5
リターンポインタ (RP) ............................................................................................. 39
3.7.6
システムスタックポインタ (SSP) ............................................................................. 39
3.7.7
ユーザスタックポインタ (USP) ................................................................................ 40
3.7.8
乗除算レジスタ (Multiply & Divide register) .............................................................. 41
3.8 データ構造 ........................................................................................................................... 42
3.8.1
ビットオーダリング .................................................................................................. 42
3.8.2
バイトオーダリング .................................................................................................. 42
3.8.3
ワードアライメント .................................................................................................. 43
3.9 アドレッシング ................................................................................................................... 44
3.9.1
ダイレクトアドレッシング領域 ................................................................................ 44
3.9.2
20 ビットアドレッシング領域 .................................................................................. 45
3.9.3
32 ビットアドレッシング領域 .................................................................................. 45
3.9.4
ベクタテーブル初期領域 ........................................................................................... 45
3.10 分岐命令 .............................................................................................................................. 46
3.10.1
遅延スロット付き動作 .............................................................................................. 46
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
v
MB91605A シリーズ
3.10.2
遅延スロットなし動作 .............................................................................................. 48
3.11 EIT ( 例外・割込み・トラップ ) ......................................................................................... 49
3.11.1
EIT 要因 ..................................................................................................................... 49
3.11.2
EIT からの復帰 .......................................................................................................... 49
3.11.3
割込みレベル ............................................................................................................. 50
3.11.4
I フラグ ...................................................................................................................... 50
3.11.5
割込みレベルマスクレジスタ (ILM) .......................................................................... 52
3.11.6
割込み・NMI に対するレベルマスク ......................................................................... 52
3.11.7
割込み制御レジスタ (ICR) ......................................................................................... 53
3.11.8
システムスタックポインタ (SSP) ............................................................................. 53
3.11.9
割込みスタック ......................................................................................................... 53
3.11.10
テーブルベースレジスタ (TBR) ................................................................................ 54
3.11.11
EIT ベクタテーブル ................................................................................................... 54
3.11.12
多重 EIT 処理 ............................................................................................................. 55
3.11.13
動作 ........................................................................................................................... 56
3.11.14
INT 命令の動作 .......................................................................................................... 58
3.11.15
INTE 命令の動作 ....................................................................................................... 58
3.11.16
ステップトレーストラップの動作 ............................................................................. 58
3.11.17
未定義命令例外の動作 .............................................................................................. 59
3.11.18
RETI 命令の動作 ....................................................................................................... 60
3.11.19
遅延スロットと EIT ................................................................................................... 60
第4章
命令キャッシュメモリ .............................................................................61
4.1 概要 ..................................................................................................................................... 62
4.2 構成 ..................................................................................................................................... 63
4.3 レジスタ .............................................................................................................................. 65
4.3.1
命令 / データキャッシュ領域設定レジスタ (CARR) ................................................. 65
4.3.2
命令キャッシュ制御レジスタ (ICHCR) ..................................................................... 67
4.3.3
命令キャッシュサイズレジスタ (ISIZE) .................................................................... 69
4.3.4
命令キャッシュ機能レジスタ (IFUNC) ..................................................................... 70
4.4 動作説明 .............................................................................................................................. 72
4.4.1
初期状態 .................................................................................................................... 72
4.4.2
命令キャッシュのキャッシュ対象領域 ..................................................................... 72
4.4.3
命令キャッシュの無効化 ........................................................................................... 73
4.4.4
命令キャッシュの動作許可 ....................................................................................... 73
4.4.5
命令キャッシュロック機能 ....................................................................................... 73
4.4.6
各キャッシュ動作状態でのキャッシュ内容 .............................................................. 75
第5章
データキャッシュメモリ ..........................................................................77
5.1 概要 ..................................................................................................................................... 78
5.2 構成 ..................................................................................................................................... 79
5.3 レジスタ .............................................................................................................................. 81
5.3.1
データキャッシュ制御レジスタ (DCHCR) ................................................................ 81
5.3.2
データキャッシュサイズレジスタ (DSIZE) ............................................................... 82
5.3.3
データキャッシュ機能レジスタ (DFUNC) ................................................................ 83
5.4 動作説明 .............................................................................................................................. 85
5.4.1
初期状態 .................................................................................................................... 85
5.4.2
データキャッシュのキャッシュ対象領域 .................................................................. 85
5.4.3
データキャッシュの無効化 ....................................................................................... 86
vi
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
データキャッシュの動作許可 .................................................................................... 86
各キャッシュ動作状態でのキャッシュ内容 .............................................................. 86
キャッシュオフ時の RAM 動作モード ...................................................................... 87
5.4.4
5.4.5
5.4.6
第6章
動作モード ...............................................................................................89
6.1 概要 ..................................................................................................................................... 90
6.2 構成 ..................................................................................................................................... 91
6.3 レジスタ .............................................................................................................................. 92
6.3.1
バスモードデータレジスタ (BMODR) ....................................................................... 92
6.3.2
モードレジスタ (MODR) ........................................................................................... 93
6.4 動作説明 .............................................................................................................................. 94
6.4.1
動作モード設定方法 .................................................................................................. 94
6.4.2
各種モード詳細 ......................................................................................................... 94
第7章
クロック生成部 ........................................................................................95
7.1 概要 ..................................................................................................................................... 96
7.2 構成 ..................................................................................................................................... 97
7.2.1
クロック生成部 ......................................................................................................... 97
7.2.2
ソースクロック (SRCCLK) 選択部 ............................................................................ 99
7.3 端子 ................................................................................................................................... 100
7.4 レジスタ ............................................................................................................................ 101
7.4.1
クロックソース設定レジスタ (CSELR) .................................................................. 102
7.4.2
クロックソース監視レジスタ (CMONR) ................................................................. 105
7.4.3
発振安定待ち設定レジスタ (CSTBR) ...................................................................... 107
7.4.4
PLL 設定レジスタ (PLLCR) ..................................................................................... 109
7.5 動作説明 ............................................................................................................................ 113
7.5.1
クロックソースの動作説明 ..................................................................................... 113
7.5.2
ソースクロック (SRCCLK) の切換え ...................................................................... 115
7.5.3
PLL クロック (PLLCLK) 生成のための逓倍率 ......................................................... 117
第8章
クロック分周制御部 ...............................................................................119
8.1 概要 ................................................................................................................................... 120
8.2 内部クロック ..................................................................................................................... 121
8.3 構成 ................................................................................................................................... 123
8.4 レジスタ ............................................................................................................................ 124
8.4.1
分周設定レジスタ 0 (DIVR0) ................................................................................... 125
8.4.2
分周設定レジスタ 1 (DIVR1) ................................................................................... 126
8.4.3
分周設定レジスタ 2 (DIVR2) ................................................................................... 127
8.5 分周比 ................................................................................................................................ 128
第9章
メインタイマ ..........................................................................................131
9.1 概要 ................................................................................................................................... 132
9.2 構成 ................................................................................................................................... 133
9.3 レジスタ ............................................................................................................................ 134
9.3.1
メインタイマ制御レジスタ (MTMCR) ..................................................................... 135
9.4 割込み ................................................................................................................................ 139
9.5 動作説明と設定手順例 ....................................................................................................... 140
9.5.1
メインタイマの動作 ................................................................................................ 140
9.5.2
ストップモードへの遷移について ........................................................................... 142
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
vii
MB91605A シリーズ
第 10 章
低消費電力モード ..................................................................................143
10.1 概要 ................................................................................................................................... 144
10.2 構成 ................................................................................................................................... 145
10.3 レジスタ ............................................................................................................................ 147
10.3.1
スタンバイ制御レジスタ (STBCR) ......................................................................... 148
10.3.2
スリープレート設定レジスタ (SLPRR) .................................................................. 151
10.4 動作説明と設定手順例 ....................................................................................................... 153
10.4.1
クロック制御時の動作 ............................................................................................ 153
10.4.2
ドーズモード時の動作 ............................................................................................ 155
10.4.3
スリープモード時の動作 ......................................................................................... 156
10.4.4
メインタイマモード時の動作 .................................................................................. 158
10.4.5
ストップモード時の動作 ......................................................................................... 160
10.5 使用上の注意 ..................................................................................................................... 162
第 11 章
リセット .................................................................................................163
11.1 概要 ................................................................................................................................... 164
11.2 構成 ................................................................................................................................... 165
11.3 端子 ................................................................................................................................... 167
11.4 レジスタ ............................................................................................................................ 168
11.4.1
リセット要因レジスタ (RSTRR) ............................................................................. 169
11.4.2
リセット制御レジスタ (RSTCR) ............................................................................. 171
11.5 動作説明 ............................................................................................................................ 173
11.5.1
リセットの種類 ....................................................................................................... 173
11.5.2
リセット要因 ........................................................................................................... 174
11.5.3
リセットの動作 ....................................................................................................... 175
11.5.4
イレギュラーリセット ............................................................................................ 179
11.6 動作状態と遷移 ................................................................................................................. 180
第 12 章
割込みコントローラ ...............................................................................185
12.1 概要 ................................................................................................................................... 186
12.2 構成 ................................................................................................................................... 187
12.3 レジスタ ............................................................................................................................ 188
12.3.1
割込みコントロールレジスタ (ICR00 ∼ ICR47) ..................................................... 189
12.4 動作説明と設定手順例 ....................................................................................................... 191
12.4.1
割込みコントローラの動作説明 .............................................................................. 191
12.5 使用上の注意 ..................................................................................................................... 193
第 13 章
NMI 入力 ................................................................................................195
13.1 概要 ................................................................................................................................... 196
13.2 動作説明 ............................................................................................................................ 197
第 14 章
割込み要求一括読出し機能 ....................................................................199
14.1 概要 ................................................................................................................................... 200
14.2 構成 ................................................................................................................................... 201
14.3 レジスタ ............................................................................................................................ 202
14.3.1
割込み要求一括読出しレジスタ 0 上位(IRPR0H)................................................. 203
14.4 使用上の注意 ..................................................................................................................... 204
viii
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 15 章
遅延割込み .............................................................................................205
15.1 概要 ................................................................................................................................... 206
15.2 構成 ................................................................................................................................... 207
15.3 レジスタ ............................................................................................................................ 208
15.3.1
遅延割込み制御レジスタ (DICR) ............................................................................. 209
15.4 動作説明と設定手順例 ....................................................................................................... 210
15.4.1
遅延割込みの動作説明 ............................................................................................ 210
15.5 使用上の注意 ..................................................................................................................... 211
第 16 章
外部バスインタフェース ........................................................................213
16.1 概要 ................................................................................................................................... 214
16.2 構成 ................................................................................................................................... 215
16.3 レジスタ ............................................................................................................................ 217
16.3.1
SRAM/FLASH モードレジスタ (MCMRx) ............................................................... 218
16.3.2
SRAM/FLASH タイミングレジスタ (MCTRx) ......................................................... 221
16.3.3
SRAM/FLASH エリアレジスタ (MCARx) ................................................................ 224
16.3.4
SDRAM モードレジスタ (SDMRx) .......................................................................... 226
16.3.5
SDRAM リフレッシュタイマレジスタ (SDRTRx) .................................................. 229
16.3.6
SDRAM パワーダウンカウントレジスタ (SDPDRx) .............................................. 230
16.3.7
SDRAM タイミングレジスタ (SDTRx) ................................................................... 231
16.3.8
SDRAM コマンドレジスタ (SDCMRx) ................................................................... 234
16.3.9
クロックコントロールレジスタ (CLKCTL) ............................................................. 235
16.4 レジスタ設定例 ................................................................................................................. 236
16.4.1
SRAM/FLASH 領域のリードアクセス例 ................................................................. 237
16.4.2
SRAM/FLASH 領域のライトアクセス例 ................................................................. 239
16.4.3
SRAM/FLASH 領域のアドレス領域設定例 ............................................................. 243
16.5 使用上の注意 ..................................................................................................................... 244
第 17 章
I/O ポート ...............................................................................................245
17.1 概要 ................................................................................................................................... 246
17.2 構成 ................................................................................................................................... 249
17.3 端子 ................................................................................................................................... 250
17.4 レジスタ ............................................................................................................................ 251
17.4.1
ポートデータレジスタ (PDR2 ∼ PDRE) ................................................................ 252
17.4.2
データ方向レジスタ (DDR2 ∼ DDRE) ................................................................... 253
17.4.3
ポートファンクションレジスタ (PFR2 ∼ PFRE) ................................................... 254
17.4.4
プルアップ制御レジスタ (PCR) .............................................................................. 268
17.4.5
ADER 制御レジスタ (ADER) ................................................................................... 269
第 18 章
外部割込み制御部 ..................................................................................271
18.1 概要 ................................................................................................................................... 272
18.2 構成 ................................................................................................................................... 273
18.3 端子 ................................................................................................................................... 275
18.4 レジスタ ............................................................................................................................ 276
18.4.1
外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) ....................................... 277
18.4.2
外部割込み要因レジスタ (EIRR0 ∼ EIRR2) ........................................................... 280
18.4.3
割込み許可レジスタ (ENIR0 ∼ ENIR2) .................................................................. 282
18.5 動作説明と設定手順例 ....................................................................................................... 283
18.5.1
外部割込み制御部の動作 ......................................................................................... 283
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
ix
MB91605A シリーズ
18.5.2
18.5.3
第 19 章
スタンバイモードからの復帰 .................................................................................. 286
スリープモードからの復帰 ..................................................................................... 288
ウォッチドッグタイマ ...........................................................................289
19.1 概要 ................................................................................................................................... 290
19.2 構成 ................................................................................................................................... 291
19.3 レジスタ ............................................................................................................................ 293
19.3.1
ウォッチドッグタイマ 0 制御レジスタ (WDTCR0) ................................................ 294
19.3.2
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) .......................................... 297
19.4 動作説明と設定手順例 ....................................................................................................... 298
19.4.1
ウォッチドッグタイマの動作 .................................................................................. 298
第 20 章
16 ビットリロードタイマ ......................................................................301
20.1 概要 ................................................................................................................................... 302
20.2 構成 ................................................................................................................................... 303
20.3 端子 ................................................................................................................................... 305
20.4 レジスタ ............................................................................................................................ 306
20.4.1
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) .................................... 307
20.4.2
16 ビットタイマリロードレジスタ A(TMRLRA0 ∼ TMRLRA2) ............................. 312
20.4.3
16 ビットタイマレジスタ (TMR0 ∼ TMR2) ........................................................... 313
20.5 割込み ................................................................................................................................ 314
20.6 動作説明と設定手順例 ....................................................................................................... 315
20.6.1
インターバルタイマモード時の動作 ....................................................................... 316
20.6.2
イベントカウンタモード時の動作 ........................................................................... 329
20.6.3
カスケードモード時の動作 ..................................................................................... 335
20.7 使用上の注意 ..................................................................................................................... 337
第 21 章
ベースタイマ入出力選択機能 ................................................................339
21.1 概要 ................................................................................................................................... 340
21.2 構成 ................................................................................................................................... 342
21.3 端子 ................................................................................................................................... 343
21.4 レジスタ ............................................................................................................................ 345
21.4.1
入出力選択レジスタ 0123 (BTSEL0123) ................................................................ 346
21.4.2
入出力選択レジスタ 4567 (BTSEL4567) ................................................................ 348
21.4.3
入出力選択レジスタ 89AB (BTSEL89AB) ............................................................... 350
21.4.4
同時ソフト起動レジスタ (BTSSSR) ....................................................................... 352
21.5 入出力モード ..................................................................................................................... 356
21.5.1
入出力モード 0 (16 ビットタイマ標準モード ) ....................................................... 356
21.5.2
入出力モード 1 ( タイマフルモード ) ...................................................................... 357
21.5.3
入出力モード 2 ( 外部トリガ共有モード ) ............................................................... 359
21.5.4
入出力モード 3 ( 他チャネルトリガ共有モード ) .................................................... 360
21.5.5
入出力モード 4 ( タイマ起動 / 停止モード ) 時の動作 ............................................. 362
21.5.6
入出力モード 5 ( 同時ソフト起動モード ) 時の動作 ............................................... 364
21.5.7
入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) 時の動作 ........................... 365
21.5.8
入出力モード 7 ( タイマ起動モード ) 時の動作 ....................................................... 367
21.5.9
入出力モード 8 ( 他チャネルトリガ共有タイマ起動 / 停止モード ) 時の動作 ......... 368
x
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 22 章
ベースタイマ ..........................................................................................371
ベースタイマの概要 ................................................................................................ 372
ベースタイマのブロックダイヤグラム ................................................................... 374
ベースタイマのレジスタ ......................................................................................... 379
ベースタイマの動作 ................................................................................................ 387
32 ビットモード動作 ............................................................................................... 389
ベースタイマの使用上の注意 .................................................................................. 391
ベースタイマ割込み ................................................................................................ 393
ベースタイマの機能別説明 ..................................................................................... 394
PWM 機能 ................................................................................................................ 395
PPG 機能 ................................................................................................................. 409
リロードタイマ機能 ................................................................................................ 424
PWC 機能 ................................................................................................................ 437
22.1
22.2
22.3
22.4
22.5
22.6
22.7
22.8
22.8.1
22.8.2
22.8.3
22.8.4
第 23 章
10 ビット A/D コンバータ ......................................................................453
23.1 概要 ................................................................................................................................... 454
23.2 構成 ................................................................................................................................... 455
23.3 端子 ................................................................................................................................... 456
23.4 レジスタ ............................................................................................................................ 457
23.4.1
A/D 制御レジスタ (ADCTH, ADCTL) ....................................................................... 458
23.4.2
ソフト変換アナログ入力選択レジスタ (ADCH) ...................................................... 460
23.4.3
A/D 変換結果レジスタ ch.0 ∼ ch.11(ADAT0 ∼ ADAT11) ...................................... 460
23.5 割込み ................................................................................................................................ 462
23.6 動作説明 ............................................................................................................................ 463
第 24 章
マルチファンクションシリアルインタフェース ....................................465
24.1
24.2
24.3
24.4
24.4.1
24.4.2
24.4.3
24.4.4
24.4.5
24.4.6
24.4.7
24.4.8
24.4.9
24.5
24.5.1
24.5.2
24.5.3
24.5.4
24.6
24.7
24.7.1
24.8
24.9
CM71-10147-2
マルチファンクションシリアルインタフェースの特長 .......................................... 467
UART( 非同期シリアルインタフェース ) ................................................................ 469
UART( 非同期シリアルインタフェース ) の概要 .................................................... 470
UART( 非同期シリアルインタフェース ) のレジスタ ............................................. 471
シリアル制御レジスタ (SCR) .................................................................................. 476
シリアルモードレジスタ (SMR) .............................................................................. 479
シリアルステータスレジスタ (SSR) ....................................................................... 482
拡張通信制御レジスタ (ESCR) ............................................................................... 485
受信データレジスタ / 送信データレジスタ (RDR/TDR) ......................................... 487
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) ........................................... 491
FIFO 制御レジスタ 1(FCR1) ................................................................................... 493
FIFO 制御レジスタ 0(FCR0) ................................................................................... 496
FIFO バイトレジスタ (FBYTE1/FBYTE2) ............................................................... 499
UART の割込み ....................................................................................................... 501
受信割込み発生とフラグセットのタイミング ......................................................... 503
受信 FIFO 使用時の割込み発生とフラグセットのタイミング ................................ 504
送信割込み発生とフラグセットのタイミング ......................................................... 506
送信 FIFO 使用時の割込み発生とフラグセットのタイミング ................................ 507
UART の動作 ........................................................................................................... 508
専用ボーレートジェネレータ .................................................................................. 513
ボーレート設定 ....................................................................................................... 514
動作モード 0 ( 非同期ノーマルモード ) 設定手順とプログラムフロー ................... 518
動作モード 1 ( 非同期マルチプロセッサモード ) 設定手順とプログラムフロー .... 520
FUJITSU SEMICONDUCTOR LIMITED
xi
MB91605A シリーズ
24.10
24.11
24.12
24.13
24.13.1
24.13.2
24.13.3
24.13.4
24.13.5
24.13.6
24.13.7
24.13.8
24.13.9
24.13.10
24.13.11
24.14
24.14.1
24.14.2
24.14.3
24.14.4
24.15
24.16
24.16.1
24.17
24.18
24.19
24.20
24.21
24.21.1
24.21.2
24.21.3
24.21.4
24.21.5
24.21.6
24.21.7
24.21.8
24.21.9
24.21.10
24.21.11
24.22
24.22.1
24.22.2
24.22.3
24.22.4
24.23
24.23.1
24.24
xii
UART モードの注意事項 ......................................................................................... 523
CSIO( クロック同期シリアルインタフェース ) ...................................................... 524
CSIO( クロック同期シリアルインタフェース ) の概要 ........................................... 525
CSIO( クロック同期シリアルインタフェース ) のレジスタ ................................... 526
シリアル制御レジスタ (SCR) .................................................................................. 531
シリアルモードレジスタ (SMR) .............................................................................. 534
シリアルステータスレジスタ (SSR) ....................................................................... 537
拡張通信制御レジスタ (ESCR) ............................................................................... 540
受信データレジスタ / 送信データレジスタ (RDR/TDR) ......................................... 542
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) ........................................... 545
FIFO 制御レジスタ 1(FCR1) ................................................................................... 547
FIFO 制御レジスタ 0(FCR0) ................................................................................... 550
FIFO バイトレジスタ (FBYTE1/FBYTE2) ............................................................... 553
シリアルモード選択レジスタ (SSEL89AB) ............................................................ 555
受信データミラーレジスタ / 送信データミラーレジスタ (RDRM/TDRM) .............. 557
CSIO( クロック同期シリアルインタフェース ) の割込み ....................................... 558
受信割込み発生とフラグセットのタイミング ......................................................... 559
受信 FIFO 使用時の割込み発生とフラグセットのタイミング ................................ 560
送信割込み発生とフラグセットのタイミング ......................................................... 562
送信 FIFO 使用時の割込み発生とフラグセットのタイミング ................................ 563
CSIO( クロック同期シリアルインタフェース ) の動作 ........................................... 564
専用ボーレートジェネレータ .................................................................................. 583
ボーレート設定 ....................................................................................................... 584
CSIO( クロック同期シリアルインタフェース ) 設定手順とプログラムフロー ....... 587
CSIO モードの注意事項 .......................................................................................... 589
I2C インタフェース ................................................................................................. 590
I2C インタフェースの概要 ...................................................................................... 591
I2C インタフェースのレジスタ ............................................................................... 592
I2C バス制御レジスタ (IBCR) .................................................................................. 597
シリアルモードレジスタ (SMR) .............................................................................. 603
I2C バスステータスレジスタ (IBSR) ....................................................................... 605
シリアルステータスレジスタ (SSR) ....................................................................... 609
受信データレジスタ / 送信データレジスタ (RDR/TDR) ......................................... 612
7 ビットスレーブアドレスマスクレジスタ (ISMK) ................................................. 614
7 ビットスレーブアドレスレジスタ (ISBA) ............................................................ 615
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) ........................................... 616
FIFO 制御レジスタ 1(FCR1) ................................................................................... 617
FIFO 制御レジスタ 0(FCR0) ................................................................................... 620
FIFO バイトレジスタ (FBYTE1/FBYTE2) ............................................................... 624
I2C インタフェースの割込み ................................................................................... 626
I2C インタフェース通信の動作 ............................................................................... 628
マスタモード ........................................................................................................... 629
スレーブモード ....................................................................................................... 647
バスエラー .............................................................................................................. 651
専用ボーレートジェネレータ .................................................................................. 652
I2C のフローチャート例 .......................................................................................... 654
I2C モードの注意事項 ............................................................................................. 668
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 25 章
DMA コントローラ (DMAC) ..................................................................671
25.1 概要 ................................................................................................................................... 672
25.2 構成 ................................................................................................................................... 673
25.3 レジスタ ............................................................................................................................ 674
25.3.1
グローバルコンフィギュレーションレジスタ (GCFR) ........................................... 676
25.3.2
チャネルコンフィギュレーションレジスタ (CCFR0 ∼ CCFR3) ........................... 677
25.3.3
チャネルステータスレジスタ (CSTR0 ∼ CSTR3) ................................................. 678
25.3.4
チャネルコントロールレジスタ (CCTR0 ∼ CCTR3) ............................................. 682
25.3.5
ソースベースアドレスレジスタ (SBA0 ∼ SBA3) ................................................... 685
25.3.6
デスティネーションベースアドレスレジスタ (DBA0 ∼ DBA3) ............................. 686
25.3.7
プライマリインデックスレジスタ (PIX0 ∼ PIX3) .................................................. 687
25.3.8
セカンダリインデックスレジスタ (SIX0 ∼ SIX3) .................................................. 688
25.3.9
バイトカウントリミットレジスタ (BCL0 ∼ BCL3) ................................................ 689
25.3.10
オルタネートポインタレジスタ (APR0 ∼ APR3) ................................................... 690
25.3.11
DMA 転送抑止 NMI フラグレジスタ (DNMIR) ........................................................ 691
25.3.12
DMA 転送抑止割込みレベルレジスタ (DILVR) ....................................................... 692
25.4 動作説明 ............................................................................................................................ 693
25.4.1
設定 ......................................................................................................................... 693
25.4.2
起動 ......................................................................................................................... 700
25.4.3
動作 ......................................................................................................................... 701
25.5 制御フロー ......................................................................................................................... 716
25.6 使用上の注意 ..................................................................................................................... 717
第 26 章
周辺機能による DMA 転送要求の発生 / クリア選択機能 .......................719
26.1 概要 ................................................................................................................................... 720
26.2 構成 ................................................................................................................................... 721
26.3 レジスタ ............................................................................................................................ 723
26.3.1
IO 転送要求設定レジスタ (IORR0 ∼ IORR3) ......................................................... 725
26.3.2
周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) ........................ 728
26.3.3
周辺機能による DMA 転送要求のクリア選択レジスタ 1 (ICSEL1) ........................ 730
26.3.4
周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) ........................ 732
26.3.5
周辺機能による DMA 転送要求のクリア選択レジスタ 3 (ICSEL3) ........................ 734
26.4 動作説明と設定手順例 ....................................................................................................... 736
26.4.1
DMA 転送時の動作 .................................................................................................. 736
第 27 章
リモコン受信 ..........................................................................................739
27.1 概要 ................................................................................................................................... 740
27.2 レジスタ ............................................................................................................................ 741
27.2.1
リモコン受信制御レジスタ (RCCR) ........................................................................ 741
27.2.2
リモコン受信割込み制御レジスタ (RCST) ............................................................. 743
27.2.3
デバイスアドレス設定レジスタ 1, 2 (RCADR1, RCADR2) .................................... 745
27.2.4
スタートビット High 幅設定レジスタ (RCSHW) .................................................... 746
27.2.5
High 幅設定レジスタ A (RCDAHW) ........................................................................ 747
27.2.6
High 幅設定レジスタ B (RCDBHW) ........................................................................ 748
27.2.7
データ格納レジスタ (RCDTHH, RCDTHL, RCDTLH, RCDTLL) ............................ 749
27.2.8
クロック分周設定レジスタ (RCCKD) ..................................................................... 750
27.3 動作説明と設定手順例 ....................................................................................................... 751
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
xiii
MB91605A シリーズ
第 28 章
シリアル書込み接続例 ...........................................................................755
28.1 使用する端子 ..................................................................................................................... 756
28.2 シリアル書込み接続例 ....................................................................................................... 757
28.2.1
同期シリアル書込み接続例 ..................................................................................... 757
28.2.2
非同期シリアル書込み接続例 .................................................................................. 758
第 29 章
デバイスの取扱いについて ....................................................................759
29.1 デバイス取扱い上の注意 ................................................................................................... 760
付録 .........................................................................................................................765
付録 A
I/O マップ ...............................................................................................766
付録 B
レジスタ一覧 ..........................................................................................779
付録 C
割込みベクタ ..........................................................................................793
付録 D
CPU の状態における端子状態 ...............................................................796
付録 E
命令一覧 .................................................................................................801
E.1
E.2
E.3
付録 F
命令一覧表の見かた .......................................................................................................... 801
命令一覧表 ......................................................................................................................... 805
遅延スロットに配置可能な命令一覧 ................................................................................. 814
プログラムローダモード ........................................................................816
索引 .........................................................................................................................829
端子索引 ..................................................................................................................839
xiv
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
本版での主な変更内容
ページ
-
変更内容 ( 詳細は本文を参照してください。)
-
本文の「時計モード」の記述をすべて削除。
18
第 2 章 MB91605A シリー 「表 2.2-1」の端子番号 158, 159 の端子名 MDQM3, MDQM2
ズの端子
の「機能」に , 以下の説明文を追加。
2.2 端子機能一覧
MDQM3:D[31:24], MDQM2:D[23:16]
25
第 3 章 CPU
3.1 メモリ空間
「図 3.1-1 」を訂正。
94
第 6 章 動作モード
6.4 動作説明
「6.4.2 起動シーケンス」を削除。
6.4.3 各種モード詳細
「■ユーザモード・外 ROM 外バス」に以下の説明文を追
加。
ユーザモード・外 ROM 外バス時の MD 端子 (MD1, MD0)
は , RST 解除後に変化しても動作モードは変化しません。
「■シリアルライタモード」に以下の説明文を追加。
シリアルライタモード時の MD 端子 (MD1, MD0) は常に固
定してください。MD 端子が変化すると動作モードが変化
してしまいます。
98
第 7 章 クロック生成部
7.2.1 クロック生成部
117
7.5.3 PLL クロック
(PLLCLK) 生成のための
逓倍率
144
第 10 章 低消費電力モー
ド
10.1 概要
「■ 概要」の以下の説明文を削除。
- 時計モード
メインクロック発振とメインタイマ以外のすべての動作を
停止できるモードです。
148
10.3.1 スタンバイ制御レ
ジスタ (STBCR)
「[bit6]:TIMER( メインタイマモード / 時計モード許可ビッ
ト )」の以下の説明文を削除。
時計モードからの復帰要因については , 「10.4.5 時計モード
時の動作」の「■ 時計モードからの復帰」を参照してくだ
さい。
160, 161
10.4 動作説明と設定手順
例
「10.4.5 時計モード時の動作」を削除。
183
第 11 章 リセット
11.6 動作状態と遷移
「■ 各状態遷移要求の優先順位」を訂正。
215
第 16 章 外部バス インタ
フェース
16.2 構成
「図 16.2-1」を訂正。
216
「■ PLL クロック (PLLCLK) 生成部」に < 注意事項 > を追
加。
< 注意事項 > を訂正。
「図 16.2-1」の下の説明文を追加。
※ MDQM3 は D[31:24], MDQM2 は D[23:16] のバイトイ
ネーブル出力端子です。
「図 16.2-2」を訂正。
xv
ページ
変更内容 ( 詳細は本文を参照してください。)
238
16.4.1 SRAM/FLASH 領域 「図 16.4-2」を訂正。
のリードアクセス例
239
240
16.4.2 SRAM/FLASH 領域 「図 16.4-3」を訂正。
のライトアクセス例
「図 16.4-4」を訂正。
241
「図 16.4-5」を訂正。
242
「図 16.4-6」を訂正。
243
16.4.3 SRAM/FLASH 領域 「表 16.4-1」を訂正。
のアドレス領域設定例
272
第 18 章 外部割込み制御
部
18.1 概要
「■ 概要」を訂正。
時計モード→メインタイマモード
286
18.5.2 スタンバイモード
からの復帰
「■ 概要」を訂正。
時計モード→メインタイマモード
290
第 19 章 ウォッチドッグ
タイマ
19.1 概要
「■ 概要」を訂正。
時計モード→メインタイマモード
291
19.2 構成
「図 19.2-1 」を訂正。
時計モード→メインタイマモード
295
19.3.1 ウォッチドッグタ
イマ 0 制御レジスタ
(WDTCR0)
「[bit6]:RSTP( ストップモード検出リセット許可ビット )」
および < 注意事項 > を訂正。
時計モード→メインタイマモード
298
19.4.1 ウォッチドッグタ
イマの動作
「■ 概要」,「■ 設定」, および < 注意事項 > を訂正。
時計モード→メインタイマモード
300
523
589
「■ ウォッチドッグリセット要求の出力」を訂正。
時計モード→メインタイマモード
第 24 章マルチファンク
ションシリアルインタ
フェース
668, 669
760
761
796
付録
816
∼
828
「24.18 CSIO モードの注意事項」を追加。
「24.24 I2C モードの注意事項」を追加。
第 29 章 デバイスの取扱
いについて
29.1 デバイス取扱い上の
注意
797
∼
800
「24.10 UART モードの注意事項」を追加。
「付録 D CPU の状態にお
ける端子状態」
付録
「●未使用端子の処理について」を訂正。
「● VDDI 端子 ( 内部電源 1.8V 系 ) と VDDE 端子 ( 外部端
子電源 3.3V 系 ) の電源投入 / 切断の順序について」の以下
の説明文を追加。
・電源 (VDDI/VDDE/ アナログ ) を同時に投入 / 切断するこ
とは問題ありません。
「付録 D CPU の状態における端子状態」を訂正。
表 D-1 の下に以下の 説明文を追加。
P:ポート接続時 F:指定機能使用時
「付録 F プログラムローダモード」を追加。
変更箇所は , 本文中のページ左側の│によって示しています。
xvi
第 1 章 概要
MB91605A シリーズの特長と基本的な仕様につい
て説明します。
1.1 MB91605A シリーズの概要
1.2 MB91605A シリーズの品種構成
1.3 MB91605A シリーズのブロックダイヤグラム
1.4 外形寸法図
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
1
第 1 章 概要
1.1
1.1
MB91605A シリーズ
MB91605A シリーズの概要
MB91605A シリーズは , 32 ビット RISC CPU を使用し , 高性能 / 高速な CPU 処理を要求さ
れる組込み制御用に各種周辺機能を内蔵したマイクロコントローラです。
本シリーズは , FR80 ファミリ CPU をベースにバスアクセスを強化し , より高速での使用に
対応したシリーズです。
■ FR80 ファミリ CPU
•
32 ビット RISC, ロード / ストアアーキテクチャ , パイプライン 5 段
•
動作周波数 80 MHz [PLL 使用:原振 16 MHz:5 逓倍 ]
•
16 ビット固定長命令 ( 基本命令 ) , 1 命令 /1 サイクル
•
メモリ−メモリ間転送 , ビット処理 , バレルシフトなどの命令:組込み用途に適し
た命令
•
関数入口 / 出口命令 , レジスタ内容のマルチロードストア命令:高級言語対応命令
•
レジスタ インターロック機能−アセンブラ記述の容易化
•
乗算器の内蔵 / 命令レベルでのサポート
-
符号付 32 ビット乗算:5 サイクル
-
符号付 16 ビット乗算:3 サイクル
•
割込み (PC, PS の退避 ) :6 サイクル , 16 プライオリティレベル
•
ハーバードアーキテクチャにより , プログラムアクセスとデータアクセスを同時に
実行可能
•
CPU 内の 4 ワードのキューにより , 命令の先取り機能を追加
•
FR ファミリとの命令互換
■ バスインタフェース
•
動作周波数:オンチップバス周波数の 1/1 ∼ 1/4 に設定可能
•
基本バスサイクル
リード:1 サイクル
ライト:3 サイクル
2
•
アドレスデータマルチプレックスバス対応
•
未使用アドレス端子は汎用入出力用端子として使用可能
•
書込み禁止設定可能 ( 読出し専用領域 , SDRAM 領域以外 )
•
領域ごとにプログラマブルな自動ウェイトサイクル発生機構 ( 最大 15 サイクル )
•
最小 1M バイト単位で領域設定が可能
•
完全に独立した 8 領域のチップセレクト出力が可能
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 1 章 概要
1.1
■ DMAC (DMA コントローラ )
•
チャネル数:4 チャネル
•
2 つの転送要因:内部ペリフェラル / ソフトウェア
•
アドレッシングモード:32 ビットフルアドレス指定 ( 増加 / 減少 / 固定 )
•
転送モード:バースト転送 / ブロック転送
•
転送データサイズ:1/2/4/32 バイト から選択可能
■ 16 ビットリロードタイマ (REALOS 用 1 チャネル含む )
•
チャネル数:3 チャネル
•
内部クロック:2/4/8/16/32/64 分周から選択可能
■ マルチファンクションシリアルインタフェース
•
16 バイト FIFO 付 8 チャネル , FIFO なし 4 チャネル
•
チャネルごとに , 使用方法を次の 3 つの中から選択可能
< UART >
-
全二重ダブルバッファ
-
パリティあり / なし選択可能
-
専用ボーレートジェネレータを内蔵
-
外部クロックをシリアルクロックとして使用可能
-
豊富なエラー検出機能あり ( パリティエラー , フレーミングエラー , オーバーラ
ンエラー )
< CSIO >
-
転送形式:クロック同期 ( 最大 10Mbps)
-
全二重ダブルバッファ
-
専用ボーレートジェネレータを内蔵
-
オーバーランエラー検出機能あり
< I2C >
-
標準モード ( 最大 100Kbps) / 高速モード ( 最大 400Kbps) に対応
■ 割込みコントローラ
CM71-10147-2
•
外部割込み:合計 25 本 ( 外部割込み端子:24 本+ NMI 端子:1 本 )
•
内部周辺機能からの割込み
•
NMI 端子以外は , 優先レベルをプログラマブルに設定可能 (16 レベル )
•
STOP 時の ウェイクアップ用として使用可能
FUJITSU SEMICONDUCTOR LIMITED
3
第 1 章 概要
1.1
MB91605A シリーズ
■ A/D コンバータ
•
チャネル数:12 チャネル
•
10 ビット分解能
•
逐次比較変換型:変換時間:約 8.1 μs
•
変換モード:単発変換モード , スキャン変換モード
•
起動要因:ソフトウェア / 外部トリガ
■ ベースタイマ
•
チャネル数:12 チャネル
•
チャネルごとに , 使用方法を次の中から選択可能
-
16/32 ビットリロードタイマ (32 ビットタイマとして使用する際は 2 チャネル単
位で使用 )
-
16 ビット PWM タイマ
-
16/32 ビット PWC タイマ (32 ビットタイマとして使用する際は 2 チャネル単位
で使用 )
•
16 ビット PPG タイマ
4 チャネル同時起動モードあり
■ HDMI-CEC/ リモコン受信
•
チャネル数:1 チャネル
•
HDMI-CEC 受信機能 ( 自動 ACK 応答機能あり )
•
リモコン受信機能 (4 バイトの受信バッファ搭載 )
■ その他のインターバルタイマ
•
ウォッチドッグタイマ:1 チャネル内蔵
■ I/O ポート
•
最大 92 ポート
■ その他の特長
•
クロックソースとして発振回路内蔵
•
リセット端子として INIT を用意
•
ウォッチドッグタイマリセット , ソフトウェアリセットあり
•
低消費電力モードとしてストップモードとスリープモードをサポート
•
ギア機能
-
•
4
タイムベースタイマ内蔵
電源電圧:3.3 V ± 0.3 V, 1.8 V ± 0.15 V 2 電源
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 1 章 概要
1.2
MB91605A シリーズ
1.2
MB91605A シリーズの品種構成
MB91605A シリーズの品種について説明します。
表 1.2-1 MB91605A シリーズの品種構成
品名
項目
CM71-10147-2
MB91605A
RAM 容量
128K バイト
命令キャッシュ容量
8K バイト
データキャッシュ容量
8K バイト
パッケージ
種類:LQFP-176
パッケージコード:FPT-176P-M07
端子ピッチ:0.50mm ピッチ
サイズ:24.0mm × 24.0mm
FUJITSU SEMICONDUCTOR LIMITED
5
第 1 章 概要
1.3
1.3
MB91605A シリーズ
MB91605A シリーズのブロックダイヤグラム
MB91605A シリーズのブロックダイヤグラムを図 1.3-1 に示します。
図 1.3-1 MB91605A シリーズのブロックダイヤグラム
TRST
IBREAK
ICS0~ICS2
ICLK
ICD0~ICD3
DSU4
FR80 CPU
コア
データキャッシュ
8 K バイト
命令キャッシュ
8 K バイト
バスコンバータ
32 ↔ 16
バスアダプタ
DMAC
4 チャネル
割込み
コントローラ
RAM
128 K バイト
外部割込み /NMI
24 チャネル /1 チャネル
INT0~INT23
NMI
マルチファンクション
シリアルインタフェース
[FIFO あり ] 8 チャネル
SIN0~SIN7
SOUT0~SOUT7
SCK0~SCK7
SDA0~SDA7
SCL0~SCL7
マルチファンクション
シリアルインタフェース
[FIFO なし ] 4 チャネル
SIN8~SIN11
SOUT8~SOUT11
SCK8~SCK11
SDA8~SDA11
SCL8~SCL11
オンチップバス
INIT
X0
X1
D16~D31
A0~A23
CS0~CS6,CS8
AS
RD
WE
MDQM2,MDQM3
MRAS
MCAS
MDWE
MCLKE
MCLK
SYSCLK
RDY
6
外部バス
TIN0~TIN2
インタ
TOUT0~TOUT2
フェース /
SDRAM
インタ
フェース
RCIN
クロック制御 /
リセット制御
16 ビット リロードタイマ
3 チャネル
A/D コンバータ
12 チャネル
HDMI-CEC/
リモコン受信
1 チャネル
ベースタイマ
12 チャネル
FUJITSU SEMICONDUCTOR LIMITED
AN0~AN11
ATRG
TIOA0~TIOA11
TIOB0~TIOB11
CM71-10147-2
第 1 章 概要
1.4
MB91605A シリーズ
外形寸法図
1.4
MB91605A シリーズで使用する各パッケージの外形寸法図を示します。
図 1.4-1 外形寸法図 (FPT-176P-M07)
プラスチック・LQFP, 176 ピン
リードピッチ
0.50mm
パッケージ幅×
パッケージ長さ
24.0 × 24.0mm
リード形状
ガルウィング
封止方法
プラスチックモールド
取付け高さ
1.70mm MAX
コード(参考)
P-LQFP-0176-2424-0.50
(FPT-176P-M07)
プラスチック・LQFP, 176 ピン
(FPT-176P-M07)
注 1)* 印寸法はレジン残りを含まず。レジン残りは片側 +0.25(.010)MAX
注 2)端子幅および端子厚さはメッキ厚を含む。
注 3)端子幅はタイバ切断残りを含まず。
26.00±0.20(1.024±.008)SQ
*24.00±0.10(.945±.004)SQ
0.145±0.055
(.006±.002)
132
89
133
88
0.08(.003)
Details of "A" part
+0.20
1.50 –0.10
+.008
(Mounting height)
.059 –.004
0.10±0.10
(.004±.004)
(Stand off)
0˚~8˚
INDEX
176
45
"A"
LEAD No.
1
44
0.50(.020)
0.22±0.05
(.009±.002)
0.08(.003)
0.50±0.20
(.020±.008)
0.60±0.15
(.024±.006)
0.25(.010)
M
©2004-2008
FUJITSU
LIMITED F176013S-c-1-2
C
2004 FUJITSU
LIMITEDMICROELECTRONICS
F176013S-c-1-1
単位:mm (inches)
注意:括弧内の値は参考値です。
最新の外形寸法図については , 下記の URL にてご確認ください。
http://edevice.fujitsu.com/package/jp-search/
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
7
第 1 章 概要
1.4
8
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A
シリーズの端子
MB91605A シリーズの端子と , 兼用端子の設定につ
いて説明します。
2.1 端子配列図
2.2 端子機能一覧
2.3 入出力回路形式
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
9
第 2 章 MB91605A シリーズの端子
2.1
MB91605A シリーズ
端子配列図
2.1
MB91605A シリーズには 1 種類のパッケージが用意されています。
■ LQFP-176
図 2.1-1 LQFP-176 の端子配列図
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
VDDE
P44/MCLKE
P43/MDWE
P42/MCAS
P41/MRAS
P40/RDY
P37/CS8
P36/CS6/TIN2
P35/CS5/TIN1
P34/AS/TIN0
VSS
VDDE
CS4
P33/CS3
P32/CS2
P31/CS1
P30/CS0
P23/MDQM2
P22/MDQM3
P21/WE
RD
P20/SYSCLK
VSS
VDDE
D31
D30
D29
D28
D27
D26
D25
D24
VSS
VDDE
D23
D22
D21
D20
D19
D18
D17
D16
VDDI
VSS
(TOP VIEW)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
LQFP-176
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
VDDE
PE7/INT23/TIOB7
PE6/INT22/TIOA7
PE5/INT21/TIOB6
PE4/INT20/TIOA6
PE3/INT19/TIOB5
PE2/INT18/TIOA5
PE1/INT17/TIOB4
PE0/INT16/TIOA4
PD7/TIOB3
PD6/TIOA3
PD5/TIOB2
PD4/TIOA2
PD3/TIOB1
PD2/TIOA1
PD1/TIOB0
PD0/TIOA0
VDDI
VSS
VDDE
PC7/INT15/SCK9/SCL9
PC6/INT14/SOUT9/SDA9
PC5/INT13/SIN9
PC4/INT12/SCK8/SCL8
PC3/INT11/SOUT8/SDA8
PC2/INT10/SIN8
PC1/INT9/TIOB9
PC0/INT8/TIOA9
PB7/INT7/TIOB8
PB6/INT6/TIOA8
PB5/INT5/TOUT2
PB4/INT4/TOUT1
PB3/INT3/TOUT0
PB2/INT2/SCK7/SCL7
PB1/INT1/SOUT7/SDA7
PB0/INT0/SIN7
PA5/SCK6/SCL6
PA4/SOUT6/SDA6
PA3/SIN6/ATRG
PA2/SCK5/SCL5
PA1/SOUT5/SDA5
PA0/SIN5
VDDI
VSS
VSS
VDDI
ICD0
ICD1
ICD2
ICD3
IBREAK
ICLK
TRST
AVCC
AVRH
AVSS
P60/AN0
P61/AN1
P62/AN2/SIN10
P63/AN3/SOUT10/SDA10
P64/AN4/SCK10/SCL10
P65/AN5/SIN11
P66/AN6/SOUT11/SDA11
P67/AN7/SCK11/SCL11
P70/AN8/TIOA10
P71/AN9/TIOB10
P72/AN10/TIOA11
P73/AN11/TIOB11
VDDE
VSS
P74/RCIN
P75/SIN0
P76/SOUT0/SDA0
P77/SCK0/SCL0
P80/SIN1
P81/SOUT1/SDA1
P82/SCK1/SCL1
P83/SIN2
P84/SOUT2/SDA2
P85/SCK2/SCL2
P90/SIN3
P91/SOUT3/SDA3
P92/SCK3/SCL3
P93/SIN4
P94/SOUT4/SDA4
P95/SCK4/SCL4
NMI
VDDE
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
VSS
VDDI
P45/MCLK
A0
A1
A2
A3
A4
A5
A6
A7
VDDE
VSS
A8
A9
A10
A11
A12
A13
A14
A15
VDDE
VSS
VDDI
P50/A16
P51/A17
P52/A18
P53/A19
P54/A20
P55/A21
P56/A22
P57/A23
VDDE
VSS
MD0
MD1
X0
X1
VSS
INIT
ICS0
ICS1
ICS2
VDDE
(LQFP-176-M07)
10
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
2.2
端子機能一覧
表 2.2-1 に , MB91605A シリーズの端子の機能一覧を示します。
■ 端子機能一覧表
表 2.2-1 端子機能一覧 (1 / 9)
端子番号
3
端子名
P45
MCLK
入出力
回路形式
A
機能
汎用入出力ポートです。
外部バスインタフェースのクロック出力端子です。
4 ∼ 11
A0 ∼ A7
B
外部バスインタフェースのアドレスバスの出力端子 (bit0
∼ bit7) です。
14 ∼ 21
A8 ∼ A15
B
外部バスインタフェースのアドレスバスの出力端子 (bit8
∼ bit15) です。
P50 ∼ P57
25 ∼ 32
A16 ∼ A23
汎用入出力ポートです。
A
外部バスインタフェースのアドレスバスの出力端子
(bit16 ∼ bit23) です。
35, 36
MD0, MD1
C
モード設定端子です。
37
X0
D
クロック ( 発振 ) 入力端子です。
38
X1
D
クロック ( 発振 ) 入出力端子です。
40
INIT
E
外部リセット入力端子です。
41 ∼ 43
ICS0 ∼ ICS2
B
開発ツール用ステータス出力端子です。
47 ∼ 50
ICD0 ∼ ICD3
F
開発ツール用データ入出力端子です。
51
IBREAK
G
開発ツール用ブレーク入力端子です。
52
ICLK
B
開発ツール用クロック出力端子です。
53
TRST
E
開発ツール用リセット入力端子です。
H
汎用入出力ポートです。
A/D コンバータ ch.0 用アナログ入力端子です。
57
58
P60
AN0
P61
AN1
H
P62
59
60
AN2
汎用入出力ポートです。
A/D コンバータ ch.1 用アナログ入力端子です。
汎用入出力ポートです。
H
A/D コンバータ ch.2 用アナログ入力端子です。
SIN10
マルチファンクションシリアルインタフェース ch.10 のシ
リアルデータ入力端子です。
P63
汎用入出力ポートです。
AN3
A/D コンバータ ch.3 用アナログ入力端子です。
SOUT10
SDA10
CM71-10147-2
H
マルチファンクションシリアルインタフェース ch.10 のシ
リアルデータ出力端子です。
マルチファンクションシリアルインタフェース ch.10 の
I2C データ入出力端子です。
FUJITSU SEMICONDUCTOR LIMITED
11
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (2 / 9)
端子番号
端子名
入出力
回路形式
P64
汎用入出力ポートです。
A/D コンバータ ch.4 用アナログ入力端子です。
AN4
61
62
63
64
SCK10
H
マルチファンクションシリアルインタフェース ch.10 の
I2C クロック入出力端子です。
P65
汎用入出力ポートです。
AN5
H
マルチファンクションシリアルインタフェース ch.11 のシ
リアルデータ入力端子です。
P66
汎用入出力ポートです。
AN6
A/D コンバータ ch.6 用アナログ入力端子です。
SOUT11
H
マルチファンクションシリアルインタフェース ch.11 の
I2C データ入出力端子です。
P67
汎用入出力ポートです。
AN7
A/D コンバータ ch.7 用アナログ入力端子です。
SCK11
H
AN8
AN9
汎用入出力ポートです。
H
汎用入出力ポートです。
H
汎用入出力ポートです。
H
ベースタイマ ch.11 のタイマ入出力端子です。
P73
汎用入出力ポートです。
AN11
H
P74
RCIN
SIN0
A/D コンバータ ch.11 用アナログ入力端子です。
ベースタイマ ch.11 のタイマ入力端子です。
A
P75
12
A/D コンバータ ch.10 用アナログ入力端子です。
TIOA11
TIOB11
72
A/D コンバータ ch.9 用アナログ入力端子です。
ベースタイマ ch.10 のタイマ入力端子です。
P72
71
A/D コンバータ ch.8 用アナログ入力端子です。
ベースタイマ ch.10 のタイマ出力端子です。
TIOB10
AN10
マルチファンクションシリアルインタフェース ch.11 のシ
リアルクロック入出力端子です。
マルチファンクションシリアルインタフェース ch.11 の
I2C クロック入出力端子です。
P71
68
マルチファンクションシリアルインタフェース ch.11 のシ
リアルデータ出力端子です。
SDA11
TIOA10
67
A/D コンバータ ch.5 用アナログ入力端子です。
SIN11
P70
66
マルチファンクションシリアルインタフェース ch.10 のシ
リアルクロック入出力端子です。
SCL10
SCL11
65
機能
汎用入出力ポートです。
HDMI-CEC/ リモコン入出力端子です。
汎用入出力ポートです。
A
マルチファンクションシリアルインタフェース ch.0 のシ
リアルデータ入力端子です。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (3 / 9)
端子番号
端子名
入出力
回路形式
機能
A
汎用入出力ポートです。
マルチファンクションシリアルインタフェース ch.0 のシ
リアルデータ出力端子です。
P76
73
74
SOUT0
SDA0
マルチファンクションシリアルインタフェース ch.0 の I2C
データ入出力端子です。
P77
汎用入出力ポートです。
SCK0
A
マルチファンクションシリアルインタフェース ch.0 の I2C
クロック入出力端子です。
SCL0
P80
75
SIN1
汎用入出力ポートです。
A
P81
76
77
SOUT1
A
P82
汎用入出力ポートです。
SCK1
A
SIN2
SOUT2
汎用入出力ポートです。
A
A
マルチファンクションシリアルインタフェース ch.2 のシ
リアルデータ入力端子です。
汎用入出力ポートです。
マルチファンクションシリアルインタフェース ch.2 のシ
リアルデータ出力端子です。
SDA2
マルチファンクションシリアルインタフェース ch.2 の I2C
データ入出力端子です。
P85
汎用入出力ポートです。
SCK2
マルチファンクションシリアルインタフェース ch.2 のシ
リアルクロック入出力端子です。
A
マルチファンクションシリアルインタフェース ch.2 の I2C
クロック入出力端子です。
SCL2
P90
81
マルチファンクションシリアルインタフェース ch.1 のシ
リアルクロック入出力端子です。
マルチファンクションシリアルインタフェース ch.1 の I2C
クロック入出力端子です。
P84
80
汎用入出力ポートです。
マルチファンクションシリアルインタフェース ch.1 のシ
リアルデータ出力端子です。
マルチファンクションシリアルインタフェース ch.1 の I2C
データ入出力端子です。
P83
79
マルチファンクションシリアルインタフェース ch.1 のシ
リアルデータ入力端子です。
SDA1
SCL1
78
マルチファンクションシリアルインタフェース ch.0 のシ
リアルクロック入出力端子です。
SIN3
CM71-10147-2
汎用入出力ポートです。
A
マルチファンクションシリアルインタフェース ch.3 のシ
リアルデータ入力端子です。
FUJITSU SEMICONDUCTOR LIMITED
13
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (4 / 9)
端子番号
端子名
入出力
回路形式
機能
A
汎用入出力ポートです。
マルチファンクションシリアルインタフェース ch.3 のシ
リアルデータ出力端子です。
P91
82
83
SOUT3
SDA3
マルチファンクションシリアルインタフェース ch.3 の I2C
データ入出力端子です。
P92
汎用入出力ポートです。
SCK3
A
マルチファンクションシリアルインタフェース ch.3 の I2C
クロック入出力端子です。
SCL3
P93
84
SIN4
汎用入出力ポートです。
A
P94
85
86
SOUT4
A
P95
汎用入出力ポートです。
SCK4
A
NMI
SIN5
93
94
SOUT5
E
NMI 入力端子です。
汎用入出力ポートです。
A
マルチファンクションシリアルインタフェース ch.5 のシ
リアルデータ入力端子です。
汎用入出力ポートです。
A
マルチファンクションシリアルインタフェース ch.5 のシ
リアルデータ出力端子です。
SDA5
マルチファンクションシリアルインタフェース ch.5 の I2C
データ入出力端子です。
PA2
汎用入出力ポートです。
SCK5
マルチファンクションシリアルインタフェース ch.5 のシ
リアルクロック入出力端子です。
A
SCL5
マルチファンクションシリアルインタフェース ch.5 の I2C
クロック入出力端子です。
PA3
汎用入出力ポートです。
SIN6
ATRG
14
マルチファンクションシリアルインタフェース ch.4 のシ
リアルクロック入出力端子です。
マルチファンクションシリアルインタフェース ch.4 の I2C
クロック入出力端子です。
PA1
92
汎用入出力ポートです。
マルチファンクションシリアルインタフェース ch.4 のシ
リアルデータ出力端子です。
マルチファンクションシリアルインタフェース ch.4 の I2C
データ入出力端子です。
PA0
91
マルチファンクションシリアルインタフェース ch.4 のシ
リアルデータ入力端子です。
SDA4
SCL4
87
マルチファンクションシリアルインタフェース ch.3 のシ
リアルクロック入出力端子です。
A
マルチファンクションシリアルインタフェース ch.6 のシ
リアルデータ入力端子です。
A/D コンバータ外部トリガ入力端子です。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (5 / 9)
端子番号
端子名
入出力
回路形式
機能
A
汎用入出力ポートです。
マルチファンクションシリアルインタフェース ch.6 のシ
リアルデータ出力端子です。
PA4
95
96
97
98
99
100 ∼ 102
103
SOUT6
SDA6
マルチファンクションシリアルインタフェース ch.6 の I2C
データ入出力端子です。
PA5
汎用入出力ポートです。
SCK6
A
SCL6
マルチファンクションシリアルインタフェース ch.6 の I2C
クロック入出力端子です。
PB0
汎用入出力ポートです。
INT0
I
マルチファンクションシリアルインタフェース ch.7 のシ
リアルデータ入力端子です。
PB1
汎用入出力ポートです。
INT1
外部割込み入力端子です。
SOUT7
I
マルチファンクションシリアルインタフェース ch.7 の I2C
データ入出力端子です。
PB2
汎用入出力ポートです。
INT2
外部割込み入力端子です。
SCK7
I
マルチファンクションシリアルインタフェース ch.7 のシ
リアルクロック入出力端子です。
SCL7
マルチファンクションシリアルインタフェース ch.7 の I2C
クロック入出力端子です。
PB3 ∼ PB5
汎用入出力ポートです。
INT3 ∼ INT5
I
外部割込み入力端子です。
TOUT0 ∼ TOUT2
16 ビットリロードタイマ ch.0 ∼ ch.2 の出力端子です。
PB6
汎用入出力ポートです。
INT6
I
INT7
外部割込み入力端子です。
ベースタイマ ch.8 のタイマ出力端子です。
汎用入出力ポートです。
I
外部割込み入力端子です。
TIOB8
ベースタイマ ch.8 のタイマ入力端子です。
PC0
汎用入出力ポートです。
INT8
I
TIOA9
INT9
TIOB9
CM71-10147-2
外部割込み入力端子です。
ベースタイマ ch.9 のタイマ入出力端子です。
PC1
106
マルチファンクションシリアルインタフェース ch.7 のシ
リアルデータ出力端子です。
SDA7
PB7
105
外部割込み入力端子です。
SIN7
TIOA8
104
マルチファンクションシリアルインタフェース ch.6 のシ
リアルクロック入出力端子です。
汎用入出力ポートです。
I
外部割込み入力端子です。
ベースタイマ ch.9 のタイマ入力端子です。
FUJITSU SEMICONDUCTOR LIMITED
15
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (6 / 9)
端子番号
端子名
入出力
回路形式
PC2
107
108
109
110
111
112
INT10
汎用入出力ポートです。
I
117
118
119
120
16
外部割込み入力端子です。
SIN8
マルチファンクションシリアルインタフェース ch.8 のシ
リアルデータ入力端子です。
PC3
汎用入出力ポートです。
INT11
外部割込み入力端子です。
SOUT8
I
マルチファンクションシリアルインタフェース ch.8 のシ
リアルデータ出力端子です。
SDA8
マルチファンクションシリアルインタフェース ch.8 の I2C
データ入出力端子です。
PC4
汎用入出力ポートです。
INT12
外部割込み入力端子です。
SCK8
I
マルチファンクションシリアルインタフェース ch.8 のシ
リアルクロック入出力端子です。
SCL8
マルチファンクションシリアルインタフェース ch.8 の I2C
クロック入出力端子です。
PC5
汎用入出力ポートです。
INT13
I
外部割込み入力端子です。
SIN9
マルチファンクションシリアルインタフェース ch.9 のシ
リアルデータ入力端子です。
PC6
汎用入出力ポートです。
INT14
外部割込み入力端子です。
SOUT9
I
マルチファンクションシリアルインタフェース ch.9 のシ
リアルデータ出力端子です。
SDA9
マルチファンクションシリアルインタフェース ch.9 の I2C
データ入出力端子です。
PC7
汎用入出力ポートです。
INT15
外部割込み入力端子です。
SCK9
I
PD0
TIOA0
PD1
TIOB0
PD2
TIOA1
PD3
TIOB1
PD4
TIOA2
マルチファンクションシリアルインタフェース ch.9 のシ
リアルクロック入出力端子です。
マルチファンクションシリアルインタフェース ch.9 の I2C
クロック入出力端子です。
SCL9
116
機能
A
A
A
A
A
汎用入出力ポートです。
ベースタイマ ch.0 のタイマ出力端子です。
汎用入出力ポートです。
ベースタイマ ch.0 のタイマ入力端子です。
汎用入出力ポートです。
ベースタイマ ch.1 のタイマ入出力端子です。
汎用入出力ポートです。
ベースタイマ ch.1 のタイマ入力端子です。
汎用入出力ポートです。
ベースタイマ ch.2 のタイマ出力端子です。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (7 / 9)
端子番号
121
122
123
端子名
PD5
TIOB2
PD6
TIOA3
PD7
TIOB3
入出力
回路形式
A
A
A
PE0
124
INT16
I
126
127
ベースタイマ ch.3 のタイマ入力端子です。
外部割込み入力端子です。
外部割込み入力端子です。
PE2
汎用入出力ポートです。
INT18
I
外部割込み入力端子です。
TIOA5
ベースタイマ ch.5 のタイマ入出力端子です。
PE3
汎用入出力ポートです。
INT19
I
INT20
外部割込み入力端子です。
ベースタイマ ch.5 のタイマ入力端子です。
汎用入出力ポートです。
I
外部割込み入力端子です。
TIOA6
ベースタイマ ch.6 のタイマ出力端子です。
PE5
汎用入出力ポートです。
INT21
I
INT22
外部割込み入力端子です。
ベースタイマ ch.6 のタイマ入力端子です。
PE6
131
汎用入出力ポートです。
ベースタイマ ch.4 のタイマ入力端子です。
TIOB6
130
ベースタイマ ch.3 のタイマ入出力端子です。
TIOB4
PE4
129
汎用入出力ポートです。
汎用入出力ポートです。
I
TIOB5
128
ベースタイマ ch.2 のタイマ入力端子です。
ベースタイマ ch.4 のタイマ出力端子です。
PE1
INT17
汎用入出力ポートです。
汎用入出力ポートです。
TIOA4
125
機能
汎用入出力ポートです。
I
外部割込み入力端子です。
TIOA7
ベースタイマ ch.7 のタイマ入出力端子です。
PE7
汎用入出力ポートです。
INT23
I
TIOB7
外部割込み入力端子です。
ベースタイマ ch.7 のタイマ入力端子です。
135 ∼ 142
D16 ∼ D23
J
外部バスインタフェースのデータバスの入出力端子
(bit16 ∼ bit23) です。
145 ∼ 152
D24 ∼ D31
J
外部バスインタフェースのデータバスの入出力端子
(bit24 ∼ bit31) です。
155
156
P20
SYSCLK
RD
A
B
P21
157
WE
CM71-10147-2
汎用入出力ポートです。
システムクロック出力端子です。
外部バスインタフェースのリードストローブ出力端子で
す。
汎用入出力ポートです。
A
外部バスインタフェースのライトストローブ出力端子で
す。
FUJITSU SEMICONDUCTOR LIMITED
17
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (8 / 9)
端子番号
端子名
入出力
回路形式
P22, P23
158, 159
MDQM3,
MDQM2
汎用入出力ポートです。
A
P30 ∼ P33
160 ∼ 163
164
CS0 ∼ CS3
CS4
168, 169
170
171
AS
B
A
P35, P36
汎用入出力ポートです。
CS5, CS6
A
18
外部バスインタフェースのチップセレクト 出力端子で
す。
TIN1, TIN2
16 ビットリロードタイマ ch.1, ch.2 の入力端子です。
P37
汎用入出力ポートです。
CS8
P40
RDY
A
A
MRAS
MCAS
MDWE
MCLKE
SDRAM インタフェースのチップセレクト 出力端子です。
汎用入出力ポートです。
外部バスインタフェースのレディ入力端子です。
汎用入出力ポートです。
A
SDRAM インタフェースの RAS ストローブ出力端子です。
汎用入出力ポートです。
A
SDRAM インタフェースの CAS ストローブ出力端子です。
汎用入出力ポートです。
A
P44
175
外部バスインタフェースのアドレスストローブ出力端子
です。
16 ビットリロードタイマ ch.0 の入力端子です。
P43
174
外部バスインタフェースのチップセレクト 出力端子で
す。
TIN0
P42
173
外部バスインタフェースのチップセレクト 出力端子で
す。
汎用入出力ポートです。
P41
172
外部バスインタフェースのバイトイネーブル出力端子で
す。MDQM3:D[31:24], MDQM2:D[23:16]
汎用入出力ポートです。
A
P34
167
機能
SDRAM インタフェースのライトストローブ出力端子で
す。
汎用入出力ポートです。
A
SDRAM インタフェースのクロックイネーブル出力端子
です。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A シリーズの端子
2.2
MB91605A シリーズ
表 2.2-1 端子機能一覧 (9 / 9)
端子番号
端子名
入出力
回路形式
機能
12, 22, 33,
44, 69, 88,
113,
132, VDDE
143,
153,
165, 176
−
3.3 V 電源端子です。
2, 24, 46,
VDDI
90, 115, 134
−
1.8 V 電源端子です。
1, 13, 23,
34, 39, 45,
70, 89, 114, VSS
133,
144,
154, 166
−
GND 端子です。
54
AVCC
−
A/D コンバータ用電源端子です。
56
AVSS
−
A/D コンバータ用アナログ GND 端子です。
55
AVRH
−
A/D コンバータ用基準電源端子です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
19
第 2 章 MB91605A シリーズの端子
2.3
2.3
MB91605A シリーズ
入出力回路形式
表 2.3-1 に , MB91605A シリーズの入出力回路の形式を示します。
■ 入出力回路形式
表 2.3-1 入出力回路形式 (1 / 3)
分類
A
回路形式
備考
P-ch
デジタル出力
N-ch
デジタル出力
CMOS レベル出力
CMOS レベルヒステリ
シス入力
スタンバイ制御あり
デジタル入力
スタンバイ制御
B
CMOS レベル出力
P-ch
デジタル出力
N-ch
デジタル出力
C
CMOS レベルヒステリ
シス入力
P-ch
N-ch
デジタル入力
20
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 2 章 MB91605A シリーズの端子
2.3
MB91605A シリーズ
表 2.3-1 入出力回路形式 (2 / 3)
分類
D
回路形式
備考
X1
クロック入力
発振帰還抵抗:約 1 MΩ
( 内蔵 )
X0
スタンバイ制御
E
プルアップ抵抗付き
CMOS ヒステリシス入
力
プルアップ抵抗値=約
33 KΩ (Typ)
P-ch
P-ch
N-ch
デジタル入力
F
プルダウン制御
CMOS 入出力
プルダウン制御あり
P-ch
デジタル出力
N-ch
デジタル出力
N-ch
デジタル入力
G
CMOS ヒステリシス入
力
プルダウン抵抗付き
P-ch
N-ch
N-ch
デジタル入力
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
21
第 2 章 MB91605A シリーズの端子
2.3
MB91605A シリーズ
表 2.3-1 入出力回路形式 (3 / 3)
分類
H
回路形式
備考
P-ch
デジタル出力
CMOS レベル出力
CMOS レベルヒステリ
シス入力
スタンバイ制御あり
アナログ入力付き
デジタル出力
N-ch
アナログ入力
デジタル入力
スタンバイ制御
I
プルアップ制御
P-ch
P-ch
デジタル出力
N-ch
デジタル出力
プルアップ制御付き
プルアップ抵抗値=約
33 KΩ (Typ)
CMOS レベル出力
CMOS レベルヒステリ
シス入力
スタンバイ制御あり
デジタル入力
スタンバイ制御
J
CMOS レベル入出力
スタンバイ制御あり
P-ch
デジタル出力
N-ch
デジタル出力
デジタル入力
スタンバイ制御
22
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
FR80 ファミリ CPU の機能を知るために , アーキテ
クチャ , 仕様 , 命令などの基本的な事柄について説
明します。
3.1 メモリ空間
3.2 内部アーキテクチャの特徴
3.3 動作モード
3.4 パイプライン
3.5 命令概要
3.6 基本プログラミングモデル
3.7 レジスタ
3.8 データ構造
3.9 アドレッシング
3.10 分岐命令
3.11 EIT ( 例外・割込み・トラップ )
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
23
第 3 章 CPU
3.1
3.1
MB91605A シリーズ
メモリ空間
FR80 ファミリ CPU の論理アドレスは 4G バイト (232 番地 ) あり , CPU はリニアにアクセス
を行います。
■ ダイレクトアドレッシング領域
アドレス空間の0000 0000H∼0000 03FFHをダイレクトアドレッシング領域とよびます。
この領域は , 命令中で直接オペランドを指定できます。
アクセスするデータのサイズによって , ダイレクトアドレッシング領域は次のように
なります。
24
•
バイトデータアクセス:0000 0000H ∼ 0000 00FFH
•
ハーフワードデータアクセス:0000 0000H ∼ 0000 01FFH
•
ワードデータアクセス:0000 0000H ∼ 0000 03FFH
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.1
MB91605A シリーズ
■ メモリマップ
MB91605A シリーズのメモリマップを図 3.1-1 に示します。
図 3.1-1 メモリマップ
MB91605A
外ROM外バスモード
00000000H
I/O
(ダイレクトアドレシング領域)
「付録 A I/O マップ」を参照してください。
00000400H
I/O
00008000H
00020000H
内蔵RAM
128 Kバイト
00040000H
外部領域
256 Mバイト
10000000H
20000000H
SDRAM領域
64 Mバイト
24000000H
40000000H
外部ミラー領域 *
256 Mバイト
50000000H
60000000H
SDRAMミラー領域
64 Mバイト
64000000H
* 40002000H~40002FFFHには
外部バスインタフェースの
レジスタのミラーが見えます。
FFFFFFFFH
アクセス禁止領域
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
25
第 3 章 CPU
3.2
3.2
MB91605A シリーズ
内部アーキテクチャの特徴
FR80 ファミリ CPU は , RISC アーキテクチャを採用すると同時に , 組込み用途に向けた高機
能命令を導入した高性能コアです。
•
RISC アーキテクチャの採用
基本命令 1 命令 1 サイクル
•
32 ビットアーキテクチャ
汎用レジスタ 32 ビット× 16 本
•
4G バイトのリニアなメモリ空間
•
乗算器の内蔵
•
•
•
-
32 ビット× 32 ビット乗算 5 サイクル
-
16 ビット× 16 ビット乗算 3 サイクル
割込み処理機能の強化
-
高速応答速度 (6 サイクル )
-
多重割込みのサポート
-
レベルマスク機能 (16 レベル )
I/O 操作用命令の強化
-
メモリ−メモリ転送命令
-
ビット処理命令
高いコード効率
-
基本命令語長 16 ビット
•
FR60 ファミリと基本命令互換
•
FR60 ファミリに対し次の命令を追加
-
•
•
ビットサーチ命令 (SRCH0, SRCH1, SRCHC)
FR60 ファミリから次の命令を削除
-
コプロ命令 (COPOP, COPLD, COPST, COPSV)
-
リソース命令 (LDRES, STRES)
ノンブロッキングロード
最大で 4 つのロード命令を先行して発行可能
26
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.3
MB91605A シリーズ
3.3
動作モード
本シリーズの動作モードについて説明します。
本シリーズは以下の動作モードを持ち , デバイス起動時に動作モードを選択できます。
•
ユーザモード・外 ROM 外バス
•
シリアルライタモード
本シリーズの動作モードを表 3.3-1 に示します。
表 3.3-1 動作モード
MD 端子
MD1
0
CM71-10147-2
MD0
動作モード
0
ユーザモード・外 ROM 外バス
1
シリアルライタモード
FUJITSU SEMICONDUCTOR LIMITED
27
第 3 章 CPU
3.4
MB91605A シリーズ
パイプライン
3.4
FR80 ファミリ CPU は 32 ビット RISC の FR アーキテクチャをコンパクトにインプリメント
したものです。
通常命令実行パイプラインに加えてメモリロード用パイプラインを追加することにより ,
ロード命令実行中のパイプラインハザードの低減を行います。
1 サイクルあたり 1 命令の実行を行うため , 5 段階の命令パイプライン方式を採用して
います。パイプラインは次のステージから構成されています。
•
命令フェッチステージ (IF) :出力したアドレスの命令を取得します。
•
命令デコードステージ (ID) :フェッチした命令をデコードします。レジスタの読出
しも行います。
•
実行ステージ (EX) :デコードした命令を実行します。
•
メモリアクセスステージ (MA) :対象となるメモリにアクセスします。
•
レジスタ書込みステージ (WB):演算結果 ( またはロードされたメモリデータ ) をレ
ジスタに書き込みます。
メモリロード用のパイプラインを追加しているため , メモリアクセスを行わない命令
の MA, WB ステージと LD 命令の MA, WB ステージは重なることができます。
命令の実行は , 原則として 1 サイクルあたり 1 命令の速度で行われます。ただし , メモ
リウェイトを伴ったロード・ストア命令 , 遅延スロットを持たない分岐命令 , 複数サイ
クル命令では命令の実行に複数のサイクルが必要となります。また , 命令の供給が遅い
場合も命令の実行速度が低下します。
( 例 1)
CLK
①
LD
@R10,R1
②
LDI:8
#0x02,R2
③
CMP
R1,R2
④
BNE:D
Label_G
⑤
ADD
#0x1,R1
IF
ID
EX
MA
WB
IF
ID
EX
MA
WB
IF
ID
EX
MA
WB
IF
ID
EX
MA
WB
IF
ID
EX
MA
WB
例 1:③の CMP 命令で①の LD 命令を書き込む R1 を使用しているがデータが 1 サイクルで返って
きているため , 順番通りに命令を実行します。
ロード系動作では , ロードしたデータの読込みが終了するまで MA ステージが延長さ
れます。
ただし , ロードで使用するレジスタを , 以降の命令で使用しない場合はそのまま命令を
実行します。
28
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.4
MB91605A シリーズ
( 例 2)
CLK
① LD
@R10,R1
② LDI:8
#0x02,R2
③ CMP
R1,R2
④ BNE:D
Label_G
⑤ ADD
#0x1,R1
IF
ID
EX
MA
MA
MA
WB
IF
ID
EX
MA
WB
IF
ID
ID
ID
EX
MA
WB
IF
ID
EX
MA
WB
IF
ID
EX
MA
WB
例 2:③の CMP 命令で①の LD 命令を書込む R1 を使用しているがデータが 1 サイクルで返ってこ
ない場合 , ②の LDI:8 命令まで実行し , CMP はレジスタコンフリクトにより ID ステージで待
たされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
29
第 3 章 CPU
3.5
3.5
MB91605A シリーズ
命令概要
FR80 ファミリ CPU は , 一般的な RISC の命令体系に加え , 組み込み用途に最適化された論
理演算とビット操作命令およびダイレクトアドレッシング命令をサポートしています。
各命令は 16 ビット長 ( 一部命令は 32, 48 ビット長 ) ですので , 優れたメモリ使用効率を持ち
ます。
命令セットは次の機能グループに分けることができます。
3.5.1
•
算術演算
•
ロードとストア
•
分岐
•
論理演算とビット操作
•
ダイレクトアドレッシング
•
ビットサーチ
•
その他
算術演算
標準の算術演算命令 ( 加算 , 減算 , 比較 ) およびシフト命令 ( 論理シフト , 算術演算シフ
ト ) があります。加算と減算については , 多ワード長演算 (32 ビット以上のデータの演
算 ) で使用するキャリ付演算や, アドレス計算に便利なフラグ値を変化させない演算も
可能です。
さらに , 32 ビット× 32 ビット , 16 ビット× 16 ビットの乗算命令と , 32 ビット÷ 32
ビットのステップ除算命令を持ちます。
また , レジスタに即値をセットする即値転送命令や , レジスタ間転送命令も備えていま
す。
算術演算命令はすべて CPU 内の汎用レジスタおよび乗除算レジスタを用いて演算を行
います。
3.5.2
ロードとストア
ロードとストアは外部メモリに対して読出しと書込みを行う命令です。また , チップ内
の周辺機能の読出しと書込みにも使用されます。
ロードとストアはバイト , ハーフワード , ワードの 3 種類のアクセス長を持ちます。ま
た一般的なレジスタ間接のメモリアドレッシングに加え , 一部の命令についてはディ
スプレースメント付レジスタ間接やレジスタインクリメント・デクリメント付レジス
タ間接のメモリアドレッシングも可能です。
30
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
3.5.3
第 3 章 CPU
3.5
分岐
分岐 , コール , 割込みおよび復帰の命令です。分岐命令は , 遅延スロットを持つものと
持たないものがあり , 用途に応じて最適化を行うことができます。分岐命令の詳細につ
いては , 「3.10 分岐命令」を参照してください。
3.5.4
論理演算とビット操作
論理演算命令は汎用レジスタ間 , または汎用レジスタとメモリ ( および I/O) 間で AND,
OR, EOR の論理演算を行うことが可能です。またビット操作命令はメモリ ( および
I/O) の内容を直接操作することができます。メモリアドレッシングは一般的なレジス
タ間接です。
3.5.5
ダイレクトアドレッシング
ダイレクトアドレッシング命令は I/O と汎用レジスタ間 , または I/O とメモリ間のアク
セスに使用する命令です。I/O のアドレスをレジスタ間接ではなく命令中で直接指定す
ることにより , 高速 , 高効率なアクセスを行うことができます。一部の命令については
レジスタインクリメント・デクリメント付レジスタ間接のメモリアドレッシングも可
能です。
3.5.6
ビットサーチ
ビットサーチ命令は 32 ビットのデータを MSB から探索を行い , 最初に見つかった "1"
または "0" のビット位置をレジスタに示すことができます。また , MSB の値と比較を
行い , 最初に見つかった MSB と異なる値のビット位置をレジスタに示すことができま
す。
3.5.7
その他
PS レジスタ内のフラグ設定 , スタック操作 , 符号 / ゼロ拡張などを行う命令がありま
す。また高級言語対応の関数入口 / 出口 , レジスタマルチロード / ストア命令も備えて
います。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
31
第 3 章 CPU
3.6
3.6
MB91605A シリーズ
基本プログラミングモデル
基本プログラミングモデルを図 3.6-1 に示します。
図 3.6-1 基本プログラミングモデル
32 ビット
汎用レジスタ
R0
初期値
XXXX XXXXH
R1
XXXX XXXXH
R2
XXXX XXXXH
R3
XXXX XXXXH
R4
XXXX XXXXH
R5
XXXX XXXXH
R6
XXXX XXXXH
R7
XXXX XXXXH
R8
XXXX XXXXH
R9
XXXX XXXXH
R10
XXXX XXXXH
R11
XXXX XXXXH
R12
XXXX XXXXH
R13
AC
XXXX XXXXH
R14
FP
XXXX XXXXH
R15
SP
0000 0000H
XXXX XXXXH
プログラムカウンタ (PC)
プログラムステータス (PS)
−
ILM
−
SCR
CCR
テーブルベースレジスタ (TBR)
000F FC00 H
リターンポインタ (RP)
XXXX XXXXH
システムスタックポインタ (SSP)
0000 0000H
ユーザスタックポインタ (USP)
XXXX XXXXH
乗除算結果
レジスタ
32
(MDH)
XXXX XXXXH
(MDL)
XXXX XXXXH
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.7
MB91605A シリーズ
3.7
レジスタ
汎用レジスタおよび , 特定の目的のために使用する専用レジスタで構成されています。
3.7.1
汎用レジスタ (R0 ∼ R15)
R0 ∼ R15 は汎用レジスタです。各種演算におけるアキュムレータ , およびメモリアクセスの
ポインタとして使用されます。
汎用レジスタ (R0 ∼ R15) のビット構成を図 3.7-1 に示します。
図 3.7-1 汎用レジスタ (R0 ∼ R15) のビット構成
32 ビット
R0
初期値
XXXX XXXXH
R1
XXXX XXXXH
R2
XXXX XXXXH
R3
XXXX XXXXH
R4
XXXX XXXXH
R5
XXXX XXXXH
R6
XXXX XXXXH
R7
XXXX XXXXH
R8
XXXX XXXXH
R9
XXXX XXXXH
R10
XXXX XXXXH
R11
XXXX XXXXH
R12
XXXX XXXXH
R13
AC
XXXX XXXXH
R14
FP
XXXX XXXXH
R15
SP
0000 0000H
16本のレジスタのうち, 以下に示すレジスタは特殊な用途を想定しており, そのために
一部の命令が強化されています。リセット時の初期値については , 図 3.7-1 を参照して
ください。
CM71-10147-2
•
R13:AC ( 仮想アキュムレータ )
•
R14:FP ( フレームポインタ )
•
R15:SP ( スタックポインタ )
FUJITSU SEMICONDUCTOR LIMITED
33
第 3 章 CPU
3.7
3.7.2
MB91605A シリーズ
プログラムステータスレジスタ (PS)
プログラムステータスを保持するレジスタで , 割込みレベルマスクレジスタ (ILM), システム
コンディションコードレジスタ (SCR) および , コンディションコードレジスタ (CCR) の 3 つ
のパートに分かれています。
プログラムステータスレジスタ (PS) のビット構成を図 3.7-2 に示します。
図 3.7-2 プログラムステータスレジスタ (PS) のビット構成
bit 31
21 20
未定義
16 15
ILM
11 10
未定義
8 7
SCR
0
CCR
[bit31 ∼ bit21, bit15 ∼ bit11] 未定義ビット
書込み時
無視されます。
読出し時
常に "0" が読み出されます。
[bit20 ∼ bit16] 割込みレベルマスクレジスタ (ILM)
「■割込みレベルマスクレジスタ (ILM)」を参照してください。
[bit10 ∼ bit8] システムコンディションコードレジスタ (SCR)
「■システムコンディションレジスタ (SCR)」を参照してください。
[bit7 ∼ bit0] コンディションコードレジスタ (CCR)
「■ コンディションコードレジスタ (CCR)」を参照してください。
34
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.7
MB91605A シリーズ
■ コンディションコードレジスタ (CCR)
コンディションコードレジスタ (CCR) のビット構成を図 3.7-3 に示します。
図 3.7-3 コンディションコードレジスタ (CCR) のビット構成
bit
7
6
5
4
3
2
1
0
未定義
未定義
S
I
N
Z
V
C
−
0
−
0
R/W
R/W
R/W
R/W
R/W
R/W
0
0
X
X
X
X
属性
初期値
R/W:リード / ライト可能
−:未定義
X:不定
[bit7, bit6]:未定義ビット
書込み時
無視されます。
読出し時
常に "0" が読み出されます。
[bit5]:S ( スタックフラグ )
汎用レジスタ 15 (R15) として使用されるスタックポインタを指定します。
S
説明
0
システムスタックポインタ (SSP)が汎用レジスタ15 (R15)として使用されます。
EIT 発生時 , 自動的に "0" にクリアされます。
( ただし , スタックに退避される値は , クリアされる前の値です。)
1
ユーザスタックポインタ (USP) が汎用レジスタ 15 (R15) として使用されます。
このビットはリセットにより "0" にクリアされます。
RETI 命令実行時は "0" を書き込んでください。
[bit4]:I ( 割込み許可フラグ )
ユーザ割込み要求の許可 / 禁止を制御します。
I
説明
0
ユーザ割込み要求を禁止します。
INT 命令実行時 , 自動的に "0" にクリアされます。
( ただし , スタックに退避される値は , クリアされる前の値です。)
1
ユーザ割込みを許可します。
ユーザ割込み要求のマスク処理は , 割込みレベルマスクレジスタ (ILM) の保持
する値により制御されます。
このビットはリセットにより "0" にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
35
第 3 章 CPU
3.7
MB91605A シリーズ
[bit3]:N ( ネガティブフラグ )
演算結果を 2 の補数で表現された整数とみなしたときの符号を示します。
N
説明
0
演算結果が正の値であったことを示します。
1
演算結果が負の値であったことを示します。
リセットによる初期状態は不定です。
[bit2]:Z ( ゼロフラグ )
演算結果が "0" であったかどうかを示します。
Z
説明
0
演算結果が "0" 以外の値であったことを示します。
1
演算結果が "0" であったことを示します。
リセットによる初期状態は不定です。
[bit1]:V ( オーバフローフラグ )
演算に用いたオペランドを 2 の補数で表現される整数であるとみなし , 演算の結果 ,
オーバフローが生じたかどうかを示します。
V
説明
0
演算の結果 , オーバフローは発生していません。
1
演算の結果 , オーバフローが発生しました。
リセットによる初期状態は不定です。
[bit0]:C ( キャリフラグ )
演算により , 最上位ビットからのキャリ , またはボローが発生したかどうかを示しま
す。
C
説明
0
キャリ , またはボローは発生していません。
1
キャリ , またはボローが発生しました。
リセットによる初期状態は不定です。
36
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.7
MB91605A シリーズ
■ システムコンディションレジスタ (SCR)
システムコンディションレジスタ (SCR) のビット構成を図 3.7-4 に示します。
図 3.7-4 システムコンディションレジスタ (SCR) のビット構成
bit
属性
初期値
10
9
8
D1
D0
T
R/W
R/W
R/W
X
X
0
R/W:リード / ライト可能
X:不定
[bit 10, bit9]:D1, D0 ( ステップ除算用フラグ )
ステップ除算実行時の中間データを保持します。
除算処理の実行途中は , このビットを変更しないでください。
ステップ除算実行途中にほかの処理を行う場合は , プログラムステータスレジスタ
(PS) の値を退避・復帰することで , ステップ除算の再開が保証されます。
リセットによる初期状態は不定です。
< 注意事項 >
•
DIV0S 命令の実行により被除数と除数を参照して設定されます。
•
DIV0U 命令の実行により , 強制的にクリアされます。
[bit8]:T ( ステップトレーストラップフラグ )
ステップトレーストラップを有効にするかどうかを指定するフラグです。
T
説明
0
ステップトレーストラップは無効です。
1
ステップトレーストラップが有効です。
ユーザ割込み要求がすべて , 禁止されます。
このビットはリセットにより "0" にクリアされます。
ステップトレーストラップの機能はエミュレータが使用します。エミュレータ使用時 ,
ユーザプログラム中で使用することはできません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
37
第 3 章 CPU
3.7
MB91605A シリーズ
■ 割込みレベルマスクレジスタ (ILM)
割込みレベルマスク値を保持するレジスタです。このレジスタの保持する値がレベル
マスクに使用されます。
割込みレベルマスクレジスタ (ILM) のビット構成を図 3.7-5 に示します。
図 3.7-5 割込みレベルマスクレジスタ (ILM) のビット構成
bit
属性
初期値
20
19
18
17
16
ILM4
ILM3
ILM2
ILM1
ILM0
R/W
R/W
R/W
R/W
R/W
0
1
1
1
1
R/W:リード / ライト可能
CPU に入力される割込み要求の中で , 対応する割込みレベルが , このレジスタで示され
るレベルよりも強い場合にのみ割込み要求が受け付けられます。
レベル値は , "0" (00000B) が最強で , "31" (11111 B) が最弱です。
プログラムから設定可能な値には制限があります。
•
元の値が 16 ∼ 31 の場合:新たな値として設定できるのは 16 ∼ 31 です。
0 ∼ 15 を設定
した命令を実行すると , ( 指定した値+ 16) という値が転送されます。
•
元の値が 0 ∼ 15 の場合:0 ∼ 31 の任意の値が設定可能です。
このビットはリセットにより 15 (01111 B) に初期化されます。
プログラムカウンタ (PC)
3.7.3
プログラムカウンタ (PC) で , 実行している命令のアドレスを示すレジスタです。
プログラムカウンタ (PC) のビット構成を図 3.7-6 に示します。
図 3.7-6 プログラムカウンタ (PC) のビット構成
bit 31
0
初期値
XXXX XXXXH
命令の実行を伴う PC の更新時に , bit0 は "0" に設定されます。
分岐先アドレスとして奇数番地を指定して , bit0 を "1" にすることは禁止です。
命令は 2 の倍数のアドレスに置く必要があります。
リセットによる初期値は不定で , リセットベクタフェッチによりプログラム開始アド
レスが設定されます。
38
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.7
MB91605A シリーズ
テーブルベースレジスタ (TBR)
3.7.4
EIT 処理の際に使用されるベクタテーブルの先頭アドレスを保持するレジスタです。
テーブルベースレジスタ (TBR) のビット構成を図 3.7-7 に示します。
図 3.7-7 テーブルベースレジスタ (TBR) のビット構成
bit 31
0
初期値
000F FC00H
リセットによる初期値は , "000F FC00 H" です。
リターンポインタ (RP)
3.7.5
このポインタで , サブルーチンから復帰するアドレスを保持します。
リターンポインタ (RP) のビット構成を図 3.7-8 に示します。
図 3.7-8 リターンポインタ (RP) のビット構成
bit 31
0
初期値
XXXX XXXXH
CALL 命令実行時 , プログラムカウンタ (PC) の値が , このレジスタに転送されます。
RET 命令実行時 , このレジスタの内容がプログラムカウンタ (PC) に転送されます。
システムスタックポインタ (SSP)
3.7.6
コンディションコードレジスタ (CCR) の S フラグが "0" のとき , R15 として機能します。
システムスタックポインタ (SSP) を明示的に指定することも可能です。
また , EIT 発生時に , プログラムステータスレジスタ (PS) とプログラムカウンタ (PC) を退避
するスタックを指定するスタックポインタとしても使用されます。
システムスタックポインタ (SSP) のビット構成を図 3.7-9 に示します。
図 3.7-9 システムスタックポインタ (SSP) のビット構成
bit 31
0
初期値
0000 0000H
リセットによる初期値は , "0000 0000 H" です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
39
第 3 章 CPU
3.7
MB91605A シリーズ
ユーザスタックポインタ (USP)
3.7.7
コンディションコードレジスタ (CCR) の S フラグが "1" のとき , R15 として機能します。
ユーザスタックポインタ (USP) を明示的に指定することも可能です。
ユーザスタックポインタ (USP) のビット構成を図 3.7-10 に示します。
図 3.7-10 ユーザスタックポインタ (USP) のビット構成
bit 31
0
初期値
XXXX XXXXH
リセットによる初期値は不定です。
RETI 命令で使用することはできません。
40
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.7
MB91605A シリーズ
乗除算レジスタ (Multiply & Divide register)
3.7.8
乗除算用のレジスタで , それぞれ 32 ビット長です。
図 3.7-11 乗除算レジスタ (Multiply & Divide register) のビット構成
bit 31
0
MDH
初期値
XXXX XXXXH
MDL
XXXX XXXXH
リセットによる初期値は不定です。
● 乗算実行時
32 ビット× 32 ビットの乗算のとき , 64 ビット長の演算結果は , 次の配置で乗除算結果
格納レジスタに格納されます。
•
MDH:上位 32 ビット
•
MDL:下位 32 ビット
16 ビット× 16 ビットの乗算のときは , 次のように結果が格納されます。
•
MDH:不定
•
MDL:結果 32 ビット
● 除算実行時
計算開始時 , 被除数を MDL に格納します。
DIV0S, DIV0U, DIV1, DIV2, DIV3, DIV4S 命令の実行により除算を実行すると , 結果が
MDH と MDL に格納されます。
CM71-10147-2
•
MDH:剰余
•
MDL:商
FUJITSU SEMICONDUCTOR LIMITED
41
第 3 章 CPU
3.8
3.8
MB91605A シリーズ
データ構造
FR80 ファミリ CPU のデータ配置には , 次の 2 つがあります。
• ビットオーダリング
• バイトオーダリング
3.8.1
ビットオーダリング
FR80ファミリCPUでは, ビットオーダリングとして, リトルエンディアンを採用しています。
ビットオーダリングを図 3.8-1 に示します。
図 3.8-1 ビットオーダリング
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
8
7
6
5
4
3
2
1
LSB
MSB
3.8.2
0
バイトオーダリング
FR80ファミリCPUでは, バイトオーダリングとして, ビッグエンディアンを採用しています。
バイトオーダリングを図 3.8-2 に示します。
図 3.8-2 バイトオーダリング
MSB
LSB
bit31
10101010
bit23
bit15
11001100
bit7
11111111
bit0
00010001
bit
7
42
0
n 番地
10101010
(n+1) 番地
11001100
(n+2) 番地
11111111
(n+3) 番地
00010001
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
3.8.3
第 3 章 CPU
3.8
ワードアライメント
■ プログラムアクセス
FR80 ファミリ CPU のプログラムは , 2 の倍数のアドレスに配置する必要があります。
プログラムカウンタ (PC) の bit0 は , 命令の実行に伴うプログラムカウンタ (PC) の更新
時に , "0" に設定されます。分岐先アドレスとして奇数番地を指定して , bit0 を "1" にす
ることは禁止です。
命令は 2 の倍数のアドレスに置かなくてはなりません。
奇数アドレス例外はありません。
■ データアクセス
FR80 ファミリでは , データアクセスを行う際 , アクセスサイズにより以下のとおりの
アドレスとしてください。( ハードでアラインメントが行われません。)
ワードアクセス:アドレスは , 4 の倍数 ( 最下位 2 ビットは "00")
ハーフワードアクセス:アドレスは , 2 の倍数 ( 最下位 ビットは "0")
バイトアクセス:──
ワードおよびハーフワードデータアクセス時に , 実効アドレスの計算結果に対して上
記のアドレスとしてください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
43
第 3 章 CPU
3.9
MB91605A シリーズ
アドレッシング
3.9
メモリ空間は 32 ビットリニアです。
メモリ空間を図 3.9-1 に示します。
図 3.9-1 メモリ空間
0000 0000H
バイトデータ
0000 0100H
ダイレクト
アドレッシング領域
ハーフワードデータ
0000 0200H
ワードデータ
0000 0400H
20 ビット
アドレッシング領域
000F FC00H
TBR
ベクタテーブル
000F FFFFH
32 ビット
アドレッシング領域
FFFF FFFFH
3.9.1
ダイレクトアドレッシング領域
メモリ空間の下記の領域は , I/O 用の領域です。この領域は , ダイレクトアドレッシングによ
り , 命令中で直接オペランドアドレスを指定することができます。
ダイレクトアドレス指定可能なアドレス領域の大きさは , データ長ごとに異なります。
44
•
バイトデータ ( 8 ビット ) …… 0 ∼ 0x0FF
•
ハーフワードデータ (16 ビット ) …… 0 ∼ 0x1FF
•
ワードデータ (32 ビット ) …… 0 ∼ 0x3FF
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.9
MB91605A シリーズ
3.9.2
20 ビットアドレッシング領域
20 ビットアドレッシング領域 …… 0 ∼ 0xFFFFF
20 ビットアドレッシング領域内に , プログラム領域やデータ領域をすべて配置すると ,
コンパイル時にコンパクトで高速なプログラムが実現できます。
20 ビット通常分岐マクロ命令の展開例を以下に示します。
BRA20
label20,Ri
↓
コードサイズ
LDI:20
#label20,Ri
; 4 バイト
JMP
@Ri
; 2 バイト
計 6 バイト
詳細は , 「FR ファミリ SOFTUNE C/C++ コンパイラマニュアル V6 対応」を参照して
ください。
3.9.3
32 ビットアドレッシング領域
32 ビットアドレッシング領域 …… 0 ∼ 0xFFFFFFFF
20 ビットアドレッシング領域を超える範囲に , プログラム領域やデータ領域を配置す
ると , 20 ビットアドレッシング領域内で作成したプログラムよりもコードサイズが大
きくなります。
32 ビット通常分岐マクロ命令の展開例を以下に示します。
BRA32
label32,Ri
↓
コードサイズ
LDI:32
#label32,Ri
; 6 バイト
JMP
@Ri
; 2 バイト
計 8 バイト
詳細は , 「FR ファミリ SOFTUNE C/C++ コンパイラマニュアル V6 対応」を参照して
ください。
3.9.4
ベクタテーブル初期領域
000F FC00H ∼ 000F FFFFH の領域は EIT ベクタテーブル初期領域です。
EIT処理時に使用されるベクタテーブルは, テーブルベースレジスタ (TBR) を書換える
ことにより任意のアドレスに配置可能ですが , リセットによる初期化によってこのア
ドレスに配置されます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
45
第 3 章 CPU
3.10
MB91605A シリーズ
3.10 分岐命令
FR80 ファミリ CPU では , 分岐命令に遅延スロット付きの動作と遅延スロットなしの動作を
指定できます。
3.10.1
遅延スロット付き動作
■ 命令
次に示す命令が , 遅延スロット付きの分岐動作を行います。
JMP:D
@Ri
/
CALL:D label12
/
CALL:D @Ri
/
RET:D
BRA:D
label9
/
BNO:D
label9
/
BEQ:D
label9
/
BNE:D
label9
BC:D
label9
/
BNC:D
label9
/
BN:D
label9
/
BP:D
label9
BV:D
label9
/
BNV:D
label9
/
BLT:D
label9
/
BGE:D
label9
BLE:D
label9
/
BGT:D
label9
/
BLS:D
label9
/
BHI:D
label9
■ 動作説明
分岐命令の直後 (「遅延スロット」とよびます ) に置かれた命令を実行した後に , 分岐
し , その後 , 分岐先の命令を実行します。分岐動作の前に遅延スロットの命令を実行す
るため , 見掛け上の実行速度が 1 サイクルとなります。その代わり , 遅延スロットに有
効な命令を入れることができないときは , NOP 命令を置かなくてはなりません。
[例]
;
LABEL:
命令の並び
ADD
R1, R2;
BRA:D
LABEL
; 分岐命令
MOV
R2, R3
; 遅延スロット
…
ST
R3, @R4
; 分岐先
……分岐の前に実行される
条件分岐命令の場合 , 分岐条件が成立する場合も , しない場合も遅延スロットに置かれ
た命令は実行されます。
遅延分岐命令では , 一部の命令の実行順序が反転するように見えますが , それはプログ
ラムカウンタ (PC) の更新動作だけです。その他の動作 ( レジスタの更新・参照等 ) は
あくまで記述された順番で実行されます。
46
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.10
MB91605A シリーズ
以下に , 具体的な説明をします。
1. JMP:D @Ri / CALL:D @Ri命令で参照する Ri は, 遅延スロットの中の命令が Riを更
新しても影響を受けません。
[例]
LDI:32
#Label, R0
JMP:D
@R0
; Label に分岐
LDI:8
#0, R0
; 分岐先アドレスには影響を与えない。
…
2. RET:D命令が参照するリターンポインタ (RP) は, 遅延スロットの中の命令がリター
ンポインタ (RP) を更新しても影響を受けません。
[例]
RET:D
MOV
; これより前に設定された RP の示すアドレ
スへ分岐
R8, RP
; リターン動作には影響を与えない。
…
3. Bcc:D rel 命令が参照するフラグも , 遅延スロットの命令の影響を受けません。
[例]
ADD
#1, R0
; フラグ変化
BC:D
Overflow
; 上記の命令の実行結果により分岐
ANDCCR
#0
; このフラグ更新は上記分岐命令では参照
しない。
…
4. CALL:D 命令の遅延スロットの中の命令で RP を参照すると , CALL:D 命令により更
新された内容が読み出されます。
[例]
CALL:D
Label
; RP を更新して分岐
MOV
RP, R0
; 上記 CALL:D の実行結果の RP を転送
…
■ 遅延スロットに置くことができる命令
遅延スロット内で実行できるのは , 次の条件を満たす命令のみです。
•
1 サイクル命令
•
分岐命令ではないこと
•
順番が変化した場合でも動作に影響を与えない命令
■ ステップトレーストラップ
遅延スロットを持つ分岐命令の実行と遅延スロットの間では , ステップトレースト
ラップは発生しません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
47
第 3 章 CPU
3.10
MB91605A シリーズ
■ 割込み・NMI
遅延スロットを持つ分岐命令の実行と遅延スロットの間では , 割込み・NMI を受理し
ません。
■ 未定義命令例外
遅延スロットに未定義命令があった場合 , 未定義命令例外は発生しません。このとき ,
未定義命令は NOP 命令として動作します。
3.10.2
遅延スロットなし動作
■ 命令
以下に示す命令が , 遅延スロットなしの分岐動作を行います。
JMP
@Ri
/
CALL
label12
/
CALL
@Ri
/
RET
BRA
label9
/
BNO
label9
/
BEQ
label9
/
BNE
label9
BC
label9
/
BNC
label9
/
BN
label9
/
BP
label9
BV
label9
/
BNV
label9
/
BLT
label9
/
BGE
label9
BLE
label9
/
BGT
label9
/
BLS
label9
/
BHI
label9
■ 動作説明
命令の並び順に実行します。分岐命令直後の命令が分岐前に実行されることはありま
せん。
[例]
;
LABEL
命令の並び
ADD
R1, R2
;
BRA
LABEL
; 分岐命令 ( 遅延スロットなし )
MOV
R2, R3
; 実行されない
…
ST
R3, @R4
; 分岐先
遅延スロットなしの分岐命令の実行サイクル数は , 分岐するとき 2 サイクル , 分岐しな
いとき 1 サイクルとなります。
遅延スロットに適当な命令を入れることができないために NOP を明記した遅延スロッ
ト付き分岐命令に比べ , 命令コード効率を上げることができます。
遅延スロットに有効な命令を設置できるときは遅延スロット付きの動作を選択し , そ
うでないときは遅延スロットなしの動作を選択することで , 実行速度とコード効率を
両立させることが可能となります。
48
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 3 章 CPU
3.11
3.11 EIT ( 例外・割込み・トラップ )
EIT とは , 現プログラム実行時にイベントの発生により , そのプログラムの実行を中断しほか
のプログラムを実行することを指し , 例外 (Exception), 割込み (Interrupt), トラップ (Trap) の
総称です。
例外とは実行中のコンテキストに関連して発生する事象です。例外を起こした命令から再実
行します。
割込みとは実行中のコンテキストに無関係に発生する事象です。イベント要因は , ハードウェ
アです。
トラップとは実行中のコンテキストに関連して発生する事象です。システムコールのように
プログラムで指示するものがあります。トラップを起こした命令の次の命令から再実行しま
す。
■ 特徴
3.11.1
•
多重 EIT をサポート
•
割込みにレベルマスク機能 (15 レベルをユーザが使用可能 )
•
トラップ命令 (INT/INTE)
•
エミュレータ起動用 EIT ( ハードウェア / ソフトウェア )
EIT 要因
EIT 要因として , 次のものがあります。
3.11.2
•
リセット
•
ユーザ割込み ( 周辺機能 , 外部割込み )
•
NMI
•
遅延割込み
•
未定義命令例外
•
トラップ命令 (INT)
•
トラップ命令 (INTE)
•
ステップトレーストラップ
EIT からの復帰
RETI 命令により , 各 EIT より復帰します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
49
第 3 章 CPU
3.11
3.11.3
MB91605A シリーズ
割込みレベル
割込みレベルは 0 ∼ 31 で , 5 ビットで管理されます。
各レベルの割り当てを表 3.11-1 に示します。
表 3.11-1 割込みレベル割り当て表
レベル
割込みの種類
2 進数
10 進数
00000
0
( システム予約 )
・・・
・・・
・・・
・・・
00011
・・・
3
・・・
00100
4
INTE 命令
ステップトレースト
ラップ
00101
5
( システム予約 )
・・・
・・・
・・・
・・・
01100
・・・
14
・・・
01101
15
NMI ( ユーザ用 )
10000
16
割込み要求
10001
17
割込み要求
・・・
・・・
・・・
・・・
11110
・・・
30
・・・
11111
31
−
( システム予約 )
備考
割込みレベルマスクレジスタ (ILM) の元の
値が 16 ∼ 31 のときは , この範囲の値をプ
ログラムから割込みレベルマスクレジスタ
(ILM) に設定することはできません。
( システム予約 )
割込みレベルマスクレジスタ (ILM) 設定時
は , ユーザ割込み禁止
割込み要求
割込み制御レジスタ (ICR) 設定時 , 割込み
禁止
操作が可能なのは , 16 ∼ 31 のレベルです。
未定義命令例外 , INT 命令は , 割込みレベルの影響を受けません。また , 割込みレベル
マスクレジスタ (ILM) を変化させることもありません。
3.11.4
I フラグ
割込みの許可 / 禁止を指定するフラグです。プログラムステータスレジスタ (PS) のコ
ンディションコードレジスタ (CCR) の bit4 として設けられています。
I
50
説明
0
INT 命令実行時 , 自動的に "0" にクリアされます。
( ただし , スタックに退避される値は , クリアされる前の値です。)
1
ユーザ割込み要求のマスク処理は , 割込みレベルマスクレジスタ (ILM) の保持
する値により制御されます。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.11
MB91605A シリーズ
< 注意事項 >
I フラグの値を変更したとき , 割込み要求の受付けは I フラグを書き換えた命令の次の次の
命令から反映されます。
よって , 割込みを正しく動作させるために I フラグを変更する命令の後には NOP を置い
てください。
•
割込み許可 (I フラグ =1) にするとき
命令実行
↓
•
I フラグ
割込み
ORCCR #set_iflag
0
禁止
NOP
1
禁止
命令 A
1
許可
割込み禁止 (I フラグ =0) にするとき
命令実行
↓
CM71-10147-2
↑
ここから割込み許可
I フラグ
割込み
ANDCCR #clear_iflag
1
許可
NOP
0
許可
命令 A
0
禁止
FUJITSU SEMICONDUCTOR LIMITED
↑
ここから割込み禁止
51
第 3 章 CPU
3.11
MB91605A シリーズ
割込みレベルマスクレジスタ (ILM)
3.11.5
割込みレベルマスク値を保持します。プログラムステータスレジスタ (PS) の bit20 ∼ bit16
として設けられています。
FR80 ファミリ CPU に入力される割込み要求の中で , 対応する割込みレベルが , この割
込みレベルマスクレジスタ (ILM) で示されるレベルよりも強い場合にのみ割込み要求
が受け付けられます。
レベル値は , "0" (00000) が最強で , "31" (11111) が最弱です。
プログラムから設定可能な値には制限があります。元の値が 16 ∼ 31 のとき , 新たな値
として設定できるのは 16 ∼ 31 です。0 ∼ 15 の値を設定する命令を実行すると , ( 指定
した値+ 16) が転送されます。
元の値が 0 ∼ 15 のときは , 0 ∼ 31 の任意の値が設定可能です。設定するには STILM
命令を使用します。
< 注意事項 >
割込みレベルマスクレジスタ (ILM) の値を変更したとき , 割込み要求の受付けは割込みレ
ベルマスクレジスタ (ILM) を書き換えた命令の次の次の命令から反映されます。
よって , 割込みを正しく動作させるために割込みレベルマスクレジスタ (ILM) を変更する
命令の後には NOP を置いてください。
命令実行
↓
3.11.6
ILM
割込み受付け
STILM #set_ILM_B
A
A
NOP
B
A
命令 C
B
B
↑
命令 D
B
B
ここから ILM=B が反映
割込み・NMI に対するレベルマスク
割込みおよび NMI 要求が発生したときは , 割込み要因の持つ割込みレベルが割込みレ
ベルマスクレジスタ (ILM) の保持するレベルマスク値と比較されます。そして , 次の条
件が成立したときはマスクされ , 要求は受理されません。
要因の持つ割込みレベル ≧ レベルマスク値
52
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.11
MB91605A シリーズ
割込み制御レジスタ (ICR)
3.11.7
「第 12 章 割込みコントローラ」を参照してください。
3.11.8
システムスタックポインタ (SSP)
EIT の受理および復帰動作時のデータ退避・復帰用スタックを示すポインタとして使用され
ます。
システムスタックポインタ (SSP) のビット構成を図 3.11-1 に示します。
図 3.11-1 システムスタックポインタ (SSP) のビット構成
bit 31
0
初期値
0000 0000H
EIT 処理時に "8" 減算され , RETI 命令の実行による EIT からの復帰動作時に "8" 加算さ
れます。
リセットによる初期値は 0000 0000H です。
コンディションコードレジスタ (CCR) 中の S フラグが "0" のとき , 汎用レジスタ R15
としても機能します。
3.11.9
割込みスタック
システムスタックポインタ (SSP) により示される領域で , プログラムカウンタ (PC) および
プログラムステータスレジスタ (PS) の値が退避・復帰されます。割込み後はシステムスタッ
クポインタ (SSP) の示すアドレスにプログラムカウンタ (PC), (SSP + 4 ) のアドレスにプロ
グラムステータスレジスタ (PS) が格納されています。
割込みスタックを図 3.11-2 に示します。
図 3.11-2 割込みスタック
[ 割込み前 ]
SSP
[ 割込み後 ]
8000 0000H
SSP
メモリ
7FFF FFF8H
メモリ
8000 0000H
8000 0000H
7FFF FFFCH
7FFF FFFCH
PS
7FFF FFF8H
7FFF FFF8H
PC
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
53
第 3 章 CPU
3.11
3.11.10
MB91605A シリーズ
テーブルベースレジスタ (TBR)
EIT 用ベクタテーブルの先頭アドレスを示すレジスタです。
テーブルベースレジスタ (TBR) のビット構成を図 3.11-3 に示します。
図 3.11-3 テーブルベースレジスタ (TBR) のビット構成
bit 31
0
初期値
000F FC00H
テーブルベースレジスタ (TBR) と EIT 要因ごとに決められたオフセット値を加算した
アドレスが , ベクタアドレスとなります。
リセットによる初期値は 000F FC00H です。
3.11.11
EIT ベクタテーブル
テーブルベースレジスタ (TBR) の示すアドレスから 1K バイトの領域が , EIT 用ベクタ領域と
なっています。
1 ベクタあたりの大きさは 4 バイトで , 割込みベクタ番号とベクタアドレスの関係は下
記のように表されます。
vctadr
=TBR + vctofs
=TBR + (0x3FC − 4 × vct)
vctadr:ベクタアドレス vctofs:ベクタオフセット vct:割込みベクタ番号
TBR:テーブルベースレジスタ (TBR)
加算結果の下位 2 ビット は常に "00" として扱われます。
000F FC00H ∼ 000F FFFF H の領域がリセットによるベクタテーブルの初期領域です。
ベクタの一部には特殊な機能が割り当てられています。
54
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.11
MB91605A シリーズ
3.11.12
多重 EIT 処理
複数の EIT 要因が同時に発生した場合 , CPU は 1 つの EIT 要因を選択して受理し , EIT
シーケンスを実行した後 , 再び EIT 要因の検出を行う , という動作を繰り返します。EIT
要因検出の際に , 受理可能な EIT 要因がなくなったとき , 最後に受理した EIT 要因のハ
ンドラの命令を実行します。
そのため , 複数の EIT 要因が同時に発生した場合の各要因のハンドラの実行順序は ,
1. EIT 要因受理の優先順位
2. 受理した場合にほかの要因をどのようにマスクするか
という 2 つの要素により決まります。
EIT 要因受理の優先度とは , プログラムステータスレジスタ (PS) とプログラムカウン
タ (PC) を退避してプログラムカウンタ (PC) を更新し ( 必要に応じて ) ほかの要因のマ
スク処理を行うという , EIT シーケンスを実行する要因を選ぶときの順番です。必ずし
も , 先に受理された要因のハンドラが先に実行されるわけではありません。
EIT 要因受理の優先度を表 3.11-2 に示します。
表 3.11-2 EIT 要因の受理の優先度と他の要因へのマスク
要因
ILM
受理の優先順位
1
ほかの要因によるマスク
リセット
ほかの要因は破棄されます。
15
2
未定義命令以外
これより優先度の低い要因すべて
-
3
INT 命令
I フラグ =0
-
4
INTE 命令
これより優先度の低い要因すべて
4
5
ユーザ割込み
ILM= 受理した要因のレベル
ICR
6
NMI ( ユーザ用 )
ILM=15
15
7
NMI
( エミュレータ用 )
これより優先度の低い要因すべて
4
8
ステップトレースト ILM=15
ラップ
4
EIT 要因を受理した後のほかの要因に対するマスクの処理を加味すると , 同時に発生し
た EIT 要因の各ハンドラの実行順序は , 表 3.11-3 のようになります。
表 3.11-3 EIT ハンドラの実行順序
CM71-10147-2
受理の優先順位
1
リセット
要因
2
未定義命令以外
3
INTE 命令
4
ステップトレーストラップ
5
NMI ( ユーザ用 )
6
INT 命令
7
ユーザ割込み
FUJITSU SEMICONDUCTOR LIMITED
55
第 3 章 CPU
3.11
MB91605A シリーズ
多重 EIT 処理について , 図 3.11-4 に示します。
図 3.11-4 多重 EIT 処理
メインルーチン
NMI 割込みの
ハンドラ
ユーザ割込みのハンドラ
優先度
最初に実行
( 高 ) ユーザ割込み
( 低 ) NMI 割込み
3.11.13
動作
次の説明で , 転送元の「PC」とは各 EIT 要因を検出した命令のアドレスを示すものと
します。
また , 「次の命令のアドレス」とは , EIT を検出した命令が
•
LDI:32 のとき:PC + 6
•
LDI:20 のとき:PC + 4
•
その他の命令のとき:PC + 2
を意味します。
■ ユーザ割込み・NMI の動作
ユーザ割込み , またはユーザ NMI の割込み要求が発生すると , 次の順序で要求受理の
可否が判定されます。
ユーザ割込みとは , 各種周辺機能から要求が発生する割込みで , 割込み要求ごとに割込
みレベルが設定されています。
● 割込み要求受理の可否判定
1. 同時に発生した要求の割込みレベルを比較し, 最も強いレベル (最も小さい数値) を
保持するものが選択されます。
比較に使用されるレベルは , 以下のとおりです。
56
•
マスク可能割込み:対応する割込み制御レジスタ (ICR) の保持する値
•
ユーザ NMI:あらかじめ定められた定数
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.11
MB91605A シリーズ
2. 同じレベルを持つ割込み要求が複数発生しているときは , 最も若い割込み番号を持
つ割込み要求が選択されます。
3. 割込みレベル≧レベルマスク値のとき , 割込み要求はマスクされ受理されません。
割込みレベル<レベルマスク値のとき , 4 へ。
4. 選択された割込み要求がマスク可能割込みであるとき , I フラグが "0" ならば割込み
要求はマスクされ , 受理されません。I フラグが "1" ならば割込み要求受理へ。
選択された割込み要求が NMI であるとき , I フラグの値にかかわらず割込み要求は
受理されます。
上記の条件が成立したとき , 命令処理の切れ目で割込み要求は受理されます。
I フラグや割込みレベルマスクレジスタ (ILM) を変更する命令を実行した場合 , 2 命令
後から新しい受付け条件での EIT 制御を行います。
EIT 要求検出時にユーザ割込み・ユーザ NMI 要求が受理されると , 受理された割込み
要求に対応した割込み番号を使用して , CPU は次のように動作します。
※下記の「● 動作」における ( ) はレジスタの指すアドレスを表します。
● 動作
1
(TBR + 受理した割込み要求のベクタオフセット )
→ TMP
2
SSP − 4
→ SSP
3
PS
→ (SSP)
4
SSP − 4
→ SSP
5
次の命令のアドレス
→ (SSP)
6
受理した要求の割込みレベル
→ ILM
7
"0"
→ S フラグ
8
TMP
→ PC
割込みシーケンス終了後ハンドラの先頭の命令を実行する前に , 新たな EIT の検出を
行います。この時点で受理可能な EIT が発生していると , CPU は EIT 処理シーケンス
に遷移します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
57
第 3 章 CPU
3.11
3.11.14
MB91605A シリーズ
INT 命令の動作
INT #u8 命令はソフトウェアでトラップを発生する命令です。
オペランドで指定された割込み番号のトラップを発生します。
● 動作
3.11.15
1
(TBR + 0x3FC − 4 × u8)
→ TMP
2
SSP − 4
→ SSP
3
PS
→ (SSP)
4
SSP − 4
→ SSP
5
PC + 2
→ (SSP)
6
"0"
→ I フラグ
7
"0"
→ S フラグ
8
TMP
→ PC
INTE 命令の動作
INTE 命令は , デバッグ用にソフトウェアでトラップを発生する命令です。
● 動作
3.11.16
1
(TBR + 0x3D8)
→ TMP
2
SSP − 4
→ SSP
3
PS
→ (SSP)
4
SSP − 4
→ SSP
5
PC + 2
→ (SSP)
6
"00100B"
→ ILM
7
"0"
→ S フラグ
8
TMP
→ PC
ステップトレーストラップの動作
ステップトレーストラップはデバッグ用のトラップでプログラムステータスレジスタ (PS)
の T フラグをセットすることにより , 1 命令実行ごとに発生します。ステップトレーストラッ
プは , 遅延分岐命令実行時の分岐命令実行直後には発生しません。遅延スロット内の命令を
実行した後に発生します。
● ステップトレーストラップ検出の条件
1. プログラムステータスレジスタ (PS) の T フラグ =1
2. 実行している命令が遅延分岐命令ではないとき。
3. CPU がユーザモードのとき。
以上の条件が成立すると , 命令動作の切れ目でブレークします。
58
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 3 章 CPU
3.11
MB91605A シリーズ
● 動作
1
(TBR + 0x3C4)
→ TMP
2
SSP − 4
→ SSP
3
PS
→ (SSP)
4
SSP − 4
→ SSP
5
次の命令のアドレス
→ (SSP)
6
"00100B"
→ ILM
7
"0"
→ S フラグ
8
TMP
→ PC
T フラグ =1 のときは , ユーザ割込みとユーザ NMI は禁止状態となります。
3.11.17
未定義命令例外の動作
命令のデコード時に未定義命令であることを検出すると , 未定義命令例外が発生します。
● 未定義命令例外の検出条件
1. 命令のデコード時に , 未定義命令であることを検出。
2. 命令が遅延スロット外に置かれている。( =遅延分岐命令の直後ではない。)
以上の条件が成立すると , 未定義命令例外が発生しブレークします。
● 動作
1
(TBR + 0x3C4)
→ TMP
2
SSP − 4
→ SSP
3
PS
→ (SSP)
4
SSP − 4
→ SSP
5
PC
→ (SSP)
6
"0"
→ S フラグ
7
TMP
→ PC
プログラムカウンタ (PC) として退避されるのは , 未定義命令例外を検出した命令自身
のアドレスです。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
59
第 3 章 CPU
3.11
3.11.18
MB91605A シリーズ
RETI 命令の動作
RETI 命令は , EIT 処理ルーチンから復帰する命令です。
● 動作
1
(R15)
→ PC
2
R15 + 4
→ R15
3
(R15)
→ PS
4
R15 + 4
→ R15
RETI 命令は , S フラグが "0" の状態で実行する必要があります。
3.11.19
遅延スロットと EIT
分岐命令の遅延スロットには , EIT に関して次の制約があります。
● 割込み , トラップ
遅延スロットを持つ分岐命令の実行と遅延スロットの間では , 割込み・トラップは発生
しません。
● 例外
遅延スロットに未定義命令があった場合 , 未定義命令例外は発生しません。このとき ,
未定義命令は NOP 命令として動作します。
60
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ
メモリ
命令キャッシュメモリの機能と動作について説明
します。
4.1 概要
4.2 構成
4.3 レジスタ
4.4 動作説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
61
第 4 章 命令キャッシュ メモリ
4.1
4.1
MB91605A シリーズ
概要
本品種は , 以下に示す構成の命令キャッシュを搭載しています。
• キャッシュ容量:8K バイト (1 ウェイあたり 4K バイト )
• マッピング方式:2 ウェイセットアソシエイティブ方式
• ラインサイズ :16 バイト (8 命令 )
• 総エントリ数 :512 エントリ (1 ウェイあたり 256 ライン )
■ 概要
キャッシュフィルは 1 ライン単位で行われ , 1 回のミスアクセスにつき 16 バイト分の
リード動作を行います。
制御ビットへの書込みにより , 全エントリの無効化を行うことが可能です。
本品種では , エントリされた命令をキャッシュ内にロックする場合 , ウェイ単位での
ロックが可能です ( エントリ単位でのロック機能はありません )。
キャッシュ可能なメモリ領域は , データキャッシュと共通の CARR レジスタにより特
定領域ごとに設定できます。
62
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ メモリ
4.2
MB91605A シリーズ
4.2
構成
図 4.2-1 に命令キャッシュメモリの構成を示します。
図 4.2-1 命令キャッシュメモリの構成
ウェイ0 4bit
TAGV
20bit
16byte
1ライン
アドレスTAG
ウェイ0/ウェイ1共通
1bit
256エントリ
(8Kバイト時)
TAGリファレンス
4bit
LRU
256エントリ
(8Kバイト時)
ウェイ1
4bit
TAGV
20bit
16byte
アドレスTAG
1ライン
256エントリ
(8Kバイト時)
■ TAGV ( バリッドビッド )
対応するラインのアドレスタグが有効=命令がストアされていることを示します。
1 ラインにつき 4 ビットで構成されており , 命令が取り込まれた際に 4 ビットの TAG
リファレンス値が書き込まれます。
TAG の検索の際 , TAG リファレンス値と同じ値の TAGV を持つエントリが有効なエン
トリと見なされます。
TAG 初期化動作 (「4.4.3 命令キャッシュの無効化」参照 ) により全エントリが "1111"
となります。
■ アドレス TAG
対応するラインにストアされている命令のメモリアドレス上位 20 ビット (8K バイト
時 ) を示します。
TAGV が TAG リファレンス値と一致し , かつアドレス TAG の内容が CPU からのアク
セス要求アドレスと一致したエントリがヒットとなります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
63
第 4 章 命令キャッシュ メモリ
4.2
MB91605A シリーズ
■ LRU
対応するラインのどちらのウェイが最後にアクセスされたかを示します。
"0" のときウェイ 0 が , "1" のときウェイ 1 が最後にアクセスされたことを示します。
エントリを更新する時は LRU が示していないウェイから更新します。
キャッシュがフラッシュされた後は , 必ずウェイ 0 から先に更新します。
どちらか片方のウェイのエントリがロックされている場合 , LRU は参照せずにロック
されていないウェイのエントリを常に更新します。
■ TAG リファレンス
有効な TAGV と同じ値を示す 4 ビットのフラグです。
リセットにより "1111" となり , キャッシュ使用開始時に行うフラッシュにより "0000"
がセットされます。以降フラッシュを行うたびに 1 ずつカウントアップされます。
"1110" のときにフラッシュを行うと "0000" に戻ります。
"0000" がセットされる際 , 全エントリの TAGV に "1111" を順次書き込むことにより
TAG の初期化を行います。初期化には 256 サイクルかかります (8K バイト時 , ライン
数と同じ )。その間受け付けたアクセスは非キャッシュ領域へのアクセスとして扱われ
ます。TAG の初期化時以外でのフラッシュは , TAG リファレンスの変更のみとなり 1
サイクルで完了します。
64
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ メモリ
4.3
MB91605A シリーズ
4.3
レジスタ
命令キャッシュメモリで使用するレジスタの構成と機能について説明します。
■ 命令キャッシュメモリのレジスタ一覧
命令キャッシュメモリのレジスタ一覧を表 4.3-1 に示します。
表 4.3-1 命令キャッシュメモリのレジスタ一覧
レジスタ略称
CARR*
命令 / データキャッシュ領域設定レジスタ
参照先
4.3.1
ICHCR
命令キャッシュ制御レジスタ
4.3.2
ISIZE
命令キャッシュサイズレジスタ
4.3.3
IFUNC
命令キャッシュ機能レジスタ
4.3.4
データキャッシュと共用です。
*
4.3.1
レジスタ名
命令 / データキャッシュ領域設定レジスタ (CARR)
命令キャッシュおよびデータキャッシュのキャッシュ対象領域を設定する 8 ビット長のレジ
スタです。
本レジスタへの書込みは , 必ず ICHCR/DCHCR レジスタの ENAB=0( キャッシュ禁止 )
のときにのみ行ってください。
いずれかのキャッシュが許可されている間は , 本レジスタへの書込みは無視され , レジ
スタ値に影響を与えません。
以下の領域は本レジスタ値に関わらず常にキャッシュ禁止領域となります。
•
0000 0000H ∼ 0000 FFFFH : 内蔵 I/O 領域
以下の領域は本レジスタ値に関わらず常にキャッシュ許可領域となります。
•
0010 0000H ∼ 3FFF FFFFH : 内蔵 / 外部メモリ領域
なお , 本レジスタの設定に関わらず , エミュレータモードでは全領域キャッシュ禁止と
なります。よって , エミュレータモード中は命令キャッシュの状態が保持されます。
キャッシュ可能な命令領域をエミュレータモード中に書換えた場合,必ずエミュレータ
モード中に命令キャッシュのフラッシュを行ってください。
命令 / データキャッシュ領域設定レジスタ (CARR) のビット構成を図 4.3-1 に示しま
す。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
65
第 4 章 命令キャッシュ メモリ
4.3
MB91605A シリーズ
図 4.3-1 命令 / データキャッシュ領域設定レジスタ (CARR) のビット構成
bit
属性
初期値
7
6
5
4
3
2
1
0
CEA7
CEA6
CEA5
CEA4
CEA3
CEA2
CEA1
CEA0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
[bit 7, bit 6]:CEA7, CEA6 ( キャッシュ許可領域ビット 7, 6)
命令 / データキャッシュの対象領域を以下のように設定します。
CEA7
CEA6
設定するキャッシュ対象領域
制御内容
0
0
4000 0000H ∼ FFFF FFFFH
キャッシュ許可
0
1
4000 0000H ∼ 7FFF FFFFH
キャッシュ禁止
8000 0000H ∼ BFFF FFFFH
キャッシュ許可
C000 0000H ∼ FFFF FFFFH
キャッシュ禁止
4000 0000H ∼ 7FFF FFFFH
キャッシュ許可
8000 0000H ∼ FFFF FFFFH
キャッシュ禁止
4000 0000H ∼ FFFF FFFFH
キャッシュ禁止
1
1
0
1
各ビットは , リセットにより "0" に初期化されます。
[bit 5 ∼ bit 0]:CEA5 ∼ CEA0 ( キャッシュ許可領域ビット 5 ∼ 0)
命令 / データキャッシュの対象領域を以下のように設定します。
設定するキャッシュ対象領域
制御内容
CEA5
000C 0000H ∼ 000F FFFFH
0= キャッシュ / 1= 非キャッシュ
CEA4
0008 0000H ∼ 000B FFFFH
0= キャッシュ / 1= 非キャッシュ
CEA3
0004 0000H ∼ 0007 FFFFH
0= キャッシュ / 1= 非キャッシュ
CEA2
0003 0000H ∼ 0003 FFFFH
0= キャッシュ / 1= 非キャッシュ
CEA1
0002 0000H ∼ 0002 FFFFH
0= キャッシュ / 1= 非キャッシュ
CEA0
0001 0000H ∼ 0001 FFFFH
0= キャッシュ / 1= 非キャッシュ
各ビットは , リセットにより "0" に初期化されます。
66
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ メモリ
4.3
MB91605A シリーズ
命令キャッシュ制御レジスタ (ICHCR)
4.3.2
命令キャッシュの動作を制御する 8 ビット長のレジスタです。
本レジスタへの書込みは , 書込み命令以降 4 サイクルの間にフェッチされる命令の
キャッシュ動作には影響を与えません。
また , 本 CPU には命令のプリフェッチ機構がありますので , プリフェッチバッファの
消化状況次第では 5 サイクル以上後の命令でもキャッシュ動作の変更の影響を受けな
い場合があります。
リセット後は , 命令キャッシュを許可する前に必ずフラッシュを行ってください。
命令キャッシュ制御レジスタ (ICHCR) のビット構成を図 4.3-2 に示します。
図 4.3-2 命令キャッシュ制御レジスタ (ICHCR) のビット構成
bit
属性
7
6
5
4
3
2
1
0
W0LK
FLSH
ENAB
予約
R/W
予約
R/W
予約
R/W
予約
R/W
W1LK
R/W
R/W
R/W
R/W
X
X
X
X
0
0
0
0
初期値
R/W:リード / ライト可能
X:不定
[bit 7 ∼ bit 4]:予約ビット
書込み時
必ず "0" を書き込んでください。
読出し時
値は不定です。
[bit 3]:W1LK ( ウェイ 1 ロックビット )
ウェイ 1 の全エントリのロックを以下のように制御します。
書込み値
命令キャッシュウェイ 1 のロック動作
0
ウェイ 1 はロックしません。( 初期値 )
1
ウェイ 1 の有効エントリをロックします。
W1LK=1 を書き込んだ次のサイクル以降 , ウェイ 1 の有効なエントリがロックされま
す。これにより , ウェイ 1 内の有効なエントリを ROM のように使用することが可能と
なります。
ウェイ 1 がロックされた状態でキャッシュ対象領域へのアクセスがあった場合の動作
を以下に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
67
第 4 章 命令キャッシュ メモリ
4.3
MB91605A シリーズ
ウェイ 1 の
TAG 検索
ウェイ 0 の TAG
検索
ウェイ 0 の
ロック状態
動作
ヒット
−
−
ウェイ 1 の命令を供給
−
ヒット
−
ウェイ 0 の命令を供給
エントリが空
−
ウェイ 0 を更新
ミス
−
ウェイ 1 を更新
ロックしていない
ウェイ 0 を更新
ロックしている
両ウェイとも更新しない
エントリが空
ミス
ミス
*1
ウェイ 0 のエントリが空の状態でウェイ 1 にヒットまたはミスすることはあり
ません。
*2
「エントリが空」とは , そのエントリへの取り込みがフラッシュ後から 1 度も発
生していない状態を示します。
本ビットはキャッシュ動作中の書換えが可能です。また , ロック中であっても FLSH=1
でのフラッシュは有効となります。
[bit 2]:W0LK ( ウェイ 0 ロックビット )
ウェイ 0 の全エントリのロックを以下のように制御します。
書込み値
命令キャッシュウェイ 0 のロック動作
0
ウェイ 0 はロックしません。( 初期値 )
1
ウェイ 0 の有効エントリをロックします。
W0LK=1 を書き込んだ次のサイクル以降 , ウェイ 0 の有効なエントリがロックされま
す。これにより , ウェイ 0 内の有効なエントリを ROM のように使用することが可能と
なります。
ウェイ 0 がロックされた状態でキャッシュ対象領域へのアクセスがあった場合の動作
を以下に示します。
ウェイ 0 の
TAG 検索
ウェイ 1 の
TAG 検索
ウェイ 1 の
ロック状態
動作
ヒット
−
−
ウェイ 0 の命令を供給
−
ヒット
−
ウェイ 1 の命令を供給
エントリが空
エントリが空
−
ウェイ 0 を更新
エントリが空
−
ウェイ 1 を更新
ロックしていない
ウェイ 1 を更新
ロックしている
両ウェイとも更新しない
ミス
ミス
*1
ウェイ 0 のエントリが空の状態でウェイ 1 にヒットまたはミスすることはあり
ません。
*2
「エントリが空」とは , そのエントリへの取り込みがフラッシュ後から 1 度も発
生していない状態を示します。
本ビットはキャッシュ動作中の書換えが可能です。また , ロック中であっても FLSH=1
でのフラッシュは有効となります。
68
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ メモリ
4.3
MB91605A シリーズ
[bit 1]:FLSH ( フラッシュビット )
命令キャッシュの全エントリの無効化を指示します。
FLSH=1 を書き込んだ次のサイクルで , TAG リファレンス値をカウントアップし , 全エ
ントリを無効化します。キャッシュ動作中のフラッシュも可能です。
リセット後の 1 回目の書込み時と , それ以降書込みを 15 回行うごとに , TAG リファレ
ンス値が "0000" にリセットされ , その際のみ全エントリの TAGV に "1111" を順次書込
み TAG の初期化を行います。初期化には 256 サイクルかかります (8K バイト時 , ライ
ン数と同じ )。その間受け付けたアクセスは非キャッシュ領域へのアクセスとして扱わ
れます。TAG の初期化時以外でのフラッシュは , TAG リファレンスの変更のみとなり ,
1 サイクルで完了します。
[bit 0]:ENAB ( 命令キャッシュ許可ビット )
命令キャッシュの動作の許可 / 禁止を以下のように制御します。
4.3.3
書込み値
0
命令キャッシュの動作
動作を禁止します。( 初期値 )
1
動作を許可します。
命令キャッシュサイズレジスタ (ISIZE)
命令キャッシュの容量を表示する 16 ビット長のレジスタです。
命令キャッシュサイズレジスタ (ISIZE) のビット構成を図 4.3-3 に示します。
図 4.3-3 命令キャッシュサイズレジスタ (ISIZE) のビット構成
bit
15
0
ISIZE
R
属性
2000H
初期値
R:リードオンリ
[bit 15 ∼ bit 0]:ISIZE ( 命令キャッシュサイズビット )
命令キャッシュの容量に応じて , 以下に示す値が読み出されます。
読出し値
0800H
命令キャッシュ容量
2 K バイト
1000H
4 K バイト
2000H
8 K バイト
4000H
16 K バイト
8000H
32 K バイト
本レジスタは読出し専用です。書込みは , レジスタ値には影響を与えません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
69
第 4 章 命令キャッシュ メモリ
4.3
4.3.4
MB91605A シリーズ
命令キャッシュ機能レジスタ (IFUNC)
命令キャッシュのサポートする機能を表示する 16 ビット長のレジスタです。
命令キャッシュ機能レジスタ (IFUNC) のビット構成を図 4.3-4 に示します。
図 4.3-4 命令キャッシュ機能レジスタ (IFUNC) のビット構成
bit
15
0
R
属性
0016H
初期値
R:リードオンリ
命令キャッシュの各種機能に応じて , 各ビットごとに以下に示す値が読出されます。
本レジスタは読出し専用です。書込みは , レジスタ値には影響を与えません。
[bit 15 ∼ bit 8]:予約ビット
常に "0" が読み出されます。
[bit 7, bit 6]:RAM モード
RAM モード機能のサポート内容を示します。
読出し値
RAM モード機能
00
未サポート (RAM モード無し ) ( 本品種 )
01
命令キャッシュオフ時に RAM 使用可能
10
ウェイ単位の RAM モード機能
11
予約
[bit 5, bit 4]:ウェイ数
命令キャッシュのウェイ数設定を示します。
読出し値
ウェイ数 , 方式
00
ダイレクトマップ
01
2 ウェイ セットアソシエイティブ ( 本品種 )
10
4 ウェイ セットアソシエイティブ
11
8 ウェイ セットアソシエイティブ
[bit 3, bit 2]:ロック機能
エントリをロックする機能のサポート内容を示します。
70
読出し値
00
未サポート ( ロック機能無し )
ロック機能
01
ウェイ単位のグローバルロック機能 ( 本品種 )
10
エントリ単位およびグローバルロック機能
11
予約
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ メモリ
4.3
MB91605A シリーズ
[bit 1, bit 0]:フラッシュ機能
エントリを無効化する機能のサポート内容を示します。
CM71-10147-2
読出し値
00
無効化を実現する機能
ソフトウェアによる無効化
01
1 サイクルでのハードウェアによる無効化
10
n サイクルでのハードウェアによる無効化 ( 本品種 )
11
予約
FUJITSU SEMICONDUCTOR LIMITED
71
第 4 章 命令キャッシュ メモリ
4.4
4.4
MB91605A シリーズ
動作説明
命令キャッシュメモリの動作について説明します。
4.4.1
初期状態
本命令キャッシュはリセット後 , キャッシュ動作禁止状態となり , TAG の内容は不定
となっています (「4.4.6 各キャッシュ動作状態でのキャッシュ内容」参照 )。
キャッシュ動作を許可する前には , キャッシュ対象領域の設定 , キャッシュの無効化を
行ってからキャッシュ動作を許可してください。
4.4.2
命令キャッシュのキャッシュ対象領域
本命令キャッシュは , 以下に示す領域をキャッシュ対象とし , それ以外の領域はキャッ
シュ対象としません (CARR レジスタはデータキャッシュと共有しています )。
1. 0001 0000H ∼ 0001 FFFFH ( ただし , CARR レジスタの CEA0=0 のときのみ )
2. 0002 0000H ∼ 0002 FFFFH ( ただし , CARR レジスタの CEA1=0 のときのみ )
3. 0003 0000H ∼ 0003 FFFFH ( ただし , CARR レジスタの CEA2=0 のときのみ )
4. 0004 0000H ∼ 0007 FFFFH ( ただし , CARR レジスタの CEA3=0 のときのみ )
5. 0008 0000H ∼ 000B FFFFH ( ただし , CARR レジスタの CEA4=0 のときのみ )
6. 000C 0000H ∼ 000F FFFFH ( ただし , CARR レジスタの CEA5=0 のときのみ )
7. 0010 0000H ∼ 3FFF FFFFH
8. 4000 0000H ∼ 7FFF FFFFH ( ただし , CARR レジスタの CEA6=0 のときのみ )
9. 8000 0000H ∼ BFFF FFFFH ( ただし , CARR レジスタの CEA7=0 のときのみ )
10. C000 0000H ∼ FFFF FFFFH ( ただし , CARR レジスタの CEA7, CEA6=00 のときのみ )
CARR レジスタへの書込みは , 必ず ICHCR/DCHCR レジスタの ENAB=0( キャッシュ禁
止 ) のときにのみ行ってください。
いずれかのキャッシュが許可されている間は , CARR レジスタへの書込みは無視され ,
レジスタ値に影響を与えません。
ただし , CARR レジスタの設定に関わらず , エミュレータモードでは全領域キャッシュ
禁止となります。よって , エミュレータモード中は命令キャッシュの状態が保持されま
す。キャッシュ可能な命令領域をエミュレータモード中に書換えた場合 , 必ずエミュ
レータモード中に命令キャッシュのフラッシュを行ってください。
72
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
4.4.3
第 4 章 命令キャッシュ メモリ
4.4
命令キャッシュの無効化
ICHCR レジスタの FLSH ビットを用いて , 本命令キャッシュの内容の無効化 ( フラッ
シュ ) を行います。
以下に示す場合は , 命令キャッシュのフラッシュが必須となります。
•
リセット後 , 命令キャッシュを使用開始する前
•
命令キャッシュ動作停止後 , 命令キャッシュの使用を再度開始する前
•
命令キャッシュ対象領域のメモリ内容を書き換えたとき
リセット後 1 回目のフラッシュ操作 , およびその後のフラッシュ操作の 15 回目おきの
み , ライン数と同じサイクル (8K バイトの場合は 256 サイクル ) の期間で全ラインの
TAG の初期化を行います。この間に受け付けられたアクセスは , キャッシュ許可領域
へのアクセスであってもキャッシュへのアクセスは行わず,非キャッシュ領域へのアク
セスまたはキャッシュ動作禁止中のアクセスと同様に動作します。TAG の初期化が終
了した後からは , 通常のキャッシュ動作を再開します。
それ以外のフラッシュ操作においては, 1サイクルで全エントリの無効化を行い,キャッ
シュ動作抑止は行いません。
4.4.4
命令キャッシュの動作許可
本命令キャッシュの動作を許可するには , ICHCR レジスタの ENAB ビットへ "1" を書
き込んでください。
TAG の初期化中に命令キャッシュの動作を許可すると , TAG の初期化が終了するまで
キャッシュ動作は行われません。
4.4.5
命令キャッシュロック機能
ICHCR レジスタの W1LK ビットおよび W0LK ビットを用いて , 本命令キャッシュの内
容をウェイ単位でロックすることができます。この機能により , 一旦取り込んだ命令
コードを恒久的に高速でアクセスすることが可能となります。
ロックはウェイ単位で独立に設定可能となっており,一方のウェイのみに高速アクセス
したい命令を保持しつつ,もう一方のウェイに通常のキャッシュ動作をさせることがで
きます。
W1LK ビットがウェイ 1, W0LK ビットがウェイ 0 の全エントリのロックを指示します。
各ビットに "0" を書き込んだ次のサイクル以降 , 対応するウェイのすべての有効なエン
トリがロックされます。
ロックされたエントリにヒットするアクセスがあった場合,通常のキャッシュヒットと
同様に CPU に対し命令コードを供給します。
ロックされたエントリにミスするアクセスがあった場合,そのエントリの更新は行いま
せん。この場合 , LRU の値に関わらず , ロックされていないウェイ側のエントリが更新
されます。
ロックされたウェイ内の未使用のエントリに対するアクセスがあった場合,ロックされ
ていない状態と同様にエントリに命令コードを取り込み,直後にそのエントリがロック
されます。
両ウェイ共にロックされている場合,どちらのウェイのエントリにもヒットしないアク
セスは , 非キャッシュ領域へのアクセスと同様に動作し , キャッシュ内への取り込みは
行いません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
73
第 4 章 命令キャッシュ メモリ
4.4
MB91605A シリーズ
ロック機能を使用する場合 , 以下の手順が効率的です。
1. キャッシュのフラッシュを行います。
2. ウェイ 0 のロック機能を許可します。
3. ロックさせたいプログラムに分岐 , 実行します。
キャッシュのフラッシュ直後は , どちらのウェイのエントリも未使用のため , 最初の
キャッシュ対象領域へのアクセスは , ウェイ 0 から先に取り込まれます。このため , 上
記手順 (2) でウェイ 0 ではなくウェイ 1 をロックしても , 最初のアクセスはウェイ 0 に
取り込まれ , ロックされません。その場合 , ウェイ 1 がロックされるのは , ウェイ 0 の
エントリにミスしたアクセスのみとなります。
なお,ラインに空きがある限りロックする必要のないプログラムも同一ウェイ内に取り
込まれてロックされます。したがって , ロックさせたくないプログラムが取り込まれる
ことを抑止する場合は , そのプログラムは非キャッシュ領域に配置してください。
ウェイ 0 がロックされた状態でキャッシュ対象領域へのアクセスがあった場合の動作
を以下に示します。
ウェイ 0 の
TAG 検索
ウェイ 1 の
TAG 検索
ウェイ 1 の
ロック状態
動作
ヒット
−
−
ウェイ 0 の命令を供給
−
ヒット
−
ウェイ 1 の命令を供給
エントリが空
エントリが空
−
ウェイ 0 を更新
エントリが空
−
ウェイ 1 を更新
ロックしていない
ウェイ 1 を更新
ロックしている
両ウェイとも更新しない
ミス
ミス
ウェイ 1 がロックされた状態でキャッシュ対象領域へのアクセスがあった場合の動作
を以下に示します。
ウェイ 1 の
TAG 検索
ウェイ 0 の
TAG 検索
ウェイ 0 の
ロック状態
動作
ヒット
−
−
ウェイ 1 の命令を供給
−
ヒット
−
ウェイ 0 の命令を供給
エントリが空
−
ウェイ 0 を更新
ミス
−
ウェイ 1 を更新
ロックしていない
ウェイ 0 を更新
ロックしている
両ウェイとも更新しない
エントリが空
ミス
ミス
*1
ウェイ 0 のエントリが空の状態でウェイ 1 にヒットまたはミスすることはありま
せん。
*2
「エントリが空」とは , そのエントリへの取り込みがフラッシュ後から 1 度も発
生していない状態を示します。
ウェイロック許可 / 禁止はキャッシュ動作中に設定変更可能です。なお , ロック中で
あっても FLSH=1 でのフラッシュは有効となります。
74
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 4 章 命令キャッシュ メモリ
4.4
MB91605A シリーズ
4.4.6
各キャッシュ動作状態でのキャッシュ内容
各種状態でのキャッシュハードウェアの内容を以下に示します。
リセット直後
CM71-10147-2
キャッシュ禁止時
フラッシュ時
キャッシュメ 内容は不定
モリ
直前の状態を保持
直前の状態を保持
アドレス TAG
内容は不定
直前の状態を保持
直前の状態を保持
TAGV ビット
内容は不定
直前の状態を保持
FLSH により更新可
TAG リ フ ァ レ ン ス が
[0000]になるときのみ全
エントリが[1111]となる
それ以外は直前の値を
保持
TAG リファレ
ンス
1111
直前の状態を保持
FLSH により更新可
[1110][1111] の 場 合 は
[0000] にリセット
それ以外は直前の値 + 1
にカウントアップ
LRU ビット
内容は不定
直前の状態を保持
直前の状態を保持
W1LK ビット
0= ロックしない
直前の状態を保持
直前の状態を保持
W0LK ビット
0= ロックしない
直前の状態を保持
直前の状態を保持
FLSH ビット
0= 消去しない
ENAB ビット
0= キャッシュ禁止
直前の状態を保持
1= 消去する
1 書 込 み で フ ラ ッ 次サイクルで 0 に戻る
シュ動作
0= キャッシュ禁止
直前の状態を保持
FUJITSU SEMICONDUCTOR LIMITED
75
第 4 章 命令キャッシュ メモリ
4.4
76
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 5 章 データキャッシュ
メモリ
データキャッシュメモリの機能と動作について説
明します。
5.1 概要
5.2 構成
5.3 レジスタ
5.4 動作説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
77
第 5 章 データキャッシュメモリ
5.1
5.1
MB91605A シリーズ
概要
本品種は , 以下に示す構成のデータキャッシュを搭載しています。
• キャッシュ容量:8K バイト (1 ウェイあたり 4K バイト )
• マッピング方式:2 ウェイセットアソシエイティブ方式
• 置換方式 :ライトスルー ( ライトヒット時 , キャッシュとメモリ双方を更新 )
• ラインサイズ :16 バイト (4WORD)
• 総エントリ数 :512 エントリ (1 ウェイあたり 256 ライン )
■ 概要
キャッシュへの取り込みは 1 ライン単位で行われ , 1 回のミスアクセスにつき 16 バイ
ト分のリード動作を行います。
ライトアクセスでエントリにヒットした場合,キャッシュとメモリの両方を書換えるラ
イトスルー動作を行います。
制御ビットへの書込みにより , 全エントリの無効化を行うことが可能です。
本品種では , エントリされたデータをキャッシュ内にロックすることはできません。
キャッシュ可能なメモリ領域は , データキャッシュと共通の CARR レジスタにより特
定領域ごとに設定できます。
78
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 5 章 データキャッシュメモリ
5.2
MB91605A シリーズ
構成
5.2
図 5.2-1 にデータキャッシュメモリの構成を示します。
図 5.2-1 データキャッシュメモリの構成
ウェイ0 4bit
TAGV
20bit
16byte
1ライン
アドレスTAG
ウェイ0/ウェイ1共通
1bit
256エントリ
(8Kバイト時)
TAGリファレンス
4bit
LRU
256エントリ
(8Kバイト時)
ウェイ1
4bit
TAGV
20bit
16byte
1ライン
アドレスTAG
256エントリ
(8Kバイト時)
■ TAGV ( バリッドビッド )
対応するラインのアドレスタグが有効=データがストアされていることを示します。
1 ラインにつき 4 ビットで構成されており , データが取り込まれた際に 4 ビットの TAG
リファレンス値が書き込まれます。
TAG の検索の際 , TAG リファレンス値と同じ値の TAGV を持つエントリが有効なエン
トリと見なされます。
TAG 初期化動作 (「5.4.3 データキャッシュの無効化」) により全エントリが "1111" と
なります。
■ アドレス TAG
対応するラインに取り込まれているデータのメモリアドレス上位 20 ビット (8K バイト
時 ) を示します。
TAGV が TAG リファレンス値と一致し , かつアドレス TAG の内容が CPU からのアク
セス要求アドレスと一致したエントリがヒットとなります。
■ LRU
対応するラインのどちらのウェイが最後にアクセスされたかを示します。
"0" のときウェイ 0 が , "1" のときウェイ 1 が最後にアクセスされたことを示します。
エントリを更新する時は LRU が示していないウェイから更新します。
キャッシュがフラッシュされた後は , 必ずウェイ 0 から先に更新します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
79
第 5 章 データキャッシュメモリ
5.2
MB91605A シリーズ
■ TAG リファレンス
有効な TAGV と同じ値を示す 4 ビットのフラグです。
リセットにより "1111" となり , キャッシュ使用開始時に行うフラッシュにより "0000"
がセットされます。以降フラッシュを行うたびに 1 ずつカウントアップされます。
"1110" のときにフラッシュを行うと "0000" に戻ります。
"0000" がセットされる際 , 全エントリの TAGV に "1111" を順次書き込むことにより
TAG の初期化を行います。
初期化には 256 サイクルかかります ( ライン数と同じ )。その間受け付けたアクセスは
非キャッシュ領域へのアクセスとして扱われます。TAG の初期化時以外でのフラッ
シュは , TAG リファレンスの変更のみとなり , 1 サイクルで完了します。
80
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 5 章 データキャッシュメモリ
5.3
MB91605A シリーズ
レジスタ
5.3
データキャッシュメモリで使用するレジスタの構成と機能について説明します。
■ データキャッシュメモリのレジスタ一覧
データキャッシュメモリのレジスタ一覧を表 5.3-1 に示します。
表 5.3-1 データキャッシュメモリのレジスタ一覧
レジスタ略称
CARR*
レジスタ名
命令 / データキャッシュ領域設定レジスタ
参照先
4.3.1
DCHCR
データキャッシュ制御レジスタ
5.3.1
DSIZE
データキャッシュサイズレジスタ
5.3.2
DFUNC
データキャッシュ機能レジスタ
5.3.3
命令キャッシュと共用です。
*
データキャッシュ制御レジスタ (DCHCR)
5.3.1
データキャッシュの動作を制御する 8 ビット長のレジスタです。
本レジスタへの書込みは,書込み命令直後の命令によるデータアクセス以降に影響を与
えます。
リセット後は , データキャッシュを許可する前に必ずフラッシュを行ってください。
データキャッシュ制御レジスタ (DCHCR) のビット構成を図 5.3-1 に示します。
図 5.3-1 データキャッシュ制御レジスタ (DCHCR) のビット構成
bit
属性
7
6
5
4
3
2
1
0
予約
R/W
予約
R/W
予約
R/W
予約
R/W
予約
R/W
予約
R/W
FLSH
ENAB
R/W
R/W
X
X
X
X
X
X
0
0
初期値
R/W:リード / ライト可能
X:不定
[bit 7 ∼ bit 2]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
値は不定です。
FUJITSU SEMICONDUCTOR LIMITED
81
第 5 章 データキャッシュメモリ
5.3
MB91605A シリーズ
[bit 1]:FLSH ( フラッシュビット )
データキャッシュの全エントリの無効化を指示します。
FLSH=1 を書き込んだ次のサイクルで , TAG リファレンス値をカウントアップし , 全エ
ントリを無効化します。キャッシュ動作中のフラッシュも可能です。
リセット後の 1 回目の書込み時と , それ以降書込みを 15 回行うごとに , TAG リファレ
ンス値が "0000" にリセットされ , その際のみ全エントリの TAGV に "1111" を順次書込
み TAG の初期化を行います。初期化には 256 サイクルかかります (8K バイト時 , ライ
ン数と同じ )。その間受け付けたアクセスは非キャッシュ領域へのアクセスとして扱わ
れます。TAG の初期化時以外でのフラッシュは , TAG リファレンスの変更のみとなり ,
1 サイクルで完了します。
[bit 0]:ENAB ( データキャッシュ許可ビット )
データキャッシュの動作の許可 / 禁止を以下のように制御します。
書込み値
0
データキャッシュの動作
動作を禁止します。( 初期値 )
1
動作を許可します。
本ビットは , リセットにより "0" に初期化されます。
5.3.2
データキャッシュサイズレジスタ (DSIZE)
データキャッシュの容量を表示する 16 ビット長のレジスタです。
データキャッシュサイズレジスタ (DSIZE) のビット構成を図 5.3-2 に示します。
図 5.3-2 データキャッシュサイズレジスタ (DSIZE) のビット構成
bit
15
0
DSIZE
R
属性
2000H
初期値
R:リードオンリ
[bit 15 ∼ bit 0]:DSIZE ( データキャッシュサイズビット )
データキャッシュの容量に応じて , 以下に示す値が読み出されます。
読出し値
0800H
データキャッシュ容量
2 K バイト
1000H
4 K バイト
2000H
8 K バイト
4000H
16 K バイト
8000H
32 K バイト
本レジスタは読出し専用です。書込みは , レジスタ値には影響を与えません。
82
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 5 章 データキャッシュメモリ
5.3
MB91605A シリーズ
5.3.3
データキャッシュ機能レジスタ (DFUNC)
データキャッシュのサポートする機能を表示する 16 ビット長のレジスタです。
データキャッシュ機能レジスタ (IFUNC) のビット構成を図 5.3-3 に示します。
図 5.3-3 データキャッシュ機能レジスタ (IFUNC) のビット構成
bit
15
0
R
属性
0152H
初期値
R:リードオンリ
データキャッシュの各種機能に応じて , 各ビットごとに以下に示す値が読出されます。
本レジスタは読出し専用です。書込みは , レジスタ値には影響を与えません。
[bit 15 ∼ bit 11]:予約ビット
常に "0" が読み出されます。
[bit 10]:コピーバック機能
コピーバック機能のサポート内容を示します。
読出し値
0
コピーバック機能
未サポート ( 本品種 )
1
サポート
[bit 9]:ライトアロケート機能
ライトアロケート機能のサポート内容を示します。
読出し値
0
未サポート ( 本品種 )
ライトアロケート機能
1
サポート
[bit 8]:ライトスルー機能
ライトスルー機能のサポート内容を示します。
CM71-10147-2
読出し値
0
ライトスルー機能
未サポート
1
サポート ( 本品種 )
FUJITSU SEMICONDUCTOR LIMITED
83
第 5 章 データキャッシュメモリ
5.3
MB91605A シリーズ
[bit 7, bit 6]:RAM モード
RAM モード機能のサポート内容を示します。
読出し値
RAM モード機能
00
未サポート (RAM モード無し )
01
データキャッシュオフ時に RAM 使用可能 ( 本品種 )
10
ウェイ単位の RAM モード機能
11
予約
[bit 5, bit 4]:ウェイ数
データキャッシュのウェイ数設定を示します。
読出し値
ウェイ数 , 方式
00
ダイレクトマップ
01
2 ウェイ セットアソシエイティブ ( 本品種 )
10
4 ウェイ セットアソシエイティブ
11
8 ウェイ セットアソシエイティブ
[bit 3, bit 2]:ロック機能
エントリをロックする機能のサポート内容を示します。
読出し値
00
ロック機能
未サポート ( ロック機能無し ) ( 本品種 )
01
ウェイ単位のグローバルロック機能
10
エントリ単位およびグローバルロック機能
11
予約
[bit 1, bit 0]:フラッシュ機能
エントリを無効化する機能のサポート内容を示します。
84
読出し値
00
無効化を実現する機能
ソフトウェアによる無効化
01
1 サイクルでのハードウェアによる無効化
10
n サイクルでのハードウェアによる無効化 ( 本品種 )
11
予約
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 5 章 データキャッシュメモリ
5.4
MB91605A シリーズ
5.4
動作説明
データキャッシュメモリの動作について説明します。
5.4.1
初期状態
本データキャッシュはリセット後 , キャッシュ動作禁止状態となり , TAG の内容は不
定となっています (「4.4.6
各キャッシュ動作状態でのキャッシュ内容」参照 )。
キャッシュ動作を許可する前には , キャッシュ対象領域の設定 , キャッシュの無効化を
行ってからキャッシュ動作を許可してください。
5.4.2
データキャッシュのキャッシュ対象領域
本データキャッシュは , 以下に示す領域をキャッシュ対象とし , それ以外の領域は
キャッシュ対象としません (CARR レジスタは命令キャッシュと共有しています )。
1. 0001 0000H ∼ 0001 FFFFH ( ただし , CARR レジスタの CEA0=0 のときのみ )
2. 0002 0000H ∼ 0002 FFFFH ( ただし , CARR レジスタの CEA1=0 のときのみ )
3. 0003 0000H ∼ 0003 FFFFH ( ただし , CARR レジスタの CEA2=0 のときのみ )
4. 0004 0000H ∼ 0007 FFFFH ( ただし , CARR レジスタの CEA3=0 のときのみ )
5. 0008 0000H ∼ 000B FFFFH ( ただし , CARR レジスタの CEA4=0 のときのみ )
6. 000C 0000H ∼ 000F FFFFH ( ただし , CARR レジスタの CEA5=0 のときのみ )
7. 0010 0000H ∼ 3FFF FFFFH
8. 4000 0000H ∼ 7FFF FFFFH ( ただし , CARR レジスタの CEA6=0 のときのみ )
9. 8000 0000H ∼ BFFF FFFFH ( ただし , CARR レジスタの CEA7=0 のときのみ )
10. C000 0000H ∼ FFFF FFFFH ( ただし , CARR レジスタの CEA7, CEA6=00 のときのみ )
CARR レジスタの設定に関わらず , エミュレータモードでは全領域でリードはキャッ
シュ禁止 , ライトはキャッシュ許可となります。よって , エミュレータモード中のリー
ドではデータキャッシュの状態が保持され , ライトはキャッシュにヒットした場合 ,
キャッシュ内部のデータおよびメモリの両方が更新されます (LRU は更新されません )。
また , キャッシュのフラッシュで TAG リファレンスが "0000" となったときに行われる ,
TAG 初期化サイクル中に受け付けたアクセスは , すべて非キャッシュ領域へのアクセ
スとして扱われます。TAG 初期化サイクルが終了した後から , キャッシュ対象アクセ
スの判定を再開します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
85
第 5 章 データキャッシュメモリ
5.4
5.4.3
MB91605A シリーズ
データキャッシュの無効化
DCHCRレジスタのFLSHビットを用いて,本データキャッシュの内容の無効化 (フラッ
シュ ) を行います。
以下に示す場合 , データキャッシュのフラッシュが必須となります。
•
リセット後 , データキャッシュを使用開始する前
•
データキャッシュ動作停止後 , データキャッシュの使用を再度開始する前
•
データキャッシュ対象領域のメモリ内容を命令以外で書き換えたとき (DMA 転送
など )
リセット後 1 回目のフラッシュ操作 , およびその後のフラッシュ操作の 15 回目おきの
み , ライン数と同じサイクル (8K バイトの場合は 256 サイクル ) の期間で全ラインの
TAG の初期化を行います。この間に受け付けられたアクセスは , キャッシュ許可領域
へのアクセスであってもキャッシュへのアクセスは行わず,非キャッシュ領域へのアク
セスまたはキャッシュ動作禁止中のアクセスと同様に動作します。TAG の初期化が終
了した後からは , 通常のキャッシュ動作を再開します。
それ以外のフラッシュ操作においては, 1サイクルで全エントリの無効化を行い,キャッ
シュ動作抑止は行いません。
5.4.4
データキャッシュの動作許可
本データキャッシュの動作を許可するには , DCHCR レジスタの ENAB ビットへ "1" を
書き込んでください。
TAG の初期化中に命令キャッシュの動作を許可すると , TAG の初期化が終了するまで
キャッシュ動作は行われません。
5.4.5
各キャッシュ動作状態でのキャッシュ内容
各種状態でのキャッシュハードウェアの内容を以下に示します。
リセット直後
フラッシュ時
直前の状態を保持
直前の状態を保持
アドレス TAG
内容は不定
直前の状態を保持
直前の状態を保持
TAGV ビット
内容は不定
直前の状態を保持
FLSH により更新可
TAG リファレンスが [0000] に
なるときのみ全エントリが
[1111] となる
それ以外は直前の値を保持
TAG リファレ
ンス
1111
直前の状態を保持
FLSH により更新可
[1110][1111]の場合は[0000]に
リセット
それ以外は直前の値 + 1 にカ
ウントアップ
LRU ビット
内容は不定
直前の状態を保持
直前の状態を保持
FLSH ビット
0=消去しない 直前の状態を保持
1= 消去する
1 書 込 み で フ ラ ッ 次サイクルで 0 に戻る
シュ動作
0=キャッシュ 0= キャッシュ禁止
直前の状態を保持
禁止
ENAB ビット
86
キャッシュ禁止時
キャッシュメ 内容は不定
モリ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
5.4.6
第 5 章 データキャッシュメモリ
5.4
キャッシュオフ時の RAM 動作モード
本データキャッシュは , キャッシュ禁止 (DCHCR レジスタの ENAB=0) 時には , 高速ア
クセスが可能なデータ RAM として動作します。
データ RAM 動作時のメモリマップは以下のとおりです ( 下記 RAM 領域の区切りは ,
キャッシュのサイズにより変わります )。
•
0000 8000H ∼ 0000 8FFFH : RAM 領域 (1) (4 K バイト )
•
0000 9000H ∼ 0000 9FFFH : RAM 領域 (2) (4 K バイト )
•
0000 A000H ∼ 0000 AFFFH : RAM 領域 (1) のミラー領域
•
0000 B000H ∼ 0000 BFFFH : RAM 領域 (2) のミラー領域
•
0000 C000H ∼ 0000 CFFFH : RAM 領域 (1) のミラー領域
•
0000 D000H ∼ 0000 DFFFH : RAM 領域 (2) のミラー領域
•
0000 E000H ∼ 0000 EFFFH : RAM 領域 (1) のミラー領域
•
0000 F000H ∼ 0000 FFFFH : RAM 領域 (2) のミラー領域
なお , データキャッシュ動作許可 (DCHCR レジスタの ENAB=1) 時に上記領域を読み出
すとデータキャッシュの内容が返されます。ただし , エントリの有効 / 無効は考慮され
ず , 無効なデータであってもそのまま読み出されます。データキャッシュ動作許可中の
上記領域への書込みは無視されます。
このデータ RAM は DMA 転送の対象にできません。CPU によるプログラムアクセス
のみ可能です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
87
第 5 章 データキャッシュメモリ
5.4
88
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 6 章 動作モード
動作モードの機能と動作について説明します。
6.1 概要
6.2 構成
6.3 レジスタ
6.4 動作説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
89
第 6 章 動作モード
6.1
6.1
MB91605A シリーズ
概要
本シリーズは以下の動作モードを持ち , 起動時に選択して使用することができます。
• ユーザモード・外 ROM 外バス
• シリアルライタモード
■ 概要
MD 端子と動作モードの関係を以下に示します。
表 6.1-1 MD 端子と動作モードの関係
MD 端子
MD1
0
90
MD0
動作モード
0
ユーザモード・外 ROM 外バス
1
シリアルライタモード
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 6 章 動作モード
6.2
MB91605A シリーズ
6.2
構成
動作モードのブロック図を図 6.2-1 に示します。
■ ブロック図
図 6.2-1 動作モードのブロック図
起動モード
オンチップバス
アドレス デコーダ
On-Chip Bus
バス権
要求・付与
IO機能
モード別
セレクタ
リセット
シーケンサ
デコーダ
8
8
2
MODR
MOD[1:0]
8
8
BMOD[7:0]
BMODR
ラッチ許可
リセット信号
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
91
第 6 章 動作モード
6.3
MB91605A シリーズ
レジスタ
6.3
動作モードで使用するレジスタの構成と機能について説明します。
■ 動作モードのレジスタ一覧
動作モードのレジスタ一覧を表 6.3-1 に示します。
表 6.3-1 動作モードのレジスタ一覧
6.3.1
レジスタ略称
BMODR
バスモードデータレジスタ
レジスタ名
6.3.1
参照先
MODR
モードレジスタ
6.3.2
バスモードデータレジスタ (BMODR)
起動時に設定されたバスモードデータを示す 8 ビット長のレジスタです。
本レジスタは読出しのみ可能です。書込みは本レジスタの値に影響しません。
バスモードデータレジスタ (BMODR) のビット構成を図 6.3-1 に示します。
図 6.3-1 バスモードデータレジスタ (BMODR) のビット構成
bit
7
0
BMOD[7:0]
R
属性
初期値
モード設定により異なる
R:リードオンリ
[bit 7 ∼ bit 0]:BMOD[7:0] ( バスモードビット )
バスモードデータを示します。MD1, MD0 端子の設定値ごとに, 以下の内容を示します。
MD 端子
MD1
0
92
MD0
モードデータ
BMOD[7:0]
動作モード
0
XXXXXXXX
ユーザモード・外 ROM 外バス
1
0111XXXX
シリアルライタモード
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 6 章 動作モード
6.3
MB91605A シリーズ
6.3.2
モードレジスタ (MODR)
起動時に設定されたモードを示す 8 ビット長のレジスタです。
本レジスタは読出しのみ可能です。書込みは本レジスタの値に影響しません。
モードレジスタ (MODR) のビット構成を図 6.3-2 に示します。
図 6.3-2 モードレジスタ (MODR) のビット構成
bit
7
5
4
3
MOD[1:0]
予約
2
ROMA
1
0
WTH[1:0]
R
属性
初期値
モード設定により異なる
R:リードオンリ
[bit 7 ∼ bit 5]:予約ビット
"000" 固定です。
[bit 4, bit 3]:MOD[1:0] ( モード値ビット )
各モードに従い以下の内容を示します。
読出し値
00
起動中のモード
ユーザモード・外 ROM 外バス
11
シリアルライタモード
[bit 2]:ROMA (ROM 領域ビット )
起動時のリセットベクタを含む ROM 領域のマッピングに従い , 以下の内容を示しま
す。
本ビットは , ユーザモード・外 ROM 外バスで "0( 外部バス領域 )", シリアルライタモー
ドで "1( 内部 ROM 領域 )" を示します。
読出し値
ROM 領域
0
外部バス領域
1
内部 ROM 領域
[bit 1, bit 0]:WTH[1:0] ( 外部バス幅初期値ビット )
起動時の初期外部バス幅の設定に従い , 以下の内容を示します。
本ビットは , ユーザモード・外 ROM 外バス , およびシリアルライタモードで "11" 固定
です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
93
第 6 章 動作モード
6.4
6.4
MB91605A シリーズ
動作説明
本シリーズの動作モードについて説明します。
6.4.1
動作モード設定方法
動作モードは , MD 端子 (MD1, MD0) 入力により設定します。
6.4.2
各種モード詳細
以下に各動作モードの動作の詳細を示します。
■ ユーザモード・外 ROM 外バス
ユーザモード・外 ROM 外バスは , 外部バス拡張機能が有効なモードです。初期状態で
は , 汎用 CS 領域 CS4 が , 外部バス領域として機能します。この場合 , 外部バス幅の初
期値は 16 ビットです。
このモードでは , 外部バス領域がブート領域にマッピングされます。よって , 起動後に
CPU はリセットベクタを汎用 CS 領域 CS4 から取得し , 動作を開始します。
ユーザモード・外 ROM 外バス時の MD 端子 (MD1, MD0) は , RST 解除後に変化しても
動作モードは変化しません。
■ シリアルライタモード
シリアルライタモードは , シリアルライタで FLASH メモリの書き込みを行うモードで
す。
シリアルライタモード時の MD 端子 (MD1, MD0) は , 常に固定してください。MD 端子
が変化すると動作モードが変化してしまいます。
詳しくは ,「第 28 章 シリアル書込み 接続例」を参照してください。
94
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
本デバイスのすべての内部クロックの元となる ,
ソースクロック (SRCCLK) を生成するクロック生
成部について説明します。
7.1 概要
7.2 構成
7.3 端子
7.4 レジスタ
7.5 動作説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
95
第 7 章 クロック生成部
7.1
7.1
MB91605A シリーズ
概要
ソースクロック (SRCCLK) とは , 本デバイスを動作させるために使用する内部クロックの生
成元になるクロックです。
ソースクロック (SRCCLK) となるクロックの生成と発振制御 , またどのクロックをソースク
ロック (SRCCLK) として選択するか , その方法を説明します。
■ 概要
本デバイスは各種内部クロックを利用して動作します。各種内部クロックは , ソースク
ロック (SRCCLK) を分周して生成します。
ソースクロック (SRCCLK) は , 次の 2 つのクロックから選択できます。
•
メインクロック (MAINCLK)
•
PLL クロック (PLLCLK)
クロック生成部では次の制御を行います。
•
•
メインクロック (MAINCLK) の生成
-
メインクロック (MAINCLK) の発振を制御します。
-
メインクロック (MAINCLK) の発振安定待ち時間を設定します。
-
メインタイマの制御やメインタイマ割込み要求の発生を制御します。
PLL クロック (PLLCLK) の生成
-
PLL クロック (PLLCLK) の発振を制御します。
-
PLL クロック (PLLCLK) の発振安定待ち時間を設定します。
-
PLL 逓倍率 (PLL クロック (PLLCLK) を生成するためのメインクロック
(MAINCLK) の逓倍率 ) を設定します。
メインクロック (MAINCLK) の逓倍のみです。
•
ソースクロック (SRCCLK) の選択
2 つのクロックの中から , ソースクロック (SRCCLK) として使用するクロックを選
択します。
96
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.2
MB91605A シリーズ
7.2
構成
クロック生成部は , クロック生成部とソースクロック (SRCCLK) 選択部で構成されています。
クロック生成部
7.2.1
2 つのクロック生成部があります。クロック生成部で作成したクロックは , ソースクロック
(SRCCLK) として選択できます。
■ メインクロック (MAINCLK) 生成部
X0 端子 , X1 端子 ( メイン発振子 ) からの入力を使用してメインクロック (MAINCLK)
を生成します。
メインクロック (MAINCLK) は , PLL クロック (PLLCLK) の生成にも使用します。
メインクロック (MAINCLK) 生成部のブロックダイヤグラムを図 7.2-1 に示します。
図 7.2-1 メインクロック (MAINCLK) 生成部のブロックダイヤグラム
メインクロック (MAINCLK) 生成部
MTE
MTC
MOSW
MTS
MTIE
メインタイマ
割込み要求
メイン
タイマ
MTIF
X1
メインクロック
レディフラグ
MCRDY
メインクロック
MCEN
X0
•
(MAINCLK)
メインタイマ
メインクロック (MAINCLK) で動作するタイマです。詳細は「第 9 章 メインタイ
マ」を参照してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
97
第 7 章 クロック生成部
7.2
MB91605A シリーズ
■ PLL クロック (PLLCLK) 生成部
メインクロック (MAINCLK) を逓倍して PLL クロック (PLLCLK) を生成します。
PLL クロック (PLLCLK) 生成部のブロックダイヤグラムを図 7.2-2 に示します。
図 7.2-2 PLL クロック (PLLCLK) 生成部のブロックダイヤグラム
PLL クロック (PLLCLK) 生成部
メインクロック
(MAINCLK)
PLL 入力
クロック
分周器
(1 分周 )
PLL 入力
クロック
PLL フィードバック
クロック
PLL フィード
バッククロック
分周器
(4, 5 逓倍 )
PDS
PTS
PLL マクロ
発振
PLL マクロ発振
クロック
クロック
分周器
(2, 3 分周 )
PLL
PCEN
•
(PLLCLK)
ODS
PMS
PCRDY
メインタイマ
PLL クロック
PLL クロック
レディフラグ
PLL
クロック逓倍回路です。
•
PLL 入力クロック分周器
メインクロック (MAINCLK) を分周して PLL 入力クロックを生成します。
•
PLL フィードバッククロック分周器
PLL マクロ発振クロックを分周して生成した PLL クロック (PLLCLK) をさらに分周
して , PLL フィードバッククロックを生成します。
•
PLL マクロ発振クロック分周器
PLL マクロ発振クロックを分周して , PLL クロック (PLLCLK) を生成します。
< 注意事項 >
メインクロック 10MHz 以上 , PLL マクロ発振クロック周波数 150MHz ∼ 200MHz の設定
で使用してください。
98
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.2
MB91605A シリーズ
7.2.2
ソースクロック (SRCCLK) 選択部
ソースクロック (SRCCLK) の選択について説明します。ソースクロック (SRCCLK) は , 次の
2 つのクロックソースの中から選択します。
• メインクロック (MAINCLK) の 2 分周
• PLL クロック (PLLCLK)
イニシャライズリセット (INIT) が発生した場合 , ソースクロック (SRCCLK) の設定は
初期化されて , ソースクロック (SRCCLK) はメインクロック (MAINCLK) の 2 分周にな
ります。
プログラムの動作開始後は , クロックソース設定レジスタ (CSELR) の設定によって ,
任意のソースクロック (SRCCLK) に変更してください。
■ ソースクロック (SRCCLK) 選択部のブロックダイヤグラム
ソースクロック (SRCCLK) 選択部のブロックダイヤグラムを図 7.2-3 に示します。
図 7.2-3 ソースクロック (SRCCLK) 選択部のブロックダイヤグラム
メインクロック(MAINCLK)
メインクロック分周器
2分周
ソースクロック
PLLクロック(PLLCLK)
SRCCLK
CKS1
•
メインクロック分周器 (2 分周 )
メインクロック (MAINCLK) は , 2 分周されてからソースクロック (SRCCLK) にな
ります。
•
CKS1 ビット
クロックソース設定レジスタ (CSELR) のソースクロック (SRCCLK) 選択ビットで
す。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
99
第 7 章 クロック生成部
7.3
7.3
MB91605A シリーズ
端子
クロック生成部で使用する端子について説明します。
■ 概要
•
X0, X1 端子
メインクロック (MAINCLK) の生成に使用する端子です。
100
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.4
MB91605A シリーズ
7.4
レジスタ
クロック生成部で使用するレジスタの構成と機能について説明します。
■ クロック生成部のレジスタ一覧
クロック生成部のレジスタ一覧を表 7.4-1 に示します。
表 7.4-1 クロック生成部のレジスタ一覧
CM71-10147-2
レジスタ略称
CSELR
レジスタ名
クロックソース設定レジスタ
参照先
7.4.1
CMONR
クロックソース監視レジスタ
7.4.2
CSTBR
発振安定待ち設定レジスタ
7.4.3
PLLCR
PLL 設定レジスタ
7.4.4
FUJITSU SEMICONDUCTOR LIMITED
101
第 7 章 クロック生成部
7.4
MB91605A シリーズ
クロックソース設定レジスタ (CSELR)
7.4.1
クロックソースの制御とソースクロック (SRCCLK) を選択するレジスタです。
クロックソース設定レジスタ (CSELR) のビット構成を図 7.4-1 に示します。
図 7.4-1 クロックソース設定レジスタ (CSELR) のビット構成
bit
7
6
5
予約
R/W
PCEN
MCEN
R/W
R/W
予約
R/W
初期値
(INIT 時 )
-
0
1
初期値
(RST 時 )
-
*
*
属性
4
3
2
1
0
予約
R/W
予約
R/W
CKS1
CKS0
R/W
R/W
-
-
-
0
0
-
-
-
*
*
R/W:リード / ライト可能
*:初期化されないビット
-:未定義
< 注意事項 >
102
•
このレジスタを読み出しても , 実際に設定されている値は読み出されません。このレ
ジスタに設定した値が実際に反映されたかどうかは , クロックソース監視レジスタ
(CMONR) を読み出して確認してください。
•
このレジスタを書き換える場合は , このレジスタに設定した値とクロックソース監視
レジスタ (CMONR) の値が同じであることを確認してから , 書き換えてください。
•
クロックの切り替え中に (CKS1, CKS0 ≠ CKM1, CKM0) のときに , このレジスタに書
込みを行っても , 書込みは無視されます。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit6]:PCEN (PLL クロック発振許可ビット )
PLL クロック (PLLCLK) の発振を制御します。
書込み値
0
説明
PLL クロック (PLLCLK) の発振を停止します。
1
PLL クロック (PLLCLK) が発振します。
< 注意事項 >
•
ストップモードにする前に , このビットに "0" を書き込んで , PLL クロック (PLLCLK)
の発振を停止してください。
•
次のいずれかの場合は , このビットは書き換えられません。
- CKS1, CKS0 ビットでソースクロック (SRCCLK) に PLL クロック (PLLCLK) を選択
している (CKS1, CKS0=10)
- メインクロック (MAINCLK) の発振が停止中 / 発振安定待ち中
( クロックソース監視レジスタ (CMONR) の MCRDY ビット =0)
•
MCEN ビットでメインクロック (MAINCLK) の発振を停止 (MCEN=0) すると , この
ビットも "0" になります。
•
メインタイマのクリア中 (メインタイマ制御レジスタ (MTMCR) のMTCビット=1) は ,
このビットを "0" から "1" に書き換えないでください。
•
このビットを "0" から "1" に書き換えて , PLL クロック (PLLCLK) の発振を許可すると ,
メインタイマがクリアされます。
このとき , メインタイマ制御レジスタ (MTMCR) の MTC ビットからは "1" が読み出さ
れます。
[bit5] :MCEN ( メインクロック発振許可ビット )
メインクロック (MAINCLK) の発振を制御します。
書込み値
説明
0
メインクロック (MAINCLK) の発振を停止します。
1
メインクロック (MAINCLK) が発振します。
< 注意事項 >
•
本デバイスでは本ビットは書き換えられません。
•
ストップモード時は, このビットの値にかかわらずメインクロック (MAINCLK) の発振
が停止します。
[bit7, bit4 ∼ bit2]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
103
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit1, bit0]:CKS1, CKS0 ( ソースクロック選択ビット )
ソースクロック (SRCCLK) を選択します。
CKS1
CKS0
説明
0
0
0
1
1
0
PLL クロック (PLLCLK)
1
1
設定禁止
メインクロック (MAINCLK) の 2 分周
発振が停止中 / 発振安定待ち中のクロックは , ソースクロック (SRCCLK) に選択できま
せん。
このビットの書換え条件を表 7.4-2 に示します。
表 7.4-2 CKS1, CKS0 ビットの書換え条件
変更前の値
CKS1 CKS0
0
0
0
1
1
0
書換え可能な値
[CKS1:CKS0]
書換え条件となるビット
書換え不可能な値
クロックソース監視レジスタ
[CKS1:CKS0]
(CMONR)
00, 01
MCRDY=1
-
10
PCRDY=1
00, 01
MCRDY=1
10
00
MCRDY=1
01
10
PCRDY=1
表 7.4-2 の書換え不可能の値は書き込まないでください。ソースクロック (SRCCLK) の
切換え手順は , 「7.5.2 ソースクロック (SRCCLK) の切換え」を参照してください。
104
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.4
MB91605A シリーズ
クロックソース監視レジスタ (CMONR)
7.4.2
クロックソースや , ソースクロック (SRCCLK) の状態を表示するレジスタです。
このレジスタを読み出すと , クロックソース設定レジスタ (CSELR) に設定した値が ,
実際に反映されているかどうかを確認できます。
クロックソース監視レジスタ (CMONR) のビット構成を図 7.4-2 に示します。
図 7.4-2 クロックソース監視レジスタ (CMONR) のビット構成
bit
7
6
5
4
3
2
1
0
予約
R
PCRDY
MCRDY
予約
R
予約
R
CKM0
R
予約
R
CKM1
R
R
R
初期値
(INIT 時 )
-
0
1
-
-
-
0
0
初期値
(RST 時 )
-
*
*
-
-
-
*
*
属性
R:リードオンリ
*:初期化されないビット
-:未定義
< 注意事項 >
•
クロックソース設定レジスタ (CSELR) の設定値を変更した場合は , 必ずこのレジスタ
を読み出して , 値がクロックソース設定レジスタ (CSELR) の設定値と同じかどうか確
認してください。
•
クロックソース設定レジスタ (CSELR) に設定した値とこのレジスタの値が一致する
まで , クロックソース設定レジスタ (CSELR) は変更しないでください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
105
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit6]:PCRDY (PLL クロックレディビット )
PLL クロック (PLLCLK) の状態を表示します。
読出し値
説明
0
発振が停止しているか , 発振安定待ち状態です。
1
安定発振中です。
ソースクロック (SRCCLK) として使用できます。
< 注意事項 >
•
•
このビットが "0" のときは , PLL クロック (PLLCLK) をソースクロック (SRCCLK) と
して選択できません。
クロックソース設定レジスタ (CSELR) の PCEN ビットを "1" から "0" に書き換えた後
に , このビットを読み出すと "1" が読み出される場合があります。
[bit5]:MCRDY ( メインクロックレディビット )
メインクロック (MAINCLK) の状態を表示します。
読出し値
説明
0
発振が停止しているか , 発振安定待ち状態です。
1
安定発振中です。
ソースクロック (SRCCLK) として使用できます。
< 注意事項 >
•
このビットが"0"のときは, メインクロック (MAINCLK) またはPLLクロック (PLLCLK)
をソースクロック (SRCCLK) として選択できません。
•
クロックソース設定レジスタ (CSELR) の MCEN ビットを "1" から "0" に書き換えた後
に , このビットを読み出すと "1" が読み出される場合があります。
[bit7, bit4 ∼ bit2]:予約ビット
読出し時
"0" が読み出されます。
[bit1, bit0]:CKM1, CKM0 ( ソースクロック表示ビット )
ソースクロック (SRCCLK) に選択中のクロックを表示します。
CKM1
106
CKM0
説明
0
0
0
1
1
0
PLL クロック (PLLCLK) を選択しています。
1
1
-
メインクロック (MAINCLK) の 2 分周を選択しています。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.4
MB91605A シリーズ
発振安定待ち設定レジスタ (CSTBR)
7.4.3
クロックソースの発振安定待ち時間を設定するレジスタです。
このレジスタで設定した発振安定待ち時間は , 次の場合に , そのクロックのレディビッ
トが "1" になるまでに使用します。
•
ストップモードからの復帰時
•
メイン発振停止かつイニシャライズリセット (INIT) 発生時
レディビットとは次のビットを指します。
-
PLL クロック:PCRDY ビット
-
メインクロック:MCRDY ビット
発振安定待ち設定レジスタ (CSTBR) のビット構成を図 7.4-3 に示します。
図 7.4-3 発振安定待ち設定レジスタ (CSTBR) のビット構成
bit
7
6
5
4
3
2
1
0
予約
R/W
予約
R/W
予約
R/W
予約
R/W
MOSW3
MOSW2
MOSW1
MOSW0
R/W
R/W
R/W
R/W
INIT 端子
=L 時
-
-
-
-
0
0
0
0
初期値
(INIT 時 )
-
-
-
-
*
*
*
*
初期値
(RST 時 )
0
*
*
*
*
*
*
*
属性
R/W:リード / ライト可能
*:初期化されないビット
-:未定義
< 注意事項 >
メイン発振停止時 , イニシャライズリセット (INIT) が発生した場合 , 動作再開後のメイン
発振安定待ち時間は , このレジスタの初期値の時間になります。
[bit7 ∼ bit4]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
107
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit3 ∼ bit0]:MOSW3 ∼ MOSW0 ( メインクロック発振安定待ち選択ビット )
メインクロック (MAINCLK) の発振安定待ち時間を選択します。
MOSW3 MOSW2 MOSW1 MOSW0
メインクロック(MAINCLK)
発振安定待ち時間
16MHz 時
0
0
0
0
21 ×メインクロック (MAINCLK) の周期
500ns
0
0
0
1
25 ×メインクロック (MAINCLK) の周期
2ns
0
0
1
0
26 ×メインクロック (MAINCLK) の周期
4µs
0
0
1
1
27 ×メインクロック (MAINCLK) の周期
8µs
0
1
0
1
28 ×メインクロック (MAINCLK) の周期
16µs
0
1
0
1
0
1
1
0
2
×メインクロック (MAINCLK) の周期
64µs
0
1
1
1
211 ×メインクロック (MAINCLK) の周期
128µs
1
0
0
0
212 ×メインクロック (MAINCLK) の周期
256µs
1
0
0
1
213 ×メインクロック (MAINCLK) の周期
512µs
1
0
1
0
214 ×メインクロック (MAINCLK) の周期
1024µs
1
0
1
1
215 ×メインクロック (MAINCLK) の周期
2048µs
1
1
0
0
217 ×メインクロック (MAINCLK) の周期
8196µs
1
1
0
1
219 ×メインクロック (MAINCLK) の周期
32.8ms
1
1
1
0
221 ×メインクロック (MAINCLK) の周期
131.1ms
1
1
1
1
223
524.5ms
9
2 ×メインクロック (MAINCLK) の周期
10
×メインクロック (MAINCLK) の周期
32µs
< 注意事項 >
表中の時間は , 計算値です。実際の時間は , 発振の状態により , 若干の誤差を含みますの
で目安としてください。
108
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.4
MB91605A シリーズ
PLL 設定レジスタ (PLLCR)
7.4.4
メインクロック (MAINCLK) から PLL クロック (PLLCLK) を生成するための逓倍率を設定す
るレジスタです。
PLLクロック (PLLCLK) の生成に関係するクロック周波数と逓倍率の計算方法は
「7.5.3
PLL クロック (PLLCLK) 生成のための逓倍率」を参照してください。
PLL 設定レジスタ (PLLCR) のビット構成を図 7.4-4 に示します。
図 7.4-4 PLL 設定レジスタ (PLLCR) のビット構成
bit
15
14
13
12
11
10
9
8
予約
R/W
予約
R/W
ODS1
ODS0
PMS3
PMS2
PMS1
PMS0
R/W
R/W
R/W
R/W
R/W
R/W
初期値
(INIT 時 )
-
-
0
0
0
0
0
0
初期値
(RST 時 )
-
-
*
*
*
*
*
*
属性
bit
7
6
5
4
3
2
1
0
PTS3
PTS2
PTS1
PTS0
PDS3
PDS2
PDS1
PDS0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
(INIT 時 )
1
1
1
1
0
0
0
0
初期値
(RST 時 )
*
*
*
*
*
*
*
*
属性
R/W:リード / ライト可能
*:初期化されないビット
-:未定義
< 注意事項 >
PLL クロック (PLLCLK) の発振を許可している場合は ( クロックソース設定レジスタ
(CSELR) の PCEN=1), このレジスタへの書込みは無効です。
[bit15, bit14]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
109
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit13, bit12]:ODS1, ODS0 (PLL マクロ発振クロック分周比選択ビット )
PLL マクロ発振クロックから PLL クロック (PLLCLK) への分周比を選択します。
ODS1
ODS0
説明
0
0
PLL クロック (PLLCLK) = PLL マクロ発振クロック / 1
0
1
PLL クロック (PLLCLK) = PLL マクロ発振クロック / 2
1
0
PLL クロック (PLLCLK) = PLL マクロ発振クロック / 3
1
1
PLL クロック (PLLCLK) = PLL マクロ発振クロック / 4
< 注意事項 >
PLL クロック (PLLCLK) の発振を許可するときは , 必ず事前にこのビットを "01" または
"10" に設定してください。「7.5.3 PLL クロック (PLLCLK) 生成のための逓倍率」も参照
してください。
[bit11 ∼ bit8]:PMS3 ∼ PMS0 (PLL クロック逓倍率選択ビット )
PLL 入力クロックから PLL クロック (PLLCLK) への逓倍率を選択します。
PMS3
PMS2
PMS1
PMS0
0
0
0
0
PLL クロック (PLLCLK) = PLL 入力クロック× 1
0
0
0
1
PLL クロック (PLLCLK) = PLL 入力クロック× 2
0
0
1
0
PLL クロック (PLLCLK) = PLL 入力クロック× 3
0
0
1
1
PLL クロック (PLLCLK) = PLL 入力クロック× 4
0
1
0
0
PLL クロック (PLLCLK) = PLL 入力クロック× 5
0
1
0
1
PLL クロック (PLLCLK) = PLL 入力クロック× 6
0
1
1
0
PLL クロック (PLLCLK) = PLL 入力クロック× 7
0
1
1
1
PLL クロック (PLLCLK) = PLL 入力クロック× 8
1
0
0
0
PLL クロック (PLLCLK) = PLL 入力クロック× 9
1
0
0
1
PLL クロック (PLLCLK) = PLL 入力クロック× 10
1
0
1
0
PLL クロック (PLLCLK) = PLL 入力クロック× 11
1
0
1
1
PLL クロック (PLLCLK) = PLL 入力クロック× 12
1
1
0
0
PLL クロック (PLLCLK) = PLL 入力クロック× 13
1
1
0
1
PLL クロック (PLLCLK) = PLL 入力クロック× 14
1
1
1
0
PLL クロック (PLLCLK) = PLL 入力クロック× 15
1
1
1
1
PLL クロック (PLLCLK) = PLL 入力クロック× 16
PLL クロック (PLLCLK) 逓倍率
< 注意事項 >
PLL クロック (PLLCLK) の発振を許可するときは , 必ず事前にこのビットを "0100" または
"0011" に設定してください。「7.5.3 PLL クロック (PLLCLK) 生成のための逓倍率」も参
照してください。
110
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit7 ∼ bit4]:PTS3 ∼ PTS0 (PLL クロック発振安定待ち時間選択ビット )
PLL クロック (PLLCLK) の発振安定待ち時間を選択します。
PTS3 PTS2 PTS1 PTS0
PLL クロック(PLLCLK)
発振安定待ち時間
16MHz 時
1
0
0
0
29 ×メインクロック (MAINCLK) 周期
32.0µs
1
0
0
1
210 ×メインクロック (MAINCLK) 周期
64.0µs
1
0
1
0
211 ×メインクロック (MAINCLK) 周期
128.0µs
1
0
1
1
212 ×メインクロック (MAINCLK) 周期
256.0µs
1
1
0
0
213 ×メインクロック (MAINCLK) 周期
512.0µs
1
1
0
1
214 ×メインクロック (MAINCLK) 周期
1024.0µs
1
1
1
0
215 ×メインクロック (MAINCLK) 周期
2048.0µs
1
1
1
1
216 ×メインクロック (MAINCLK) 周期
4096.0µs
< 注意事項 >
•
表中の時間は , 計算値です。実際の時間は , 発振の状態により , 若干の誤差を含みます
ので目安としてください。
•
PTS3 ビットには常に "1" を書き込んでください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
111
第 7 章 クロック生成部
7.4
MB91605A シリーズ
[bit3 ∼ bit0]:PDS3 ∼ PDS0 (PLL 入力クロック分周選択ビット )
PLL 入力クロックを生成するための , メインクロック (MAINCLK) の分周比を選択しま
す。
このビットは常に "0000" (PLL 入力クロック = メインクロック (MAINCLK)/ 1) を設定
してください。それ以外は設定禁止です。
112
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.5
MB91605A シリーズ
動作説明
7.5
クロック生成部の動作について説明します。
各クロックソースの動作説明とソースクロックの切替えについて説明します。
7.5.1
クロックソースの動作説明
各クロックソースについて発振制御を中心に説明します。
■ メインクロック (MAINCLK)
X0 端子 , X1 端子 ( メイン発振子 ) からの入力を使用して生成するクロックです。PLL
クロックの生成にも使用します。
メインクロックを使用して , メインタイマが動作します。(「第 9 章 メインタイマ」参
照。)
● 発振停止の条件
次の場合にメインクロック (MAINCLK) の発振が停止します。
•
ストップモード中
上記の発振停止条件がすべて取り下げられた後 , 発振安定待ち設定レジスタ (CSTBR)
の MOSW3 ∼ MOSW0 ビットに設定された発振安定待ち時間を経過すると , メインク
ロック (MAINCLK) の供給を開始します。
● 発振安定待ち時間の選択
メインクロック (MAINCLK) は発振が許可されると , 発振が安定するのを待ってから ,
クロックの供給を開始します。
メインクロック (MAINCLK) の発振安定待ち時間は , 発振安定待ち設定レジスタ
(CSTBR) の MOSW3 ∼ MOSW0 ビットで設定します。
MOSW3 ∼ MOSW0 ビットは , INIT 端子に "L" レベルが入力されると , 初期化され , 発
振安定待ち時間が初期値に戻ります。その場合の初期値は , 21 ×メインクロック
(MAINCLK) 周期です。
それ以外のリセットが発生しても , MOSW3 ∼ MOSW0 ビットは初期化されません。
● 発振安定待ち時間の終了
発振安定待ち時間が終了すると , メインクロック (MAINCLK) が供給されます。
メインクロック (MAINCLK) が発振安定待ち時間中かどうかは , メインクロック
(MAINCLK) の動作が許可されているときに , 以下の値で確認できます。
発振安定待ち状態の表示
発振安定状態の表示
クロックソース監視レジスタ (CMONR) クロックソース監視レジスタ (CMONR) の
MCRDY=1
の MCRDY=0
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
113
第 7 章 クロック生成部
7.5
MB91605A シリーズ
■ PLL クロック (PLLCLK)
メインクロック (MAINCLK) を逓倍して生成する高速のクロックです。
● 発振停止の条件
次のいずれかの場合に PLL クロック (PLLCLK) の発振が停止します。
•
メインクロック (MAINCLK) の発振が停止中 , または発振安定待ち時間中
( クロックソース設定レジスタ (CSELR) の PCEN ビット =0)
•
ソースクロック (SRCCLK) に PLL クロック (PLLCLK) 以外を選択中に次の条件が
揃った場合
-
クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビット =10 以外
-
クロックソース設定レジスタ (CSELR) の PCEN ビット =0
上記の発振停止条件がすべて取り下げられた後 , PLL 設定レジスタ (PLLCR) の PTS3 ∼
PTS0 ビットに設定された発振安定待ち時間を経過すると , PLL クロック (PLLCLK) の
供給を開始します。
INIT端子に"L"が入力された場合, またはイニシャライズリセット (INIT) から復帰した
場合は , クロックソース設定レジスタ (CSELR) の PCEN ビットが "0" に初期化され ,
PLL クロック (PLLCLK) の発振は停止します。( 初期化後 , 発振するにはクロックソー
ス設定レジスタ (CSELR) の PCEN ビットを "1" にしてください。)
● 発振安定待ち時間の選択
PLL クロック (PLLCLK) は発振が許可されると , 発振が安定するのを待ってから , ク
ロックの供給を開始します。
PLL クロック (PLLCLK) の発振安定待ち時間は , PLL 設定レジスタ (PLLCR) の PTS3 ∼
PTS0 ビットで設定します。
PTS3 ∼ PTS0 ビットは , INIT 端子に "L" が入力された場合 , またはイニシャライズリ
セット (INIT) から復帰すると初期化され , 発振安定待ち時間が初期値にも戻ります。そ
の場合の初期値は , 216 ×メインクロック (MAINCLK) 周期です。
発振安定待ち時間を変更するには , PTS3 ∼ PTS0 ビットを設定後 , クロックソース設定
レジスタ (CSELR) の PCEN ビットに "1" を書き込んでください。
● 発振安定待ち時間の終了
発振安定待ち時間が終了すると , PLL クロック (PLLCLK) が供給されます。
PLL クロック (PLLCLK) が発振安定待ち時間中かどうかは , PLL クロック (PLLCLK) の
動作が許可されているときに , 以下の値で確認できます。
発振安定待ち状態の表示
発振安定状態の表示
クロックソース監視レジスタ (CMONR) クロックソース監視レジスタ (CMONR) の
PCRDY=1
の PCRDY=0
114
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.5
MB91605A シリーズ
ソースクロック (SRCCLK) の切換え
7.5.2
ソースクロック (SRCCLK) の切換えについて説明します。
■ 概要
INIT 端子に "L" が入力された場合 , またはイニシャライズリセット (INIT) が発生する
と, ソースクロック (SRCCLK) の設定は初期化されて, ソースクロック (SRCCLK) はメ
インクロック (MAINCLK) の 2 分周になります。
プログラムの動作開始後は, クロックソース設定レジスタ (CSELR) のCKS1, CKS0ビッ
トでソースクロック (SRCCLK) をクロックソースの中から選択できます。
ソースクロック (SRCCLK) の切換え方法を図 7.5-1 に示します。
図 7.5-1 ソースクロック (SRCCLK) 切換え方法
メインクロック
PLL クロック
(MAINCLK) の 2 分周
(PLLCLK)
< 注意事項 >
ソースクロック (SRCCLK) を切り換えても , 各クロックの発振許可設定 ( クロックソース
設定レジスタ (CSELR) の PCEN ビット , MCEN ビットの値 ) は保持されています。必要
に応じて発振を停止してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
115
第 7 章 クロック生成部
7.5
MB91605A シリーズ
■ 手順
● メインクロック(MAINCLK)の2分周からPLLクロック(PLLCLK)への切換え
ソースクロック (SRCCLK) をメインクロック (MAINCLK) の 2 分周から PLL クロック
(PLLCLK) に切り換える場合は , 次のように設定してください。
1. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , メインクロック
(MAINCLK) の 2 分周が選択されていることを確認 (CKM1, CKM0=00 または 01)
2. PLL 設定レジスタ (PLLCR) で , PLL 逓倍率と PLL クロック (PLLCLK) 発振安定待ち
時間を設定
3. クロックソース設定レジスタ (CSELR) の PCEN ビットで , PLL クロック (PLLCLK)
の発振を開始 (PCEN=1)
4. クロックソース監視レジスタ(CMONR)のPCRDYビットで, PLLクロック (PLLCLK)
の発振が安定したのを確認 (PCRDY=1)
5. クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビットで , ソースクロック
(SRCCLK) を PLL クロック (PLLCLK) に切換え (CKS1, CKS0=10)
6. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , ソースクロック
(SRCCLK) が PLL ク ロ ッ ク (PLLCLK) に 切 り 換 え ら れ た こ と を 確 認 (CKM1,
CKM0=10)
< 注意事項 >
PLLクロック (PLLCLK) の発振が有効になっている場合は, 手順2.から4.は省略できます。
● PLLクロック(PLLCLK)からメインクロック(MAINCLK)の2分周への切換え
ソースクロック (SRCCLK) を PLL クロック (PLLCLK) からメインクロック (MAINCLK)
の 2 分周に切り換える場合は , 次のように設定してください。
1. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , PLL クロック
(PLLCLK) が選択されていることを確認 (CKM1, CKM0=10)
2. クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビットで , ソースクロック
(SRCCLK) をメインクロック (MAINCLK) の 2 分周に切換え (CKS1, CKS0=00)
3. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , ソースクロック
(SRCCLK) がメインクロック (MAINCLK) の 2 分周に切り換えられたことを確認
(CKM1, CKM0=00)
116
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 7 章 クロック生成部
7.5
MB91605A シリーズ
PLL クロック (PLLCLK) 生成のための逓倍率
7.5.3
PLL クロック (PLLCLK) の生成に関係するクロック周波数と逓倍率の計算方法について説明
します。
PLL 入力クロック周波数
= ( メイン発振周波数 ) / (PLL 設定レジスタ (PLLCR) の PDS ビットで設定した分周比 )
PLL 逓倍率
= (PLL 設定レジスタ (PLLCR) の ODS ビットで設定した分周比 ) × (PLL 設定レジス
タ (PLLCR) の PMS ビットで設定した逓倍率 )
PLL マクロ発振クロック周波数
= (PLL 入力クロック周波数 ) × PLL 逓倍率
PLL クロック (PLLCLK) 周波数
= (PLL 入力クロック周波数 ) × (PLL 設定レジスタ (PLLCR) の PMS ビットで設定し
た逓倍率 )
PLL クロック (PLLCLK) の設定例を表 7.5-1 に示します。
表 7.5-1 PLL クロック (PLLCLK) の設定例
メイン
発振
周波数
PLL 設定レジスタ
(PLLCR)
PDS3
∼
PDS0
ODS1
∼
ODS0
PMS3
∼
PMS0
PLL 入力
クロック
周波数
PLL 逓倍率
ODS ×PMS
PLL マクロ
発振クロック
周波数
PLL
クロック
周波数
16MHz
0000
01
0100
16MHz
10 逓倍
160MHz
80MHz
16MHz
0000
10
0011
16MHz
12 逓倍
192MHz
64MHz
< 注意事項 >
•
メイン発振周波数 10MHz 以上 , PLL マクロ発振クロック周波数 150MHz ∼ 200MHz
の設定で使用してください。
•
FUJITSU FLASH MCU Programmer を使用する場合 , メイン発振周波数 16MHz 固定と
なりますので , PLL 入力クロック , PLL 逓倍率 , PLL マクロ発振クロック (PLL 発振を
許可する場合 ) は , 必ず事前に以下のどちらかに設定してください。
PLL 入力クロック周波数
16MHz
16MHz
PLL 逓倍率
10 逓倍
12 逓倍
PLL マクロ発振クロック周波数
160MHz
192MHz
PLL クロック周波数
80MHz
64MHz
※ DIVB ( ベースクロック分周設定ビット ) が 1 分周設定のとき。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
117
第 7 章 クロック生成部
7.5
118
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 8 章 クロック分周
制御部
内部クロックを生成するクロック分周制御部につ
いて説明します。
8.1 概要
8.2 内部クロック
8.3 構成
8.4 レジスタ
8.5 分周比
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
119
第 8 章 クロック分周制御部
8.1
8.1
MB91605A シリーズ
概要
クロック生成部から入力したソースクロック (SRCCLK) を分周して内部クロックを生成し
ます。
クロック分周制御部は , ソースクロック (SRCCLK) を分周して , 内部クロックを生成
し , CPU やバス , 周辺機能に供給します。
生成する内部クロックを表 8.1-1 に示します。これらのクロックを総称して内部クロッ
クと言います。
表 8.1-1 生成する内部クロック
クロック名
ベースクロック (BCLK)
生成元クロック
ソースクロック (SRCCLK) の 1 ∼ 8 分周
CPU クロック (CCLK)
ベースクロック (BCLK) の 1 分周 ( 非分周 )
オンチップバスクロック
(HCLK)
ベースクロック (BCLK) の 1 分周 ( 非分周 )
外部出力クロック (TCLK)
ベースクロック (BCLK) の 1 ∼ 8 分周
周辺クロック (PCLK)
ベースクロック (BCLK) の 1 ∼ 16 分周
ソースクロック (SRCCLK) については,「第7章 クロック生成部」を参照してください。
120
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 8 章 クロック分周制御部
8.2
MB91605A シリーズ
8.2
内部クロック
各内部クロックについて説明します。
■ ベースクロック (BCLK)
すべての内部クロックの生成元になるクロックです。
分周設定レジスタ 0 (DIVR0) の DIVB2 ∼ DIVB0 ビットでソースクロック (SRCCLK) を
1 ∼ 8 分周して生成します。
デバイス全体の動作周波数を一括して低下させることができます。
次の各低消費電力モード時に停止します。
•
メインタイマモード
•
ストップモード
■ CPU クロック (CCLK)
本デバイスの CPU 部に供給するクロックで , ベースクロック (BCLK) から生成します。
ベースクロック (BCLK) を分周せずに生成するので , 動作周波数は常にベースクロッ
ク (BCLK) と同じです。
次の各低消費電力モード時に停止します。
•
ドーズモード ( 停止期間中 )
•
スリープモード
•
メインタイマモード
•
ストップモード
クロック名
CPU クロック (CCLK)
代表的な供給先
CPU ( 命令実行部 )
■ オンチップバスクロック (HCLK)
オンチップバスとそれに接続される各回路に供給されるクロックで , ベースクロック
(BCLK) から生成します。
ベースクロック (BCLK) を分周せずに生成するので , 動作周波数は常にベースクロッ
ク (BCLK) と同じです。
次の各低消費電力モード時に停止します。
•
バススリープモード
•
メインタイマモード
•
ストップモード
クロック名
オンチップバスクロック (HCLK)
CM71-10147-2
代表的な供給先
DMA コントローラ (DMAC)
外部バスインタフェース
内蔵 RAM
FUJITSU SEMICONDUCTOR LIMITED
121
第 8 章 クロック分周制御部
8.2
MB91605A シリーズ
■ 外部出力クロック (TCLK)
外部 SYSCLK 端子に供給されるクロックです。
分周設定レジスタ 1 (DIVR1) の DIVT2 ∼ DIVT0 ビットでベースクロック (BCLK) を 1 ∼
8 分周して生成します。
分周設定レジスタ 1 (DIVR1) の TSTP ビットを設定することで , バススリープモード中
でオンチップバスアクセスを行っていないときは停止させることができます。
次の低消費電力モード時は , 設定にかかわらず停止します。
•
メインタイマモード
•
ストップモード
クロック名
外部出力クロック (TCLK)
代表的な供給先
SYSCLK 端子
< 注意事項 >
•
•
外部出力クロック (TCLK) と同じ周波数が, SYSCLK端子からバスクロック (SYSCLK)
として出力されます。
ベースクロック (BCLK) の分周比を奇数分周に設定 ( 分周設定レジスタ 1 (DIVR1) の
DIVT2 ∼ DIVT0 ビット ) すると , SYSCLK 端子から出力されるバスクロック (SYSCLK)
のデューティ比は 50% になりません。"H" レベルの出力期間が出力周期の 50% 以下と
なります。
■ 周辺クロック (PCLK)
周辺バスとそれに接続する各周辺機能に供給されるクロックです。
分周設定レジスタ 2 (DIVR2) の DIVP3 ∼ DIVP0 ビットでベースクロック (BCLK) を 1
∼ 16 分周して生成します。
次の低消費電力モード時は , 設定にかかわらず停止します。
•
メインタイマモード
•
ストップモード
クロック名
周辺クロック (PCLK)
122
代表的な供給先
周辺バス
クロック制御部
リセット制御部
ウォッチドッグタイマ
割込みコントローラ
外部割込み , NMI 入力
遅延割込み
16 ビットリロードタイマ
各周辺機能
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 8 章 クロック分周制御部
8.3
MB91605A シリーズ
8.3
構成
クロック生成部から入力されたソースクロックを, レジスタに設定した値で分周し, 各回路へ
出力します。
■ クロック分周制御部のブロックダイヤグラム
クロック分周制御部のブロックダイヤグラムを図 8.3-1 に示します。
図 8.3-1 クロック分周制御部のブロックダイヤグラム
ソースクロック
(SRCCLK)
DIVB2 ∼ DIVB0
(1 ∼ 8 分周 )
ベースクロック
(BCLK)
CPU スリープ
CPU クロック
(CCLK)
バススリープ
オンチップ
バスクロック
(HCLK)
TCLK 未使用
TSTP
DIVT2 ∼ DIVT0
(1 ∼ 8 分周 )
DIVP3 ∼ DIVP0
(1 ∼ 16 分周 )
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
外部出力クロック
(TCLK)
周辺クロック
(PCLK)
123
第 8 章 クロック分周制御部
8.4
8.4
MB91605A シリーズ
レジスタ
クロック分周制御部で使用するレジスタの構成と機能について説明します。
■ クロック分周制御部のレジスタ一覧
クロック分周制御部のレジスタ一覧を表 8.4-1 に示します。
表 8.4-1 クロック分周制御のレジスタ一覧
124
レジスタ略称
DIVR0
レジスタ名
分周設定レジスタ 0
8.4.1
DIVR1
分周設定レジスタ 1
8.4.2
DIVR2
分周設定レジスタ 2
8.4.3
FUJITSU SEMICONDUCTOR LIMITED
参照先
CM71-10147-2
第 8 章 クロック分周制御部
8.4
MB91605A シリーズ
分周設定レジスタ 0 (DIVR0)
8.4.1
ベースクロック (BCLK) を生成するときのソースクロック (SRCCLK) の分周比を設定するレ
ジスタです。
分周設定レジスタ 0 (DIVR0) のビット構成を図 8.4-1 に示します。
図 8.4-1 分周設定レジスタ 0 (DIVR0) のビット構成
bit
属性
7
6
5
4
3
2
1
0
DIVB2
DIVB1
DIVB0
R/W
R/W
R/W
予約
R/W
予約
R/W
予約
R/W
予約
R/W
予約
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
[bit7 ∼ bit5]:DIVB2 ∼ DIVB0 ( ベースクロック分周設定ビット )
ソースクロック (SRCCLK) からベースクロック (BCLK) を生成するときの分周比を設
定します。
CPU クロック (CCLK) とオンチップバスクロック (HCLK) はベースクロック (BCLK)
を分周しないで生成するので , ベースクロック (BCLK) と同じ周波数になります。
DIVB2
DIVB1
DIVB0
説明
0
0
0
1 分周 ( 非分周 )
0
0
1
2 分周
0
1
0
3 分周
0
1
1
4 分周
1
0
0
5 分周
1
0
1
6 分周
1
1
0
7 分周
1
1
1
8 分周
[bit4 ∼ bit2]:予約ビット
書込み時
必ず "0" を書き込んでください。
読込み時
"0" が読み出されます。
[bit1, bit0]:予約ビット
CM71-10147-2
書込み時
必ず "1" を書き込んでください。
読込み時
"1" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
125
第 8 章 クロック分周制御部
8.4
MB91605A シリーズ
分周設定レジスタ 1 (DIVR1)
8.4.2
外部出力クロック (TCLK) を生成するときのベースクロック (BCLK) の分周比を設定するレ
ジスタです。また , 外部出力クロック (TCLK) の停止制御も行います。
分周設定レジスタ 1 (DIVR1) のビット構成を図 8.4-2 に示します。
図 8.4-2 分周設定レジスタ 1 (DIVR1) のビット構成
bit
属性
初期値
7
6
5
4
3
2
1
0
TSTP
DIVT2
DIVT1
DIVT0
R/W
R/W
R/W
R/W
予約
R/W
予約
R/W
予約
R/W
予約
R/W
0
0
0
1
0
0
0
0
R/W:リード / ライト可能
[bit7]:TSTP ( 外部出力クロック停止許可ビット )
スリープモード時 , クロック出力を停止する場合に , 外部出力クロック (TCLK) も停止
するかどうかを設定します。
停止を許可した場合は , 外部出力クロック (TCLK) は供給されません。
書込み値
説明
0
外部出力クロック (TCLK) を停止しない。
1
外部出力クロック (TCLK) を停止する。
[bit6 ∼ bit4]:DIVT2 ∼ DIVT0 ( 外部出力クロック分周設定ビット )
ベースクロック (BCLK) から外部出力クロック (TCLK) を生成するときの分周比を設
定します。
DIVT2
DIVT1
DIVT0
説明
0
0
0
1 分周 ( 非分周 )
0
0
1
2 分周
0
1
0
3 分周
0
1
1
4 分周
1
0
0
5 分周
1
0
1
6 分周
1
1
0
7 分周
1
1
1
8 分周
[bit3 ∼ bit0]:予約ビット
126
書込み時
必ず "0" を書き込んでください。
読込み時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 8 章 クロック分周制御部
8.4
MB91605A シリーズ
分周設定レジスタ 2 (DIVR2)
8.4.3
周辺クロック (PCLK) を生成するときのベースクロック (BCLK) の分周比を設定するレジス
タです。
分周設定レジスタ 2 (DIVR2) のビット構成を図 8.4-3 に示します。
図 8.4-3 分周設定レジスタ 2 (DIVR2) のビット構成
bit
属性
7
6
5
4
3
2
1
0
DIVP3
DIVP2
DIVP1
DIVP0
R/W
R/W
R/W
R/W
予約
R/W
予約
R/W
予約
R/W
予約
R/W
0
0
1
1
0
0
0
0
初期値
R/W:リード / ライト可能
[bit7 ∼ bit4]:DIVP3 ∼ DIVP0 ( 周辺クロック分周設定ビット )
ベースクロック (BCLK) から周辺クロック (PCLK) を生成するときの分周比を設定し
ます。
DIVP3
DIVP2
DIVP1
DIVP0
説明
0
0
0
0
1 分周 ( 非分周 )
0
0
0
1
2 分周
0
0
1
0
3 分周
0
0
1
1
4 分周
0
1
0
0
5 分周
0
1
0
1
6 分周
0
1
1
0
7 分周
0
1
1
1
8 分周
1
0
0
0
9 分周
1
0
0
1
10 分周
1
0
1
0
11 分周
1
0
1
1
12 分周
1
1
0
0
13 分周
1
1
0
1
14 分周
1
1
1
0
15 分周
1
1
1
1
16 分周
[bit3 ∼ bit0]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読込み時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
127
第 8 章 クロック分周制御部
8.5
8.5
MB91605A シリーズ
分周比
クロック分周制御部は , 各内部クロックに対して分周比を設定できます。
各内部クロックに対するソースクロックからの分周比を図 8.5-1 に示します。
図 8.5-1 各内部クロックに対するソースクロックからの分周比
ソースクロック
(SRCCLK)
1 ∼ 8 分周
ベースクロック
(BCLK)
CPU クロック
(CCLK)
1 ∼ 8 分周
1 ∼ 16 分周
外部出力クロック
(TCLK)
周辺クロック
(PCLK)
■ 初期化後の分周比
リセット発生後の内部クロックの分周を表 8.5-1 に示します。
表 8.5-1 リセット発生後の分周比
クロック名
128
初期化後の分周比
ベースクロック (BCLK)
ソースクロック (SRCCLK) の 1 分周 ( 非分周 )
CPU クロック (CCLK)
ベースクロック (BCLK) の 1 分周 ( 非分周 )
オンチップバスクロック (HCLK)
ベースクロック (BCLK) の 1 分周 ( 非分周 )
外部出力クロック (TCLK)
ベースクロック (BCLK) の 2 分周
周辺クロック (PCLK)
ベースクロック (BCLK) の 4 分周
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 8 章 クロック分周制御部
8.5
MB91605A シリーズ
■ 分周比の変更
分周比の設定に変更があった場合は , 設定値を変更した次のクロックの立上りエッジ
から変更した分周比が有効となります。
A
A
B
B
B
クロック
レジスタの設定値
( 分周比 )
A
B
分周比変更
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
129
第 8 章 クロック分周制御部
8.5
130
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 9 章 メインタイマ
メインタイマの機能と動作について説明します。
9.1 概要
9.2 構成
9.3 レジスタ
9.4 割込み
9.5 動作説明と設定手順例
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
131
第 9 章 メインタイマ
9.1
9.1
MB91605A シリーズ
概要
メインタイマは , メインクロック (MAINCLK) で動作するタイマです。
メインクロック (MAINCLK) と PLL クロック (PLLCLK) の発振安定待ち時間の生成に使用し
ます。
メインタイマは , メインクロック (MAINCLK) の発振安定待ち時間や PLL クロック
(PLLCLK) の発振安定待ち時間をカウントするタイマです。
メインクロック (MAINCLK) の発振が安定状態のときは , 一定間隔で割込み要求を発
生するインターバルタイマとしても使用できます。
このタイマは , 次の場合にクリアされます。
•
メインタイマ制御レジスタ (MTMCR) の MTC ビットに "1" を書き込んだとき
MTC ビットに "1" を書き込んでから , メインタイマがクリアされるまでは , メイン
タイマ制御レジスタ (MTMCR) の MTC ビットからは "1" が読み出されます。
•
メインクロック (MAINCLK) の発振が停止しているとき
( クロックソース設定レジスタ (CSELR) の MCEN ビット =0 のとき )
•
ストップモード時
•
メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマを停止したと
き (MTE=0)
メインタイマの動作が禁止されると , メインクロック (MAINCLK) と PLL クロック
(PLLCLK) の発振安定待ち時間以外は , このタイマは停止します。
132
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 9 章 メインタイマ
9.2
MB91605A シリーズ
9.2
構成
メインタイマの構成を示します。
■ メインタイマのブロックダイヤグラム
メインタイマのブロックダイヤグラムは , 「第 7 章 クロック生成部」の「■ メインク
ロック (MAINCLK) 生成部」を参照してください。
■ クロック
メインタイマで使用するクロックを表 9.2-1 に示します。
表 9.2-1 メインタイマで使用するクロック
クロック名
動作クロック
CM71-10147-2
内容
メインクロック (MAINCLK)
FUJITSU SEMICONDUCTOR LIMITED
133
第 9 章 メインタイマ
9.3
9.3
MB91605A シリーズ
レジスタ
メインタイマで使用するレジスタの構成と機能について説明します。
■ メインタイマのレジスタ一覧
メインタイマのレジスタ一覧を表 9.3-1 に示します。
表 9.3-1 メインタイマのレジスタ一覧
レジスタ略称
MTMCR
134
レジスタ名
メインタイマ制御レジスタ
FUJITSU SEMICONDUCTOR LIMITED
参照先
9.3.1
CM71-10147-2
第 9 章 メインタイマ
9.3
MB91605A シリーズ
メインタイマ制御レジスタ (MTMCR)
9.3.1
メインタイマを制御するレジスタです。
メインタイマ制御レジスタ (MTMCR) のビット構成を図 9.3-1 に示します。
図 9.3-1 メインタイマ制御レジスタ (MTMCR) のビット構成
bit
属性
7
6
5
4
3
2
1
0
MTIF
MTIE
MTC
MTE
MTS3
MTS2
MTS1
MTS0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
1
1
1
1
初期値
R/W:リード / ライト可能
< 注意事項 >
•
このレジスタは , メインクロック (MAINCLK) が安定発振中のとき ( クロックソース監
視レジスタ (CMONR) の MCRDY ビット =1) のみ , 書き換えられます。
ただし , MTIE ビットは , MCRDY ビットが "0" の場合も書き換えることができます。
•
CM71-10147-2
ソフトウェアリセットは , MTE ビットと MTC ビットの両方が "0" のときに , 行ってく
ださい。ソフトウェアリセットについては ,「第 11 章 リセット」を参照してください。
FUJITSU SEMICONDUCTOR LIMITED
135
第 9 章 メインタイマ
9.3
MB91605A シリーズ
[bit7]:MTIF ( メインタイマ割込みフラグビット )
メインタイマがオーバフローしたことを示すフラグです。
メインタイマは次の場合にオーバフローします。
•
MTS3 ∼ MTS0 ビットで設定した周期をカウントアップし終わったとき
•
クロックソース設定レジスタ (CSELR)のMCENビットを"0"から"1"に書き換えた後,
メインクロック (MAINCLK) の発振安定待ち時間が経過したとき
•
ストップモードから復帰後 , メインクロック (MAINCLK) の発振安定待ち時間が経
過したとき
MTIE ビットに "1" が設定されているときに , このビットが "1" になると , メインタイ
マ割込み要求が発生します。
MTIF
読出し時
書込み時
0
オーバフローは発生していません。 このビットを "0" にクリアします。
1
オーバフローが発生しました。
無視されます。
メインタイマ割込み要求による DMA 転送が発生した場合も , このビットは "0" にクリ
アされます。
< 注意事項 >
•
MTEビットでメインタイマの動作を禁止 (MTE=0) すると, メインタイマがクリアされ
ます。
•
MTIE ビットが "0" に設定されていると , メインタイマ割込み要求による DMA 転送が
発生した場合でも , このビットはクリアされません。
•
INIT 端子から "L" レベルの信号を入力して本デバイスをリセット後 , 再度 INIT 端子か
ら "H" レベルの信号を入力した場合は , メインクロック (MAINCLK) の発振安定待ち時
間が経過しても , このビットは "1" に変わりません。
•
このビットを "0" にクリアするタイミングと , オーバフロー発生のタイミングが重なっ
た場合は , オーバフローの発生が優先され , このビットは "1" のままになります。
•
リードモディファイライト系命令では "1" が読み出されます。
•
以下を行ったとき、MTC=0 となるまでメインタイマは動作します。
- MTE=1 → 0 書換え時
- MTC=1 書込み時
上記の動作中に、このビットが“1”になる可能性があります。
[bit6]:MTIE ( メインタイマ割込み許可ビット )
メインタイマがオーバフローしたとき (MTIF=1) にメインタイマ割込み要求を発生さ
せるかどうかを設定します。
このビットに "1" が設定されている場合に , MTIF ビットが "1" になると , メインタイ
マ割込み要求が発生します。
書込み値
136
説明
0
メインタイマ割込み要求の発生を禁止します。
1
メインタイマ割込み要求の発生を許可します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 9 章 メインタイマ
9.3
MB91605A シリーズ
[bit5]:MTC ( メインタイマクリアビット )
メインタイマをクリアします。
また , このビットを読み出すとメインタイマの動作状態を確認できます。
MTC
書込み時
読出し時
0
無視されます。
通常動作中です。
1
メインタイマをクリアします。
メインタイマのクリア中です。
< 注意事項 >
•
リードモディファイライト系命令では "0" が読み出されます。
•
PLL クロック (PLLCLK) の発振安定待ち中は , メインタイマをクリアしないでくださ
い。
•
メインクロック (MAINCLK) の発振が安定している場合にのみ, このレジスタを書き換
えることができます。そのため , 次の条件が揃ったときは , このビットに "1" を書き込
んでも , メインタイマをクリアできません。
- メインクロック (MAINCLK) の発振中 ( クロックソース設定レジスタ (CSELR) の
MCEN ビット =1)
- メインクロック (MAINCLK) の発振停止中 / 発振安定待ち中 ( クロックソース監視レ
ジスタ (CMONR) の MCRDY ビット =0)
•
MTE ビットを "0" から "1" に書き換えるのと同時に , このビットに "1" を書き込むと ,
メインタイマをクリアしてから , メインタイマの動作が開始されます。
•
このビットが "1" のときに , 再度このビットに "1" を書き込まないでください。
•
MTC ビットが "0" になるまでは , MTIF ビットが "1" になることがあります。
[bit4]:MTE ( メインタイマ動作許可ビット )
メインタイマの動作を許可 / 禁止 ( 停止 ) します。
書込み値
説明
0
メインタイマの動作を禁止 ( 停止 ) します。
1
メインタイマの動作を許可します。
< 注意事項 >
•
メインタイマの動作を禁止 ( 停止 ) すると , メインクロック (MAINCLK) と PLL クロッ
ク (PLLCLK) の発振安定待ち時間中以外は , メインタイマは停止します。
•
メインタイマの動作を禁止 ( 停止 ) すると , メインタイマがクリアされます。メインタ
イマのクリア中は , MTC ビットから "1" が読み出されます。MTC ビットが "0" になる
までは , MTIF ビットが "1" になることがあります。
•
PLL クロック (PLLCLK) の発振安定待ち中は , このビットを "1" から "0" に書き換えな
いでください。
•
MTC ビットが "1" のときは , このビットに "1" を書き込まないでください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
137
第 9 章 メインタイマ
9.3
MB91605A シリーズ
[bit3 ∼ bit0]:MTS3 ∼ MTS0 ( メインタイマ周期選択ビット )
メインタイマのオーバフロー周期を選択します。
このビットで設定した周期をカウントアップし終わると , メインタイマがオーバフ
ローします。
MTS3 MTS2 MTS1 MTS0
オーバフロー周期
16MHz 時
1
0
0
0
29
1
0
0
1
210 ×メインクロックの周期
64.0μs
1
0
1
0
211 ×メインクロックの周期
128.0μs
1
0
1
1
212 ×メインクロックの周期
256.0μs
1
1
0
0
213 ×メインクロックの周期
512.0μs
1
1
0
1
1
1
1
×メインクロックの周期
32.0μs
1
14
2
×メインクロックの周期
1024.0μs
1
0
215
×メインクロックの周期
2048.0μs
1
1
216 ×メインクロックの周期
4096.0μs
MTS3 ビットには必ず "1" を書き込んでください。
< 注意事項 >
このビットは , MTE ビットでメインタイマを停止して (MTE=0) から変更してください。
138
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 9 章 メインタイマ
9.4
MB91605A シリーズ
割込み
9.4
メインタイマがオーバフローすると , メインタイマ割込み要求が発生します。
メインタイマで使用できる割込みについて表 9.4-1 に示します。
表 9.4-1 メインタイマの割込み
割込み要求
割込み要求フラグ
割込み要求許可
割込み要求のクリア
メ イ ン タ イ マ MTMCRのMTIF=1 MTMCR の MTIE=1 MTMCR の MTIF ビットに
割込み要求
"0" を書き込む
MTMCR : メインタイマ制御レジスタ (MTMCR)
< 注意事項 >
•
割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点
で , 割込み要求が発生します。
割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。
- 割込み要求の発生を許可する前に割込み要求をクリアする
- 割込み許可と同時に割込み要求をクリアする。
•
各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく
ださい。
•
割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼
ICR47) で設定します。割込みレベルの設定については , 「第 12 章 割込みコントロー
ラ」を参照してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
139
第 9 章 メインタイマ
9.5
9.5
MB91605A シリーズ
動作説明と設定手順例
メインタイマの動作について説明します。また , 動作状態を設定するための手順例も示しま
す。
9.5.1
メインタイマの動作
■ 概要
メインタイマは , メインクロック (MAINCLK) の発振安定待ち時間や PLL クロック
(PLLCLK) の発振安定待ち時間をカウントするタイマです。
メインクロック (MAINCLK) の発振が安定状態のときは , 一定間隔で割込み要求を発
生するインターバルタイマとしても使用できます。
メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマの動作を禁止する
と (MTE=0), メインクロック (MAINCLK) とPLLクロック (PLLCLK) の発振安定待ち時
間以外は , このタイマは停止します。
■ 動作
メインタイマは次のように動作します。
1. メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマの動作を許可
する (MTE=1)
2. メインタイマがメインクロック(MAINCLK)に同期して, カウントアップを開始する
メインタイマ制御レジスタ (MTMCR) の MTE ビットが "1" の間 , カウントアップを
継続します。
3. メインタイマ制御レジスタ (MTMCR) の MTS3 ∼ MTS0 ビットで設定した値までカ
ウントアップする
メインタイマ制御レジスタ (MTMCR) の MTIF ビットが "1" に変わります。
このとき , メインタイマ制御レジスタ (MTMCR) の MTIE ビットが "1" だと , メイン
タイマ割込み要求が発生します。
メインタイマ割込み要求をクリアするには , MTIF ビットに "0" を書き込んでくださ
い。MTIF ビットが "0" にクリアされます。
メインタイマの動作中に , メインタイマ制御レジスタ (MTMCR) の MTE ビットでメイ
ンタイマの動作を禁止 (MTE=0) すると , メインタイマはカウントを停止し , 値がクリ
アされます。詳しくは , 「■ タイマクリア」を参照してください。
■ タイマクリア
メインタイマは次の場合にクリアされます。
•
メインタイマ制御レジスタ (MTMCR) の MTC ビットに "1" を書き込んだとき
MTC ビットに "1" を書き込んでから , メインタイマがクリアされるまでは , メイン
タイマ制御レジスタ (MTMCR) の MTC ビットからは "1" が読み出されます。
140
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
•
第 9 章 メインタイマ
9.5
メインクロック (MAINCLK) の発振が停止しているとき
( クロックソース設定レジスタ (CSELR) の MCEN ビット =0 のとき )
•
ストップモード時
•
メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマを停止したと
き (MTE=0)
< 注意事項 >
メインタイマ制御レジスタ (MTMCR) は , メインクロック (MAINCLK) の発振が安定して
いる場合にのみ書き換えられます。そのため , 次の条件が揃ったときに , メインタイマ制
御レジスタ (MTMCR) の MTC ビットに "1" を書き込んでも , メインタイマはクリアできま
せん。
•
メインクロック (MAINCLK) の発振中 ( クロックソース設定レジスタ (CSELR) の
MCEN ビット =1)
•
メインクロック (MAINCLK) の発振停止中 / 発振安定待ち中 ( クロックソース監視レジ
スタ (CMONR) の MCRDY ビット =0)
■ 割込みの設定手順
メインタイマ制御レジスタ (MTMCR) の設定手順例は次の通りです。
1. MTIE ビットでメインタイマ割込みを禁止 (MTIE=0)
2. MTIF ビットでメインタイマ割込みフラグをクリア (MTIF=0)
3. MTE ビットでメインタイマの動作を禁止 (MTE=0)
4. MTC ビットを読み出して , メインタイマのクリアが完了していることを確認
(MTC=0)
5. MTS3 ∼ MTS0 ビットでタイマ周期を設定
6. MTIE ビットでメインタイマ割込みを許可 (MTIE=1)
7. MTE ビットで , メインタイマの動作を許可 (MTE=1)
MTS3 ∼ MTS0 ビットで設定した周期が経過すると , メインタイマ割込み要求が発
生し , 割込み処理ルーチンへ移行します。
8. MTIF ビットで , メインタイマ割込みフラグをクリア (MTIF=0)
9. MTIF ビットを 1 回読み出して , メインタイマ割込みフラグのクリアを完了させる。
RETI 命令で割込み処理ルーチンから , 通常のプログラム処理動作へ復帰します。
< 注意事項 >
MTIF ビットに "0" を書き込んでもメインタイマ割込みフラグはすぐにクリアされません。
MTIF ビットを 1 回読み出すことでフラグクリア完了後 , RETI 命令で復帰させることがで
きます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
141
第 9 章 メインタイマ
9.5
MB91605A シリーズ
ストップモードへの遷移について
9.5.2
ストップモードへ遷移する前には , メインタイマ割込み要求の発生を禁止する必要がありま
す。
ストップモードへの遷移は次の手順で行ってください。
1. クロックソース設定レジスタ (CSELR) の PCEN ビットで , PLL クロック (PLLCLK)
の発振を停止 (PCEN=0)
2. メインタイマ制御レジスタ (MTMCR) の MTIE ビットで , メインタイマ割込み要求
の発生を禁止 (MTIE=0)
3. メインタイマ制御レジスタ (MTMCR) の MTE ビットで , メインタイマの動作を禁止
(MTE=0)
4. メインタイマ制御レジスタ (MTMCR) の MTC ビットを読み出して , メインタイマが
クリア中でないことを確認 (MTC=0)
5. メインタイマ制御レジスタ (MTMCR) の MTIF ビットで , メインタイマ割込みフラ
グをクリア (MTIF=0)
6. 発振安定待ち設定レジスタ (CSTBR) の MOSW3 ∼ MOSW0 ビットでメインクロッ
ク (MAINCLK) の発振安定待ち時間を設定
7. ストップモードへ遷移
< 注意事項 >
ストップモードへ遷移する前に , 必ず PLL クロック (PLLCLK) の発振を停止してくださ
い。
142
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
低消費電力モードの機能と動作について説明しま
す。
10.1 概要
10.2 構成
10.3 レジスタ
10.4 動作説明と設定手順例
10.5 使用上の注意
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
143
第 10 章 低消費電力モード
10.1
MB91605A シリーズ
10.1 概要
本製品は , 消費電力を低減するために低消費電力モードを利用することができます。
■ 概要
本製品では次のように消費電力を制御することができます。
•
クロック制御
-
クロック分周
各動作クロックの分周比を変更することで , 動作周波数を落とすことができま
す。
-
クロック停止
特定のクロックを指定して停止させることができます。
•
ドーズモード
設定した動作率で CPU を繰り返し間欠動作させるモードです。
•
スリープモード
周辺機能のみを動作させるモードです。次の 2 種類の中から選択できます。
-
CPU スリープモード
CPU の動作を停止させるモードです。
-
バススリープモード
CPU とオンチップバスの動作を停止させるモードです。
•
スタンバイモード
次の 2 種類の中から選択できます。
-
メインタイマモード
メインクロック発振以外の動作をすべて停止できるモードです。
-
ストップモード
すべてのクロック発振と動作を停止させるモードです。
144
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.2
MB91605A シリーズ
10.2 構成
消費電力制御部の構成を示します。
■ 消費電力制御部のブロックダイヤグラム
消費電力制御部のブロックダイヤグラムを図 10.2-1 に示します。
図 10.2-1 消費電力制御部のブロックダイヤグラム
RUN [3:0]
RUN
SLP [3:0]
リロード値
選択回路
SLP
S
1 1
[5] [4] [3] [2] [1] [0] SLP 値カウント
Q
R
終了
CPU スリープ要求
RUN 値カウント
終了
DOZE カウンタ
(6 ビットダウンカウンタ )
周辺クロック (PCLK)
DOZE
SLEEP
S
STBCR 読出し
Q
バススリープ要求
R
SLVL [1]
TIMER
S
STBCR 読出し
Q
クロック停止要求
R
バスアクノリッジ
STOP
STBCR 読出し
S
Q
発振停止要求
R
復帰
リセット要因
STBCR:スタンバイ制御レジスタ (STBCR)
S
:セット
R
:リセット
Q
:出力
( リセット要因:INIT, TRST, WDG)
•
スタンバイ制御レジスタ (STBCR)
低消費電力モードを制御するレジスタです。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
145
第 10 章 低消費電力モード
10.2
•
MB91605A シリーズ
スリープレート設定レジスタ (SLPRR)
ドーズモード時の , 動作状態 (RUN 状態 ) の比率およびスリープ状態の比率 ( スリー
プレート ) を設定するレジスタです。
•
リロード値選択回路
スリープレート設定レジスタ (SLPRR) に設定された動作状態 (RUN 状態 ) の比率と
スリープ状態の比率 ( スリープレート ) のどちらをリロードするか選択する回路で
す。
■ クロック
消費電力制御部で使用するクロックを表 10.2-1 に示します。
表 10.2-1 消費電力制御部で使用するクロック
クロック名
動作クロック
146
内容
周辺クロック (PCLK)
備考
-
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.3
MB91605A シリーズ
10.3 レジスタ
消費電力を制御するために必要なレジスタの構成と機能について説明します。
■ 消費電力を制御するレジスタ一覧
消費電力を制御するレジスタの一覧を表 10.3-1 に示します。
表 10.3-1 消費電力を制御するレジスタ一覧
レジスタ略称
STBCR
SLPRR
CM71-10147-2
レジスタ名
スタンバイ制御レジスタ
参照先
10.3.1
スリープレート設定レジスタ
10.3.2
FUJITSU SEMICONDUCTOR LIMITED
147
第 10 章 低消費電力モード
10.3
10.3.1
MB91605A シリーズ
スタンバイ制御レジスタ (STBCR)
低消費電力モードを制御するレジスタです。
スタンバイ制御レジスタ (STBCR) のビット構成を図 10.3-1 に示します。
図 10.3-1 スタンバイ制御レジスタ (STBCR) のビット構成
bit
属性
初期値
7
6
5
4
3
2
1
0
STOP
TIMER
SLEEP
DOZE
SLVL0
R/W
R/W
R/W
予約
R/W
SLVL1
R/W
予約
R/W
R/W
R/W
0
0
0
0
0
0
1
1
R/W:リード / ライト可能
[bit7]:STOP ( ストップモード許可ビット )
ストップモードへの移行を許可するビットです。
書込み値
説明
0
ストップモードへ移行しません。
1
ストップモードへ移行します。
このビットで , ストップモードへの移行を許可後 , このレジスタを読み出すとストップ
モードへ移行します。
ストップモードからの復帰要因が発生すると , このビットは "0" にクリアされます。ス
トップモードからの復帰要因については , 「10.4.5 ストップモード時の動作」の「■
ストップモードからの復帰」を参照してください。
[bit6]:TIMER ( メインタイマモード / 時計モード許可ビット )
メインタイマモード / 時計モードへの移行を許可するビットです。
書込み値
0
説明
メインタイマモードへ移行しません。
1
メインタイマモードへ移行します。
このビットで , メインタイマモードへの移行を許可後 , このレジスタを読み出すとメイ
ンタイマモードに移行します。
ただし, STOPビットでストップモードへの移行を許可 (STOP=1) した場合は, このビッ
トに "1" を書き込んでメインタイマモードへの移行を許可しても , このビットの設定は
無視されます。
メインタイマモードからの復帰要因が発生すると , このビットは "0" にクリアされま
す。メインタイマモードからの復帰要因については ,「10.4.4 メインタイマモード時の
動作」の「■ メインタイマモードからの復帰」を参照してください。
148
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.3
MB91605A シリーズ
[bit5]:SLEEP ( スリープモード許可ビット )
スリープモードへの移行を許可するビットです。
書込み値
0
1
説明
スリープモードへ移行しません。
スリープモードへ移行します。
このビットで , スリープモードへの移行を許可後 , このレジスタを読み出すとスリープ
モードへ移行します。
ただし , STOP ビット /TIMER ビットでストップモード / メインタイマモードへの移行
を許可 (STOP/TIMER=1) した場合は , このビットに "1" を書き込んでスリープモードへ
の移行を許可しても , このビットの設定は無視されます。
スリープモードからの復帰要因が発生すると , このビットは "0" にクリアされます。ス
リープモードからの復帰要因については , 「10.4.3 スリープモード時の動作」の「■
スリープモードからの復帰」を参照してください。
[bit4]:DOZE ( ドーズモード許可ビット )
ドーズモードへの移行を許可するビットです。
書込み値
説明
0
ドーズモード (CPU 間欠スリープ ) へ移行しません。
1
CPU がドーズモード (CPU 間欠スリープ ) へ移行します。
SLVL1 ビットが "0" に設定されている場合は , ドーズモードからの復帰要因が発生す
ると , このビットは "0" にクリアされます。ドーズモードからの復帰要因については ,
「10.4.2 ドーズモード時の動作」の「■ ドーズモードからの復帰」を参照してください。
[bit3, bit2]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
149
第 10 章 低消費電力モード
10.3
MB91605A シリーズ
[bit1, bit0]:SLVL1, SLVL0 ( スタンバイレベル設定ビット )
このビットは低消費電力モードごとに値の意味が異なります。
低消費電力モード
SLVL1
SLVL0
0
0
ストップモード /
メインタイマモー 0
ド
1
1
1
1
0
0
0
1
1
0
1
1
0
0
0
1
1
0
1
1
スリープモード
ドーズモード
0
説明
ストップモード/メインタイマモード/時計モー
ド時に各端子からの出力を Hi-Z にしません。
ストップモード/メインタイマモード/時計モー
ド時に各端子からの出力を Hi-Z にします。
スリープモード移行時 , CPU スリープモード
(CPU の動作のみ停止 ) に移行します。
スリープモード移行時 , バススリープモード
(CPU, オンチップバスの動作を停止 ) に移行し
ます。*
割込み要求発生時 , DOZE ビットを "0" にクリ
アします。
割込み要求発生時 , DOZE ビットを "0" にクリ
アしません。
* DMA 転送中は , オンチップバスは動作します。
< 注意事項 >
• ストップモード / メインタイマモード設定時に出力を Hi-Z にできる端子は「付録
,
D CPU
の状態における端子状態」を参照してください。
• SLVL0 ビットの設定値は動作に影響ありません。
150
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.3
MB91605A シリーズ
スリープレート設定レジスタ (SLPRR)
10.3.2
ドーズモード時の, 動作状態 (RUN状態) の比率およびスリープ状態の比率 (スリープレート)
を設定するレジスタです。
スリープレート設定レジスタ (SLPRR) のビット構成を図 10.3-2 に示します。
図 10.3-2 スリープレート設定レジスタ (SLPRR) のビット構成
bit
属性
7
6
5
4
3
2
1
0
RUN3
RUN2
RUN1
RUN0
SLP3
SLP2
SLP1
SLP0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
< 注意事項 >
ドーズモード中に , このレジスタを書き換えた場合は , 次の停止 / 動作起動タイミングで
書き換えた設定が反映されます。
[bit7 ∼ bit4]:RUN3 ∼ RUN0 ( 動作周期ビット )
ドーズモード時に CPU が動作する期間を設定します。
このビットに設定した値から CPU の動作期間が次のように算出されます。
( このビットの値 +1) × 4 × tCYCP
tCYCP : 周辺クロック (PCLK) の周期
動作期間についての詳細は , 「10.4.2 ドーズモード時の動作」を参照してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
151
第 10 章 低消費電力モード
10.3
MB91605A シリーズ
[bit3 ∼ bit0]:SLP3 ∼ SLP0 ( スリープ状態周期ビット )
ドーズモード時のスリープ状態の期間を設定します。
このビットに設定した値からスリープ状態の期間が次のように算出されます。
( このビットの値 +1) × 4 × tCYCP
tCYCP : 周辺クロック (PCLK) の周期
スリープ状態の期間についての詳細は ,「10.4.2 ドーズモード時の動作」を参照してく
ださい。
< 注意事項 >
152
•
CPU がスリープ要求を受け付けるときに , 遅延が生じる場合があります。その場合は ,
上記の計算式で得られた期間よりもスリープ期間が短くなります。
•
スリープ状態の期間が短い場合 , CPU の動作状況によっては , スリープ状態にならな
い場合があります。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 10 章 低消費電力モード
10.4
10.4 動作説明と設定手順例
低消費電力モードの動作や使用方法と設定手順例について説明します。
■ 概要
動作クロックの分周比を変更したり , 動作クロックを停止させて消費電力を低減した
りすることができます。
また , 次の低消費電力モードを使用することができます。
•
ドーズモード
設定した動作率で CPU を繰り返し間欠動作させるモードです。
設定した期間で CPU の動作と停止を交互に繰り返すことで , CPU の平均消費電力
を低減できます。
•
スリープモード
CPU やオンチップバスを停止させ , 周辺機能のみを動作させるモードです。
次の 2 種類の中から選択できます。
-
CPU スリープモード
CPU の動作を停止させるモードです。
-
バススリープモード
CPU とオンチップバスの動作を停止させるモードです。
•
スタンバイモード
デバイス全体を停止させ , 待機状態にするモードです。
次の 2 種類の中から選択できます。
10.4.1
-
メインタイマモード
-
ストップモード
クロック制御時の動作
本製品に内蔵されている各動作クロックを調整することで消費電力とCPUの処理能力の最適
化を行うことができます。
■ 概要
クロックを制御して消費電力を低減するには , 次の 2 つの方法があります。
•
クロック分周
各動作クロックの分周比を変更することで , 動作周波数を落とすことができます。
•
クロック停止
特定のクロックを指定して停止させることができます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
153
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
■ クロック分周
各動作クロックの分周比を変更することで消費電力を低減できます。動作クロックの
分周比は個別に設定することができます。
各動作クロックと設定可能な分周比を表 10.4-1 に示します。
表 10.4-1 動作クロックと設定可能な分周比
動作クロック
分周比
ベースクロック (BCLK)
ソースクロック (SRCCLK) の 1 ∼ 8 分周
外部出力クロック (TCLK)
ベースクロック (BCLK) の 1 ∼ 8 分周
周辺クロック (PCLK)
ベースクロック (BCLK) の 1 ∼ 16 分周
< 注意事項 >
分周方法や条件は動作クロックによって異なります。動作クロックの分周については ,「第
8 章 クロック分周制御部」を参照してください。
■ クロックの停止
使用しない動作クロックを停止することで , 消費電力を低減することができます。
停止できる動作クロックと供給 / 停止タイミングの対応を表 10.4-2 に示します。
表 10.4-2 停止できる動作クロックと供給 / 停止タイミングとの対応
動作クロック
外部出力クロック (TCLK)
供給 / 停止タイミング
バススリープ中
外部出力クロック (TCLK) の停止を許可すると , 外部バスを使用したアクセスが行わ
れない間などは , 自動的に外部出力クロック (TCLK) の供給を停止します。
アクセスが行われると , 自動的に供給を再開し , アクセス終了後に再度 , 供給を停止し
ます。外部出力クロック (TCLK) の停止条件については , 「第 8 章 クロック分周制御
部」を参照してください。
154
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
ドーズモード時の動作
10.4.2
CPU の平均消費電力を低減させるために , CPU を間欠動作させるモードです。
■ 概要
ドーズモードを利用すると , 設定した期間で CPU を動作させたり , 停止させたりでき
るので , CPU の平均消費電力を低減できます。処理負荷に応じて , スリープレートを変
更し , 消費電力を低減させながら処理能力を維持してください。
■ 周期の設定
スリープレート設定レジスタ (SLPRR) の RUN3 ∼ RUN0 ビットに , CPU の動作期間を ,
SLP3 ∼ SLP0 ビットにスリープ状態の期間を設定すると , 設定した値から次の計算式
で周期が算出されます。
(RUN+1) × 4 × tCYCP + (SLP+1) × 4 × tCYCP
RUN : RUN3 ∼ RUN0 ビットの値
SLP : SLP3 ∼ SLP0 ビットの値
tCYCP : 周辺クロック (PCLK) の周期
それぞれの期間について図 10.4-1 に示します。
図 10.4-1 動作期間とスリープ状態の期間
PCLK
CPU 動作
SLEEP
RUN
SLEEP
(RUN+1) × 4 × tCYCP
(SLP+1) × 4 × tCYCP
RUN
tCYCP :周辺クロック (PCLK) の周期
SLEEP :スリープ状態
RUN :動作中
< 注意事項 >
•
上記の計算式は , CPU がスリープ要求を受け付けるときの遅延時間を含みません。そ
のため , 誤差が生じる場合があります。
•
スリープ状態の期間が短い場合 , CPU の動作状況によっては , スリープ状態にならな
い場合があります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
155
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
■ 移行
周期を設定後 , スタンバイ制御レジスタ (STBCR) の DOZE ビットに "1" を書き込むと ,
ドーズモードへ移行し , スリープレート設定レジスタ (SLPRR) の設定にしたがって
CPU が動作と停止を繰り返す間欠動作を開始します。
ドーズモードから復帰する場合は , スタンバイ制御レジスタ (STBCR) の DOZE ビット
に "0" を書き込んでください。
< 注意事項 >
ドーズモード中にスリープレート設定レジスタ (SLPRR) を書き換えた場合は , 次の停止 /
動作移行タイミングで書き換えた設定が反映されます。
■ ドーズモードからの復帰
次のいずれかの場合に CPU がドーズモードから復帰します。
•
本デバイスがリセットされた
•
スタンバイ制御レジスタ (STBCR) の DOZE ビットに "0" が書き込まれた
•
スタンバイ制御レジスタ (STBCR) の SLVL1 ビットが "0" のときに , 割込み要求が発
生した
上記以外の場合は , 設定が維持されるためスリープモード , メインタイマモード , ス
トップモードからの復帰後も , ドーズモードを利用できます。
10.4.3
スリープモード時の動作
イベント待ち状態での消費電力を低減させるために利用するモードです。
スリープモードになると, 復帰要因が発生するまでスリープモードを継続し, 復帰要因が発生
すると 2 ∼ 3 クロックの周期でプログラム動作へ復帰できます。
■ 概要
スリープモードを利用すると , CPU とオンチップバスを停止させ周辺機能のみが動作
するため , イベント待ち状態での消費電力を大幅に低減することができます。
スリープモードには次の 2 つのモードが用意されています。
•
CPU スリープモード
CPU のみを停止させるモードです。
DMAコントローラ (DMAC) やオンチップバスへのクロックは供給されているので,
動作を継続できます。
バススリープモードより電力を消費しますが , DMA 転送要求に早く対応できます。
156
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
•
バススリープモード
CPU とオンチップバスの動作を停止させるモードです。
DMA コントローラ (DMAC) やオンチップバスへのクロック供給も停止します。ク
ロックの停止については , 「第 8 章 クロック分周制御部」を参照してください。
ただし , DMA 転送要求が受け付けられると , 一時的に DMA コントローラ (DMAC)
やオンチップバスへのクロック供給が再開し , DMA 転送を行うことができます。
DMA 転送が終了すると , クロックの供給が再度停止します。
分周設定レジスタ 1 (DIVR1) の TSTP ビットで , バススリープモード時に外部出力
クロック (TCLK) の供給を停止するかどうかを設定できます。
分周設定レジスタ 1 (DIVR1) については , 「8.4.2 分周設定レジスタ 1 (DIVR1)」を
参照してください。
CPU スリープモード時より , DMA 転送要求に対する反応が遅れますが , 消費電力を
低減できます。
■ 設定
スリープモードへ移行する前に必要な設定を表 10.4-3 に示します。
表 10.4-3 設定レジスタ
レジスタ
分周設定レジスタ 1 (DIVR1)
スタンバイ制御レジスタ
(STBCR)
ビット
説明
TSTP
外部出力クロック (TCLK) を供給するかど
うかを設定
0= 供給する
1= 停止する
SLVL1
CPU スリープモードへ移行するかバスス
リープモードへ移行するかを設定
0=CPU スリープモード
1= バススリープモード
< 注意事項 >
分周設定レジスタ 1 (DIVR1) の TSTP ビットで外部出力クロック (TCLK) の供給を停止
(TSTP=1) した場合は , 外部 DMA 転送要求による DMA 転送の起動はできません。
■ 移行
次の手順を実施するとスリープモードへ移行します。
1. スタンバイ制御レジスタ (STBCR) のSTOPビットに"0", TIMERビットに"0", SLEEP
ビットに "1" を書き込む
2. スタンバイ制御レジスタ (STBCR) を読み出す
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
157
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
< 注意事項 >
スリープモードに移行する前に CPU が次の命令を実行しないよう , 例 ) のように手順 2
の次の命令で読み出した値を使用するダミー処理を行ってください。
例)
LDI
#value_of_sleep, R0
; SLEEP ビット =1, SLVL1, SLVL0 ビット設定
LDI
#_STBCR, R12
;
STB
R0, @R12
; 書込み
LDUB
@R12, R0
; 読出し ( スリープモードへ移行 )
MOV
R0, R0
; ダミー処理
NOP
; ダミー処理
NOP
; ダミー処理
■ スリープモードからの復帰
次のいずれかの場合に CPU がスリープモードから復帰します。
•
本デバイスがリセットされた
•
NMI 要求が発生した
•
割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 )
割込みレベルについては , 「第 12 章 割込みコントローラ」を参照してください。
< 注意事項 >
10.4.4
•
割込み要求でスリープモードから復帰したときに , CPU が割込み要求を受け付けな
かった場合は , スリープモードになった次の命令からプログラムが実行されます。CPU
が割込み要求を受け付けた場合は , 割込み処理ルーチンへ分岐します。
•
バススリープモードでは , DMA 転送要求が発生すると , オンチップバスクロック
(HCLK) を一時的に復帰させ , DMA 転送を行います。また , DMA 転送が終了するとオ
ンチップバスクロック (HCLK) を再度停止します。
メインタイマモード時の動作
メインタイマモードは , スタンバイモードの 1 つとして分類されます。スタンバイモードは ,
デバイス全体を停止させて , 待機状態にするモードです。そのため , 外部イベントの発生待ち
状態での消費電力を大幅に低減できます。ただし , 許可されたクロックの発振は動作するた
め , ストップモードほどは消費電力は低減できません。
メ イン タ イマ モ ード 時 は , CPU の ソ ース ク ロッ ク (SRCCLK) と して メ イン ク ロッ ク
(MAINCLK) の発振を選択してください。
メインタイマモードになると, 復帰要因が発生するまでメインタイマモードを継続し, 復帰要
因が発生すると 2 ∼ 3 クロックの周期でプログラム動作へ復帰できます。
158
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
■ 概要
メインタイマモードでは , CPU のソースクロック (SRCCLK) としてメインクロック
(MAINCLK) の発振が許可されているため , メインタイマのカウント動作が実行されま
す。
■ 設定
メインタイマモードへ移行する前に必要な設定を表 10.4-4 に示します。
表 10.4-4 設定レジスタ
レジスタ
クロックソース
設定レジスタ
(CSELR)
スタンバイ制御
レジスタ
(STBCR)
ビット
CKS1, CKS0
説明
CPU のソースクロック (SRCCLK) にメインクロッ
ク (MAINCLK) を選択
(CKS1, CKS0=00 または 01)
PCEN
PLL クロック (PLLCLK) の発振を停止 (PCEN=0)
SLVL1
メインタイマモード時の端子から出力信号を設定
0= メインタイマモードになる前の状態を保持
1=Hi-Z
< 注意事項 >
メインタイマモードに移行する時点で , ドーズモードを設定しているときに , スタンバイ
制御レジスタ (STBCR) の SLVL1 ビットが "0" に設定されていると , メインタイマモード
からの復帰時に DOZE ビット "0" にクリアされ , ドーズモードが終了します。
■ 移行
次の手順を実施するとメインタイマモードへ移行します。
1. スタンバイ制御レジスタ (STBCR) のSTOPビットに"0", TIMERビットに"1", SLEEP
ビットに "0" を書き込む
2. スタンバイ制御レジスタ (STBCR) を読み出す
< 注意事項 >
メインタイマモードに移行する前に CPU が次の命令を実行しないよう , 例 ) のように手
順 2 の次の命令で読み出した値を使用するダミー処理を行ってください。
例)
LDI
LDI
#_STBCR, R12
;
STB
R0, @R12
; 書込み
LDUB
@R12, R0
; 読出し ( メインタイマモードへ移行 )
MOV
R0, R0
; ダミー処理
NOP
; ダミー処理
NOP
; ダミー処理
CM71-10147-2
#value_of_timer, R0
; TIMER ビット =1, SLVL1, SLVL0 ビット設定
FUJITSU SEMICONDUCTOR LIMITED
159
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
■ メインタイマモードからの復帰
次のいずれかの場合に CPU がメインタイマモードから復帰します。
•
本デバイスがリセットされた
•
以下の割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 )
-
メインタイマ割込み
-
外部割込み
割込みレベルについては , 「第 12 章 割込みコントローラ」を参照してください。
< 注意事項 >
割込み要求でメインタイマモードから復帰したときに , CPU が割込み要求を受け付けな
かった場合は , メインタイマモードになった次の命令からプログラムが実行されます。
CPU が割込み要求を受け付けた場合は , 割込み処理ルーチンへ分岐します。
10.4.5
ストップモード時の動作
ストップモードは , スタンバイモードの 1 つとして分類されます。スタンバイモードは , デバ
イス全体を停止させて , 待機状態にするモードです。そのため , 外部イベントの発生待ち状態
での消費電力を大幅に低減できます。
ストップモードは , すべてのクロックの発振を停止し , 消費電力を最小にするモードです。
■ 概要
ストップモードを利用すると , すべてのクロックの発振が停止するため消費電力を最
小にできます。
ただし , 復帰要求が発生してからプログラム動作へ復帰するまでには発振安定待ち時
間を必要とします。
■ 設定
ストップモードへ移行する前に必要な設定を表 10.4-5 に示します。
表 10.4-5 設定レジスタ
レジスタ
ビット
クロックソース設定 CKS1, CKS0
レジスタ (CSELR)
PCEN
スタンバイ制御レジ SLVL1
スタ (STBCR)
160
説明
CPU のソースクロック (SRCCLK) にメイ
ンクロック (MAINCLK) を選択
(CKS1, CKS0=00/01)
PLL クロック (PLLCLK) の発振を停止
(PCEN=0)
ストップモード時の端子から出力信号を
設定
0= ストップモードになる前の状態を保持
1=Hi-Z
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 10 章 低消費電力モード
10.4
MB91605A シリーズ
< 注意事項 >
ストップモードに移行する時点で , ドーズモードを設定しているときに , スタンバイ制御
レジスタ (STBCR) の SLVL1 ビットが "0" に設定されていると , ストップモードからの復
帰時に DOZE ビット "0" にクリアされ , ドーズモードが終了します。
■ 移行
次の手順を実施するとストップモードへ移行します。
1. スタンバイ制御レジスタ (STBCR) のSTOPビットに"1", TIMERビットに"0", SLEEP
ビットに "0" を書き込む
2. スタンバイ制御レジスタ (STBCR) を読み出す
< 注意事項 >
ストップモードに移行する前に CPU が次の命令を実行しないよう , 例 ) のように手順 2
の次の命令で読み出した値を使用するダミー処理を行ってください。
例)
LDI
#value_of_stop, R0
; STOP ビット =1, SLVL1, SLVL0 ビット設定
LDI
#_STBCR, R12
;
STB
R0, @R12
; 書込み
LDUB
@R12, R0
; 読出し ( ストップモードへ移行 )
MOV
R0, R0
; ダミー処理
NOP
; ダミー処理
NOP
; ダミー処理
■ ストップモードからの復帰
次のいずれかの場合に CPU がストップモードから復帰します。
•
本デバイスがリセットされた
•
NMI 要求が発生した
•
以下の割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 )
外部割込み
割込みレベルについては , 「第 12 章 割込みコントローラ」を参照してください。
< 注意事項 >
割込み要求でストップモードから復帰したときに, CPUが割込み要求を受け付けなかった
場合は , ストップモードになった次の命令からプログラムが実行されます。CPU が割込み
要求を受け付けた場合は , 割込み処理ルーチンへ分岐します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
161
第 10 章 低消費電力モード
10.5
MB91605A シリーズ
10.5 使用上の注意
低消費電力モードを使用する際は , 次の点に注意してください。
•
次の低消費電力モードに切り換えるときに , 割込み要求が発生していると低消費電
力モードへ移行できません。
•
-
ドーズモード
-
スリープモード
-
メインタイマモード
-
ストップモード
例として , 次の場合はスリープモードにはなりません。割込み要求をクリアしてか
らスリープモードへ移行してください。
-
スリープモード中, CPUが受け付けない割込み要求によりスリープモードから復
帰した後で , 割込み要求をクリアせずに再びスリープモードへの移行動作を行
なった。
162
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
リセットの機能と動作について説明します。
11.1 概要
11.2 構成
11.3 端子
11.4 レジスタ
11.5 動作説明
11.6 動作状態と遷移
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
163
第 11 章 リセット
11.1
MB91605A シリーズ
11.1 概要
内部回路を初期化するためのリセットについて説明します。
■ 概要
本デバイスには , 次の 4 種類のリセット要因があります。
•
TRST 端子入力
•
INIT 端子入力
•
ウォッチドッグリセット 0
•
ソフトウェアリセット
リセット要因が発生すると , すべてのプログラムと内部回路の動作を停止して , 状態を
初期化します。
この状態をリセット状態とよびます。
リセット要因が解除されると , プログラムおよびハードウェア動作が開始されます。
164
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.2
MB91605A シリーズ
11.2 構成
リセットの構成を示します。
■ リセットのブロックダイヤグラム
リセットのブロックダイヤグラムを図 11.2-1 に示します。
図 11.2-1 リセットのブロックダイヤグラム
リセット
(RST)
リセット要求
S
Q
RDLY
R
RSTCR
オ
ン
チ
ッ
プ
バ
ス
INIT
端子
ノイズ
フィルタ
TRST
端子
ノイズ
フィルタ
周辺クロック
(PCLK)
遅延
セレクタ
8 ビット
周辺
クロック 4 ビット
(PCLK)
延長カウンタ
リセット発生
遅延カウンタ
バスアイドル応答
イニシャライズリセット
(INIT)
S
周辺
クロック 4 ビット
(PCLK)
延長カウンタ
Q
R
周辺クロック 2 ビット
(PCLK)
要因延長カウンタ
リセット
要求フラグ
リセット発生
S
周辺クロック
(PCLK)
Q
R
2 ビット
要因延長カウンタ
リセット
要求フラグ
リセット発生
S
ウォッチドッグリセット 0
周辺クロック
(PCLK)
Q
RSTRR
R
2 ビット
要因延長カウンタ
IRRST
リセット
要求フラグ
ERST
リセット発生
WDG0
SRST
RSTRR
読出し
RSTRR:リセット要因レジスタ(RSTRR)
RSTCR:リセット制御レジスタ(RSTCR)
ソフトウェア
リセット要求
SRST
RSTCR
•
リセット要因レジスタ (RSTRR)
リセット要因を表示するレジスタです。
•
リセット制御レジスタ (RSTCR)
リセット発行を制御するレジスタです。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
165
第 11 章 リセット
11.2
•
MB91605A シリーズ
遅延カウンタ
リセット要求が発生してから , バスがアイドル状態になるまでの期間をカウントし
ます。
一定時間内にバスアイドル状態にならない場合は , 強制的にイニシャライズリセッ
ト (INIT) が発行されます。
•
要因延長カウンタ
リセット要因を延長する時間をカウントするカウンタです。各リセット要因は , リ
セットが発行されるまで保持されます。
■ クロック
リセットで使用するクロックを表 11.2-1 に示します。
表 11.2-1 リセットで使用するクロック
クロック名
動作クロック
166
内容
周辺クロック (PCLK)
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 11 章 リセット
11.3
11.3 端子
リセットで使用する端子について説明します。
■ 概要
リセットには次の端子があります。
•
INIT 端子 , TRST 端子
リセット要求を入力する , 外部入力端子です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
167
第 11 章 リセット
11.4
MB91605A シリーズ
11.4 レジスタ
リセットで使用するレジスタの構成と機能について説明します。
■ リセットのレジスタ一覧
リセットのレジスタ一覧を表 11.4-1 に示します。
表 11.4-1 リセットのレジスタ一覧
168
レジスタ略称
RSTRR
レジスタ名
リセット要因レジスタ
参照先
11.4.1
RSTCR
リセット制御レジスタ
11.4.2
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.4
MB91605A シリーズ
リセット要因レジスタ (RSTRR)
11.4.1
リセット要因を記憶するレジスタです。
電源投入後 , このレジスタを読み出すまでの間に発生したリセット要因をすべて記憶
します。
リセット要因レジスタ (RSTRR) のビット構成を図 11.4-1 に示します。
図 11.4-1 リセット要因レジスタ (RSTRR) のビット構成
bit
7
6
5
4
3
2
1
0
IRRST
ERST
WDG0
R
未定義
R
未定義
R
未定義
R
SRST
R
未定義
R
属性
初期値:
R
R
* リセット要因により異なる
R:リードオンリ
*:初期値は次のとおりです。
リセット要因
初期値
INIT 端子入力
11XXXXXX
ウォッチドッグリセット 0
XXX1XXXX
ウォッチドッグリセット 0 のタイムアウト 1XX1XXXX
ソフトウェアリセット
XXXXXXX1
ソフトウェアリセット時のタイムアウト
1XXXXXX1
このレジスタの読出し
00000000
X:初期化されません。
< 注意事項 >
このレジスタを読み出すと , すべてのビットがクリアされます。
[bit7]:IRRST ( イレギュラーリセットビット )
バスアクセスの完了を待たずにリセットが発行されることを , イレギュラーリセット
とよびます。イレギュラーリセットが発生すると , リセット時にメモリ内容が破壊され
ている可能性があります。
INIT 端子入力によるリセットか , リセットタイムアウトが発生すると , このビットが
"1" に変わります。
読出し値
0
1
CM71-10147-2
説明
イレギュラーリセットは検出されていません。
メモリ内容が破壊されていないことを保証します。
イレギュラーリセットが検出されました。
直前のリセットで , メモリ内容が破壊された可能性があります。
FUJITSU SEMICONDUCTOR LIMITED
169
第 11 章 リセット
11.4
MB91605A シリーズ
イレギュラーリセットについては , 「11.5.3 リセットの動作」の「■ イレギュラーリ
セット」を参照してください。
[bit6]:ERST ( リセット端子入力ビット )
INIT 端子入力のリセットが発生したかどうかを示します。
読出し値
0
1
説明
INIT 端子入力のリセットは発生していません。
INIT 端子入力のリセットが発生しました。
[bit5]:未定義ビット
読出し時
値は不定です。
[bit4]:WDG0 ( ウォッチドッグリセット 0 ビット )
ウォッチドッグリセット 0 が発生したかどうかを示します。
ウォッチドッグタイマ 0 でリセットタイムアウトが発生した場合は , IRRST ビットも
"1" に変わります。
読出し値
0
1
説明
ウォッチドッグリセット 0 は発生していません。
ウォッチドッグリセット 0 が発生しました。
[bit3 ∼ bit1]:未定義ビット
読出し時
値は不定です。
[bit0]:SRST ( ソフトウェアリセットビット )
ソフトウェアリセット (RSTCR:SRST) が発生したかどうかを示します。
ソフトウェアリセット (RSTCR:SRST) でリセットタイムアウトが発生していた場合
は , IRRST ビットも "1" に変わります。
読出し値
0
1
170
説明
ソフトウェアリセット (RSTCR:SRST) は発生していません。
ソフトウェアリセット (RSTCR:SRST) が発生しました。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.4
MB91605A シリーズ
リセット制御レジスタ (RSTCR)
11.4.2
リセットの発行を制御するレジスタです。
リセット制御レジスタ (RSTCR) のビット構成を図 11.4-2 に示します。
図 11.4-2 リセット制御レジスタ (RSTCR) のビット構成
bit
7
6
5
4
3
2
1
0
RDLY2
RDLY1
RDLY0
R/W
R/W
予約
R/W
予約
R/W
予約
R/W
SRST
R/W
予約
R/W
0
0
0
0
0
0
0
0
属性
初期値
R/W
R/W:リード / ライト可能
[bit7 ∼ bit5]:RDLY2 ∼ RDLY0 ( リセット発行遅延ビット )
リセット要求が受け付けられてから , すべてのバスがアイドルになるまで , リセット発
行を遅延させる時間を設定します ( 遅延サイクル ) 。
RDLY2
RDLY1
RDLY0
説明
0
0
0
周辺クロック (PCLK) × 2 サイクル
0
0
1
周辺クロック (PCLK) × 4 サイクル
0
1
0
周辺クロック (PCLK) × 8 サイクル
0
1
1
周辺クロック (PCLK) × 16 サイクル
1
0
0
周辺クロック (PCLK) × 32 サイクル
1
0
1
周辺クロック (PCLK) × 64 サイクル
1
1
0
周辺クロック (PCLK) × 128 サイクル
1
1
1
周辺クロック (PCLK) × 256 サイクル
< 注意事項 >
•
各ビットの値は , リセットにより初期化されます。リセット後の書込みは 1 回のみ可
能です。
•
遅延サイクルの設定が短い場合は , リセットタイムアウトによるイレギュラーリセッ
トが発生する可能性が高くなります。一方 , 遅延サイクルの設定が長い場合は , リセッ
ト要因が発生してからリセットが発行されるまでに長時間かかることがあります。
•
イレギュラーリセットについては , 「11.5.3 リセットの動作」の「■ イレギュラーリ
セット」を参照してください。
[bit4 ∼ bit1]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
171
第 11 章 リセット
11.4
MB91605A シリーズ
[bit0]:SRST ( ソフトウェアリセットビット )
このビットに "1" を書き込んだ後 , リセット制御レジスタ (RSTCR) を読み出すと , ソフ
トウェアリセット要求が発生します。
書込み値
0
1
説明
リセット要求を発生しません。
本レジスタの読出しによってリセット要求を発生します。
< 注意事項 >
172
•
このビットに "1" を書き込んだ後は , リセットが発生するまで , リセット制御レジスタ
(RSTCR) への書込みは無視されます。
•
SRST=1 でソフトウェアリセット要求を発生させるまえに , ソースクロックをメイン
クロック (MAINCLK) の 2 分周に切り換えてください。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.5
MB91605A シリーズ
11.5 動作説明
リセットの動作について説明します。
11.5.1
リセットの種類
本デバイスには , 3 種類のリセットがあり , それぞれ発生要因や初期化する内容が異な
ります。
•
電源投入リセット (SINIT)
分周回路の不定状態を初期化するために使用します。
また , 同時にイニシャライズリセット (INIT) とリセット (RST) を発行します。
リセット要因
・INIT 端子へ "L" レベルを入力
初期化対象
・メインクロック (MAINCLK) の発振安定待ち時間
同時に発生するリセット
・イニシャライズリセット (INIT)
・リセット (RST)
•
イニシャライズリセット (INIT)
クロック制御の設定をリセットするために , 次のレジスタを初期化します
・クロックソース設定レジスタ (CSELR)・クロックソース監視レジスタ (CMONR)
・PLL設定レジスタ (PLLCR)
・発振安定待ち設定レジスタ (CSTBR)
また , 同時に , リセット (RST) を発行します。
リセット要因
・INIT 端子入力
・リセットタイムアウト
・ウォッチドッグリセット 0
初期化対象
・ソースクロック = メインクロック (MAINCLK) の 2 分周
・クロック発振 = メイン発振 , PLL 停止
・PLL マクロ発振クロックの分周比
・PLL クロック (PLLCLK) の逓倍率
・PLL クロックの発振安定待ち時間
・PLL 入力クロックの分周比
同時に発生するリセット
・リセット (RST)
•
リセット (RST)
プログラム動作を初期化するリセットです。
CM71-10147-2
リセット要因
・INIT 端子入力
・リセットタイムアウト
・ウォッチドッグリセット 0
・ソフトウェアリセット
初期化対象
電源投入リセット (SINIT) およびイニシャライズリセッ
ト (INIT) で初期化されるレジスタ以外のすべてのレジ
スタ設定およびハードウェア
同時に発生するリセット
なし
FUJITSU SEMICONDUCTOR LIMITED
173
第 11 章 リセット
11.5
11.5.2
MB91605A シリーズ
リセット要因
4 種類のリセット要因があります。リセット要因によって , 発行されるリセットのレベ
ルが異なります。
また, バスアクセスの完了を確認せずに, イニシャライズリセット (INIT) を発行するイ
レギュラーリセットが発生するかどうかもリセット要因によって異なります。
•
TRST 端子入力 (TRST)
ICE 接続時に , ICE 側から入力されるハードウェアリセットです。
デバイス内部では , INIT 端子入力 (INIT) として認識されます。
•
INIT 端子入力
INIT 端子に "L" レベルが入力されている間 , イニシャライズリセット (INIT) 要求が
発生します。
発生要因
INIT 端子へ "L" レベルを入力
解除要因
INIT 端子へ "H" レベルを入力
リセットレベル
電源投入リセット (SINIT), イニシャライズリセット (INIT), リ
セット (RST) すべてを発行
対応フラグ
リセット要因レジスタ (RSTRR) の ERST ビット =1
動作
バスアクセスの完了を待たずに電源投入リセット (SINIT), イニ
シャライズリセット (INIT), リセット (RST) を発行 ( イレギュラー
リセット )
•
ウォッチドッグリセット 0
ウォッチドッグタイマで設定した周期が経過すると , ウォッチドッグリセット 0 要
求が発生します。ウォッチドッグリセット 0 要求が発生すると , イニシャライズリ
セット (INIT) が発行されます。
174
発生要因
ウォッチドッグタイマで設定した周期が経過
解除要因
イニシャライズリセット (INIT) の発行後 , 自動的に解除
リセットレベル
イニシャライズリセット (INIT) とリセット (RST) を発行
対応フラグ
リセット要因レジスタ (RSTRR) の WDG0 ビット =1
動作
・ バスアクセスの完了を確認してからイニシャライズリセット
(INIT) とリセット (RST) を発行
・ バスアクセスが完了せずリセットタイムアウトが発生した場合
は , 強制的にイニシャライズリセット (INIT) とリセット (RST)
を発行 ( イレギュラーリセット )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.5
MB91605A シリーズ
•
ソフトウェアリセット (RSTCR:SRST)
リセット制御レジスタ (RSTCR) の SRST ビットに "1" を書き込んだ後に , リセット
制御レジスタ (RSTCR) を読み出すと , リセット (RST) 要求が発生します。
発生要因
リセット制御レジスタ (RSTCR) の SRST ビットに "1" を書き込ん
だ後に , リセット制御レジスタ (RSTCR) を読み出す
解除要因
リセット (RST) の発行後 , 自動的に解除
リセットレベル
リセット (RST) のみを発行
対応フラグ
リセット要因レジスタ (RSTRR) の SRST ビット =1
動作
・バスアクセスの完了を確認してからリセット (RST) を発行
・バスアクセスが完了せずリセットタイムアウトが発生した場合
は , 強制的にイニシャライズリセット (INIT) とリセット (RST) を
発行 ( イレギュラーリセット )
■ リセット要因判定フロー
RSTRRをリード
(RSTRRの全ビットはクリアされる)
No
IRRST=1 ?
Yes
No
ERST=1 ?
Yes
INIT端子=Lによる
リセット
11.5.3
下位6bitの判定
(リセットタイムアウト)
下位6bitの判定
リセットの動作
■ リセット動作の流れ
リセットが発生し , リセット状態に入ってから , CPU が動作を開始するまでの一連の動
作をリセットシーケンスとよびます。
リセットシーケンスを図 11.5-1 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
175
第 11 章 リセット
11.5
MB91605A シリーズ
図 11.5-1 リセットシーケンス
リセット要因発生
INIT 端子から
"L" レベル入力
リセット要因発生
ウォッチドッグリセット 0
リセット要因発生
ソフトウェアリセット
バスアイドル待ち
バスアイドル待ち
リセット
タイムアウト
バスアイドル
状態
リセット
タイムアウト
バスアイドル
状態
電源投入リセット
(SINIT 発行 )
イニシャライズリセット (INIT) 発行
リセット (RST) 発行
リセット (RST) 発行
イニシャライズリセット (INIT) 解除
リセット (RST) 解除
リセットベクタフェッチ
プログラム開始
1. リセット要因の取り込みと延長
発生したリセット要因が非同期で取り込まれ , リセットが発行されるまで保持され
ます。
2 ビットの要因延長カウンタを持ち , 最小でも 4T (T: 周辺クロック (PCLK) の周期 )
リセット要因を保持します。
2. リセット要求の発生
生成したリセット要求を内部バス制御部へ通知し , 次の処理を行います。
-
CPU のプログラム動作の停止 ( スリープモードと同一処理。)
-
すべてのバスへアイドル要求が通知されたことの確認
同時に遅延カウンタがカウントを開始します。
176
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 11 章 リセット
11.5
3. リセット要求の受理とリセット発行
リセット要求に対するすべての処理が完了すると , リセット要求が受理されます。
バスから完了の応答がある前に , 遅延カウンタがオーバフローしリセットタイムア
ウトが発生すると , イレギュラーリセットが発行されます。
4. リセットの発行
-
INIT 端子へ "L" レベルを入力
電源投入リセット (SINIT), イニシャライズリセット (INIT), リセット (RST) が発
行されます。
-
ウォッチドッグリセット 0
イニシャライズリセット (INIT), リセット (RST) が発行されます。
-
リセットタイムアウト
イニシャライズリセット (INIT), リセット (RST) が発行されます。
-
ソフトウェアリセット (RSTCR:SRST)
リセット (RST) が発行されます。
5. リセット要因の解除
リセット要因が解除されると , 4T (T: 周辺クロック (PCLK) ) の間 , リセット要求
が延長されます。その後 , 16T (T: 周辺クロック (PCLK) ) リセット周期を維持し
ます。このため , リセットの最小発行周期は 20T になります。
6. リセットの解除
リセットサイクルが終了すると , リセットが解除されハードウェアが動作を開
始します。
7. リセットベクタの取込み ( フェッチ )
CPU がリセットベクタ (000F FFFCH) の取込み ( フェッチ ) を開始します。CPU は
取得したリセットベクタをプログラムカウンタ (PC) に取り込んで , プログラム動
作を開始します。
■ 電源投入リセット (SINIT)
電源リセット (SINIT) が発行されると同時にイニシャライズリセット (INIT), リセット
(RST) も発行されます。電源投入リセット (SINIT) のリセット要因が解除された後の各
リセット発行シーケンスを図 11.5-2 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
177
第 11 章 リセット
11.5
MB91605A シリーズ
図 11.5-2 電源投入リセット (SINIT) のリセット要因解除後の各リセット発行シーケンス
PCLK
SINIT
INIT
RST
PCLK × 16 サイクル
PCLK × 16 サイクル
発振安定待ち時間 + (PCLK × 4 サイクル )
PCLK
SINIT
INIT
RST
:周辺クロック (PCLK)
:電源投入リセット (SINIT)
:イニシャライズリセット (INIT)
:リセット (RST)
■ イニシャライズリセット (INIT)
イニシャライズリセット (INIT) が発行されると同時にリセット (RST) も発行されま
す。
イニシャライズリセット (INIT) のリセット要因が解除された後の各リセット発行シー
ケンスを図 11.5-3 に示します。
図 11.5-3 イニシャライズリセット (INIT) のリセット要因解除後の各リセット発行シーケンス
PCLK
リセット
要因
INIT
RST
PCLK × 4
サイクル
PCLK × 16 サイクル
PCLK × 16 サイクル
PCLK :周辺クロック (PCLK)
INIT :イニシャライズリセット (INIT)
RST :リセット (RST)
178
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.5
MB91605A シリーズ
■ リセット (RST)
リセット (RST) のリセット要因が解除された後の各リセット発行シーケンスを図
11.5-4 に示します。
図 11.5-4 リセット (RST) のリセット要因解除後の各リセット発行シーケンス
PCLK
リセット
要因
INIT
L
RST
PCLK × 4
サイクル
PCLK × 16 サイクル
PCLK :周辺クロック (PCLK)
INIT :イニシャライズリセット (INIT)
RST :リセット (RST)
イレギュラーリセット
11.5.4
次の場合にイレギュラーリセットが発生します。
•
INIT 端子入力 (INIT) 時
•
リセットタイムアウト発生時
( ウォッチドッグリセット 0/ ソフトウェアリセット (RSTCR:SRST) 時 , バスから応
答がある前に , 遅延カウンタがオーバフローした )
イレギュラーリセットが発生すると , 次の処理が行われます。
•
イニシャライズリセット (INIT) を発行
•
リセット要因レジスタ (RSTRR) の IRRST ビットが "1" に変わる
< 注意事項 >
イレギュラーリセット発生時は , リセットが入力される時点でバスアクセスが行われてい
た可能性があり , メモリ内容が破壊されていることがあります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
179
第 11 章 リセット
11.6
MB91605A シリーズ
11.6 動作状態と遷移
各種状態と , その制御について説明します。
■ 動作状態
動作状態の遷移を図 11.6-1 に示します。
図 11.6-1 動作状態の遷移
① INIT=L
⑩ クロックを必要としない外部割込み
② INIT=H
⑪ メイン→ PLL 切り替え ( 命令書込み )
③ 発振安定待ち終了
⑫ PLL →メイン切り替え ( 命令書込み )
④ RST 解除
⑬ ウォッチドッグリセット / ソフトリセットのタイムアウト時 (INIT)
⑤ ソフトウェアリセット (RST)
⑭ INIT 解除
⑥ スリープモード ( 命令書込み )
⑦ ストップモード ( 命令書込み )
⑮ メインタイマ割込み / サブタイマ割込み / 時計カウンタ割込み
⑧メインタイマモード ( 命令書込み )
⑨ 割込み
パワーオン
①
電源投入リセット
(SINIT)
②
①
①
メイン発振安定待ち
リセット
PLL スリープ
③
⑥
⑬
①
設定初期化
(INIT)
メインプログラム
リセット
(RST)
⑫
⑪
⑬
④
⑩
①
①
ドーズモード
⑭
①
⑨
PLL RUN
⑤
メインタイマモード ⑮
⑧ ⑦
メイン RUN
ドーズモード
⑥
⑨
①
①
メインスリープ
メインストップ
⑩
メイン発振安定待ち
RUN
①
180
③
①
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 11 章 リセット
11.6
● RUN 状態 ( 通常動作 )
プログラム実行状態です。
すべての内部クロックが供給され , すべての回路が動作可能な状態です。
ストップ状態とメインタイマモード状態の外部端子の Hi-Z 制御は解除されます。
● スリープ状態
プログラム停止状態です。プログラム動作によって遷移します。
CPU のプログラム実行のみを停止します。周辺回路は動作が可能です。
各種内蔵メモリおよび外部バスは , DMA コントローラ (DMAC) が要求するまで停止し
ます。
内部バスは , バススリープモードの時 , DMA コントローラ (DMAC) が要求するまで停
止状態です。
•
有効な割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。
•
INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ遷移しま
す。
● メインタイマモード状態
デバイス停止状態です。プログラムによって遷移します。発振回路 ( メインクロック
(MAINCLK) 以外の内部回路が停止します。外部端子を一律 Hi-Z にすることができま
す ( 一部端子を除く )。
•
外部割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。
•
メインタイマ割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。
•
INIT端子に"L"レベルが入力されると, 電源投入リセット(SINIT)状態へ遷移します。
< 注意事項 >
メインタイマモードに移行する前に PLL クロック (PLLCLK) の発振を停止してください。
● ストップ状態
デバイス停止状態です。プログラム動作によって移行します。
すべての内部回路が停止します。
外部端子を一律 Hi-Z にすることができます。( 一部端子を除く )
•
外部割込み要求が発生すると , 発振安定待ち RUN 状態へ遷移します。
•
INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ遷移しま
す。
< 注意事項 >
ストップ状態に移行する前に , PLL クロック (PLLCLK) の発振を停止してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
181
第 11 章 リセット
11.6
MB91605A シリーズ
● 発振安定待ち RUN 状態
デバイス停止状態です。ストップ状態からの復帰後に移行します。
すべての内部回路が停止します。( 発振安定待ちのためのタイマ動作を除く )
内部クロックはすべて停止しますが , 動作を許可されていた発振回路は動作していま
す。
•
発振安定待ち時間が経過すると , RUN 状態 ( 通常動作 ) へ移行します。
•
INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ移行しま
す。
● 発振安定待ちリセット (RST) 状態
デバイス停止状態です。電源投入リセット (SINIT) からの復帰後に移行します。
すべての内部回路が停止します。( 発振安定待ちのためのタイマ動作を除く )
内部クロックはすべて停止しますが , メイン発振回路は動作しています。
•
発振安定待ち時間が経過すると , イニシャライズリセット (INIT) 状態へ移行しま
す。
•
INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ移行しま
す。
● プログラムリセット (RST) 状態
プログラム初期化状態です。リセット (RST) 要求を受け付けたとき , またはイニシャラ
イズリセット (INIT) 状態の終了後に移行します。
CPU のプログラム実行は停止し , プログラムカウンタは初期化されます。周辺回路は
初期化されます。( 一部を除く )
すべての内部クロックと動作が許可されていた発振回路と PLL クロック (PLLCLK) は
動作しています。
•
内部回路に対してリセット (RST) 要求し , リセット (RST) 要求が消失すると , RUN
状態 ( 通常動作 ) へ移行します。
•
INIT 端子に "L" が入力されると , 電源投入リセット (SINIT) 状態へ移行します。
● イニシャライズリセット (INIT) 状態
全設定初期化状態です。イニシャライズリセット (INIT) 要求の受付けによって移行し
ます。
CPU のプログラム実行は停止し , プログラムカウンタは初期化されます。周辺回路は
すべて初期化されます。メインクロック (MAINCLK) 発振回路は動作します (PLL ク
ロック (PLLCLK) 発振回路は動作を停止します ) 。INIT 端子への "L" レベル入力期間
は , すべての内部クロックは停止しますが , それ以外では動作します。
内部回路に対し , イニシャライズリセット (INIT) とリセット (RST) を出力します。
•
イニシャライズリセット (INIT) 要求が消失すると , この状態は解除されて , プログ
ラムリセット (RST) 状態へ移行します。
•
182
INIT 端子に "L" が入力されると , 電源投入リセット (SINIT) 状態へ移行します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 11 章 リセット
11.6
MB91605A シリーズ
■ 各状態遷移要求の優先順位
どの状態においても , 各状態遷移要求は以下の優先順位に従います。ただし , 一部要求
は特定の状態でしか発生しませんので , その状態でしか有効になりません。
最強
電源投入リセット (SINIT) 要求
イニシャライズリセット (INIT) 要求
発振安定待ち時間の終了
発振安定待ちリセット状態 , 発
振安定待ち RUN 状態のみ発生
リセット (RST) 要求
有効な割込み要求
RUN, スリープ , ストップ , メイ
ンタイマモード状態のみ発生
ストップモード要求 ( レジスタ書込み )
RUN 状態のみ発生
メインタイマモード要求 (レジスタ書込み) RUN 状態のみ発生
最弱
CM71-10147-2
スリープモード要求 ( レジスタ書込み )
RUN 状態のみ発生
FUJITSU SEMICONDUCTOR LIMITED
183
第 11 章 リセット
11.6
184
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 12 章 割込みコントローラ
割込みコントローラの機能と動作について説明し
ます。
12.1 概要
12.2 構成
12.3 レジスタ
12.4 動作説明と設定手順例
12.5 使用上の注意
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
185
第 12 章 割込みコントローラ
12.1
MB91605A シリーズ
12.1 概要
割込みコントローラは , 割込み要求の優先度を判定して , 要求を CPU へ送ります。
■ 概要
割込みコントローラには次の機能があります。
•
NMI 要求 / 周辺機能からの割込み要求を受け付けます。
•
割込みレベル , および割込みベクタによって , CPU へ送る優先順位を判定します。
•
最も優先度の高い割込み要求を CPU へ送ります。
•
最も優先度の高い割込み要求の割込みベクタ番号を CPU へ送ります。
•
NMI/ 割込みレベルが "1111" 以外の割込み要求で , スリープモードおよびストップ
モードからの復帰要求を生成します。
186
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 12 章 割込みコントローラ
12.2
MB91605A シリーズ
12.2 構成
割込みコントローラの構成を示します。
■ 割込みコントローラのブロックダイヤグラム
割込みコントローラのブロックダイヤグラムを図 12.2-1 に示します。
図 12.2-1 割込みコントローラのブロックダイヤグラム
ICR00
優
先
度
判
定
ICR47
レベル
割込みレベル
ベクタ
割込みベクタ番号
復帰要求
周辺機能からの割込み要求 NMI 要求
周辺バス
•
割込み優先度判定回路
入ってきた割込み要求の優先度を判定します。また , スリープモード / ストップモー
ドのときは復帰要求を生成します。
•
割込みレベル発生回路
割込み要求の割込みレベルを CPU に送ります。
•
割込みベクタ発生回路
割込み要求の割込みベクタを CPU に送ります。
•
割込みコントロールレジスタ (ICR00 ∼ ICR47)
割込み要求の割込みレベルを設定するレジスタです。
■ クロック
クロック名
動作クロック
CM71-10147-2
内容
周辺クロック (PCLK)
FUJITSU SEMICONDUCTOR LIMITED
187
第 12 章 割込みコントローラ
12.3
MB91605A シリーズ
12.3 レジスタ
割込みコントローラで使用するレジスタの構成と機能について説明します。
■ 割込みコントローラのレジスタ一覧
割込みコントローラのレジスタ一覧を表 12.3-1 に示します。
表 12.3-1 割込みコントローラのレジスタ一覧
レジスタ略称
ICR00 ∼ ICR47
188
レジスタ名
割込みコントロールレジスタ 00 ∼ 47
FUJITSU SEMICONDUCTOR LIMITED
参照先
12.3.1
CM71-10147-2
第 12 章 割込みコントローラ
12.3
MB91605A シリーズ
割込みコントロールレジスタ (ICR00 ∼ ICR47)
12.3.1
割込みレベルを設定するレジスタです。各割込みの入力に対して 1 つずつ設けられています。
割込みコントロールレジスタ (ICR00 ∼ ICR47) のビット構成を図 12.3-1 に示します。
図 12.3-1 割込みコントロールレジスタ (ICR00 ∼ ICR47) のビット構成
bit
属性
7
6
5
4
3
2
1
0
IL3
IL2
IL1
IL0
未定義
R/W
未定義
R/W
未定義
R/W
IL4
R
R/W
R/W
R/W
R/W
1
1
1
1
1
1
1
1
初期値
R/W:リード / ライト可能
R
:リードオンリ
[bit7 ∼ bit5]:未定義ビット
CM71-10147-2
書込み時
無視されます。
読出し時
"1" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
189
第 12 章 割込みコントローラ
12.3
MB91605A シリーズ
[bit4 ∼ bit0]:IL4 ∼ IL0 ( 割込みレベルコントロールビット )
割込み要求の割込みレベルを指定します。
リセットされると IL4 ∼ IL0=11111 ("11111B" は「レベル 31 割込み禁止」) に初期化さ
れます。
IL4
IL3
IL2
IL1
IL0
1
0
0
0
0
16
1
0
0
0
1
17
1
0
0
1
0
18
1
0
0
1
1
19
1
0
1
0
0
20
1
0
1
0
1
21
1
0
1
1
0
22
1
0
1
1
1
23
1
1
0
0
0
24
1
1
0
0
1
25
1
1
0
1
0
26
1
1
0
1
1
27
1
1
1
0
0
28
1
1
1
0
1
29
1
1
1
1
0
30
設定可能な最弱レベル
1
1
1
1
1
31
割込み禁止
割込みレベル
設定可能な最強レベル
(強)
(弱)
< 注意事項 >
190
•
このレジスタに設定した割込みレベルが , CPU の割込みレベルマスクレジスタ (ILM)
のマスクレベル値より弱い場合は , CPU 側で割込み要求がマスクされます。
•
NMI 要求発生時 , 割込みレベルは 15("01111B") を示します。
•
周辺機能によって , 割込みレベルを設定する割込みコントロールレジスタ (ICR00 ∼
ICR47) が異なります。周辺機能と割込みコントロールレジスタ (ICR00 ∼ ICR47) の
対応については , 「付録 C 割込みベクタ」を参照してください。
•
IL4 ビットは "1" 固定で , IL3 ∼ IL0 のみ設定が可能です。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 12 章 割込みコントローラ
12.4
12.4 動作説明と設定手順例
割込みコントローラの動作について説明します。
12.4.1
割込みコントローラの動作説明
割込みコントローラの 3 つの動作について説明します。
•
割込みコントロールレジスタ (ICR00 ∼ ICR47) を使った割込みレベルの指定
•
割込み要求の優先度判定
•
スリープモード / ストップモードからの復帰要求の生成
■ 割込みレベルの指定
割込みコントロールレジスタ (ICR00 ∼ ICR47) を使った割込みレベルの設定手順を示
します。
1. 割込み要求を発生させたい周辺機能に対応する割込みベクタ番号の割込みコン
トロールレジスタ (ICR00 ∼ ICR47) に割込みレベルを設定する。
割込みベクタ番号と割込み要求の対応については , 「付録 C 割込みベクタ」を
参照してください。
2. 割込み要求を発生させたい周辺機能側で , 割込み要求の発生を許可する。
3. 設定した周辺機能を起動する。
■ 割込み要求の優先度判定
割込みコントローラは , 同時に発生している割込み要求の中から , 最も優先度の高い割
込み要求の割込みレベルと割込みベクタ番号を CPU へ送ります。
割込み要求の優先順位判定基準を , 判定の順に示します。
1. NMI
2. 割込みレベルが "30" 以下の割込み要求か。( レベル 31 は「割込み禁止」です。)
3. 割込みレベルの数値が最も小さい割込み要求か。
4. 割込みレベルが同じ場合は , その中で割込みベクタ番号が最も小さい割込み要
求か。
上記の判定基準にあてはまる割込み要求がなかった場合は , CPU に割込み要求がない
ことを示す割込みレベル "31" (11111B) を出力します。
■ スリープモードからの復帰要求の生成
割込みレベルが "31" 以外の割込み要求が発生すると , クロック制御部に対して , スリー
プモードからの復帰要求を発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
191
第 12 章 割込みコントローラ
12.4
MB91605A シリーズ
■ ストップモードからの復帰要求の生成
NMI または外部割込みから , 割込みレベルが "31" 以外の割込み要求が発生すると , ク
ロック制御部に対して , ストップモードからの復帰要求を発生します。
ストップから復帰後 , 割込み優先判定回路は , クロックの供給が開始してから動作を再
開するので , 割込み優先判定回路の結果が出るまでは , CPU は命令を実行しています。
< 注意事項 >
ストップモードからの復帰要因として使用しない割込みには , 対応する割込みコントロー
ルレジスタ (ICR00 ∼ ICR47) で割込みレベルを "31" ( 割込み禁止 ) に設定してください。
192
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 12 章 割込みコントローラ
12.5
12.5 使用上の注意
割込みコントローラを使用する際は , 次の点に注意してください。
■ プログラムに関する注意
•
スリープモード / ストップモードからの復帰要求を発生したくない割込み要求には ,
対応する割込みコントロールレジスタ (ICR00 ∼ ICR47) で割込みレベルを "31" ( 割
込み禁止 ) に設定してください。
■ 動作に関する注意
•
割込みコントロールレジスタ (ICR00 ∼ ICR47) に設定した割込みレベルが , CPU の
割込みレベルマスクレジスタ (ILM) のレベルマスク値より弱い場合は , CPU 側で割
込み要求がマスクされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
193
第 12 章 割込みコントローラ
12.5
194
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 13 章 NMI 入力
NMI 入力の機能と動作について説明します。
13.1 概要
13.2 動作説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
195
第 13 章 NMI 入力
13.1
MB91605A シリーズ
13.1 概要
NMI(Non Maskable Interrupt) は , NMI 端子から入力されるマスクすることができない割込み
入力です。
■ 概要
NMI はストップモードからの復帰要因として使用できます。
■ ブロック図
NMI のブロックダイヤグラムを図 13.1-1 に示します。
図 13.1-1 NMI のブロックダイヤグラム
NMI要求
NMI受付け
または
リセット
196
S
Q
NMIフラグ
通常
モード
立下り
エッジ検出
NMI
R
ストップ
モード
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 13 章 NMI 入力
13.2
MB91605A シリーズ
13.2 動作説明
NMI の動作について説明します。
■ NMI について
NMI は , ユーザ割込みの中で最強の割込みで , マスクすることは不可能です。例外とし
て , リセット後 CPU が割込みレベルマスクレジスタ (ILM) を設定するまで NMI はマス
クされます。
■ NMI 要求の受付けレベル
NMI の受付けレベルは , ストップモード遷移中は「L レベル検出」, それ以外の時は
「立下りエッジ検出」となります。
■ 割込み要求出力
NMI 要求検出部は NMI フラグがあり , NMI 要求によりセットされ , NMI 自身の割込み
受付け , またはリセットでのみクリアされます。NMI フラグは読込み / 書込みができま
せん。
■ ストップモードからの復帰
ストップモードに遷移しているとき , NMI 端子の入力が "L" レベルで , NMI 要求が割
込みコントローラに出力され , ストップモードから復帰します。通常状態 ( ストップ
モードではないとき ) で NMI 処理ルーチン終了後 , NMI 端子を "H" レベルに戻さずに
ストップモードに遷移すると,ストップモードへの遷移後すぐにストップから復帰して
しまいます ( 図 13.2-1 の [1])。ストップモード遷移前に NMI 端子を "H" レベルに戻し
て , ストップモード中に NMI 端子を "L" レベルにしてください ( 図 13.2-1 の [2])。
図 13.2-1 ストップモードからの復帰
動作状態
[1]
NMI 処理
ルーチン
RUN
RUN
STOP
RUN
NMI 端子
からの入力
STOP 遷移後すぐに "L" レベル検出で
STOP から復帰してしまう
動作状態
[2]
CM71-10147-2
NMI 端子
からの入力
RUN
STOP
RUN
立下りエッジ後の "L" レベルで
STOP から復帰する
FUJITSU SEMICONDUCTOR LIMITED
197
第 13 章 NMI 入力
13.2
198
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 14 章 割込み要求一括
読出し機能
割込み要求一括読出し機能について説明します。
14.1 概要
14.2 構成
14.3 レジスタ
14.4 使用上の注意
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
199
第 14 章 割込み要求一括読出し機能
14.1
MB91605A シリーズ
14.1 概要
割込み要求一括読出し機能は, 1つの割込みベクタ番号に割り当てられた複数の割込み要求を
一括で読み出す機能です。
FR80 ファミリ CPU のビットサーチ命令を使用することで , どの割込み要求が発生している
のかを素早く確認できます。
この機能を使用すると , 1 つの割込みベクタ番号を兼用している割込み要求が発生して
いるかどうかを一度で確認できます。
ただし , この機能で割込み要求フラグをクリアすることはできません。割込み要求フラ
グは , 各周辺機能のレジスタでクリアしてください。
200
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 14 章 割込み要求一括読出し機能
14.2
MB91605A シリーズ
14.2 構成
割込み要求一括読出し機能の構成を示します。
■ 割込み要求一括読出し機能のブロックダイヤグラム
割込み要求一括読出し機能のブロックダイヤグラムを図 14.2-1 に示します。
図 14.2-1 割込み要求一括読出し機能のブロックダイヤグラム
割込み要求
割込み要求
一括読出し
周
辺
バ
ス
レジスタ
(IRPR0H)
16 ビット
各周辺機能から
■ クロック
クロック名
動作クロック
CM71-10147-2
内容
周辺クロック (PCLK)
FUJITSU SEMICONDUCTOR LIMITED
201
第 14 章 割込み要求一括読出し機能
14.3
MB91605A シリーズ
14.3 レジスタ
割込み要求一括読出し機能で使用するレジスタの構成と機能について説明します。
■ 割込み要求一括読出し機能のレジスタ一覧
割込み要求一括読出し機能のレジスタ一覧を表 14.3-1 に示します。
表 14.3-1 割込み要求一括読出し機能のレジスタ一覧
レジスタ略称
IRPR0H
202
レジスタ名
割込み要求一括読出しレジスタ 0 上位
FUJITSU SEMICONDUCTOR LIMITED
参照先
14.3.1
CM71-10147-2
第 14 章 割込み要求一括読出し機能
14.3
MB91605A シリーズ
割込み要求一括読出しレジスタ 0 上位(IRPR0H)
14.3.1
割込みベクタ番号 57(10 進 ) は , ベースタイマ ch.8/ch.9/ch.10/ch.11 に兼用されています。こ
のレジスタを読み出すと , 割込み要求が発生したチャネルや割込み要求の種類を確認できま
す。
割込み要求一括読出しレジスタ 0 上位(IRPR0H)のビット構成を図 14.3-1 に示します。
図 14.3-1 割込み要求一括読出しレジスタ 0 上位(IRPR0H)のビット構成
bit
15
14
13
12
11
10
9
8
BT0IR8
BT1IR8
BT0IR9
BT1IR9
BT0IR10
BT1IR10
BT0IR11
BT1IR11
属性
R
R
R
R
R
R
R
R
初期値
0
0
0
0
0
0
0
0
R:リードオンリ
割込み要求が発生すると , 発生した割込み要求に対応するビットが "1" に変わります。
ビット番号
ビット
bit15
BT0IR8
bit14
BT1IR8
bit13
BT0IR9
bit12
BT1IR9
bit11
BT0IR10
bit10
BT1IR10
bit9
BT0IR11
bit8
BT1IR11
値
0
説明
ベースタイマ ch.8 で割込み要求 0 なし
1
ベースタイマ ch.8 で割込み要求 0 あり
0
ベースタイマ ch.8 で割込み要求 1 なし
1
ベースタイマ ch.8 で割込み要求 1 あり
0
ベースタイマ ch.9 で割込み要求 0 なし
1
ベースタイマ ch.9 で割込み要求 0 あり
0
ベースタイマ ch.9 で割込み要求 1 なし
1
ベースタイマ ch.9 で割込み要求 1 あり
0
ベースタイマ ch.10 で割込み要求 0 なし
1
ベースタイマ ch.10 で割込み要求 0 あり
0
ベースタイマ ch.10 で割込み要求 1 なし
1
ベースタイマ ch.10 で割込み要求 1 あり
0
ベースタイマ ch.11 で割込み要求 0 なし
1
ベースタイマ ch.11 で割込み要求 0 あり
0
ベースタイマ ch.11 で割込み要求 1 なし
1
ベースタイマ ch.11 で割込み要求 1 あり
割込み要求 0 および割込み要求 1 は , ベースタイマの使用方法によって異なります。
ベースタイマの使用方法
CM71-10147-2
割込み要求 0
割込み要求 1
16/32 ビットリロードタイマ
アンダフロー割込み要求
16 ビット PWM タイマ
アンダフロー割込み要求
トリガ割込み要求
デューティ一致割込み要求
16/32 ビット PWC タイマ
オーバフロー割込み要求
測定終了割込み要求
16 ビット PPG タイマ
アンダフロー割込み要求
トリガ割込み要求
FUJITSU SEMICONDUCTOR LIMITED
トリガ割込み要求
203
第 14 章 割込み要求一括読出し機能
14.4
MB91605A シリーズ
14.4 使用上の注意
割込み要求一括読出し機能を使用する際は , 次の点に注意してください。
■ 動作に関する注意
割込み要求一括読出しレジスタ (IRPR0) は , 書込みは無効です。割込み要求を取り下げ
たい場合は , 各機能のレジスタにある割込み要求フラグビットをクリアしてください。
204
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 15 章 遅延割込み
遅延割込みの機能と動作について説明します。
15.1 概要
15.2 構成
15.3 レジスタ
15.4 動作説明と設定手順例
15.5 使用上の注意
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
205
第 15 章 遅延割込み
15.1
MB91605A シリーズ
15.1 概要
遅延割込みは , リアルタイム OS で使用するタスク切換え用の割込みを発生するものです。
■ 概要
遅延割込みは , REALOS などのリアルタイム OS でのタスク切換え用の割込み要求を発
生するものです。遅延割込みを使用すると , ソフトウェアで CPU に対して割込み要求
を発生したり , 取り消したりすることができます。
206
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 15 章 遅延割込み
15.2
MB91605A シリーズ
15.2 構成
遅延割込みの構成を示します。
■ 遅延割込みのブロックダイヤグラム
遅延割込みのブロックダイヤグラムを図 15.2-1 に示します。
図 15.2-1 遅延割込みのブロックダイヤグラム
周辺バス
遅延割込み制御
レジスタ (DICR)
割込み要求
•
遅延割込み制御レジスタ (DICR)
遅延割込みを制御するレジスタです。
■ クロック
クロック名
動作クロック
CM71-10147-2
内容
周辺クロック (PCLK)
FUJITSU SEMICONDUCTOR LIMITED
207
第 15 章 遅延割込み
15.3
MB91605A シリーズ
15.3 レジスタ
遅延割込みで使用するレジスタの構成と機能について説明します。
■ 遅延割込みのレジスタ一覧
遅延割込みのレジスタ一覧を表 15.3-1 に示します。
表 15.3-1 遅延割込みのレジスタ一覧
レジスタ略称
DICR
208
レジスタ名
遅延割込み制御レジスタ
FUJITSU SEMICONDUCTOR LIMITED
参照先
15.3.1
CM71-10147-2
第 15 章 遅延割込み
15.3
MB91605A シリーズ
遅延割込み制御レジスタ (DICR)
15.3.1
遅延割込みを制御するレジスタです。
遅延割込み制御レジスタ (DICR) のビット構成を図 15.3-1 に示します。
図 15.3-1 遅延割込み制御レジスタ (DICR) のビット構成
bit
属性
7
6
5
4
3
2
1
0
未定義
R/W
未定義
R/W
未定義
R/W
未定義
R/W
未定義
R/W
未定義
R/W
未定義
R/W
DLYI
1
1
1
1
1
1
1
0
初期値
R/W
R/W:リード / ライト可能
[bit7 ∼ bit1]:未定義ビット
書込み時
無視されます。
読出し時
"1" が読み出されます。
[bit0]:DLYI ( 遅延割込み制御ビット )
遅延割込み要求の発生と解除を設定します。
書込み値
説明
0
遅延割込み要因の解除または要求なし
1
遅延割込み要求の発生
< 注意事項 >
このビットは , ほかの割込み要求フラグと同じです。割込み処理ルーチンの中でこのビッ
トをクリアして , 合わせてタスクを切り換えてください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
209
第 15 章 遅延割込み
15.4
MB91605A シリーズ
15.4 動作説明と設定手順例
遅延割込みの動作と設定手順について説明します。
遅延割込みの動作説明
15.4.1
遅延割込みを使用すると , CPU に対してソフトウェアで , タスク切り換え用の割込み要
求を発生したり , 取り消したりできます。
遅延割込みが発生する条件を表 15.4-1 に示します。
表 15.4-1 割込み要求発生条件
割込み要求
遅延割込み要求
割込み要求の発生
遅延割込み制御レジスタ (DICR) の DLYI ビットに "1" を書き込
む
割込み要求許可
なし ( 常に許可 )
割込み要求のクリア 遅延割込み制御レジスタ (DICR) の DLYI ビットに "0" を書き込
む
< 注意事項 >
210
•
遅延割込みは , DMA 転送要求に使用できません。
•
割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してください。
•
割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR47)
で設定します。割込みレベルの設定については , 「第 12 章 割込みコントローラ」を
参照してください。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 15 章 遅延割込み
15.5
15.5 使用上の注意
遅延割込みを使用する際は , 次の点に注意してください。
■ プログラムに関する注意
•
遅延割込み制御ビットは , ほかの割込み要求フラグと同じです。割込みルーチンの
中でこのビットをクリアして , 合わせてタスクを切り換えてください。
•
CM71-10147-2
遅延割込みは , DMA 転送要求に使用できません。
FUJITSU SEMICONDUCTOR LIMITED
211
第 15 章 遅延割込み
15.5
212
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス
インタフェース
外部バスインタフェースの機能と動作について説
明します。
16.1 概要
16.2 構成
16.3 レジスタ
16.4 レジスタ設定例
16.5 使用上の注意
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
213
第 16 章 外部バス インタフェース
16.1
MB91605A シリーズ
16.1 概要
外部バスインタフェースは , 本デバイスと外部装置 ( メモリ・IO デバイスなど ) とを接続し
てデータの入出力を行うバスインタフェースです。
■ 概要
外部バスインタフェースの特長を示します。
8 本の CS 領域
CS0 ∼ CS6:SRAM/FLASH 領域
8 ビット・16 ビットバス幅に対応。
256M バイトのアドレス空間。
キャッシュ非対象に設定可能な 256M バイトのミラー空間。
セパレートバス・マルチプレックスバス対応。
1 領域当たり最大 128M バイト。
各 CS 領域ごとに RDY 入力を設定可能。
CS8:SDRAM 専用領域
64M バイトのアドレス空間。
キャッシュ非対象に設定可能な 64M バイトのミラー空間。
16 ビットバス幅のみ対応。
CAS レイテンシ:1 ∼ 3 を選択可能。
ページサイズ:最大 1K バイト。
クロック分周機能
オンチップバスに対して , 1:1 ∼ 1:4 のクロックを設定可能。
214
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.2
MB91605A シリーズ
16.2 構成
外部バスインタフェースの構成を示します。
■ 接続例
外部バスインタフェースの接続例を図 16.2-1 に示します。
図 16.2-1 外部バスインタフェースの接続例
MB91605A
SDRAM
MCLK
CLK
MCLKE
CKE
CSX
CS8
A[23:0]
A[15:14]
A[13:0]
BA[1:0]
AD[13:0]
MRAS
RASX
MCAS
CASX
WEX
MDWE
MDQM[3:2]
DQM[1:0]
DQI[15:0]
D[31:16]
FLASH
CS4
CEX
A[20:1]
A[19:0]
D[15:0]
BYTEX
WEX
OEX
MPX device
CS0
CEX
AS
ALE
D[31:24]
AD[7:0]
WEX
OEX
SRAM
CEX
CS1
A[16:1]
A[15:0]
DQM[1:0]
D[15:0]
RD
OEX
WE
WEX
※リセット直後 , BOOT 領域は CS4 に割り当てられています。
※ MDQM3 は D[31:24], MDQM2 は D[23:16] のバイトイネーブル出力端子です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
215
第 16 章 外部バス インタフェース
16.2
MB91605A シリーズ
■ メモリマップ
メモリマップを図 16.2-2 に示します。
図 16.2-2 メモリマップ
0000 0000H
I/O
0002 0000H
0004 0000H
内蔵 RAM
BOOT AREA
0100 0000H
SRAM/FLASH
1000 0000H
2000 0000H
SDRAM
2400 0000H
4000 0000H
SRAM/FLASH*
5000 0000H
6000 0000H
SDRAM
6400 0000H
* 40002000H ~ 40002FFFH には
外部バスインタフェースの
レジスタのミラーが見えます。
アクセス禁止領域
※リセット直後 , BOOT 領域は CS4 に割り当てられています。
216
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
16.3 レジスタ
外部バスインタフェースで使用するレジスタの構成と機能について説明します。
■ 外部バスインタフェースのレジスタ一覧
外部バスインタフェースのレジスタ一覧を表 16.3-1 に示します。
表 16.3-1 外部バスインタフェースのレジスタ一覧
SRAM/FLASH 制御レジスタ
CM71-10147-2
レジスタ略称
MCMR0
SRAM/FLASH モードレジスタ 0
レジスタ名
参照先
16.3.1
MCMR1
SRAM/FLASH モードレジスタ 1
16.3.1
MCMR2
SRAM/FLASH モードレジスタ 2
16.3.1
MCMR3
SRAM/FLASH モードレジスタ 3
16.3.1
MCMR4
SRAM/FLASH モードレジスタ 4
16.3.1
MCMR5
SRAM/FLASH モードレジスタ 5
16.3.1
MCMR6
SRAM/FLASH モードレジスタ 6
16.3.1
MCMR7
SRAM/FLASH モードレジスタ 7( 予約 )
16.3.1
MCTR0
SRAM/FLASH タイミングレジスタ 0
16.3.2
MCTR1
SRAM/FLASH タイミングレジスタ 1
16.3.2
MCTR2
SRAM/FLASH タイミングレジスタ 2
16.3.2
MCTR3
SRAM/FLASH タイミングレジスタ 3
16.3.2
MCTR4
SRAM/FLASH タイミングレジスタ 4
16.3.2
MCTR5
SRAM/FLASH タイミングレジスタ 5
16.3.2
MCTR6
SRAM/FLASH タイミングレジスタ 6
16.3.2
MCTR7
SRAM/FLASH タイミングレジスタ 7( 予約 )
16.3.2
MCAR0
SRAM/FLASH エリアレジスタ 0
16.3.3
MCAR1
SRAM/FLASH エリアレジスタ 1
16.3.3
MCAR2
SRAM/FLASH エリアレジスタ 2
16.3.3
MCAR3
SRAM/FLASH エリアレジスタ 3
16.3.3
MCAR4
SRAM/FLASH エリアレジスタ 4
16.3.3
MCAR5
SRAM/FLASH エリアレジスタ 5
16.3.3
MCAR6
SRAM/FLASH エリアレジスタ 6
16.3.3
MCAR7
SRAM/FLASH エリアレジスタ 7( 予約 )
16.3.3
FUJITSU SEMICONDUCTOR LIMITED
217
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SDRAM 制御レジスタ
レジスタ略称
SDMR
レジスタ名
SDRAM モードレジスタ
参照先
16.3.4
SDRTR
SDRAM リフレッシュタイマレジスタ
16.3.5
SDPDR
SDRAM パワーダウンカウントレジスタ
16.3.6
SDTR
SDRAM タイミングレジスタ
16.3.7
SDCMR
SDRAM コマンドレジスタ
16.3.8
クロック制御レジスタ
レジスタ略称
CLKCTL
レジスタ名
参照先
16.3.9
クロックコントロールレジスタ
SRAM/FLASH モードレジスタ (MCMRx)
16.3.1
SRAM/FLASH モードレジスタ (MCMRx) のビット構成を図 16.3-1 に示します。
図 16.3-1 SRAM/FLASH モードレジスタ (MCMRx) のビット構成
bit 31
8
予約
属性
−
初期値
−
bit
7
6
5
4
3
2
予約
RDY
予約
MPX
WEOFF
RBMON
WDTH
−
R/W
−
R/W
R/W
R/W
R/W
属性
初期値
1
0
* CS 領域により異なる
R/W:リード / ライト可能
*:初期値は次のとおりです。
CS 領域
初期値
CS0 ∼ CS3
--00_0000
CS4
--00_0001
CS5 ∼ CS6
--00_0000
< 注意事項 >
このレジスタは 32 ビットアクセスのみ可能です。
218
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 31 ∼ bit 7]:予約ビット
[bit 6]:RDY
外部 RDY を許可するビットです。
書込み値
説明
0
RDY 無効
1
RDY 有効
< 注意事項 >
RDY を有効にする場合は , RADC/WADC を 3 サイクル以上に設定してください。
[bit 5]:予約ビット
"0" を書き込んでください。
[bit 4]:MPX
マルチプレックスバスモードを選択するビットです。
書込み値
説明
0
セパレートバスモード
1
アドレス・データマルチプレックスモード
< 注意事項 >
非同期マルチプレックスモードを使用する場合は , アドレス出力サイクルを確保するため
に , RADC/WADC を 2 サイクル以上に設定してください。
[bit 3]:WEOFF
WE 出力を制御するビットです。
書込み値
説明
0
WE 出力許可
1
WE 出力禁止
< 注意事項 >
本ビットで WE 出力禁止とした場合 , 該当 CS 領域への書込み時のキャッシュとのコヒー
レンシは保証されません。キャッシュ対象領域で出力禁止とする場合は注意してくださ
い。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
219
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 2]:RBMON
リードアクセス時にバイトマスク信号 MDQM 出力を許可するビットです。
書込み値
説明
0
MDQM 出力禁止
1
MDQM 出力許可
•
ライト時
RBMON に関わらず , 常にバイトイネーブルが有効です。
•
リード時
RBMON=1 のときのみバイトイネーブルがバイトごとに制御されます。
RBMON=0 のときは全ビットイネーブルです ( バイト幅分のビットを全部読み出す )。
[bit 1, bit 0]:WDTH
該当 CS 領域のバス幅を設定するビットです。
書込み値
220
説明
00
8 ビット
01
16 ビット
10
32 ビット ( 設定禁止 )
11
予約 ( 設定禁止 )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SRAM/FLASH タイミングレジスタ (MCTRx)
16.3.2
SRAM/FLASH タイミングレジスタ (MCTRx) のビット構成を図 16.3-2 に示します。
図 16.3-2 SRAM/FLASH タイミングレジスタ (MCTRx) のビット構成
bit 31
30
29
28
27
WIDLC
26
25
24
23
WWEC
22
21
20
19
WADC
18
17
16
WACC
R/W
属性
0
0
0
0
0
1
0
1
0
1
0
1
1
1
1
1
bit 15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
初期値
RIDLC
RACC
R/W
属性
初期値
RADC
予約
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
R/W:リード / ライト可能
< 注意事項 >
•
このレジスタは 32 ビットアクセスのみ可能です。
•
MCTR を変更したアクセスの次のアクセスから設定が有効になります。
確実に設定が有効になったあとにアクセスするためには , 外バスレジスタ書込みをダ
ミーリードしてください。
[bit 31 ∼ bit 28]:WIDLC
ライト後アイドルサイクルのサイクル数を設定します。
書込み値
0
1
説明
1 サイクル
2 サイクル
∼
∼
15
16 サイクル
[bit 27 ∼ bit 24]:WWEC
ライトストローブ信号のアサート幅を設定します。
書込み値
0
説明
1 サイクル
∼
∼
5
6 サイクル
∼
∼
CM71-10147-2
14
15 サイクル
15
予約 ( 設定禁止 )
FUJITSU SEMICONDUCTOR LIMITED
221
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 23 ∼ bit 20]:WADC
ライト時のアドレスセットアップサイクル数を設定します。
書込み値
0
説明
1 サイクル
∼
∼
5
6 サイクル
∼
∼
14
15 サイクル
15
予約 ( 設定禁止 )
[bit 19 ∼ bit 16]:WACC
ライト時のアクセスサイクルを設定します。
書込み値
0
1 サイクル ( 設定禁止 )
説明
1
2 サイクル
∼
∼
15
16 サイクル
< 注意事項 >
WACC に設定するサイクル数は , WWEC と WADC に設定したサイクル数の和以上のサ
イクル数を設定してください。
[bit 15 ∼ bit 12]:RIDLC
リード後アイドルサイクルのサイクル数を設定します。
書込み値
0
説明
1 サイクル
1
2 サイクル
∼
∼
15
16 サイクル
[bit 11 ∼ bit 8]:予約ビット
"0" を書き込んでください。
222
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 7 ∼ bit 4]:RADC
リード時のアドレスセットアップサイクル数を設定します。
書込み値
0
説明
0 サイクル
∼
∼
5
5 サイクル
∼
∼
15
15 サイクル
< 注意事項 >
AS を使用する場合は , 1 サイクル以上を設定してください。
[bit 3 ∼ bit 0]:RACC
リード時のアクセスサイクルを設定します。
書込み値
0
1 サイクル
説明
1
2 サイクル
∼
∼
15
16 サイクル
< 注意事項 >
RACC に設定するサイクル数は , RADC に設定したサイクル数を超えるサイクル数を設定
してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
223
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SRAM/FLASH エリアレジスタ (MCARx)
16.3.3
SRAM/FLASH エリアレジスタ (MCARx) のビット構成を図 16.3-3 に示します。
図 16.3-3 SRAM/FLASH エリアレジスタ (MCARx) のビット構成
bit 31
30
29
28
27
26
25
24
23
22
21
20
予約
属性
−
初期値
−
bit 15
14
13
12
11
19
18
17
16
1
1
1
2
1
0
MASK
0
0
0
1
R/W
10
9
8
7
6
5
4
3
予約
ADDR
属性
−
R/W
初期値
−
* CS 領域により異なる
R/W:リード / ライト可能
*:初期値は次のとおりです。
CS 領域
初期値
CS0
0100_0000
CS1
0001_0000
CS2
0010_0000
CS3
0011_0000
CS4
0000_0000
CS5
0101_0000
CS6
0110_0000
CS7
0111_0000
ADDR が領域の開始アドレスで , MASK が領域サイズに相当します。
< 注意事項 >
このレジスタは 32 ビットアクセスのみ可能です。
[bit 31 ∼ bit 23]:予約ビット
[bit 22 ∼ bit 16]:MASK
CS 領域のアドレスマスクを設定します。
アクセスアドレス bit26 ∼ bit20 と下記 ADDR ビットの設定値と比較するビットを "0",
比較しないビット ( マスクビット ) を "1" に設定します。すべて "0" のときは全ビット
を比較します。すべて "1" のときは bit27 のみ比較します。
224
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
設定例
000_0000
1M バイト
000_0001
2M バイト
000_0011
4M バイト
000_0111
8M バイト
000_1111
16M バイト
001_1111
32M バイト
011_1111
64M バイト
111_1111
128M バイト
[bit 15 ∼ bit 8]:予約ビット
[bit 7 ∼ bit 0]:ADDR
CS 領域の上位アドレス bit27 ∼ bit20 の比較アドレスを設定します。
各 CS 領域の初期値
初期値でのアドレス範囲
CS0
0100_0000
0x0400_0000 ∼ 0x04FF_FFFF
0x4400_0000 ∼ 0x44FF_FFFF
CS1
0001_0000
0x0100_0000 ∼ 0x01FF_FFFF
0x4100_0000 ∼ 0x41FF_FFFF
CS2
0010_0000
0x0200_0000 ∼ 0x02FF_FFFF
0x4200_0000 ∼ 0x42FF_FFFF
CS3
0011_0000
0x0300_0000 ∼ 0x03FF_FFFF
0x4300_0000 ∼ 0x43FF_FFFF
CS4
0000_0000
0x0004_0000 ∼ 0x00FF_FFFF( ※ 1)
0x4000_0000 ∼ 0x40FF_FFFF
CS5
0101_0000
0x0500_0000 ∼ 0x05FF_FFFF
0x4500_0000 ∼ 0x45FF_FFFF
CS6
0110_0000
0x0600_0000 ∼ 0x06FF_FFFF
0x4600_0000 ∼ 0x46FF_FFFF
CS7( ※ 2)
0111_0000
0x0700_0000 ∼ 0x07FF_FFFF
0x4700_0000 ∼ 0x47FF_FFFF
※ 1 初期値では , BOOT 領域は CS4 領域に割り当てられています。
※ 2 CS7 端子は存在しませんが , 領域設定は必ず行ってください。
< 注意事項 >
各領域は , 必ず重ならないように設定してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
225
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SDRAM モードレジスタ (SDMRx)
16.3.4
SDRAM モードレジスタ (SDMRx) のビット構成を図 16.3-4 に示します。
図 16.3-4 SDRAM モードレジスタ (SDMRx) のビット構成
bit 31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
予約
属性
−
初期値
−
bit 15
14
13
12
11
BASEL
9
8
RASEL
7
予約
R/W
属性
初期値
10
0
0
0
1
0
CASEL
予 ROFF PDON SDON
約
R/W
0
−
−
0
1
1
−
−
0
0
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタは 32 ビットアクセスのみ可能です。
[bit 31 ∼ bit 16]:予約ビット
[bit 15 ∼ bit 12]:BASEL
A[15:14] 端子に出力される BANK アドレスのビット位置を選択します。
書込み値
226
説明
0000
bit20, bit19
0001
bit21, bit20
0010
bit22, bit21
0011
bit23, bit22
0100
bit24, bit23
0101
bit25, bit24
0110
bit26, bit25
0111 ∼ 1111
設定禁止
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 15 ∼ bit 8]:RASEL
A[13:0] 端子に出力される ROW アドレスのビット位置を選択します。
書込み値
説明
0000
bit19 ∼ bit6
0001
bit20 ∼ bit7
0010
bit21 ∼ bit8
0011
bit22 ∼ bit9
0100
bit23 ∼ bit10
0101
bit24 ∼ bit11
0110 ∼ 1111
設定禁止
[bit 7, bit 6]:予約ビット
[bit 5, bit 4]:CASEL
A[9:0] 端子に出力される COLUMN アドレスのビット位置を選択します。
書込み値
説明
00
bit10 ∼ bit1
01 ∼ 11
設定禁止
31
30 29 28 27 26 25
24 23 22
21 20 19 18 17
16 15
14 13 12 11 10
9
8
7
6
5
4
3
2
1
0
CAS
RAS
RAS
RAS
RAS
RAS
RAS
BANK
BANK
BANK
BANK
BANK
BANK
BANK
CM71-10147-2
BASEL
= 0000
BASEL
= 0001
BASEL
= 0010
BASEL
= 0011
BASEL
= 0100
BASEL
= 0101
BASEL
= 0110
FUJITSU SEMICONDUCTOR LIMITED
RASEL
= 0000
RASEL
= 0001
RASEL
= 0010
RASEL
= 0011
RASEL
= 0100
RASEL
= 0101
227
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 3]:予約ビット
[bit 2]:ROFF
SDRAM コマンドレジスタ (SDCMR) へアクセスしている間 , リフレッシュを停止させ
ます。
書込み値
説明
0
リフレッシュ許可
1
リフレッシュ停止
[bit 1]:PDON
パワーダウンカウンタで設定した時間を経過すると SDRAM をパワーダウンモードに
します。
書込み値
説明
0
パワーダウン無し
1
パワーダウン許可
[bit0]:SDON
SDRAM アクセスを許可します。
書込み値
説明
0
アクセス禁止
1
アクセス許可
< 注意事項 >
このビットを "1" にすると , SDRAM へモードデータの転送が行われます。
このレジスタを設定する前に , 他の SDRAM 制御レジスタを設定してください。
228
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SDRAM リフレッシュタイマレジスタ (SDRTRx)
16.3.5
SDRAM リフレッシュタイマレジスタ (SDRTRx) のビット構成を図 16.3-5 に示します。
図 16.3-5 SDRAM リフレッシュタイマレジスタ (SDRTRx) のビット構成
bit 31
30
29
28
27
26
25
24
23
22
21
20
19
予約
PREF
属性
−
R/W
R/W
初期値
−
0
0
bit 15
14
13
12
11
10
9
8
7
NREF
18
17
16
6
5
4
3
2
1
0
0
1
0
1
0
0
0
REFC
R/W
属性
初期値
0
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタは 32 ビットアクセスのみ可能です。
[bit 31 ∼ bit 25]:予約ビット
[bit 24]:PREF
Pre-Refresh を許可するビットです。
書込み値
説明
0
なし
1
あり
[bit 23 ∼ bit 16]:NREF
リフレッシュインターバル毎に発行されるリフレッシュコマンドの回数を設定する
ビットです。
書込み値
0000_0000
説明
1回
CM71-10147-2
∼
∼
1111_1111
256 回
FUJITSU SEMICONDUCTOR LIMITED
229
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 15 ∼ bit 0]:REFC
リフレッシュインターバルを設定するビットです。
書込み値
説明
0000H ∼ 0009H
予約 ( 設定禁止 )
0028H
40 サイクル
FFFFH
65536 サイクル
SDRAM のデータシートに , リフレッシュインターバルが 4096cycles/64ms とある場合 ,
以下の条件になるように REFC と NREF を設定してください。
64 × 10-3[s] × MCLK[Hz]/4096[cyc] ≧ (REFC)/(NREF+1)
SDRAM パワーダウンカウントレジスタ (SDPDRx)
16.3.6
SDRAM パワーダウンカウントレジスタ (SDPDRx) のビット構成を図 16.3-6 に示しま
す。
図 16.3-6 SDRAM パワーダウンカウントレジスタ (SDPDRx) のビット構成
bit 31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
6
5
4
3
2
1
0
予約
属性
−
初期値
−
bit 15
14
13
12
11
10
9
8
7
PDC
R/W
属性
0
初期値
R/W:リード / ライト可能
< 注意事項 >
このレジスタは 32 ビットアクセスのみ可能です。
[bit 31 ∼ bit 16]:予約ビット
[bit 15 ∼ bit 0]:PDC
パワーダウンカウンタのカウント値を設定するビットです。
書込み値
0000H
説明
0回
230
∼
∼
FFFFH
65535 回
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SDRAM タイミングレジスタ (SDTRx)
16.3.7
SDRAM タイミングレジスタ (SDTRx) のビット構成を図 16.3-7 に示します。
図 16.3-7 SDRAM タイミングレジスタ (SDTRx) のビット構成
bit 31
30
29
28
27
26
25
予約
属性
24
23
TDPL
22
21
20
19
18
TREFC
17
16
TRAS
R/W
−
−
−
−
−
−
−
0
0
0
1
0
0
0
0
1
0
bit 15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
初期値
TRCD
TRP
属性
初期値
TRC
予約
CL
−
R/W
R/W
0
0
0
1
0
0
0
1
0
1
0
0
−
−
0
1
R/W:リード / ライト可能
< 注意事項 >
このレジスタは 32 ビットアクセスのみ可能です。
[bit 31 ∼ bit 26]:予約ビット
[bit 25, bit 24]:TDPL
ライトからプリチャージまでのレイテンシを設定するビットです。
CM71-10147-2
書込み値
00
1 サイクル
説明
01
2 サイクル
10
3 サイクル
11
4 サイクル
FUJITSU SEMICONDUCTOR LIMITED
231
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 23 ∼ bit 20]:TREFC
コマンドからリフレッシュまでのレイテンシを設定するビットです。
書込み値
0000
説明
1 サイクル
∼
∼
0100
5 サイクル
∼
∼
0111
1000
1111
8 サイクル
∼
予約 ( 設定禁止 )
[bit 19 ∼ bit 16]:TRAS
RAS アクティブタイムを設定するビットです。
書込み値
説明
0000
1 サイクル
0001
2 サイクル
0010
3 サイクル
∼
∼
0111
8 サイクル
1000 ∼ 1111
予約 ( 設定禁止 )
[bit 15 ∼ bit 12]:TRCD
RAS-CAS ディレイを設定するビットです。
書込み値
説明
0000
1 サイクル
0001
2 サイクル
0010 ∼ 1111
予約 ( 設定禁止 )
[bit 11 ∼ bit 8]:TRP
RAS プリチャージタイムを設定するビットです。
書込み値
232
説明
0000
1 サイクル
0001
2 サイクル
0010
3 サイクル
0011
4 サイクル
0100 ∼ 1111
予約 ( 設定禁止 )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 7 ∼ bit 4]:TRC
RAS サイクルタイムを設定するビットです。
書込み値
0000
説明
1 サイクル
∼
∼
0100
5 サイクル
∼
∼
0111
8 サイクル
1000 ∼ 1111
予約 ( 設定禁止 )
[bit 3, bit 2]:Reserved
予約ビットです。
[bit 1, bit 0]:CL
CAS レイテンシを設定するビットです。
書込み値
CM71-10147-2
説明
00
1 サイクル
01
2 サイクル
10
3 サイクル
11
予約 ( 設定禁止 )
FUJITSU SEMICONDUCTOR LIMITED
233
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
SDRAM コマンドレジスタ (SDCMRx)
16.3.8
SDRAM コマンドレジスタ (SDCMRx) のビット構成を図 16.3-8 に示します。
図 16.3-8 SDRAM コマンドレジスタ (SDCMRx) のビット構成
bit 31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
PEND
予約
SDCKE SDCS SDRAS SDCAS SDWE
属性
R
−
R/W
初期値
0
−
0
bit 15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
SDAD
R/W
属性
0
初期値
R/W:リード / ライト可能
R:リードオンリ
< 注意事項 >
•
このレジスタは 32 ビットアクセスのみ可能です。
•
本レジスタに書込みを行うと , SDRAM へコマンドが発行されます。
[bit 31]:PEND
アクセス要求 Pending 状態を示すビットです。
読出し値
0
アクセス可能
説明
1
アクセス抑止中
このレジスタへ書込みを行って SDRAM コマンド発行を行ったときに , 次のデータア
クセス要求が受けられる状態に戻ったかどうかを示します。
[bit 30 ∼ bit 21]:予約ビット
[bit 20]:SDCKE
MCLKE 端子に出す値を設定するビットです。
[bit 19]:SDCS
CS8 端子に出力する値を設定するビットです。
[bit 18]:SDRAS
MRAS 端子に出力する値を設定するビットです。
234
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.3
MB91605A シリーズ
[bit 17]:SDCAS
MCAS 端子に出力する値を設定するビットです。
[bit 16]:SDWE
MDWE 端子に出力する値を設定するビットです。
[bit 15 ∼ bit 0]:SDAD
アドレス端子に出力する値を設定するビットです。
各ビットの設定例
セルフリフレッシュコマンドを発行する場合
SDCKE=0, SDCS=0, SDRAS=0, SDCAS=0, SDWE=1
クロックコントロールレジスタ (CLKCTL)
16.3.9
クロックコントロールレジスタ (CLKCTL) のビット構成を図 16.3-9 に示します。
図 16.3-9 クロックコントロールレジスタ (CLKCTL) のビット構成
bit
31
30
29
28
27
26
25
CLKSEL
予約
属性
R/W
初期値
R/W
−
−
R/W
24
R/W
−
−
R/W
−
R/W
R/W
R/W
−
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタはバイトアクセスのみ可能です。
[bit 31 ∼ bit 26]:予約ビット
"0" を書き込んでください。
[bit 25, bit 24]:CLKSEL
外部バスのクロックを選択するビットです。
ベースクロックを分周したクロックが選択できます。
CM71-10147-2
書込み値
00
説明
1 分周 ( 非分周 )
01
2 分周
10
3 分周
11
4 分周
FUJITSU SEMICONDUCTOR LIMITED
235
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
16.4 レジスタ設定例
外部バスインタフェースのレジスタ設定例を示します。
236
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
SRAM/FLASH 領域のリードアクセス例
16.4.1
■ セパレートバス時の例
図 16.4-1 セパレートバス時の例 ( リードアクセス )
MCLK
RACC=0 (1cycle)
ADDR
0x00
RIDLC=0 (1cycle)
0x02
0x04
0x06
AS
RD
CS
RADC=0 (0cycle)
RD↑に対する
アドレスホールドは
保証できない
32bit アクセス時は
ネゲートしない
バス幅以上のサイズのアクセス時は
(分割アクセスの時は)
アイドルサイクルは入らない
RIDLC=0 (1cycle)
RACC=1 (2cycle)
ADDR
0x06
RACC=1 (2cycle)
0x0A
RACC=1 (2cycle)
RACC=1 (2cycle)
0x0C
0x0E
AS
RD
CS
RADC=0 (0cycle)
RADC=1 (1cycle)
アドレスセットアップを
設定すると RD ネゲートする
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
237
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
■ マルチプレックスバス時の例
図 16.4-2 マルチプレックスバス時の例 ( リードアクセス )
MCLK
idle
RACC=3(4cyc)
A
idle
RACC=3(4cyc)
Addr
Addr
CS
AS
RD
RADC=2(2cyc)
RADC=3(3cyc)
WE
D
238
Addr
R Data
Addr
FUJITSU SEMICONDUCTOR LIMITED
R Data
CM71-10147-2
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
SRAM/FLASH 領域のライトアクセス例
16.4.2
■ セパレートバス時の例
図 16.4-3 セパレートバス時の例 ( ライトアクセス )
MCLK
WACC=2 (3cycle)
WACC=3 (4cycle)
A
CS
WE
WADC=0 (1cyc)
WWEC=0 (1cyc)
D
不定
不定
WACC=3 (4cycle)
WACC=4 (5cycle)
A
CS
WE
WADC=1 (2cyc)
WADC=1 (2cyc)
D
不定
WACC=2 (4cycle)
A
1サイクル目のデータは不定
WRX↓に対してデータセットアップが
必要な場合は、WADC=1以上にする必要あり
CS
WE
WWEC=1 (2cyc)
WACC=2 (3cycle)
32bit ライト
A
CS
WE
WIDLC=0 (1cyc)
WIDLC=0 (1cyc)
WWEC=0 (1cyc)
バス幅以上のサイズのアクセス時は
(分割アクセスの時は)
アイドルサイクルは入らない
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
239
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
■ マルチプレックスバス時の例
図 16.4-4 マルチプレックスバス時の例 ( ライトアクセス )
MCLK
idle
WACC=3 [4cyc]
A
idle
WACC=4 [5cyc]
Addr
Addr
CS
AS
WWEC=0 [1cyc]
RD
data setup 1cycle
WWEC=0 [1cyc]
WE
WADC=1 [2cyc]
D
240
Addr
WADC=2 [3cyc]
WData
Addr
FUJITSU SEMICONDUCTOR LIMITED
WData
CM71-10147-2
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
■ RDY 入力の例 ( ライト )
図 16.4-5 RDY 入力の例 ( ライト )
MCLK
WACC=4(3/5cycle)
WACC=4(2/5cycle)
RDY延長
WADC=2(3cycle)
CS
ADDR
0x00
RDY 4cycle
WE
WWEC=0(1cyc)
RDY
ライトアクセスサイクル
WACC + RDYサイクル
CSネゲート以降
WEネゲート以前
にアサート
ライトイネーブルサイクル
WWEC + RDYサイクル
WE↓に対してセットアップ 2cycle必要
WACC=5(4/6cycle)
WADC=3(4cycle)
WACC=5(2/6cycle)
RDY延長
CS
ADDR
0x00
RDY 3cycle
WE
WWEC=0(1cyc)
RDY
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
241
第 16 章 外部バス インタフェース
16.4
MB91605A シリーズ
■ RDY 入力の例 ( リード )
図 16.4-6 RDY 入力の例 ( リード )
MCLK
RACC=3(3/4cycle)
RACC=3(1/4cycle)
RDY延長
RADC=3(3cycle)
CS
ADDR
0x00
RDY 4cycle
RD
RDY
リードアクセスサイクル
RACC + RDYサイクル
CSネゲート以降
RDネゲート以前
にアサート
RD↓に対してセットアップ 2cycle必要
RACC=4(4/5cycle)
RADC=4(4cycle)
RACC=4(1/5cycle)
RDY延長
CS
ADDR
0x00
RDY 3cycle
RD
RDY
242
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
16.4.3
第 16 章 外部バス インタフェース
16.4
SRAM/FLASH 領域のアドレス領域設定例
SRAM/FLASH 領域のアドレス領域設定例を表 16.4-1 に示します。
表 16.4-1 SRAM/FLASH 領域のアドレス領域設定例
CS 領域の設定例
アドレス範囲
容量
備考
CS0
ADDR:0100_0000
MASK:-000_1111
0x0400_0000∼0x04FF_FFFF
0x4400_0000∼0x44FF_FFFF
16M バイト
初期値
CS1
ADDR:0001_0000
MASK:-000_1111
0x0100_0000∼0x01FF_FFFF
0x4100_0000∼0x41FF_FFFF
16M バイト
初期値
CS2
ADDR:0010_0000
MASK:-000_1111
0x0200_0000∼0x02FF_FFFF
0x4200_0000∼0x42FF_FFFF
16M バイト
初期値
CS3
ADDR:0011_0000
MASK:-000_1111
0x0300_0000∼0x03FF_FFFF
0x4300_0000∼0x43FF_FFFF
16M バイト
初期値
CS4
ADDR:1000_0000
MASK:-111_1111
0x0800_0000∼0x0FFF_FFFF
0x4800_0000∼0x4FFF_FFFF
128M バイト
最大
容量
CS5
ADDR:0101_0000
MASK:-000_1111
0x0500_0000∼0x05FF_FFFF
0x4500_0000∼0x45FF_FFFF
16M バイト
初期値
CS6
ADDR:0110_0000
MASK:-000_1111
0x0600_0000∼0x06FF_FFFF
0x4600_0000∼0x46FF_FFFF
16M バイト
初期値
CS7( ※ )
ADDR:0111_0000
MASK:-000_1111
0x0700_0000∼0x07FF_FFFF
0x4700_0000∼0x47FF_FFFF
16M バイト
初期値
※ 端子は存在しませんが , 領域設定は必ず重ならないように設定してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
243
第 16 章 外部バス インタフェース
16.5
MB91605A シリーズ
16.5 使用上の注意
外部バスインタフェースを使用する際は , 次の点に注意してください。
•
AS は SRAM/FLASH 領域のみ出力可能です。AS 出力を使用するときは , 該当 CS 領
域のアドレスセットアップサイクル (RADC, WADC) を 1 サイクル以上に設定して
ください。AS アサート幅は 1 サイクル固定です。
•
アドレス・データマルチプレックスは SRAM/FLASH 領域のみ設定可能です。マル
チプレックスを使用するときは , 該当 CS 領域のアドレスセットアップサイクル
(RADC, WADC) を 2 サイクル以上に設定してください。アドレスサイクルは 2 サイ
クル固定です。
•
マルチプレックス設定のとき , バス幅を超えるリード (16 ビットバス幅への 32 ビッ
トリード等 ) を行った場合 , 最初のリードサイクルの直後 (RD ↑後 ) に次のアドレ
スサイクルが発生します。そのため , メモリからの読出しデータとアドレス出力が
一瞬バス衝突する可能性があります。
バス衝突を回避するためには , バス幅を超えるデータ幅のリードアクセスは行わな
いでください。バス幅以下のアクセスであれば , リード後にアイドルサイクルが入
るので , バス衝突は起こりません。
•
クロック分周の設定の切り替えは , 外部バスの動作とは同期していないので , メモ
リアクセス中にクロックが切り替わります。遅い周波数から速い周波数へ切り替え
るときは , アクセス速度が間に合うかどうか注意してください。
•
SRAM/FLASH エリアレジスタ (MCAR) で , 各 CS 領域は必ず重ならないように設定
してください。優先度判定が無いため , 複数の領域の CS が同時にアサートします。
CS7 領域は , 端子は存在しませんが , 領域が重ならないようにレジスタ設定は必ず
行ってください。
•
SRAM/FLASH タイミングレジスタ (MCTR) で , アクセスサイクル RACC と WACC
の設定サイクル数は , 下記のように設定してください。
-
RACC は , RADC で設定したアドレスサイクル数を超えるサイクル数になるよう
に設定してください。
-
WACC は , WADC と WWEC で設定したサイクル数の和以上のサイクル数になる
ように設定してください。
244
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
I/O ポートの機能と動作について説明します。
17.1 概要
17.2 構成
17.3 端子
17.4 レジスタ
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
245
第 17 章 I/O ポート
17.1
MB91605A シリーズ
17.1 概要
本製品の端子を外部バスインタフェースや周辺機能で利用しないときは , I/O ポートとして使
用することができます。
本製品では , 92 本の I/O ポートが用意されています。
■ 概要
I/O ポートには , 次の特長があります。
•
ポートごとにポートデータレジスタ (PDR) があり , 出力データを格納します。リ
セット後 , PDR レジスタの内容は初期化されません。
•
ポートごとにデータ方向レジスタ (DDR) があり , ポートの入出力方向を切り替えま
す。リセット後 , すべてのポートは入力となります (DDR=00H)。
•
各レジスタの設定により , 入出力モードを次の中から選択できます。入出力モード
を表 17.1-1 に示します。
246
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.1
MB91605A シリーズ
表 17.1-1 入出力モード
入出力モード
ポート入力モード
PFR
DDR
0
0
PDR へのアクセス
読出し時 (RMW 系命令
以外 )
対応する外部端子のレベ
ルが読み出されます。
読出し時(RMW系命令) PDR の値が読み出されま
す。
ポート出力モード
0
1
書込み時
PDR に値が書き込まれま
す。
読出し時 (RMW 系命令
以外 )
PDR の値が読み出されま
す。
読出し時(RMW系命令) PDR の値が読み出されま
す。
周辺機能出力モー 1
ド
0
書込み時
PDR に値が書き込まれ ,
対応する外部端子へ出力
されます。
読出し時 (RMW 系命令
以外 )
周辺機能からの出力値が
読み出されます。
読出し時(RMW系命令) PDR の値が読み出されま
す。
1
1
書込み時
PDR に値が書き込まれま
す。
読出し時 (RMW 系命令
以外 )
PDR の値が読み出されま
す。
読出し時(RMW系命令) PDR の値が読み出されま
す。
書込み時
PDR に値が書き込まれま
す。
PFR:ポートファンクションレジスタ (PFR2 ∼ PFRE)
DDR:データ方向レジスタ (DDR2 ∼ DDRE)
PDR:ポートデータレジスタ (PDR2 ∼ PDRE)
RMW 系命令:リードモディファイライト系命令
•
周辺機能への入力は , 特別な場合を除き常に端子に接続されています。通常はポー
ト入力モードで周辺機能への入力を行ってください。
•
ポート B/C/E にはプルアップ制御レジスタ (PCR) があり , 端子ごとに 33kΩ のプル
アップを設定することができます。
•
ポートにはポートファンクションレジスタ (PFR) があり , 主に周辺機能の出力を制
御しています。
•
外部バスモードで , 外部バスインタフェースに割り当てられている端子は , DDR レ
ジスタ , PFR レジスタの設定を無効とし , バスインタフェースの機能が優先されま
す。外部バスモードでこれらの端子を汎用ポート / 周辺機能出力として使用する場
合は , PFR レジスタを設定し , バスインタフェースとしての機能を無効に設定して
ください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
247
第 17 章 I/O ポート
17.1
•
MB91605A シリーズ
STOP モード時 , 入力は "0" 固定となります。ただし外部割込み入力は , 対応する割
込みが有効な場合 (ENIR ビットの設定と PFR による入力端子選択 ) は固定されず ,
端子への入力は割込みとして使用できます。
•
周辺機能の双方向信号 ( マルチファンクションシリアルインタフェースの I2C 機能
SOUT/SDA, SCK/SCL) は , PFR レジスタで有効となります。入出力の切換えについ
ては対応する周辺機能の章を参照してください。
248
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.2
MB91605A シリーズ
17.2 構成
I/O ポートの構成について説明します。
■ ポート基本ブロックダイヤグラム
図 17.2-1 に , ポートの基本的な構成を示します。
図 17.2-1 ポート基本ブロックダイヤグラム
内部バス
CMOS
外部バスインタフェース入力
CMOS
Schmitt
周辺機能入力
0
PDR
リード
PCR
外部バス制御出力
周辺機能出力
1
P ullUp
コントロール
Output
MUX
33k Ω
出力
ドライバ
端子
周辺機能出力
PDR
DDR
PFR
Port
Direction
コントロール
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
249
第 17 章 I/O ポート
17.3
MB91605A シリーズ
17.3 端子
I/O ポートで使用する端子について説明します。
■ 概要
ポート 2 ∼ポート E に分類される I/O ポートが最大で 92 本用意されています。
同じ番号に分類されたポートは , 同時に読出し / 書込みが可能です。
250
•
P20 ∼ P23 ( ポート 2)
•
P30 ∼ P37 ( ポート 3)
•
P40 ∼ P45 ( ポート 4)
•
P50 ∼ P57 ( ポート 5)
•
P60 ∼ P67 ( ポート 6)
•
P70 ∼ P77 ( ポート 7)
•
P80 ∼ P85 ( ポート 8)
•
P90 ∼ P95 ( ポート 9)
•
PA0 ∼ PA5 ( ポート A)
•
PB0 ∼ PB7 ( ポート B)
•
PC0 ∼ PC7 ( ポート C)
•
PD0 ∼ PD7 ( ポート D)
•
PE0 ∼ PE7 ( ポート E)
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
17.4 レジスタ
I/O ポートで使用するレジスタの構成と機能について説明します。
■ I/O ポートのレジスタ一覧
I/O ポートのレジスタ一覧を表 17.4-1 に示します。
表 17.4-1 I/O ポートのレジスタ一覧 (1 / 2)
ポート
共通
レジスタ略称
ADER
ADER 制御レジスタ
参照先
17.4.5
2
PDR2
ポートデータレジスタ 2
17.4.1
DDR2
データ方向レジスタ 2
17.4.2
PFR2
ポートファンクションレジスタ 2
17.4.3
PDR3
ポートデータレジスタ 3
17.4.1
DDR3
データ方向レジスタ 3
17.4.2
PFR3
ポートファンクションレジスタ 3
17.4.3
PDR4
ポートデータレジスタ 4
17.4.1
DDR4
データ方向レジスタ 4
17.4.2
PFR4
ポートファンクションレジスタ 4
17.4.3
PDR5
ポートデータレジスタ 5
17.4.1
DDR5
データ方向レジスタ 5
17.4.2
PFR5
ポートファンクションレジスタ 5
17.4.3
PDR6
ポートデータレジスタ 6
17.4.1
DDR6
データ方向レジスタ 6
17.4.2
PFR6
ポートファンクションレジスタ 6
17.4.3
PDR7
ポートデータレジスタ 7
17.4.1
DDR7
データ方向レジスタ 7
17.4.2
PFR7
ポートファンクションレジスタ 7
17.4.3
PDR8
ポートデータレジスタ 8
17.4.1
DDR8
データ方向レジスタ 8
17.4.2
PFR8
ポートファンクションレジスタ 8
17.4.3
PDR9
ポートデータレジスタ 9
17.4.1
DDR9
データ方向レジスタ 9
17.4.2
PFR9
ポートファンクションレジスタ 9
17.4.3
PDRA
ポートデータレジスタ A
17.4.1
DDRA
データ方向レジスタ A
17.4.2
PFRA
ポートファンクションレジスタ A
17.4.3
PDRB
ポートデータレジスタ B
17.4.1
DDRB
データ方向レジスタ B
17.4.2
PFRB
ポートファンクションレジスタ B
17.4.3
PCRB
プルアップ制御レジスタ B
17.4.4
3
4
5
6
7
8
9
A
B
CM71-10147-2
レジスタ名
FUJITSU SEMICONDUCTOR LIMITED
251
第 17 章 I/O ポート
17.4
MB91605A シリーズ
表 17.4-1 I/O ポートのレジスタ一覧 (2 / 2)
ポート
C
D
E
レジスタ略称
PDRC
レジスタ名
ポートデータレジスタ C
参照先
17.4.1
DDRC
データ方向レジスタ C
17.4.2
PFRC
ポートファンクションレジスタ C
17.4.3
PCRC
プルアップ制御レジスタ C
17.4.4
PDRD
ポートデータレジスタ D
17.4.1
DDRD
データ方向レジスタ D
17.4.2
PFRD
ポートファンクションレジスタ D
17.4.3
PDRE
ポートデータレジスタ E
17.4.1
DDRE
データ方向レジスタ E
17.4.2
PFRE
ポートファンクションレジスタ E
17.4.3
PCRE
プルアップ制御レジスタ E
17.4.4
ポートデータレジスタ (PDR2 ∼ PDRE)
17.4.1
ポートごとにポートデータレジスタ (PDR2 ∼ PDRE) があり , 出力データを格納します。
リセット後 , このレジスタの内容は初期化されません。
ポートデータレジスタ (PDR2 ∼ PDRE) のビット構成を図 17.4-1 に示します。
図 17.4-1 ポートデータレジスタ (PDR2 ∼ PDRE) のビット構成
bit
PDR2
7
6
4
3
2
1
0
PDR23
PDR22
PDR21
PDR20
初期値
----XXXX
属性
R/W
−
PDR36
−
PDR35
−
PDR34
PDR33
PDR32
PDR31
PDR30
XXXXXXXX
R/W
−
PDR56
PDR44
PDR43
PDR42
PDR41
PDR40
--XXXXXX
R/W
PDR5
−
PDR57
PDR45
PDR55
PDR54
PDR53
PDR52
PDR51
PDR50
XXXXXXXX
R/W
PDR6
PDR67
PDR66
PDR65
PDR64
PDR63
PDR62
PDR61
PDR60
XXXXXXXX
R/W
PDR7
PDR77
PDR76
PDR75
PDR74
PDR73
PDR72
PDR71
PDR70
XXXXXXXX
R/W
PDR85
PDR84
PDR83
PDR82
PDR81
PDR80
--XXXXXX
R/W
PDR3
PDR4
−
PDR37
5
PDR8
−
−
PDR9
−
−
PDR95
PDR94
PDR93
PDR92
PDR91
PDR90
--XXXXXX
R/W
PDRA4
PDRA3
PDRA2
PDRA1
PDRA0
--XXXXXX
R/W
PDRA
PDRB
−
PDRB7
−
PDRB6
PDRA5
PDRB5
PDRB4
PDRB3
PDRB2
PDRB1
PDRB0
XXXXXXXX
R/W
PDRC
PDRC7
PDRC6
PDRC5
PDRC4
PDRC3
PDRC2
PDRC1
PDRC0
XXXXXXXX
R/W
PDRD
PDRD7
PDRD6
PDRD5
PDRD4
PDRD3
PDRD2
PDRD1
PDRD0
XXXXXXXX
R/W
PDRE
PDRE7
PDRE6
PDRE5
PDRE4
PDRE3
PDRE2
PDRE1
PDRE0
XXXXXXXX
R/W
R/W:リード / ライト可能
−:未定義
X:不定
PDR2 ∼ PDRE は , I/O ポートの入出力データレジスタです。
対応する DDR2 ∼ DDRE で入出力制御を行います。
ポートの状態に関わらず , ポートデータレジスタへのリードモディファイライト命令
では , レジスタの設定値が読み出されます。
252
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
データ方向レジスタ (DDR2 ∼ DDRE)
17.4.2
ポートごとにデータ方向レジスタ (DDR2 ∼ DDRE) があり , ポートの入出力方向を切り替え
ます。
リセット後 , すべてのポートは入力となります (DDR=00H)。
データ方向レジスタ (DDR2 ∼ DDRE) のビット構成を図 17.4-2 に示します。
図 17.4-2 データ方向レジスタ (DDR2 ∼ DDRE) のビット構成
bit
7
6
5
4
3
2
1
0
−
DDR37
−
DDR36
−
DDR35
−
DDR34
DDR23
DDR22
DDR21
DDR20
初期値
----0000
DDR33
DDR32
DDR31
DDR30
00000000
R/W
−
DDR56
DDR45
DDR44
DDR43
DDR42
DDR41
DDR40
--000000
R/W
DDR5
−
DDR57
DDR55
DDR54
DDR53
DDR52
DDR51
DDR50
00000000
R/W
DDR6
DDR67
DDR66
DDR65
DDR64
DDR63
DDR62
DDR61
DDR60
00000000
R/W
DDR7
DDR77
DDR76
DDR75
DDR74
DDR73
DDR72
DDR71
DDR70
00000000
R/W
DDR8
−
−
DDR85
DDR84
DDR83
DDR82
DDR81
DDR80
--000000
R/W
DDR9
−
−
DDR95
DDR94
DDR93
DDR92
DDR91
DDR90
--000000
R/W
DDRA
−
DDRB6
DDRA5
DDRA4
DDRA3
DDRA2
DDRA1
DDRA0
--000000
R/W
DDRB
−
DDRB7
DDRB5
DDRB4
DDRB3
DDRB2
DDRB1
DDRB0
00000000
R/W
DDRC
DDRC7
DDRC6
DDRC5
DDRC4
DDRC3
DDRC2
DDRC1
DDRC0
00000000
R/W
DDRD
DDRD7
DDRD6
DDRD5
DDRD4
DDRD3
DDRD2
DDRD1
DDRD0
00000000
R/W
DDRE
DDRE7
DDRE6
DDRE5
DDRE4
DDRE3
DDRE2
DDRE1
DDRE0
00000000
R/W
DDR2
DDR3
DDR4
属性
R/W
R/W:リード / ライト可能
−:未定義
X:不定
このビットの設定と, ポートファンクションレジスタ (PFR2∼PFRE)の設定によりポー
トデータレジスタ (PDR2 ∼ PDRE) からの読出し値 / 書込み値の意味が異なります。
レジスタ設定とポートデータレジスタ (PDR2 ∼ PDRE) からの読出し値 / 書込み値の関
係を表 17.4-2 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
253
第 17 章 I/O ポート
17.4
MB91605A シリーズ
表 17.4-2 レジスタ設定とポートデータレジスタ (PDR2 ∼ PDRE) からの読出し値 /
書込み値の関係
入出力モード
ポート入力モード
PFR
DDR
0
0
PDR へのアクセス
読出し時 (RMW 系命令 対応する外部端子のレ
ベルが読み出されま
以外 )
す。
読出し時(RMW系命令) PDR の値が読み出され
ます。
書込み時
ポート出力モード
0
1
PDR に値が書き込まれ
ます。
読出し時 (RMW 系命令 PDR の値が読み出され
以外 )
ます。
読出し時(RMW系命令) PDR の値が読み出され
ます。
書込み時
周辺機能出力モー 1
ド
0
PDR に値が書き込まれ ,
対応する外部端子へ出
力されます。
読出し時 (RMW 系命令 周辺機能からの出力値
が読み出されます。
以外 )
読出し時(RMW系命令) PDR の値が読み出され
ます。
書込み時
1
1
PDR に値が書き込まれ
ます。
読出し時 (RMW 系命令 PDR の値が読み出され
以外 )
ます。
読出し時(RMW系命令) PDR の値が読み出され
ます。
書込み時
PDR に値が書き込まれ
ます。
PFR:ポートファンクションレジスタ (PFR2 ∼ PFRE)
DDR:データ方向レジスタ (DDR2 ∼ DDRE)
PDR:ポートデータレジスタ (PDR2 ∼ PDRE)
RMW 系命令:リードモディファイライト系命令
周辺機能への入力は特別な場合を除き常に端子に接続されています。通常はポート入
力モードで周辺機能への入力を行ってください。
17.4.3
ポートファンクションレジスタ (PFR2 ∼ PFRE)
このレジスタについて各ポートごとに説明します。
■ ポート 2
ポート 2 はポートファンクションレジスタ 2 (PFR2) により制御されます。
外部バスモード時はバスインタフェースの制御端子 (SYSCLK, WE, MDQM3, MDQM2)
となります。選択可能な入力信号は各リソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ 2 (PFR2) のビット構成を図 17.4-3 に示します。
254
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
図 17.4-3 ポートファンクションレジスタ 2 (PFR2) のビット構成
bit
属性
7
6
5
4
3
2
1
0
−
R/W
−
R/W
−
R/W
−
R/W
PFR23
PFR22
PFR21
PFR20
R/W
R/W
R/W
R/W
−
−
−
−
1
1
1
0
初期値
R/W:リード / ライト可能
−:未定義
各ビットの対応は以下のとおりです。
PFR2
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
0
無効
1
無効
0
無効
1
無効
0
無効
1
無効
0
無効
1
無効
0
汎用ポート
1
MDQM2 出力
0
汎用ポート
1
MDQM3 出力
0
汎用ポート
1
WE 出力
0
汎用ポート
1
SYSCLK 出力
機能
■ ポート 3
ポート 3 はポートファンクションレジスタ 3 (PFR3) により制御されます。
外部バスモード時はバスインタフェースの制御端子 (CSn, AS) となります。選択可能な
入力信号は各リソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ 3 (PFR3) のビット構成を図 17.4-4 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
255
第 17 章 I/O ポート
17.4
MB91605A シリーズ
図 17.4-4 ポートファンクションレジスタ 3 (PFR3) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFR37
PFR36
PFR35
PFR34
PFR33
PFR32
PFR31
PFR30
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
1
0
0
0
1
1
1
1
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFR3
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
機能
0
汎用ポート
1
チップセレクト 8(CS8) 出力
0
汎用ポート
1
チップセレクト 6(CS6) 出力
0
汎用ポート
1
チップセレクト 5(CS5) 出力
0
汎用ポート
1
アドレスストローブ (AS) 出力
0
汎用ポート
1
チップセレクト 3(CS3) 出力
0
汎用ポート
1
チップセレクト 2(CS2) 出力
0
汎用ポート
1
チップセレクト 1(CS1) 出力
0
汎用ポート
1
チップセレクト 0(CS0) 出力
■ ポート 4
ポート 4 はポートファンクションレジスタ 4 (PFR4) により制御されます。
外部バスモード時は , ポート 4 はバスインタフェースの制御端子 (RDY, MRAS,
MCAS, MDWE, MCLKE, MCLK) となります。選択可能な入力信号は各リソースにて入
力端子の選択を行ってください。
ポートファンクションレジスタ 4 (PFR4) のビット構成を図 17.4-5 に示します。
256
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
図 17.4-5 ポートファンクションレジスタ 4 (PFR4) のビット構成
bit
属性
7
6
5
4
3
2
1
0
−
R/W
−
R/W
PFR45
PFR44
PFR43
PFR42
PFR41
PFR40
R/W
R/W
R/W
R/W
R/W
R/W
−
−
1
1
0
0
0
0
初期値
R/W:リード / ライト可能
−:未定義
各ビットの対応は以下のとおりです。
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
PFR4
機能
0
無効
1
無効
0
無効
1
無効
0
汎用ポート
1
MCLK 出力
0
汎用ポート
1
MCLKE 出力
0
汎用ポート
1
MDWE 出力
0
汎用ポート
1
MCAS 出力
0
汎用ポート
1
MRAS 出力
0
汎用ポート
1
設定禁止
■ ポート 5
ポート 5 はポートファンクションレジスタ 5 (PFR5) により制御されます。
外部バスモードでは , ポート 5 はバスインタフェースの A23 ∼ A16 となります。選択
可能な入力信号は各リソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ 5 (PFR5) のビット構成を図 17.4-6 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
257
第 17 章 I/O ポート
17.4
MB91605A シリーズ
図 17.4-6 ポートファンクションレジスタ 5 (PFR5) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFR57
PFR56
PFR55
PFR54
PFR53
PFR52
PFR51
PFR50
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
1
1
1
1
1
1
1
1
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFR5
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
0
汎用ポート
1
外部アドレス出力 A23
0
汎用ポート
1
外部アドレス出力 A22
0
汎用ポート
1
外部アドレス出力 A21
0
汎用ポート
1
外部アドレス出力 A20
0
汎用ポート
1
外部アドレス出力 A19
0
汎用ポート
1
外部アドレス出力 A18
0
汎用ポート
1
外部アドレス出力 A17
0
汎用ポート
1
外部アドレス出力 A16
機能
■ ポート 6
ポート 6 はポートファンクションレジスタ 6 (PFR6) により制御されます。
ポート 6 は , AD コンバータのアナログ入力と兼用しており , ADER レジスタの対応す
るビットがセットされると , ポートの設定は無効となり , アナログ入力端子となりま
す。
それ以外のモードでは , マルチファンクションシリアルインタフェース ch.10/ch.11 に
割り当てられます。選択可能な入力信号は各リソースにて入力端子の選択を行ってく
ださい。
ポートファンクションレジスタ 6 (PFR6) のビット構成を図 17.4-7 に示します。
258
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
図 17.4-7 ポートファンクションレジスタ 6 (PFR6) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFR67
PFR66
PFR65
PFR64
PFR63
PFR62
PFR61
PFR60
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFR6
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
機能
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.11
SCK11/SCL11 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.11
SOUT11/SDA11 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.10
SCK10/SCL10 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.10
SOUT10/SDA10 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
設定禁止
0
汎用ポート
1
設定禁止
< 注意事項 >
デフォルトで ADER レジスタは A/D アナログ入力に設定されています。アナログ入力以
外の機能を使用する場合は , ADER レジスタの設定をクリアしてください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
259
第 17 章 I/O ポート
17.4
MB91605A シリーズ
■ ポート 7
ポート 7 はポートファンクションレジスタ 7 (PFR7) により制御されます。
ポート 7 のビット 0 ∼ 3 は , AD コンバータのアナログ入力と兼用しており , ADER レ
ジスタの対応するビットがセットされると , ポートの設定は無効となり , アナログ入力
端子となります。
それ以外のモードでは , ベースタイマ ch.10/ch.11, マルチファンクションシリアルイン
タフェース ch.0, HDMI-CEC 入出力に割り当てられます。選択可能な入力信号は各リ
ソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ 7 (PFR7) のビット構成を図 17.4-8 に示します。
図 17.4-8 ポートファンクションレジスタ 7 (PFR7) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFR77
PFR76
PFR75
PFR74
PFR73
PFR72
PFR71
PFR70
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFR7
ビット
bit7
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.0
SCK0/SCL0 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.0
SOUT0/SDA0 出力
bit5
0
汎用ポート
1
設定禁止
bit4
0
汎用ポート
1
HDMI-CEC 入出力 ( オープンドレイン )
00
汎用ポート
01
ベースタイマ ch.11 TIOA11 出力 ( 通常出力 )
10
設定禁止
11
ベースタイマ ch.11 TIOA11 出力 ( オープンドレイン出力 )
00
汎用ポート
01
ベースタイマ ch.10 TIOA10 出力 ( 通常出力 )
10
設定禁止
11
ベースタイマ ch.10 TIOA10 出力 ( オープンドレイン出力 )
bit6
bit3, bit2
bit1, bit0
260
機能
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
< 注意事項 >
•
デフォルトで ADER レジスタは A/D アナログ入力に設定されています。アナログ入力
以外の機能を使用する場合は , ADER レジスタの設定をクリアしてください。
•
HDMI-CEC 入出力モードは , HDMI-CEC モード使用時のみ設定してください。その他
のリモコン受信モードの時は , 汎用ポートを選択し , DDR7 レジスタで入力に設定して
ください。
■ ポート 8
ポート 8 はポートファンクションレジスタ 8 (PFR8) により制御されます。マルチファ
ンクションシリアルインタフェース ch.1/ch.2 と兼用です。選択可能な入力信号は各リ
ソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ 8 (PFR8) のビット構成を図 17.4-9 に示します。
図 17.4-9 ポートファンクションレジスタ 8 (PFR8) のビット構成
bit
属性
7
6
5
4
3
2
1
0
−
R/W
−
R/W
PFR85
PFR84
PFR83
PFR82
PFR81
PFR80
R/W
R/W
R/W
R/W
R/W
R/W
−
−
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
−:未定義
各ビットの対応は以下のとおりです。
PFR8
ビット
bit7
無効
1
無効
bit6
0
無効
1
無効
bit5
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.2
SCK2/SCL2 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.2
SOUT2/SDA2 出力。
0
汎用ポート
1
設定禁止
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.1
SCK1/SCL1 出力
bit4
bit3
bit2
CM71-10147-2
機能
0
FUJITSU SEMICONDUCTOR LIMITED
261
第 17 章 I/O ポート
17.4
MB91605A シリーズ
PFR8
ビット
bit1
bit0
機能
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.1
SOUT1/SDA1 出力
0
汎用ポート
1
設定禁止
■ ポート 9
ポート 9 はポートファンクションレジスタ 9 (PFR9) により制御されます。マルチファ
ンクションシリアルインタフェース ch.3/ch.4 と兼用です。選択可能な入力信号は各リ
ソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ 9 (PFR9) のビット構成を図 17.4-10 に示します。
図 17.4-10 ポートファンクションレジスタ 9 (PFR9) のビット構成
bit
属性
7
6
5
4
3
2
1
0
−
R/W
−
R/W
PFR95
PFR94
PFR93
PFR92
PFR91
PFR90
R/W
R/W
R/W
R/W
R/W
R/W
−
0
0
0
0
0
0
初期値
−
R/W:リード / ライト可能
−:未定義
各ビットの対応は以下のとおりです。
PFR9
ビット
bit7
0
無効
1
無効
bit6
0
無効
1
無効
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.4
SCK4/SCL4 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.4
SOUT4/SDA4 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.3
SCK3/SCL3 出力
bit5
bit4
bit3
bit2
262
機能
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
ビット
bit1
bit0
PFR9
機能
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.3
SOUT3/SDA3 出力
0
汎用ポート
1
設定禁止
■ ポート A
ポート A はポートファンクションレジスタ A (PFRA) により制御されます。マルチファ
ンクションシリアルインタフェース ch.5/ch.6 と兼用です。選択可能な入力信号は各リ
ソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ A (PFRA) のビット構成を図 17.4-11 に示します。
図 17.4-11 ポートファンクションレジスタ A (PFRA) のビット構成
bit
属性
7
6
5
4
3
2
1
0
−
R/W
−
R/W
PFRA5
PFRA4
PFRA3
PFRA2
PFRA1
PFRA0
R/W
R/W
R/W
R/W
R/W
R/W
−
−
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
−:未定義
各ビットの対応は以下のとおりです。
PFRA
ビット
bit7
bit6
bit5
bit4
bit3
bit2
CM71-10147-2
0
無効
1
無効
機能
0
無効
1
無効
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.6
SCK6/SCL6 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.6
SOUT6/SDA6 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.5
SCK5/SCL5 出力
FUJITSU SEMICONDUCTOR LIMITED
263
第 17 章 I/O ポート
17.4
MB91605A シリーズ
ビット
bit1
bit0
PFRA
機能
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.5
SOUT5/SDA5
0
汎用ポート
1
設定禁止
■ ポート B
ポート B はポートファンクションレジスタ B (PFRB) により制御されます。マルチファ
ンクションシリアルインタフェース ch.7, リロードタイマ出力 ch.0~ch.2, ベースタイマ
ch.8, 外部割込み 0 ∼ 7 と兼用です。選択可能な入力信号は各リソースにて入力端子の
選択を行ってください。
ポートファンクションレジスタ B (PFRB) のビット構成を図 17.4-12 に示します。
図 17.4-12 ポートファンクションレジスタ B (PFRB) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFRB7
PFRB6
PFRB5
PFRB4
PFRB3
PFRB2
PFRB1
PFRB0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFRB
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
264
0
汎用ポート
1
設定禁止
機能
0
汎用ポート
1
ベースタイマ ch.8 TIOA8 出力
0
汎用ポート
1
リロードタイマ ch.2 TOUT2 出力
0
汎用ポート
1
リロードタイマ ch.1 TOUT1 出力
0
汎用ポート
1
リロードタイマ ch.0 TOUT0 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.7
SCK7/SCL7 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.7
SOUT7/SDA7 出力
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
ビット
bit0
PFRB
機能
0
汎用ポート
1
設定禁止
■ ポート C
ポート C はポートファンクションレジスタ C (PFRC) により制御されます。マルチファ
ンクションシリアルインタフェース ch.8/ch.9, ベースタイマ ch.9, 外部割込み 8 ∼ 15 と
兼用です。選択可能な入力信号は各リソースにて入力端子の選択を行ってください。
ポートファンクションレジスタ C (PFRC) のビット構成を図 17.4-13 に示します。
図 17.4-13 ポートファンクションレジスタ C (PFRC) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFRC7
PFRC6
PFRC5
PFRC4
PFRC3
PFRC2
PFRC1
PFRC0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFRC
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CM71-10147-2
機能
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.9
SCK9/SCL9 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.9
SOUT9/SDA9 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.8
SCK8/SCL8 出力
0
汎用ポート
1
マルチファンクションシリアルインタフェース ch.8
SOUT8/SDA8 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
設定禁止
0
汎用ポート
1
ベースタイマ ch.9 TIOA9 出力
FUJITSU SEMICONDUCTOR LIMITED
265
第 17 章 I/O ポート
17.4
MB91605A シリーズ
■ ポート D
ポート D はポートファンクションレジスタ D (PFRD) により制御されます。ベースタ
イマ ch.0 ∼ ch.3 と兼用です。選択可能な入力信号は各リソースにて入力端子の選択を
行ってください。
ポートファンクションレジスタ D (PFRD) のビット構成を図 17.4-14 に示します。
図 17.4-14 ポートファンクションレジスタ D (PFRD) のビット構成
bit
属性
初期値
7
6
5
4
3
2
1
0
PFRD7
PFRD6
PFRD5
PFRD4
PFRD3
PFRD2
PFRD1
PFRD0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFRD
ビット
bit7, bit6
Bit5, bit4
Bit3, bit2
Bit1, bit0
266
機能
00
汎用ポート
01
ベースタイマ ch.3 TIOA3 出力 ( 通常出力 )
10
設定禁止
11
ベースタイマ ch.3 TIOA3 出力 ( オープンドレイン出力 )
00
汎用ポート
01
ベースタイマ ch.2 TIOA2 出力 ( 通常出力 )
10
設定禁止
11
ベースタイマ ch.2 TIOA2 出力 ( オープンドレイン出力 )
00
汎用ポート
01
ベースタイマ ch.1 TIOA1 出力 ( 通常出力 )
10
設定禁止
11
ベースタイマ ch.1 TIOA1 出力 ( オープンドレイン出力 )
00
汎用ポート
01
ベースタイマ ch.0 TIOA0 出力 ( 通常出力 )
10
設定禁止
11
ベースタイマ ch.0 TIOA0 出力 ( オープンドレイン出力 )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
■ ポート E
ポート E はポートファンクションレジスタ E (PFRE) により制御されます。ベースタイ
マ ch.4 ∼ ch.7, 外部割込み 16 ∼ 23 と兼用です。選択可能な入力信号は各リソースにて
入力端子の選択を行ってください。
ポートファンクションレジスタ E (PFRE) のビット構成を図 17.4-15 に示します。
図 17.4-15 ポートファンクションレジスタ E (PFRE) のビット構成
bit
属性
7
6
5
4
3
2
1
0
PFRE7
PFRE6
PFRE5
PFRE4
PFRE3
PFRE2
PFRE1
PFRE0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
R/W:リード / ライト可能
各ビットの対応は以下のとおりです。
PFRE
ビット
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CM71-10147-2
機能
0
汎用ポート
1
設定禁止
0
汎用ポート
1
ベースタイマ ch.7 TIOA7 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
ベースタイマ ch.6 TIOA6 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
ベースタイマ ch.5 TIOA5 出力
0
汎用ポート
1
設定禁止
0
汎用ポート
1
ベースタイマ ch.4 TIOA4 出力
FUJITSU SEMICONDUCTOR LIMITED
267
第 17 章 I/O ポート
17.4
MB91605A シリーズ
プルアップ制御レジスタ (PCR)
17.4.4
端子には33kΩのプルアップを付加する機能があります。この機能はソフトウェアによりビッ
ト単位で制御可能です。このレジスタにより制御します。
プルアップ制御レジスタ (PCR) のビット構成を図 17.4-16 に示します。
図 17.4-16 プルアップ制御レジスタ (PCR) のビット構成
bit
7
6
5
4
3
2
1
0
PCRB
PCRB7
PCRB6
PCRB5
PCRB4
PCRB3
PCRB2
PCRB1
PCRB0
初期値
00000000
属性
R/W
PCRC
PCRC7
PCRC6
PCRC5
PCRC4
PCRC3
PCRC2
PCRC1
PCRC0
00000000
R/W
PCRE
PCRE7
PCRE6
PCRE5
PCRE4
PCRE3
PCRE2
PCRE1
PCRE0
00000000
R/W
R/W:リード / ライト可能
このレジスタの設定を以下に示します。
プルアップ制御レジスタ (PCR)
ビット
PCRxy
0
プルアップ無し
1
プルアップ
各ビットの設定値は対応する PCR が設定されているときのみ有効です。
プルアップ制御可能なポートは , ポート PB7 ∼ PB0, PC7 ∼ PC0, PE7 ∼ PE0 です。そ
れらに対応するビットが存在します。
< 注意事項 >
以下の場合は , 端子のプルアップは自動的に無効となります。
268
•
ポートが出力状態
•
STOP モード出力 Hi-Z 選択時
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 17 章 I/O ポート
17.4
MB91605A シリーズ
ADER 制御レジスタ (ADER)
17.4.5
A/D 入力を有効にします。この機能はソフトウェアによりビット単位で制御可能です。
ADER 制御レジスタ (ADER) のビット構成を図 17.4-17 に示します。
図 17.4-17 ADER 制御レジスタ (ADER) のビット構成
bit
属性
初期値
bit
属性
初期値
15
14
13
12
−
R/W
−
R/W
−
R/W
−
R/W
0
0
0
7
6
ADER7
11
10
9
ADER11 ADER10 ADER9
8
ADER8
R/W
R/W
R/W
R/W
0
1
1
1
1
5
4
3
2
1
0
ADER6
ADER5
ADER4
ADER3
ADER2
ADER1
ADER0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
1
1
1
1
1
1
1
1
R/W:リード / ライト可能
[bit15 ∼ bit12]:予約ビット
必ず "0" を書き込んでください。
[bit11 ∼ bit0]:ADER11 ∼ ADER0 (A/D 入力許可ビット 11 ∼ 0)
P60 ∼ P67, P70 ∼ P73 端子は A/D コンバータ入力を兼用しています。A/D コンバータ
のアナログ入力として使用する場合は対応するビットをセットしてください。
このビットをセット (=1) すると , チップ内部の入力ゲートは "0" に固定されます。ア
ナログ入力以外の機能を使用する場合は , このビットをクリア (=0) してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
269
第 17 章 I/O ポート
17.4
270
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
外部割込み制御部の機能と動作について説明しま
す。
18.1 概要
18.2 構成
18.3 端子
18.4 レジスタ
18.5 動作説明と設定手順例
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
271
第 18 章 外部割込み制御部
18.1
MB91605A シリーズ
18.1 概要
外部割込み制御部は , 外部割込み信号のエッジ / レベルを検出し , 外部割込み要求を制御しま
す。
本製品は , 外部割込み信号の入力端子を 24 本内蔵しています。
■ 概要
外部割込み制御部は , 外部割込み信号から , あらかじめ設定したエッジ / レベルを検出
すると , 外部割込みを要求します。
検出するエッジ / レベルは , 次の 4 種類から選択できます。
•
"H" レベル
•
"L" レベル
•
立上りエッジ
•
立下りエッジ
また, 外部割込み要求はスリープモードとスタンバイモード (メインタイマモードまた
はストップモード ) からの復帰にも利用できます。
272
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
18.2
MB91605A シリーズ
18.2 構成
外部割込み制御部の構成を示します。
■ 外部割込み制御部のブロックダイヤグラム
外部割込み制御部のブロックダイヤグラムを図 18.2-1 に示します。
図 18.2-1 外部割込み制御部のブロックダイヤグラム
周辺バス
16
8
8
割込み許可レジスタ
(ENIR0 ∼ ENIR2)
7
6
5
4
3
2
1
外部割込み要因レジスタ
(EIRR0 ∼ EIRR2)
0
7
6
5
4
3
2
1
外部割込み要求レベル
設定レジスタ
(ELVR0 ∼ ELVR2)
0
15 14
1
0
エッジ / レベル検出回路
8
24
INT0 ∼ INT23
割込み要求
24
•
外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2)
INT0 ∼ INT23 端子に入力された信号が , 外部割込み要求であるかどうかを判断する
ためのエッジ / レベルを設定するレジスタです。
•
外部割込み要因レジスタ (EIRR0 ∼ EIRR2)
割込み要因 ( どの端子から外部割込み要求が発生したか) を保持するレジスタです。
•
割込み許可レジスタ (ENIR0 ∼ ENIR2)
外部割込み要求の許可 / 禁止を設定するレジスタです。
•
エッジ / レベル検出回路
INT0 ∼ INT23 端子に入力された信号のエッジ / レベルを検出する回路です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
273
第 18 章 外部割込み制御部
18.2
MB91605A シリーズ
■ クロック
外部割込み制御部で使用するクロックを表 18.2-1 に示します。
表 18.2-1 外部割込み制御部で使用するクロック
クロック名
動作クロック
274
内容
周辺クロック (PCLK)
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 18 章 外部割込み制御部
18.3
18.3 端子
外部割込み制御部で使用する端子について説明します。
■ 概要
外部割込み制御部には , 次の端子があります。
•
INT0 ∼ INT23 端子
外部割込信号入力端子です。この端子は兼用端子です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
275
第 18 章 外部割込み制御部
18.4
MB91605A シリーズ
18.4 レジスタ
外部割込み制御部で使用するレジスタの構成と機能について説明します。
■ 外部割込み制御部のレジスタ一覧
外部割込み制御部のレジスタ一覧を表 18.4-1 に示します。
表 18.4-1 外部割込み制御部のレジスタ一覧
チャネル
共通
276
レジスタ略称
レジスタ名
ELVR0
外部割込み要求レベル設定レジスタ 0
参照先
18.4.1
EIRR0
外部割込み要因レジスタ 0
18.4.2
ENIR0
割込み許可レジスタ 0
18.4.3
ELVR1
外部割込み要求レベル設定レジスタ 1
18.4.1
EIRR1
外部割込み要因レジスタ 1
18.4.2
ENIR1
割込み許可レジスタ 1
18.4.3
ELVR2
外部割込み要求レベル設定レジスタ 2
18.4.1
EIRR2
外部割込み要因レジスタ 2
18.4.2
ENIR2
割込み許可レジスタ 2
18.4.3
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
18.4
MB91605A シリーズ
外部割込み要求レベル設定レジスタ
(ELVR0 ∼ ELVR2)
18.4.1
外部割込み要求を検出するためのエッジ / レベルを設定するレジスタです。
外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) のビット構成を図 18.4-1 に示
します。
図 18.4-1 外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) のビット構成
外部割込み要求レベル設定レジスタ 0 (ELVR0)
bit
属性
15
14
13
12
11
10
9
8
LB7
LA7
LB6
LA6
LB5
LA5
LB4
LA4
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
7
6
5
4
3
2
1
0
初期値
bit
属性
LB3
LA3
LB2
LA2
LB1
LA1
LB0
LA0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
外部割込み要求レベル設定レジスタ 1 (ELVR1)
bit
属性
15
14
13
12
11
10
9
8
LB15
LA15
LB14
LA14
LB13
LA13
LB12
LA12
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
7
6
5
4
3
2
1
0
LB11
LA11
LB10
LA10
LB9
LA9
LB8
LA8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
bit
属性
初期値
外部割込み要求レベル設定レジスタ 2 (ELVR2)
bit
属性
15
14
13
12
11
10
9
8
LB23
LA23
LB22
LA22
LB21
LA21
LB20
LA20
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
7
6
5
4
3
2
1
0
LB19
LA19
LB18
LA18
LB17
LA17
LB16
LA16
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
初期値
bit
属性
初期値
R/W:リード / ライト可能
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
277
第 18 章 外部割込み制御部
18.4
MB91605A シリーズ
LB23 ∼ LB0, LA23 ∼ LA0 ( 検出条件選択ビット )
外部割込み要求として検出する信号のエッジ / レベルを選択します。このビットで選
択したエッジ / レベルを検出すると , 外部割込み要求として認識されます。
LB0 ∼ LB23 ビットおよび LA0 ∼ LA23 ビットは , それぞれ INT0 ∼ INT23 端子に対応
しています。たとえば , INT0 端子は LB0 ビットと LA0 ビットで設定します。
LB23 ∼ LB0
LA23 ∼ LA0
説明
0
0
"L" レベル検出
0
1
"H" レベル検出
1
0
立上りエッジ検出
1
1
立下りエッジ検出
スタンバイモードからの復帰に外部割込み要求を利用するときは ,「18.5.2 スタンバイ
モードからの復帰」を参照してください。
278
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 18 章 外部割込み制御部
18.4
< 注意事項 >
•
STOP からの復帰について , ch.0 ∼ ch.7 はレベルのみ , ch.8 ∼ ch.23 はすべての要求
レベルが設定可能です。
•
このビットで設定したエッジ / レベルを検出するには , 最小 4T (T:周辺クロック
(PCLK) の周期 ) のパルス幅が必要です。このパルス幅に満たない信号が入力された場
合は , 正しく動作しないことがあります。
•
検出条件を "L" レベル検出 /"H" レベル検出に設定しているときは , 外部割込み要求が
取り下げられても , 割込み要因が外部割込み要因レジスタ (EIRR0 ∼ EIRR2) に保持さ
れます。そのため , 外部割込み要求は割込みコントローラに出力されたままになりま
す。割込みコントローラへの外部割込み要求を取り下げるには , 外部割込み要因レジ
スタ (EIRR0 ∼ EIRR2) の対応するビットを "0" にクリアしてください。
ただし , INT0 ∼ INT23 端子から有効レベルが入力されている間は , 外部割込み要因レ
ジスタ (EIRR0 ∼ EIRR2) をクリアしても , 外部割込みが要求されたままになります。
割込み要因の保持および , 割込み要因のクリア時の動作図は , 「18.5 動作説明と設定
手順例」の「■ 外部割込み要求の取下げ」を参照してください。
•
このビットを書き換えて検出条件を変更すると , 誤った割込み要因が発生する場合が
あります。誤った割込み要因の発生を避けるため , 検出条件を変更したら , 次の操作を
行ってください。
1. 外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) を読み出す
2. 外部割込み要因レジスタ (EIRR0 ∼ EIRR2) に "0" を書き込み , 割込み要因をクリア
する
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
279
第 18 章 外部割込み制御部
18.4
18.4.2
MB91605A シリーズ
外部割込み要因レジスタ (EIRR0 ∼ EIRR2)
外部割込み要求の割込み要因 (どの端子から外部割込み要求が発生したか) を保持するレジス
タです。
外部割込み要因レジスタ (EIRR0 ∼ EIRR2) のビット構成を図 18.4-2 に示します。
図 18.4-2 外部割込み要因レジスタ (EIRR0 ∼ EIRR2) のビット構成
外部割込み要因レジスタ 0 (EIRR0)
bit
属性
初期値
7
6
5
4
3
2
1
0
ER7
ER6
ER5
ER4
ER3
ER2
ER1
ER0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
外部割込み要因レジスタ 1 (EIRR1)
bit
属性
初期値
7
6
5
4
3
2
1
0
ER15
ER14
ER13
ER12
ER11
ER10
ER9
ER8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
外部割込み要因レジスタ 2 (EIRR2)
bit
属性
初期値
7
6
5
4
3
2
1
0
ER23
ER22
ER21
ER20
ER19
ER18
ER17
ER16
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
280
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
18.4
MB91605A シリーズ
ER23 ∼ ER0 ( 外部割込み要求フラグビット )
外部割込み要求が検出されたことを示します。
ER0 ∼ ER23 ビットは , それぞれ INT0 ∼ INT23 端子に対応しています。たとえば , ER0
ビットは INT0 端子 , ER23 ビットは INT23 端子から外部割込み要求を検出します。
割込み許可レジスタ (ENIR0 ∼ ENIR2) の EN0 ∼ EN23 ビットが "1" に設定されている
ときに , このビットが "1" になると , 外部割込み要求が発生します。
ER23 ∼ ER0
読出し時
書込み時
0
外部割込み要求は検出されてい 割込み要因がクリアされます。
ません。
1
外部割込み要求が検出されまし 無視されます。
た。
< 注意事項 >
•
リードモディファイライト系命令では "1" が読み出されます。
•
外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) で , 検出条件を , "L" レベル検
出 /"H" レベル検出に設定しているときに , このビットをクリアしても , INT0 ∼ INT23
端子から有効レベルが入力されていると , このビットは再び "1" に変わります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
281
第 18 章 外部割込み制御部
18.4
18.4.3
MB91605A シリーズ
割込み許可レジスタ (ENIR0 ∼ ENIR2)
外部割込み要求を許可 / 禁止するレジスタです。
割込み許可レジスタ (ENIR0 ∼ ENIR2) のビット構成を図 18.4-3 に示します。
図 18.4-3 割込み許可レジスタ (ENIR0 ∼ ENIR2) のビット構成
割込み許可レジスタ 0 (ENIR0)
bit
属性
初期値
7
6
5
4
3
2
1
0
EN7
EN6
EN5
EN4
EN3
EN2
EN1
EN0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
割込み許可レジスタ 1 (ENIR1)
bit
属性
初期値
7
6
5
4
3
2
1
0
EN15
EN14
EN13
EN12
EN11
EN10
EN9
EN8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
割込み許可レジスタ 2 (ENIR2)
bit
属性
初期値
7
6
5
4
3
2
1
0
EN23
EN22
EN21
EN20
EN19
EN18
EN17
EN16
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
EN23 ∼ EN0 ( 割込み許可ビット )
外部割込みを許可 / 禁止します。
EN0 ∼ EN23 ビットは , 外部割込み要因レジスタ (EIRR0 ∼ EIRR2) の各ビットに対応
しています。
書込み値
282
説明
0
外部割込み要求の発生を禁止します。
割込み要因を保持するだけで , 外部割込み要求を出力しません。
1
外部割込み要求の発生を許可します。
外部割込み要求を出力します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
18.5
MB91605A シリーズ
18.5 動作説明と設定手順例
外部割込み制御部の動作と設定手順例について説明します。
18.5.1
外部割込み制御部の動作
■ 概要
外部割込み制御部は , 外部信号入力端子に入力された信号から , あらかじめ設定した
エッジ / レベルを検出すると , 割込みが許可されているときに , 外部割込み要求を出力
します。
検出するエッジ / レベルは , 次の 4 種類から選択できます。
-
"H" レベル
-
"L" レベル
-
立上りエッジ (スタンバイモードからの復帰時のみ, INT0∼INT7端子は"L"レベ
ル , INT8 ∼ INT23 端子は立上りエッジを検出 )
-
立下りエッジ (スタンバイモードからの復帰時のみ, INT0∼INT7端子は"H"レベ
ル , INT8 ∼ INT23 端子は立下りエッジを検出 )
他の周辺機器から割込み要求が同時に発生した場合は , 割込みコントローラ内で優先
順位が決められます。外部割込み要求の優先順位が高い場合は外部割込みが発生しま
す。
外部割込み制御部の動作を図 18.5-1 に示します。
図 18.5-1 外部割込み制御部の動作
外部割込み制御部
ELVR
周辺機能からの
割込み要求
割込み要求
レベル
ICRyy
EIRR
ENIR
CPU
割込みコントローラ
比較器
ICRxx
比較器
ILM
割込み要因
ICR :割込みコントロールレジスタ (ICR00 ∼ ICR47)
ILM :割込みレベルマスクレジスタ (ILM)
ELVR:外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2)
EIRR :外部割込み要因レジスタ (EIRR0 ∼ EIRR2)
ENIR :割込み許可レジスタ (ENIR0 ∼ ENIR2)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
283
第 18 章 外部割込み制御部
18.5
MB91605A シリーズ
■ 設定手順
外部割込みは , 次の手順で設定してください。
1. 割込み許可レジスタ (ENIR0 ∼ ENIR2) で外部割込みを禁止する
2. 外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) で検出条件 ( 有効エッジ /
レベル ) を変更する
3. 外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2) を読み出す
4. 外部割込み要因レジスタ (EIRR0 ∼ EIRR2) で割込み要因をクリアする
5. 割込み許可レジスタ (ENIR0 ∼ ENIR2) で外部割込みを許可する
(ただし , 3. と 4. は 16 ビットデータによる同時書込みが可能です。
)
< 注意事項 >
•
外部割込み制御部を設定するときは , 事前に割込み許可レジスタ (ENIR0 ∼ ENIR2) で
外部割込みを禁止してください。
•
外部割込み要求の出力を許可するときは , 事前に外部割込み要因レジスタ (EIRR0 ∼
EIRR2) で割込み要因をクリアしてください。
■ 制御動作
外部割込み制御部は , 次の順序で割込みコントローラへ外部割込みを要求します。
1. INT0 ∼ INT23 端子に入力された信号が , 外部割込み要求レベル設定レジスタ
(ELVR0 ∼ ELVR2) で設定したエッジ / レベルを検出する
2. 割込み許可レジスタ (ENIR0 ∼ ENIR2) で外部割込みが許可されているかどうか
チェックする
3. 外部割込みが許可されている場合は , 割込みコントローラへ外部割込み要求を出力
する
要求レベルがエッジ要求のとき , エッジがあったことを検出するためには , パルス幅
は最小 3T(T:周辺クロック (PCLK) の周期 ) 必要とします。
■ 外部割込み要求の取下げ
外部割込みの検出条件を "L" レベル検出 /"H" レベル検出に設定しているときは , 外部
割込みを取り下げても , 割込み要因が外部割込み要因レジスタ (EIRR0 ∼ EIRR2) に保
持されます。そのため , 外部割込みは割込みコントローラに出力されたままになりま
す。
割込みコントローラへの外部割込み要求を取り下げるには , 外部割込み要因レジスタ
(EIRR0 ∼ EIRR2) の対応するビットを "0" にクリアしてください。これによって割込
み要因がクリアされ , 外部割込み要求が取り下げられます。
ただし , INT0 ∼ INT23 端子から有効レベルが入力されている間は , 外部割込み要因レ
ジスタ (EIRR0 ∼ EIRR2) をクリアしても , 外部割込みは割込みコントローラへ出力さ
れたままになります。
284
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
18.5
MB91605A シリーズ
割込み要因の保持については図 18.5-2 に , 割込み要因のクリアについては図 18.5-3 に
示します。
図 18.5-2 割込み要因の保持
外部割込み要求の入力
エッジ / レベル検出
外部割込み要因レジスタ
(EIRR0 ∼ EIRR2)
ゲート
割込みコントローラ
外部割込み要求を取り下げても
割込み要因を保持し続ける
図 18.5-3 割込み要因のクリア
INT 入力
"H" レベル検出設定時
(ELVR の LBx ビット , LAx ビット =01)
"H" レベル
割込み要求出力
EIRR への "0" 書込みで
取り下げられる
ELVR:外部割込み要求レベル設定レジスタ (ELVR0 ∼ ELVR2)
EIRR:外部割込み要因レジスタ (EIRR0 ∼ EIRR2)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
285
第 18 章 外部割込み制御部
18.5
18.5.2
MB91605A シリーズ
スタンバイモードからの復帰
■ 概要
スタンバイモード ( メインタイマモードまたはストップモード ) からの復帰に , 外部割
込み要求を利用できます。スタンバイモード時に , INT0 ∼ INT23 端子に最初に入力さ
れた信号は非同期で入力され , スタンバイモードからの復帰に利用できます。
■ 設定
スタンバイモードに移行する前に , 割込み許可レジスタ (ENIR0 ∼ ENIR2) で INT0 ∼
INT23 端子を次のように設定してください。
-
スタンバイモードからの復帰に利用する端子:割込み要求の出力許可
-
スタンバイモードからの復帰に利用しない端子:割込み要求の出力禁止
■ 復帰動作
スタンバイモード時に , INT0 ∼ INT23 端子に入力された信号で有効レベルを検出する
と , スタンバイモードから復帰します。
外部割込み要求の検出条件とスタンバイモードからの復帰レベルの対応を表 18.5-1 に
示します。
表 18.5-1 外部割込み要求の検出条件とスタンバイモードからの復帰レベル
検出条件
LB23 ∼ LB0
LA23 ∼ LA0
スタンバイモードからの復帰
レベル
"L" レベル検出
0
0
"L" レベル検出
"H" レベル検出
0
1
"H" レベル検出
立上りエッジ検出
1
0
INT0∼INT7端子は"L"レベル,
INT8 ∼ INT23 端子は立上り
エッジを検出
立下りエッジ検出
1
1
INT0∼INT7端子は"H"レベル,
INT8 ∼ INT23 端子は立下り
エッジを検出
スタンバイモードからの復帰後 , 発振安定待ち時間が経過するまでは , 他の外部割込み
要求を認識できません。スタンバイモードから復帰した後に , 外部割込み要求を出力す
る場合は , 発振安定待ち時間が経過してから , 外部割込み要求の信号を入力してくださ
い。
286
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 18 章 外部割込み制御部
18.5
MB91605A シリーズ
INT0 端子と INT1 端子を例とした , スタンバイモードからの復帰動作を図 18.5-4 に示
します。
図 18.5-4 スタンバイモードからの復帰動作
INT1
INT0
内部 STOP
命令実行 (run)
内部動作
(RUN)
X0
周辺クロック
(PCLK)
外部割込み要求
フラグクリア
ER0
EN0
"1" ( スタンバイモードに遷移前に許可へ設定 )
ER1
EN1
"1" ( スタンバイモードに遷移前に許可へ設定 )
STANDBY
発振安定待ち時間
RUN
ER1, ER0 :外部割込み要因レジスタ 0 (EIRR0) の ER1, ER0 ビット
EN1, EN0 :割込み許可レジスタ 0 (ENIR0) の EN1, EN0 ビット
STADNBY :スタンバイモード
RUN
:動作中
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
287
第 18 章 外部割込み制御部
18.5
18.5.3
MB91605A シリーズ
スリープモードからの復帰
■ 概要
スリープモードからの復帰に , 外部割込み要求を利用できます。
■ 設定
スリープモードに移行する前に, 割込み許可レジスタ (ENIR0∼ENIR2) でINT0∼INT23
端子を次のように設定してください。
-
スリープモードからの復帰に利用する端子:割込み要求の出力許可
-
スリープモードからの復帰に利用しない端子:割込み要求の出力禁止
■ 復帰動作
スリープモード時に , INT0 ∼ INT23 端子に設定したエッジ / レベルが入力されるとス
リープモードから復帰します。
288
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 19 章 ウォッチドッグ
タイマ
ウォッチドッグタイマの機能と動作について説明
します。
19.1 概要
19.2 構成
19.3 レジスタ
19.4 動作説明と設定手順例
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
289
第 19 章 ウォッチドッグタイマ
19.1
MB91605A シリーズ
19.1 概要
ウォッチドッグタイマは , ソフトウェアが暴走などの異常動作をしていないかどうかを監視
するタイマです。
■ 概要
ウォッチドッグタイマは , 事前に設定した周期が経過する前にウォッチドッグタイマ
がクリアされなければ , ソフトウェアの暴走が発生したと判断し , CPU に対してリセッ
ト要求を出力します。このリセット要求をウォッチドッグリセット要求とよびます。
ウォッチドッグタイマの動作時は , 事前に設定した周期が経過する前にタイマを定期
的にクリアし続ける必要があります。ソフトウェアの暴走などの異常動作が発生して ,
定期的なクリアが行われないとウォッチドッグタイマはオーバフローし , ウォッチ
ドッグリセット要求を出力します。
•
CPU のプログラム動作中に周期をカウントし , CPU 停止中 ( スリープモード / ストッ
プモード / メインタイマモード ) はカウントを停止します。
•
スタンバイモード (メインタイマモード/ストップモード) への移行を検出して, CPU
に対してウォッチドッグリセット要求を出力できます。
•
ウォッチドッグタイマ0クリアレジスタ (WDTCPR0) に不正な値が書き込まれると ,
CPU に対してウォッチドッグリセット要求を出力します。
•
ウォッチドッグタイマ周期は , 周辺クロック (PCLK) × (29 ∼ 224) の中から選択でき
ます。
290
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 19 章 ウォッチドッグタイマ
19.2
MB91605A シリーズ
19.2 構成
ウォッチドッグタイマの構成を示します。
■ ウォッチドッグタイマのブロックダイヤグラム
ウォッチドッグタイマのブロックダイヤグラムを図 19.2-1 に示します。
図 19.2-1 ウォッチドッグタイマのブロックダイヤグラム
ウォッチドッグタイマ 0
レジスタ値
クリアレジスタ
(WDTCPR0)
保持回路
比較回路
CPAT7∼CPAT0
内部リセット信号
PCLK
スタンバイモード
( メインタイマモード / ストップモード )
ウォッチドッグタイマ 0
制御レジスタ
(WDTCR0)
R
PCLK
RSTP
Q
ウォッチドッグ
リセット要求
S
スリープモード
EN RST
ウォッチドッグタイマ 0
制御レジスタ
(WDTCR0)
PCLK
オーバフロー
周期選択回路
オーバフロー
ウォッチドッグタイマ
(24 ビットアップカウンタ )
WT3 ∼ WT0
PCLK:周辺クロック (PCLK)
EN :許可
RST :リセット
R
:リセット
S
:セット
Q
:出力
•
ウォッチドッグタイマ 0 制御レジスタ (WDTCR0)
ウォッチドッグタイマの動作を制御するレジスタです。
•
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0)
ウォッチドッグタイマを起動 , およびクリアするレジスタです。
•
ウォッチドッグタイマ
24 ビットのアップカウンタです。
•
レジスタ値保持回路
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) に書き込まれた値を保持する
回路です。
•
比較回路
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) に書き込まれた値が , 前回書
き込まれた値と一致するかどうか比較する回路です。
•
オーバフロー周期選択回路
ウォッチドッグタイマのオーバフロー周期を選択する回路です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
291
第 19 章 ウォッチドッグタイマ
19.2
MB91605A シリーズ
■ クロック
ウォッチドッグタイマで使用するクロックを表 19.2-1 に示します。
表 19.2-1 ウォッチドッグタイマで使用するクロック
クロック名
動作クロック
292
内容
周辺クロック (PCLK)
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 19 章 ウォッチドッグタイマ
19.3
MB91605A シリーズ
19.3 レジスタ
ウォッチドッグタイマで使用するレジスタの構成と機能について説明します。
■ ウォッチドッグタイマのレジスタ一覧
ウォッチドッグタイマのレジスタ一覧を表 19.3-1 に示します。
表 19.3-1 ウォッチドッグタイマのレジスタ一覧
CM71-10147-2
レジスタ略称
WDTCR0
レジスタ名
ウォッチドッグタイマ 0 制御レジスタ
参照先
19.3.1
WDTCPR0
ウォッチドッグタイマ 0 クリアレジスタ
19.3.2
FUJITSU SEMICONDUCTOR LIMITED
293
第 19 章 ウォッチドッグタイマ
19.3
MB91605A シリーズ
ウォッチドッグタイマ 0 制御レジスタ (WDTCR0)
19.3.1
ウォッチドッグタイマの動作を制御するレジスタです。
ウォッチドッグタイマ0制御レジスタ (WDTCR0) のビット構成を図 19.3-1に示します。
図 19.3-1 ウォッチドッグタイマ 0 制御レジスタ (WDTCR0) のビット構成
bit
属性
初期値
7
6
5
4
3
2
1
0
予約
R/W
RSTP
予約
R/W
WT3
WT2
WT1
WT0
R/W
予約
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタは , ウォッチドッグタイマを起動する前のみ書き換えられます。
[bit7]:予約ビット
294
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 19 章 ウォッチドッグタイマ
19.3
MB91605A シリーズ
[bit6]:RSTP ( ストップモード検出リセット許可ビット )
ウォッチドッグタイマの動作時 , CPU の状態がスタンバイモード ( メインタイマモー
ド / ストップモード ) になったとき , ウォッチドッグリセット要求の出力を許可するか
どうかを設定します。
書込み値
説明
0
ウォッチドッグリセット要求の出力を禁止します。
スタンバイモード ( メインタイマモード / ストップモード ) への移行を検
出したとき , ウォッチドッグタイマは一時停止し , スタンバイモードか
ら復帰するまでカウントを行いません。
1
ウォッチドッグリセット要求の出力を許可します。
スタンバイモード ( メインタイマモード / ストップモード ) への移行を検
出したとき , ウォッチドッグリセット要求を出力します。
< 注意事項 >
•
スタンバイモード ( メインタイマモード / ストップモード ) を使用するときは , この
ビットを "0" に設定してください。
•
このレジスタは , ウォッチドッグタイマの起動前しか書き換えられません。そのため ,
このビットを "1" に設定すると , ウォッチドッグタイマの起動後は , スタンバイモード
( 時計モード / ストップモード ) を検出して , ウォッチドッグリセット要求が出力され
るため , スタンバイモードが使用できなくなります。
[bit5, bit 4]:予約ビット
CM71-10147-2
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
295
第 19 章 ウォッチドッグタイマ
19.3
MB91605A シリーズ
[bit3 ∼ bit0]:WT3 ∼ WT0 ( ウォッチドッグタイマ周期選択ビット )
ウォッチドッグタイマがクリアされてから , ウォッチドッグリセット要求を出力する
までの周期を , 次の中から選択します。
WT3 ∼ WT0
ウォッチドッグタイマ周期
0000
PCLK × 29
0001
PCLK × 210
0010
PCLK × 211
0011
PCLK × 212
0100
PCLK × 213
0101
PCLK × 214
0110
PCLK × 215
0111
PCLK × 216
1000
PCLK × 217
1001
PCLK × 218
1010
PCLK × 219
1011
PCLK × 220
1100
PCLK × 221
1101
PCLK × 222
1110
PCLK × 223
1111
PCLK × 224
PCLK: 周辺クロック (PCLK) の周期
296
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 19 章 ウォッチドッグタイマ
19.3
MB91605A シリーズ
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0)
19.3.2
ウォッチドッグタイマを起動 , およびクリアするレジスタです。
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) のビット構成を図 19.3-2 に示し
ます。
図 19.3-2 ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) のビット構成
bit 7
0
CPAT7 ∼ CPAT0
R/W
属性
0
初期値
R/W:リード / ライト可能
[bit7 ∼ bit0]:CPAT7 ∼ CPAT0 ビット
本デバイスのリセット後 , このレジスタに任意の値を書き込むとウォッチドッグタイ
マが起動します。
ウォッチドッグタイマを起動後は , ウォッチドッグリセット要求の出力を防ぐために
タイマ周期が経過する前に , ウォッチドッグタイマをクリアしなければなりません。
ウォッチドッグタイマをクリアするには , このビットに前回書き込んだ値の反転値を
書き込みます。
ウォッチドッグタイマのクリアについては ,「19.4.1 ウォッチドッグタイマの動作」の
「■ ウォッチドッグタイマのクリア」を参照してください。
CPAT7 ∼ CPAT0
書込み時
読出し時
前 回 の 書 込 み 値 起動後のウォッチドッグタイマ "0" が読み出されます。
の反転値
がクリアされます。
前回の書込み値 その時点でウォッチドッグリ
の反転値以外
セット要求を出力します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
297
第 19 章 ウォッチドッグタイマ
19.4
MB91605A シリーズ
19.4 動作説明と設定手順例
ウォッチドッグタイマの動作について説明します。また , 各動作状態を設定するための手順
例も示します。
ウォッチドッグタイマの動作
19.4.1
定期的にウォッチドッグタイマのクリアをするようにプログラムを作成しているのに ,
ウォッチドッグタイマがクリアされなかった場合は , 何らかの誤動作が発生したと判断し ,
ウォッチドッグタイマは CPU に対してウォッチドッグリセット要求を出力します。
■ 概要
ウォッチドッグタイマ動作時は , 事前に設定した周期が経過する前にウォッチドッグ
タイマがクリアされなければ , ソフトウェアの暴走が発生したと判断し , CPU に対して
ウォッチドッグリセット要求を出力します。
ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) に不正な値が書き込まれたとき
や , CPU がスタンバイモード ( メインタイマモード / ストップモード ) に移行した場合
もウォッチドッグリセット要求を出力できます。
なお , CPU の停止中はウォッチドッグタイマもカウント動作を停止します。
■ 設定
ウォッチドッグタイマを利用する場合は , ウォッチドッグタイマを起動する前に ,
ウォッチドッグタイマ 0 制御レジスタ (WDTCR0) で次の設定を行ってください。
•
ウォッチドッグタイマがクリアされてから , ウォッチドッグリセット要求を出力す
るまでの周期 (WT3 ∼ WT0 ビット )
•
スタンバイモード ( メインタイマモード / ストップモード ) になったとき , ウォッチ
ドッグリセット要求の出力を許可するかどうか (RSTP)
< 注意事項 >
298
•
ウォッチドッグタイマは , CPU が動作している間だけカウントを行います。そのため ,
WT3 ∼ WT0 ビットは , プログラムステップ数とクロック分周の設定を基準に設定し
てください。
•
スタンバイモード ( メインタイマモード / ストップモード ) を使用するときは , RSTP
ビットを "0" に設定してください。
•
RSTP ビットを "1" に設定すると , ウォッチドッグタイマの起動後は , スタンバイモー
ド ( メインタイマモード / ストップモード ) が使用できなくなります。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 19 章 ウォッチドッグタイマ
19.4
■ 動作
本デバイスのリセット後 , ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) の
CPAT7∼CPAT0ビットに任意の値を書き込むと, ウォッチドッグタイマが起動し, CPU
の動作中は周辺クロック (PCLK) の立上りエッジでカウントします。
ウォッチドッグタイマがクリアされずに , ウォッチドッグタイマ 0 制御レジスタ
(WDTCR0) の WT3 ∼ WT0 ビットで設定した周期が経過すると , CPU に対してウォッ
チドッグリセット要求を出力します。
また , ウォッチドッグタイマは , ドーズモードやスリープモードなど , CPU が停止して
いるときはカウントを一時停止します。
カウントを一時停止しても , ウォッチドッグタイマの値はクリアされず , カウントを再
開すると停止したときの値から再開します。
< 注意事項 >
•
DMA コントローラ (DMAC) による DMA 転送が行われている場合も , CPU が動作して
いる間は , ウォッチドッグタイマはカウント動作を継続します。
•
CPUのソースクロック (SRCCLK) の発振安定待ち時間中は周辺クロック (PCLK) が停
止するため , ウォッチドッグタイマのカウント動作も停止します。
•
CPU 動作状態のサンプリングは , 周辺クロック (PCLK) で行われます。そのため , 周
辺クロック (PCLK) の周期に満たない動作状態の変化は無視されます。
■ ウォッチドッグタイマのクリア
ウォッチドッグタイマの起動時にウォッチドッグタイマ 0クリアレジスタ (WDTCPR0)
の CPAT7 ∼ CPAT0 ビットに書き込んだ値の反転値を書き込むことで , ウォッチドッ
グタイマをクリアできます。
たとえば , ウォッチドッグタイマ起動時 , ウォッチドッグタイマ 0 クリアレジスタ
(WDTCPR0) の CPAT7 ∼ CPAT0 ビットに "55H" を書き込んだ場合は , 反転値 "AAH" を
書き込むとクリアできます。
以降 , CPAT7 ∼ CPAT0 ビットに "55H" と "AAH" を交互に書き込むと , ウォッチドッグ
タイマのクリアを繰り返すことができます。
ただし , CPAT7 ∼ CPAT0 ビットに反転値以外の値を書き込んだ場合は , その時点で
CPU に対してウォッチドッグリセット要求を出力します。
< 注意事項 >
前回書き込んだ値を憶えておくことが難しい場合は , ウォッチドッグタイマをクリアする
ときに , "AAH", "55H" のように毎回 , 書込み値と反転値の両方を連続で書き込むこともで
きます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
299
第 19 章 ウォッチドッグタイマ
19.4
MB91605A シリーズ
■ ウォッチドッグリセット要求の出力
ウォッチドッグタイマは , 次のいずれかの場合に CPU に対してウォッチドッグリセッ
ト要求を出力します。
•
ウォッチドッグタイマ0制御レジスタ (WDTCR0) のWT3∼WT0ビットで設定した周
期が経過した場合 ( オーバフロー )
•
ウォッチドッグタイマ0クリアレジスタ (WDTCPR0) のCPAT7∼CPAT0ビットに, 前
回書き込んだ値の反転値以外の値が書き込まれた場合
•
CPUがスタンバイモード ( メインタイマモード/ストップモード ) に移行した場合
(ウォッチドッグタイマ0制御レジスタ (WDTCR0) のRSTPビットの設定により出力)
ウォッチドッグリセット要求を出力した後の動作については ,「第 11 章 リセット」の
「11.5 動作説明」を参照してください。
300
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロード
タイマ
16 ビットリロードタイマの機能と動作について説
明します。
20.1 概要
20.2 構成
20.3 端子
20.4 レジスタ
20.5 割込み
20.6 動作説明と設定手順例
20.7 使用上の注意
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
301
第 20 章 16 ビットリロードタイマ
20.1
MB91605A シリーズ
20.1 概要
16 ビットリロードタイマは , あらかじめ設定した値からカウントダウンするダウンカウンタ
です。このタイマは , 内部クロック ( 周辺クロック ) と同期してカウントダウンするインター
バルタイマとして使用できるほか , 外部イベントをカウントするイベントカウンタとしても
使用できます。
本製品は , 16 ビットリロードタイマを 3 チャネル内蔵しています。
■ 概要
•
タイマモード:インターバルタイマモードまたはイベントカウンタモードとして使
用できます。
-
インターバルタイマモード
内部クロック ( 周辺クロック ) に同期してカウントダウンします。内部クロック
( 周辺クロック ) は , 6 種類 ( 周辺クロック (PCLK) の 2 分周 , 4 分周 , 8 分周 , 16
分周 , 32 分周 , 64 分周 ) から選択します。
-
イベントカウンタモード
外部クロックのエッジ ( 立下りエッジ / 立上りエッジ / 両エッジ ) を検出してカ
ウントします。
また , ch.0 の出力を ch.1 で , ch.1 の出力を ch.2 でカウントするカスケードモード
も利用できます。
•
動作モード:次の 2 種類から選択できます。
-
リロードモード
ダウンカウンタがアンダフローすると , リロード値をリロードしてカウント動
作を繰り返すモードです。
-
ワンショットモード
ダウンカウンタがアンダフローすると , カウント動作を停止するモードです。
•
入力端子機能:インターバルタイマモード時は , 入力端子の機能をトリガ入力機能 /
ゲート入力機能の中から選択できます。
-
トリガ入力機能
入力端子から有効エッジ ( 立下りエッジ / 立上りエッジ / 両エッジ ) を検出する
と , カウントを開始します。
-
ゲート入力機能
入力端子から有効レベルが入力されている間だけカウント動作を続けます。
•
割込み要求:ダウンカウンタがアンダフローしたときに割込み要求を発生できま
す。
302
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.2
MB91605A シリーズ
20.2 構成
16 ビットリロードタイマの構成を示します。
■ 16 ビットリロードタイマのブロックダイヤグラム
16 ビットリロードタイマのブロックダイヤグラムを図 20.2-1 に示します。
図 20.2-1 16 ビットリロードタイマのブロックダイヤグラム
リード / ライト可能
リード / ライト
可能
TMRLRA
リロード
RELD
周
辺
バ
ス
INTE
TMR
リードオンリ
( ダウンカウンタ )
アンダ
フロー
UF
割込み要求
ワンショット終了
OUTL
出力
FF
TOUT0 ∼
TOUT2 端子
周辺クロック
(PCLK)
カウント制御
カウント許可
トリガ
トリガ
CNTE
TRG
ゲート
CSL2
CSL1
選択
クロック選択回路
CSL0
GATE
プリスケーラ
周辺クロック
(PCLK)
TIN0 ∼
TIN2 端子
周辺クロック
(PCLK)
エッジ
制御
入力
+
同期化
FF
ゲート
制御
TRGM1
選択
TMRLRA : 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
TMR
: 16 ビットタイマレジスタ (TMR0 ∼ TMR2)
TMCSR : コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2)
CM71-10147-2
TRGM0
TMCSR
ビット順不同
FUJITSU SEMICONDUCTOR LIMITED
303
第 20 章 16 ビットリロードタイマ
20.2
•
MB91605A シリーズ
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2)
16 ビットリロードタイマの動作を制御するレジスタです。
•
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
リロード値を設定するレジスタです。
•
16 ビットタイマレジスタ (TMR0 ∼ TMR2)
ダウンカウンタとして動作します。このレジスタを読み出すとダウンカウンタの値
が読み出せます。
•
プリスケーラ
インターバルタイマモードを選択した場合 , 周辺クロック (PCLK) を分周します。
•
クロック選択回路
カウント用クロックを選択します。
•
エッジ制御部
TIN0 ∼ TIN2 端子をトリガ入力端子として使用するときに , 信号の検出エッジを制
御します。
•
ゲート制御部
TIN0 ∼ TIN2 端子をゲート入力端子として使用するときに , 端子から入力される信
号レベルを制御します。
•
カウント制御部
16 ビットリロードタイマのカウントを制御します。
■ クロック
16 ビットリロードタイマで使用するクロックを表 20.2-1 に示します。
表 20.2-1 16 ビットリロードタイマで使用するクロック
クロック名
動作クロック
内容
周辺クロック (PCLK)
備考
−
カウント用クロック 内部クロック ( 周辺クロッ 周辺クロック (PCLK) を分周して
ク)
生成
外部クロック
304
TIN0 ∼ TIN2 端子から入力
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.3
MB91605A シリーズ
20.3 端子
16 ビットリロードタイマで使用する端子について説明します。
■ 概要
16 ビットリロードタイマには次の 2 種類の端子があります。
•
TOUT0 ∼ TOUT2 端子
16 ビットリロードタイマの波形出力端子です。この端子は兼用端子です。
•
TIN0 ∼ TIN2 端子
16 ビットリロードタイマの入力端子です。設定によってカウント用クロック , トリ
ガ , ゲートを入力します。この端子は兼用端子です。
■ 端子とチャネルの対応
チャネルと端子の対応を表 20.3-1 に示します。
表 20.3-1 チャネルと端子の対応
チャネル
CM71-10147-2
波形出力端子
入力端子
0
TOUT0
TIN0
1
TOUT1
TIN1
2
TOUT2
TIN2
FUJITSU SEMICONDUCTOR LIMITED
305
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
20.4 レジスタ
16 ビットリロードタイマで使用するレジスタの構成と機能について説明します。
■ 16 ビットリロードタイマのレジスタ一覧
16 ビットリロードタイマのレジスタ一覧を表 20.4-1 に示します。
表 20.4-1 16 ビットリロードタイマのレジスタ一覧
チャネル
0
1
2
306
レジスタ略称
TMCSR0
コントロールステータスレジスタ 0
レジスタ名
参照先
20.4.1
TMRLRA0
16 ビットタイマリロードレジスタ A0
20.4.2
TMR0
16 ビットタイマレジスタ 0
20.4.3
TMCSR1
コントロールステータスレジスタ 1
20.4.1
TMRLRA1
16 ビットタイマリロードレジスタ A1
20.4.2
TMR1
16 ビットタイマレジスタ 1
20.4.3
TMCSR2
コントロールステータスレジスタ 2
20.4.1
TMRLRA2
16 ビットタイマリロードレジスタ A2
20.4.2
TMR2
16 ビットタイマレジスタ 2
20.4.3
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
コントロールステータスレジスタ
(TMCSR0 ∼ TMCSR2)
20.4.1
16 ビットリロードタイマの動作を制御するレジスタです。
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) のビット構成を図 20.4-1 に示
します。
図 20.4-1 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) のビット構成
bit
属性
15
14
13
12
11
10
9
8
予約
R/W
予約
R/W
TRGM1
TRGM0
CSL2
CSL1
CSL0
GATE
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
7
6
5
4
3
2
1
0
未定義
未定義
OUTL
RELD
INTE
UF
CNTE
TRG
−
X
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
初期値
bit
属性
初期値
−
X
R/W:リード / ライト可能
−:未定義
X:不定
[bit15, bit14]:予約ビット
書込み時
必ず "0" を書き込んでください。
読出し時
"0" が読み出されます。
[bit13, bit12]:TRGM1, TRGM0 ( 入力端子動作選択ビット )
16 ビットリロードタイマの TIN0 ∼ TIN2 端子の動作を選択します。16 ビットリロー
ドタイマをインターバルタイマモードで使用している場合と , イベントカウンタモー
ドで使用している場合でこのビットの意味が異なります。
•
インターバルタイマモードの場合 (CSL2 ∼ CSL0=000 ∼ 101)
-
TIN0 ∼ TIN2 端子にトリガ入力機能を選択 (GATE =0)
有効エッジを選択します。
TIN0 ∼ TIN2 端子から入力される信号に , このビットで設定したエッジが検出さ
れると , ダウンカウンタがカウントダウンを開始します。
-
TIN0 ∼ TIN2 端子にゲート機能を選択 (GATE =1)
有効レベルを選択します。
TIN0 ∼ TIN2 端子からこのビットで設定したレベルの信号が入力されている間
のみダウンカウンタがカウントダウンします。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
307
第 20 章 16 ビットリロードタイマ
20.4
TRGM1
MB91605A シリーズ
TRGM0
トリガ入力選択時 *
(GATE =0)
ゲート機能選択時
(GATE =1)
0
0
エッジ検出禁止
"L" レベル
0
1
立上りエッジ
"H" レベル
1
0
立下りエッジ
"L" レベル
1
1
両エッジ
"H" レベル
*
•
TRG ビットに "1" を書き込んだ場合は , このビットの設定にかかわらず , ダウン
カウンタがカウントダウンを開始します。
イベントカウンタモードの場合 (CSL2 ∼ CSL0=110, 111)
有効エッジを選択します。
TIN0 ∼ TIN2 端子から入力される信号に , このビットで設定したエッジが検出され
ると , ダウンカウンタがカウントダウンします。
TRGM1
TRGM0
説明
0
0
設定禁止
0
1
立上りエッジ
1
0
立下りエッジ
1
1
両エッジ
< 注意事項 >
CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き換え
てください。
ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値にかか
わらず書き換えられます。
[bit11 ∼ bit9]:CSL2 ∼ CSL0 ( カウントソース選択ビット )
16 ビットリロードタイマのタイマモードを選択します。インターバルタイマモード時
は周辺クロック (PCLK) の分周比を , イベントカウンタモード時は , カスケードモード
で使用するか外部クロックを使用するかも選択します。
CSL2
CSL1
CSL0
説明
0
0
0
0
0
1
イ ン タ ー バ ル 周辺クロック (PCLK) の 2 分周 (=21)
タイマモード
周辺クロック (PCLK) の 4 分周 (=22)
0
1
0
周辺クロック (PCLK) の 8 分周 (=23)
0
1
1
周辺クロック (PCLK) の 16 分周 (=24)
1
0
0
周辺クロック (PCLK) の 32 分周 (=25)
1
0
1
周辺クロック (PCLK) の 64 分周 (=26)
1
1
0
1
1
1
イ ベ ン ト カ ウ カスケードモード *
ンタモード
外部クロック
* : カスケードモードを選択した場合の動作については , 「20.6.3 カスケードモード時
の動作」を参照してください。
308
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
< 注意事項 >
•
CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き
換えてください。
ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値に
かかわらず書き換えられます。
•
2チャネルの16ビットリロードタイマをカスケード接続して使用する場合は, このビッ
トの設定を次のようにしてください。
- 小さい番号のチャネル:インターバルタイマモードまたは外部クロックを選択
- 大きい番号のチャネル:カスケードモードを設定
•
このビットでイベントカウンタモードを設定した場合は , GATE ビットの設定は無視
されます。
[bit8]:GATE ( ゲート入力許可ビット )
タイマモードをインターバルタイマモードに設定したときに TIN0 ∼ TIN2 端子に割り
当てる機能を選択します。
•
トリガ入力機能:TIN0 ∼ TIN2 端子から有効エッジが入力されると , カウントダウン
を開始します。
•
ゲート機能:TIN0 ∼ TIN2 端子から有効レベルが入力されている間だけ , カウントダ
ウンします。
書込み値
説明
0
トリガ入力機能
1
ゲート機能
< 注意事項 >
•
CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き
換えてください。
ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値に
かかわらず書き換えられます。
•
CSL2 ∼ CSL0 ビットでイベントカウンタモードを選択 (CSL2 ∼ CSL0=110/111) した
場合は , このビットの設定は無視されます。
[bit7, bit6]:未定義ビット
CM71-10147-2
書込み時
無視されます。
読出し時
値は不定です。
FUJITSU SEMICONDUCTOR LIMITED
309
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
[bit5]:OUTL ( 出力極性指定ビット )
16 ビットリロードタイマ起動時に , TOUT0 ∼ TOUT2 端子から出力する信号レベルを
指定します。
書込み値
説明
0
通常極性 ("L" レベル )
1
反転極性 ("H" レベル )
< 注意事項 >
CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き換え
てください。
ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値にかか
わらず書き換えられます。
[bit4]:RELD ( リロード動作許可ビット )
16 ビットリロードタイマの動作モードを次のいずれかから選択します。
•
ワンショットモード
ダウンカウンタがアンダフローすると , 次に起動トリガが入力されるまでカウント
動作を停止するモードです。
•
リロードモード
ダウンカウンタがアンダフローすると , 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) の値をダウンカウンタにリロードしてカウント動作を続
けるモードです。
書込み値
説明
0
ワンショットモード
1
リロードモード
< 注意事項 >
CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き換え
てください。
ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値にかか
わらず書き換えられます。
[bit3]:INTE ( 割込み要求許可ビット )
ダウンカウンタがアンダフローしたとき (UFビット=1) に, アンダフロー割込み要求を
発生させるかどうかを設定します。
書込み値
310
説明
0
アンダフロー割込み要求の発生を禁止します。
1
アンダフロー割込み要求の発生を許可します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
[bit2]:UF ( アンダフロー割込み要求フラグビット )
ダウンカウンタがアンダフローしたことを示します。
このビットが "1" のときに INTE ビットに "1" が設定されていると , アンダフロー割込
み要求が発生します。
UF
読出し時
書込み時
0
ダウンカウンタはアンダフローしてい このビットを"0"にクリアします。
ません。
1
ダウンカウンタがアンダフローしまし 無視されます。
た。
[bit1]:CNTE ( カウント動作許可ビット )
ダウンカウンタの動作を許可 / 停止します。
書込み値
説明
0
カウント動作を停止します。
1
カウント動作を許可します ( 起動トリガ待ち ) 。
< 注意事項 >
ダウンカウンタの動作中に , このビットに "0" を書き込むとダウンカウンタは停止します。
[bit0]:TRG ( ソフトウェアトリガビット )
16 ビットリロードタイマをソフトウェアで起動します。このビットに "1" を書き込む
と , ダウンカウンタは 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
の値をロードして , カウント動作を開始します。
TRG
書込み時
0
無視されます。
1
16 ビットリロードタイマを起動します。
読出し時
"0" が読み出されます。
< 注意事項 >
•
CNTE ビットが "0" のときにこのビットに "1" を書き込んでも , ダウンカウンタは動作
しません。
•
16ビットリロードタイマの動作が許可 (CNTE=1) されているときに, このビットに"1"
を書き込むと, TRGM1, TRGM0ビットの設定にかかわらずダウンカウンタが動作を開
始します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
311
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2)
20.4.2
ダウンカウンタの初期値を設定するレジスタです。
リロードモード時はアンダフローが発生すると , このレジスタの値がダウンカウンタにリ
ロードされます。
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) のビット構成を図 20.42 に示します。
図 20.4-2 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) のビット構成
bit 15
0
D15 ∼ D0
R/W
属性
X
初期値
R/W:リード / ライト可能
X:不定
このレジスタに設定した値 +1 をカウントダウンし終わると , アンダフローが発生しま
す。また , TOUT0 ∼ TOUT2 端子から出力される信号レベルが反転します
< 注意事項 >
このレジスタは必ずハーフワードでアクセスしてください。
312
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.4
MB91605A シリーズ
16 ビットタイマレジスタ (TMR0 ∼ TMR2)
20.4.3
このレジスタを読み出すとダウンカウンタの値が読み出せます。
16 ビットタイマレジスタ (TMR0 ∼ TMR2) のビット構成を図 20.4-3 に示します。
図 20.4-3 16 ビットタイマレジスタ (TMR0 ∼ TMR2) のビット構成
bit 15
0
D15 ∼ D0
属性
R
初期値
X
R:リードオンリ
X:不定
< 注意事項 >
このレジスタは必ずハーフワードで読み出してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
313
第 20 章 16 ビットリロードタイマ
20.5
MB91605A シリーズ
20.5 割込み
ダウンカウンタがアンダフローすると , アンダフロー割込み要求が発生します。
■ 概要
16 ビットリロードタイマで使用できる割込みについて表 20.5-1 に示します。
表 20.5-1 16 ビットリロードタイマの割込み
割込み要求
割込み要求フラグ
アンダフロー割 TMCSR の UF=1
込み要求
割込み要求許可
割込み要求のクリア
TMCSR の INTE=1 TMCSR の UF ビットに "0"
を書き込む
TMCSR : コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2)
< 注意事項 >
•
割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点
で , 割込み要求が発生します。
割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。
- 割込み要求の発生を許可する前に割込み要求をクリアする
•
•
314
- 割込み許可と同時に割込み要求をクリアする。
各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく
ださい。
割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼
ICR47) で設定します。割込みレベルの設定については , 「第 12 章 割込みコントロー
ラ」を参照してください。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
20.6 動作説明と設定手順例
16 ビットリロードタイマの動作について説明します。また , 各動作状態を設定するための手
順例も示します。
■ 概要
16 ビットリロードタイマは , あらかじめ設定した値からカウントダウンするダウンカ
ウンタです。コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0
ビットでタイマモードを次の中から選択できます。
•
インターバルタイマモード (CSL2 ∼ CSL0=000 ∼ 101)
周辺クロック (PCLK) を分周したカウント用クロックで動作します。
•
イベントカウンタモード (CSL2 ∼ CSL0=110, 111)
TIN0 ∼ TIN2 端子から有効エッジが入力されるたびにカウントするモードです。
また , ch.0 の出力を ch.1 で , ch.1 の出力を ch.2 でカウントするカスケードモードも
使用できます。
■ TOUT0 ∼ TOUT2 端子から出力される信号レベルの設定方法
TOUT0 ∼ TOUT2 端子から出力される信号レベルはコントロールステータスレジスタ
(TMCSR0 ∼ TMCSR2) の OUTL ビットの設定によって異なります。
● リロードモード時
リロードモード時の TOUT0 ∼ TOUT2 端子から出力される信号レベルを表 20.6-1 に示
します。
表 20.6-1 リロードモード時の信号レベル
通常極性 (OUTL=0)
反転極性 (OUTL=1)
16 ビットリロードタイマ起動時
"L" レベル
"H" レベル
その後
アンダフローが発生するたびに信号レベルが反転
● ワンショットモード時
ワンショットモード時の TOUT0 ∼ TOUT2 端子から出力される信号レベルを表 20.6-2
に示します。
表 20.6-2 ワンショットモード時の信号レベル
通常極性 (OUTL=0)
反転極性 (OUTL=1)
16 ビットリロードタイマ起動時
"L" レベル
"H" レベル
起動トリガ入力時
"H" レベル
"L" レベル
アンダフロー発生時
"L" レベル
"H" レベル
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の OUTL ビットと出力波形の
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
315
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
対応を図 20.6-1 に示します。
図 20.6-1 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の OUTL ビットと
出力波形の対応
モード
OUTL
初期値
起動トリガ
カウント中
アンダフロー
アンダフロー
アンダフロー
0
リロード
1
0
トリガ待ち状態
ワンショット
1
20.6.1
インターバルタイマモード時の動作
16 ビットリロードタイマを内部クロック ( 周辺クロック ) に同期してカウントするインター
バルタイマモードで使用する場合の動作について説明します。
カウント用クロックは , 周辺クロック (PCLK) を分周して生成されます。
■ 設定
16 ビットリロードタイマをインターバルタイマモードで使用する場合に必要な設定に
ついて説明します。
● インターバルタイマモードの設定
16 ビットリロードタイマをインターバルタイマモードで使用する場合は , コントロー
ルステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットを次のいずれか
に設定し , 周辺クロック (PCLK) の分周比を選択します。
CSL2
316
CSL1
CSL0
タイマモード
周辺クロックの分周比
0
0
0
インターバルタイマモード 2 分周 (=21)
0
0
1
4 分周 (=22)
0
1
0
8 分周 (=23)
0
1
1
16 分周 (=24)
1
0
0
32 分周 (=25)
1
0
1
64 分周 (=26)
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
● 動作モードの設定
インターバルタイマモード時, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
の RELD ビットで動作モードを次の中から選択できます。
•
リロードモード (RELD=1)
ダウンカウンタがアンダフローすると , 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) に設定された値をリロードしてカウント動作を繰り返す
モードです。リロードモードの基本動作を図 20.6-2 に示します。
図 20.6-2 リロードモードの基本動作
TOUT0 ∼
TOUT2 端子
起動トリガ
(OUTL=0)
TMRLRA の値 + 1
カウンタの値
TMRLRA の値 + 1
アンダフロー
TMRLRA の値
:0000
TMRLRA の値
:0000
TMRLRA の値
カウントダウン
•
ワンショットモード (RELD=0)
ダウンカウンタがアンダフローすると , カウント動作を停止するモードです。ワン
ショットモードの基本動作を図 20.6-3 に示します。
図 20.6-3 ワンショットモードの基本動作
TOUT0 ∼ TOUT2 端子
(OUTL=0)
起動トリガ
TMRLRA の値 + 1
アンダフロー
カウンタの値
TMRLRA の値
0000
FFFF
カウントダウン
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
317
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
● TIN0 ∼ TIN2 端子機能の設定
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の TRGM1, TRGM0 ビットと
GATE ビットで , TIN0 ∼ TIN2 端子の機能を次の中から選択できます。
各ビットの組み合わせを表 20.6-3 に示します。
表 20.6-3 各ビットの組み合わせ
TRGM1,
TRGM0
GATE
端子の機能
00
0
TIN0 ∼ TIN2 端子は機能しません。
01
0
TIN0 ∼ TIN2 端子はトリガ入力機能として動作します。
有効エッジは立上りエッジです。
10
0
TIN0 ∼ TIN2 端子はトリガ入力機能として動作します。
有効エッジは立下りエッジです。
11
0
TIN0 ∼ TIN2 端子はトリガ入力機能として動作します。
有効エッジは両エッジです。
00/10
1
TIN0 ∼ TIN2 端子はゲート入力機能として動作します。
有効レベルは "L" レベルです。
01/11
1
TIN0 ∼ TIN2 端子はゲート入力機能として動作します。
有効レベルは "H" レベルです。
■ パルス幅の計算方法
インターバルタイマモード時に , TOUT0 ∼ TOUT2 端子から出力される信号のパルス
幅の計算方法を説明します。
パルス幅 =T × (L+1)
L
T
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) に設定した値
カウント用クロックの周期
■ アンダフロー周期の計算方法
ダウンカウンタの値が "0000H" のときに , さらにカウントダウンしようとすると , アン
ダフローが発生します。ダウンカウンタがカウントを開始してからアンダフローが発
生するまでの周期は , 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
に設定します。
アンダフロー周期の計算方法を説明します。
T × (L+1)
318
T
カウント用クロックの周期
L
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) に設定した値
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリガ入力時 )
TIN0 ∼ TIN2 端子をトリガ入力に使用して , アンダフローが発生するたびに 16 ビット
タイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をリロードし , カウントダ
ウンを継続するモードです。
このモードで利用する場合は, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
を次の様に設定してください。
•
TRGM1, TRGM0 ビット =01 ∼ 11 のいずれか
•
GATE ビット =0
•
RELD ビット =1
● 起動
次の手順で起動してください。
1. コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CNTE ビットで , 16 ビッ
トリロードタイマの動作を許可 (CNTE=1) する
16 ビットリロードタイマが起動トリガ入力待ち状態になります。
2. 次のいずれかの方法で起動トリガを入力する
-
TIN0∼TIN2端子からコントロールステータスレジスタ (TMCSR0∼TMCSR2) の
TRGM1, TRGM0 ビットで設定したエッジを入力する
-
コントロールステータスレジスタ (TMCSR0∼TMCSR2) のTRGビットに"1"を書
き込む
プリスケーラがクリアされます。また , 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) の値がダウンカウンタにロードされ , カウントが開始さ
れます。
起動動作を図 20.6-4 に示します。
図 20.6-4 起動動作 (TIN0 ∼ TIN2 端子で起動時 , 有効エッジ = 立上りエッジの場合 )
周辺クロック (PCLK)
CNTE ビット
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
プリスケーラクリア
プリスケーラクロック
データロード
カウンタの値
TMRLRA の値
-1
-1
-1
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
319
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
< 注意事項 >
TIN0 ∼ TIN2 端子から入力する起動トリガのパルス幅は , 2T (T: 周辺クロック (PCLK) の
周期 ) 以上になるようにしてください。
● カウント動作
ダウンカウンタがカウント用クロックに同期して , 16 ビットタイマリロードレジスタ
A (TMRLRA0 ∼ TMRLRA2) の値からカウントダウンを開始します。
ダウンカウンタの値が "0000H" からカウントダウンしようとすると , アンダフローが発
生し , 次の動作が行われます。
•
コントロールステータスレジスタ (TMCSR0∼TMCSR2) のUFビットが"1"に変わる
•
TOUT0 ∼ TOUT2 端子から出力される信号レベルが反転する
•
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をリロードし ,
カウントダウンを継続する
このように , アンダフローが発生するたびに 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) の値をリロードし , カウント動作を継続します。
カウント動作を図 20.6-5 に示します。
図 20.6-5 カウント動作 ( ソフトウェアでの起動時 , 出力極性 = 通常極性の場合 )
リロードした
レジスタ
TMRLRA
TMRLRA
TMRLRA
TMRLRA
TMRLRA
TMRLRA
TMRLRA
アンダフロー
UF ビット
TOUT0 ∼
TOUT2 端子
CNTE ビット
データロード
TRG ビット
起動トリガ待ち
カウント動作
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
● 割込み処理の動作
ダウンカウンタがアンダフローすると , コントロールステータスレジスタ
(TMCSR0 ∼ TMCSR2) の UF ビットが "1" に変わります。
このとき , コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の INTE ビットが
"1" に設定されていると , アンダフロー割込み要求が発生します。
320
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
アンダフロー割込み要求が発生するタイミングを図 20.6-6 に示します。
図 20.6-6 アンダフロー割込み要求の発生タイミング
カウント用クロック
カウンタの値
0001H
0000H
TMRLRA の値
-1
-1
-1
アンダフロー
UF ビット
アンダフロー
割込み要求
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の UF ビットに "0" を書き込
むと , アンダフロー割込み要求をクリアできます。
< 注意事項 >
アンダフロー割込み要求をクリアしたと同時にアンダフロー割込み要求が発生した場合
は , クリア動作は無視され , アンダフロー割込み要求が発生したままになります。
● 再トリガ動作
カウント動作中に , 16 ビットリロードタイマの起動トリガを検出すると再トリガが発
生し , 次の動作が行われます。
•
TIN0 ∼ TIN2 端子の信号レベルを初期化
•
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をダウンカウン
タにリロード
CM71-10147-2
•
プリスケーラのクリア
•
カウント動作開始
FUJITSU SEMICONDUCTOR LIMITED
321
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
再トリガ発生時の動作を図 20.6-7 に示します。
図 20.6-7 再トリガ発生時の動作
(TIN0 ∼ TIN2 端子で再トリガ時 , 有効エッジ = 立上りエッジの場合 )
カウント用クロック
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
再トリガ
TRG ビット
トリガ
CNTE ビット
プリスケーラクリア
カウンタの値
TMRLRA リロード
-1
-1
TMRLRA リロード
-1
-1
-1
TOUT0 ∼ TOUT2 端子
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
< 注意事項 >
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) を書き換えて , リロード値
を変更したと同時に再トリガが発生すると , ダウンカウンタには書き換える前の値がロー
ドされます。
書換え後の値は , 次のリロードタイミングでロードされます。
■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = ゲート入力時 )
TIN0 ∼ TIN2 端子をゲート入力に使用して , アンダフローが発生するたびに 16 ビット
タイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をリロードし , カウントダ
ウンを継続するモードです。
このモードで利用する場合は, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
を次の様に設定してください。
322
•
TRGM0 ビット =0/1
•
GATE ビット =1
•
RELD ビット =1
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
● 起動
次の手順で起動してください。
1. コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CNTE ビットで , 16 ビッ
トリロードタイマの動作を許可 (CNTE=1) する
16 ビットリロードタイマが起動トリガ入力待ち状態になります。
2. コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の TRG ビットで起動トリ
ガを入力する (TRG=1)
プリスケーラがクリアされます。また , 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) の値がダウンカウンタにロードされ , 16 ビットリロード
タイマは TIN0 ∼ TIN2 端子からの有効入力極性待ち状態になります。
3. TIN0 ∼ TIN2 端子からコントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の
TRGM1, TRGM0 ビットで設定したレベルの信号を入力する
カウントが開始されます。
起動動作を図 20.6-8 に示します。
図 20.6-8 起動動作
周辺クロック (PCLK)
CNTE ビット
TRG ビット
プリスケーラクリア
プリスケーラクロック
データロード
TIN0 ∼ TIN2 端子
カウンタの値
TMRLRA の値
-1
-1
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
< 注意事項 >
TIN0 ∼ TIN2 端子から入力する有効レベルは , 2T (T: 周辺クロック (PCLK) の周期 ) 以上
になるようにしてください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
323
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
● カウント動作
TIN0 ∼ TIN2 端子から有効レベルの信号が入力されている間だけ , ダウンカウンタが
カウント用クロックに同期して , 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼
TMRLRA2) の値からカウントダウンします。
TIN0 ∼ TIN2 端子から有効レベルが入力されないと , ダウンカウンタは動作を停止し
ます。ダウンカウンタの停止中に有効レベルが入力されると , 停止していた値から再度
カウントを開始します。
以降の動作は , TIN0 ∼ TIN2 端子 = トリガ入力機能時の動作と同様です。
「■ リロード
モード時の動作 (TIN0 ∼ TIN2 端子 = トリガ入力時 )」を参照してください。
カウント動作を図 20.6-9 に示します。
図 20.6-9 カウント動作 ( 有効レベル ="H" レベル , 出力極性 = 通常極性の場合 )
リロードした
レジスタ
TMRLRA
TMRLRA
TMRLRA
TMRLRA TMRLRA
TMRLRA
アンダフロー
UF ビット
OUTE ビット
TMRLRA+1
カウント
TOUT0 ∼
TOUT2 端子
TMRLRA+1
カウント
TMRLRA+1
カウント
TMRLRA+1 TMRLRA+1
カウント
カウント
TMRLRA+1
カウント
TIN0 ∼
TIN2 端子
CNTE ビット
データロード
TRG ビット
起動トリガ待ち
有効ゲート入力待ち
カウント動作
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
● 割込み処理の動作
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリ
ガ入力時 )」を参照してください。
● 再トリガ動作
カウント動作中に , 16 ビットリロードタイマの起動トリガを検出すると再トリガが発
生し , 次の動作が行われます。
•
TIN0 ∼ TIN2 端子の信号レベルを初期化
•
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をダウンカウン
タにリロード
•
324
プリスケーラのクリア
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
その状態で TIN0 ∼ TIN2 端子から有効レベルが入力されると , カウント動作が開始さ
れます。再トリガ時の動作を図 20.6-10 に示します。
図 20.6-10 再トリガ発生時の動作 ( 有効レベル ="H" レベルの場合 )
カウント用クロック
TIN0 ∼ TIN2 端子
CNTE ビット
プリスケーラクリア
カウンタの値
TMRLRA の値
-1
-1
-1
TMRLRAの値
-1
-1
-1
再トリガ
TRG ビット
TOUT0 ∼ TOUT2 端子
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
< 注意事項 >
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) を書き換えて , リロード
値を変更したと同時に再トリガが発生すると , ダウンカウンタには書き換える前の値が
ロードされます。
書換え後の値は , 次のリロードタイミングでロードされます。
■ ワンショットモード時の動作 (TIN0 ∼ TIN2 端子 = トリガ入力時 )
TIN0 ∼ TIN2 端子をトリガ入力に使用して , アンダフローが発生すると次の起動トリ
ガが入力されるまでカウントを停止するモードです。
このモードで利用する場合は, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
を次の様に設定してください。
•
TRGM1, TRGM0 ビット =01 ∼ 11 のいずれか
•
GATE ビット =0
•
RELD ビット =0
● 起動
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリ
ガ入力時 )」を参照してください。
ただし , ワンショットモード時は起動トリガを検出したら , TOUT0 ∼ TOUT2 端子から
出力される信号レベルが反転します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
325
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
● カウント動作
ダウンカウンタがカウント用クロックに同期して , 16 ビットタイマリロードレジスタ
A (TMRLRA0 ∼ TMRLRA2) の値からカウントダウンを開始します。
ダウンカウンタの値が "0000H" からカウントダウンしようとすると , アンダフローが発
生し , 次の動作が行われます。
•
コントロールステータスレジスタ (TMCSR0∼TMCSR2) のUFビットが"1"に変わる
•
TOUT0 ∼ TOUT2 端子から出力される信号レベルを初期化する
•
カウント動作を停止し, 起動トリガ待ち状態になる (ダウンカウンタの値が"FFFFH"
で止まります )
TIN0 ∼ TIN2 端子で起動時のカウント動作を図 20.6-11 に示します。
図 20.6-11 カウント動作 ( 有効エッジ = 立上りエッジ , 出力極性 = 通常極性の場合 )
カウント用クロック
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
カウンタの値
0001H
0000H
FFFFH
TMRLRA
-1
-1
アンダフロー
UF ビット
TOUT0 ∼ TOUT2 端子
リロード
起動トリガ待ち
カウント動作
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
アンダフロー発生時の詳細動作を図 20.6-12 に示します。
326
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
図 20.6-12 アンダフロー発生時の詳細動作
( 有効エッジ = 立上りエッジ , 出力極性 = 通常極性の場合 )
アンダフロー
TOUT0 ∼ TOUT2 端子
CNTE ビット
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
起動トリガ待ち
カウント動作
TMRLRA+1
カウント
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
● 割込み処理の動作
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリ
ガ入力時 )」を参照してください。
● 再トリガ動作
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリ
ガ入力時 )」を参照してください。
ただし , ワンショットモード時は再トリガを検出したら , TOUT0 ∼ TOUT2 端子から出
力される信号レベルが反転します。
■ ワンショットモード時の動作 (TIN0 ∼ TIN2 端子 = ゲート入力時 )
TIN0 ∼ TIN2 端子をゲート入力に使用して , アンダフローが発生すると次の起動トリ
ガが入力されるまでカウントを停止するモードです。
このモードで利用する場合は, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
を次の様に設定してください。
•
TRGM0 ビット =0/1
•
GATE ビット =1
•
RELD ビット =0
● 起動
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = ゲー
ト入力時 )」を参照してください。
ただし , ワンショットモード時は起動トリガを検出したら , TOUT0 ∼ TOUT2 端子から
出力される信号レベルが反転します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
327
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
● カウント動作
TIN0 ∼ TIN2 端子から有効レベルの信号が入力されている間だけ , ダウンカウンタが
カウント用クロックに同期して , 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼
TMRLRA2) の値からカウントダウンします。
TIN0 ∼ TIN2 端子から有効レベルが入力されなくなると , ダウンカウンタは動作を停
止します。ダウンカウンタの停止中に有効レベルが入力されると , 停止していた値から
再度カウントを開始します。
ダウンカウンタの値が "0000H" からカウントダウンしようとすると , アンダフローが発
生し , 次の動作が行われます。
•
コントロールステータスレジスタ (TMCSR0∼TMCSR2) のUFビットが"1"に変わる
•
TOUT0 ∼ TOUT2 端子から出力される信号レベルを初期化する
•
カウント動作を停止し, 起動トリガ待ち状態になる (ダウンカウンタの値が"FFFFH"
で止まります )
カウント動作を図 20.6-13 に示します。
図 20.6-13 カウント動作 ( 有効レベル ="H" レベル , 出力極性 = 通常極性の場合 )
アンダフロー
TOUT0 ∼ TOUT2 端子
CNTE ビット
TIN0 ∼ TIN2 端子
TRG ビット
起動トリガ待ち
有効ゲート入力待ち
カウント動作
TMRLRA+1
カウント
TMRLRA+1
カウント
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
● 割込み処理の動作
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリ
ガ入力時 )」を参照してください。
● 再トリガ動作
リロードモード時と同様です。
「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = ゲー
ト入力時 )」を参照してください。
ただし , ワンショットモード時は再トリガを検出したら , TOUT0 ∼ TOUT2 端子から出
力される信号レベルが反転します。
328
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
20.6.2
イベントカウンタモード時の動作
16 ビットリロードタイマをイベントカウンタとして使用する場合の動作について説明しま
す。この節では , 外部イベントをカウントする場合の動作について説明します。
■ 概要
イベントカウンタモードでは TIN0 ∼ TIN2 端子に入力された外部イベントをカウント
します。TIN0 ∼ TIN2 端子から有効エッジが入力されるたびに , カウントダウンを行
います。
カスケードモードについては ,「20.6.3 カスケードモード時の動作」を参照してくださ
い。
■ 設定
● イベントカウンタモードの設定
16 ビットリロードタイマをイベントカウンタモードで使用する場合は , コントロール
ステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットを次の様に設定し
ます。
CSL2
1
CSL1
1
CSL0
1
モード
イベントカウンタモード
カウント用クロック
外部クロック
● 動作モードの設定
イベントカウンタモード時 , コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2)
の RELD ビットで動作モードを次の中から選択できます。
リロードモード (RELD=1)
•
ダウンカウンタがアンダフローすると , 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) に設定された値をリロードしてカウント動作を繰り返す
モードです。
ワンショットモード (RELD=0)
•
ダウンカウンタがアンダフローすると , カウント動作を停止するモードです。
● 有効エッジの設定
16 ビットリロードタイマは TIN0 ∼ TIN2 端子に有効エッジが入力されるたびに , カウ
ントダウンを行います。
有効エッジはコントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の TRGM1,
TRGM0 ビットで次の中から選択できます。
TRGM1, TRGM0
CM71-10147-2
端子の機能
00
TIN0 ∼ TIN2 端子は機能しません。
01
立上りエッジ
10
立下りエッジ
11
両エッジ
FUJITSU SEMICONDUCTOR LIMITED
329
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
■ リロードモード時の動作
アンダフローが発生するたびに 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼
TMRLRA2) の値をリロードし , カウントダウンを継続するモードです。
このモードで利用する場合は, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
を次の様に設定してください。
•
TRGM1, TRGM0 ビット =01 ∼ 11 のいずれか
•
RELD ビット =1
● 起動
次の手順で起動してください。
1. コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CNTE ビットで , 16 ビッ
トリロードタイマの動作を許可 (CNTE=1) する
16 ビットリロードタイマが起動トリガ入力待ち状態になります。
2. コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の TRG ビットで起動トリ
ガを入力する (TRG=1)
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値がダウンカウン
タにロードされ , 16 ビットリロードタイマは TIN0 ∼ TIN2 端子から入力される信号
の有効エッジ検出待ち状態になります。
3. TIN0 ∼ TIN2 端子からコントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の
TRGM1, TRGM0 ビットで設定した有効エッジを入力する
カウントが開始されます。
● カウント動作
TIN0 ∼ TIN2 端子からの入力信号に有効エッジを検出するたびに , カウントダウンし
ます。
カウントのタイミングを図 20.6-14 ∼図 20.6-16 に示します。
図 20.6-14 カウントタイミング ( 有効エッジ = 立上りエッジ )
周辺クロック (PCLK)
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
カウンタの値
TMRLRA の値
-1
-1
-1
TRG ビット
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
330
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
図 20.6-15 カウントタイミング ( 有効エッジ = 立下りエッジ )
周辺クロック (PCLK)
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
カウンタの値
-1
TMRLRA の値
-1
-1
TRG ビット
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
図 20.6-16 カウントタイミング ( 有効エッジ = 両エッジ )
周辺クロック (PCLK)
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
カウンタの値
TMRLRA の値
-1
-1
-1
-1
-1
-1
TRG ビット
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
ダウンカウンタの値が "0000H" からカウントダウンしようとすると , アンダフローが発
生し , 次の動作が行われます。
•
コントロールステータスレジスタ (TMCSR0∼TMCSR2) のUFビットが"1"に変わる
•
TOUT0 ∼ TOUT2 端子からの出力信号レベルが反転する
•
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をダウンカウン
タにリロード
•
TIN0 ∼ TIN2 端子から有効レベルが入力されると , カウントダウンを継続する。
このように , アンダフローが発生するたびに 16 ビットタイマリロードレジスタ A
(TMRLRA0 ∼ TMRLRA2) の値をリロードし , カウント動作を継続します。
ただし , アンダフロー発生後 , TIN0 ∼ TIN2 端子から入力される信号の有効エッジが検
出されるまではカウントは開始しません。
カウント動作を図 20.6-17 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
331
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
図 20.6-17 カウント動作 ( 検出エッジ = 両エッジ , 出力極性 = 通常極性の場合 )
リロードした
レジスタ
TMRLRA
TMRLRA
TMRLRA
TMRLRA
TMRLRA
アンダフロー
UF ビット
OUTE ビット
TOUT0 ∼
TOUT2 端子
TIN0 ∼
TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
TRG ビット
データロード
A
カウンタの値
-1
A
-1
A
0000H
-1
A
0000H
A
-1
0000H
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
● 割込み処理の動作
インターバルタイマモード時と同様です。「20.6.1 インターバルタイマモード時の動
作」の「■ リロードモード時の動作 (TIN0 ∼ TIN2 端子 = トリガ入力時 )」を参照して
ください。
● 再トリガ動作
カウント動作中に , 16 ビットリロードタイマの起動トリガを検出すると再トリガが発
生し , 次の動作が行われます。
•
TOUT0 ∼ TOUT2 端子から出力される信号レベルをコントロールステータスレジス
タ (TMCSR0 ∼ TMCSR2) の OUTL ビットで設定したレベルに初期化
•
16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をダウンカウン
タにリロード
その状態で TIN0 ∼ TIN2 端子から有効エッジが入力されると , カウント動作が開始さ
れます。
< 注意事項 >
16 ビットタイマリロードレジスタ A(TMRLRA0 ∼ TMRLRA2)を書き換えて , リロード
値を変更したと同時に再トリガが発生すると , ダウンカウンタには書き換える前の値が
ロードされます。
書換え後の値は , 次のリロードタイミングでロードされます。
332
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 20 章 16 ビットリロードタイマ
20.6
■ ワンショットモード時の動作
アンダフローが発生すると次の起動トリガが入力されるまでカウントを停止するモー
ドです。
このモードで利用する場合は, コントロールステータスレジスタ (TMCSR0∼TMCSR2)
を次の様に設定してください。
•
TRGM1, TRGM0 ビット =01 ∼ 11 のいずれか
•
RELD ビット =0
● 起動
リロードモード時と同様です。「■ リロードモード時の動作」を参照してください。
● カウント動作
TIN0 ∼ TIN2 端子で有効エッジを検出するたびに , カウントダウンします。
ダウンカウンタの値が "0000H" からカウントダウンしようとすると , アンダフローが発
生し , 次の動作が行われます。
•
コントロールステータスレジスタ (TMCSR0∼TMCSR2) のUFビットが"1"に変わる
•
TOUT0 ∼ TOUT2 端子から出力される信号レベルを初期化する
•
カウント動作を停止し, 起動トリガ待ち状態になる (ダウンカウンタの値が"FFFFH"
で止まります )
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
333
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
カウント動作を図 20.6-18, 図 20.6-19 に示します。
図 20.6-18 カウント動作 ( 検出エッジ = 両エッジの場合 )
アンダフロー
UF ビット
TOUT0 ∼
TOUT2 端子
(OUTL=0 の時 )
TOUT0 ∼
TOUT2 端子
(OUTL=1 の時 )
TIN0 ∼
TIN2 端子
TIN0 ∼ TIN2 端子
の有効エッジ
TRG ビット
リロード
カウンタの値
TMRLRA
-1
FFFFH
TMRLRA
FFFFH
-1
0000H
0000H
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
図 20.6-19 カウント動作 ( 検出エッジ = 立上りエッジの場合 )
周辺クロック
(PCLK)
TIN0 ∼ TIN2 端子
TIN0 ∼ TIN2 端子の
有効エッジ
カウンタの値
0000H
0001H
FFFFH
TMRLRA
-1
-1
アンダフロー
UF ビット
TRG ビット
起動トリガ待ち
データロード
TMRLRA:16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2)
● 割込み処理の動作
リロードモード時と同様です。「■ リロードモード時の動作」を参照してください。
● 再トリガ動作
リロードモード時と同様です。「■ リロードモード時の動作」を参照してください。
334
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
20.6.3
カスケードモード時の動作
カスケードモードを使用すると , 16 ビットリロードタイマの ch.0 からの出力を ch.1 で , ch.1
からの出力を ch.2 でカウントできます。カスケードモード時の動作を説明します。
■ 動作
コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットでカ
スケードモードを選択 (CSL2 ∼ CSL0=110) すると , 次のような動作になります。
•
ch.1 をカスケードモードで接続した場合
ch.0 からの出力をカウントします。ch.1 をカスケードモードで使用した場合の入出
力を図 20.6-20 に示します。
図 20.6-20 ch.1 をカスケードモードで使用した場合の入出力
TIN0 端子
ch.0
TOUT0 端子
TIN1 端子
ch.1
TOUT1 端子
•
ch.2 をカスケードモードで接続した場合
ch.1 からの出力をカウントします。ch.2 をカスケードモードで使用した場合の入出
力を図 20.6-21 に示します。
図 20.6-21 ch.2 をカスケードモードで使用した場合の入出力
TIN1 端子
ch.1
TOUT1 端子
TIN2 端子
ch.2
TOUT2 端子
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
335
第 20 章 16 ビットリロードタイマ
20.6
MB91605A シリーズ
< 注意事項 >
カスケードモードを使用する場合は , コントロールステータスレジスタ (TMCSR0 ∼
TMCSR2) の CSL2 ∼ CSL0 ビットでタイマモードを次のように設定してください。
•
若い番号のチャネル
インターバルタイマモードまたは外部クロックを選択 (CSL2 ∼ CSL0=110 以外 )
•
大きい番号のチャネル
カスケードモードを設定 (CSL2 ∼ CSL0=110)
■ アンダフロー周期
ch.1 および ch.2 のアンダフロー周期の計算式を説明します。
•
ch.1 をカスケードモードで接続した場合
T × (TMRLRA0 の値 +1) × (TMRLRA1 の値 +1)
T:ch.0 のカウント用クロックの周期
TMRLRA0:16 ビットタイマリロードレジスタ A0 (TMRLRA0)
TMRLRA1:16 ビットタイマリロードレジスタ A1 (TMRLRA1)
•
ch.2 をカスケードモードで接続した場合
T × (TMRLRA1 の値 +1) × (TMRLRA2 の値 +1)
T:ch.1 のカウント用クロックの周期
TMRLRA1:16 ビットタイマリロードレジスタ A1 (TMRLRA1)
TMRLRA2:16 ビットタイマリロードレジスタ A2 (TMRLRA2)
336
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 20 章 16 ビットリロードタイマ
20.7
20.7 使用上の注意
16 ビットリロードタイマを使用する際は , 次の点に注意してください。
■ 割込みに関する注意
•
アンダフロー割込み要求フラグのクリアと, アンダフロー割込み要求フラグが"1"に
変わるタイミングが重なった場合は , アンダフロー割込み要求フラグのクリア動作
は無視され , アンダフロー割込み要求フラグは "1" のままになります。
■ 同時起動の場合の動作
16 ビットリロードタイマの動作を決定するイベントが同時に発生した場合 , 動作状態
を決定する優先順位は次のとおりです。
1. レジスタの読込み
2. トリガ入力
3. アンダフロー
4. カウント用クロック入力
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
337
第 20 章 16 ビットリロードタイマ
20.7
338
MB91605A シリーズ
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ
入出力選択機能
ベースタイマの入出力選択機能について説明しま
す。
21.1 概要
21.2 構成
21.3 端子
21.4 レジスタ
21.5 入出力モード
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
339
第 21 章 ベースタイマ 入出力選択機能
21.1
MB91605A シリーズ
21.1 概要
ベースタイマ入出力選択機能は, 入出力モードを設定することにより, ベースタイマへの信号
( 外部クロック / 外部起動トリガ / 波形 ) の入出力方法を決める機能です。
また, ベースタイマはタイマ機能を切り換えることで, チャネルごとに次のいずれかのタイマ
として使用します。
• 16 ビット PWM タイマ
• 16 ビット PPG タイマ
• 16/32 ビットリロードタイマ
• 16/32 ビット PWC タイマ
ベースタイマは , 必ず本章と使用するタイマ機能の章両方を一読の上 , 使用してください。
■ 概要
2 チャネルごとに入出力モードを次の 9 種類の中から選択できます。
•
入出力モード 0:16 ビットタイマ標準モード
ベースタイマを 1 チャネルごとに個別に動作させるモードです。
•
入出力モード 1:タイマフルモード
ベースタイマの偶数チャネルの信号を個別に外部端子に割り当てて動作させる
モードです。
•
入出力モード 2:外部トリガ共有モード
2 チャネルのベースタイマに対して同時に外部起動トリガを入力できるモードで
す。このモードを利用すると , 2 チャネルのベースタイマを同時に起動できます。
•
入出力モード 3 :他チャネルトリガ共有モード
他のチャネルからの外部信号を外部起動トリガにして , 起動するモードです。この
モードは ch.0 および ch.1 には設定できません。
•
入出力モード 4 :タイマ起動 / 停止モード
偶数チャネルで奇数チャネルの起動 / 停止を制御するモードです。奇数チャネルは ,
偶数チャネルからの出力信号の立上りエッジで起動し , 立下りエッジで停止しま
す。
•
入出力モード 5:同時ソフト起動モード
ソフトウェアで複数のチャネルを同時に起動するモードです。
•
入出力モード 6:ソフト起動タイマ起動 / 停止モード
偶数チャネルで奇数チャネルの起動 / 停止を制御するモードです。偶数チャネルは
ソフトウェアで起動します。奇数チャネルは , 偶数チャネルからの出力信号の立上
りエッジで起動し , 立下りエッジで停止します。
•
入出力モード 7:タイマ起動モード
偶数チャネルで奇数チャネルの起動を制御するモードです。奇数チャネルは , 偶数
チャネルからの出力信号の立上りエッジで起動します。
340
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
•
第 21 章 ベースタイマ 入出力選択機能
21.1
入出力モード 8 :他チャネルトリガ共有タイマ起動 / 停止モード
ほかのチャネルからの外部信号を外部起動トリガにして , 起動するモードです。
このモードは ch.0 および ch.1 には設定できません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
341
第 21 章 ベースタイマ 入出力選択機能
21.2
MB91605A シリーズ
21.2 構成
ベースタイマ入出力選択機能は次のブロックで構成されています。
■ ベースタイマ入出力選択機能のブロックダイヤグラム
ベースタイマ入出力選択機能のブロックダイヤグラムを図 21.2-1 に示します。
図 21.2-1 ベースタイマ入出力選択機能のブロックダイヤグラム
レジスタ部
TIOB11
ベースタイマ
ch.11
TIOA11
TIOB3
ベースタイマ
ch.3
周
辺
バ
ス
入出力
選択部
ベースタイマ
ch.2
TIOA3
TIOB2
TIOA2
TIOB1
ベースタイマ
ch.1
TIOA1
ベースタイマ
ch.0
TIOB0
TIOA0
•
入出力選択部
ベースタイマの入出力モードをチャネルごとに選択する回路です。
•
ベースタイマ (ch.0 ∼ ch.11)
ベースタイマの ch.0 ∼ ch.11 です。
342
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 21 章 ベースタイマ 入出力選択機能
21.3
21.3 端子
ベースタイマ入出力選択機能で入出力モードを設定する端子について説明します。
■ 概要
ベースタイマには , チャネルごとに 2 種類の外部端子と 7 種類の内部信号があります。
外部端子と内部信号を接続することで, ベースタイマへ接続先に対応した信号 ( 外部ク
ロック (ECK 信号 ) / 外部起動トリガ (TGIN 信号 ) / 波形 (TIN 信号 ) ) を入出力します。
外部端子と内部信号は , ベースタイマの入出力モードを設定することで接続されます。
使用する端子と入出力する信号は入出力モードによって異なります。
● 外部端子
•
TIOA0 ∼ TIOA11 端子
ベースタイマの波形 (TOUT 信号 ) を出力する , あるいは , 外部起動トリガ (TGIN 信
号 ) を入力する端子です。この端子は兼用端子です。
•
TIOB0 ∼ TIOB11 端子
外部起動トリガ (TGIN 信号 ) / 外部クロック (ECK 信号 ) / 他チャネルの波形 (TIN 信
号 ) を入力する端子です。この端子は兼用端子です
● 内部信号
上記の外部端子と接続する , あるいは , ほかのチャネルからの出力信号を入力すること
でベースタイマへ信号を入出力します。
•
TOUT 信号
ベースタイマの出力波形です。(16/32 ビット PWC タイマでは使用しません。)
•
ECK 信号
ベースタイマの外部クロックです。(16/32 ビット PWC タイマでは使用しません。)
カウント用クロックに外部クロックを選択した場合に入力します。
•
TGIN 信号
ベースタイマの外部起動トリガです。(16/32ビットPWCタイマでは使用しません。
)
外部起動トリガの有効エッジを選択すると , この信号のエッジを検出してベースタ
イマが起動します。
•
TIN 信号
測定する波形です。(16/32 ビット PWC タイマでのみ使用します。)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
343
第 21 章 ベースタイマ 入出力選択機能
21.3
•
MB91605A シリーズ
DTRG 信号
ベースタイマは , この信号の立下りエッジで動作を停止します。
•
COUT 信号
他のチャネルへの出力信号です。
•
CIN 信号
他のチャネルから入力される信号です。
● 外部端子と内部信号の接続
外部端子と内部信号は , ベースタイマの入出力モードを設定することで接続されます。
入出力モードと端子接続の対応を表 21.3-1 に示します。
表 21.3-1 入出力モードと端子接続の対応
TIOAn
入出力
モード ( 偶数チャネル )
接続先 入出力
TIOBn
( 偶数チャネル )
接続先
TIOAn+1
( 奇数チャネル )
入出力 接続先 入出力
接続先
入出力
c h . n + 1 出力
ch.n+1 の
入力
のTOUT
ECK/TGIN/
TIN
0
ch.n の
TOUT
出力
ch.n の
入力
ECK/TGIN/
TIN
1
ch.n の
TOUT
出力
ch.n の
ECK
2
ch.n の
TOUT
出力
ch.n/ch.n+1 入力
の ECK/
TGIN/TIN*1
c h . n + 1 出力
のTOUT
3
ch.n の
TOUT
出力
使用しない
c h . n + 1 出力
のTOUT
4
ch.n の
TOUT
出力
ch.n の
入力
ECK/TGIN/
TIN
c h . n + 1 出力
のTOUT
5
ch.n の
TOUT
出力
使用しない
c h . n + 1 出力
のTOUT
6
ch.n の
TOUT
出力
7
ch.n の
TOUT
出力
ch.n の
入力
ECK/TGIN/
TIN
c h . n + 1 出力
のTOUT
8
ch.n の
TOUT
出力
使用しない
c h . n + 1 出力
のTOUT
ch.n
TIOBn+1
( 奇数チャネル )
入力
ch.n の
TGIN
入力
ch.n の TIN 入力
使用しない
c h . n + 1 出力
のTOUT
: 偶数チャネル
ch.n+1 : 奇数チャネル
n=0, 2, 4, 6, 8, 10
*1
344
: 周辺クロック (PCLK) で同期化
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 21 章 ベースタイマ 入出力選択機能
21.4
21.4 レジスタ
ベースタイマ入出力選択機能で使用するレジスタの構成と機能について説明します。
■ ベースタイマ入出力選択機能のレジスタ一覧
ベースタイマ入出力選択機能のレジスタ一覧を表 21.4-1 に示します。
表 21.4-1 ベースタイマ入出力選択機能のレジスタ一覧
チャネル
CM71-10147-2
共通
レジスタ略称
BTSSSR
レジスタ名
同時ソフト起動レジスタ
参照先
21.4.4
0 ∼ 3 共通
BTSEL0123
入出力選択レジスタ 0123
21.4.1
4 ∼ 7 共通
BTSEL4567
入出力選択レジスタ 4567
21.4.2
8 ∼ 11 共通
BTSEL89AB
入出力選択レジスタ 89AB
21.4.3
FUJITSU SEMICONDUCTOR LIMITED
345
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
入出力選択レジスタ 0123 (BTSEL0123)
21.4.1
ベースタイマの ch.0 ∼ ch.3 の入出力モードを設定するレジスタです。
入出力選択レジスタ 0123 (BTSEL0123) のビット構成を図 21.4-1 に示します。
図 21.4-1 入出力選択レジスタ 0123 (BTSEL0123) のビット構成
bit
7
6
5
4
3
2
1
0
SEL23_3 SEL23_2 SEL23_1 SEL23_0 SEL01_3 SEL01_2 SEL01_1 SEL01_0
属性
初期値
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタは , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の FMD2 ∼ FMD0 ビッ
トで , ベースタイマをリセットモードに設定 (FMD2 ∼ FMD0=000) してから書き換えて
ください。
[bit7 ∼ bit4]:SEL23_3 ∼ SEL23_0 (ch.2/ch.3 用入出力選択ビット )
ベースタイマの ch.2 および ch.3 の入出力モードを設定するビットです。
SEL23_3 SEL23_2 SEL23_1 SEL23_0
346
説明
0
0
0
0
入出力モード 0
(16 ビットタイマ標準モード )
0
0
0
1
入出力モード 1
( タイマフルモード )
0
0
1
0
入出力モード 2
( 外部トリガ共有モード )
0
0
1
1
入出力モード 3
( 他チャネルトリガ共有モード )
0
1
0
0
入出力モード 4
( タイマ起動 / 停止モード )
0
1
0
1
入出力モード 5
( 同時ソフト起動モード )
0
1
1
0
入出力モード 6
( ソフト起動タイマ起動 / 停止モード )
0
1
1
1
入出力モード 7
( タイマ起動モード )
1
0
0
0
入出力モード 8
( 他チャネルトリガ共有タイマ起動 / 停
止モード )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
< 注意事項 >
上記以外は設定禁止です。
[bit3 ∼ bit0]:SEL01_3 ∼ SEL01_0 (ch.0/ch.1 用入出力選択ビット )
ベースタイマの ch.0 および ch.1 の入出力モードを設定するビットです。
ch.0 および ch.1 は , ベースタイマの最下位のチャネルになり , 下位側のチャネルの信号
を利用するモードは使用できません。そのため , 次のモードは設定禁止です。
•
入出力モード 3 ( 他チャネルトリガ共有モード )
•
入出力モード 8 ( 他チャネルトリガ共有タイマ起動 / 停止モード )
SEL01_3 SEL01_2 SEL01_1 SEL01_0
説明
0
0
0
0
入出力モード 0
(16 ビットタイマ標準モード )
0
0
0
1
入出力モード 1
( タイマフルモード )
0
0
1
0
入出力モード 2
( 外部トリガ共有モード )
0
0
1
1
設定禁止
0
1
0
0
入出力モード 4
( タイマ起動 / 停止モード )
0
1
0
1
入出力モード 5
( 同時ソフト起動モード )
0
1
1
0
入出力モード 6
( ソフト起動タイマ起動 / 停止モード )
0
1
1
1
入出力モード 7
( タイマ起動モード )
1
0
0
0
設定禁止
< 注意事項 >
上記以外は設定禁止です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
347
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
入出力選択レジスタ 4567 (BTSEL4567)
21.4.2
ベースタイマの ch.4 ∼ ch.7 の入出力モードを設定するレジスタです。
入出力選択レジスタ 4567 (BTSEL4567) のビット構成を図 21.4-2 に示します。
図 21.4-2 入出力選択レジスタ 4567 (BTSEL4567) のビット構成
bit
7
6
5
4
3
2
1
0
SEL67_3 SEL67_2 SEL67_1 SEL67_0 SEL45_3 SEL45_2 SEL45_1 SEL45_0
属性
初期値
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタは , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の FMD2 ∼ FMD0 ビッ
トで , ベースタイマをリセットモードに設定 (FMD2 ∼ FMD0=000) してから書き換えて
ください。
[bit7 ∼ bit4]:SEL67_3 ∼ SEL67_0 (ch.6/ch.7 用入出力選択ビット )
ベースタイマの ch.6 および ch.7 の入出力モードを設定するビットです。
SEL67_3 SEL67_2 SEL67_1 SEL67_0
348
説明
0
0
0
0
入出力モード 0
(16 ビットタイマ標準モード )
0
0
0
1
入出力モード 1
( タイマフルモード )
0
0
1
0
入出力モード 2
( 外部トリガ共有モード )
0
0
1
1
入出力モード 3
( 他チャネルトリガ共有モード )
0
1
0
0
入出力モード 4
( タイマ起動 / 停止モード )
0
1
0
1
入出力モード 5
( 同時ソフト起動モード )
0
1
1
0
入出力モード 6
( ソフト起動タイマ起動 / 停止モード )
0
1
1
1
入出力モード 7
( タイマ起動モード )
1
0
0
0
入出力モード 8
( 他チャネルトリガ共有タイマ起動 / 停
止モード )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
< 注意事項 >
上記以外は設定禁止です。
[bit3 ∼ bit0]:SEL45_3 ∼ SEL45_0 (ch.4/ch.5 用入出力選択ビット )
ベースタイマの ch.4 および ch.5 の入出力モードを設定するビットです。
SEL45_3 SEL45_2 SEL45_1 SEL45_0
説明
0
0
0
0
入出力モード 0
(16 ビットタイマ標準モード )
0
0
0
1
入出力モード 1
( タイマフルモード )
0
0
1
0
入出力モード 2
( 外部トリガ共有モード )
0
0
1
1
入出力モード 3
( 他チャネルトリガ共有モード )
0
1
0
0
入出力モード 4
( タイマ起動 / 停止モード )
0
1
0
1
入出力モード 5
( 同時ソフト起動モード )
0
1
1
0
入出力モード 6
( ソフト起動タイマ起動 / 停止モード )
0
1
1
1
入出力モード 7
( タイマ起動モード )
1
0
0
0
入出力モード 8
( 他チャネルトリガ共有タイマ起動 / 停
止モード )
< 注意事項 >
上記以外は設定禁止です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
349
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
入出力選択レジスタ 89AB (BTSEL89AB)
21.4.3
ベースタイマの ch.8 ∼ ch.11 の入出力モードを設定するレジスタです。
入出力選択レジスタ 89AB (BTSEL89AB) のビット構成を図 21.4-3 に示します。
図 21.4-3 入出力選択レジスタ 89AB (BTSEL89AB) のビット構成
bit
7
6
5
4
3
2
1
0
SELAB_3 SELAB_2 SELAB_1 SELAB_0 SEL89_3 SEL89_2 SEL89_1 SEL89_0
属性
初期値
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W:リード / ライト可能
< 注意事項 >
このレジスタは , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の FMD2 ∼ FMD0 ビッ
トで , ベースタイマをリセットモードに設定 (FMD2 ∼ FMD0=000) してから書き換えて
ください。
[bit7 ∼ bit4]:SELAB_3 ∼ SELAB_0 (ch.10/ch.11 用入出力選択ビット )
ベースタイマの ch.10 および ch.11 の入出力モードを設定するビットです。
SELAB_3 SELAB_2 SELAB_1 SELAB_0
350
説明
0
0
0
0
入出力モード 0
(16 ビットタイマ標準モード )
0
0
0
1
入出力モード 1
( タイマフルモード )
0
0
1
0
入出力モード 2
( 外部トリガ共有モード )
0
0
1
1
入出力モード 3
( 他チャネルトリガ共有モード )
0
1
0
0
入出力モード 4
( タイマ起動 / 停止モード )
0
1
0
1
入出力モード 5
( 同時ソフト起動モード )
0
1
1
0
入出力モード 6
( ソフト起動タイマ起動 / 停止モード )
0
1
1
1
入出力モード 7
( タイマ起動モード )
1
0
0
0
入出力モード 8
( 他チャネルトリガ共有タイマ起動 / 停
止モード )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
< 注意事項 >
上記以外は設定禁止です。
[bit3 ∼ bit0]:SEL89_3 ∼ SEL89_0 (ch.8/ch.9 用入出力選択ビット )
ベースタイマの ch.8 および ch.9 の入出力モードを設定するビットです。
SEL89_3 SEL89_2 SEL89_1 SEL89_0
説明
0
0
0
0
入出力モード 0
(16 ビットタイマ標準モード )
0
0
0
1
入出力モード 1
( タイマフルモード )
0
0
1
0
入出力モード 2
( 外部トリガ共有モード )
0
0
1
1
入出力モード 3
( 他チャネルトリガ共有モード )
0
1
0
0
入出力モード 4
( タイマ起動 / 停止モード )
0
1
0
1
入出力モード 5
( 同時ソフト起動モード )
0
1
1
0
入出力モード 6
( ソフト起動タイマ起動 / 停止モード )
0
1
1
1
入出力モード 7
( タイマ起動モード )
1
0
0
0
入出力モード 8
( 他チャネルトリガ共有タイマ起動 / 停
止モード )
< 注意事項 >
上記以外は設定禁止です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
351
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
同時ソフト起動レジスタ (BTSSSR)
21.4.4
ベースタイマをソフトウェアで同時に起動するレジスタです。
"1" を書き込んだビットに対応する , 複数のチャネルを最大 12 チャネルまで同時に起動でき
ます。
同時ソフト起動レジスタ (BTSSSR) のビット構成を図 21.4-4 に示します。
図 21.4-4 同時ソフト起動レジスタ (BTSSSR) のビット構成
bit
15
14
13
12
11
10
9
8
予約
W
予約
W
予約
W
予約
W
SSSR11
SSSR10
SSSR9
SSSR8
W
W
W
W
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
SSSR7
SSSR6
SSSR5
SSSR4
SSSR3
SSSR2
SSSR1
SSSR0
属性
W
W
W
W
W
W
W
W
初期値
X
X
X
X
X
X
X
X
属性
初期値
bit
W:ライトオンリ
X:不定
< 注意事項 >
•
次のモード以外に設定しているときに , 本レジスタに書込みを行わないでください。
- 入出力モード 5 ( 同時ソフト起動モード )
- 入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) ( 偶数チャネルのみ )
•
このレジスタを利用して起動するチャネルは , ベースタイマ x タイマ制御レジスタ
(BTxTMCR) の EGS1, EGS0 ビ ッ ト で ト リ ガ 入 力 エ ッ ジ を 立 上 り エ ッ ジ (EGS1,
EGS0=01) に設定してください。
[bit15 ∼ bit12]:予約ビット
書込み値
352
説明
0
無視されます。
1
書込み禁止
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 21 章 ベースタイマ 入出力選択機能
21.4
[bit11]:SSSR11 (ch.11 用同時ソフト起動ビット )
ベースタイマの ch.11 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.11 を起動します。*
* : 入出力選択レジスタ 89AB (BTSEL89AB) の SELAB_3 ∼ SELAB_0 ビットで入出力
モードが "5" ( 同時ソフト起動モード ) に設定 (SELAB_3 ∼ SELAB_0=0101) されて
いる場合のみ
[bit10]:SSSR10 (ch.10 用同時ソフト起動ビット )
ベースタイマの ch.10 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.10 を起動します。*
* : 入出力選択レジスタ 89AB (BTSEL89AB) の SELAB_3 ∼ SELAB_0 ビットで入出力
モードが次のいずれかに設定されている場合のみ
・"5" ( 同時ソフト起動モード ) (SELAB_3 ∼ SELAB_0=0101)
・"6" ( ソフト起動タイマ起動 / 停止モード ) (SELAB_3 ∼ SELAB_0=0110)
[bit9]:SSSR9 (ch.9 用同時ソフト起動ビット )
ベースタイマの ch.9 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.9 を起動します。*
* : 入出力選択レジスタ 89AB (BTSEL89AB) の SEL89_3 ∼ SEL89_0 ビットで入出力モー
ドが "5" ( 同時ソフト起動モード ) に設定 (SEL89_3 ∼ SEL89_0=0101) されている場
合のみ
[bit8]:SSSR8 (ch.8 用同時ソフト起動ビット )
ベースタイマの ch.8 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.8 を起動します。*
* : 入出力選択レジスタ 89AB (BTSEL89AB) の SEL89_3 ∼ SEL89_0 ビットで入出力モー
ドが次のいずれかに設定されている場合のみ
・"5" ( 同時ソフト起動モード ) (SEL89_3 ∼ SEL89_0=0101)
・"6" ( ソフト起動タイマ起動 / 停止モード ) (SEL89_3 ∼ SEL89_0=0110)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
353
第 21 章 ベースタイマ 入出力選択機能
21.4
MB91605A シリーズ
[bit7]:SSSR7 (ch.7 用同時ソフト起動ビット )
ベースタイマの ch.7 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.7 を起動します。*
* : 入出力選択レジスタ 4567 (BTSEL4567) の SEL67_3 ∼ SEL67_0 ビットで入出力モー
ドが "5" ( 同時ソフト起動モード ) に設定 (SEL67_3 ∼ SEL67_0=0101) されている場
合のみ
[bit6]:SSSR6 (ch.6 用同時ソフト起動ビット )
ベースタイマの ch.6 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.6 を起動します。*
* : 入出力選択レジスタ 4567 (BTSEL4567) の SEL67_3 ∼ SEL67_0 ビットで入出力モー
ドが次のいずれかに設定されている場合のみ
・"5" ( 同時ソフト起動モード ) (SEL67_3 ∼ SEL67_0=0101)
・"6" ( ソフト起動タイマ起動 / 停止モード ) (SEL67_3 ∼ SEL67_0=0110)
[bit5]:SSSR5 (ch.5 用同時ソフト起動ビット )
ベースタイマの ch.5 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.5 を起動します。*
* : 入出力選択レジスタ 4567 (BTSEL4567) の SEL45_3 ∼ SEL45_0 ビットで入出力モー
ドが "5" ( 同時ソフト起動モード ) に設定 (SEL45_3 ∼ SEL45_0=0101) されている場
合のみ
[bit4]:SSSR4 (ch.4 用同時ソフト起動ビット )
ベースタイマの ch.4 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.4 を起動します。*
* : 入出力選択レジスタ 4567 (BTSEL4567) の SEL45_3 ∼ SEL45_0 ビットで入出力モー
ドが次のいずれかに設定されている場合のみ
・"5" ( 同時ソフト起動モード ) (SEL45_3 ∼ SEL45_0=0101)
・"6" ( ソフト起動タイマ起動 / 停止モード ) (SEL45_3 ∼ SEL45_0=0110)
354
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 21 章 ベースタイマ 入出力選択機能
21.4
[bit3]:SSSR3 (ch.3 用同時ソフト起動ビット )
ベースタイマの ch.3 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.3 を起動します。*
* : 入出力選択レジスタ 0123 (BTSEL0123) の SEL23_3 ∼ SEL23_0 ビットで入出力モー
ドが "5" ( 同時ソフト起動モード ) に設定 (SEL23_3 ∼ SEL23_0=0101) されている場
合のみ
[bit2]:SSSR2 (ch.2 用同時ソフト起動ビット )
ベースタイマの ch.2 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.2 を起動します。*
* : 入出力選択レジスタ 0123 (BTSEL0123) の SEL23_3 ∼ SEL23_0 ビットで入出力モー
ドが次のいずれかに設定されている場合のみ
・"5" ( 同時ソフト起動モード ) (SEL23_3 ∼ SEL23_0=0101)
・"6" ( ソフト起動タイマ起動 / 停止モード ) (SEL23_3 ∼ SEL23_0=0110)
[bit1]:SSSR1 (ch.1 用同時ソフト起動ビット )
ベースタイマの ch.1 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.1 を起動します。*
* : 入出力選択レジスタ 0123 (BTSEL0123) の SEL01_3 ∼ SEL01_0 ビットで入出力モー
ドが "5" ( 同時ソフト起動モード ) に設定 (SEL01_3 ∼ SEL01_0=0101) されている場
合のみ
[bit0]:SSSR0 (ch.0 用同時ソフト起動ビット )
ベースタイマの ch.0 を起動するビットです。
書込み値
説明
0
無視されます。
1
ベースタイマの ch.0 を起動します。*
* : 入出力選択レジスタ 0123 (BTSEL0123) の SEL01_3 ∼ SEL01_0 ビットで入出力モー
ドが次のいずれかに設定されている場合のみ
・"5" ( 同時ソフト起動モード ) (SEL01_3 ∼ SEL01_0=0101)
・"6" ( ソフト起動タイマ起動 / 停止モード ) (SEL01_3 ∼ SEL01_0=0110)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
355
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
21.5 入出力モード
入出力選択レジスタ (BTSEL0123 ∼ BTSEL89AB) で設定した入出力モードによって , 外部端
子の働きやベースタイマの起動 / 停止タイミングなどが異なります。
入出力モード 0 (16 ビットタイマ標準モード )
21.5.1
ベースタイマの各チャネルを個別に利用するモードです。
このモードに設定した場合に使用する外部端子を表 21.5-1 に示します。
表 21.5-1 使用する外部端子
偶数チャネル
奇数チャネル
入力端子
1本
1本
出力端子
1本
1本
使用する外部端子の接続先と入出力信号について表 21.5-2 に示します。
表 21.5-2 外部端子の接続先と入出力信号
外部端子
TIOA0 ∼ TIOA11
TIOB0 ∼ TIOB11
入出力
出力
入力
接続先 ( 内部信号 )
入出力信号
TOUT
ECK/TGIN/TIN
ベースタイマの波形を出力
*
入力した信号を次のいずれか
として使用
・外部クロック (ECK 信号 )
・外部起動トリガ (TGIN 信号 )
・測定する波形 (TIN 信号 )
* : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ
(BTxTMCR) の設定によって異なります。
入出力モード 0 (16 ビットタイマ標準モード ) のブロックダイヤグラムを図 21.5-1 に示
します。
図 21.5-1 入出力モード 0 (16 ビットタイマ標準モード ) のブロックダイヤグラム
ベースタイマ
ch.n+1
ベースタイマ
ch.n
356
ECK
TGIN
TIN
TOUT
TIOBn+1
ECK
TGIN
TIN
TOUT
TIOBn
FUJITSU SEMICONDUCTOR LIMITED
TIOAn+1
TIOAn
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 0 の接続を表 21.5-3 に示します。
表 21.5-3 入出力モード 0 の接続
接続元
接続先
ch.n の TOUT 信号
TIOAn 端子から出力
TIOBn 端子からの入力信号
TIN/TGIN/ECK として ch.n に入力
ch.n+1 の TOUT 信号
TIOAn+1 端子から出力
TIOBn+1 端子からの入力信号
TIN/TGIN/ECK として ch.n+1 に入力
n=0, 2, 4, 6, 8, 10
21.5.2
入出力モード 1 ( タイマフルモード )
偶数チャネルの信号をすべて外部端子に個別に割り当てて使用するモードです。
このモードに設定した場合に使用する外部端子を表 21.5-4 に示します。
表 21.5-4 使用する外部端子
入力端子
3本
出力端子
1本
使用する外部端子の接続先と入出力信号について表 21.5-5 に示します。
表 21.5-5 外部端子の接続先と入出力信号
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT 偶数チャネルの波形を出力
TIOBn
入力
偶数チャネルの ECK
偶数チャネルに外部クロック (ECK 信
号 ) を入力
TIOAn+1
入力
偶数チャネルの TGIN
偶数チャネルに外部起動トリガ (TGIN
信号 ) を入力
TIOBn+1
入力
偶数チャネルの TIN
偶数チャネルに測定する波形 (TIN 信
号 ) を入力
n=0, 2, 4, 6, 8, 10
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
357
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 1 ( タイマフルモード ) のブロックダイヤグラムを図 21.5-2 に示します。
図 21.5-2 入出力モード 1 ( タイマフルモード ) のブロックダイヤグラム例
TIOBn+1
ベースタイマ
ch.n+1
TIOAn+1
(32 ビットモード動作時 )
ベースタイマ
ch.n
TIOBn
ECK
TGIN
TIN
TOUT
TIOAn
入出力モード 1 の接続を表 21.5-6 に示します。
表 21.5-6 入出力モード 1 の接続
接続元
接続先
ch.n の TOUT 信号
TIOAn 端子から出力
TIOBn 端子からの入力信号
TIN 信号として ch.n に入力
ch.n+1 の TOUT 信号
TGIN 信号として ch.n に入力
TIOBn+1 端子
ECK 信号として ch.n に入力
n=0, 2, 4, 6, 8, 10
< 注意事項 >
このモードに設定した場合は , ポートファンクションレジスタ (PFR) で奇数チャネルに
対応するTIOAn端子 (TIOA1, TIOA3, TIOA5,•••TIOA11) をポート入力モードに設定してく
ださい。
358
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 2 ( 外部トリガ共有モード )
21.5.3
ベースタイマの入力信号 (ECK/TGIN/TIN) を 2 チャネルで共有するモードです。
このモードに設定した場合に使用する外部端子を表 21.5-7 に示します。
表 21.5-7 使用する外部端子
偶数チャネル
奇数チャネル
入力端子
1 本 (2 チャネルで共有 )
出力端子
1本
1本
使用する外部端子の接続先と入出力信号について表 21.5-8 に示します。
表 21.5-8 外部端子の接続先と入出力信号
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT 偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT 奇数チャネルの波形を出力
TIOBn
入力
偶数 / 奇数チャネルの 偶数 / 奇数両方のチャネルに入力 ( 周辺
クロック (PCLK) で同期化 ) し , 次のい
ECK/TGIN/TIN*
ずれかとして使用
・外部クロック (ECK 信号 )
・外部起動トリガ (TGIN 信号 )
・測定する波形 (TIN 信号 )
TIOBn+1
−
−
使用しない
n=0, 2, 4, 6, 8, 10
* : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ
(BTxTMCR) の設定によって異なります。
入出力モード 2 ( 外部トリガ共有モード ) のブロックダイヤグラムを図 21.5-3 に示しま
す。
図 21.5-3 入出力モード 2 ( 外部トリガ共有モード ) のブロックダイヤグラム
ベースタイマ
ch.n+1
ベースタイマ
ch.n
CM71-10147-2
ECK
TGIN
TIN
TOUT
COUT
ECK
TGIN
TIN
TOUT
FUJITSU SEMICONDUCTOR LIMITED
TIOBn+1
TIOAn+1
TIOBn
TIOAn
359
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 2 の接続を表 21.5-9 に示します。
表 21.5-9 入出力モード 2 の接続
接続元
接続先
ch.n の TOUT 信号
備考
TIOAn 端子から出力
TIOBn 端子からの入 ・ TIN/TGIN/ECK 信号として ch.n と 周辺クロック (PCLK) で
同期化
力信号
ch.n+1 に入力
・ COUT 信号として他のチャネルに
出力
ch.n+1 の TOUT 信号 TIOAn+1 端子から出力
n=0, 2, 4, 6, 8, 10
< 注意事項 >
このモードに設定したチャネルの上位 2 チャネル (n+2, n+3) を入出力モード 3 ( 他チャネ
ルトリガ共有モード ) に設定すると , 4 チャネル同時に入力信号 (ECK/TGIN/TIN) を入力
できます。
( 例:ch.0 と ch.1 をこのモードに設定し , ch.2 と ch.3 を入出力モード 3 に設定すると
ch.0 ∼ ch.3 の 4 チャネル同時に入力信号 (ECK/TGIN/TIN) を入力できます。)
21.5.4
入出力モード 3 ( 他チャネルトリガ共有モード )
2 チャネル下位側のチャネルの COUT 信号を CIN 信号として入力し , ECK/TGIN/TIN 信号と
して使用するモードです。
このモードに設定した場合に使用する外部端子を表 21.5-10 に示します。
表 21.5-10 使用する外部端子
偶数チャネル
入力端子
使用しない
出力端子
1本
奇数チャネル
1本
使用する外部端子の接続先と入出力信号について表 21.5-11 に示します。
表 21.5-11 外部端子の接続先と入出力信号
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT
偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT
奇数チャネルの波形を出力
−
使用しない
TIOBn, TIOBn+1 −
n=2, 4, 6, 8, 10
360
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 3 ( 他チャネルトリガ共有モード ) のブロックダイヤグラムを図 21.5-4 に
示します。
図 21.5-4 入出力モード 3 ( 他チャネルトリガ共有モード ) のブロックダイヤグラム
ベースタイマ
ch.n+1
ベースタイマ
ch.n
ECK
TGIN
TIN
TOUT
COUT
TIOBn+1
TIOAn+1
ECK
TGIN
TIN
TOUT
TIOBn
TIOAn
CIN
入出力モード 3 の接続を表 21.5-12 に示します。
表 21.5-12 入出力モード 3 の接続
接続元
接続先
ch.n の TOUT 信号
TIOAn 端子から出力
CIN 信号 *
・TIN/TGIN/ECK 信号として ch.n と ch.n+1 に入力
・COUT 信号として他のチャネルに出力
ch.n+1 の TOUT 信号
TIOAn+1 端子から出力
n=2, 4, 6, 8, 10
* : 他のチャネルの COUT 信号を CIN 信号として入力します。
ch.n/n+1 の ECK, TGIN, TIN に入力できる ch.n-2/n-1 の信号は以下のとおりです。
• 入出力モード 2 時の TIOBn-2 入力を周辺クロックで同期化した信号
• 入出力モード 3 時の ch.n-4/n-3 から入力されるトリガ信号
• 入出力モード 4 時の TIOAn-2 出力
• 入出力モード 6 時の TIOAn-2 出力
• 入出力モード 7 時の TIOAn-2 出力
• 入出力モード 8 時の ch.n-4/n-3 から入力されるトリガ信号
< 注意事項 >
•
ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットでトリガ入力
エッジを立上りエッジ (EGS1, EGS0=01) に設定してください。
•
このモードに設定したチャネルは , 2 チャネル下位側 (n-2, n-1) の COUT 信号を CIN 信
号として入力して使用します。
( 例:ch.2, ch.3 をこのモードに設定すると ch.0, ch.1 の COUT 信号を使用 )
そのため , ch.0 および ch.1 をこのモードに設定することはできません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
361
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 4 ( タイマ起動 / 停止モード ) 時の動作
21.5.5
偶数チャネルで奇数チャネルの起動 / 停止を制御できるモードです。
奇数チャネルは, 偶数チャネルの出力波形 (TOUT信号) の立上りエッジで起動し, 立下りエッ
ジで停止します。
このモードに設定した場合に使用する外部端子を表 21.5-13 に示します。
表 21.5-13 使用する外部端子
偶数チャネル
奇数チャネル
入力端子
1本
使用しない
出力端子
1本
1本
端子の機能について表 21.5-14 に示します。
表 21.5-14 端子の機能
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT
偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT
奇数チャネルの波形を出力
TIOBn
入力
偶数チャネルの ECK/TGIN/ 偶数チャネルに入力し , 次のいず
れかとして使用
TIN*
・外部クロック (ECK 信号 )
・外部起動トリガ (TGIN 信号 )
・測定する波形 (TIN 信号 )
TIOBn+1
−
−
使用しない
n=0, 2, 4, 6, 8, 10
* : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ
(BTxTMCR) の設定によって異なります。
入出力モード 4 ( タイマ起動 / 停止モード ) のブロックダイヤグラムを図 21.5-5 に示し
ます。
図 21.5-5 入出力モード 4 ( タイマ起動 / 停止モード ) のブロックダイヤグラム
COUT
ベースタイマ
ch.n+1
ベースタイマ
ch.n
362
DTRG
ECK
TGIN
TIN
TOUT
ECK
TGIN
TIN
TOUT
FUJITSU SEMICONDUCTOR LIMITED
TIOBn+1
TIOAn+1
TIOBn
TIOAn
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 4 の接続を表 21.5-15 に示します。
表 21.5-15 入出力モード 4 の接続
接続元
ch.n の TOUT 信号
接続先
・TIOAn 端子から出力
・TIN/TGIN/ECK および DTRG 信号として ch.n+1 に入力
・COUT 信号として他のチャネルに出力
TIOBn 端子からの入力信号 TIN/TGIN/ECK 信号として ch.n に入力
ch.n+1 の TOUT 信号
TIOAn+1 端子から出力
n=0, 2, 4, 6, 8, 10
< 注意事項 >
•
ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットで奇数チャネ
ルのトリガ入力エッジを立上りエッジ (EGS1, EGS0=01) に設定してください。
•
奇数チャネルは , DTRG 信号で立下りエッジが検出されると動作を停止します。
入出力モード 4 ( タイマ起動 / 停止モード ) 設定時の動作を ch.0 と ch.1 を PWM タイマ
として使用する場合の設定を例にとって図 21.5-6 に示します。
レジスタ (ch.0)
設定値
レジスタ (ch.1)
設定値
ベースタイマ 0 周期設定レジス 0010H
タ (BT0PCSR)
ベースタイマ 1 周期設定レジス 0002H
タ (BT1PCSR)
ベースタイマ 0 デューティ設定 0009H
レジスタ (BT0PDUT)
ベースタイマ 1 デューティ設定 0001H
レジスタ (BT1PDUT)
ベースタイマ 0 タイマ制御レジ 0013H
スタ (BT0TMCR)
ベースタイマ 1 タイマ制御レジ 0112H
スタ (BT1TMCR)
図 21.5-6 入出力モード 4 ( タイマ起動 / 停止モード ) の動作例
周辺クロック
(PCLK)
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
TIOA0
6
7
8
TIOA1
ch.1 動作期間
ch.1 起動
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
ch.1 は停止時の
タイマ値を保持
ch.1 停止
363
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 5 ( 同時ソフト起動モード ) 時の動作
21.5.6
同時ソフト起動レジスタ (BTSSSR) で複数のチャネルを同時に起動できるモードです。
同時ソフト起動レジスタ (BTSSSR) で"1"を書き込んだビットに対応するチャネルがす
べて同時に起動します。
このモードに設定した場合に使用する外部端子を表 21.5-16 に示します。
表 21.5-16 使用する外部端子
偶数チャネル
入力端子
使用しない
出力端子
1本
奇数チャネル
1本
使用する外部端子の接続先と入出力信号について表 21.5-17 に示します。
表 21.5-17 外部端子の接続先と入出力信号
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT
偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT
奇数チャネルの波形を出力
TIOBn, TIOBn+1
−
−
使用しない
n=0, 2, 4, 6, 8, 10
入出力モード 5 ( 同時ソフト起動モード ) のブロックダイヤグラムを図 21.5-7 に示しま
す。
図 21.5-7 入出力モード 5 ( 同時ソフト起動モード ) のブロックダイヤグラム
ソフト起動信号
(SSSRn+1 ビット )
ベースタイマ
ch.n+1
ECK
TGIN
TIN
TOUT
TIOBn+1
ECK
TGIN
TIN
TOUT
TIOBn
ソフト起動信号
(SSSRn ビット )
ベースタイマ
ch.n
364
FUJITSU SEMICONDUCTOR LIMITED
TIOAn+1
TIOAn
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 5 の接続を表 21.5-18 に示します。
表 21.5-18 入出力モード 5 の接続
接続元
ch.n の TOUT 信号
接続先
TIOAn 端子から出力
ソフト起動信号
TIN/TGIN/ECK 信号として ch.n に入力
(BTSSSR の SSSRn ビットへの "1" 書込み )
ch.n+1 の TOUT 信号
TIOAn+1 端子から出力
ソフト起動信号
TIN/TGIN/ECK 信号として ch.n+1 に入力
(BTSSSRのSSSRn+1ビットへの"1"書込み)
n=0, 2, 4, 6, 8, 10
BTSSSR : 同時ソフト起動レジスタ (BTSSSR)
同時ソフト起動レジスタ (BTSSSR) で "1" を書き込むと , 書き込んだビットに対応する
チャネルに立上りエッジが入力 (ECK/TGIN/TIN 信号 ) されます。
< 注意事項 >
ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットでトリガ入力エッ
ジを立上りエッジ (EGS1, EGS0=01) に設定してください。
21.5.7
入出力モード 6 ( ソフト起動タイマ起動 /
停止モード ) 時の動作
偶数チャネルで奇数チャネルの起動 / 停止を制御できるモードです。
偶数チャネルは , 同時ソフト起動レジスタ (BTSSSR) に "1" を書き込んで起動します。
奇数チャネルは , 偶数チャネルの出力波形 (TOUT 信号 ) で立上りエッジを検出すると起動し ,
立下りエッジを検出すると停止します。
このモードに設定した場合に使用する外部端子を表 21.5-19 に示します。
表 21.5-19 使用する外部端子
入力端子
偶数チャネル
使用しない
出力端子
1本
奇数チャネル
1本
使用する外部端子の接続先と入出力信号について表 21.5-20 に示します。
表 21.5-20 外部端子の接続先と入出力信号
端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT
偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT
奇数チャネルの波形を出力
TIOBn, TIOBn+1
−
−
使用しない
n=0, 2, 4, 6, 8, 10
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
365
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) のブロックダイヤグラムを図
21.5-8 に示します。
図 21.5-8 入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) のブロックダイヤグラム
COUT
ベースタイマ
ch.n+1
DTRG
ECK
TGIN
TIN
TOUT
TIOBn+1
TIOAn+1
ソフト起動信号
(SSSRn ビット )
ベースタイマ
ch.n
ECK
TGIN
TIN
TOUT
TIOBn
TIOAn
入出力モード 6 の接続を表 21.5-21 に示します。
表 21.5-21 入出力モード 6 の接続
接続元
ch.n の TOUT 信号
接続先
・TIOAn 端子から出力
・TIN/TGIN/ECK/DTRG 信号として ch.n+1 に入力
・COUT 信号として他のチャネルに出力
ソフト起動信号
TIN/TGIN/ECK 信号として ch.n に入力
(BTSSSR の SSSRn ビットへの "1"
書込み )
ch.n+1 の TOUT 信号
TIOAn+1 端子から出力
n=0, 2, 4, 6, 8, 10
BTSSSR : 同時ソフト起動レジスタ (BTSSSR)
同時ソフト起動レジスタ (BTSSSR) で起動したい偶数チャネルに対応するビットに "1"
を書き込むと , 対応チャネルに立上りエッジが入力 (ECK, TGIN, TIN 信号 ) されます。
ch.n の起動 / 停止タイミングは入出力モード 4 と同じです。
< 注意事項 >
366
•
ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットでトリガ入力
エッジを立上りエッジ (EGS1, EGS0=01) に設定してください。
•
奇数チャネルは , DTRG 信号で立下りエッジが検出されると動作を停止します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 7 ( タイマ起動モード ) 時の動作
21.5.8
偶数チャネルの出力波形 (TOUT 信号 ) を奇数チャネルの入力信号 (ECK/TGIN/TIN 信号 ) とし
て使用するモードです。
このモードに設定した場合に使用する外部端子を表 21.5-22 に示します。
表 21.5-22 使用する外部端子
偶数チャネル
奇数チャネル
入力端子
1本
使用しない
出力端子
1本
1本
使用する外部端子の接続先と入出力信号について表 21.5-23 に示します。
表 21.5-23 外部端子の接続先と入出力信号
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT
偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT
奇数チャネルの波形を出力
TIOBn
入力
偶数チャネルの ECK/TGIN/ 偶数チャネルに入力し , 次のいず
れかとして使用
TIN*
・外部クロック (ECK 信号 )
・外部起動トリガ (TGIN 信号 )
・測定する波形 (TIN 信号 )
TIOBn+1
−
−
使用しない
n=0, 2, 4, 6, 8, 10
* : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ
(BTxTMCR) の設定によって異なります。
入出力モード7 (タイマ起動モード) 時のブロックダイヤグラムを図 21.5-9に示します。
図 21.5-9 入出力モード 7 ( タイマ起動モード ) 時のブロックダイヤグラム
COUT
ベースタイマ
ch.n+1
ベースタイマ
ch.n
CM71-10147-2
ECK
TGIN
TIN
TOUT
TIOBn+1
ECK
TGIN
TIN
TOUT
TIOBn
FUJITSU SEMICONDUCTOR LIMITED
TIOAn+1
TIOAn
367
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 7 の接続を表 21.5-24 に示します。
表 21.5-24 入出力モード 7 の接続
接続元
ch.n の TOUT 信号
接続先
・TIOAn 端子から出力
・TIN/TGIN/ECK/DTRG 信号として ch.n+1 に入力
・COUT 信号として他のチャネルに出力
TIOBn 端子からの入力信号
TIN/TGIN/ECK 信号として ch.n に入力
ch.n+1 の TOUT 信号
TIOAn+1 端子から出力
n=0, 2, 4, 6, 8, 10
ch.n の起動タイミングは入出力モード 4 と同じです。
21.5.9
入出力モード 8 ( 他チャネルトリガ共有タイマ起動 /
停止モード ) 時の動作
2 チャネル下位側のチャネルの COUT 信号を CIN 信号として入力し , 外部起動トリガ (TGIN
信号 ) として使用するモードです。
このモードに設定した場合に使用する外部端子を表 21.5-25 に示します。
表 21.5-25 使用する外部端子
偶数チャネル
入力端子
使用しない
出力端子
1本
奇数チャネル
1本
使用する外部端子の接続先と入出力信号について表 21.5-26 に示します。
表 21.5-26 外部端子の接続先と入出力信号
外部端子
入出力
接続先 ( 内部信号 )
入出力信号
TIOAn
出力
偶数チャネルの TOUT
偶数チャネルの波形を出力
TIOAn+1
出力
奇数チャネルの TOUT
奇数チャネルの波形を出力
TIOBn, TIOBn+1
−
−
使用しない
n=2, 4, 6, 8, 10
368
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
入出力モード 8 ( 他チャネルトリガ共有タイマ起動 / 停止モード ) のブロックダイヤグ
ラムを図 21.5-10 に示します。
図 21.5-10 入出力モード 8
( 他チャネルトリガ共有タイマ起動 / 停止モード ) のブロックダイヤグラム
COUT
ベースタイマ
ch.n+1
ベースタイマ
ch.n
DTRG
ECK
TGIN
TIN
TOUT
TIOBn+1
TIOAn+1
DTRG
ECK
TGIN
TIN
TOUT
TIOBn
TIOAn
CIN
入出力モード 8 の接続を表 21.5-27 に示します。
表 21.5-27 入出力モード 8 の接続
接続元
接続先
ch.n の TOUT 信号 TIOAn 端子から出力
CIN 信号 *
・TIN/TGIN/ECK 信号および DTRG 信号として ch.n と ch.n+1 に入力
・COUT 信号として他のチャネルに出力
n=2, 4, 6, 8, 10
* : 他のチャネルの COUT 信号を CIN 信号として入力します。
ch.n/n+1 の ECK, TGIN, TIN に入力できる ch.n-2/n-1 の信号は以下のとおりです。
• 入出力モード 2 時の TIOBn-2 入力を周辺クロックで同期化した信号
• 入出力モード 3 時の ch.n-4/n-3 から入力されるトリガ信号
• 入出力モード 4 時の TIOAn-2 出力
• 入出力モード 6 時の TIOAn-2 出力
• 入出力モード 7 時の TIOAn-2 出力
• 入出力モード 8 時の ch.n-4/n-3 から入力されるトリガ信号
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
369
第 21 章 ベースタイマ 入出力選択機能
21.5
MB91605A シリーズ
< 注意事項 >
•
このモードに設定したチャネルは , 2 チャネル下位側 (n-2, n-1) の COUT 信号を CIN 信
号として入力して使用します。
( 例:ch.2, ch.3 をこのモードに設定すると ch.0, ch.1 の COUT 信号を使用 )
そのため , ch.0 および ch.1 をこのモードに設定することはできません。
•
このモードに設定したチャネルは , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の
EGS1, EGS0 ビットでトリガ入力エッジを立上りエッジ (EGS1, EGS0=01) に設定し
てください。
ただし , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の FMD2 ∼ FMD0 ビットで
タイマ機能を 16/32 ビット PWC タイマに設定 (FMD2 ∼ FMD0=100) した場合を除き
ます。
•
370
奇数チャネルは , DTRG 信号で立下りエッジが検出されると動作を停止します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 22 章 ベースタイマ
ベースタイマの概要 , レジスタの構成 / 機能 , およ
び動作について説明します。
22.1 ベースタイマの概要
22.2 ベースタイマのブロックダイヤグラム
22.3 ベースタイマのレジスタ
22.4 ベースタイマの動作
22.5 32 ビットモード動作
22.6 ベースタイマの使用上の注意
22.7 ベースタイマ割込み
22.8 ベースタイマの機能別説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
371
MB91605A シリーズ
22.1
ベースタイマの概要
ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により ,
16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/
32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。設
定可能な各種タイマ機能の概要を以下に示します。本シリーズは 12ch 搭載していま
す。
■ モード設定と各種タイマ機能の関係
FMD2, FMD1, FMD0 ビット設定
機能
000B
リセットモード
001B
16 ビット PWM タイマ
010B
16 ビット PPG タイマ
011B
16/32 ビットリロードタイマ
100B
16/32 ビット PWC タイマ
■ リセットモード
このモードの設定時に , ベースタイマのマクロをリセットした状態 ( 各レジスタは初期
値 ) とします。別のタイマ機能や , T32 ビット設定を切り換えるとき , いったん , この
モードに設定してから別のタイマ機能や T32 ビットを設定してください。ただし , リ
セット後ならば本モードの設定なしにタイマ機能や T32 ビットの設定は可能です。
■ 16 ビット PWM タイマ
16 ビットのダウンカウンタ , 周期設定用バッファ付き 16 ビットのデータレジスタ ,
デューティ設定用バッファ付き 16 ビットのコンペアレジスタ , 端子制御部で構成され
ます。
周期 , デューティのデータはバッファ付きレジスタに格納するため , タイマ動作中に書
換えが可能です。
16 ビットのダウンカウンタのカウントクロックは , 内部クロック 5 種類 ( 周辺クロッ
ク (PCLK) の 1/4/16/128/256 分周 ) と , 外部イベント 3 種類 ( 立上りエッジ , 立下りエッ
ジ , 両エッジ検出 ) から選択できます。
アンダフローでカウントを停止するワンショットモードと再ロードしてカウントを繰
り返す連続モードを選択できます。
起動はソフトウェアトリガと外部イベント 3 種類 ( 立上りエッジ , 立下りエッジ , 両
エッジ検出 ) から選択できます。
372
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 16 ビット PPG タイマ
16 ビットのダウンカウンタ , "H" 幅設定用 16 ビットのデータレジスタ , "L" 幅設定用
16 ビットのデータレジスタ , 端子制御部で構成されます。
16 ビットのダウンカウンタのカウントクロックは , 内部クロック 5 種類 ( 周辺クロッ
ク (PCLK) の 1/4/16/128/256 分周 ) と , 外部イベント 3 種類 ( 立上りエッジ , 立下りエッ
ジ , 両エッジ検出 ) から選択できます。
アンダフローでカウントを停止するワンショットモードと再ロードしてカウントを繰
り返す連続モードを選択できます。
起動はソフトウェアトリガと外部イベント 3 種類 ( 立上りエッジ , 立下りエッジ , 両
エッジ検出 ) から選択できます。
■ 16/32 ビットリロードタイマ
16 ビットのダウンカウンタ , 16 ビットのリロードレジスタ , 端子制御部で構成されま
す。
16 ビットのダウンカウンタのカウントクロックは , 内部クロック 5 種類 ( 周辺クロッ
ク (PCLK) の 1/4/16/128/256 分周 ) と , 外部イベント 3 種類 ( 立上りエッジ , 立下りエッ
ジ , 両エッジ検出 ) から選択できます。
アンダフローでカウントを停止するワンショットモードと再ロードしてカウントを繰
り返す連続モードを選択できます。
起動はソフトウェアトリガと外部イベント 3 種類 ( 立上りエッジ , 立下りエッジ , 両
エッジ検出 ) から選択できます。
■ 16/32 ビット PWC タイマ
16 ビットのアップカウンタ , 測定入力端子 , 制御レジスタで構成されます。
外部からのパルス入力で , 任意イベント間の時間を測定します。
基準となるカウントクロックは , 内部クロック 5 種類 ( 周辺クロック (PCLK) の 1/4/16/
128/256 分周 ) から選択できます。
各種測定モード
"H" パルス幅 ( ↑∼↓ ) / "L" パルス幅 ( ↓∼↑ )
立上り周期 ( ↑∼↑ ) / 立下り周期 ( ↓∼↓ )
エッジ間測定 ( ↑または↓∼↓または↑ )
測定終了時に割込み要求を発生することが可能です。
1 回のみの測定か , 連続測定かを選択することが可能です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
373
MB91605A シリーズ
ベースタイマのブロックダイヤグラム
22.2
ベースタイマの各モード別にブロックダイヤグラムを示します。
■ 16 ビット PWM タイマのブロックダイヤグラム
図 22.2-1 16 ビット PWM タイマのブロックダイヤグラム
BTxPCSR
BTxPDUT
BTxPDUT
CKS
OSEL
3
16
16
20
PCLK
27
28
ECK
16
16
(TOUT
PMSK
ベースタイマ
入出力選択部へ
ベースタイマ
入出力選択部から
EGS
2
DTIE
/
UDIE
STRG CTEN
MDSE
TGIN
CTEN
ベースタイマ
入出力選択部から
TGIE
BTxPCSR
BTxPDUT
x
x
BTxPCSR
BTxPDUT
■ 16 ビット PPG タイマのブロックダイヤグラム
図 22.2-2 16 ビット PPG タイマのブロックダイヤグラム
BTxPRLL
16
CKS
3
BTxPRLH
20
PCLK
27
28
ベースタイマ
入出力選択部から
OSEL
PPG
BTCT
(TOUT
ECK
EGS
ベースタイマ
入出力選択部へ
PMSK
2
UDIE
STRG CTEN
MDSE
CTEN
TGIN
ベースタイマ
入出力選択部から
BTxPRLL
BTxPRLH
BTxTMR
374
TGIE
xL
xH
x
BTxPRLL)
BTxPRLH)
BTxTMR
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 16/32 ビットリロードタイマ (ch.1, ch.0) のブロックダイヤグラム
図 22.2-3 16/32 ビットリロードタイマ (ch.1, ch.0) のブロックダイヤグラム
OSEL
16
BTxPCSR
T32=0
(TOUT
CKS
16
3
20
PCLK
ベースタイマ
入出力選択部へ
27
28
ECK
BTxTMR
ベースタイマ
入出力選択部から
T32
EGS
2
MDSE
UDIE
STRG
CTEN
TGIN
ベースタイマ
入出力選択部から
CTEN
TGIE
BTxPCSR
BTxTMR
BTxPCSR
BTxTMR
( 続く )
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
375
MB91605A シリーズ
( 続き )
ch.1
BT1PCSR
16
BT1TMR)
T32=0
32
T32=1
ch.0
OSEL
BT0PCSR
(TOUT
CKS
3
16
20
PCLK
ベースタイマ
入出力選択部へ
27
28
ECK
BT0TMR
ベースタイマ
入出力選択部から
T32
EGS
2
MDSE
UDIE
STRG
CTEN
TGIN
ベースタイマ
入出力選択部から
CTEN
TGIE
BT1PCSR
BT1TMR
BT0PCSR
BT0TMR
376
1
1
0
0
BT1PCSR
BT1TMR
BT0PCSR
BT0TMR
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
<注意事項>
• 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間 , ch.4 と ch.5 との間 , ch.6 と
ch.7 との間 , ch.8 と ch.9 との間 , ch.10 と ch.11 との間のみで可能です。これ以外の
組合せにおける 32 ビット動作はできません。
• 本機能は同時起動をサポートしています。詳細は「第 21 章 ベースタイマ 入出力選択
機能」を参照してください。
■ 16/32 ビット PWC タイマ (ch.1, ch.0) のブロックダイヤグラム
図 22.2-4 16/32 ビット PWC タイマ (ch.1, ch.0) のブロックダイヤグラム
BTxDTBF
16
CKS
T32=0
3
16
20
PCLK
27
28
MDSE
MDSE
T32
EGS
3
OVIE
CTEN
TIN
ベースタイマ
入出力選択部から
CTEN
EDIE
BTxDTBF
x
BTxDTBF
( 続く )
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
377
MB91605A シリーズ
( 続き )
ch.1
BT1DTBF
16
(BT1TMR)
32
T32=0
T32=1
BT0DTBF
ch.0
CKS
3
16
20
PCLK
27
28
(BT0TMR)
MDSE
MDSE
T32
EGS
3
OVIE
CTEN
TIN
ベースタイマ
入出力
選択部から
CTEN
EDIE
BT0DTBF
BT1DTBF
0
1
BT0DTBF
BT1DTBF
<注意事項>
• 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間 , ch.4 と ch.5 との間 , ch.6 と
ch.7 との間 , ch.8 と ch.9 との間 , ch.10 と ch.11 との間のみで可能です。これ以外の
組合せにおける 32 ビット動作はできません。
• 本機能は同時起動をサポートしています。詳細は「第 21 章 ベースタイマ 入出力選択
機能」を参照してください。
378
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.3
ベースタイマのレジスタ
ベースタイマのレジスタ一覧と各モード別のビット構成を示します。
■ ベースタイマのレジスタ一覧
表 22.3-1 16 ビット PWM タイマのレジスタ一覧 <Helvetica>(1 / 2)
チャネル
レジスタ略称
レジスタ名
BTSSSR
共通
同時ソフト起動レジスタ
0 ∼ 3 共通 BTSEL0123
入出力選択レジスタ 0123
21.4.1
4 ∼ 7 共通 BTSEL4567
入出力選択レジスタ 4567
21.4.2
8 ∼ 11 共通 BTSEL89AB
入出力選択レジスタ 89AB
21.4.3
0
BT0TMCR
ベースタイマ 0 タイマ制御レジスタ
22.8.1.1
BT0STC
ベースタイマ 0 ステータス制御レジスタ
22.8.1.1
BT0PCSR
ベースタイマ 0 周期設定レジスタ
22.8.1.2
BT0PDUT
ベースタイマ 0 デューティ設定レジスタ
22.8.1.3
BT0TMR
ベースタイマ 0 タイマレジスタ
22.8.1.4
BT1TMCR
ベースタイマ 1 タイマ制御レジスタ
22.8.1.1
BT1STC
ベースタイマ 1 ステータス制御レジスタ
22.8.1.1
BT1PCSR
ベースタイマ 1 周期設定レジスタ
22.8.1.2
BT1PDUT
ベースタイマ 1 デューティ設定レジスタ
22.8.1.3
BT1TMR
ベースタイマ 1 タイマレジスタ
22.8.1.4
BT2TMCR
ベースタイマ 2 タイマ制御レジスタ
22.8.1.1
BT2STC
ベースタイマ 2 ステータス制御レジスタ
22.8.1.1
BT2PCSR
ベースタイマ 2 周期設定レジスタ
22.8.1.2
BT2PDUT
ベースタイマ 2 デューティ設定レジスタ
22.8.1.3
BT2TMR
ベースタイマ 2 タイマレジスタ
22.8.1.4
BT3TMCR
ベースタイマ 3 タイマ制御レジスタ
22.8.1.1
BT3STC
ベースタイマ 3 ステータス制御レジスタ
22.8.1.1
BT3PCSR
ベースタイマ 3 周期設定レジスタ
22.8.1.2
BT3PDUT
ベースタイマ 3 デューティ設定レジスタ
22.8.1.3
BT3TMR
ベースタイマ 3 タイマレジスタ
22.8.1.4
BT4TMCR
ベースタイマ 4 タイマ制御レジスタ
22.8.1.1
BT4STC
ベースタイマ 4 ステータス制御レジスタ
22.8.1.1
BT4PCSR
ベースタイマ 4 周期設定レジスタ
22.8.1.2
BT4PDUT
ベースタイマ 4 デューティ設定レジスタ
22.8.1.3
BT4TMR
ベースタイマ 4 タイマレジスタ
22.8.1.4
1
2
3
4
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
参照先
21.4.4
379
MB91605A シリーズ
表 22.3-1 16 ビット PWM タイマのレジスタ一覧 <Helvetica>(2 / 2)
チャネル
5
6
7
8
9
10
11
380
レジスタ略称
レジスタ名
BT5TMCR
ベースタイマ 5 タイマ制御レジスタ
参照先
22.8.1.1
BT5STC
ベースタイマ 5 ステータス制御レジスタ
22.8.1.1
BT5PCSR
ベースタイマ 5 周期設定レジスタ
22.8.1.2
BT5PDUT
ベースタイマ 5 デューティ設定レジスタ
22.8.1.3
BT5TMR
ベースタイマ 5 タイマレジスタ
22.8.1.4
BT6TMCR
ベースタイマ 6 タイマ制御レジスタ
22.8.1.1
BT6STC
ベースタイマ 6 ステータス制御レジスタ
22.8.1.1
BT6PCSR
ベースタイマ 6 周期設定レジスタ
22.8.1.2
BT6PDUT
ベースタイマ 6 デューティ設定レジスタ
22.8.1.3
BT6TMR
ベースタイマ 6 タイマレジスタ
22.8.1.4
BT7TMCR
ベースタイマ 7 タイマ制御レジスタ
22.8.1.1
BT7STC
ベースタイマ 7 ステータス制御レジスタ
22.8.1.1
BT7PCSR
ベースタイマ 7 周期設定レジスタ
22.8.1.2
BT7PDUT
ベースタイマ 7 デューティ設定レジスタ
22.8.1.3
BT7TMR
ベースタイマ 7 タイマレジスタ
22.8.1.4
BT8TMCR
ベースタイマ 8 タイマ制御レジスタ
22.8.1.1
BT8STC
ベースタイマ 8 ステータス制御レジスタ
22.8.1.1
BT8PCSR
ベースタイマ 8 周期設定レジスタ
22.8.1.2
BT8PDUT
ベースタイマ 8 デューティ設定レジスタ
22.8.1.3
BT8TMR
ベースタイマ 8 タイマレジスタ
22.8.1.4
BT9TMCR
ベースタイマ 9 タイマ制御レジスタ
22.8.1.1
BT9STC
ベースタイマ 9 ステータス制御レジスタ
22.8.1.1
BT9PCSR
ベースタイマ 9 周期設定レジスタ
22.8.1.2
BT9PDUT
ベースタイマ 9 デューティ設定レジスタ
22.8.1.3
BT9TMR
ベースタイマ 9 タイマレジスタ
22.8.1.4
BTATMCR
ベースタイマ 10 タイマ制御レジスタ
22.8.1.1
BTASTC
ベースタイマ 10 ステータス制御レジスタ
22.8.1.1
BTAPCSR
ベースタイマ 10 周期設定レジスタ
22.8.1.2
BTAPDUT
ベースタイマ 10 デューティ設定レジスタ
22.8.1.3
BTATMR
ベースタイマ 10 タイマレジスタ
22.8.1.4
BTBTMCR
ベースタイマ 11 タイマ制御レジスタ
22.8.1.1
BTBSTC
ベースタイマ 11 ステータス制御レジスタ
22.8.1.1
BTBPCSR
ベースタイマ 11 周期設定レジスタ
22.8.1.2
BTBPDUT
ベースタイマ 11 デューティ設定レジスタ
22.8.1.3
BTBTMR
ベースタイマ 11 タイマレジスタ
22.8.1.4
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.3-2 16 ビット PPG タイマのレジスタ一覧 <Helvetica>(1 / 2)
チャネル
レジスタ略称
レジスタ名
BTSSSR
共通
同時ソフト起動レジスタ
BTSEL0123
0 ∼ 3 共通
入出力選択レジスタ 0123
参照先
21.4.4
4 ∼ 7 共通 BTSEL4567
入出力選択レジスタ 4567
21.4.2
8 ∼ 11 共通 BTSEL89AB
入出力選択レジスタ 89AB
21.4.3
0
BT0TMCR
ベースタイマ 0 タイマ制御レジスタ
22.8.2.1
BT0STC
ベースタイマ 0 ステータス制御レジスタ
22.8.2.1
BT0PRLL
ベースタイマ 0L 幅設定リロードレジスタ
22.8.2.2
BT0PRLH
ベースタイマ 0H 幅設定リロードレジスタ
22.8.2.3
BT0TMR
ベースタイマ 0 タイマレジスタ
22.8.2.4
BT1TMCR
ベースタイマ 1 タイマ制御レジスタ
22.8.2.1
BT1STC
ベースタイマ 1 ステータス制御レジスタ
22.8.2.1
BT1PRLL
ベースタイマ 1L 幅設定リロードレジスタ
22.8.2.2
BT1PRLH
ベースタイマ 1H 幅設定リロードレジスタ
22.8.2.3
BT1TMR
ベースタイマ 1 タイマレジスタ
22.8.2.4
BT2TMCR
ベースタイマ 2 タイマ制御レジスタ
22.8.2.1
BT2STC
ベースタイマ 2 ステータス制御レジスタ
22.8.2.1
BT2PRLL
ベースタイマ 2L 幅設定リロードレジスタ
22.8.2.2
BT2PRLH
ベースタイマ 2H 幅設定リロードレジスタ
22.8.2.3
BT2TMR
ベースタイマ 2 タイマレジスタ
22.8.2.4
BT3TMCR
ベースタイマ 3 タイマ制御レジスタ
22.8.2.1
BT3STC
ベースタイマ 3 ステータス制御レジスタ
22.8.2.1
BT3PRLL
ベースタイマ 3L 幅設定リロードレジスタ
22.8.2.2
BT3PRLH
ベースタイマ 3H 幅設定リロードレジスタ
22.8.2.3
BT3TMR
ベースタイマ 3 タイマレジスタ
22.8.2.4
BT4TMCR
ベースタイマ 4 タイマ制御レジスタ
22.8.2.1
BT4STC
ベースタイマ 4 ステータス制御レジスタ
22.8.2.1
BT4PRLL
ベースタイマ 4L 幅設定リロードレジスタ
22.8.2.2
BT4PRLH
ベースタイマ 4H 幅設定リロードレジスタ
22.8.2.3
BT4TMR
ベースタイマ 4 タイマレジスタ
22.8.2.4
BT5TMCR
ベースタイマ 5 タイマ制御レジスタ
22.8.2.1
BT5STC
ベースタイマ 5 ステータス制御レジスタ
22.8.2.1
BT5PRLL
ベースタイマ 5L 幅設定リロードレジスタ
22.8.2.2
BT5PRLH
ベースタイマ 5H 幅設定リロードレジスタ
22.8.2.3
BT5TMR
ベースタイマ 5 タイマレジスタ
22.8.2.4
BT6TMCR
ベースタイマ 6 タイマ制御レジスタ
22.8.2.1
BT6STC
ベースタイマ 6 ステータス制御レジスタ
22.8.2.1
BT6PRLL
ベースタイマ 6L 幅設定リロードレジスタ
22.8.2.2
BT6PRLH
ベースタイマ 6H 幅設定リロードレジスタ
22.8.2.3
BT6TMR
ベースタイマ 6 タイマレジスタ
22.8.2.4
1
2
3
4
5
6
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
21.4.1
381
MB91605A シリーズ
表 22.3-2 16 ビット PPG タイマのレジスタ一覧 <Helvetica>(2 / 2)
チャネル
7
8
9
10
11
382
レジスタ略称
レジスタ名
BT7TMCR
ベースタイマ 7 タイマ制御レジスタ
参照先
22.8.2.1
BT7STC
ベースタイマ 7 ステータス制御レジスタ
22.8.2.1
BT7PRLL
ベースタイマ 7L 幅設定リロードレジスタ
22.8.2.2
BT7PRLH
ベースタイマ 7H 幅設定リロードレジスタ
22.8.2.3
BT7TMR
ベースタイマ 7 タイマレジスタ
22.8.2.4
BT8TMCR
ベースタイマ 8 タイマ制御レジスタ
22.8.2.1
BT8STC
ベースタイマ 8 ステータス制御レジスタ
22.8.2.1
BT8PRLL
ベースタイマ 8L 幅設定リロードレジスタ
22.8.2.2
BT8PRLH
ベースタイマ 8H 幅設定リロードレジスタ
22.8.2.3
BT8TMR
ベースタイマ 8 タイマレジスタ
22.8.2.4
BT9TMCR
ベースタイマ 9 タイマ制御レジスタ
22.8.2.1
BT9STC
ベースタイマ 9 ステータス制御レジスタ
22.8.2.1
BT9PRLL
ベースタイマ 9L 幅設定リロードレジスタ
22.8.2.2
BT9PRLH
ベースタイマ 9H 幅設定リロードレジスタ
22.8.2.3
BT9TMR
ベースタイマ 9 タイマレジスタ
22.8.2.4
BTATMCR
ベースタイマ 10 タイマ制御レジスタ
22.8.2.1
BTASTC
ベースタイマ 10 ステータス制御レジスタ
22.8.2.1
BTAPRLL
ベースタイマ 10L 幅設定リロードレジスタ 22.8.2.2
BTAPRLH
ベースタイマ 10H 幅設定リロードレジスタ 22.8.2.3
BTATMR
ベースタイマ 10 タイマレジスタ
22.8.2.4
BTBTMCR
ベースタイマ 11 タイマ制御レジスタ
22.8.2.1
BTBSTC
ベースタイマ 11 ステータス制御レジスタ
22.8.2.1
BTBPRLL
ベースタイマ 11L 幅設定リロードレジスタ 22.8.2.2
BTBPRLH
ベースタイマ 11H 幅設定リロードレジスタ 22.8.2.3
BTBTMR
ベースタイマ 11 タイマレジスタ
FUJITSU SEMICONDUCTOR LIMITED
22.8.2.4
CM71-10147-2
MB91605A シリーズ
表 22.3-3 16/32 ビットリロードタイマのレジスタ一覧 <Helvetica>(1 / 2)
チャネル
0 ∼ 3 共通
レジスタ略称
レジスタ名
BTSSSR
同時ソフト起動レジスタ
BTSEL0123
入出力選択レジスタ 0123
21.4.1
4 ∼ 7 共通
BTSEL4567
入出力選択レジスタ 4567
21.4.2
8 ∼ 11 共通
BTSEL89AB
入出力選択レジスタ 89AB
21.4.3
0
BT0TMCR
ベースタイマ 0 タイマ制御レジスタ
22.8.3.1
BT0STC
ベースタイマ 0 ステータス制御レジスタ
22.8.3.1
BT0PCSR
ベースタイマ 0 周期設定レジスタ
22.8.3.2
BT0TMR
ベースタイマ 0 タイマレジスタ
22.8.3.3
BT1TMCR
ベースタイマ 1 タイマ制御レジスタ
22.8.3.1
BT1STC
ベースタイマ 1 ステータス制御レジスタ
22.8.3.1
BT1PCSR
ベースタイマ 1 周期設定レジスタ
22.8.3.2
BT1TMR
ベースタイマ 1 タイマレジスタ
22.8.3.3
BT2TMCR
ベースタイマ 2 タイマ制御レジスタ
22.8.3.1
BT2STC
ベースタイマ 2 ステータス制御レジスタ
22.8.3.1
BT2PCSR
ベースタイマ 2 周期設定レジスタ
22.8.3.2
BT2TMR
ベースタイマ 2 タイマレジスタ
22.8.3.3
BT3TMCR
ベースタイマ 3 タイマ制御レジスタ
22.8.3.1
BT3STC
ベースタイマ 3 ステータス制御レジスタ
22.8.3.1
BT3PCSR
ベースタイマ 3 周期設定レジスタ
22.8.3.2
BT3TMR
ベースタイマ 3 タイマレジスタ
22.8.3.3
BT4TMCR
ベースタイマ 4 タイマ制御レジスタ
22.8.3.1
BT4STC
ベースタイマ 4 ステータス制御レジスタ
22.8.3.1
BT4PCSR
ベースタイマ 4 周期設定レジスタ
22.8.3.2
BT4TMR
ベースタイマ 4 タイマレジスタ
22.8.3.3
BT5TMCR
ベースタイマ 5 タイマ制御レジスタ
22.8.3.1
BT5STC
ベースタイマ 5 ステータス制御レジスタ
22.8.3.1
BT5PCSR
ベースタイマ 5 周期設定レジスタ
22.8.3.2
BT5TMR
ベースタイマ 5 タイマレジスタ
22.8.3.3
BT6TMCR
ベースタイマ 6 タイマ制御レジスタ
22.8.3.1
BT6STC
ベースタイマ 6 ステータス制御レジスタ
22.8.3.1
BT6PCSR
ベースタイマ 6 周期設定レジスタ
22.8.3.2
BT6TMR
ベースタイマ 6 タイマレジスタ
22.8.3.3
BT7TMCR
ベースタイマ 7 タイマ制御レジスタ
22.8.3.1
BT7STC
ベースタイマ 7 ステータス制御レジスタ
22.8.3.1
BT7PCSR
ベースタイマ 7 周期設定レジスタ
22.8.3.2
BT7TMR
ベースタイマ 7 タイマレジスタ
22.8.3.3
共通
1
2
3
4
5
6
7
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
参照先
21.4.4
383
MB91605A シリーズ
表 22.3-3 16/32 ビットリロードタイマのレジスタ一覧 <Helvetica>(2 / 2)
チャネル
8
9
10
11
384
レジスタ略称
レジスタ名
BT8TMCR
ベースタイマ 8 タイマ制御レジスタ
参照先
22.8.3.1
BT8STC
ベースタイマ 8 ステータス制御レジスタ
22.8.3.1
BT8PCSR
ベースタイマ 8 周期設定レジスタ
22.8.3.2
BT8TMR
ベースタイマ 8 タイマレジスタ
22.8.3.3
BT9TMCR
ベースタイマ 9 タイマ制御レジスタ
22.8.3.1
BT9STC
ベースタイマ 9 ステータス制御レジスタ
22.8.3.1
BT9PCSR
ベースタイマ 9 周期設定レジスタ
22.8.3.2
BT9TMR
ベースタイマ 9 タイマレジスタ
22.8.3.3
BTATMCR
ベースタイマ 10 タイマ制御レジスタ
22.8.3.1
BTASTC
ベースタイマ 10 ステータス制御レジスタ 22.8.3.1
BTAPCSR
ベースタイマ 10 周期設定レジスタ
22.8.3.2
BTATMR
ベースタイマ 10 タイマレジスタ
22.8.3.3
BTBTMCR
ベースタイマ 11 タイマ制御レジスタ
22.8.3.1
BTBSTC
ベースタイマ 11 ステータス制御レジスタ 22.8.3.1
BTBPCSR
ベースタイマ 11 周期設定レジスタ
22.8.3.2
BTBTMR
ベースタイマ 11 タイマレジスタ
22.8.3.3
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.3-4 16/32 ビット PWC タイマのレジスタ一覧 <Helvetica>(1 / 2)
チャネル
レジスタ略称
レジスタ名
BTSSSR
共通
同時ソフト起動レジスタ
BTSEL0123
0 ∼ 3 共通
入出力選択レジスタ 0123
参照先
21.4.4
4 ∼ 7 共通 BTSEL4567
入出力選択レジスタ 4567
21.4.2
8 ∼ 11 共通 BTSEL89AB
入出力選択レジスタ 89AB
21.4.3
0
BT0TMCR
ベースタイマ 0 タイマ制御レジスタ
22.8.4.1
BT0STC
ベースタイマ 0 ステータス制御レジスタ
22.8.4.1
BT0DTBF
ベースタイマ 0 データバッファレジスタ
22.8.4.2
BT1TMCR
ベースタイマ 1 タイマ制御レジスタ
22.8.4.1
BT1STC
ベースタイマ 1 ステータス制御レジスタ
22.8.4.1
BT1DTBF
ベースタイマ 1 データバッファレジスタ
22.8.4.2
BT2TMCR
ベースタイマ 2 タイマ制御レジスタ
22.8.4.1
BT2STC
ベースタイマ 2 ステータス制御レジスタ
22.8.4.1
BT2DTBF
ベースタイマ 2 データバッファレジスタ
22.8.4.2
BT3TMCR
ベースタイマ 3 タイマ制御レジスタ
22.8.4.1
BT3STC
ベースタイマ 3 ステータス制御レジスタ
22.8.4.1
BT3DTBF
ベースタイマ 3 データバッファレジスタ
22.8.4.2
BT4TMCR
ベースタイマ 4 タイマ制御レジスタ
22.8.4.1
BT4STC
ベースタイマ 4 ステータス制御レジスタ
22.8.4.1
BT4DTBF
ベースタイマ 4 データバッファレジスタ
22.8.4.2
BT5TMCR
ベースタイマ 5 タイマ制御レジスタ
22.8.4.1
BT5STC
ベースタイマ 5 ステータス制御レジスタ
22.8.4.1
BT5DTBF
ベースタイマ 5 データバッファレジスタ
22.8.4.2
BT6TMCR
ベースタイマ 6 タイマ制御レジスタ
22.8.4.1
BT6STC
ベースタイマ 6 ステータス制御レジスタ
22.8.4.1
BT6DTBF
ベースタイマ 6 データバッファレジスタ
22.8.4.2
BT7TMCR
ベースタイマ 7 タイマ制御レジスタ
22.8.4.1
BT7STC
ベースタイマ 7 ステータス制御レジスタ
22.8.4.1
BT7DTBF
ベースタイマ 7 データバッファレジスタ
22.8.4.2
BT8TMCR
ベースタイマ 8 タイマ制御レジスタ
22.8.4.1
BT8STC
ベースタイマ 8 ステータス制御レジスタ
22.8.4.1
BT8DTBF
ベースタイマ 8 データバッファレジスタ
22.8.4.2
BT9TMCR
ベースタイマ 9 タイマ制御レジスタ
22.8.4.1
BT9STC
ベースタイマ 9 ステータス制御レジスタ
22.8.4.1
BT9DTBF
ベースタイマ 9 データバッファレジスタ
22.8.4.2
BTATMCR
ベースタイマ 10 タイマ制御レジスタ
22.8.4.1
BTASTC
ベースタイマ 10 ステータス制御レジスタ
22.8.4.1
BTADTBF
ベースタイマ 10 データバッファレジスタ
22.8.4.2
1
2
3
4
5
6
7
8
9
10
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
21.4.1
385
MB91605A シリーズ
表 22.3-4 16/32 ビット PWC タイマのレジスタ一覧 <Helvetica>(2 / 2)
チャネル
11
386
レジスタ略称
レジスタ名
BTBTMCR
ベースタイマ 11 タイマ制御レジスタ
参照先
22.8.4.1
BTBSTC
ベースタイマ 11 ステータス制御レジスタ
22.8.4.1
BTBDTBF
ベースタイマ 11 データバッファレジスタ
22.8.4.2
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.4
ベースタイマの動作
ベースタイマの動作について説明します。
■ ベースタイマの動作
● リセットモード
このモードの設定時に , ベースタイマのマクロをリセットした状態 ( 各レジスタは初期
値 ) とします。別のタイマ機能や , T32 ビット設定を切り換えるとき , いったん , この
モードに設定してから別のタイマ機能や T32 ビットを設定してください。ただし , リ
セット後ならば本モードの設定なしにタイマ機能や T32 ビットの設定は可能です。32
ビットモード設定時にこのモードを偶数チャネルに設定した場合 , 奇数チャネルも同
時にリセットがかかるようになっていますので , 奇数チャネルに対してリセットモー
ドの設定は必要ありません。
● 16 ビット PWM タイマ
16 ビット PWM タイマは , トリガ起動により周期設定した値をダウンカウント開始し
ます。その際 , まず出力を "L" レベルにし , 16 ビットダウンカウンタがデューティ設定
レジスタに設定されている値と一致した場合は "H" レベルに反転出力し , その後カウ
ンタがアンダフローになったときに再度 "L" レベルに反転出力します。これにより , 周
期とデューティが任意の波形を生成します。
● 16 ビット PPG タイマ
16 ビット PPG タイマは , トリガ起動により "L" 幅設定リロードレジスタに設定されて
いる値分ダウンカウントします。その際 , まず出力を "L" レベルにし , アンダフローに
なったときに出力を "H" レベルに反転出力して , 引き続き "H" 幅設定リロードレジス
タに設定されている値分ダウンカウント開始し , アンダフローになったときに出力レ
ベルを "L" に反転出力します。これにより , 任意の "L" 幅 , "H" 幅の波形を生成します。
● 16 ビットリロードタイマ
16 ビットリロードタイマは , トリガ起動により周期設定した値をダウンカウント開始
します。16 ビットダウンカウンタがアンダフローになったときに割込みフラグが設定
されます。出力レベルは MDSE ビットの設定によって , アンダフローごとに反転する
トグル出力か , カウント開始で "H", アンダフローで "L" 出力のパルス出力になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
387
MB91605A シリーズ
● 32 ビットリロードタイマ
基本動作は 16 ビットリロードタイマと同じですが , 偶数チャネルと奇数チャネルの 2
チャネル使用で 32 ビットリロードタイマとして動作します。その際 , 偶数チャネルは
下位 16 ビットタイマ動作となり , 奇数チャネルは上位 16 ビットタイマ動作となります
が , 割込み制御 , 出力波形制御は偶数チャネルの設定に従います。周期を設定する場合
は , 先に上位レジスタ ( 奇数チャネル ) に書き込んだ後に下位レジスタ ( 偶数チャネル )
に書き込むようにします。
タイマ値を読み出す場合は , 先に下位レジスタ ( 偶数チャネル ) を読み出した後に上位
レジスタ ( 奇数チャネル ) を読み出すようにします。
<注意事項>
• 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間 , ch.4 と ch.5 との間 , ch.6 と
ch.7 との間 , ch.8 と ch.9 との間 , ch.10 と ch.11 との間のみで可能です。これ以外の
組合せにおける 32 ビット動作はできません。
• 本機能は同時起動をサポートしています。詳細は「第 21 章 ベースタイマ 入出力選択
機能」を参照してください。
● 16 ビット PWC タイマ
PWC タイマは , 設定した測定開始エッジの入力で 16 ビットアップカウンタを起動させ ,
測定終了エッジの検出でカウンタを停止します。この間のカウント値がパルス幅とし
てデータバッファレジスタに格納されます。
● 32 ビット PWC タイマ
基本動作は 16 ビット PWC タイマと同じですが , 偶数チャネルと奇数チャネルの 2 チャ
ネル使用で 32 ビット PWC タイマとして動作します。その際 , 偶数チャネルは下位 16
ビットカウント動作となり , 奇数チャネルは上位 16 ビットカウント動作となりますが ,
割込み制御は偶数チャネルの設定に従います。測定値 , またはカウント値を読み出す場
合は , 先に下位レジスタ ( 偶数チャネル ) を読み出した後に上位レジスタ ( 奇数チャネ
ル ) を読み出すようにします。
<注意事項>
• 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間 , ch.4 と ch.5 との間 , ch.6 と
ch.7 との間 , ch.8 と ch.9 との間 , ch.10 と ch.11 との間のみで可能です。これ以外の
組合せにおける 32 ビット動作はできません。
• 本機能は同時起動をサポートしています。詳細は「第 21 章 ベースタイマ 入出力選択
機能」を参照してください。
388
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.5
32 ビットモード動作
リロードタイマ , PWC タイマは , 2 チャネルを使用して 32 ビットモード動作が可能
です。以下に , 32 ビットモード機能における基本機能 / 動作について示します。
■ 32 ビットモード機能
ベースタイマを 2 チャネル組み合せて 32 ビットデータのリロードタイマまたは 32 ビッ
トデータの PWC タイマ動作を実現する機能です。偶数チャネルの下位 16 ビットタイ
マ・カウンタ値を読み出す際に , 奇数チャネルの上位 16 ビットタイマ・カウンタ値も
取り込むので , 動作中のタイマ・カウンタ値も読み出すことが可能です。
■ 32 ビットモード設定
まず , 偶数チャネルの BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットを "000B" でリ
セットモードにして状態をリセットしてから , 16 ビットモード時と同様にリロードタ
イマ , または PWC タイマ選択と動作の設定を行います。このとき , BTxTMCR レジス
タの T32 ビットにも "1" を書き込むことで 32 ビット動作モードに設定します。奇数
チャネルの T32 ビットは "0" のままにしてください。リセットモードの設定も必要あ
りません。
次に , リロードタイマの場合は , 奇数チャネルの周期設定レジスタに 32 ビッ
トのうち , 上位 16 ビットのリロード値を設定し , その後に偶数チャネルの周期設定レ
ジスタに下位 16 ビットのリロード値を設定します。
32 ビット動作モードへの移行は T32 ビット書込み後 , 直ちに反映されるので , 設定変
更は両チャネルともカウント停止状態で行ってください。
32 ビットモードから 16 ビットモードへの移行は , 偶数チャネルの BTxTMCR レジスタ
の FMD2, FMD1, FMD0 ビットを "000B" でリセットモードにして偶数 , 奇数の両チャネ
ルの状態をリセットし , チャネルごとに 16 ビットモードでの設定を行います。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
389
MB91605A シリーズ
■ 32 ビットモード動作
32 ビットモード設定の後 , 偶数チャネルの制御によりリロードタイマ , または PWC タ
イマを起動すると , 偶数チャネルのタイマ / カウンタは下位 16 ビット動作となり , 奇
数チャネルのタイマ / カウンタは上位 16 ビット動作となります。
32ビットモードでの動作は偶数チャネルの設定に従うので, 奇数チャネルの設定は (リ
ロードタイマ時の周期設定レジスタを除き ) 無視します。タイマ起動 , 波形出力 , 割込
み信号も偶数チャネルのものが有効となります (奇数チャネルは"L"固定にマスクされ
ます ) 。
下記に ch.0, ch.1 の場合の構成を示します。
ch.1
アンダフロー
オーバフロー
ch.0
割込み
上位16ビット
タイマ/カウンタ
上位16ビット
リロード値
T32=0
アンダフロー
オーバフロー
下位16ビット
タイマ/カウンタ
波形出力
リード/ライト信号
下位16ビット
リロード値
PWC測定波形/外部トリガ
T32=1
<注意事項>
• 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間 , ch.4 と ch.5 との間 , ch.6 と
ch.7 との間 , ch.8 と ch.9 との間 , ch.10 と ch.11 との間のみで可能です。これ以外の
組合せにおける 32 ビット動作はできません。
• 本機能は同時起動をサポートしています。詳細は「第 21 章 ベースタイマ 入出力選択
機能」を参照してください。
390
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.6
ベースタイマの使用上の注意
ベースタイマの使用上の注意を以下に示します。
■ 各タイマの使用上で共通する注意
● プログラムによる設定上の注意
• BTxTMCR レジスタの以下に示すビットは動作中に書き換えることを禁止します。
書換えは必ず起動前か停止後に行ってください。
[bit14, bit13, bit12] CKS2, CKS1, CKS0 :クロック選択ビット
[bit10, bit9, bit8]
EGS2, EGS1, EGS0
:測定エッジ選択ビット
[bit7]
T32
:32 ビットタイマ選択ビット
( リロードタイマ・PWC 機能選択時 )
[bit6, bit5, bit4]
FMD2, FMD1, FMD0 :タイマ機能選択ビット
[bit2]
MDSE
:測定モード ( 単発 / 連続 ) 選択ビット
• BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットを "000B" のリセットモードに設
定したときはベースタイマの全レジスタは初期化されますので , すべてのレジスタ
に対して再設定が必要です。
• BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットを "000B" のリセットモードに設
定するとき , BTxTMCR レジスタの FMD2, FMD1, FMD0 ビット以外のビットへの設
定は無視されて初期化されます。
■ 16 ビット PWM/PPG/ リロードタイマの使用上の注意
● プログラムによる設定上の注意
• 割込み要求フラグセットタイミングとクリアタイミングが重複した場合には , フラ
グセットが優先され , クリア動作は無効となります。
• ダウンカウンタは , ロードとカウントのタイミングが重複した場合にはロード動作
を優先します。
• BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットによるタイマ機能の設定後に周期設
定 , デューティ設定 , "H" 幅設定 , "L" 幅設定をするようにします。
• ワンショットモードでカウント終了時に再起動を検出した場合はカウント値をリ
ロードして再起動を開始します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
391
MB91605A シリーズ
■ PWC タイマの使用上の注意
● プログラムによる設定上の注意
• カウント動作許可ビット (CTEN) に "1" 書込みでカウンタがクリアされますので , 起
動許可前にカウンタ中にあったデータは無効になります。
• システムリセット・リセットモードから PWC モードの設定 (FMD=100B) と測定開
始設定 (CTEN=1) を同時にした場合 , その直前の測定信号の状態によって動作する
場合があります。
• 連続測定モードにおいて , 再起動を設定したときに同時に測定開始エッジを検出し
た場合は直ちにカウントを "0001H" から開始します。
• カウント動作を開始した後に再起動を行う場合は , そのタイミングによっては以下
に示すようなことが起こり得ます。
- パルス幅単発測定モード時 , 測定終了エッジと同時であった場合
再起動を行って測定開始エッジ待ち状態となりますが , 測定終了フラグ (EDIR) は
セットされます。
- パルス幅連続測定モード時 , 測定終了エッジと同時であった場合
再起動を行って測定開始エッジ待ち状態となりますが , 測定終了フラグ (EDIR) は
セットされ , その時点での測定結果は BTxDTBF に転送されます。
以上のように , 動作中の再起動時には , フラグの動作に注意して割込み制御などを行う
ようにしてください。
392
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.7
ベースタイマ割込み
ベースタイマの各機能での割込み要求ビット , 割込み許可ビットと割込み要因をまと
めた一覧を示します。
■ 機能ごとの割込み制御ビットと割込み要因
機能ごとの割込み制御ビットと割込み要因を表 22.7-1 に示します。
表 22.7-1 各モードでの割込み制御ビットと割込み要因
ステータス制御レジスタ (BTxSTC)
PWM タイマ機能
割込み要求ビット
割込み要求許可
ビット
割込み要因
UDIR:bit0
UDIE:bit4
アンダフロー検出
DTIR:bit1
DTIE:bit5
デューティ一致検出
TGIR:bit2
TGIE:bit6
タイマ起動トリガ検出
IRQ1
UDIR:bit0
UDIE:bit4
アンダフロー検出
IRQ0
TGIR:bit2
TGIE:bit6
タイマ起動トリガ検出
IRQ1
UDIR:bit0
UDIE:bit4
アンダフロー検出
IRQ0
TGIR:bit2
TGIE:bit6
タイマ起動トリガ検出
IRQ1
OVIR:bit0
OVIE:bit4
オーバフロー検出
IRQ0
EDIR:bit2
EDIE:bit6
測定終了検出
IRQ1
IRQ
IRQ0
PPG タイマ機能
リロードタイマ機能
PWC タイマ機能
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
393
MB91605A シリーズ
22.8
ベースタイマの機能別説明
ベースタイマの各機能について説明します。
■ ベースタイマの機能
● PWM 機能
● PPG 機能
● リロードタイマ機能
● PWC 機能
394
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.8.1
PWM 機能
ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により ,
16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/
32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。
PWM を設定したときのタイマ機能の説明を示します。
• PWM タイマ選択時のタイマ制御レジスタ (BTxTMCR)
• PWM 周期設定レジスタ (BTxPCSR)
• PWM デューティ設定レジスタ (BTxPDUT)
• タイマレジスタ (BTxTMR)
• 16 ビット PWM タイマ動作
• ワンショット動作
• 割込み要因とタイミングチャート
• 出力波形
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
395
MB91605A シリーズ
PWM タイマ選択時のタイマ制御レジスタ
(BTxTMCR)
22.8.1.1
タイマ制御レジスタ (BTxTMCR) は , PWM タイマを制御します。PWM タイマ動作
中に書換え不可能なビットがありますので注意してください。
■ タイマ制御レジスタ (BTxTMCR 上位バイト )
図 22.8-1 タイマ制御レジスタ (BTxTMCR 上位バイト )
bit 15
bit 14
bit 13
bit 12
−
CKS2
CKS1
CKS0 RTGEN PMSK
−
R/W
R/W
R/W
bit 11
R/W
bit 10
R/W
bit 9
bit 8
初期値:
EGS1
EGS0
-0000000B ( リセット時 )
R/W
R/W
EGS1 EGS0
トリガ入力エッジ選択ビット
0
0
トリガ入力無効
0
1
立上りエッジ
1
0
立下りエッジ
1
1
両エッジ
PMSK
パルス出力マスクビット
0
通常出力
1
"L" 出力に固定
RTGEN
再起動許可ビット
0
再起動禁止
1
再起動許可
CKS2 CKS1 CKS0
0
R/W
396
:リード / ライト可能
:初期値
0
カウントクロック選択ビット
0
φ
φ/4
0
0
1
0
1
0
φ/16
0
1
1
φ/128
1
0
0
φ/256
1
0
1
外部クロック ( 両エッジイベント )
1
1
0
外部クロック ( 立下りエッジイベント )
1
1
1
外部クロック ( 立上りエッジイベント )
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-1 タイマ制御レジスタ (BTxTMCR 上位バイト )
ビット名
機能
• 読出し値は不定です。
bit15
未定義ビット
bit14
∼
bit12
CKS2, CKS1,
CKS0:
カウントクロック
選択ビット
• このビットへの書込みは , 動作に影響しません。
• 16 ビットダウンカウンタのカウントクロックを選択します。
• カウントクロックの変更は設定を変えると直ちに反映します。し
たがって , CKS2 ∼ CKS0 の変更はカウント停止状態 (CTEN=0) で
行ってください。ただし , CTEN ビットへの "1" 書込みと同時に変
更することは可能です。
bit11
RTGEN:
再起動許可ビット
ソフトウェアトリガ , またはトリガ入力による再起動を許可する
ビットです。
• PWM 出力波形の出力波形レベルを制御します。
• このビットが "0" のときは PWM 波形をそのまま出力します。
bit10
PMSK:
パルス出力マスク
ビット
• このビットが "1" のときは , 周期やデューティ設定の値にかかわ
らず PWM 出力を "L" 出力にマスクします。
( 注意事項 )
bit3 の OSEL が反転出力に設定されている場合に
PMSK を "1" にすると "H" 出力にマスクとなります。
• 外部起動要因として入力波形に対する有効エッジを選択し , トリ
ガの条件を設定します。
• 初期値または "00B" の設定の場合 , 入力波形に対する有効エッジ
bit9,
bit8
EGS1, EGS0:
トリガ入力エッジ
選択ビット
が選択されていない状態なので外部波形による起動はかかりま
せん。
( 注意事項 )
EGS1, EGS0 の設定にかかわらず , STRG ビットに "1"
を書き込むとソフトウェアトリガは有効になります。
• EGS1, EGS0 の変更はカウント停止状態 (CTEN=0) で行ってくだ
さい。ただし , CTEN ビットへの "1" 書込みと同時に変更するこ
とは可能です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
397
MB91605A シリーズ
■ タイマ制御レジスタ (BTxTMCR 下位バイト )
図 22.8-2 タイマ制御レジスタ (BTxTMCR 下位バイト )
bit 7
bit 6
―
FMD2
R/W
R/W
bit 5
bit 4
FMD1 FMD0
R/W
R/W
bit 3
bit 2
bit 1
OSEL
MDSE
R/W
R/W
398
:リード / ライト可能
:未定義ビット
:初期値
初期値:
CTEN STRG
R/W
00000000B ( リセット時 )
R/W
STRG
ソフトウェアトリガビット
0
無効
1
ソフトウェアによる起動開始
CTEN
カウント動作許可ビット
0
停止
1
動作許可
MDSE
モード選択ビット
0
連続動作
1
ワンショット動作
OSEL
出力極性指定ビット
0
通常極性
1
反転極性
FMD2 FMD1 FMD0
R/W
―
bit 0
タイマ機能選択ビット
0
0
0
リセットモード
0
0
1
PWM 機能選択
0
1
0
PPG 機能選択
0
1
1
リロードタイマ機能選択
1
0
0
PWC 機能選択
1
0
1
1
1
0
1
1
1
FUJITSU SEMICONDUCTOR LIMITED
設定禁止
CM71-10147-2
MB91605A シリーズ
表 22.8-2 タイマ制御レジスタ (BTxTMCR 下位バイト )
ビット名
bit7
機能
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• タイマ機能を選択するビットです。
bit6
∼
bit4
FMD2, FMD1,
FMD0:
タイマ機能選択
ビット
• FMD2, FMD1, FMD0 ビットに "001B" を設定すると PWM 機能が選
択されます。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
PWM 出力の極性を設定します。
bit3
OSEL:
出力極性指定
ビット
極性
リセット後
通常
"L" 出力
反転
"H" 出力
デューティ一致
アンダフロー
• 連続してパルスを出力する動作か, 単一パルスを出力するワンショッ
bit2
MDSE:
モード選択
ビット
ト動作かを選択します。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
bit1
CTEN:
カウント動作
許可ビット
• ダウンカウンタの動作を許可するビットです。
• カウンタが動作許可状態 (CTEN ビットが "1") のときに "0" を書き
込むとカウンタは停止します。
• CTEN ビットが "1" のときに STRG ビットに "1" を書き込むとソフ
トウェアトリガが発生します。
bit0
STRG:
ソフトウェア
トリガビット
( 注意事項 )
• STRG ビットの読出し値は常に "0" です。
( 注意事項 )
CM71-10147-2
CTEN ビットと STRG ビットに同時に "1" を書き込ん
だ場合でも , ソフトウェアトリガが発生します。
EGS1, EGS0 の設定にかかわらず , STRG ビットに "1"
を書き込むとソフトウェアトリガは有効になります。
FUJITSU SEMICONDUCTOR LIMITED
399
MB91605A シリーズ
■ ステータス制御レジスタ (BTxSTC)
図 22.8-3 ステータス制御レジスタ (BTxSTC)
R/W
―
400
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
―
TGIE
DTIE
UDIE
―
TGIR
DTIR
UDIR
00000000B ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
:リード / ライト可能
:未定義ビット
:初期値
UDIR
アンダフロー割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
DTIR
デューティ一致割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
TGIR
トリガ割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
UDIE
アンダフロー割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
DTIE
デューティ一致割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
TGIE
トリガ割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-3 ステータス制御レジスタ (BTxSTC)
ビット名
bit7
bit6
bit5
bit4
bit3
機能
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
TGIE:
トリガ割込み
要求許可
ビット
• bit2 :TGIR の割込み要求を制御します。
DTIE:
デューティ
一致割込み要求
許可ビット
• bit1 :DTIR の割込み要求を制御します。
UDIE:
アンダフロー
割込み要求許可
ビット
• bit0 :UDIR の割込み要求を制御します。
• TGIE ビットが許可されていて bit2 :TGIR ビットがセットされると
CPU に割込み要求を発生します。
• DTIE ビットが許可されていて bit1: DTIR ビットがセットされると
CPU に割込み要求を発生します。
• UDIE ビットが許可されていて bit0 :UDIR ビットがセットされると
CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• ソフトウェアトリガ , またはトリガ入力の検出をしたときに TGIR
ビットが "1" にセットされます。
bit2
TGIR:
トリガ割込み
要求ビット
• TGIR ビットは "0" 書込みによりクリアされます。
• TGIR ビットに "1" を書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令におけるリード値は ,
ビット値にかかわらず "1" になります。
• カウント値がデューティ設定値と一致したときにDTIRビットが"1"
bit1
DTIR:
デューティ一致
割込み要求
ビット
にセットされます。
• DTIR ビットは "0" 書込みによりクリアされます。
• DTIR ビットに "1" を書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令におけるリード値は ,
ビット値にかかわらず "1" になります。
• カウント値が "0000H" → "FFFFH" へのアンダフロー時に UDIR ビッ
bit0
UDIR:
アンダフロー
割込み要求
ビット
トが "1" にセットされます。
• UDIR ビットは "0" 書込みによりクリアされます。
• UDIR ビットに "1" を書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令におけるリード値は ,
ビット値にかかわらず "1" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
401
MB91605A シリーズ
PWM 周期設定レジスタ (BTxPCSR)
22.8.1.2
PWM 周期設定レジスタ (BTxPCSR) は , 周期を設定するためのバッファ付きレジス
タです。タイマレジスタへの転送は , 起動時とアンダフロー時に行われます。
■ PWM 周期設定レジスタ (BTxPCSR) のビット構成
図 22.8-4 に , PWM 周期設定レジスタ (BTxPCSR) のビット構成を示します。
図 22.8-4 PWM 周期設定レジスタ (BTxPCSR) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
XXXXXXXXB ( リセット時 )
初期値:
XXXXXXXXB ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W :リード / ライト可能
X :不定値
周期を設定するためのバッファ付きレジスタです。タイマレジスタへの転送は起動時
とアンダフロー時に行われます。
周期設定レジスタの初期設定時および書換え時は , 周期設定レジスタの書込み後に必
ずデューティ設定レジスタへの書込み動作を行ってください。
• BTxPCSR レジスタは 16 ビットデータでアクセスしてください。
• BTxPCSR レジスタは BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットで PWM 機
能の設定後に周期設定をしてください。
402
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
PWM デューティ設定レジスタ (BTxPDUT)
22.8.1.3
PWM デューティ設定レジスタ (BTxPDUT) はデューティを設定するためのバッファ
付きレジスタです。バッファからの転送は , アンダフローで行われます。
■ PWM デューティ設定レジスタ (BTxPDUT) のビット構成
図 22.8-5 に , PWM デューティ設定レジスタ (BTxPDUT) のビット構成を示します。
図 22.8-5 PWM デューティ設定レジスタ (BTxPDUT) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
XXXXXXXXB ( リセット時 )
初期値:
XXXXXXXXB ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W :リード / ライト可能
X :不定値
デューティを設定するためのバッファ付きレジスタです。バッファからの転送はアン
ダフローで行われます。
周期設定レジスタの値とデューティ設定レジスタの値を同じにすると , 通常極性時に
オール "H" を , 反転極性時にオール "L" を出力します。
PSCR < BTxPDUT となるような値を設定しないでください。PWM 出力は不定となり
ます。
• BTxPDUT レジスタは 16 ビットデータでアクセスしてください。
• BTxPDUT レジスタは BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットで PWM 機能
の設定後にデューティ設定してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
403
MB91605A シリーズ
タイマレジスタ (BTxTMR)
22.8.1.4
タイマレジスタ (BTxTMR) は , 16 ビットダウンカウンタの値を読み出すことができま
す。
■ タイマレジスタ (BTxTMR) のビット構成
図 22.8-6 に , PWM タイマレジスタ (BTxTMR) のビット構成を示します。
図 22.8-6 タイマレジスタ (BTxTMR) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
初期値:
00000000B ( リセット時 )
R
R
R
R
R
R
R
R
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
00000000B ( リセット時 )
R
R
R
R
R
R
R
R
R
:リードオンリ
16 ビットダウンカウンタの値を読み出すことができます。
<注意事項>
BTxTMR レジスタは 16 ビットデータでアクセスしてください。
404
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
16 ビット PWM タイマ動作
22.8.1.5
PWM タイマ動作では , トリガの検出時より設定周期の波形を単発 , または連続して
出力することができます。
出力パルスの周期は , BTxPCSR 値を変えることにより制御することができます。
また , デューティ比は , BTxPDUT 値を変えることにより制御することができます。
BTxPCSR にデータを書き込んだ後は , 必ず BTxPDUT への書込みを行ってください。
■ 連続動作
● 再起動禁止の場合 (RTGEN=0)
図 22.8-7 PWM 動作のタイミングチャート ( 再起動禁止の場合 )
立上りエッジ検出
トリガは無視されます
トリガ
m
n
o
PWM
出力波形
①
②
①= T(n+1) ms
②= T(m+1) ms
T :カウントクロック周期
m:BTxPCSR 値
n :BTxPDUT 値
● 再起動許可の場合 (RTGEN=1)
図 22.8-8 PWM 動作のタイミングチャート ( 再起動許可の場合 )
立上りエッジ検出
トリガにより再起動
トリガ
m
n
o
①
PWM出力波形
②
①= T(n+1) ms
②= T(m+1) ms
CM71-10147-2
T :カウントクロック周期
m:BTxPCSR 値
n :BTxPDUT 値
FUJITSU SEMICONDUCTOR LIMITED
405
MB91605A シリーズ
ワンショット動作
22.8.1.6
ワンショット動作では , トリガにより任意の幅の単一パルスを出力することができま
す。再起動許可の場合は , 動作中にエッジを検出するとカウンタをリロードします。
■ ワンショット動作
● 再起動禁止の場合 (RTGEN=0)
図 22.8-9 ワンショット動作のタイミングチャート ( トリガ再起動禁止 )
立上りエッジ検出
トリガは無視されます
トリガ
m
n
o
PWM出力波形
①
②
①= T(n+1) ms
②= T(m+1) ms
T :カウントクロック周期
m:BTxPCSR 値
n :BTxPDUT 値
● 再起動許可の場合 (RTGEN=1)
図 22.8-10 ワンショット動作のタイミングチャート ( トリガ再起動許可 )
立上りエッジ検出
トリガにより再起動
トリガ
m
n
o
PWM出力波形
①
②
①= T(n+1) ms
②= T(m+1) ms
406
T :カウントクロック周期
m:BTxPCSR 値
n :BTxPDUT 値
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
割込み要因とタイミングチャート
22.8.1.7
割込み要因とタイミングチャートについて示します。
■ 割込み要因とタイミングチャート (PWM 出力 : 通常極性 )
トリガが入力されてカウンタ値がロードされるまで , ソフトウェアトリガ時は T, 外部
トリガ時は 2T ∼ 3T (T: 周辺クロック (PCLK) サイクル ) を必要とします。
図 22.8-11 に , 周期設定値= 3, デューティ値= 1 の場合の割込み要因とタイミング
チャートを示します。
図 22.8-11 PWM タイマの割込み要因とタイミングチャート
トリガ
2T~3T(外部トリガ)
ロード
カウントクロック
カウント値
XXXXH
0003H
0002H
0001H
0000H
0003H
0002H
PWM出力波形
割込み
CM71-10147-2
起動エッジ
デューティ一致
アンダフロー
TGIR
DTIR
UDIR
FUJITSU SEMICONDUCTOR LIMITED
407
MB91605A シリーズ
出力波形
22.8.1.8
PWM 出力について示します。
■ PWM 出力オール "L" またはオール "H" の出力方法
図 22.8-12 に PWM 出力をオール "L" に , 図 22.8-13 にオール "H" にする出力方法を示し
ます。
図 22.8-12 PWM 出力をオール "L" レベルにする例
アンダフロー割込み
デューティ値
0002H
0001H
0000H
XXXXH
PWM出力波形
デューティ値を小さく
していきます
アンダフロー割込みでPMSKに
“1”を設定します。設定した周期から
オール“L”レベルの出力波形になります。
図 22.8-13 PWM 出力をオール "H" レベルにする例
デューティ一致割込み
PWM出力波形
デューティ値を大きく
していきます
デューティ一致割込みでデューティ値を
周期設定値と同じにすると、次の周期で
オール“H”レベルの出力波形になります。
408
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.8.2
PPG 機能
ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により ,
16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/
32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。
PPG を設定したときのタイマ機能の説明を示します。
• PPG タイマ選択時のタイマ制御レジスタ (BTxTMCR)
• "L" 幅設定リロードレジスタ (BTxPRLL)
• "H" 幅設定リロードレジスタ (BTxPRLH)
• タイマレジスタ (BTxTMR)
• 16 ビット PPG タイマ動作
• 連続動作
• ワンショット動作
• 割込み要因とタイミングチャート
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
409
MB91605A シリーズ
PPG タイマ選択時のタイマ制御レジスタ
(BTxTMCR)
22.8.2.1
タイマ制御レジスタ (BTxTMCR) は , PPG タイマを制御します。PPG タイマ動作中
に書換え不可能なビットがありますので注意してください。
■ タイマ制御レジスタ (BTxTMCR 上位バイト )
bit 15
bit 14
bit 13
bit 12
−
CKS2
CKS1
CKS0 RTGEN PMSK
−
R/W
R/W
R/W
bit 11
R/W
bit 10
bit 9
bit 8
初期値:
EGS1
EGS0
-0000000B ( リセット時 )
R/W
R/W
R/W
EGS1 EGS0
トリガ入力エッジ選択ビット
0
0
トリガ入力無効
0
1
立上りエッジ
1
0
立下りエッジ
1
1
両エッジ
PMSK
パルス出力マスクビット
0
通常出力
1
"L" 出力に固定
RTGEN
再起動許可ビット
0
再起動禁止
1
再起動許可
CKS2 CKS1 CKS0
R/W
カウントクロック選択ビット
0
0
0
φ
0
0
1
φ/4
0
1
0
φ/16
0
1
1
φ/128
1
0
0
φ/256
1
0
1
外部クロック ( 両エッジイベント )
1
1
0
外部クロック ( 立下りエッジイベント )
1
1
1
外部クロック ( 立上りエッジイベント )
:リード / ライト可能
:初期値
410
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-4 タイマ制御レジスタ (BTxTMCR 上位バイト )
ビット名
bit15
未定義ビット
bit14
∼
bit12
CKS2, CKS1,
CKS0:
カウント
クロック選択
ビット
bit11
RTGEN:
再起動許可
ビット
機能
• 読出し値は不定です。
• このビットへの書込みは , 動作に影響しません。
• 16 ビットダウンカウンタのカウントクロックを選択します。
• カウントクロックの変更は設定を変えると直ちに反映します。
したがって , CKS2 ∼ CKS0の変更はカウント停止状態 (CTEN=0) で
行ってください。ただし , CTEN ビットへの "1" 書込みと同時に変
更することは可能です。
ソフトウェアトリガ , またはトリガ入力による再起動を許可するビッ
トです。
• PPG 出力波形の出力波形レベルを制御します。
• このビットが "0" のときは PPG 波形をそのまま出力します。
bit10
PMSK:
パルス出力
マスクビット
• このビットが "1" のときは , "H" 幅や "L" 幅設定の値にかかわらず
PPG 出力を "L" 出力にマスクします。
( 注意事項 )
bit3 の OSEL が反転出力に設定されている場合に
PMSK を "1" にすると "H" 出力にマスクとなります。
• 外部起動要因として入力波形に対する有効エッジを選択し , トリガ
の条件を設定します。
• 初期値または "00B" の設定の場合 , 入力波形に対する有効エッジが
bit9,
bit8
EGS1, EGS0:
トリガ入力
エッジ選択
ビット
選択されていない状態なので外部波形による起動はかかりません。
( 注意事項 )
EGS1, EGS0 の設定にかかわらず , STRG ビットに "1"
を書き込むとソフトウェアトリガは有効になります。
• EGS1, EGS0 の変更はカウント停止状態 (CTEN=0) で行ってくださ
い。ただし , CTEN ビットへの "1" 書込みと同時に変更することは
可能です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
411
MB91605A シリーズ
■ タイマ制御レジスタ (BTxTMCR 下位バイト )
bit 7
―
R/W
bit 6
bit 5
bit 4
FMD2 FMD1 FMD0
R/W
R/W
R/W
bit 3
bit 2
OSEL
MDSE
R/W
R/W
bit 1
R/W
412
00000000B ( リセット時 )
R/W
ソフトウェアトリガビット
0
無効
1
ソフトウェアによる起動開始
CTEN
カウント動作許可ビット
0
停止
1
動作許可
MDSE
モード選択ビット
0
連続動作
1
ワンショット動作
OSEL
出力極性指定ビット
0
通常極性
1
反転極性
FMD2 FMD1 FMD0
:リード / ライト可能
:未定義ビット
:初期値
初期値:
CTEN STRG
STRG
R/W
―
bit 0
タイマ機能選択ビット
0
0
0
リセットモード
0
0
1
PWM 機能選択
0
1
0
PPG 機能選択
0
1
1
リロードタイマ機能選択
1
0
0
PWC 機能選択
1
0
1
1
1
0
1
1
1
FUJITSU SEMICONDUCTOR LIMITED
設定禁止
CM71-10147-2
MB91605A シリーズ
表 22.8-5 タイマ制御レジスタ (BTxTMCR 下位バイト )
ビット名
bit7
機能
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• タイマ機能を選択するビットです。
bit6
∼
bit4
FMD2, FMD1,
FMD0:
タイマ機能
選択ビット
• FMD2, FMD1, FMD0 ビットに "010B" を設定すると PPG 機能が選択
されます。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
PPG 出力の極性を設定します。
bit3
OSEL:
出力極性指定
ビット
極性
リセット後
通常
"L" 出力
反転
"H" 出力
"L" 幅カウント終了
"H" 幅カウント終了
• 連続してパルスを出力する動作か , 単一パルスを出力するワンショッ
bit2
MDSE:
モード選択
ビット
ト動作かを選択します。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
bit1
CTEN:
カウント動作
許可ビット
• ダウンカウンタの動作を許可するビットです。
• カウンタが動作許可状態 (CTEN ビットが "1") のときに "0" を書き
込むとカウンタは停止します。
• CTEN ビットが "1" のときに STRG ビットに "1" を書き込むとソフ
トウェアトリガが発生します。
bit0
STRG:
ソフトウェア
トリガビット
( 注意事項 )
• STRG ビットの読出し値は常に "0" です。
( 注意事項 )
CM71-10147-2
CTEN ビットと STRG ビットに同時に "1" を書き込ん
だ場合でも , ソフトウェアトリガが発生します。
EGS1, EGS0 の設定にかかわらず , STRG ビットに "1"
を書き込むとソフトウェアトリガは有効になります。
FUJITSU SEMICONDUCTOR LIMITED
413
MB91605A シリーズ
■ ステータス制御レジスタ (BTxSTC)
R/W
―
414
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
―
TGIE
―
UDIE
―
TGIR
―
UDIR
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
:リード / ライト可能
:未定義ビット
:初期値
初期値:
00000000B ( リセット時 )
UDIR
アンダフロー割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
TGIR
トリガ割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
UDIE
アンダフロー割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
TGIE
トリガ割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-6 ステータス制御レジスタ (BTxSTC)
ビット名
bit7
bit6
bit5
bit4
bit3
機能
• 読出し値は "0" です。
未定義ビット
TGIE:
トリガ割込み
要求許可ビット
• このビットには "0" を書き込んでください。
• bit2: TGIR の割込み要求を制御します。
• TGIE ビットが許可されていて bit2 :TGIR ビットがセットされると
CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
UDIE:
アンダフロー
割込み要求許可
ビット
• このビットには "0" を書き込んでください。
• bit0 :UDIR の割込み要求を制御します。
• UDIEビットが許可されていて bit0 :UDIRビットがセットされると
CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• ソフトウェアトリガ , またはトリガ入力の検出をしたときに TGIR
ビットが "1" にセットされます。
bit2
TGIR:
トリガ割込み
要求ビット
• TGIR ビットは "0" 書込みによりクリアされます。
• TGIR ビットに "1" 書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令における読出し値は ,
ビット値にかかわらず "1" になります。
bit1
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• "H" 幅を設定した値からのカウント中でカウント値が "0000H" →
"FFFFH" へアンダフロー変化したときに UDIR ビットが "1" にセッ
bit0
UDIR:
アンダフロー
割込み要求
ビット
トされます。
• UDIR ビットは "0" 書込みによりクリアされます。
• UDIR ビットに "1" 書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令における読出し値は ,
ビット値にかかわらず "1" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
415
MB91605A シリーズ
"L" 幅設定リロードレジスタ (BTxPRLL)
22.8.2.2
"L" 幅設定リロードレジスタ (BTxPRLL) は , PPG 出力波形の "L" 幅を設定するため
のレジスタです。タイマレジスタへの転送は , 起動トリガ検出時か , "H" 幅カウント
終了時のアンダフローで行われます。
■ "L" 幅設定リロードレジスタ (BTxPRLL) のビット構成
図 22.8-14 に , "L" 幅設定リロードレジスタ (BTxPRLL) のビット構成を示します。
図 22.8-14 "L" 幅設定リロードレジスタ (BTxPRLL) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
初期値:
XXXXXXXXB ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
XXXXXXXXB ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W :リード / ライト可能
X :不定値
PPG 出力波形の "L" 幅を設定するためのレジスタです。タイマレジスタへの転送は起
動トリガ検出時と "H" 幅カウント終了時のアンダフローで行われます。
• BTxPRLL レジスタは 16 ビットデータでアクセスしてください。
• BTxPRLL レジスタは BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットで PPG 機能
の設定後に "L" 幅設定してください。
416
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
"H" 幅設定リロードレジスタ (BTxPRLH)
22.8.2.3
"H" 幅設定リロードレジスタ (BTxPRLH) は PPG 出力波形の "H" 幅を設定するため
のバッファ付きレジスタです。BTxPRLH からバッファレジスタへの転送は起動ト
リガ検出時と "H" 幅カウント終了時のアンダフローで行われ , バッファレジスタか
らタイマレジスタへの転送は "L" 幅カウント終了時のアンダフローで行われます。
■ "H" 幅設定リロードレジスタ (BTxPRLH) のビット構成
図 22.8-15 に , "H" 幅設定リロードレジスタ (BTxPRLH) のビット構成を示します。
図 22.8-15 "H" 幅設定リロードレジスタ (BTxPRLH) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
XXXXXXXXB ( リセット時 )
初期値:
XXXXXXXXB ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W :リード / ライト可能
X :不定値
PPG 出力波形の "H" 幅を設定するためのレジスタです。BTxPRLH からバッファレジス
タへの転送は起動トリガ検出時と"H"幅カウント終了時のアンダフローで行われ, バッ
ファレジスタからタイマレジスタへの転送は "L" 幅カウント終了時のアンダフローで
行われます。
• BTxPRLH レジスタは 16 ビットデータでアクセスしてください。
• BTxPRLH レジスタは BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットで PPG 機
能の設定後 , "H" 幅に設定してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
417
MB91605A シリーズ
タイマレジスタ (BTxTMR)
22.8.2.4
タイマレジスタ (BTxTMR) は , 16 ビットダウンカウンタの値を読み出すことができま
す。
■ タイマレジスタ (BTxTMR) のビット構成
図 22.8-16 に , PPG タイマレジスタ (BTxTMR) のビット構成を示します。
図 22.8-16 タイマレジスタ (BTxTMR) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
初期値:
00000000B ( リセット時 )
R
R
R
R
R
R
R
R
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
00000000B ( リセット時 )
R
R
R
R
R
R
R
R
R
:リードオンリ
16 ビットダウンカウンタの値を読み出すことができます。
<注意事項>
BTxTMR レジスタは 16 ビットデータでアクセスしてください。
418
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
16 ビット PPG タイマ動作
22.8.2.5
PPG タイマ動作では , 出力パルスの "L" 幅と "H" 幅をそれぞれのリロードレジスタ
に設定することで任意の出力パルスを制御することができます。
■ 動作概要
16 ビット長のリロードレジスタが "L" 幅設定用と "H" 幅設定用の 2 本 , "H" 幅設定の
バッファが 1 本あります (BTxPRLL, BTxPRLH, BTxPRLHB) 。
起動トリガにより , 16 ビットダウンカウンタに最初は BTxPRLL の設定値がロードされ ,
同時に BTxPRLHB に BTxPRLH の設定値が転送されます。PPG 出力はレベルを "L" に
して , カウントクロックごとにダウンカウントしていきます。アンダフローの検出によ
り BTxPRLHB の値がカウンタにリロードされ , PPG 出力波形を反転してダウンカウン
トしていきます。再度アンダフローの検出で PPG 出力波形を反転し , BTxPRLL の設定
値をカウンタにリロードし , BTxPRLH の設定値を BTxPRLHB に転送します。
この動作によって , 出力波形は各リロードレジスタ値に対応した "L" 幅・"H" 幅のパル
ス出力となります。
■ リロードレジスタへの書込みタイミング
リロードレジスタ BTxPRLL, BTxPRLH へのデータの書込みは起動トリガ検出時とアン
ダフロー割込み要因 (UDIR) がセットされてから , 次の周期に移るまでの間に行いま
す。その際に設定するデータは次の周期の設定となります。BTxPRLL, BTxPRLH に設
定したデータは起動トリガ検出時と "H" 幅カウント終了時のアンダフロー時に
BTxTMR と BTxPRLHB にそれぞれ自動転送されます。BTxPRLHB に転送されたデー
タは "L" 幅カウント終了時のアンダフロー時に BTxTMR に自動でリロードされます。
立上りエッジ検出
トリガ
IRQ1(TGIR要因)
IRQ0(UDIR要因)
次の周期の"L"幅,"H"幅をレジスタに設定
BTxPRLL
L0
L1
L2
L3
BTxPRLH
H0
H1
H2
H3
BTxPRLHB
xxxx
BTxTMR
xxxx
H1
H0
L0~0000
H0~
0000
L1~0000
H2
H1~
0000
L2~0000
H1
L2
H2~
0000
PPG出力波形
L0
CM71-10147-2
H0
L1
FUJITSU SEMICONDUCTOR LIMITED
H2
419
MB91605A シリーズ
連続動作
22.8.2.6
連続動作では , 各割込み要因のセットタイミングで "L" 幅と "H" 幅を更新すること
により , 任意のパルスを連続で出力することができます。再起動許可の場合は , 動作
中にエッジを検出するとカウンタをリロードします。
■ 連続動作
● 再起動禁止の場合 (RTGEN=0)
図 22.8-17 PPG 動作のタイミングチャート ( 再起動禁止の場合 )
立上りエッジ検出
トリガは無視されます
トリガ
m
n
o
PPG出力波形
①
②
起動エッジ
割込み
アンダフロー
アンダフロー
TGIR
UDIR
UDIR
①= T(m+1) ms
②= T(n+1) ms
T :カウントクロック周期
m:BTxPRLL 値
n :BTxPRLH 値
● 再起動許可の場合 (RTGEN=1)
図 22.8-18 PPG 動作のタイミングチャート ( 再起動許可の場合 )
立上りエッジ検出
トリガにより再起動
トリガ
m
n
o
PPG出力波形
②
①= T(m+1) ms
②= T(n+1) ms
420
①
T :カウントクロック周期
m:BTxPRLL 値
n :BTxPRLH 値
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
ワンショット動作
22.8.2.7
ワンショット動作では , トリガにより任意の幅の単一パルスを出力することができま
す。再起動許可の場合は , 動作中にエッジを検出するとカウンタをリロードします。
■ ワンショット動作
● 再起動禁止の場合 (RTGEN=0)
図 22.8-19 ワンショット動作のタイミングチャート ( トリガ再起動禁止 )
立上りエッジ検出
トリガは無視されます
トリガ
m
n
o
PPG出力波形
①
②
①= T(m+1) ms
②= T(n+1) ms
T :カウントクロック周期
m:BTxPRLL 値
n :BTxPRLH 値
● 再起動許可の場合 (RTGEN=1)
図 22.8-20 ワンショット動作のタイミングチャート ( トリガ再起動許可 )
立上りエッジ検出
トリガにより再起動
トリガ
m
n
o
PPG出力波形
②
①= T(m+1) ms
②= T(n+1) ms
CM71-10147-2
①
T :カウントクロック周期
m:BTxPRLL 値
n :BTxPRLH 値
FUJITSU SEMICONDUCTOR LIMITED
421
MB91605A シリーズ
■ リロード値とパルス幅の関係
16 ビット長のリロードレジスタに書かれた値を+ 1 した値に , カウントクロックの周
期を掛けた値が出力されるパルス幅となります。したがって , リロードレジスタ値が
"0000H" のときはカウントクロック 1 周期のパルス幅になります。また , リロードレジ
スタ値が "FFFFH" のときはカウントクロック 65536 周期のパルス幅になります。パル
ス幅の計算式は以下のようになります。
PL = T × (L+1)
PL :"L" パルスの幅
PH = T × (H+1)
PH:"H" パルスの幅
T :カウントクロック周期
L :BTxPRLL 値
H :BTxPRLH 値
422
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
割込み要因とタイミングチャート
22.8.2.8
割込み要因とタイミングチャートについて示します。
■ 割込み要因とタイミングチャート (PPG 出力 : 通常極性 )
トリガがかかってからカウンタ値がロードされるまで , ソフトウェアトリガ時は T, 外
部トリガ時は 2T ∼ 3T (T: 周辺クロック (PCLK) サイクル ) を必要とします。
割込み要因は PPG 起動トリガ検出時と , "H"レベル出力時のアンダフロー検出時にセッ
トされます。
図 22.8-21 に , "L" 幅設定値= 1, "H" 幅設定値= 1 の場合の割込み要因とタイミング
チャートを示します。
図 22.8-21 PPG タイマの割込み要因とタイミングチャート
トリガ
2T~3T(外部トリガ)
ロード
カウントクロック
カウント値
XXXXH
0001H
0000H
0001H
0000H
0001H
0000H
PPG出力波形
割込み
起動エッジ
TGIR
CM71-10147-2
アンダフロー
UDIR
FUJITSU SEMICONDUCTOR LIMITED
423
MB91605A シリーズ
22.8.3
リロードタイマ機能
ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により ,
16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/
32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。リ
ロードタイマを設定したときのタイマ機能の説明を示します。
• リロードタイマ選択時のタイマ制御レジスタ (BTxTMCR)
• 周期設定レジスタ (BTxPCSR)
• タイマレジスタ (BTxTMR)
• 16 ビットリロードタイマの動作
424
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
リロードタイマ選択時のタイマ制御レジスタ
(BTxTMCR)
22.8.3.1
タイマ制御レジスタ (BTxTMCR) は , タイマの動作制御をします。
■ タイマ制御レジスタ (BTxTMCR 上位バイト )
図 22.8-22 タイマ制御レジスタ (BTxTMCR 上位バイト )
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
初期値:
−
CKS2
CKS1
CKS0
―
―
EGS1
EGS0
-0000000B ( リセット時 )
−
R/W
R/W
R/W
―
―
R/W
R/W
EGS1 EGS0
トリガエッジ選択ビット
0
0
トリガ入力無効
0
1
外部トリガ ( 立上りエッジ )
1
0
外部トリガ ( 立下りエッジ )
1
1
外部トリガ ( 両エッジ )
CKS2 CKS1 CKS0
R/W
―
カウントクロック選択ビット
0
0
0
φ
0
0
1
φ/4
0
1
0
φ/16
0
1
1
φ/128
1
0
0
φ/256
1
0
1
外部クロック ( 両エッジイベント )
1
1
0
外部クロック ( 立下りエッジイベント )
1
1
1
外部クロック ( 立上りエッジイベント )
:リード / ライト可能
:未定義ビット
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
425
MB91605A シリーズ
表 22.8-7 タイマ制御レジスタ (BTxTMCR 上位バイト )
ビット名
bit15
未定義ビット
bit14
∼
bit12
CKS2, CKS1,
CKS0:
カウント
クロック選択
ビット
bit11,
bit10
機能
• 読出し値は不定です。
• このビットへの書込みは , 動作に影響しません。
• 16 ビットダウンカウンタのカウントクロックを選択します。
• カウントクロックの変更は設定を変えると直ちに反映します。し
たがって , CKS2 ∼ CKS0 の変更はカウント停止状態 (CTEN=0) で
行ってください。ただし , CTEN ビットへの "1" 書込みと同時に変
更することは可能です。
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• 外部起動要因として入力波形に対する有効エッジを選択し , トリ
ガの条件を設定します。
• 初期値または "00B" の設定の場合 , 入力波形に対する有効エッジが
bit9,
bit8
EGS1, EGS0:
トリガエッジ
選択ビット
選択されていない状態なので外部波形による起動は行いません。
( 注意事項 )
EGS1, EGS0 の設定にかかわらず , STRG ビットに "1"
を書き込むとソフトウェアトリガは有効になります。
• EGS1, EGS0 の変更はカウント停止状態 (CTEN=0) で行ってくださ
い。ただし , CTEN ビットへの "1" 書込みと同時に変更することは
可能です。
426
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ タイマ制御レジスタ (BTxTMCR 下位バイト )
図 22.8-23 タイマ制御レジスタ (BTxTMCR 下位バイト )
bit 7
T32
R/W
bit 6
bit 5
FMD2 FMD1
R/W
R/W
bit 4
bit 3
bit 2
FMD0
OSEL
MDSE
R/W
R/W
R/W
bit 1
初期値:
CTEN STRG
R/W
STRG
00000000B ( リセット時 )
R/W
ソフトウェアトリガビット
0
無効
1
ソフトウェアによる起動開始
CTEN
カウント動作許可ビット
0
停止
1
動作許可
MDSE
モード選択ビット
0
リロードモード
1
ワンショットモード
OSEL
出力極性指定ビット
0
通常極性
1
反転極性
FMD2 FMD1 FMD0
R/W
bit 0
タイマ機能選択ビット
0
0
0
リセットモード
0
0
1
PWM 機能選択
0
1
0
PPG 機能選択
0
1
1
リロードタイマ機能選択
1
0
0
PWC 機能選択
1
0
1
1
1
0
1
1
1
設定禁止
T32
32 ビットタイマ選択ビット
:リード / ライト可能
0
16 ビットタイマモード
:初期値
1
32 ビットタイマモード
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
427
MB91605A シリーズ
表 22.8-8 タイマ制御レジスタ (BTxTMCR 下位バイト ) <Helvetica>(1 / 2)
ビット名
機能
• 32 ビットタイマ機能を選択するビットです。
• FMD2, FMD1, FMD0 ビットに "011B" を設定して , リロードタイマ機
bit7
T32:
32 ビット
タイマ選択
ビット
能を選択している場合 , T32 ビットを "1" に設定すると 32 ビットタ
イマモードになります。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です (「22.5 32
ビットモード動作」を参照 )。
bit6
∼
bit4
FMD2,
FMD1,
FMD0:
タイマ機能
選択ビット
• タイマ機能を選択するビットです。
• FMD2, FMD1, FMD0 ビットに "011B" を設定するとリロードタイマ機
能が選択されます。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
• タイマ出力のレベルを通常のまま出力するか反転させるかを選択し
ます。
• bit2:MDSE との組合せにより次のように出力波形を生成します。
bit3
OSEL:
出力極性指定
ビット
MDSE
OSEL
0
0
カウント開始時 "L" のトグル出力
0
1
カウント開始時 "H" のトグル出力
1
0
カウント中 "H" の矩形波
1
1
カウント中 "L" の矩形波
出力波形
• MDSE ビットを "0" に設定するとリロードモードとなり , カウント値
が "0000H" → "FFFFH" へのアンダフローと同時にリロードレジスタ
bit2
MDSE:
モード選択
ビット
値をカウンタにロードしてカウント動作を続けます。
• MDSE ビットを "1" に設定するとワンショットモードとなり , カウン
ト値が"0000H"→"FFFFH"へのアンダフローにより動作を停止します。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
bit1
428
CTEN:
カウント動作
許可ビット
• ダウンカウンタの動作を許可するビットです。
• カウンタが動作許可状態 (CTEN ビットが "1") のときに "0" を書き込
むとカウンタは停止します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-8 タイマ制御レジスタ (BTxTMCR 下位バイト ) <Helvetica>(2 / 2)
ビット名
機能
• CTEN ビットが "1" のときに STRG ビットに "1" を書き込むとソフト
ウェアトリガが発生します。
bit0
STRG:
ソフトウェア
トリガビット
( 注意事項 )
• STRG ビットの読出し値は常に "0" です。
( 注意事項 )
CM71-10147-2
CTEN ビットと STRG ビットに同時に "1" を書き込んだ
場合でも , ソフトウェアトリガが発生します。
EGS1, EGS0 の設定にかかわらず , STRG ビットに "1" を
書き込むとソフトウェアトリガは有効になります。
FUJITSU SEMICONDUCTOR LIMITED
429
MB91605A シリーズ
■ ステータス制御レジスタ (BTxSTC)
図 22.8-24 ステータス制御レジスタ (BTxSTC)
R/W
―
430
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
―
TGIE
―
UDIE
―
TGIR
―
UDIR
00000000B ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
:リード / ライト可能
:未定義ビット
:初期値
UDIR
アンダフロー割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
TGIR
トリガ割込み要求ビット
0
割込み要因のクリア
1
割込み要因の検出
UDIE
アンダフロー割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
TGIE
トリガ割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-9 ステータス制御レジスタ (BTxSTC)
ビット名
bit7
bit6
bit5
bit4
bit3
機能
• 読出し値は "0" です。
未定義ビット
TGIE:
トリガ割込み
要求許可ビット
• このビットには "0" を書き込んでください。
• bit2 :TGIR の割込み要求を制御します。
• TGIEビットが許可されていて bit2 :TGIRビットがセットされると
CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
UDIE:
アンダフロー
割込み要求許可
ビット
• このビットには "0" を書き込んでください。
• bit0: UDIR の割込み要求を制御します。
• UDIE ビットが許可されていて bit0: UDIR ビットがセットされる
と CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• ソフトウェアトリガ, またはトリガ入力の検出をしたときにTGIR
ビットが "1" にセットされます。
bit2
TGIR:
トリガ割込み
要求ビット
• TGIR ビットは "0" 書込みによりクリアされます。
• TGIR ビットに "1" を書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令における読出し値は ,
ビット値にかかわらず "1" になります。
bit1
• 読出し値は "0" です。
未使用ビット
• このビットには "0" を書き込んでください。
• カウント値が "0000H"→"FFFFH"へのアンダフロー時にUDIRビッ
bit0
UDIR:
アンダフロー
割込み要求
ビット
トが "1" にセットされます。
• UDIR ビットは "0" 書込みによりクリアされます。
• UDIR ビットに "1" を書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令における読出し値は ,
ビット値にかかわらず "1" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
431
MB91605A シリーズ
周期設定レジスタ (BTxPCSR)
22.8.3.2
周期設定レジスタ (BTxPCSR) は , カウントの初期値を保持するレジスタです。32
ビットモード時には偶数チャネルの場合は下位 16 ビットのカウント初期値となり ,
奇数チャネルの場合は上位 16 ビットのカウント初期値となります。リセット時の初
期値は不定です。このレジスタへのアクセスは , 必ず 16 ビットデータ転送命令で
行ってください。
■ 周期設定レジスタ (BTxPCSR) のビット構成
図 22.8-25 に , 周期設定レジスタ (BTxPCSR) のビット構成を示します。
図 22.8-25 周期設定レジスタ (BTxPCSR) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
XXXXXXXXB ( リセット時 )
初期値:
XXXXXXXXB ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W :リード / ライト可能
X :不定値
周期を設定するためのレジスタです。タイマレジスタへの転送はアンダフローで行わ
れます。
• BTxPCSR レジスタは 16 ビットデータでアクセスしてください。
• BTxPCSR レジスタは BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットでリロード
タイマ機能の設定後に周期設定をしてください。
• 32 ビットモードで BTxPCSR レジスタにデータを書き込む場合 , 上位 16 ビットデー
タ ( 奇数チャネルのデータ ) から先にアクセスした後で , 下位 16 ビットデータ ( 偶
数チャネルのデータ ) にアクセスしてください。
432
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
タイマレジスタ (BTxTMR)
22.8.3.3
タイマレジスタ (BTxTMR) は , タイマのカウント値を読み出すことができるレジスタ
です。32 ビットモード時には偶数チャネルの場合は下位 16 ビットのカウント値とな
り , 奇数チャネルの場合は上位 16 ビットのカウント値となります。初期値は不定で
す。
このレジスタの読出しは , 必ず 16 ビットデータ転送命令で行ってください。
■ タイマレジスタ (BTxTMR) のビット構成
図 22.8-26 に , タイマレジスタ (BTxTMR) のビット構成を示します。
図 22.8-26 タイマレジスタ (BTxTMR) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
初期値:
00000000B ( リセット時 )
R
R
R
R
R
R
R
R
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
00000000B ( リセット時 )
R
R
R
R
R
R
R
R
R :リードオンリ
16 ビットダウンカウンタの値を読み出すことができます。
<注意事項>
• BTxTMR レジスタは 16 ビットデータでアクセスしてください。
• 32 ビットモードで BTxTMR レジスタを読み出す場合 , 下位 16 ビットデータ ( 偶数チャ
ネルのデータ) から先に読み出した後で, 上位16ビットデータ (奇数チャネルのデータ)
を読み出してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
433
MB91605A シリーズ
22.8.3.4
16 ビットリロードタイマの動作
リロードタイマ動作では , カウントクロックに同期して周期設定レジスタに設定す
る値からカウントダウンを実行し , カウント値が "0" となったときにカウントを終
了するか , または周期設定を自動でロードしてカウントダウンを停止するまで継続
動作します。
■ 内部クロック選択時のカウント動作
カウント許可と同時にカウント動作を開始したい場合は , タイマ制御レジスタの CTEN
ビットと STRG ビットの両方に "1" を書き込んでください。STRG ビットによるトリガ
入力は , タイマが起動状態のとき (CNTE=1) は動作モードにかかわらず常に有効です。
カウント動作を許可し , ソフトウェアトリガまたは外部トリガでタイマを起動すると ,
周期設定レジスタの値をカウンタにロードしてカウントダウンを開始します。
カウンタスタートのトリガがセットされてから周期設定レジスタのデータがカウンタ
へロードされるまでに , 1T (T: 周辺クロック (PCLK) サイクル ) の時間がかかります。
図 22.8-27 に , ソフトウェアトリガによるカウンタの起動および動作を示します。
図 22.8-27 内部クロック選択時のカウント動作
ロード
カウントクロック
カウント値
XXXXH
リロード値
-1
-1
CTEN(レジスタ)
1T
STRG(レジスタ)
434
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ アンダフロー動作
カウンタの値が "0000H" から "FFFFH" になる場合をアンダフローとしています。した
がって , 〔周期設定レジスタの設定値 +1〕カウントでアンダフローが発生します。
アンダフロー発生時に周期設定レジスタ (BTxPCSR) の内容をカウンタへロードして ,
タイマ制御レジスタ (BTxTMCR) の MDSE ビットが "0" のときはカウント動作を継続
します。MDSE ビットが "1" のときは , ロードしたカウンタ値のまま停止します。
アンダフローによりステータス制御レジスタ (BTxSTC) の UDIR ビットがセットされ ,
UDIE ビットが "1" のときに割込み要求を発生します。
図 22.8-28 に , アンダフロー動作のタイミングチャートを示します。
図 22.8-28 アンダフロー動作のタイミングチャート
[MDSE=0] の場合
ロード
カウントクロック
カウント値
0000H
リロード値
-1
-1
アンダフローセット
UDIR
[MDSE=1] の場合
ロード
カウントクロック
カウント値
0000H
リロード値
アンダフローセット
UDIR
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
435
MB91605A シリーズ
■ 入力端子機能の動作
TIN 端子はトリガ入力として使用することができます。TIN 端子に有効エッジが入力
されると周期設定レジスタの内容をカウンタにロードしてカウント動作を開始しま
す。トリガがかかってから , カウンタ値がロードされるまで , 2T ∼ 3T (T: 周辺クロッ
ク (PCLK) サイクル ) を必要とします。
図 22.8-29 に , 有効エッジ指定を立上りエッジにした場合のトリガ入力動作を示します。
図 22.8-29 トリガ入力の動作
TIN
2T~3T(外部トリガ)
ロード
カウントクロック
カウント値
0000H
リロード値
-1
-1
■ 出力端子機能の動作
TOUT 出力端子は , リロードモード時はアンダフローにより反転するトグル出力とし
て , ワンショットモード時はカウント中を示すパルス出力として機能します。出力極
性は , タイマ制御レジスタ (BTxTMCR) の OSEL ビットにより設定できます。OSEL=0
の場合 , トグル出力は初期値が "0" で , ワンショットパルス出力はカウント中 "1" を出
力します。OSEL=1 にすると出力波形は反転します。
図 22.8-30 に , 出力端子機能動作のタイミングチャートを示します。
図 22.8-30 出力端子機能動作のタイミングチャート
[MDSE=0, OSEL=0] の場合
CTEN
OSEL=1のときは反転
TOUT
トリガ
アンダフロー
[MDSE=1, OSEL=0] の場合
CTEN
OSEL=1のときは反転
TOUT
トリガ
アンダフロー
トリガ起動待ち
436
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.8.4
PWC 機能
ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により ,
16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/
32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。
PWC を設定したときのタイマ機能の説明を示します。
• PWC タイマ選択時のタイマ制御レジスタ (BTxTMCR)
• データバッファレジスタ (BTxDTBF)
• PWC 動作
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
437
MB91605A シリーズ
PWC タイマ選択時のタイマ制御レジスタ
(BTxTMCR)
22.8.4.1
タイマ制御レジスタ (BTxTMCR) は , PWC タイマの動作を制御します。
■ タイマ制御レジスタ (BTxTMCR 上位バイト )
bit 15
bit 14
bit 13
bit 12
bit 11
bit 10
bit 9
bit 8
初期値:
―
CKS2
CKS1
CKS0
―
EGS2
EGS1
EGS0
00000000B ( リセット時 )
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
EGS2 EGS1 EGS0
0
0
0
0
0
1
立上りエッジ間周期測定 ( ↑∼↑ )
0
1
0
立下りエッジ間周期測定 ( ↓∼↓ )
0
1
1
全エッジ間パルス幅測定
( ↑または↓∼↓または↑ )
1
0
0
"L" パルス幅測定 ( ↓∼↑ )
1
0
1
1
1
0
1
1
1
CKS2 CKS1 CKS0
R/W
―
438
:リード / ライト可能
:未定義ビット
:初期値
測定エッジ選択ビット
"H" パルス幅測定 ( ↑∼↓ )
設定禁止
カウントクロック選択ビット
0
0
0
φ
0
0
1
φ/4
0
1
0
φ/16
0
1
1
φ/128
1
0
0
φ/256
1
0
1
1
1
0
1
1
1
FUJITSU SEMICONDUCTOR LIMITED
設定禁止
CM71-10147-2
MB91605A シリーズ
表 22.8-10 タイマ制御レジスタ (BTxTMCR 上位バイト )
ビット名
bit15
機能
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• 16 ビットアップカウンタのカウントクロックを選択します。
bit14
∼
bit12
CKS2, CKS1,
CKS0:
カウントクロック
選択ビット
• カウントクロックの変更は設定を変えると直ちに反映します。
したがって, CKS2∼CKS0の変更はカウント停止状態 (CTEN=0)
で行ってください。ただし , CTEN ビットへの "1" 書込みと同時
に変更することは可能です。
bit11
bit10
∼
bit8
• 読出し値は "0" です。
未定義ビット
EGS2, EGS1,
EGS0:
測定エッジ選択
ビット
CM71-10147-2
• このビットには "0" を書き込んでください。
• 測定エッジの条件を設定します。
• EGS2, EGS1, EGS0 の変更はカウント停止状態 (CTEN=0) で
行ってください。ただし , CTEN ビットへの "1" 書込みと同時に
変更することは可能です。
FUJITSU SEMICONDUCTOR LIMITED
439
MB91605A シリーズ
■ タイマ制御レジスタ (BTxTMCR 下位バイト )
bit 7
T32
R/W
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
―
MDSE
CTEN
―
00000000B ( リセット時 )
R/W
R/W
R/W
R/W
FMD2 FMD1 FMD0
R/W
R/W
R/W
CTEN
カウント動作許可ビット
0
停止
1
動作許可
MDSE
モード選択ビット
0
連続測定モード
1
単発測定モード
FMD2 FMD1 FMD0
R/W
―
440
:リード / ライト可能
:未定義ビット
:初期値
タイマ機能選択ビット
0
0
0
リセットモード
0
0
1
PWM 機能選択
0
1
0
PPG 機能選択
0
1
1
リロードタイマ機能選択
1
0
0
PWC 機能選択
1
0
1
1
1
0
1
1
1
設定禁止
T32
32 ビットタイマ選択ビット
0
16 ビットタイマモード
1
32 ビットタイマモード
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-11 タイマ制御レジスタ (BTxTMCR 下位バイト )
ビット名
機能
• 32 ビットタイマ機能を選択するビットです。
bit7
T32:
32 ビット
タイマ選択
ビット
• FMD2, FMD1, FMD0 ビットに "100B" を設定して PWC 機能を選択
している場合に T32 ビットを "1" に設定すると , 32 ビット PWC モー
ドになります。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です (「22.5 32
ビットモード動作」を参照 )。
• タイマ機能を選択するビットです。
bit6
∼
bit4
FMD2, FMD1,
FMD0:
タイマ機能
選択ビット
• FMD2, FMD1, FMD0 ビットに "100B" を設定すると PWC 機能が選
択されます。
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
bit3
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• 測定動作を以下のように選択します
bit2
MDSE:
モード選択
ビット
MDSE
モード
0
連続測定
連続測定:バッファレジスタ有効
1
単発測定
1 回測定後に停止
動作
• 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN
ビットへの "1" 書込みと同時に変更することは可能です。
• アップカウンタの起動または再起動を許可するビットです。
• カウンタが動作許可状態 (CTEN ビットが "1") のときに "1" を書き
bit1
CTEN:
カウント動作
許可ビット
込むと再起動となりカウンタはクリアされ , 測定開始エッジ待ち状
態となります。
• カウンタが動作許可状態 (CTEN ビットが "1") のときに "0" を書き
込むとカウンタは停止します。
bit0
• 読出し値は "0" です。
未定義ビット
CM71-10147-2
• このビットには "0" を書き込んでください。
FUJITSU SEMICONDUCTOR LIMITED
441
MB91605A シリーズ
■ ステータス制御レジスタ (BTxSTC)
bit 7
bit 6
bit 5
bit 4
ERR
R
bit 3
bit 2
EDIE
R/W
bit 1
bit 0
―
OVIE
初期値:
―
EDIR
―
OVIR
R/W
R/W
00000000B ( リセット時 )
R/W
R
R/W
R/W
OVIR
オーバフロー割込み要求ビット
0
割込み要求のクリア
1
割込み要因の検出
EDIR
測定終了割込み要求ビット
0
測定結果 (PWCR) をリード
1
割込み要因の検出
OVIE
オーバフロー割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
EDIE
測定終了割込み要求許可ビット
0
割込み要求を禁止
1
割込み要求を許可
ERR
エラーフラグビット
0
R/W
R
―
442
:リード / ライト可能
:リードオンリ
:未定義ビット
:初期値
1
正常状態
リードしていない測定結果に次の測定結果が
上書きされた
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 22.8-12 ステータス制御レジスタ (BTxSTC)
ビット名
機能
• 連続測定モード時において , BTxDTBF レジスタの測定結果を読み
出さないうちに , 次の測定が終了してしまったことを示すフラグ
です。この場合 , BTxDTBF レジスタの値は新しい測定結果に更新
bit7
ERR:
エラーフラグ
ビット
されて 1 つ前の測定結果は消失します。
• 測定は ERR ビット値に関係なく続行されます。
• ERR ビットは読出しのみ可能で , 書込みしてもビット値には影響
しません。
• ERR ビットは測定結果 (BTxDTBF) を読出しすることによりクリ
アされます。
bit6
bit5
bit4
bit3
EDIE:
測定終了割込み
要求許可ビット
• bit2 :EDIR の割込み要求を制御します。
• EDIE ビットが許可されていて bit2 :EDIR ビットがセットされると
CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
OVIE:
オーバフロー
割込み要求許可
ビット
• このビットには "0" を書き込んでください。
• bit0: OVIR の割込み要求を制御します。
• OVIE ビットが許可されていて bit0: OVIR ビットがセットされると
CPU に割込み要求を発生します。
• 読出し値は "0" です。
未定義ビット
• このビットには "0" を書き込んでください。
• 測定終了したことを示し, 終了時にフラグが"1"にセットされます。
bit2
EDIR:
測定終了割込み
要求ビット
• EDIR ビットは測定結果 (BTxDTBF) を読出しすることによりクリ
アされます。
• EDIR ビットは読出しのみ可能で , 書込みしてもビット値には影響
しません。
bit1
bit0
• 読出し値は "0" です。
未定義ビット
OVIR:
オーバフロー
割込み要求
ビット
• このビットには "0" を書き込んでください。
• カウント値が "FFFFH" → "0000H" へのオーバフロー時にフラグが
"1" にセットされます。
• OVIR ビットは "0" 書込みによりクリアされます。
• OVIR ビットに "1" を書き込んでもビット値には影響しません。
• リードモディファイライト (RMW) 系命令における読出し値は ,
ビット値にかかわらず "1" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
443
MB91605A シリーズ
データバッファレジスタ (BTxDTBF)
22.8.4.2
データバッファレジスタ (BTxDTBF) は , PWC タイマの測定値またはカウント値を
読み出すことができるレジスタです。32 ビットモード時には偶数チャネルの場合は
下位 16 ビットの値となり , 奇数チャネルの場合は上位 16 ビットの値となります。
このレジスタの読出しは , 必ず 16 ビットデータ転送命令で行ってください。
■ データバッファレジスタ (BTxDTBF) のビット構成
図 22.8-31 に , データバッファレジスタ (BTxDTBF) のビット構成を示します。
図 22.8-31 データバッファレジスタ (BTxDTBF) のビット構成
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10
bit 9
bit 8
初期値:
XXXXXXXXB ( リセット時 )
R
R
R
R
R
R
R
R
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
初期値:
XXXXXXXXB ( リセット時 )
R
R
R
R
R
R
R
R
R :リードオンリ
• BTxDTBFレジスタは連続測定モード, ワンショット測定モードのいずれにおいても
読出しのみ可能なレジスタです。書き込んでもレジスタ値は変化しません。
• 連続測定モード時 (BTxTMCR:bit3 MDSE=1) は , 前回の測定結果を保持するバッ
ファレジスタとなります。
• ワンショット測定モード時 (BTxTMCR: bit3 MDSE=0) は , BTxDTBF レジスタでアッ
プカウンタを直接アクセスします。カウント中も読出し可能で , カウント値を読み
出せます。測定終了後は測定結果をそのまま保存します。
• BTxDTBF レジスタは 16 ビットデータでアクセスしてください。
444
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
22.8.4.3
PWC 動作
PWC タイマには , パルス幅測定機能があり , 5 種類のカウントクロックを選択可能
で入力パルスの任意イベント間の時間・周期をカウンタで測定できます。以下に ,
パルス幅測定機能における基本機能 / 動作について示します。
■ パルス幅測定機能
起動後 , カウンタを "0000H" にクリアし , 設定した測定開始エッジが入力されるまでカ
ウント動作は行われません。測定開始エッジを検出すると "0001H" からカウントアッ
プを開始し , 測定終了エッジを検出するとカウントを停止します。この間のカウント値
がパルス幅としてレジスタに保存されます。
測定終了時 , およびオーバフロー発生時に割込み要求を発生できます。
測定終了後は , 測定モードに応じて以下のように動作します。
• 単発測定モード時…動作を停止します。
• 連続測定モード時…カウンタ値をバッファレジスタに転送後 , 再度測定開始エッジ
が入力されるまでカウントを停止します。
図 22.8-32 パルス幅測定動作 ( 単発測定モード / "H" 幅測定 )
PWC入力被測定パルス
CTEN
カウント値
FFFFH
カウント
クリア
0000H
起動開始
カウント
ストップ
(実線はカウント値)
カウント 0001H
スタート
時間
EDIRフラグセット(測定終了)
図 22.8-33 パルス幅測定動作 ( 連続測定モード / "H" 幅測定 )
PWC入力被測定パルス
CTEN
(実線はカウント値)
オーバフロー BTxDTBF へデータ転送
カウント値
FFFFH
BTxDTBF へデータ転送
カウント
クリア
0000H
起動開始
カウント
ストップ
カウント
ストップ
カウント 0001H
カウント 0001H
スタート
再スタート
カウント
継続
時間
EDIRフラグセット(測定終了)
CM71-10147-2
OVIRフラグセット EDIRフラグセット
FUJITSU SEMICONDUCTOR LIMITED
445
MB91605A シリーズ
■ カウントクロックの選択
カウンタのカウントクロックは , BTxTMCR レジスタの bit6, bit5, bit4:CKS2, CKS1,
CKS0 の設定によって , 5 種類選択することができます。
選択できるカウントクロックは以下のとおりです。
BTxTMCR レジスタ
選択される内部カウントクロック
CKS2, CKS1, CKS0 ビット
000B
周辺クロック (PCLK) [ 初期値 ]
001B
周辺クロック (PCLK) の 4 分周
010B
周辺クロック (PCLK) の 16 分周
011B
周辺クロック (PCLK) の 128 分周
100B
周辺クロック (PCLK) の 256 分周
101B
110B
設定禁止
111B
リセット後の初期値では , 周辺クロック (PCLK) が選択されています。
( 注意事項 ) カウントクロックの選択は , 必ずカウンタ起動前に行ってください。
446
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 動作モードの選択
各動作モード / 測定モードの選択は , BTxTMCR の設定により行います。
動作モードの設定… BTxTMCR bit10 ∼ bit8:EGS2, EGS1, EGS0
( 測定エッジの選択 )
測定モードの設定… BTxTMCR bit2:MDSE
( 単発測定 / 連続測定の選択 )
動作モードの選択の一覧を以下に示します。
MDSE
EGS2
EGS1
EGS0
連続測定:バッファ有効
0
0
0
0
単発測定:バッファ無効
1
0
0
0
連続測定:バッファ有効
0
0
0
1
単発測定:バッファ無効
1
0
0
1
連続測定:バッファ有効
0
0
1
0
単発測定:バッファ無効
1
0
1
0
↑または↓∼↑または↓
全エッジ間測定
連続測定:バッファ有効
0
0
1
1
単発測定:バッファ無効
1
0
1
1
↓∼↑
"L" パルス幅測定
連続測定:バッファ有効
0
1
0
0
単発測定:バッファ無効
1
1
0
0
0
1
0
1
1
1
0
1
0
1
1
0
1
1
1
0
0
1
1
1
1
1
1
1
動作モード
↑∼↓
"H" パルス幅測定
↑∼↑
立上り間周期測定
↓∼↓
立下り間周期測定
設定禁止
リセット後の初期値では , "H" パルス幅測定−単発測定モードが選択されています。
動作モードの選択は , 必ずカウンタ起動前に行ってください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
447
MB91605A シリーズ
■ パルス幅測定の起動と停止
各動作の起動 / 再起動 / 強制停止は , BTxTMCR の bit1:CTEN ビットにより行います。
パルス幅測定の起動 / 再起動は CTEN ビットに "1" を書き込むことにより機能し , 強制
停止は CTEN ビットに "0" を書き込むことにより機能します。
CTEN
機能
1
パルス幅測定の起動 / 再起動
0
パルス幅測定の強制停止
■ 起動後の動作
パルス幅測定モードの起動後の動作は , 測定開始エッジが入力されるまでカウントは
行われません。測定開始エッジ検出後 , 16 ビットアップカウンタは "0001H" からカウ
ントを開始します。
■ 再起動
起動後 , 動作中に再度起動する (CTEN ビットが "1" の状態で再度 "1" を書き込む ) こと
を再起動とよびます。再起動すると , 以下のような動作が行われます。
• 測定開始エッジ待ち状態の場合 : 動作に影響はありません。
• 測定中の場合 :カウントを "0000H" にクリアし , 再度測定開始エッジ待ち状態となり
ます。この際 , 測定終了エッジ検出と再起動が同時になると , 測定終
了フラグ (EDIR) がセットされ , 連続測定モード時は測定結果が
BTxDTBF に転送されます。
■ 停止について
単発測定モードでは , カウンタのオーバフローまたは測定終了により自動的にカウン
ト動作を停止しますので , 特に意識する必要はありません。連続測定モードや自動停止
する前に停止させたい場合は , 強制停止させる必要があります。
■ カウンタのクリアと初期値
16 ビットアップカウンタは , 以下に示す場合に "0000H" にクリアされます。
• リセット時
• BTxTMCR の bit1:CTEN ビットに "1" を書き込んだとき ( 再起動時を含む )
16 ビットアップカウンタは , 測定開始エッジ検出時に "0001H" に初期化されます。
448
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ パルス幅測定動作詳細
● 単発測定と連続測定
パルス幅測定には , 1 回のみの測定を行うモードと連続して測定を行うモードがありま
す。各モードは BTxTMCR の MDSE ビットによって選択します (「22.8.4.3 PWC 動作
■ 動作モードの選択」を参照 ) 。両モードにおける相違点は以下のとおりです。
単発測定モード:
1 回目の測定終了エッジが入力されるとカウンタのカウントは停止し , BTxSTC 中
の測定終了フラグ (EDIR) がセットされ , 以降の測定は行われません。ただし , 同時
に再起動された場合は測定開始待ち状態となります。
連続測定モード:
測定終了エッジが入力されるとカウンタのカウントは停止し , BTxSTC 中の測定終
了フラグ (EDIR) がセットされ , 再度測定開始エッジが入力されるまでカウントを停
止します。再度 , 測定開始エッジが入力されるとカウンタを "0001H" に初期化して
測定を開始します。測定終了時 , カウンタの測定結果は BTxDTBF に転送されます。
測定モードの選択 / 変更は , 必ずカウンタ停止中に行ってください。
● 測定結果データ
単発測定モードと連続測定モードでは , 測定結果とカウンタ値の扱いおよび BTxDTBF
の機能に違いがあります。両モードにおける測定結果の相違点は以下のとおりです。
単発測定モード:
BTxDTBF を動作中に読み出すと測定中のカウント値が得られます。
BTxDTBF を測定終了後に読み出すと測定結果データが得られます。
連続測定モード:
測定終了時 , カウンタ内の測定結果は BTxDTBF に転送されます。
BTxDTBFを読み出すと直前の測定結果が得られ, 測定動作中も前回の測定結果を保
持しています。測定中のカウント値は読み出せません。
連続測定モードにて , 測定結果を読み出さない内に次の測定が終了してしまった場
合 , 前回の測定結果は新しい測定結果に消されてしまいます。この際 , BTxSTC 中
のエラーフラグ (ERR) がセットされます。エラーフラグ (ERR) は , BTxDTBF を読
み出すと自動的にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
449
MB91605A シリーズ
■ 測定モードとカウント動作
入力されたパルスのどこを測定するかによって, 測定モードは5種類のうちから選択す
ることができます。以下に , それらについて説明します。
測定モード
EGS2, EGS1, EGS0
測定内容 (W:測定するパルス幅 )
W
↑カウント
スタート
W
↓カウント
ストップ
000B
"H" パルス幅測定
↓
ストップ
↑
スタート
"H" 期間の幅を測定します。
カウント ( 測定 ) 開始:立上りエッジ検出時
カウント ( 測定 ) 終了:立下りエッジ検出時
W
立上りエッジ間
周期測定
001B
↑カウント
スタート
W
W
↑カウントストップ
↑スタート
立上りエッジ間の周期を測定します。
カウント ( 測定 ) 開始:立上りエッジ検出時
カウント ( 測定 ) 終了:立上りエッジ検出時
W
立下りエッジ間
周期測定
010B
↓カウント
スタート
W
W
↓カウントストップ
↓ストップ
↓スタート
↓スタート
立下りエッジ間の周期を測定します。
カウント ( 測定 ) 開始:立下りエッジ検出時
カウント ( 測定 ) 終了:立下りエッジ検出時
W
全エッジ間
パルス幅測定
011B
↑カウント
スタート
W
W
↓カウントストップ
↑ストップ
↓スタート
↑スタート
連続して入力されるエッジ間の幅を測定します。
カウント ( 測定 ) 開始:エッジ検出時
カウント ( 測定 ) 終了:エッジ検出時
W
↓カウント
スタート
100B
"L" パルス幅測定
W
↑カウント
ストップ
↓
スタート
↑
ストップ
"L" 期間の幅を測定します。
カウント ( 測定 ) 開始:立下りエッジ検出時
カウント ( 測定 ) 終了:立上りエッジ検出時
どの測定モードでも , 測定起動でカウンタは "0000H" にクリアされた後 , 測定開始エッ
ジが入力されるまではカウンタはカウント動作を行いません。測定開始エッジが入力
されると , 測定終了エッジが入力されるまでの間 , カウントクロックごとにアップカウ
ントを続けます。
連続測定モードの場合で , 全エッジ間パルス幅測定や周期測定などを行った場合 , 終了
エッジが次の測定開始エッジとなります。
450
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
● パルス幅 / 周期算出方法
測定終了後 , BTxDTBF に得られた測定結果データからの被測定パルス幅 / 周期算出方
法は以下のように求められます。
TW :被測定パルス幅 / 周期 [ms]
TW = n × t [ms]
n
:BTxDTBF 内の測定結果データ
t
:カウントクロックの周期 [ms]
● 割込み要求発生
2 つの割込み要求を発生することが可能です。
• カウンタのオーバフローによる割込み要求
測定中 , カウントアップによりオーバフローが発生するとオーバフローフラグ
(OVIR) がセットされ , オーバフロー割込み要求が許可されていると割込み要求が発
生します。
• 測定終了による割込み要求
測定終了エッジを検出すると , BTxSTC 中の測定終了フラグ (EDIR) がセットされ ,
測定終了割込み要求が許可されていると割込み要求が発生します。
測定終了フラグ (EDIR) は , 測定結果 BTxDTBF を読み出すと自動的にクリアされま
す。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
451
MB91605A シリーズ
■ パルス幅測定動作フロー
図 22.8-34 パルス幅測定動作フロー
各
種
設
定
PWC モード選択
カウントクロック選択
動作 / 測定モード選択
割込みフラグクリア
割込み許可
CTEN ビットにより起動
再起動
カウンタをクリア
連続測定モード
単発測定モード
測定開始エッジ検出
測定開始エッジ検出
カウント開始
カウント開始
アップカウント
アップカウント
オーバフローの発生
→ OVIR フラグセット
測定終了エッジ検出
→ EDIR フラグセット
452
オーバフローの発生
→ OVIR フラグセット
測定終了エッジ検出
→ EDIR フラグセット
カウント停止
カウント停止
カウント値を
BTxDTBF に転送
動作停止
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 23 章 10 ビット
A/D コンバータ
10 ビット A/D コンバータの機能と動作について説
明します。
23.1 概要
23.2 構成
23.3 端子
23.4 レジスタ
23.5 割込み
23.6 動作説明
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
453
第 23 章 10 ビット A/D コンバータ
23.1
MB91605A シリーズ
23.1 概要
10 ビット逐次比較変換型 A/D コンバータです。ソフトによる変換起動と外部トリガによる変
換起動の 2 つのモードを利用できます。
454
•
変換時間:約 8.1 μs ( サンプリング 5.9 μs, 変換 2.2 μs) fch:@40MHz 時
•
A/D 変換結果用レジスタ:各チャネルごとに用意
•
チャネル・スキャン機能あり
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 23 章 10 ビット A/D コンバータ
23.2
MB91605A シリーズ
23.2 構成
10 ビット A/D コンバータの構成を示します。
■ 10 ビット A/D コンバータのブロックダイヤグラム
10 ビット A/D コンバータのブロックダイヤグラムを図 23.2-1 に示します。
図 23.2-1 10 ビット A/D コンバータのブロックダイヤグラム
バッファ×12
D/Aコンバータ
Comparator
Control Logic
S/H
A/D
バ ス
ch & Status
Control Logic
外部端子
ATRG
CM71-10147-2
内 部 デ ー タ
M P X
AN11
AN10
AN 9
AN 8
AN 7
AN 6
AN 5
AN 4
AN 3
AN 2
AN 1
AN 0
FUJITSU SEMICONDUCTOR LIMITED
割込み要求
455
第 23 章 10 ビット A/D コンバータ
23.3
MB91605A シリーズ
23.3 端子
10 ビット A/D コンバータで使用する端子について説明します。
■ 概要
10 ビット A/D コンバータには次の端子があります。
•
AVCC 端子
10 ビット A/D コンバータのアナログ電源入力端子です。
•
AVRH 端子
10 ビット A/D コンバータの基準電圧入力端子です。
•
AVSS 端子
10 ビット A/D コンバータの GND 端子です。
•
AN0 ∼ AN11 端子
10 ビット A/D コンバータのアナログ入力端子です。
この端子は兼用端子です。10 ビット A/D コンバータの AN0 ∼ AN11 端子として使
用するには「17.4.5 ADER 制御レジスタ (ADER)」を参照してください。
•
ATRG 端子
10 ビット A/D コンバータの外部トリガ入力端子です。この端子は兼用端子です。
456
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 23 章 10 ビット A/D コンバータ
23.4
MB91605A シリーズ
23.4 レジスタ
10 ビット A/D コンバータで使用するレジスタの構成と機能について説明します。
■ 10 ビット A/D コンバータのレジスタ一覧
10 ビット A/D コンバータのレジスタ一覧を表 23.4-1 に示します。
表 23.4-1 10 ビット A/D コンバータのレジスタ一覧
CM71-10147-2
レジスタ略称
ADCTH, ADCTL
A/D 制御レジスタ
レジスタ名
ADCH
参照先
23.4.1
ソフト変換アナログ入力選択レジスタ
23.4.2
ADAT0
A/D 変換結果レジスタ ch.0
23.4.3
ADAT1
A/D 変換結果レジスタ ch.1
23.4.3
ADAT2
A/D 変換結果レジスタ ch.2
23.4.3
ADAT3
A/D 変換結果レジスタ ch.3
23.4.3
ADAT4
A/D 変換結果レジスタ ch.4
23.4.3
ADAT5
A/D 変換結果レジスタ ch.5
23.4.3
ADAT6
A/D 変換結果レジスタ ch.6
23.4.3
ADAT7
A/D 変換結果レジスタ ch.7
23.4.3
ADAT8
A/D 変換結果レジスタ ch.8
23.4.3
ADAT9
A/D 変換結果レジスタ ch.9
23.4.3
ADAT10
A/D 変換結果レジスタ ch.10
23.4.3
ADAT11
A/D 変換結果レジスタ ch.11
23.4.3
FUJITSU SEMICONDUCTOR LIMITED
457
第 23 章 10 ビット A/D コンバータ
23.4
23.4.1
MB91605A シリーズ
A/D 制御レジスタ (ADCTH, ADCTL)
A/D 制御レジスタ (ADCTH, ADCTL) のビット構成を図 23.4-1 に示します。
図 23.4-1 A/D 制御レジスタ (ADCTH, ADCTL) のビット構成
ADCTH
bit
15
14
13
12
11
10
9
8
−
R
−
R
−
R
−
R
−
R
TRG
STR
属性
−
R
R/W
R/W
初期値
0
0
0
0
0
0
0
0
7
6
5
4
3
2
1
0
ASS3
ASS2
ASS1
ASS0
BUSY
INTE
属性
R
R
R
R
−
R
INT
R
R/W
R/W
初期値
0
0
0
0
0
0
0
0
ADCTL
bit
R/W:リード / ライト可能
R:リードオンリ
−:未使用
[bit15 ∼ bit10]:未使用ビット
常に "0" が読み出されます。
[bit9]:TRG
TRG=1 のとき外部端子 (ATRG) 入力の立上りエッジを検出して A/D 変換を起動します。
A/D 変換中にエッジ検出された場合は無視されます。
値
説明
0
外部端子トリガでの起動禁止
1
外部端子トリガでの起動
[bit8]:STR
A/D 変換スタート・ビットです。
値
説明
0
影響なし
1
ソフト起動 / 再起動 ( 変換中の書込み )
このビットは常に "0" が読み出されます。
458
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 23 章 10 ビット A/D コンバータ
23.4
MB91605A シリーズ
[bit7 ∼ bit4]:ASS3 ∼ ASS0
選択されているアナログチャネルが読み出せます。
BUSY=1 のときに有効なデータが読み出せます。
値
説明
0000B ∼1011B 選択チャネル
それ以外
設定禁止
[bit3]:BUSY
A/D 変換中を示すフラグです。
値
説明
0
変換中でない
1
変換中
[bit2]:未使用ビット
常に "0" が読み出されます。
[bit1]:INT
A/D 変換終了フラグです。
値
0
説明
変換なし , または , 変換中
1
変換完了
[bit0]:INTE
A/D 変換割込み許可ビットです。
値
説明
0
割込み禁止
1
割込み許可
INT=1 のとき INTE=1 なら割込み要求を発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
459
第 23 章 10 ビット A/D コンバータ
23.4
MB91605A シリーズ
ソフト変換アナログ入力選択レジスタ (ADCH)
23.4.2
ソフト変換アナログ入力選択レジスタ (ADCH) のビット構成を図 23.4-2 に示します。
図 23.4-2 ソフト変換アナログ入力選択レジスタ (ADCH) のビット構成
bit 15
14
−
13
−
−
12
11
10
9
8
7
6
5
4
3
2
1
0
−
i11 i10
i9
i8
i7
i6
i5
i4
i3
i2
i1
i0
R/W
属性
0
初期値
R/W:リード / ライト可能
−:未使用
[bit15 ∼ bit12]:未使用ビット
常に "0" が読み出されます。
[bit11 ∼ bit0]:i11 ∼ i0
ソフト変換用アナログ入力選択ビットです。
値
説明
0
入力非選択
1
入力選択
複数の入力が選択されている場合には , 選択されている入力すべてに対し順次 , 変換さ
れます。
A/D 変換結果レジスタ ch.0 ∼ ch.11(ADAT0 ∼
ADAT11)
23.4.3
A/D 変換結果レジスタ ch.0 ∼ ch.11(ADAT0 ∼ ADAT11) のビット構成を図 23.4-3 に示
します。
図 23.4-3 A/D 変換結果レジスタ ch.0 ∼ ch.11(ADAT0 ∼ ADAT11) のビット構成
bit
15
14
13
12
11
10
9
8
"0"
"0"
"0"
"0"
"0"
"0"
d9
d8
属性
R
初期値
0
7
6
5
4
3
2
1
0
d7
d6
d5
d4
d3
d2
d1
d0
R:リードオンリ
460
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 23 章 10 ビット A/D コンバータ
23.4
[bit15 ∼ bit10]:未使用ビット
常に "0" が読み出されます。
[bit9 ∼ bit0]:d9 ∼ d0
各チャネルに対応した A/D 変換結果が格納されます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
461
第 23 章 10 ビット A/D コンバータ
23.5
MB91605A シリーズ
23.5 割込み
A/D 変換が完了したときに割込み要求を発生できます。
■ 概要
割込み要求が発生する条件を表 23.5-1 に示します。
表 23.5-1 割込み要求発生条件
割込み要求
A/D 変換完了割込み要求
割込み要求フラグ
A/D 制御レジスタ (ADCTL) の INT=1
割込み要求許可
A/D 制御レジスタ (ADCTL) の INTE=1
割込み要求のクリア
A/D 制御レジスタ (ADCTL) の INT ビットに "0" を書き込む
< 注意事項 >
•
割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点
で , 割込み要求が発生します。
割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。
- 割込み要求の発生を許可する前に割込み要求をクリアする。
- 割込み許可と同時に割込み要求をクリアする。
462
•
割込み要求は割込み要求の発生を禁止してからクリアするか , 割込み処理ルーチン内
でクリアしてください。
•
各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく
ださい。
•
割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼
ICR47) で設定します。割込みレベルの設定については , 「第 12 章 割込みコントロー
ラ」を参照してください。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
第 23 章 10 ビット A/D コンバータ
23.6
23.6 動作説明
10 ビット A/D コンバータの動作について説明します。
■ ソフト変換による A/D 動作
ソフト変換による A/D 変換を行うには , まず , アナログ入力端子 AN0 ∼ AN11 の 12 本
のうちから必要なチャネルを選択します。ADCH レジスタの対応するビットに "1" を
書き込むことより有効となります。
● 単一チャンネルの場合
変換用アナログ入力端子として 1 チャンネルのみを選択した場合。ADCTH レジスタの
STR ビットに "1" を書き込むことにより , ソフト変換動作が開始され , ADCTL レジス
タの BUSY ビットは "1" にセットされます。
変換動作中に STR ビットに再度 "1" を書き込むと変換動作は初期化され , 再び変換が
開始されます。
A/D 変換動作が終了すると , ADCTL レジスタの BUSY ビットは "0" にリセットされ
ADCTL レジスタの INT ビットは "1" にセットされます。これらのステータス・ビット
を読むことにより変換動作の終了を判別することができます。また , 変換完了の割込み
を発生したい場合は , ADCTL レジスタの INTE ビットを "1" にしておきます。
● 複数チャンネルの場合 ( スキャン変換 )
変換用アナログ入力端子として複数のチャンネルを選択した場合,自動的に各チャネル
選択の有無を調べ , 順次チャネル切替えと A/D 変換を起動し , 変換結果を各チャネルに
対応したレジスタへ格納します。
変換したいチャンネルに対応する ADCH レジスタのビットに "1" を書き込み , ADCTH
レジスタの STR ビットに "1" を書き込むことより , 変換動作を開始します。このとき
ADCTL レジスタの BUSY ビットは "1" にセットされます。変換チャネルは 0 から 11
の順で選択されます。ADCH レジスタで選択されていないチャネルは変換を行わず , 次
に選択されているチャネルの変換に移ります。
変換動作中に STR ビットに再度 "1" を書き込むと変換動作は初期化され , 再びチャネ
ル 0 から 11 の順で選択されたチャネルの変換を開始します。
選択したすべてのチャネルの A/D 変換動作が終了すると , ADCTL レジスタの BUSY
ビットは "0" にリセットされ , ADCTL レジスタの INT ビットは "1" にセットされます。
また , 変換完了の割込みを発生したい場合は , ADCTL レジスタの INTE ビットを "1" に
しておきます。
A/D 変換された結果は , 各チャネルのレジスタに格納されます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
463
第 23 章 10 ビット A/D コンバータ
23.6
MB91605A シリーズ
■ 外部トリガ変換による A/D 動作
外部トリガ起動を許可した場合 (ADCTH:TRG=1) には , 外部端子 (ATRG) 入力の立上り
エッジを検出して A/D 変換を開始します。外部トリガ許可の状態でソフト起動した場
合も起動します。また , A/D 起動中に再度外部端子 (ATRG) 入力の立上りエッジを検出
した場合には変換動作は継続されエッジは無視されます。
< 注意事項 >
低消費電力モードのストップモードに入れる場合は , A/D 変換動作が停止しているときに
入れてください。
464
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
第 24 章 マルチファンク
ションシリアル
インタフェース
マルチファンクションシリアルインタフェースの
機能と動作について説明します。
24.1 マルチファンクションシリアルインタフェースの特長
24.2 UART( 非同期シリアルインタフェース )
24.3 UART( 非同期シリアルインタフェース ) の概要
24.4 UART( 非同期シリアルインタフェース ) のレジスタ
24.5 UART の割込み
24.6 UART の動作
24.7 専用ボーレートジェネレータ
24.8 動作モード 0 ( 非同期ノーマルモード ) 設定手順と
プログラムフロー
24.9 動作モード 1 ( 非同期マルチプロセッサモード ) 設定
手順とプログラムフロー
24.10 UART モードの注意事項
24.11 CSIO( クロック同期シリアルインタフェース )
24.12 CSIO( クロック同期シリアルインタフェース ) の
概要
24.13 CSIO( クロック同期シリアルインタフェース ) の
レジスタ
24.14 CSIO( クロック同期シリアルインタフェース ) の
割込み
24.15 CSIO( クロック同期シリアルインタフェース ) の
動作
24.16 専用ボーレートジェネレータ
24.17 CSIO( クロック同期シリアルインタフェース ) 設定
手順とプログラムフロー
24.18 CSIO モードの注意事項
24.19 I2C インタフェース
24.20 I2C インタフェースの概要
24.21 I2C インタフェースのレジスタ
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
465
MB91605A シリーズ
24.22 I2C インタフェースの割込み
24.23 専用ボーレートジェネレータ
24.24 I2C モードの注意事項
466
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.1
マルチファンクションシリアルインタフェースの特長
マルチファンクションシリアルインタフェースには以下の特長があります。
■ インタフェースモード
マルチファンクションシリアルインタフェースは動作モードの設定により , 以下のイ
ンタフェースモードを選択可能です。
• UART0 ( 非同期ノーマルシリアルインタフェース )
• UART1 ( 非同期マルチプロセッサシリアルインタフェース )
• CSIO ( クロック同期式シリアルインタフェース ) (SPI に対応可能 )
• I2C (I2C バスインタフェース )
■ インタフェースモードの切換え
各シリアルインタフェースで通信を行う場合には , 表 24.1-1 のシリアルモードレジス
タ (SMR) で動作モードを設定してから通信を開始します。
表 24.1-1 インタフェースモードの切換え
MD2
MD1
MD0
0
0
0
UART0 ( 非同期ノーマルシリアルインタフェース )
0
0
1
UART1 ( 非同期マルチプロセッサシリアルインタフェース )
0
1
0
CSIO ( クロック同期式シリアルインタフェース ) (SPI に対応可能 )
1
0
0
I2C (I2C バスインタフェース )
インタフェースモード
( 注意事項 ) 上記以外は設定禁止です。
<注意事項>
• 1 つのシリアルインタフェースで送信あるいは受信動作中にモードの切換えを行った場合の送受
信に関する動作の保証はできません。
• 動作モードを変更すると , ほかのレジスタは初期化されますので動作モードは最初に設
定してください。ただし , 16 ビット書込みで SCR と SMR を同時に書き込んだとき ,
SCR には書き込んだ内容が反映されます。
■ チャネル数
本製品はマルチファンクションシリアルインタフェースを 12 チャネル内蔵していま
す。
ch.0 には I2C 機能はありません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
467
MB91605A シリーズ
■ 送受信 FIFO
16 バイトの送信用 FIFO と 16 バイトの受信用 FIFO を搭載しています。以降の説明に
おける FIFO 段数は 16 バイトに読み換えてください。
ch.8 ∼ ch.11 には FIFO はありません。
468
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.2
UART( 非同期シリアルインタフェース )
マルチファンクションシリアルインタフェースの機能のうち , 動作モード 0, 1 でサ
ポートしている UART 機能について説明します。
● UART( 非同期シリアルインタフェース )
● UART( 非同期シリアルインタフェース ) の概要
● UART( 非同期シリアルインタフェース ) のレジスタ
• シリアル制御レジスタ (SCR)
• シリアルモードレジスタ (SMR)
• シリアルステータスレジスタ (SSR)
• 拡張通信制御レジスタ (ESCR)
• 受信データレジスタ / 送信データレジスタ (RDR/TDR)
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)
• FIFO 制御レジスタ 1(FCR1)
• FIFO 制御レジスタ 0(FCR0)
• FIFO バイトレジスタ (FBYTE1/FBYTE2)
● UART の割込み
• 受信割込み発生とフラグセットのタイミング
• 受信 FIFO 使用時の割込み発生とフラグセットの タイミング
• 送信割込み発生とフラグセットのタイミング
• 送信 FIFO 使用時の割込み発生とフラグセットの タイミング
● UART の動作
● 専用ボーレートジェネレータ
ボーレート設定
● 動作モード 0 ( 非同期ノーマルモード ) 設定手順と プログラムフロー
● 動作モード 1 ( 非同期マルチプロセッサモード ) 設定手順とプログラムフロー
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
469
MB91605A シリーズ
24.3
UART( 非同期シリアルインタフェース ) の概要
UART( 非同期シリアルインタフェース ) は , 外部装置と非同期通信 ( 調歩同期 ) をす
るための汎用のシリアルデータ通信インタフェースです。双方向通信機能 ( ノーマ
ルモード ) , マスタ / スレーブ型通信機能 ( マルチプロセッサモード : マスタ / スレー
ブ両方サポート ) をサポートしています。また , 送信 / 受信用の FIFO を搭載してい
ます。
■ UART( 非同期シリアルインタフェース ) の機能
機能
• 全二重ダブルバッファ (FIFO 未使用時 )
• 送信 / 受信 FIFO ( サイズ最大各 16 バイト ) (FIFO 使用時 ) *1
1
データ
2
シリアル入力
3
転送形式
4
ボーレート
• 専用ボーレートジェネレータ (15 ビットリロードカウンタ構成 )
• 外部クロック入力をリロードカウンタで調節可能。
5
データ長
5 ビット ∼ 9 ビット ( ノーマルモード時 ), 7 ビット , 8 ビット ( マル
チプロセッサモード時 )
6
信号方式
NRZ (Non Return to Zero) , 反転 NRZ
7
スタートビット検出
8
受信エラー検出
3 回オーバサンプリングを行い , サンプリング値の多数決により受
信値を決定します。
非同期
• スタートビット立下りエッジに同期 (NRZ 方式の場合 )
• スタートビット立上りエッジに同期 ( 反転 NRZ 方式の場合 )
• フレーミングエラー
• オーバランエラー
• パリティエラー *2
• 受信割込み
( 受信完了 , フレーミングエラー , オーバランエラー , パリティ
エラー *2)
• 送信割込み ( 送信データエンプティ , 送信バスアイドル )
• 送信 FIFO 割込み ( 送信 FIFO がエンプティのとき )
• 送受信 DMA 転送サポート機能あり
9
割込み要求
10
マスタ / スレーブ型通信
機能 ( マルチプロセッサ
モード )
11
FIFO オプション
1 ( マスタ ) 対 n ( スレーブ ) 間の通信が可能
( マスタとスレーブシステムの両方をサポート )
• 送受信 FIFO 搭載 ( 最大容量:送信 FIFO 16 バイト , 受信 FIFO
16 バイト )*1
• 送信 FIFO と受信 FIFO を選択可能
• 送信データ再送可能
• 受信 FIFO 割込みタイミングをソフトで変更可能
• 独立して FIFO リセットサポート
*1: ch.8 ∼ ch.11 には FIFO はありません。
*2 : パリティエラーはノーマルモード時のみ。
470
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.4
UART( 非同期シリアルインタフェース ) のレジスタ
UART( 非同期シリアルインタフェース ) のレジスタ一覧を示します。
■ UART( 非同期シリアルインタフェース ) のレジスタ一覧
表 24.4-1 UART( 非同期シリアルインタフェース ) のレジスタ一覧 <Helvetica>(1 / 4)
チャネル
0
1
2
CM71-10147-2
レジスタ略称
レジスタ名
SCR0
シリアル制御レジスタ 0
参照先
24.4.1
SMR0
シリアルモードレジスタ 0
24.4.2
ESCR0
拡張通信制御レジスタ 0
24.4.4
BGR0
ボーレートジェネレータレジスタ 0
24.4.6
SSR0
シリアルステータスレジスタ 0
24.4.3
RDR0
受信データレジスタ 0
24.4.5
TDR0
送信データレジスタ 0
24.4.5
FCR10
FIFO 制御レジスタ 10
24.4.7
FCR00
FIFO 制御レジスタ 00
24.4.8
FBYTE10
FIFO1 バイトレジスタ 0
24.4.9
FBYTE20
FIFO2 バイトレジスタ 0
24.4.9
SCR1
シリアル制御レジスタ 1
24.4.1
SMR1
シリアルモードレジスタ 1
24.4.2
ESCR1
拡張通信制御レジスタ 1
24.4.4
BGR1
ボーレートジェネレータレジスタ 1
24.4.6
SSR1
シリアルステータスレジスタ 1
24.4.3
RDR1
受信データレジスタ 1
24.4.5
TDR1
送信データレジスタ 1
24.4.5
FCR11
FIFO 制御レジスタ 11
24.4.7
FCR01
FIFO 制御レジスタ 01
24.4.8
FBYTE11
FIFO1 バイトレジスタ 1
24.4.9
FBYTE21
FIFO2 バイトレジスタ 1
24.4.9
SCR2
シリアル制御レジスタ 2
24.4.1
SMR2
シリアルモードレジスタ 2
24.4.2
ESCR2
拡張通信制御レジスタ 2
24.4.4
BGR2
ボーレートジェネレータレジスタ 2
24.4.6
SSR2
シリアルステータスレジスタ 2
24.4.3
RDR2
受信データレジスタ 2
24.4.5
TDR2
送信データレジスタ 2
24.4.5
FCR12
FIFO 制御レジスタ 12
24.4.7
FCR02
FIFO 制御レジスタ 02
24.4.8
FBYTE12
FIFO1 バイトレジスタ 2
24.4.9
FBYTE22
FIFO2 バイトレジスタ 2
24.4.9
FUJITSU SEMICONDUCTOR LIMITED
471
MB91605A シリーズ
表 24.4-1 UART( 非同期シリアルインタフェース ) のレジスタ一覧 <Helvetica>(2 / 4)
チャネル
3
4
5
472
レジスタ略称
レジスタ名
SCR3
シリアル制御レジスタ 3
参照先
24.4.1
SMR3
シリアルモードレジスタ 3
24.4.2
ESCR3
拡張通信制御レジスタ 3
24.4.4
BGR3
ボーレートジェネレータレジスタ 3
24.4.6
SSR3
シリアルステータスレジスタ 3
24.4.3
RDR3
受信データレジスタ 3
24.4.5
TDR3
送信データレジスタ 3
24.4.5
FCR13
FIFO 制御レジスタ 13
24.4.7
FCR03
FIFO 制御レジスタ 03
24.4.8
FBYTE13
FIFO1 バイトレジスタ 3
24.4.9
FBYTE23
FIFO2 バイトレジスタ 3
24.4.9
SCR4
シリアル制御レジスタ 4
24.4.1
SMR4
シリアルモードレジスタ 4
24.4.2
ESCR4
拡張通信制御レジスタ 4
24.4.4
BGR4
ボーレートジェネレータレジスタ 4
24.4.6
SSR4
シリアルステータスレジスタ 4
24.4.3
RDR4
受信データレジスタ 4
24.4.5
TDR4
送信データレジスタ 4
24.4.5
FCR14
FIFO 制御レジスタ 14
24.4.7
FCR04
FIFO 制御レジスタ 04
24.4.8
FBYTE14
FIFO1 バイトレジスタ 4
24.4.9
FBYTE24
FIFO2 バイトレジスタ 4
24.4.9
SCR5
シリアル制御レジスタ 5
24.4.1
SMR5
シリアルモードレジスタ 5
24.4.2
ESCR5
拡張通信制御レジスタ 5
24.4.4
BGR5
ボーレートジェネレータレジスタ 5
24.4.6
SSR5
シリアルステータスレジスタ 5
24.4.3
RDR5
受信データレジスタ 5
24.4.5
TDR5
送信データレジスタ 5
24.4.5
FCR15
FIFO 制御レジスタ 15
24.4.7
FCR05
FIFO 制御レジスタ 05
24.4.8
FBYTE15
FIFO1 バイトレジスタ 5
24.4.9
FBYTE25
FIFO2 バイトレジスタ 5
24.4.9
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.4-1 UART( 非同期シリアルインタフェース ) のレジスタ一覧 <Helvetica>(3 / 4)
チャネル
6
7
8
9
CM71-10147-2
レジスタ略称
レジスタ名
SCR6
シリアル制御レジスタ 6
参照先
24.4.1
SMR6
シリアルモードレジスタ 6
24.4.2
ESCR6
拡張通信制御レジスタ 6
24.4.4
BGR6
ボーレートジェネレータレジスタ 6
24.4.6
SSR6
シリアルステータスレジスタ 6
24.4.3
RDR6
受信データレジスタ 6
24.4.5
TDR6
送信データレジスタ 6
24.4.5
FCR16
FIFO 制御レジスタ 16
24.4.7
FCR06
FIFO 制御レジスタ 06
24.4.8
FBYTE16
FIFO1 バイトレジスタ 6
24.4.9
FBYTE26
FIFO2 バイトレジスタ 6
24.4.9
SCR7
シリアル制御レジスタ 7
24.4.1
SMR7
シリアルモードレジスタ 7
24.4.2
ESCR7
拡張通信制御レジスタ 7
24.4.4
BGR7
ボーレートジェネレータレジスタ 7
24.4.6
SSR7
シリアルステータスレジスタ 7
24.4.3
RDR7
受信データレジスタ 7
24.4.5
TDR7
送信データレジスタ 7
24.4.5
FCR17
FIFO 制御レジスタ 17
24.4.7
FCR07
FIFO 制御レジスタ 07
24.4.8
FBYTE17
FIFO1 バイトレジスタ 7
24.4.9
FBYTE27
FIFO2 バイトレジスタ 7
24.4.9
SCR8
シリアル制御レジスタ 8
24.4.1
SMR8
シリアルモードレジスタ 8
24.4.2
ESCR8
拡張通信制御レジスタ 8
24.4.4
BGR8
ボーレートジェネレータレジスタ 8
24.4.6
SSR8
シリアルステータスレジスタ 8
24.4.3
RDR8
受信データレジスタ 8
24.4.5
TDR8
送信データレジスタ 8
24.4.5
SCR9
シリアル制御レジスタ 9
24.4.1
SMR9
シリアルモードレジスタ 9
24.4.2
ESCR9
拡張通信制御レジスタ 9
24.4.4
BGR9
ボーレートジェネレータレジスタ 9
24.4.6
SSR9
シリアルステータスレジスタ 9
24.4.3
RDR9
受信データレジスタ 9
24.4.5
TDR9
送信データレジスタ 9
24.4.5
FUJITSU SEMICONDUCTOR LIMITED
473
MB91605A シリーズ
表 24.4-1 UART( 非同期シリアルインタフェース ) のレジスタ一覧 <Helvetica>(4 / 4)
チャネル
10
11
474
レジスタ略称
レジスタ名
SCRA
シリアル制御レジスタ A
参照先
24.4.1
SMRA
シリアルモードレジスタ A
24.4.2
ESCRA
拡張通信制御レジスタ A
24.4.4
BGRA
ボーレートジェネレータレジスタ A
24.4.6
SSRA
シリアルステータスレジスタ A
24.4.3
RDRA
受信データレジスタ A
24.4.5
TDRA
送信データレジスタ A
24.4.5
SCRB
シリアル制御レジスタ B
24.4.1
SMRB
シリアルモードレジスタ B
24.4.2
ESCRB
拡張通信制御レジスタ B
24.4.4
BGRB
ボーレートジェネレータレジスタ B
24.4.6
SSRB
シリアルステータスレジスタ B
24.4.3
RDRB
受信データレジスタ B
24.4.5
TDRB
送信データレジスタ B
24.4.5
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.4-2 UART ( 非同期シリアルインタフェース ) ビット配置
bit15 bit14 bit13 bit12 bit11 bit10
SCR/SMR UPCL
SSR/
ESCR
REC
BGR1/
BGR0
bit8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RXE
TXE
MD2
MD1
MD0
−
SBL
BDS
SCKE
SOE
TBI
−
ESBL
INV
PEN
P
L2
L1
L0
D8
(AD)
D7
D6
D5
D4
D3
D2
D1
D0
B8
B7
B6
B5
B4
B3
B2
B1
B0
−
−
RIE
TIE
−
PE
FRE
ORE RDRF TDRE
RDR/TDR
TBIE
bit9
−
EXT
B14
B13
B12
−
B11
B10
B9
−
FCR1/
FCR0
−
−
−
−
FLSTE FRIIE FDRQ FTIE
FBYTE2/
FD15 FD14 FD13 FD12 FD11 FD10
FBYTE1
FD9
FSEL
−
FLST
FLD
FSET FCL2 FCL1
FE2
FE1
FD8
FD7
FD6
FD5
FD4
FD1
FD0
FD3
FD2
■ 動作モード
UART( 非同期シリアルインタフェース ) は , 2 つの異なるモードで動作します。シリア
ルモードレジスタ (SMR) の MD2, MD1, MD0 によって決定されます。
表 24.4-3 UART( 非同期シリアルインタフェース ) の動作モード
動作モード
MD2
MD1
MD0
種類
0
0
0
0
UART0 ( 非同期ノーマルモード )
1
0
0
1
UART1 ( 非同期マルチプロセッサモード )
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
475
MB91605A シリーズ
シリアル制御レジスタ (SCR)
24.4.1
シリアル制御レジスタ (SCR) は , 送受信の許可 / 禁止 , 送受信割込みの許可 / 禁止 ,
送信バスアイドル割込みの許可 / 禁止 , UART リセットをすることができます。
■ シリアル制御レジスタ (SCR)
図 24.4-1 にシリアル制御レジスタ (SCR) のビット構成を , 表 24.4-4 に各ビットの機能
を示します。
図 24.4-1 シリアル制御レジスタ (SCR) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
UPCL
-
-
RIE
R/W
-
-
R/W
bit8
TIE
TBIE
RXE
TXE
R/W
R/W
R/W
R/W
・・・・・・・・・・・・・・・・・・・・・ bit0
bit7
(SMR)
TXE
0
1
送信許可ビット
送信禁止
送信許可
RXE
0
1
受信許可ビット
受信禁止
受信許可
TBIE
0
1
初期値
0--00000B
送信バスアイドル割込み許可ビット
送信バスアイドル割込み禁止
送信バスアイドル割込み許可
TIE
0
1
送信割込み許可ビット
送信割込み禁止
送信割込み許可
RIE
0
1
受信割込み許可ビット
受信割込み禁止
受信割込み許可
未定義ビット
リード時,値は不定です。ライト時,影響しません。
UPCL
R/W
:リード/ライト可能
0
1
プログラマブルクリアビット
書込み時
読出し時
影響なし
常に"0"をリード
プログラマブルクリア
:初期値
476
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.4-4 シリアル制御レジスタ (SCR) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
機能
UART の内部状態を初期化するビットです。
"1" を設定した場合:
• UART を直接リセット ( ソフトウェアリセット ) します。ただし ,
レジスタの設定は維持されます。その際 , 送受信状態のものは直ち
に切断されます。
• ボーレートジェネレータは, BGR1/BGR0レジスタの設定値をリロー
bit15
UPCL:
プログラマブル
クリアビット
ドし , 再スタートします。
• すべての送受信割込み要因 (PE, FRE, ORE, RDRF, TDRE, TBI) は初
期化 (000011B) されます。
"0" を設定した場合:影響ありません。
リード時は , 常に "0" が読み出されます。
( 注意事項 ) 割込み禁止に設定した後に , プログラマブルクリアを
実行してください。
FIFO 使用時は , FIFO 禁止 (FE2, FE1=0) にしてからプ
ログラマブルクリアを実行してください。
bit14,
bit13
未定義ビット
bit12
RIE:
受信割込み
許可ビット
リードした場合 : 値は未定です。
ライトした場合 : 影響しません。
• CPU への受信割込み要求出力を許可 / 禁止するビットです。
• RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , または
エラーフラグビット (PE, ORE, FRE) のいずれかが "1" の場合に受信
割込み要求を出力します。
bit11
bit10
TIE:
送信割込み
許可ビット
TBIE:
送信バス
アイドル割込み
許可ビット
• CPU への送信割込み要求出力を許可 / 禁止するビットです。
• TIE ビットと TDRE ビットが "1" の場合 , 送信割込み要求を出力し
ます。
• CPU への送信バスアイドル割込み要求出力を許可 / 禁止するビッ
トです。
• TBIE ビットと TBI ビットが "1" のとき , 送信バスアイドル割込み
要求を出力します。
UART の受信動作を許可 / 禁止します。
• "0" に設定した場合:受信動作が禁止されます。
• "1" に設定した場合:受信動作が許可されます。
bit9
RXE:
受信許可ビット
CM71-10147-2
( 注意事項 )
受信動作許可 (RXE=1) にしても , スタートビットの立
下りエッジ (NRZ フォーマット (INV=0) の場合 ) が入
力されないと受信動作を開始しません ( 反転 NRZ
フォーマット (INV=1) の場合は , 立上りエッジが入力
されるまで受信動作を開始しません )。
受信中に受信動作を禁止 (RXE=0) した場合には , 直ち
に受信動作を停止します。
FUJITSU SEMICONDUCTOR LIMITED
477
MB91605A シリーズ
表 24.4-4 シリアル制御レジスタ (SCR) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
機能
UART の送信動作を許可 / 禁止します。
• "0" に設定した場合:送信動作が禁止されます。
bit8
TXE:
送信許可ビット
• "1" に設定した場合:送信動作が許可されます。
( 注意事項 )
478
送信中に送信動作を禁止 (TXE=0) した場合には , 直ち
に送信動作を停止します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
シリアルモードレジスタ (SMR)
24.4.2
シリアルモードレジスタ (SMR) は , 動作モードの設定 , 転送方向 , データ長 , ストッ
プビット長の選択 , およびシリアルデータとシリアルクロックの端子への出力許可 /
禁止の設定を行います。
■ シリアルモードレジスタ (SMR)
図 24.4-2 にシリアルモードレジスタ (SMR) のビット構成を , 表 24.4-5 に各ビットの機
能を示します。
図 24.4-2 シリアルモードレジスタ (SMR) のビット構成
bit15 ・・・・・・・・・・・・・・・・・・・ bit8
bit7
bit6
bit5
bit4
bit3
MD2 MD1 MD0 予約 SBL
(SCR)
bit2
bit1
bit0
初期値
BDS SCKE SOE 00000000B
R/W R/W R/W R/W R/W R/W R/W R/W
SOE
0
1
シリアルデータ出力許可ビット
SOUT出力禁止
SOUT出力許可
SCKE
シリアルクロック出力許可ビット
SCK出力禁止
または
SCK入力許可
SCK出力許可
0
1
BDS
0
1
SBL
0
1
0
1
転送方向選択ビット
LSBファースト(最下位ビットから転送)
MSBファースト(最上位ビットから転送)
ストップビット長選択ビット
1ビット
ESCR:ESBL=0
2ビット
ESCR:ESBL=0
ESCR:ESBL=1
3ビット
4ビット
ESCR:ESBL=1
予約ビット
必ず"0"を設定してください。
MD2 MD1 MD0
動作モード設定ビット
0
0
0
動作モード0(非同期ノーマルモード)
0
0
1
動作モード1(非同期マルチプロセッサモード)
0
1
0
動作モード2(クロック同期モード)
1
0
0
動作モード4(I2Cモード)
R/W
:リード/ライト可能
:初期値
CM71-10147-2
(注意事項) 本章では動作モード0,動作モード1のレジスタおよび動作に
ついて説明します
FUJITSU SEMICONDUCTOR LIMITED
479
MB91605A シリーズ
表 24.4-5 シリアルモードレジスタ (SMR) の各ビットの機能説明
ビット名
機能
非同期シリアルインタフェースの動作モードを設定します。
"000B": 動作モード 0( 非同期ノーマルモード ) に設定されます。
"001B": 動作モード 1 ( 非同期マルチプロセッサモード ) に設定され
ます。
"010B": 動作モード 2( クロック同期モード ) に設定されます。
bit7
∼
bit5
MD2, MD1,
MD0:
動作モード
設定ビット
bit4
予約ビット
bit3
SBL:
ストップ
ビット長選択
ビット
"100B": 動作モード 4(I2C モード ) に設定されます。
本章では動作モード 0( 非同期ノーマルモード ), 動作モード 1( 非同期
マルチプロセッサモード ) のレジスタまたは動作について説明しま
す。
( 注意事項 ) 上記の設定以外は禁止です。
動作モードを切り換える場合は , プログラマブルクリア
実行 (SCR:UPCL=1) 後 , 動作モードを切り換えてくださ
い。動作モード設定後 , 各レジスタを設定してくださ
い。
必ず "0" を設定してください。
ストップビット ( 送信データのフレームエンドマーク ) のビット長を
設定します。
SBL=0, ESCR:ESBL=0 に設定した場合:ストップビットは 1 ビットに
設定されます。
SBL=1, ESCR:ESBL=0 に設定した場合:ストップビットは 2 ビットに
設定されます。
SBL=0, ESCR:ESBL=1 に設定した場合:ストップビットは 3 ビットに
設定されます。
SBL=1, ESCR:ESBL=1 に設定した場合:ストップビットは 4 ビットに
設定されます。
( 注意事項 )
• 受信時は , 常にストップビットの 1 ビット目だけを検出します。
• 本ビットは送信が禁止 (TXE=0) のときに設定してください。
BDS:
転送方向選択
ビット
転送シリアルデータを最下位ビット側から先に転送するか (LSB ファー
スト , BDS=0) 最上位ビット側から先に転送するか (MSB ファースト ,
BDS=1) を選択するビットです。
( 注意事項 ) 本ビットは , 送受信が禁止 (TXE=RXE=0) のときに設定
してください。
bit1
SCKE:
シリアル
クロック出力
許可ビット
シリアルクロックの入出力ポートを制御するビットです。
"0" に設定した場合:
SCK"H" 出力 , または SCK 入力許可となります。SCK 入力として
使う場合は汎用入出力ポートを入力ポートに設定してください。
また , 外部クロック選択ビットによって外部クロックを選択
(BGR:EXT=1) してください。
"1" に設定した場合:SCK 出力許可となります。
bit0
SOE:
シリアル
データ出力
許可ビット
シリアルデータの出力を許可 / 禁止するビットです。
"0" に設定した場合:出力禁止です。
"1" に設定した場合:SOUT 出力許可となります。
bit2
480
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
<注意事項>
動作モードを変更すると , ほかのレジスタは初期化されますので動作モードは最初に設定
してください。ただし , 16 ビット書込みで SCR と SMR を同時に書き込んだとき , SCR
には書き込んだ内容が反映されます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
481
MB91605A シリーズ
シリアルステータスレジスタ (SSR)
24.4.3
シリアルステータスレジスタ (SSR) は , 送受信の状態の確認 , 受信エラーフラグの
確認 , また , 受信エラーフラグをクリアします。
■ シリアルステータスレジスタ (SSR)
図 24.4-3 にシリアルステータスレジスタ (SSR) のビット構成を , 表 24.4-6 に各ビット
の機能を示します。
図 24.4-3 シリアルステータスレジスタ (SSR) のビット構成
bit15
bit14
bit13
REC
-
PE
bit12
FRE
R/W
-
R
R
bit11
bit10
bit9
bit8
・・・・・・・・・・・・・・・・・・・・・ bit0
bit7
R
R
R
初期値
(ESCR)
ORE RDRF TDRE TBI
0-000011B
R
TBI
0
1
送信バスアイドルフラグビット
送信中
送信動作なし
TDRE
0
1
送信データエンプティフラグビット
送信データレジスタTDR にデータが存在する
送信データレジスタTDRがエンプティ
RDRF
受信データフルフラグビット
受信データレジスタRDR がエンプティ
受信データレジスタRDR にデータが存在する
0
1
ORE
0
1
オーバランエラーフラグビット
オーバランエラーなし
オーバランエラーあり
FRE
0
1
フレーミングエラーフラグビット
フレーミングエラーなし
フレーミングエラーあり
PE
0
1
パリティエラーフラグビット
パリティエラーなし
パリティエラーあり
未定義ビット
リード時,値は不定です。ライト時,影響しません。
REC
0
R/W
:リード/ライト可能
R
:リードオンリ
1
受信エラーフラグクリアビット
書込み時
読出し時
影響なし
常に"0"をリード
受信エラーフラグ
(PE,FRE,ORE)のクリア
:初期値
482
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.4-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
bit15
REC:
受信エラー
フラグクリア
ビット
機能
シリアルステータスレジスタ (SSR) の PE, FRE, ORE フラグをクリ
アするビットです。
• "1" 書込みで , エラーフラグがクリアされます。
• "0" 書込みは , 影響しません。
リードした場合 , 常に "0" が読み出されます。
bit14
未定義ビット
リードした場合 : 値は不定です。
ライトした場合 : 影響しません。
• ESCR:PEN=1 で受信時にパリティエラーが発生すると "1" にセッ
トされ , シリアルステータスレジスタ (SSR) の REC ビットに "1"
を書き込むとクリアされます。
bit13
PE:
パリティエラー
フラグビット
( 動作モード 0
のみ機能 )
• PE ビットと SCR:RIE ビットが "1" の場合 , 受信割込み要求を出
力します。
• 本フラグがセットされた場合は , 受信データレジスタ (RDR) の
データは無効です。
• 受信 FIFO 使用時に本フラグがセットされた場合は , 受信 FIFO の
許可ビットがクリアされ , 受信データは受信 FIFO には格納され
ません。
• 受信時にフレーミングエラーが発生すると "1" にセットされ , シ
リアルステータスレジスタ (SSR) の REC ビットに "1" を書き込
むとクリアされます。
bit12
FRE:
フレーミング
エラーフラグ
ビット
• FRE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力し
ます。
• 本フラグがセットされた場合は , 受信データレジスタ (RDR) の
データは無効です。
• 受信 FIFO 使用時に本フラグがセットされた場合は , 受信 FIFO の
許可ビットがクリアされ , 受信データは受信 FIFO には格納され
ません。
• 受信時にオーバランが発生すると "1" にセットされ , シリアルス
テータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリ
アされます。
bit11
ORE:
オーバラン
エラーフラグ
ビット
• ORE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力し
ます。
• 本フラグがセットされた場合は , 受信データレジスタ (RDR) の
データは無効です。
• 受信 FIFO 使用時に本フラグがセットされた場合は , 受信 FIFO の
許可ビットがクリアされ , 受信データは受信 FIFO には格納され
ません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
483
MB91605A シリーズ
表 24.4-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
機能
• 受信データレジスタ (RDR) の状態を示すフラグです。
• RDR に受信データがロードされると "1" にセットされ , 受信デー
タレジスタ (RDR) を読み出すと "0" にクリアされます。
• RDRF ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力
します。
• 受信 FIFO 使用時は , 受信 FIFO に所定のデータ数を受信したら
bit10
RDRF:
受信データ
フルフラグ
ビット
RDRF が "1" にセットされます。
• 受信 FIFO 使用時に , 受信 FIFO アイドル検出許可ビット (FCR1:FRIIE)
が "1" で , 受信 FIFO に所定のデータ数を受信せずに受信 FIFO に
データが残っていて受信アイドル状態がボーレートクロックで8
クロック以上続いた場合 , RDRF が "1" にセットされます。8 ク
ロックカウント中 , RDR を読み出すとそのカウンタは "0" にリ
セットされ , 再度 8 クロックをカウントします。
• 受信 FIFO 使用時は , 受信 FIFO がエンプティになると "0" にクリ
アされます。
• 送信データレジスタ (TDR) の状態を示すフラグです。
• TDR に送信データを書き込むと "0" となり , TDR に有効なデー
タが存在していることを示します。データが送信シフトレジスタ
にロードされて送信が開始されると "1" になり , TDR に有効な
bit9
TDRE:
送信データ
エンプティ
フラグビット
データが存在していないことを示します。
• TDRE ビットと TIE ビットが "1" の場合 , 送信割込み要求を出力
します。
• シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットする
と , TDRE ビットは "1" になります。
• 送信 FIFO 使用時の TDRE ビットのセット / リセットタイミング
は , 「24.5.4 送信 FIFO 使用時の割込み発生とフラグセットの タ
イミング」を参照してください。
• UART が送信動作をしていないことを示すビットです。
• 送信データレジスタ (TDR) へ送信データを書き込んだ場合に本
ビットは "0" になります。
bit8
TBI:
送信バス
アイドルフラグ
ビット
• 送信データレジスタがエンプティ (TDRE=1) で , 送信動作をして
いない場合に本ビットは "1" になります。
• シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットする
と TBI ビットは "1" になります。
• 本ビットが "1" で , 送信バスアイドル割込みが許可 (SCR:TBIE=1)
されていると送信割込み要求を出力します。
484
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
拡張通信制御レジスタ (ESCR)
24.4.4
拡張通信制御レジスタ (ESCR) は , 送受信データ長の設定 , ストップビット長の選択 ,
パリティビットの許可 / 禁止 , パリティビットの選択 , シリアルデータフォーマットの
反転の設定ができます。
■ 拡張通信制御レジスタ (ESCR) のビット構成
図 24.4-4 に拡張通信制御レジスタ (ESCR) のビット構成を , 表 24.4-7 に各ビットの機
能を示します。
図 24.4-4 拡張通信制御レジスタ (ESCR) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・・・ bit8
(SSR)
bit7
-
-
L2
0
0
0
0
1
:リード/ライト可能
:初期値
bit5
R/W
L1
0
0
1
1
0
R/W
bit4
PEN
R/W
bit3
bit2
bit1
bit0
P
L2
L1
L0
R/W
R/W
R/W
R/W
パリティ選択ビット
偶数パリティ
奇数パリティ
PEN
0
1
パリティ許可ビット
パリティ禁止
パリティ許可
ESBL
0
0
1
1
初期値
-0000000B
データ長選択ビット
8ビット長
5ビット長
6ビット長
7ビット長
9ビット長
L0
0
1
0
1
0
P
0
1
INV
0
1
R/W
bit6
ESBL INV
反転シリアルデータフォーマットビット
NRZフォーマット
反転NRZフォーマット
SMR:SBL=0
SMR:SBL=1
SMR:SBL=0
SMR:SBL=1
拡張ストップビット長選択ビット
1ビット
2ビット
3ビット
4ビット
未定義ビット
リード時,値は不定です。ライト時,影響しません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
485
MB91605A シリーズ
表 24.4-7 拡張通信制御レジスタ (ESCR) の各ビットの機能説明
ビット名
bit7
bit6
機能
リードした場合:値は不定です。
ライトした場合:影響しません。
未定義ビット
ESBL:
拡張ストップビット
長選択ビット
ストップビット ( 送信データのフレームエンドマーク ) のビット
長を設定します。
SMR:SBL=0, ESBL=0 に設定した場合:
ストップビットは 1 ビットに設定されます。
SMR:SBL=1, ESBL=0 に設定した場合:
ストップビットは 2 ビットに設定されます。
SMR:SBL=0, ESBL=1 に設定した場合:
ストップビットは 3 ビットに設定されます。
SMR:SBL=1, ESBL=1 に設定した場合:
ストップビットは 4 ビットに設定されます。
( 注意事項 )
• 受信時は , 常にストップビットの 1 ビット目だけを検出します。
• 本ビットは送信が禁止 (TXE=0) のときに設定してください。
bit5
bit4
bit3
INV:
反転シリアルデータ
フォーマットビット
PEN:
パリティ許可ビット
( 動作モード 0 のみ
機能 )
P:
パリティ選択ビット
( 動作モード 0 のみ
機能 )
シリアルデータフォーマットを NRZ フォーマットまたは反転
NRZ フォーマットを選択します。
パリティビットの付加 ( 送信時 ) と検出 ( 受信時 ) を行うかどう
かを設定します。
• "0" に設定した場合:パリティビットは付加されません。
• "1" に設定した場合:パリティビットは付加されます。
( 注意事項 )
動作モード 1 のときは , 本ビットは内部で "0" に固定されます。
パリティあり (ESCR:PEN=1) に設定した場合に , 奇数パリティ
"1" か偶数パリティ "0" のいずれかに設定します。
• "0" に設定した場合:偶数パリティに設定されます。
• "1" に設定した場合:奇数パリティに設定されます。
送受信データのデータ長を指定します。
• "000B" に設定した場合:データ長は , 8 ビットに設定されます。
• "001B" に設定した場合:データ長は , 5 ビットに設定されます。
bit2
∼
bit0
L2, L1, L0:
データ長選択ビット
• "010B" に設定した場合:データ長は , 6 ビットに設定されます。
• "011B" に設定した場合:データ長は , 7 ビットに設定されます。
• "100B" に設定した場合:データ長は , 9 ビットに設定されます。
( 注意事項 )
486
上記以外の設定は禁止です。
動作モード 1 では , データ長を 7, 8 ビットに設定し
てください。その他の設定は禁止です。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
受信データレジスタ / 送信データレジスタ
(RDR/TDR)
24.4.5
受信データと送信データレジスタは同一アドレスに配置されています。読み出した
場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレジスタとし
て機能します。
FIFO 動作許可の場合 , RDR/TDR アドレスは FIFO 読出し , 書込みアドレスとなります。
■ 受信データレジスタ (RDR)
図 24.4-5 にシリアル受信レジスタ (RDR) のビット構成を示します。
図 24.4-5 受信データレジスタ (RDR) のビット構成
bit15.................bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D8
D7
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
R
R
初期値
00000000B
R:リードオンリ
受信データレジスタ (RDR) は , シリアルデータ受信用の 9 ビットのデータバッファレ
ジスタです。
• シリアル入力端子 (SIN 端子 ) に送られてきたシリアルデータ信号がシフトレジスタ
で変換されて , 受信データレジスタ (RDR) に格納されます。
• データ長に応じ , 以下のように上位ビットに "0" が入ります。
データ長
D8
D7
D6
D5
D4
D3
D2
D1
D0
9 ビット
X
X
X
X
X
X
X
X
X
8 ビット
0
X
X
X
X
X
X
X
X
7 ビット
0
0
X
X
X
X
X
X
X
6 ビット
0
0
0
X
X
X
X
X
X
5 ビット
0
0
0
0
X
X
X
X
X
(X は受信データビット )
• 受信データが受信データレジスタ (RDR) に格納されると , 受信データフルフラグ
ビット (SSR:RDRF) が "1" にセットされます。受信割込みが許可されている場合
(SSR:RIE=1) , 受信割込み要求が発生します。
• 受信データレジスタ (RDR) は , 受信データフルフラグビット (SSR:RDRF) が "1" の
状態で読み出してください。受信データフルフラグビット (SSR:RDRF) は , 受信デー
タレジスタ (RDR) を読み出すと自動的に "0" にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
487
MB91605A シリーズ
• 受信エラーが発生 (SSR:PE, ORE, FRE のいずれかが "1") した場合 , 受信データレ
ジスタ (RDR) のデータは無効となります。
• 動作モード 1 ( マルチプロセッサモード ) では , 7 ビット , 8 ビット長の動作となり ,
受信した AD ビットは , D8 ビットに格納されます。
• 9 ビット長転送 , および動作モード 1 の場合 , RDR の読出しは 16 ビットアクセスで
行います。
<注意事項>
• 受信 FIFO 使用時は , 受信 FIFO に所定のデータ数を受信したら RDRF が "1" にセット
されます。
• 受信 FIFO 使用時は , 受信 FIFO がエンプティになると RDRF が "0" にクリアされます。
• 受信 FIFO 使用時に , 受信エラーが発生 (SSR:PE, ORE, FRE のいずれかが "1") した
場合 , 受信 FIFO の許可ビットはクリアされ , 受信データは受信 FIFO には格納されま
せん。
488
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 送信データレジスタ (TDR)
図 24.4-6 に送信データレジスタのビット構成を示します。
図 24.4-6 送信データレジスタ (TDR) のビット構成
bit15.................bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D8
D7
D6
D5
D4
D3
D2
D1
D0
W
W
W
W
W
W
W
W
W
初期値
11111111B
W:ライトオンリ
送信データレジスタ (TDR) は , シリアルデータ送信用の 9 ビットデータバッファレジ
スタです。
• 送信動作が許可されている場合に (SCR:TXE=1) , 送信するデータを送信データレ
ジスタ (TDR) に書き込むと送信データが送信用シフトレジスタに転送され , シリア
ルデータに変換されてシリアルデータ出力端子 (SOUT 端子 ) から送出されます。
• データ長に応じ , 以下のように上位ビットから順に無効データとなります。
データ長
D8
D7
D6
D5
D4
D3
D2
D1
D0
9 ビット
X X
X
X
X
X
X
X
X
8 ビット
無効
X
X
X
X
X
X
X
X
7 ビット
無効
無効
X
X
X
X
X
X
X
6 ビット
無効
無効
無効
X
X
X
X
X
X
5 ビット
無効
無効
無効
無効
X
X
X
X
X
(X は送信データビット )
• 送信データエンプティフラグ (SSR:TDRE) は , 送信データが送信データレジスタ
(TDR) に書き込まれると "0" クリアされます。
• 送信データエンプティフラグ (SSR:TDRE) は , 送信データが送信用シフトレジスタ
へ転送されて送信が開始されると , 送信 FIFO が禁止または送信 FIFO がエンプティ
の場合 , "1" にセットされます。
• 送信データエンプティフラグ (SSR:TDRE) が "1" のとき , 送信データを書き込むこ
とができます。送信割込みが許可されている場合には送信割込みが発生します。送
信データの書込みは , 送信割込みの発生によるか , 送信データエンプティフラグ
(SSR:TDRE) が "1" の状態で行ってください。
• 送信データエンプティフラグ (SSR:TDRE) が "0" で送信 FIFO が禁止または送信
FIFO がフルのときは , 送信データを書き込むことはできません。
• 動作モード 1 ( マルチプロセッサモード ) では , 7 ビット , 8 ビット長の動作となり ,
AD ビットの送信は , D8 ビットへの書込みにより行います。
• 9 ビット長転送 , および動作モード 1 の場合 , TDR への書込みは 16 ビットアクセス
で行います。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
489
MB91605A シリーズ
<注意事項>
• 送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読出し専用の
レジスタです。送受信レジスタは同一アドレスに配置されているため , 書込み値と読出
し値が異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW)
系命令は使用できません。
• 送信 FIFO 使用時の送信データエンプティフラグ (SSR:TDRE) のセットタイミングは ,
「24.5.4 送信 FIFO 使用時の割込み発生とフラグセットの タイミング」を参照してくだ
さい。
490
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)
24.4.6
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) は , シリアルクロックの分周
比を設定します。また , リロードカウンタのクロックソースとして外部クロックを
選択できます。
■ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成
図 24.4-7 にボーレートジェネレータレジスタ1, 0 (BGR1, BGR0)のビット構成を示しま
す。
図 24.4-7 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成
bit15
bit14
bit13
bit12
R/W
bit11
bit10
bit9
bit8
bit7
bit6
bit5
bit4
(BGR1)
EXT
R/W
R/W
R/W
R/W :リード/ライト可能
R/W
bit3
bit2
bit1
(BGR0)
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
bit0
00000000B
R/W
R/W
R/W
00000000B
ボーレートジェネレータレジスタ0
BGR0
ライト
リード
リロードカウンタbit0~bit7に書き込む
BGR0の設定値の読み出す
BGR1
ライト
リード
ボーレートジェネレータレジスタ1
リロードカウンタbit8~bit14に書き込む
BGR1の設定値の読み出す
EXT
0
1
外部クロック選択ビット
内部クロック使用
外部クロック使用
• ボーレートジェネレータレジスタはシリアルクロックの分周比を設定します。
• BGR1 は上位ビット , BGR0 は下位ビットに対応し , カウントするリロード値の書込
み , BGR1/BGR0 の設定値の読出しが可能です。
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むとリ
ロードカウンタはカウントを開始します。
• bit15 の EXT ビットでリロードカウンタのクロックソースを内部クロックに使用す
るか , 外部クロックを使用するかを選択します。
EXT=0 に設定した場合 , 内部クロッ
クを選択します。EXT=1 に設定した場合 , 外部クロックを選択します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
491
MB91605A シリーズ
<注意事項>
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) への書込みは , 16 ビットアクセ
スで行ってください。
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) の設定値を変更した場合 , カウ
ンタ値が "0000H" になってから , 新しい設定値がリロードされます。したがって , 新し
い設定値を即有効にしたい場合は , BGR1/BGR0 の設定値を変更した後 , プログラマブ
ルクリア (UPCL) を実行してください。
• リロード値が偶数の場合 , 受信シリアルクロックの "H" 幅と "L" 幅は "L" 幅の方が周辺
クロック (PCLK) 1 サイクル分長くなります。奇数の場合 , シリアルクロックの "H" 幅
と "L" 幅は同じになります。
• BGR1/BGR0 へは , 4 以上の値を設定してください。ただし , ボーレートの誤差とリロー
ド値の設定によって正常にデータを受信できないことがあります。
• ボーレートジェネレータ動作中に外部クロックの設定 (EXT=1) に変更する場合 , ボー
レートジェネレータ 1, 0 (BGR1, BGR0) に "0" を書き込み , プログラムクリア (UPCL)
実行後 , 外部クロック (EXT=1) に設定してください。
492
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
FIFO 制御レジスタ 1(FCR1)
24.4.7
FIFO 制御レジスタ 1 (FCR1) は , 送受信 FIFO の選択 , 送信 FIFO 割込み許可の設定
および割込みフラグの制御を行います。
■ FIFO 制御レジスタ 1(FCR1) のビット構成
図 24.4-8 に FIFO 制御レジスタ 1 (FCR1) のビット構成を , 表 24.4-8 に各ビットの機能
を示します。
図 24.4-8 FIFO 制御レジスタ 1(FCR1) のビット構成
bit15
bit14
bit13
予約
予約
-
R/W
R/W
-
bit12
bit11
bit10
bit9
FLSTE FRIIE FDRQ FTIE
R/W
R/W
R/W
R/W
bit8
・・・・・・・・・・・・・・・・・
bit7
(FCR0)
FSEL
初期値
bit0
00-00100 B
R/W
FSEL
0
1
FIFO選択ビット
送信FIFO:FIFO1, 受信FIFO:FIFO2
送信FIFO:FIFO2, 受信FIFO:FIFO1
FTIE
0
1
送信FIFO割込み許可ビット
送信FIFO割込み禁止
送信FIFO割込み許可
FDRQ
送信FIFOデータ要求ビット
送信FIFOデータ要求なし
送信FIFOデータ要求あり
0
1
FRIIE
0
1
受信FIFOアイドル検出許可ビット
受信FIFOアイドル検出禁止
受信FIFOアイドル検出許可
FLSTE
0
1
再送データロスト検出許可ビット
データロスト検出禁止
データロスト検出許可
未定義ビット
リード時,値は不定です。ライト時,影響しません。
予約ビット
常に"0"を設定してください。
R/W
:リード/ライト可能
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
493
MB91605A シリーズ
表 24.4-8 FIFO 制御レジスタ 1(FCR1) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
機能
bit15,
bit14
予約ビット
本ビットには必ず "0" を設定してください。
bit13
未定義ビット
リードした場合:値は不定です。
ライトした場合:影響しません。
bit12
FLSTE:
再送データ
ロスト検出許可
ビット
FLST ビット検出を許可するビットです。
"0" に設定した場合:FLST ビット検出禁止
"1" に設定した場合:FLST ビット検出許可
( 注意事項 ) 本ビットに "1" を設定する場合 , FSET ビットに "1" を
設定してから本ビットに "1" を設定してください。
bit11
FRIIE:
受信 FIFO
アイドル
検出許可ビット
受信 FIFO に有効なデータが存在した状態でボーレートクロックで 8
クロック以上の受信アイドル状態を検出するかどうかを設定する
ビットです。受信割込みが許可 (SCR:RIE=1) されているときに受信
アイドル状態が検出されると受信割込みが発生します。
"0" に設定した場合:受信アイドル状態検出禁止
"1" に設定した場合:受信アイドル状態検出許可
bit10
bit9
494
FDRQ:
送信 FIFO
データ要求
ビット
FTIE:
送信 FIFO
割込み許可
ビット
送信 FIFO のデータ要求ビットです。
本ビットが "1" のとき , 送信データを要求していることを示します。
このとき , 送信 FIFO 割込みが許可 (FTIE=1) されていると , FIFO 送
信割込み要求を出力します。
FDRQ セット条件
FBYTE1/FBYTE2( 送信用 )=0 ( 送信 FIFO がエンプティ )
FDRQ リセット条件
• 本ビットへの "0" 書込み
• 送信 FIFO がフルになった場合
( 注意事項 )
送信 FIFO 許可のときに "0" 書込みは有効です。
FBYTE1/FBYTE2( 送信用 )=0 のときに本ビットへの
"0" 書込みは禁止です。
本ビットに "1" を設定した場合 , 動作に影響を与えま
せん。
リードモディファイライト (RMW) 系命令時には , "1"
が読み出されます。
送信 FIFO の割込み許可ビットです。本ビットに "1" を設定すると
FDRQ ビットが "1" のときに割込みが発生します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.4-8 FIFO 制御レジスタ 1(FCR1) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
bit8
FSEL:
FIFO 選択
ビット
CM71-10147-2
機能
送受信 FIFO を選択するビットです。
"0" に設定した場合:送信 FIFO:FIFO1, 受信 FIFO:FIFO2 に割り当
てられます。
"1" に設定した場合:送信 FIFO:FIFO2, 受信 FIFO:FIFO1 に割り当
てられます。
( 注意事項 ) 本ビットは , FIFO リセット (FCL2, FCL1=1) ではクリ
アされません。
本ビットを変更する場合は , FIFO 動作禁止 (FCR0 :
FE2, FE1=0) にしてから行ってください。
FUJITSU SEMICONDUCTOR LIMITED
495
MB91605A シリーズ
FIFO 制御レジスタ 0(FCR0)
24.4.8
FIFO 制御レジスタ 0(FCR0) は , FIFO 動作の許可 / 禁止 , FIFO リセット , リードポ
インタの保存 , 再送信設定を行います。
■ FIFO 制御レジスタ 0(FCR0) のビット構成
図 24.4-9 に FIFO 制御レジスタ 0 (FCR0) のビット構成を , 表 24.4-9 に各ビットの機能
を示します。
図 24.4-9 FIFO 制御レジスタ 0(FCR0) のビット構成
bit15
・・・・・・・・・・・・・・・・・
(FCR1)
bit8
bit7
bit6
-
(-)
R
bit1
R/W
R/W
R/W
R/W
R/W
FIFO2動作許可ビット
FIFO2動作禁止
FIFO2動作許可
0
1
FSET
0
1
:リードオンリ
bit2
FE2
0
1
FCL2
:リード/ライト可能
bit3
FIFO1動作許可ビット
FIFO1動作禁止
FIFO1動作許可
0
1
R
bit4
FE1
0
1
FCL1
R/W
bit5
FLST FLD FSET FCL2 FCL1 FE2
bit0
初期値
FE1 -0000000B
R/W
FIFO1リセットビット
書込み時
読出し時
影響なし
常に”0”をリード
FIFO1リセット
FIFO2リセットビット
書込み時
読出し時
影響なし
常に”0”をリード
FIFO2リセット
FIFOポインタ保存ビット
書込み時
読出し時
保存しない
常に”0”をリード
保存実行
FLD
0
1
FIFOポインタリロードビット
リロードしない
リロード実行
FLST
0
1
FIFO 再送データロストフラグビット
データロストなし
データロストあり
未定義ビット
リード時, 常に"0"をリード。ライト時, 常に"0"をライト
:初期値
496
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.4-9 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
bit7
bit6
未定義ビット
FLST:
FIFO 再送
データロスト
フラグビット
機能
リードした場合:常に "0" が読み出されます。
ライトした場合:常に "0" を書き込んでください。
送信 FIFO の再送データが失われたことを示すビットです。
FLST セット条件
FIFO 制御レジスタ 1(FCR1) の FLSTE ビットが "1" で送信 FIFO のラ
イトポインタと FSET ビットによって保存 したリードポインタが一
致しているときに FIFO へ書き込んだ ( 上書きした ) 場合
FLST リセット条件
• FIFO リセット (FCL への "1" 書込み )
• FSET ビットへの "1" 書込み
本ビットに "1" が設定されると FSET ビットで保存したリードポイン
タが示すデータを上書きしてしまい , エラーが発生しても FLD ビッ
トによって再送の設定ができません。本ビットに "1" が設定された状
態で再送を行う場合には FIFO リセットを実施し , 再度 FIFO にデー
タを書き込んでください。
bit5
bit4
bit3
FLD:
FIFO ポインタ
リロード
ビット
送信 FIFO に FSET ビットによって保存したデータをリードポインタ
にリロードするビットです。本ビットは通信エラーなどが発生し再送
するときに使用します。
再送設定が完了した場合 , 本ビットは "0" になります。
( 注意事項 ) 本ビットが "1" にセットされている間 , リードポインタ
へのリロード中なので FIFO リセット以外の書込みは行
わないでください。
FIFO 許可状態または送信中に本ビットに "1" を設定す
ることは禁止です。
TIE ビットと TBIE ビットは "0" にしてから本ビットに
"1" を書き込み , 送信 FIFO 許可後 , TIE ビットと TBIE
ビットを "1" にしてください。
FSET:
FIFO ポインタ
保存ビット
送信 FIFO のリードポインタを保存するビットです。
通信前にリードポインタを保存すると , 通信エラーなどが発生した場
合 , FLST ビットが "0" であれば再送可能となります。
"1" に設定した場合:現在のリードポインタの値を保存します。
"0" に設定した場合:影響しません。
( 注意事項 ) 送信バイト数 (FBYTE1/FBYTE2) が "0" を示していると
きに本ビットを "1" に設定してください。
FCL2:
FIFO2
リセット
ビット
FIFO2 をリセットするビットです。
本ビットを "1" に設定すると , FIFO2 の内部状態を初期化します。
FCR0:FLST ビットのみ初期化され , FCR1/FCR0 レジスタのほかの
ビットは保持されます。
( 注意事項 ) 送受信を禁止してから , FIFO2 リセットを実行してくだ
さい。
送信 FIFO 割込み許可ビットを "0" にしてから実行して
ください。
FBYTE2 レジスタの有効データ数は "0" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
497
MB91605A シリーズ
表 24.4-9 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
bit2
FCL1:
FIFO1
リセット
ビット
機能
FIFO1 をリセットするビットです。
本ビットを "1" に設定すると , FIFO1 の内部状態を初期化します。
FCR0:FLST ビットのみ初期化され , FCR1/FCR0 レジスタのほかの
ビットは保持されます。
( 注意事項 ) 送受信を禁止してから , FIFO1 リセットを実行してくだ
さい。
送信 FIFO 割込み許可ビットを "0" にしてから実行して
ください。
FBYTE1 レジスタの有効データ数は "0" になります。
FIFO2 の動作を許可 / 禁止するビットです。
• FIFO2 を使用する場合 , 本ビットに "1" を設定してください。
• FIFO2 を送信 FIFO に設定し (FCR1:FSEL=1) , 本ビットに "1" を書き
込んだときに FIFO2 にデータが存在し , UART が送信許可 (TXE=1)
のとき , 直ちに送信を開始します。このとき , TIE ビットと TBIE
bit1
FE2:
FIFO2
動作許可
ビット
ビットを "0" にしてから本ビットに "1" を書き込み , TIE ビットと
TBIE ビットを "1" にしてください。
• FSEL ビットによって受信 FIFO として選択された場合 , 受信エラー
が発生すると本ビットは "0" にクリアされ , 受信エラーがクリアさ
れない限り , 本ビットに "1" を設定することはできません。
• 送信 FIFO で使用する場合には送信バッファがエンプティ (TDRE=
1)のとき, 受信FIFOで使用する場合には受信バッファがエンプティ
(RDRF=0) のときに本ビットに "1" または "0" を設定してください。
• FIFO2 を禁止にしても FIFO2 の状態は保持されます。
FIFO1 の動作を許可 / 禁止するビットです。
• FIFO1 を使用する場合 , 本ビットに "1" を設定してください。
• FIFO1 を送信 FIFO に設定し (FCR1:FSEL=0), 本ビットに "1" を書き
込んだときに FIFO1 にデータが存在し , UART が送信許可 (TXE=1)
のとき , 直ちに送信を開始します。このとき , TIE ビットと TBIE
bit0
FE1:
FIFO1
動作許可
ビット
ビットを "0" にしてから本ビットに "1" を書き込み , TIE ビットと
TBIE ビットを "1" にしてください。
• FSEL ビットによって受信 FIFO として選択された場合 , 受信エラー
が発生すると本ビットは "0" にクリアされ , 受信エラーがクリアさ
れない限り , 本ビットに "1" を設定することはできません。
• 送信 FIFO で使用する場合には送信バッファがエンプティ (TDRE=
1)のとき, 受信FIFOで使用する場合には受信バッファがエンプティ
(RDRF=0) のときに本ビットに "1" または "0" を設定してください。
• FIFO1 を禁止にしても FIFO1 の状態は保持されます。
498
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
FIFO バイトレジスタ (FBYTE1/FBYTE2)
24.4.9
FIFO バイトレジスタ (FBYTE1/FBYTE2) は , FIFO の有効なデータ数を示します。ま
た , 受信 FIFO で所定のデータ数を受信したときに受信割込みを発生させるかを設定
できます。
■ FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成
図 24.4-10 に FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成を示します。
図 24.4-10 FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
bit7
bit6
bit5
(FBYTE2)
R/W
R/W
R/W
R/W
R/W
bit4
bit3
bit2
bit1
bit0
(FBYTE1)
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
R/W
R/W
R/W
FBYTE1
ライト
リード
FIFO1 データ数表示ビット
転送数を設定
有効なデータ数を読み出す
FBYTE2
ライト
リード
FIFO2 データ数表示ビット
転送数を設定
有効なデータ数を読み出す
00000000B
R/W : リード/ライト可能
リード(有効なデータ数)
送信時:FIFOに書き込まれ, 送信されていないデータ数
受信時:FIFOに受信されたデータ数
ライト(転送数)
送信時:00Hに設定
受信時:受信割込み発生のデータ数を設定
FBYTE レジスタは , FIFO に書込みまたは受信した有効なデータ数を示し , FCR1:FSEL
ビットの設定によって以下のようになります。
表 24.4-10 データ数表示
FSEL
FIFO 選択
データ数表示
0
FIFO2:受信 FIFO, FIFO1:送信 FIFO
FIFO2:FBYTE2, FIFO1:FBYTE1
1
FIFO2:送信 FIFO, FIFO1:受信 FIFO
FIFO2:FBYTE2, FIFO1:FBYTE1
• FBYTE1/FBYTE2 レジスタの転送数の初期値は "08H" です。
• 受信 FIFO の FBYTE1/FBYTE2 に受信割込みフラグを発生させるデータ数を設定し
ます。その設定された転送数と FBYTE1/FBYTE2 レジスタのデータ数表示が一致す
ると割込みフラグ (SSR:RDRF) が "1" にセットされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
499
MB91605A シリーズ
• 受信 FIFO アイドル検出許可ビット (FRIIE) が "1" で受信 FIFO に存在するデータ数
が転送数に達しない場合 , 受信アイドル状態がボーレートクロックで 8 クロック以
上続くと割込みフラグ (RDRF) が "1" にセットされます。8 クロックカウント中 ,
RDR を読み出すとそのカウンタは "0" にリセットされ , 再度 8 クロックをカウント
します。受信 FIFO が禁止されるとそのカウンタは "0" にリセットされます。受信
FIFO にデータが残っている状態で受信 FIFO を許可すると再度 , カウントを開始し
ます。
<注意事項>
• 送信 FIFO の FBYTE1/FBYTE2 レジスタには "00H" を設定してください。
• 受信 FIFO の FBYTE1/FBYTE2 は "1" 以上のデータを設定してください。
• 受信を禁止してから本レジスタを変更してください。
• 本レジスタはリードモディファイライト (RMW) 系命令を使用することはできません。
• FIFO 容量を超える設定は禁止です。
500
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.5
UART の割込み
UART には , 送受信割込みがあります。次に示す要因で割込み要求を発生させること
ができます。
• 受信データが受信データレジスタ (RDR) にセットされた場合 , または受信エラー
が発生した場合
• 送信データが送信データレジスタ (TDR) から送信用シフトレジスタに転送され ,
送信が開始された場合
• 送信バスアイドル ( 送信動作なし )
• 送信 FIFO データ要求
■ UART の割込み
UART の割込み制御ビットと割込み要因は表 24.5-1 のようになっています。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
501
MB91605A シリーズ
表 24.5-1 UART の割込み制御ビットと割込み要因
割込み
の種類
割込み
動作モード
要求
フラグ
フラグ レジスタ 0
1
ビット
割込み要因
割込み要因
許可ビット
1 バイト受信
割込み要求
フラグのクリア
受信データ (RDR) の読出し
FBYTE1/
FBYTE2 設定値
分受信
FRIIE ビットが
"1" で受信 FIFO
に有効なデータ
が存在した状態
でボーレートク SCR:RIE
ロックで 8 ク
ロック以上の受
信アイドル状態
検出
RDRF
SSR
○
○
ORE
SSR
○
○
オーバラン
エラー
FRE
SSR
○
○
フレーミング
エラー
PE
SSR
○
×
パリティエラー
受信
TDRE
SSR
○
○
受信 FIFO がエンプティにな
るまでの受信データ (RDR)
の読出し
受信エラーフラグクリアビッ
ト (SSR:REC) への "1" 書込み
送信レジスタが SCR:TIE
エンプティ
送信データ (TDR) への書込
み , または送信 FIFO 動作許
可ビットが "0" で送信 FIFO
に有効なデータが存在してい
るときに送信 FIFO 動作許可
ビットへの "1" 書込み ( 送信
再送 ) *
送信
TBI
SSR
○
○
送信動作なし
SCR:TBIE
送信データ (TDR) への書込
み , または送信 FIFO 動作許
可ビットが "0" で送信 FIFO
に有効なデータが存在してい
るときに送信 FIFO 動作許可
ビットへの "1" 書込み ( 送信
再送 ) *
FDRQ
FCR1
○
○
送信 FIFO が
エンプティ
FIFO 送信データ要求ビット
FCR1:FTIE (FCR1:FDRQ) への "0" 書込
みまたは送信 FIFO がフル
* : TDRE ビットが "0" になってから TIE ビットを "1" にしてください。
502
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
受信割込み発生とフラグセットのタイミング
24.5.1
受信時の割込みとしては , 受信完了 (SSR:RDRF) および受信エラーの発生 (SSR:
PE, ORE, FRE) があります。
■ 受信割込み発生とフラグセットのタイミング
最初のストップビットが検出されることにより , 受信データが受信データレジスタ
(RDR) に格納されます。受信が完了したとき (SSR:RDRF=1) または受信エラーが発生
(SSR:PE, ORE, FRE=1) すると各フラグがセットされます。そのとき , 受信割込みが許
可 (SSR:RIE=1) されていると受信割込みが発生します。
<注意事項>
受信エラーが発生した場合は , 受信データレジスタ (RDR) のデータは無効となります。
図 24.5-1 RDRF( 受信データフル ) フラグビットのセットタイミング
受信データ
ST
D0
D1
D5
D2
D6
D7
SP
ST
RDRF
受信割込み発生
図 24.5-2 FRE ( フレーミングエラー ) フラグビットのセットタイミング
受信データ
ST
D0
D1
D5
D2
D6
D7
SP
ST
RDRF
FRE
受信割込み発生
(注意事項) ・最初のストップビットが”L”レベルのとき, フレーミングエラーが発生します。
・フレーミングエラーが発生しても, RDRFは”1”にセットされデータは受信されますが, 受信データは無効です。
図 24.5-3 ORE ( オーバランエラー ) フラグビットのセットタイミング
受信データ
ST D0
D1
D2 D3
D4
D5
D6 D7
SP
ST
D0
D1 D2
D3
D4
D5
D6 D7
SP
RDRF
ORE
(注意事項) 受信データが読み出される前に(RDRF=1), 次のデータが転送されるとオーバランエラーが発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
503
MB91605A シリーズ
24.5.2
受信 FIFO 使用時の割込み発生とフラグセットの
タイミング
受信 FIFO 使用時の割込みは , FBYTE レジスタ (FBYTE1/FBYTE2) の設定値分受信
すると発生します。
■ 受信 FIFO 使用時の受信割込み発生とフラグセットのタイミング
受信 FIFO 使用時の割込み発生は , FBYTE1/FBYTE2 レジスタの設定値によって決定さ
れます。
• FBYTE1/FBYTE2 レジスタの転送数設定分のデータを受信するとシリアルステータ
スレジスタの受信データフルフラグ (SSR:RDRF) が "1" にセットされます。このと
き , 受信割込みが許可 (SCR:RIE) されていると受信割込みを発生します。
• 受信 FIFO アイドル検出許可ビット (FRIIE) が "1" で受信 FIFO に存在するデータ数
が転送数に達しない場合 , 受信アイドル状態がボーレートクロックで 8 クロック以
上続くと割込みフラグ (RDRF) が "1" にセットされます。8 クロックカウント中 ,
RDR を読み出すとそのカウンタは "0" にリセットされ , 再度 8 クロックをカウント
します。受信 FIFO が禁止されるとそのカウンタは "0" にリセットされます。受信
FIFO にデータが残っている状態で受信 FIFO を許可すると再度 , カウントを開始し
ます。
• 受信 FIFO がエンプティになるまで受信データ (RDR) を読み出すと , 受信データフ
ルフラグ (SSR:RDRF) はクリアされます。
• 受信有効データ数表示が FIFO 容量を示した状態で , 次のデータを受信するとオーバ
ランエラー (SSR:ORE=1) が発生します。
図 24.5-4 受信 FIFO 使用時の受信割込み発生タイミング
受信データ
ST 1バイト目 SP
ST 2バイト目 SP
ST 3バイト目 SP
ST 5バイト目 SP
3
FBYTE設定(転送数)
FBYTE読出し(有効バイト表示)
ST 4バイト目 SP
0
1
2
3
2 1
0
1
2
RDRF
RDRの読出し
FBYTE設定(転送数)と受信データ数が
一致したことにより割込み発生
504
全受信データの読出し
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
図 24.5-5 ORE ( オーバランエラー ) フラグビットのセットタイミング
受信データ
ST 14バイト目 SP
ST 15バイト目 SP
ST 17バイト目 SP
ST 18バイト目 SP
14
FBYTE設定(転送数)
FBYTE読出し(有効バイト表示)
ST 16バイト目 SP
14
15
16
RDRF
ORE
オーバランエラー発生
(注意事項) FBYTE読出しがFIFO容量を示した状態で, 次のデータを受信するとオーバランエラーが発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
505
MB91605A シリーズ
送信割込み発生とフラグセットのタイミング
24.5.3
送信時の割込みとしては , 送信データが送信データレジスタ (TDR) から送信用シフ
トレジスタに転送され (SSR:TDRE=1) て送信が開始された場合と送信動作をして
いない場合 (SSR:TBI=1) に発生します。
■ 送信割込み発生とフラグセットのタイミング
● 送信データエンプティフラグ (TDRE) のセットタイミング
送信データレジスタ (TDR) に書き込まれたデータが送信シフトレジスタに転送される
と , 次のデータの書込みが可能な状態 (SSR:TDRE=1) になります。そのとき , 送信割込
みが許可 (SCR:TIE=1) されていると , 送信割込みが発生します。TDRE ビットはリード
オンリビットなので , 送信データレジスタ (TDR) へのデータ書込みにより "0" にクリア
されます。
図 24.5-6 送信データエンプティフラグ (TDRE) のセットタイミング
送信割込み発生
送信データ
(モード0,1)
ST
D0
送信割込み発生
D1 D2
D3
D4 D5 D6
D7
SP ST
D0 D1
D2
TDRE
TDR への書込み
ST:スタートビット D0~D7:データビット SP:ストップビット
● 送信バスアイドルフラグ (TBI) のセットタイミング
送信データレジスタが空 (TDRE=1) で送信動作をしていないとき , SSR:TBI ビットは
"1" にセットされます。このとき , 送信バスアイドル割込みが許可 (SCR:TBIE=1) され
ていると , 送信割込みが発生します。送信データレジスタ (TDR) に送信データをセッ
トすると TBI ビットおよび送信割込み要求はクリアされます。
図 24.5-7 送信バスアイドルフラグ (TBI) のセットタイミング
送信データ
ST D0 D1 D2 D3 D4 D5 D6 D7 SP
ST D0 D1 D2 D3 D4 D5 D6 D7 SP
TBI
TBIビットによる
送信割込み発生
TDRE
TDRへの書込み
ST:スタートビット D0~D7:データビット SP:ストップビット
506
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.5.4
送信 FIFO 使用時の割込み発生とフラグセットの
タイミング
送信 FIFO 使用時の割込みは , 送信 FIFO にデータが存在しないときに発生します。
■ 送信 FIFO 使用時の送信割込み発生とフラグセットのタイミング
• 送信 FIFO にデータが存在しない場合 , FIFO 送信データ要求ビット (FCR1:FDRQ)
が "1" にセットされます。
このとき , FIFO 送信割込みが許可 (FCR1:FTIE=1) されていると送信割込みが発生
します。
• 送信割込みが発生して送信 FIFO に必要なデータを書き込んだら , FIFO 送信データ
要求ビット (FCR1:FDRQ) に "0" を書き込んで割込み要求をクリアしてください。
• 送信 FIFO がフルになると FIFO 送信データ要求ビット (FCR1:FDRQ) は "0" になり
ます。
• 送信 FIFO のデータの存在確認は , FIFO バイトレジスタ (FBYTE1/FBYTE2) を読み
出すことで確認できます。
FBYTE1/FBYTE2 = 00H のときは , 送信 FIFO にデータが存在していないことを示し
ます。
図 24.5-8 送信 FIFO 使用時の送信割込み発生タイミング
送信データ
FBYTE
ST 1バイト目 SP
0
1
2
1
ST 2バイト目 SP
0
1
ST 3バイト目 ST
2
SP 4バイト目 SP
1
SP 5バイト目
0
FDRQ
TDRE
1
“0”書込みでクリア 送信割込み発生*
送信FIFO
(TDR)へ書込み
“0”書込みでクリア
送信割込み発生* 1
送信データレジスタがエンプティ* 2
*1 : 送信FIFOがエンプティのため, FDRQ=1にセットされる。
*2 : 送信シフトレジスタと送信バッファレジスタにデータが存在しないため, TDRE=1にセットされる。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
507
MB91605A シリーズ
24.6
UART の動作
UART は , モード 0 の双方向シリアル非同期通信 , モード 1 のマスタ / スレーブマル
チプロセッサ通信で動作します。
■ UART の動作
● 送受信データフォーマット
• 送受信データは , 必ずスタートビットから始まり , 指定されたデータビット長の送
受信が行われ , 少なくとも 1 ビットのストップビットで終了します。
• データ転送方向 (LSB ファーストまたは MSB ファースト ) は , シリアルモードレジ
スタ (SMR) の BDS ビットで決定されます。パリティありの場合 , パリティビットは
常に最終データビットと最初のストップビットの間に置かれます。
• 動作モード 0( 通常モード ) では , パリティはあり / なしの選択ができます。
• 動作モード 1( マルチプロセッサモード ) ではパリティは付加されず , AD ビットが
付加されます。
動作モード 0, 1 の送受信データフォーマットを図 24.6-1 に示します。
図 24.6-1 送受信データフォーマット例 ( 動作モード 0, 1)
[動作モード0]
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP1 SP2
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP1
ST
D0
D1
D2
D3
D4
D5
D6
D7
P
SP1 SP2
ST
D0
D1
D2
D3
D4
D5
D6
D7
P
SP1
ST
D0
D1
D2
D3
D4
D5
D6
SP1 SP2
ST
D0
D1
D2
D3
D4
D5
D6
SP1
ST
D0
D1
D2
D3
D4
D5
D6
P
SP1 SP2
ST
D0
D1
D2
D3
D4
D5
D6
P
SP1
ST
D0
D1
D2
D3
D4
D5
D6
D7
AD
SP1 SP2
ST
D0
D1
D2
D3
D4
D5
D6
D7
AD
SP1
ST
D0
D1
D2
D3
D4
D5
D6
AD
SP1 SP2
ST
D0
D1
D2
D3
D4
D5
D6
AD
SP1
Pなし
データ8ビット
Pあり
Pなし
データ7ビット
Pあり
[動作モード1]
データ8ビット
ST : スタートビット
SP : ストップビット
P : パリティビット
AD : アドレスビット
D : データビット
508
データ7ビット
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
<注意事項>
• 図 24.6-1 は , データ長 7 ビット , 8 ビットに設定した場合を示しています ( データ長は ,
動作モード 0 の場合 , 5 ビット∼ 9 ビットまで設定できます )。
• シリアルモードレジスタ (SMR) の BDS ビットを "1" (MSB ファースト ) に設定した場
合 , ビットは D7, D6, D5,・・・, D1, D0(P) の順で処理されます。
• データ長を X ビット長に設定した場合 , 送受信データレジスタ (RDR/TDR) の下位 X ビッ
トが有効になります。
● 送信動作
• シリアルステータスレジスタ (SSR) の送信データエンプティフラグビット (TDRE)
が "1" であれば , 送信データレジスタ (TDR) に送信データを書き込むことができま
す ( 送信 FIFO が許可されている場合には TDRE=0 でも送信データを書くことは可
能 )。
• 送信データを送信データレジスタ (TDR) に書き込むと , 送信データエンプティフラ
グビット (TDRE) は "0" になります。
• シリアル制御レジスタの送信動作許可ビット (SCR:TXE) を "1" に設定すると , 送
信データは送信シフトレジスタにロードされてスタートビットから順に送信が開
始されます。
• 送信が開始されると , 送信データエンプティフラグビット (TDRE) は再び "1" にセッ
トされます。このとき , 送信割込みが許可 (SCR:TIE=1) されていると送信割込みが
発生します。割込み処理において , 次の送信データを送信データレジスタに書き込
むことができます。
<注意事項> • 送信データエンプティフラグビット (SSR:TDRE) は初期値が "1" のため , 送信割込み
が許可 (SCR:TIE=1) されると直ちに送信割込みが発生します。
• FIFO 送信データ要求ビット (FCR1:FDRQ) は初期値が "1" のため , FIFO 送信割込み
が許可 (FCR1:FTIE=1) されると直ちに送信割込みが発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
509
MB91605A シリーズ
● 受信動作
• 受信動作が許可 (SCR:RXE=1) されると受信動作を行います。
• スタートビットを検出すると , 拡張通信制御レジスタ (ESCR:PEN, P, L2, L1, L0), お
よびシリアルモードレジスタ (SMR:BDS) に設定されているデータフォーマットに
従って 1 フレームデータの受信が行われます。
• 1 フレームの受信が完了すると , 受信データフルフラグビット (SSR:RDRF) が "1"
にセットされます。このとき , 受信割込みが許可 (SCR:RIE=1) されている場合 , 受
信割込みが発生します。
• 受信データを読み出す際には , 1 フレームデータの受信完了後に受信データを読み
出し , シリアルステータスレジスタ (SSR) のエラーフラグの状態を確認してくださ
い。受信エラーが発生している場合には , エラー処理を行ってください。
• 受信データの読出しで , 受信データフルフラグビット (SSR:RDRF) は "0" にクリア
されます。
• 受信 FIFO が許可されている場合 , 受信 FBYTE1/FBYTE2 に設定された分のフレー
ムを受信すると受信データフルフラグビット (SSR:RDRF) は "1" にセットされます。
• 受信 FIFO アイドル検出許可ビット (FRIIE) が "1" で受信 FIFO に存在するデータ数
が転送数に達しない場合 , 受信アイドル状態がボーレートクロックで 8 クロック以
上続くと割込みフラグ (RDRF) が "1" にセットされます。8 クロックカウント中 ,
RDR を読み出すとそのカウンタは "0" にリセットされ , 再度 8 クロックをカウント
します。受信 FIFO が禁止されると , そのカウンタは "0" にリセットされます。受信
FIFO にデータが残っている状態で受信 FIFO を許可すると再度 , カウントを開始し
ます。
• 受信 FIFO が許可されている場合 , シリアルステータスレジスタ (SSR) のエラーフラ
グが "1" にセットされると受信 FIFO にはそのエラーが発生したデータは受信 FIFO
に格納しません。また , そのとき受信データフルフラグビット (SSR:RDRF) を "1"
にセットしません ( ただし , オーバランエラーの場合は RDRF フラグは "1" にセッ
トされます )。受信 FBYTE1/FBYTE2 の表示はエラーが発生する前に正常に受信し
たデータ数を示しています。シリアルステータスレジスタ (SSR) のエラーフラグが
"0" にクリアされないと受信 FIFO は許可されません。
• 受信 FIFO が許可されている場合 , 受信 FIFO にデータがなくなると受信データフル
フラグビット (SSR:RDRF) は "0" にクリアされます。
<注意事項>
受信データレジスタ (RDR) のデータは , 受信データレジスタフルフラグビット (SSR:
RDRF) が "1" にセットされ , 受信エラーが発生しなかった場合 (SSR:PE, ORE, FRE=0)
に有効となります。
● クロック選択
• 内部クロック , または外部クロックを使用できます。
• 外部クロックを使用する場合は , BGR:EXT=1 に設定します。この場合 , 外部クロッ
クがボーレートジェネレータで分周されます。
510
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
● スタートビット検出
• 非同期モード時は , SIN 信号の立下りエッジによってスタートビットを認識します。
このため受信動作を許可 (SCR:RXE=1) しても , SIN 信号の立下りエッジが入力され
ないと受信動作を開始しません。
• スタートビットの立下りエッジを検出すると , ボーレートジェネレータの受信リロー
ドカウンタはリセットされ , 再リロードしカウントダウンを開始します。これに
よって , 常にデータの中心でサンプリングします。
スタートビット
データビット
SIN
SIN
(サンプリング済み)
SEDGE
(内部信号)
リロードカウンタ
リセット
データサンプリング
受信サンプリング
クロック
1ビットタイム
● ストップビット
• 1 ビットから 4 ビット長を選択できます。
• 受信データフルフラグビット (SSR:RDRF) は , 最初のストップビットを検出すると
"1" にセットされます。
● エラー検出
• 動作モード 0 では , パリティエラー , オーバランエラー , フレームエラーを検出でき
ます。
• 動作モード 1 では , オーバランエラー , フレームエラーを検出できます。パリティ
エラーは検出できません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
511
MB91605A シリーズ
● パリティビット
• パリティビットの付加は , 動作モード 0 の場合のみ設定できます。パリティ許可ビッ
ト (ESCR:PEN) でパリティの有無を , パリティ選択ビット (ESCR:P) で偶数パリ
ティ / 奇数パリティを設定できます。
• 動作モード 1 では , パリティを使用できません。
パリティ有効時の送受信データを図 24.6-2 に示します。
図 24.6-2 パリティ有効時の動作
ST
D0
D1
D2
D3
D4
D5
D6
D7
P
SP
偶数パリティにて受信時
パリティエラー発生
(ESCR:P=0)
受信データ
(モード0)
SSR :PE
偶数パリティの送信
(ESCR:P=0)
送信データ
(モード0)
奇数パリティの送信
(ESCR:P=1)
送信データ
(モード0)
ST:スタートビット SP:ストップビット パリティあり(ESCR:PEN=1),8ビット長の場合
(注意事項) 動作モード1では、パリティは使用できません。
● データ信号方式
拡張通信制御レジスタの INV ビットの設定によって , NRZ(Non Return to Zero) 信号方
式 (ESCR:INV=0), または反転 NRZ 信号方式 (ESCR:INV=1) を選択できます。
NRZ 信号方式および反転 NRZ 信号方式を図 24.6-3 に示します。
図 24.6-3 NRZ (Non Return to zero) 信号方式 , および反転 NRZ 信号方式
SIN (NRZ)
INV = 0
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP
SIN (反転NRZ)
INV = 1
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP
SOUT (NRZ)
INV = 0
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP
SOUT (反転NRZ)
INV = 1
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP
● データ転送方式
データビット転送方法を LSB ファーストまたは MSB ファーストから選択できます。
512
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.7
専用ボーレートジェネレータ
UART の送受信クロックソースは , 次のいずれかを選択できます。
• 専用ボーレートジェネレータ ( リロードカウンタ )
• 外部クロックをボーレートジェネレータに入力 ( リロードカウンタ )
■ UART ボーレート選択
ボーレートは次の 2 種類の中から 1 種類を選択できます。
● 専用ボーレートジェネレータ ( リロードカウンタ ) で内部クロックを分周して得られるボー
レート
2 つの内部リロードカウンタがあり , それぞれ送受信シリアルクロックに対応していま
す。ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) で 15 ビットのリロード値を
設定することにより , ボーレートを選択できます。
リロードカウンタは , 設定された値で内部クロックを分周します。
クロックソースの設定は , 内部クロックを選択 (BGR:EXT=0) してください。
● 専用ボーレートジェネレータ ( リロードカウンタ ) で外部クロックを分周して得られるボー
レート
リロードカウンタのクロックソースに外部クロックを使用します。
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) で 15 ビットのリロード値を設定
することにより , ボーレートを選択できます。
リロードカウンタは , 設定された値で外部クロックを分周します。
クロックソースの設定は , 外部クロックとボーレートジェネレータクロックの使用を
選択 (BGR:EXT=1) してください。
本モードは特殊な周波数の発振子を分周して使用するケースを想定して用意されてい
ます。
<注意事項>
• 外部クロックの設定(EXT=1)は, リロードカウンタが停止した状態(BGR1/BGR0=15’h00)
で行ってください。
• 外部クロックに設定 (EXT=1) した場合 , 外部クロックの "H" 幅 , "L" 幅は 2 周辺クロッ
ク (PCLK) 以上必要です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
513
MB91605A シリーズ
ボーレート設定
24.7.1
ボーレートの設定を示します。また , シリアルクロック周波数の計算結果を示しま
す。
■ ボーレートの計算
2 つの 15 ビットリロードカウンタは , ボーレートジェネレータレジスタ 1, 0 (BGR1,
BGR0) で設定します。
ボーレートの計算式を以下に示します。
(1) リロード値:
V = φ / b -1
V:リロード値
b:ボーレート
φ:周辺クロック (PCLK), 外部クロック周波数
(2) 計算例
周辺クロック (PCLK) 16MHz, 内部クロック使用 , ボーレート 19200bps に設定
する場合のリロード値は , 次のようになります。
リロード値:
V = (16 × 1000000)/19200 - 1 = 832
よって , ボーレートは ,
b = (16 × 1000000)/(832+1) = 19208 bps
(3) ボーレートの誤差
ボーレートの誤差は次の式によって求められます。
誤差 (%) = ( 計算値 - 目標値 )/ 目標値 × 100
( 例 ) 周辺クロック (PCLK) 20MHz, 目標ボーレート 153600bps に設定する場合
リロード値 =(20 × 1000000)/153600 - 1 = 129
ボーレート ( 計算値 ) =(20 × 1000000)/(129+1) = 153846 (bps)
誤 差 (%) =(153846 - 153600)/153600 × 100 = 0.16 (%)
<注意事項> • リロード値を "0" に設定するとリロードカウンタは停止します。
• リロード値が偶数の場合 , 受信シリアルクロックの "H" 幅と "L" 幅は "L" 幅の方が周辺
クロック (PCLK) 1 サイクル分長くなります。奇数の場合 , シリアルクロックの "H" 幅
と "L" 幅は同じになります。
• リロード値は 4 以上を設定してください。ただし , ボーレートの誤差とリロード値の設
定によって正常にデータを受信できないことがあります。
514
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 各周辺クロック (PCLK) 周波数に対するリロード値とボーレート
表 24.7-1 リロード値とボーレート
8 MHz
10 MHz
16 MHz
20 MHz
24 MHz
32MHz
ボーレート
(bps)
Value
ERR
Value
ERR
Value
ERR
Value
ERR
Value
ERR
Value
ERR
−
0
−
0
4
0
5
0
7
0
0
−
7
−
0
−
9
−
0
−
11
−
0
−
15
−
0
4M
−
−
−
2.5M
−
2M
−
0
−
4
1M
−
7
0
9
0
15
0
19
0
23
0
31
0
500000
15
0
19
0
31
0
39
0
47
0
63
0
460800
−
31
−
0
−
39
−
0
−
63
−
0
−
79
−
0
51
− 0.16
250000
95
0
−
127
−
0
230400
−
−
−
−
−
−
−
−
103
− 0.16
−
−
153600
51
− 0.16
64
− 0.16
103
− 0.16
129
− 0.16
155
− 0.16
207
− 0.16
125000
63
0
79
0
127
0
159
0
191
0
255
0
115200
68
− 0.64
86
0.22
138
0.08
173
0.22
207
− 0.16
277
0.08
76800
103
− 0.16
129
− 0.16
207
− 0.16
259
− 0.16
311
− 0.16
416
0.08
57600
138
0.08
173
0.22
277
0.08
346
− 0.16
416
0.08
555
0.08
38400
207
− 0.16
259
− 0.16
416
0.08
520
0.03
624
0
832
− 0.04
28800
277
0.08
346
< 0.01
554
− 0.01
693
− 0.06
832
− 0.03
1110
− 0.01
19200
416
0.08
520
0.03
832
− 0.03
1041
0.03
1249
0
1666
0.02
10417
767
< 0.01
959
< 0.01
1535
< 0.01
1919
< 0.01
2303
< 0.01
3071
< 0.01
0.04
1041
0.03
1666
0.02
2083
0.03
2499
0
3332
− 0.01
2221
< 0.01
2777
< 0.01
3332
< 0.01
4443
− 0.01
2082 − 0.02
3332
< 0.01
4166
< 0.01
4999
0
6666
< 0.01
< 0.01
8332
9600
832
7200
1110
4800
1666
2400
3332
< 0.01 4166 < 0.01
6666
< 0.01
9999
0
13332 <− 0.01
1200
6666
< 0.01 8334
13332 < 0.01 16666 < 0.01
19999
0
26666
< 0.01
600
13332 < 0.01 16666 < 0.01 26666 < 0.01
−
−
−
−
−
−
300
26666 < 0.01
−
−
−
−
−
−
< 0.01 1388 < 0.01
0.02
−
0.02
−
−
−
• Value:BGR1/BGR0 レジスタの設定値 (10 進 )
• ERR :ボーレート誤差 (%)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
515
MB91605A シリーズ
■ 受信時の許容ボーレート範囲
受信の際に , 送信先のボーレートのずれがどの程度まで許容できるかを次に示します。
受信時のボーレート誤差は下記に示す算出式を使用して , 必ず許容誤差範囲内になる
ように設定してください。
図 24.7-1 受信時の許容ボーレート範囲
サンプリング
▽
UARTの
転送レート
スタート
▽
▽
▽
▽
▽
bit0
bit1
bit7
パリティ
ストップ
FL
1データ・フレーム (11×FL)
許容最小
転送レート
スタート
bit0
bit1
パリティ
bit7
ストップ
FLmin
許容最大
転送レート
スタート
bit0
bit1
bit7
パリティ
ストップ
FLmax
図に示すように , スタートビット検出後は BGR1/BGR0 レジスタで設定したカウンタに
より , 受信データのサンプリング・タイミングが決定されます。このサンプリング・タ
イミングに最終データ ( ストップビット ) までが間に合えば正常に受信できます。
これを 11 ビット受信にあてはめると理論上 , 次のようになります。
サンプリング・タイミングのマージンを周辺クロック (PCLK) (φ) の 2 クロック分とす
ると ,
許容最小転送レート (FLmin) は次のようになります。
FLmin = (11 ビット× (V+1) − (V+1)/2 + 2)/φ = (21V+25)/2φ (s)
V: リロード値 φ:周辺クロック (PCLK)
したがって , 受信可能な送信先の最大ボーレート (BGmax) は次のようになります。
BGmax = 11/FLmin = 22φ/(21V+25) (bps)
V: リロード値 φ:周辺クロック (PCLK)
同様に , 許容最大転送レート (FLmax) を求めると , 次のようになります。
FLmax = (11 ビット× (V+1) + (V+1)/2 − 2)/φ = (23V+19)/2φ (s)
V:リロード値 φ:周辺クロック (PCLK)
したがって , 受信可能な送信先の最小ボーレート (BGmin) は次のようになります。
BGmin = 11/FLmax = 22φ/(23V+19) (bps)
V:リロード値 φ:周辺クロック (PCLK)
516
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
前述の最小 / 最大ボーレート値の算出式から , UART と送信先とのボーレートの許容誤
差を求めると次のようになります。
表 24.7-2 ボーレートの許容誤差
リロード値 (V)
許容最大ボーレート誤差
許容最小ボーレート誤差
3
0%
0
10
+2.98%
-2.81%
50
+4.37%
-4.02%
100
+4.56%
-4.18%
200
+4.66%
-4.26%
32767
+4.76%
-4.35%
<注意事項>
受信の精度は , 1 フレームのビット数 , 周辺クロック (PCLK), リロード値に依存します。
周辺クロック (PCLK) が高く , 分周比が高くなるほど精度は高くなります。
■ 外部クロック
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) の EXT ビットに "1" を書き込む
と , ボーレートジェネレータで外部クロックを分周します。
<注意事項>
外部クロック信号は UART で内部クロックに同期します。したがって , 同期化不可能な外
部クロックの場合には動作が不安定になります
■ リロードカウンタの機能
リロードカウンタには , 送信リロードカウンタと受信リロードカウンタがあり , 専用
ボーレートジェネレータとして機能します。リロード値に対する 15 ビットレジスタか
ら構成されており , 外部クロックまたは内部クロックより送受信クロックを生成しま
す。
■ カウントの開始
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むと , リ
ロードカウンタはカウントを開始します。
■ 再スタート
リロードカウンタは下記の条件で再スタートします。
• 送信 / 受信リロードカウンタ共通
プログラマブルリセット (SCR:UPCL ビット )
• 受信リロードカウンタ
非同期モードでのスタートビット立下りエッジ検出
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
517
MB91605A シリーズ
24.8
動作モード 0 ( 非同期ノーマルモード ) 設定手順と
プログラムフロー
動作モード 0 では , 非同期シリアル双方向通信をすることができます。
■ CPU 間接続
動作モード 0( 通常モード ) では , 双方向通信を選択します。図 24.8-1 に示すように 2
つの CPU を相互に接続します。
図 24.8-1 UART 動作モード 0 の双方向通信の接続例
SOUT
SOUT
SIN
SIN
SCK
SCK
CPU –1 (マスタ)
CPU –2 (スレーブ)
■ フローチャート
● FIFO 未使用時
図 24.8-2 双方向通信フローチャートの例 (FIFO 未使用時 )
(送信側)
(受信側)
スタート
スタート
動作モード設定
(モード0に設定)
TDRに1バイトデータ
をセットして通信
動作モード設定
(送信側と合わす)
データ送信
NO
RDRF=1
YES
NO
RDRF=1
YES
受信データ読出しと
処理
518
データ送信
受信データ読出しと
処理
(ANS)
1バイトデータ送信
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
● FIFO 使用時
図 24.8-3 双方向通信フローチャートの例 (FIFO 使用時 )
(送信側)
(受信側)
スタート
スタート
動作モード設定
(モード0に設定)
動作モード設定
(モード0に設定)
・送受信FIFO許可
・FBYTE設定
・送受信FIFO許可
・FBYTE設定
送信FIFOに
Nバイトをセット
データ送信
NO
RDRF=1
YES
FDRQビットに”0”書込み
FBYTE設定値分,
読出しと処理
データ返信
NO
RDRF=1
送信FIFOに
Nバイトをセット
YES
FBYTE設定値分,
読出しと処理
CM71-10147-2
FDRQビットに”0”書込み
FUJITSU SEMICONDUCTOR LIMITED
519
MB91605A シリーズ
24.9
動作モード 1 ( 非同期マルチプロセッサモード )
設定手順とプログラムフロー
動作モード 1( マルチプロセッサモード ) では , 複数 CPU のマスタ / スレーブ接続に
よる通信が可能です。マスタ / スレーブとして使用できます。
■ CPU 間接続
マスタ / スレーブ型通信では , 図 24.9-1 に示すように 2 本の共通通信ラインに 1 つのマ
スタ CPU と複数のスレーブ CPU を接続して通信システムを構成します。UART はマ
スタまたはスレーブのどちらでも使用できます。
図 24.9-1 UART のマスタ / スレーブ型通信の接続例
SOUT
SIN
マスタ CPU
SOUT
SIN
SOUT
スレーブ CPU #0
SIN
スレーブ CPU #1
■ 機能選択
マスタ / スレーブ型通信では , 表 24.9-1 に示すように動作モードとデータ転送方式を選
択してください。
表 24.9-1 マスタ / スレーブ型通信機能の選択
動作モード
マスタ
CPU
アドレス
送受信
データ
送受信
モード 1
(AD ビット
送信 )
スレーブ
CPU
モード 1
(AD ビット
受信 )
データ
AD = 1
+
7 ビットまたは
8 ビットアドレス
AD = 0
+
7 ビットまたは
8 ビットデータ
パリティ
ストップ
ビット
ビット方向
なし
1 ビット
∼
4 ビット
LSB ファースト
または ,
MSB ファースト
<注意事項>
動作モード 1 では送受信データ (RDR/TDR) はハーフワードアクセスで行ってください。
520
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
● 通信手順
通信は , マスタ CPU がアドレスデータを送信することによって始まります。アドレス
データとは D8 ビットを "1" としたデータで , 通信先となるスレーブ CPU を選択しま
す。各スレーブ CPU はプログラムでアドレスデータを判断し , 割り当てられたアドレ
スと一致した場合にマスタ CPU との通信 ( 通常データ ) をします。
図 24.9-2 , 図 24.9-3 に , マスタ / スレーブ型通信 ( マルチプロセッサモード ) のフロー
チャートを示します。
■ フローチャート
● FIFO 未使用時
図 24.9-2 マスタ / スレーブ型通信フローチャートの例 (FIFO 未使用時 )
(マスタCPU)
(スレーブCPU)
スタート
スタート
動作モード設定
(モード1に設定)
動作モード設定
(モード1に設定)
SIN端子をシリアルデータ
入力に設定
SOUT端子をシリアルデータ
出力に設定
SIN端子をシリアルデータ
入力に設定
7または8データビット設定
1または2ストップビット設定
7または8データビット設定
1または2ストップビット設定
D8ビットに”1”をセット
送受信動作許可
送受信動作許可
受信バイト
NO
スレーブアドレスを送信
D8ビット=1
YES
NO
D8ビットに”0”をセット
スレーブアドレス
が一致
YES
スレーブCPUと通信
通信終了?
SOUT端子をシリアルデータ
出力に設定
NO
マスタCPUと通信
YES
ほかのスレーブ
CPUと通信
NO
NO
通信終了?
YES
YES
送受信動作禁止
エンド
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
521
MB91605A シリーズ
● FIFO 使用時
図 24.9-3 マスタ / スレーブ型通信フローチャートの例 (FIFO 使用時 )
(マスタCPU)
(スレーブCPU)
スタート
スタート
動作モード設定
(モード1に設定)
動作モード設定
(モード1に設定)
・送受信FIFO許可
・FBYTE設定
送受信FIFO許可
ADビットに”1”をセット
送信FIFOにスレーブ
アドレスをセットし,
FDRQビットに”0”書込み
FBYTE=1に設定
スレーブアドレス送信
RDRF=1
NO
YES
AD=1 &
スレーブアドレス
が一致
ADビットに”0”をセット
NO
YES
データ送信
FBYTE=Nに設定
送信FIFOにNバイトをセットし,
FDRQビットに”0”書込み
受信FIFOフル
NO
D8ビットに”0”をセット
YES
FBYTE設定値分,
読出しと処理
NO
RDRF=1
YES
FBYTE設定値分,
読出しと処理
522
データ送信
送信FIFOにNバイトをセットし,
FDRQビットに”0”書込み
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.10
UART モードの注意事項
UART モードの注意事項を下記に示します。
• FIFO 付きチャネルで DMA 転送要求する場合 , FIFO は使用できません。FIFO 動作
禁止の設定としてください。
• DMA 転送要求する場合 , DMA のブロックサイズを 1 回に設定してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
523
MB91605A シリーズ
24.11
CSIO( クロック同期シリアルインタフェース )
マルチファンクションシリアルインタフェースの機能のうち , 動作モード 2 でサ
ポートしている CSIO 機能について説明します。
● CSIO( クロック同期シリアルインタフェース )
● CSIO( クロック同期シリアルインタフェース ) の概要
● CSIO( クロック同期シリアルインタフェース ) の レジスタ
• シリアル制御レジスタ (SCR)
• シリアルモードレジスタ (SMR)
• シリアルステータスレジスタ (SSR)
• 拡張通信制御レジスタ (ESCR)
• 受信データレジスタ / 送信データレジスタ (RDR/TDR)
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)
• FIFO 制御レジスタ 1(FCR1)
• FIFO 制御レジスタ 0(FCR0)
• FIFO バイトレジスタ (FBYTE1/FBYTE2)
• シリアルモード選択レジスタ (SSEL89AB)
• 受信データミラーレジスタ / 送信データミラーレジスタ (RDRM/TDRM)
● CSIO( クロック同期シリアルインタフェース ) の割込み
• 受信割込み発生とフラグセットのタイミング
• 受信 FIFO 使用時の割込み発生とフラグセットの タイミング
• 送信割込み発生とフラグセットのタイミング
• 送信 FIFO 使用時の割込み発生とフラグセットの タイミング
● CSIO( クロック同期シリアルインタフェース ) の 動作
● 専用ボーレートジェネレータ
ボーレート設定
● CSIO( クロック同期シリアルインタフェース ) 設定手順とプログラムフロー
524
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.12
CSIO( クロック同期シリアルインタフェース ) の概要
CSIO( クロック同期シリアルインタフェース ) は , 外部装置と同期通信をするための
汎用のシリアルデータ通信インタフェースです (SPI に対応します )。また , 送信 / 受
信 ( 最大 各 16 バイト ) の FIFO を搭載しています。
■ CSIO ( クロック同期シリアルインタフェース ) の機能
機能
1
データバッファ
2
転送形式
3
ボーレート
4
データ長
5
受信エラー検出
• 全二重ダブルバッファ (FIFO 未使用時 )
• 送信 / 受信 FIFO ( 最大各 16 バイト ) (FIFO 使用時 ) *
• クロック同期 ( スタートビット / ストップビットなし )
• マスタ / スレーブ機能
• SPI に対応 ( マスタ / スレーブ両方サポート )
• 専用ボーレートジェネレータあり (15 ビットリロードカウンタから構成 ,
マスタ動作時 )
• 外部クロック入力可能 ( スレーブ動作時 )
5 ビット∼ 9 ビットに可変可能
オーバランエラー
受信割込み ( 受信完了 , オーバランエラー )
送信割込み ( 送信データエンプティ , 送信バスアイドル )
送信 FIFO 割込み ( 送信 FIFO がエンプティのとき )
送受信 DMA 転送サポート機能あり
6
割込み要求
•
•
•
•
7
同期モード
マスタまたはスレーブ機能
8
端子アクセス
9
10
シリアルデータ出力端子を "H" に設定可能
4 チャネル同時通信 ch.8 ∼ ch.11 を 4 チャネル同時通信可能
FIFO オプション
•
•
•
•
•
送受信 FIFO 搭載 ( 最大容量:送信 FIFO 16 バイト , 受信 FIFO 16 バイト ) *
送信 FIFO と受信 FIFO を選択可能
送信データ再送可能
受信 FIFO 割込みタイミングをソフトで変更可能
独立して FIFO リセットサポート
*: ch.8 ∼ ch.11 には FIFO はありません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
525
MB91605A シリーズ
24.13
CSIO( クロック同期シリアルインタフェース ) の
レジスタ
CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧を示します。
■ CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧
表 24.13-1 CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧
<Helvetica>(1 / 4)
チャネル レジスタ略称
レジスタ名
8 ∼ 11 共通 SSEL89AB
シリアルモード選択レジスタ 89AB
参照先
24.13.10
0
1
526
SCR0
シリアル制御レジスタ 0
24.13.1
SMR0
シリアルモードレジスタ 0
24.13.2
ESCR0
拡張通信制御レジスタ 0
24.13.4
BGR0
ボーレートジェネレータレジスタ 0
24.13.6
SSR0
シリアルステータスレジスタ 0
24.13.3
RDR0
受信データレジスタ 0
24.13.5
TDR0
送信データレジスタ 0
24.13.5
FCR10
FIFO 制御レジスタ 10
24.13.7
FCR00
FIFO 制御レジスタ 00
24.13.8
FBYTE10
FIFO1 バイトレジスタ 0
24.13.9
FBYTE20
FIFO2 バイトレジスタ 0
24.13.9
SCR1
シリアル制御レジスタ 1
24.13.1
SMR1
シリアルモードレジスタ 1
24.13.2
ESCR1
拡張通信制御レジスタ 1
24.13.4
BGR1
ボーレートジェネレータレジスタ 1
24.13.6
SSR1
シリアルステータスレジスタ 1
24.13.3
RDR1
受信データレジスタ 1
24.13.5
TDR1
送信データレジスタ 1
24.13.5
FCR11
FIFO 制御レジスタ 11
24.13.7
FCR01
FIFO 制御レジスタ 01
24.13.8
FBYTE11
FIFO1 バイトレジスタ 1
24.13.9
FBYTE21
FIFO2 バイトレジスタ 1
24.13.9
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-1 CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧
<Helvetica>(2 / 4)
チャネル
2
3
4
CM71-10147-2
レジスタ略称
レジスタ名
SCR2
シリアル制御レジスタ 2
参照先
24.13.1
SMR2
シリアルモードレジスタ 2
24.13.2
ESCR2
拡張通信制御レジスタ 2
24.13.4
BGR2
ボーレートジェネレータレジスタ 2
24.13.6
SSR2
シリアルステータスレジスタ 2
24.13.3
RDR2
受信データレジスタ 2
24.13.5
TDR2
送信データレジスタ 2
24.13.5
FCR12
FIFO 制御レジスタ 12
24.13.7
FCR02
FIFO 制御レジスタ 02
24.13.8
FBYTE12
FIFO1 バイトレジスタ 2
24.13.9
FBYTE22
FIFO2 バイトレジスタ 2
24.13.9
SCR3
シリアル制御レジスタ 3
24.13.1
SMR3
シリアルモードレジスタ 3
24.13.2
ESCR3
拡張通信制御レジスタ 3
24.13.4
BGR3
ボーレートジェネレータレジスタ 3
24.13.6
SSR3
シリアルステータスレジスタ 3
24.13.3
RDR3
受信データレジスタ 3
24.13.5
TDR3
送信データレジスタ 3
24.13.5
FCR13
FIFO 制御レジスタ 13
24.13.7
FCR03
FIFO 制御レジスタ 03
24.13.8
FBYTE13
FIFO1 バイトレジスタ 3
24.13.9
FBYTE23
FIFO2 バイトレジスタ 3
24.13.9
SCR4
シリアル制御レジスタ 4
24.13.1
SMR4
シリアルモードレジスタ 4
24.13.2
ESCR4
拡張通信制御レジスタ 4
24.13.4
BGR4
ボーレートジェネレータレジスタ 4
24.13.6
SSR4
シリアルステータスレジスタ 4
24.13.3
RDR4
受信データレジスタ 4
24.13.5
TDR4
送信データレジスタ 4
24.13.5
FCR14
FIFO 制御レジスタ 14
24.13.7
FCR04
FIFO 制御レジスタ 04
24.13.8
FBYTE14
FIFO1 バイトレジスタ 4
24.13.9
FBYTE24
FIFO2 バイトレジスタ 4
24.13.9
FUJITSU SEMICONDUCTOR LIMITED
527
MB91605A シリーズ
表 24.13-1 CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧
<Helvetica>(3 / 4)
チャネル
5
6
7
528
レジスタ略称
レジスタ名
SCR5
シリアル制御レジスタ 5
参照先
24.13.1
SMR5
シリアルモードレジスタ 5
24.13.2
ESCR5
拡張通信制御レジスタ 5
24.13.4
BGR5
ボーレートジェネレータレジスタ 5
24.13.6
SSR5
シリアルステータスレジスタ 5
24.13.3
RDR5
受信データレジスタ 5
24.13.5
TDR5
送信データレジスタ 5
24.13.5
FCR15
FIFO 制御レジスタ 15
24.13.7
FCR05
FIFO 制御レジスタ 05
24.13.8
FBYTE15
FIFO1 バイトレジスタ 5
24.13.9
FBYTE25
FIFO2 バイトレジスタ 5
24.13.9
SCR6
シリアル制御レジスタ 6
24.13.1
SMR6
シリアルモードレジスタ 6
24.13.2
ESCR6
拡張通信制御レジスタ 6
24.13.4
BGR6
ボーレートジェネレータレジスタ 6
24.13.6
SSR6
シリアルステータスレジスタ 6
24.13.3
RDR6
受信データレジスタ 6
24.13.5
TDR6
送信データレジスタ 6
24.13.5
FCR16
FIFO 制御レジスタ 16
24.13.7
FCR06
FIFO 制御レジスタ 06
24.13.8
FBYTE16
FIFO1 バイトレジスタ 6
24.13.9
FBYTE26
FIFO2 バイトレジスタ 6
24.13.9
SCR7
シリアル制御レジスタ 7
24.13.1
SMR7
シリアルモードレジスタ 7
24.13.2
ESCR7
拡張通信制御レジスタ 7
24.13.4
BGR7
ボーレートジェネレータレジスタ 7
24.13.6
SSR7
シリアルステータスレジスタ 7
24.13.3
RDR7
受信データレジスタ 7
24.13.5
TDR7
送信データレジスタ 7
24.13.5
FCR17
FIFO 制御レジスタ 17
24.13.7
FCR07
FIFO 制御レジスタ 07
24.13.8
FBYTE17
FIFO1 バイトレジスタ 7
24.13.9
FBYTE27
FIFO2 バイトレジスタ 7
24.13.9
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-1 CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧
<Helvetica>(4 / 4)
チャネル
8
9
10
11
CM71-10147-2
レジスタ略称
レジスタ名
SCR8
シリアル制御レジスタ 8
参照先
24.13.1
SMR8
シリアルモードレジスタ 8
24.13.2
ESCR8
拡張通信制御レジスタ 8
24.13.4
BGR8
ボーレートジェネレータレジスタ 8
24.13.6
SSR8
シリアルステータスレジスタ 8
24.13.3
RDR8
受信データレジスタ 8
24.13.5
TDR8
送信データレジスタ 8
24.13.5
RDRM8
受信データミラーレジスタ 8
24.13.11
TDRM8
送信データミラーレジスタ 8
24.13.11
SCR9
シリアル制御レジスタ 9
24.13.1
SMR9
シリアルモードレジスタ 9
24.13.2
ESCR9
拡張通信制御レジスタ 9
24.13.4
BGR9
ボーレートジェネレータレジスタ 9
24.13.6
SSR9
シリアルステータスレジスタ 9
24.13.3
RDR9
受信データレジスタ 9
24.13.5
TDR9
送信データレジスタ 9
24.13.5
RDRM9
受信データミラーレジスタ 9
24.13.11
TDRM9
送信データミラーレジスタ 9
24.13.11
SCRA
シリアル制御レジスタ A
24.13.1
SMRA
シリアルモードレジスタ A
24.13.2
ESCRA
拡張通信制御レジスタ A
24.13.4
BGRA
ボーレートジェネレータレジスタ A
24.13.6
SSRA
シリアルステータスレジスタ A
24.13.3
RDRA
受信データレジスタ A
24.13.5
TDRA
送信データレジスタ A
24.13.5
RDRMA
受信データミラーレジスタ A
24.13.11
TDRMA
送信データミラーレジスタ A
24.13.11
SCRB
シリアル制御レジスタ B
24.13.1
SMRB
シリアルモードレジスタ B
24.13.2
ESCRB
拡張通信制御レジスタ B
24.13.4
BGRB
ボーレートジェネレータレジスタ B
24.13.6
SSRB
シリアルステータスレジスタ B
24.13.3
RDRB
受信データレジスタ B
24.13.5
TDRB
送信データレジスタ B
24.13.5
RDRMB
受信データミラーレジスタ B
24.13.11
TDRMB
送信データミラーレジスタ B
24.13.11
FUJITSU SEMICONDUCTOR LIMITED
529
MB91605A シリーズ
表 24.13-2 CSIO ( クロック同期シリアルインタフェース ) ビット配置
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
bit7
bit6
bit5
bit4
SCR/
SMR
UPCL
MS
SPI
RIE
TIE
TBIE
RXE
TXE
MD2
MD1
MD0
−
SSR/
ESCR
REC
−
−
−
TBI
SOP
−
−
WT1
WT0
D8
D7
D6
D5
D4
B8
B7
B6
B5
B4
RDR/
TDR
BGR1/
BGR0
−
−
B14
B13
−
FCR1/
FCR0
ORE RDRF TDRE
B12
B11
B10
−
−
−
−
bit2
bit1
bit0
SCKE
SOE
L2
L1
L0
D3
D2
D1
D0
B3
B2
B1
B0
SCINV BDS
−
FLSTE FRIIE FDRQ FTIE
FBYTE2/
FD15 FD14 FD13 FD12 FD11 FD10
FBYTE1
530
B9
bit3
FD9
FSEL
−
FLST
FLD
FSET FCL2 FCL1
FE2
FE1
FD8
FD7
FD6
FD5
FD4
FD1
FD0
FUJITSU SEMICONDUCTOR LIMITED
FD3
FD2
CM71-10147-2
MB91605A シリーズ
シリアル制御レジスタ (SCR)
24.13.1
シリアル制御レジスタ (SCR) は , 送受信割込みの許可 / 禁止 , 送信アイドル割込みの
許可 / 禁止 , 送受信動作の許可 / 禁止の設定を行います。また , SPI に接続するため
の設定 , CSIO をリセットすることが可能です。
■ シリアル制御レジスタ (SCR)
図 24.13-1 にシリアル制御レジスタ (SCR) のビット構成を , 表 24.13-3 に各ビットの機
能を示します。
図 24.13-1 シリアル制御レジスタ (SCR) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
UPCL
MS
SPI
RIE
TIE
TBIE
RXE
TXE
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
・・・・・・・・・・・・・・・・・・・・・
bit7
(SMR)
TXE
0
1
送信許可ビット
送信禁止
送信許可
RXE
0
1
受信許可ビット
受信禁止
受信許可
TBIE
0
1
:リード/ライト可能
RIE
0
1
受信割込み許可ビット
受信割込み禁止
受信割込み許可
SPI
0
1
SPI対応ビット
ノーマル同期転送
SPI対応
0
1
00000000B
送信バスアイドル割込み許可
送信割込み許可ビット
送信割込み禁止
送信割込み許可
UPCL
初期値
送信バスアイドル割込み許可ビット
送信バスアイドル割込み禁止
TIE
0
1
MS
0
1
R/W
bit0
マスタ/スレーブ機能選択ビット
マスタモード
スレーブモード
プログラマブルクリアビット
書込み時
読出し時
影響なし
常に"0"をリード
プログラマブルクリア
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
531
MB91605A シリーズ
表 24.13-3 シリアル制御レジスタ (SCR) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
機能
CSIO の内部状態を初期化するビットです。
"1" を設定した場合:
• CSIO を直接リセット ( ソフトウェアリセット ) します。ただし ,
レジスタの設定は保持されます。その際 , 送受信状態のものは直
ちに切断されます。
• ボーレートジェネレータは , BGR1/BGR0 レジスタの設定値をリ
bit15
UPCL:
プログラマブル
クリアビット
ロードし , 再スタートします。
• すべての送受信割込み要因 (TDRE, TBI, RDRF, ORE) は初期化
("1100B") されます。
• "0" を設定した場合:動作に影響を及ぼしません。
• リード時は , 常に "0" が読み出されます。
( 注意事項 )
割込み禁止に設定した後に , プログラマブルクリアを
実行してください。
FIFO 使用時は , FIFO 禁止 (FE2, FE1=0) にしてからプ
ログラマブルクリアを実行してください。
bit14
MS:
マスタ /
スレーブ機能
選択ビット
マスタまたはスレーブモードを選択します。
"0" に設定した場合:マスタモードに設定されます。
"1" に設定した場合:スレーブモードに設定されます。
( 注意事項 ) スレーブモードを選択した場合 , SMR:SCKE=0 であ
れば , 外部クロックが直接入力されます。
bit13
SPI:
SPI 対応
ビット
本ビットは , SPI に対応した通信をさせるためのビットです。
"0" に設定した場合:ノーマル同期通信を行います。
"1" に設定した場合:SPI に対応します。
bit12
RIE:
受信割込み
許可ビット
• CPU への受信割込み要求出力を許可 / 禁止するビットです。
• RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , また
はエラーフラグビット (ORE) のいずれかが "1" の場合 , 受信割込
み要求を出力します。
bit11
bit10
532
TIE:
送信割込み
許可ビット
TBIE:
送信バス
アイドル
割込み許可
ビット
• CPU への送信割込み要求出力を許可 / 禁止するビットです。
• TIE ビットと TDRE ビットが "1" の場合 , 送信割込み要求を出力
します。
• CPU への送信バスアイドル割込み要求出力を許可 / 禁止するビッ
トです。
• TBIE ビットと TBI ビットが "1" のとき , 送信バスアイドル割込み
要求を出力します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-3 シリアル制御レジスタ (SCR) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
機能
CSIO の受信動作を許可 / 禁止します。
"0" に設定した場合:データフレーム受信動作が禁止されます。
bit9
RXE:
受信許可ビット
"1" に設定した場合:データフレーム受信動作が許可されます。
( 注意事項 )
受信中に受信動作を禁止 (RXE=0) した場合には , 直
ちに受信動作を停止します。
CSIO の送信動作を許可 / 禁止します。
"0" に設定した場合:データフレーム送信動作が禁止されます。
bit8
TXE:
送信許可ビット
"1" に設定した場合:データフレーム送信動作が許可されます。
( 注意事項 )
CM71-10147-2
送信中に送信動作を禁止 (TXE=0) した場合には , 直
ちに送信動作を停止します。
FUJITSU SEMICONDUCTOR LIMITED
533
MB91605A シリーズ
シリアルモードレジスタ (SMR)
24.13.2
シリアルモードレジスタ (SMR) は , 動作モードの設定 , 転送方向 , シリアルクロッ
クの反転 , およびシリアルデータとクロックの端子への出力許可 / 禁止の設定を行い
ます。
■ シリアルモードレジスタ (SMR)
図 24.13-2 にシリアルモードレジスタ (SMR) のビット構成を , 表 24.13-4 に各ビットの
機能を示します。
図 24.13-2 シリアルモードレジスタ (SMR) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・ bit8
(SCR)
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
MD2 MD1 MD0 予約 SCINV BDS SCKE SOE 00000000 B
R/W R/W R/W R/W R/W R/W R/W R/W
SOE
0
1
シリアルデータ出力許可ビット
SOUT出力禁止
SOUT出力許可
SCKE
1
シリアルクロック出力許可ビット
SCK出力禁止
または
SCK入力許可
SCK出力許可
BDS
0
1
転送方向選択ビット
LSBファースト(最下位ビットから転送)
MSBファースト(最上位ビットから転送)
0
SCINV
0
1
シリアルクロック反転ビット
マークレベル"H"フォーマット
マークレベル"L"フォーマット
予約ビット
必ず"0"を設定してください。
R/W
-
:リード/ライト可能
:未定義ビット
:初期値
MD2 MD1 MD0
動作モード設定ビット
0
0
0
動作モード0(非同期ノーマルモード)
0
0
1
動作モード1(非同期マルチプロセッサモード)
0
1
0
動作モード2(クロック同期モード)
1
0
0
動作モード4(I2Cモード)
(注意事項) 本節では動作モード2のレジスタおよび動作について説明します。
534
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-4 シリアルモードレジスタ (SMR) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
機能
動作モードを設定します。
"000B":動作モード 0( 非同期ノーマルモード ) に設定されます。
"001B":動作モード 1( 非同期マルチプロセッサモード ) に設定されま
す。
"010B":動作モード 2( クロック同期モード ) に設定されます。
bit7
∼
bit5
MD2 ∼ MD0:
動作モード
設定ビット
bit4
予約ビット
"100B":動作モード 4(I2C モード ) に設定されます。
動作モード 2( クロック同期モード ) のレジスタおよび動作について
説明します。
( 注意事項 ) 上記の設定以外は禁止です。
動作モードを切り換える場合には , プログラマブルクリ
ア実行 (SCR:UPCL=1) 後 , 動作モードを切り換えてくだ
さい。
動作モード設定後 , 各レジスタを設定してください。
必ず "0" を設定してください。
シリアルクロックフォーマットを反転するビットです。
"0" に設定した場合:
• シリアルクロック出力のマークレベルを "H" にします。
• 送信データは , ノーマル転送ではシリアルクロックの立下りエッジ ,
SPI 転送ではシリアルクロックの立上りエッジに同期して出力しま
す。
• 受信データは , ノーマル転送ではシリアルクロックの立上りエッジ ,
SPI 転送ではシリアルクロックの立下りエッジでサンプリングしま
bit3
SCINV:
シリアル
クロック反転
ビット
す。
"1" に設定した場合:
• シリアルクロック出力のマークレベルを "L" にします。
• 送信データは , ノーマル転送ではシリアルクロックの立上りエッジ ,
SPI 転送ではシリアルクロックの立下りエッジに同期して出力しま
す。
• 受信データは , ノーマル転送ではシリアルクロックの立下りエッジ ,
SPI 転送ではシリアルクロックの立上りエッジでサンプリングしま
す。
( 注意事項 )
本ビットは , 送受信が禁止 (TXE=RXE=0) のときに設定
してください。
転 送 シ リ ア ル デ ー タ を 最 下 位 ビ ッ ト 側 か ら 先 に 転 送 す る か (LSB
bit2
BDS:
転送方向選択
ビット
CM71-10147-2
ファースト , BDS=0) 最上位ビット側から先に転送するか (MSB ファー
スト , BDS=1) を選択するビットです。
( 注意事項 )
本ビットは , 送受信が禁止 (TXE=RXE=0) のときに設定
してください。
FUJITSU SEMICONDUCTOR LIMITED
535
MB91605A シリーズ
表 24.13-4 シリアルモードレジスタ (SMR) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
機能
bit1
SCKE:
シリアル
クロック出力
許可ビット
シリアルクロックの入出力ポートを制御するビットです。
"0" に設定した場合:
SCK"H" 出力 , または SCK 入力許可となります。SCK 入力とし
て使う場合は汎用入出力ポートを入力ポートに設定してくださ
い。
"1" に設定した場合:SCK 出力許可となります。
bit0
SOE:
シリアル
データ出力
許可ビット
シリアルデータの出力を許可 / 禁止するビットです。
"0" に設定した場合:SOUT"H" 出力となります。
"1" に設定した場合:SOUT 出力許可となります。
<注意事項>
動作モードを変更すると , ほかのレジスタは初期化されますので動作モードを最初に設定
してください。ただし , 16 ビット書込みで SCR と SMR を同時に書き込んだとき , SCR
には書き込んだ内容が反映されます。
536
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
シリアルステータスレジスタ (SSR)
24.13.3
シリアルステータスレジスタ (SSR) は , 送受信状態の確認 , 受信エラーフラグの確
認 , また , 受信エラーフラグをクリアします。
■ シリアルステータスレジスタ (SSR)
図 24.13-3 にシリアルステータスレジスタ (SSR) のビット構成を , 表 24.13-5 に各ビッ
トの機能を示します。
図 24.13-3 シリアルステータスレジスタ (SSR) のビット構成
bit15
bit14
bit13
bit12
REC
-
-
-
R/W
-
-
-
bit11
bit10
bit9
bit8
・・・・・・・・・・・・・・・・・・ bit0
bit7
(ESCR)
ORE RDRF TDRE TBI
R
R
R
初期値
0---0011B
R
TBI
0
1
送信バスアイドルフラグビット
送信中
送信動作なし
TDRE
送信データエンプティフラグビット
0
送信データレジスタTDRにデータが存在する
送信データレジスタTDRが空
1
RDRF
受信データフルフラグビット
0
受信データレジスタRDRが空
1
受信データレジスタRDRにデータが存在する
ORE
0
1
オーバランエラーフラグビット
オーバランエラーなし
オーバランエラーあり
未定義ビット
リード時,値は不定です。ライト時,影響しません。
REC
R/W
R
:リード/ライト可能
:リードオンリ
:初期値
CM71-10147-2
0
1
受信エラーフラグクリアビット
書込み時
読出し時
影響なし
常に"0"をリード
受信エラーフラグ
(ORE)のクリア
FUJITSU SEMICONDUCTOR LIMITED
537
MB91605A シリーズ
表 24.13-5 シリアルステータスレジスタ (SSR) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
bit15
REC:
受信エラー
フラグクリア
ビット
機能
シリアルステータスレジスタ (SSR) の ORE フラグをクリアするビッ
トです。
• "1" 書込みで , エラーフラグがクリアされます。
• "0" 書込みは , 影響しません。
リードした場合 , 常に "0" が読み出されます。
bit14
∼
bit12
未定義ビット
リードした場合 : 値は不定です。
ライトした場合 : 影響しません。
• 受信時にオーバランが発生すると "1" にセットされ , シリアルス
テータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリアさ
れます。
bit11
ORE:
オーバラン
エラーフラグ
ビット
• ORE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力しま
す。
• 本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
• 受信 FIFO 使用時に本フラグがセットされた場合は , 受信 FIFO の許
可ビットがクリアされ , 受信データは受信 FIFO には格納されませ
ん。
• 受信データレジスタ (RDR) の状態を示すフラグです。
• RDR に受信データがロードされると "1" にセットされ , 受信データ
レジスタ (RDR) を読み出すと "0" にクリアされます。
• RDRF ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力し
ます。
bit10
RDRF:
受信データ
フルフラグ
ビット
• 受信FIFO使用時は, 受信FIFOに所定のデータ数を受信したらRDRF
が "1" にセットされます。
• 受信 FIFO 使用時は , 受信 FIFO に所定のデータ数を受信せずに受信
FIFO にデータが残っていて受信アイドル状態がボーレートクロッ
クで 8 クロック以上続いた場合 , RDRF が "1" にセットされます。8
クロックカウント中 , RDR を読み出すとそのカウンタは "0" にリ
セットされ , 再度 8 クロックをカウントします。
• 受信 FIFO 使用時は , 受信 FIFO がエンプティになると "0" にクリア
されます。
538
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-5 シリアルステータスレジスタ (SSR) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
機能
• 送信データレジスタ (TDR) の状態を示すフラグです。
• TDR に送信データを書き込むと "0" となり , TDR に有効なデータが
存在していることを示します。データが送信シフトレジスタにロー
ドされて送信が開始されると "1" になり , TDR に有効なデータが存
bit9
TDRE:
送信データ
エンプティ
フラグビット
在していないことを示します。
• TDRE ビットと TIE ビットが "1" の場合 , 送信割込み要求を出力し
ます。
• シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットすると ,
TDRE ビットは "1" になります。
• 送信 FIFO 使用時の TDRE ビットのセット / リセットタイミングは
「24.14.4 送信 FIFO 使用時の割込み発生とフラグセットの タイミン
グ」を参照してください。
• CSIO が送信動作をしていないことを示すビットです。
• 送信データレジスタ(TDR)へデータを書き込んだ場合に本ビットは
"0" になります。
bit8
TBI:
送信バス
アイドル
フラグビット
• 送信データレジスタ (TDR) がエンプティ (TDRE=1) で , 送信動作を
していない場合に本ビットが "1" になります。
• シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットすると
TDRE ビットは "1" になります。
• 本ビットが "1" で , 送信バスアイドル割込みが許可 (SCR:TBIE=1) さ
れていると送信割込み要求を出力します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
539
MB91605A シリーズ
24.13.4
拡張通信制御レジスタ (ESCR)
拡張通信制御レジスタ (ESCR) は , 送受信データ長の設定 , データ送受信ウェイト選
択 , シリアル出力を "H" 固定の設定ができます。
■ 拡張通信制御レジスタ (ESCR) のビット構成
図 24.13-4 に拡張通信制御レジスタ (ESCR) のビット構成を , 表 24.13-6 に各ビットの
機能を示します。
図 24.13-4 拡張通信制御レジスタ (ESCR) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・・・ bit8
(SSR)
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
SOP
-
-
WT1
WT0
L2
L1
L0
0--00000 B
R/W
-
-
R/W
R/W
R/W
R/W R/W
L2
0
0
0
0
1
R/W
:リード/ライト可能
:初期値
WT1 WT0
0
0
0
1
1
0
1
1
データ長選択ビット
8ビット長
5ビット長
6ビット長
7ビット長
9ビット長
L0
0
1
0
1
0
データ送受信ウエイト選択ビット
0ビット
1ビット
2ビット
3ビット
未定義ビット
リード時,値は不定です。ライト時,影響しません。
SOP
0
1
540
L1
0
0
1
1
0
シリアル出力端子セットビット
書込み時
読出し時
影響なし
常に”0”をリード
SOUT端子を ”H”にセット
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-6 拡張通信制御レジスタ (ESCR) の各ビットの機能説明
ビット名
機能
• シリアル出力端子を "H" にセットするビットです。本ビットに "1" を書い
bit7
bit6,
bit5
bit4,
bit3
SOP:
シリアル出力
端子セット
ビット
たときに SOUT 端子を "H" にしますが , その後 , 本ビットに "0" を書く必
要はありません。
• リードした場合 , 常に "0" が読み出されます。
( 注意事項 )
シリアルデータ送信中に , 本ビットの設定をしないでくださ
い。
未定義ビット
リードした場合:値は不定です。
ライトした場合:影響しません。
WT1, WT0:
データ送受信
ウェイト選択
ビット
マスタ時 , 連続データの送信または受信に対し , ウェイト数を指定します。
スレーブ時は "00" の動作になります。
・"00" に設定した場合 : 連続的に SCK が出力されます。
・"01" に設定した場合 : 1 ビット時間ウェイト後 , SCK が出力されます。
・"10" に設定した場合 : 2 ビット時間ウェイト後 , SCK が出力されます。
・"11" に設定した場合 : 3 ビット時間ウェイト後 , SCK が出力されます。
送受信データのデータ長を指定します。
"000B" に設定した場合:データ長は , 8 ビットに設定されます。
bit2
∼
bit0
L2 ∼ L0:
データ長選択
ビット
"001B" に設定した場合:データ長は , 5 ビットに設定されます。
"010B" に設定した場合:データ長は , 6 ビットに設定されます。
"011B" に設定した場合:データ長は , 7 ビットに設定されます。
"100B" に設定した場合:データ長は , 9 ビットに設定されます。
( 注意事項 )
CM71-10147-2
上記の設定以外は禁止です。
FUJITSU SEMICONDUCTOR LIMITED
541
MB91605A シリーズ
24.13.5
受信データレジスタ / 送信データレジスタ
(RDR/TDR)
受信データと送信データレジスタは同一アドレスに配置されています。読み出した
場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレジスタと
して機能します。
■ 受信データレジスタ (RDR)
図 24.13-5 にシリアル受信レジスタ (RDR) のビット構成を示します。
図 24.13-5 受信データレジスタ (RDR) のビット構成
bit15................bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D8
D7
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
R
R
初期値
00000000B
R:リードオンリ
受信データレジスタ (RDR) は , シリアルデータ受信用の 9 ビットのデータバッファレ
ジスタです。
• シリアル入力端子 (SIN 端子 ) に送られてきたシリアルデータ信号がシフトレジスタ
で変換されて , 受信データレジスタ (RDR) に格納されます。
• データ長に応じ , 以下のように上位ビットから順に "0" となります。
データ長
D8
D7
D6
D5
D4
D3
D2
D1
D0
9 ビット
X
X
X
X
X
X
X
X
X
8 ビット
0
X
X
X
X
X
X
X
X
7 ビット
0
0
X
X
X
X
X
X
X
6 ビット
0
0
0
X
X
X
X
X
X
5 ビット
0
0
0
0
X
X
X
X
X
(X は受信データビット )
• 受信データが受信データレジスタ (RDR) に格納されると , 受信データフルフラグ
ビット (SSR:RDRF) が "1" にセットされます。受信割込みが許可されている場合は
(SSR:RIE=1) , 受信割込み要求を発生します。
• 受信データレジスタ (RDR) は , 受信データフルフラグビット (SSR:RDRF) が "1" の状
態で読み出してください。受信データフルフラグビット (SSR:RDRF) は , シリアル受
信データレジスタ (RDR) を読み出すと自動的に "0" にクリアされます。
• 受信エラーが発生 (SSR:ORE) した場合 , 受信データレジスタ (RDR) のデータは無
効となります。
• 9 ビット長転送の場合の RDR の読出しは 16 ビットアクセスで行います。
542
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
<注意事項>
• 受信 FIFO 使用時は , 受信 FIFO に所定のデータ数を受信したら RDRF が "1" にセット
されます。
• 受信 FIFO 使用時は , 受信 FIFO がエンプティになると RDRF が "0" にクリアされます。
• 受信 FIFO 使用時に , 受信エラーが発生 (SSR:ORE が "1") した場合 , 受信 FIFO の許
可ビットはクリアされ , 受信データを受信 FIFO には格納しません。
■ 送信データレジスタ (TDR)
図 24.13-6 に送信データレジスタのビット構成を示します。
図 24.13-6 送信データレジスタ (TDR) のビット構成
bit15................bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D8
D7
D6
D5
D4
D3
D2
D1
D0
W
W
W
W
W
W
W
W
W
初期値
11111111B
W:ライトオンリ
送信データレジスタ (TDR) は , シリアルデータ送信用の 9 ビットデータバッファレジ
スタです。
• 送信動作が許可されている場合に (SCR:TXE=1) , 送信するデータを送信データレ
ジスタ (TDR) に書き込むと送信データが送信用シフトレジスタに転送され , シリア
ルデータに変換されてシリアルデータ出力端子 (SOUT 端子 ) から送出されます。
• データ長に応じ , 以下のように上位ビットから順に無効データとなります。
データ長
D8
D7
D6
D5
D4
D3
D2
D1
D0
9 ビット
X X
X
X
X
X
X
X
X
8 ビット
無効
X
X
X
X
X
X
X
X
7 ビット
無効
無効
X
X
X
X
X
X
X
6 ビット
無効
無効
無効
X
X
X
X
X
X
5 ビット
無効
無効
無効
無効
X
X
X
X
X
(X は送信データビット )
• 送信データエンプティフラグ (SSR:TDRE) は , 送信データが送信データレジスタ
(TDR) に書き込まれると "0" にクリアされます。
• 送信データエンプティフラグ (SSR:TDRE) は , 送信データが送信用シフトレジスタ
へ転送されて送信が開始されると , 送信 FIFO が禁止または送信 FIFO がエンプティ
の場合 , "1" にセットされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
543
MB91605A シリーズ
• 送信データエンプティフラグ (SSR:TDRE) が "1" の場合は , 次の送信用データを書
き込むことができます。送信割込みが許可されている場合には送信割込みが発生し
ます。次の送信データの書込みは , 送信割込みの発生によるか , 送信データエンプ
ティフラグ (SSR:TDRE) が "1" の状態で行ってください。
• 送信データエンプティフラグ (SSR:TDRE) が "0" で送信 FIFO が禁止または送信
FIFO がフルのときは , 送信データレジスタ (TDR) に送信データを書き込むことはで
きません。
• 9 ビット長転送の場合 , TDR への書込みは 16 ビットアクセスで行います。
<注意事項>
• 送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読出し専用の
レジスタです。2 つのレジスタは同一アドレスに配置されているため , 書込み値と読出
し値が異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW)
系命令は使用できません。
• 送信 FIFO 使用時の送信データエンプティフラグ (SSR:TDRE) のセットタイミングは ,
「24.14.4 送信 FIFO 使用時の割込み発生とフラグセットの タイミング」を参照してく
ださい。
544
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)
24.13.6
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) は , シリアルクロックの分周
比を設定します。
■ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成
図 24.13-7 にボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成を示し
ます。
図 24.13-7 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成
bit15
bit14
bit13
bit12
-
bit11
bit10
bit9
bit8
bit7
bit6
bit5
bit4
R/W
R/W
R/W
R/W
bit3
bit2
bit1
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
bit0
(BGR0)
(BGR1)
-
R/W
R/W
-0000000B
00000000B
BGR0
ライト
リード
ボーレートジェネレータレジスタ0
リロードカウンタビット0~7に書込み
BGR0の設定値の読出し
BGR1
ライト
リード
ボーレートジェネレータレジスタ1
リロードカウンタビット8~14に書込み
BGR1の設定値の読出し
未定義ビット
リードした場合,値は不定です。
ライトした場合,影響しません。
R/W :リード/ライト可能
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) に値を設定します。
• BGR0 は下位ビット , BGR1 は上位ビットに対応し , カウントするリロード値の書き
込み , BGR0/BGR1 の設定値の読出しが可能です。
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むとリ
ロードカウンタはカウントを開始します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
545
MB91605A シリーズ
<注意事項>
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) への書込みは , 16 ビットアクセ
スで行ってください。
• リロード値が偶数の場合 , シリアルクロックの "H" 幅と "L" 幅は SCINV ビットの設定
によって以下のようになります。奇数の場合 , シリアルクロックの "H" 幅と "L" 幅は同
じになります。
- SCINV=0 のとき , シリアルクロックの "H" 幅が周辺クロック (PCLK) 1 サイクル分
長くなります。
- SCINV=1 のとき , シリアルクロックの "L" 幅が周辺クロック (PCLK) 1 サイクル分長
くなります。
• リロード値は 1 以上を設定してください。ただし , 本 CSIO どうしをマスタとスレーブ
に使用する場合には , マスタとなる CSIO のリロード値は 3 以上を設定してください。
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) の設定値を変更した場合 , カウ
ンタ値が "0000H" になってから , 新しい設定値がリロードされます。したがって , 新し
い設定値を即有効にしたい場合は , BGR0/BGR1 の設定値を変更した後 , CSIO リセッ
ト (UPCL) を実行してください。
• 受信 FIFO 使用時 , 受信 FIFO アイドル検出許可ビット (FCR1:FRIIE) を "1" に設定して
スレーブモードで動作させる場合 , BGR0/BGR1 にボーレートを設定してください。
546
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.13.7
FIFO 制御レジスタ 1(FCR1)
FIFO 制御レジスタ 1 (FCR1) は , 送受信 FIFO の選択 , 送信 FIFO 割込み許可の設定
および割込みフラグの制御を行います。
■ FIFO 制御レジスタ 1(FCR1) のビット構成
図 24.13-8 に FIFO 制御レジスタ 1 (FCR1) のビット構成を , 表 24.13-7 に各ビットの機
能を示します。
図 24.13-8 FIFO 制御レジスタ 1(FCR1) のビット構成
bit15
bit14
bit13
予約
予約
-
R/W
R/W
-
bit12
bit11
FLSTE FRIIE
R/W
R/W
bit10
bit9
FDRQ FTIE
R/W
R/W
bit8
・・・・・・・・・・・・・・・・・・・・・
bit7
bit0
(FCR0)
FSEL
初期値
00-00100B
R/W
FSEL
0
1
FIFO選択ビット
送信FIFO:FIFO1, 受信FIFO:FIFO2
送信FIFO:FIFO2, 受信FIFO:FIFO1
FTIE
0
1
送信FIFO割込み許可ビット
送信FIFO割込み禁止
送信FIFO割込み許可
FDRQ
送信FIFOデータ要求ビット
送信FIFOデータ要求なし
送信FIFOデータ要求あり
0
1
FRIIE
0
1
受信FIFOアイドル検出許可ビット
受信FIFOアイドル検出禁止
受信FIFOアイドル検出許可
FLSTE
0
1
再送データロスト検出許可ビット
データロスト検出禁止
データロスト検出許可
未定義ビット
リード時,値は不定です。ライト時,影響しません。
R/W
:リード/ライト可能
予約ビット
常に"0"を設定してください。
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
547
MB91605A シリーズ
表 24.13-7 FIFO 制御レジスタ 1(FCR1) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
機能
bit15,
bit14
予約ビット
本ビットには必ず "00B" を設定してください。
bit13
未定義ビット
リードした場合:値は不定です。
ライトした場合:影響しません。
bit12
FLSTE:
再送データ
ロスト検出
許可ビット
FLST ビット検出を許可するビットです。
"0" に設定した場合:FLST ビット検出禁止
"1" に設定した場合:FLST ビット検出許可
( 注意事項 ) 本ビットに "1" を設定する場合 , FSET ビットに "1"
を設定してから本ビットに "1" を設定してください。
FRIIE:
受信 FIFO
アイドル検出
許可ビット
受信 FIFO に有効なデータが存在した状態でボーレートクロックで
8 クロック以上の受信アイドル状態を検出するかどうかを設定する
ビットです。受信割込みが許可 (SCR:RIE=1) されていると , 受信ア
イドル状態が検出されると受信割込みが発生します。
"0" に設定した場合:受信アイドル状態検出禁止
"1" に設定した場合:受信アイドル状態検出許可
bit11
送信 FIFO のデータ要求ビットです。
本ビットが "1" のとき , 送信データを要求していることを示しま
す。このとき , 送信 FIFO 割込みが許可 (FTIE=1) されていると , 送
信 FIFO 割込み要求を出力されます。
FDRQ セット条件
• FBYTE1/FBYTE2( 送信用 )=0 ( 送信 FIFO がエンプティ )
• 送信 FIFO のリセット
bit10
FDRQ:
送信 FIFO
データ要求
ビット
FDRQ リセット条件
• 本ビットへの "0" 書込み
• 送信 FIFO がフルになった場合
( 注意事項 )
bit9
548
FTIE:
送信 FIFO 割込み
許可ビット
FBYTE1/FBYTE2( 送信用 )=0 のときに本ビットへの
"0" 書込みは禁止です。
本ビットが "0" のときに FSEL ビットの変更は禁止
です。
本ビットに "1" を設定した場合 , 動作に影響を与えま
せん。
リードモディファイライト (RMW) 系命令時 , "1" が
読み出されます。
送信 FIFO の割込み許可ビットです。本ビットに "1" を設定すると
FDRQ ビットが "1" のときに割込みが発生します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-7 FIFO 制御レジスタ 1(FCR1) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
bit8
FSEL:
FIFO 選択
ビット
CM71-10147-2
機能
送受信 FIFO を選択するビットです。
"0" に設定した場合:送信 FIFO:FIFO1, 受信 FIFO:FIFO2 に割り
当てられます。
"1" に設定した場合:送信 FIFO:FIFO2, 受信 FIFO:FIFO1 に割り
当てられます。
( 注意事項 ) 本ビットは , FIFO リセット (FCL2, FCL1=1) ではクリ
アされません。
本ビットを変更する場合は , FIFO 動作禁止 (FCR0:
FE2, FE1=0) にしてから行ってください。
FUJITSU SEMICONDUCTOR LIMITED
549
MB91605A シリーズ
FIFO 制御レジスタ 0(FCR0)
24.13.8
FIFO 制御レジスタ 0(FCR0) は , FIFO 動作の許可 / 禁止 , FIFO リセット , リードポ
インタの保存 , 再送信設定を行います。
■ FIFO 制御レジスタ 0(FCR0) のビット構成
図 24.13-9 に FIFO 制御レジスタ 0 (FCR0) のビット構成を , 表 24.13-8 に各ビットの機
能を示します。
図 24.13-9 FIFO 制御レジスタ 0(FCR0) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・・・ bit8
bit7
-
(FCR1)
( -)
FSET
0
1
:初期値
550
bit2
bit1
R
R/W
R/W
R/W
R/W
R/W
FIFO2動作許可ビット
FIFO2動作禁止
FIFO2動作許可
0
1
:リードオンリ
bit3
FE2
0
1
FCL2
R
bit4
FIFO1動作許可ビット
FIFO1動作禁止
FIFO1動作許可
0
1
:リード/ライト可能
bit5
FE1
0
1
FCL1
R/W
bit6
FLST FLD FSET FCL2 FCL1 FE2
bit0
初期値
FE1 -0000000B
R/W
FIFO1リセットビット
書込み時
読出し時
影響なし
常に”0”をリード
FIFO1リセット
FIFO2 リセットビット
書込み時
読出し時
影響なし
常に”0”をリード
FIFO2リセット
FIFOポインタ保存ビット
書込み時
読出し時
保存しない
常に”0”をリード
保存実行
FLD
0
1
FIFOポインタリロードビット
リロードしない
リロード実行
FLST
0
1
FIFO再送データロストフラグビット
データロストなし
データロストあり
未定義ビット
リード時,常に "0" をリード。ライト時,常に "0" をライト
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.13-8 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
bit7
未定義ビット
機能
リードした場合:常に "0" が読み出されます。
ライトした場合:常に "0" を書き込んでください。
送信 FIFO の再送データが失われたことを示すビットです。
FLST セット条件
• FIFO 制御レジスタ 1(FCR1) の FLSTE ビットが "1" で送信 FIFO のラ
イトポインタと FSET ビットによって保存したリードポインタが一
致しているときに FIFO へ書き込んだ場合
bit6
FLST:
FIFO 再送
データロスト
フラグビット
FLST リセット条件
• FIFO リセット (FCL への "1" 書込み )
• FLST ビットへの "1" 書込み
本ビットに "1" が設定されると FSET ビットで保存したリードポイン
タが示すデータを上書きしてしまい , エラーが発生しても FLD ビット
によって再送の設定ができません。本ビットに "1" が設定された状態
で再送を行う場合には FIFO リセットを実施し , 再度 FIFO にデータを
書き込んでください。
bit5
bit4
bit3
FLD:
FIFO ポインタ
リロード
ビット
送信 FIFO に FSET ビットによって保存したデータをリードポインタ
にリロードするビットです。本ビットは通信エラーなどが発生して再
送するときに使用します。
再送設定が完了した場合 , 本ビットは "0" になります。
( 注意事項 ) 本ビットが "1" にセットされている間 , リードポインタ
へのリロード中なので FIFO リセット以外の書込みは行
わないでください。
FIFO 許可状態または送信中 , 本ビットに "1" を設定する
ことは禁止です。
TIE ビットと TBIE ビットは "0" にしてから本ビットに
"1" を書き込み , 送信 FIFO 許可後 , TIE ビットと TBIE
ビットを "1" にしてください。
FSET:
FIFO ポインタ
保存ビット
送信 FIFO のリードポインタを保存するビットです。
送信前にリードポインタを保存すると , 通信エラーなどが発生した場
合 , FLST ビットが "0" であれば再送可能となります。
"1" に設定した場合:現在のリードポインタの値を保存します。
"0" に設定した場合:影響しません。
( 注意事項 ) 送信バイト数 (FBYTE1/FBYTE2) が "0" を示していると
きに本ビットを "1" に設定してください。
FCL2:
FIFO2
リセット
ビット
FIFO2 をリセットするビットです。
本ビットを "1" に設定すると , FIFO2 の内部状態を初期化します。
FCR0:FLST ビットのみ初期化され , FCR1/FCR0 レジスタのほかのビッ
トは保持されます。
( 注意事項 ) 送受信を禁止してから , FIFO2 リセットを実行してくだ
さい。
送信 FIFO 割込み許可ビットを "0" にしてから実行して
ください。
FBYTE2 レジスタの有効データ数は "0" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
551
MB91605A シリーズ
表 24.13-8 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
bit2
FCL1:
FIFO1
リセット
ビット
機能
FIFO1 をリセットするビットです。
本ビットを "1" に設定すると , FIFO1 の内部状態を初期化します。
FCR1:FLST1 ビットのみ初期化され , FCR1/FCR0 レジスタのほかの
ビットは保持されます。
( 注意事項 ) 送受信を禁止してから , FIFO1 リセットを実行してくだ
さい。
送信 FIFO 割込み許可ビットを "0" にしてから実行して
ください。
FBYTE1 レジスタの有効データ数は "0" になります。
FIFO2 の動作を許可 / 禁止するビットです。
• FIFO2 を使用する場合 , 本ビットに "1" を設定してください。
• FIFO2 を送信 FIFO に設定し (FCR1:FSEL=1), 本ビットに "1" を書き
込んだときに FIFO2 にデータが存在し , UART が送信許可 (TXE=1)
のとき , 直ちに送信を開始します。このとき , TIE ビットと TBIE ビッ
トを "0" にしてから本ビットに "1" を書き込み , TIE ビットと TBIE
bit1
FE2:
FIFO2 動作
許可ビット
ビットを "1" にしてください。
• FSEL ビットによって受信 FIFO として選択された場合 , 受信エラー
が発生すると本ビットは "0" にクリアされ , 受信エラーがクリアさ
れない限り , 本ビットに "1" を設定することはできません。
• 送信 FIFO で使用する場合には送信バッファがエンプティ(TDRE=1),
受信 FIFO で使用する場合には受信バッファがエンプティ(RDRF=0)
のときに本ビットに "1" または "0" を設定してください。
• FIFO2 を禁止にしても FIFO2 の状態は保持されます。
FIFO1 の動作を許可 / 禁止するビットです。
• FIFO1 を使用する場合 , 本ビットに "1" を設定してください。
• FIFO1 を送信 FIFO に設定し (FCR1:FSEL=0), 本ビットに "1" を書き
込んだときに FIFO1 にデータが存在し , UART が送信許可 (TXE=1)
のとき , 直ちに送信を開始します。このとき , TIE ビットと TBIE ビッ
トを "0" にしてから本ビットに "1" を書き込み , TIE ビットと TBIE
bit0
FE1:
FIFO1 動作
許可ビット
ビットを "1" にしてください。
• FSEL ビットによって受信 FIFO として選択された場合 , 受信エラー
が発生すると本ビットは "0" にクリアされ , 受信エラーがクリアさ
れない限り , 本ビットに "1" を設定することはできません。
• 送信 FIFO で使用する場合には送信バッファがエンプティ(TDRE=1),
受信 FIFO で使用する場合には受信バッファがエンプティ(RDRF=0)
のときに本ビットに "1" または "0" を設定してください。
• FIFO1 を禁止にしても FIFO1 の状態は保持されます。
552
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
FIFO バイトレジスタ (FBYTE1/FBYTE2)
24.13.9
FIFO バイトレジスタ (FBYTE1/FBYTE2) は , FIFO の有効なデータ数を示します。
■ FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成
図 24.13-10 に FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成を示します。
図 24.13-10 FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
bit7
bit6
bit5
bit4
R/W
R/W
R/W
R/W
R/W
bit3
bit2
bit1
bit0
(FBYTE1)
(FBYTE2)
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
R/W
R/W
R/W
FBYTE1
ライト
リード
FIFO1データ数表示ビット
転送数を設定
有効なデータ数を読出し
FBYTE2
ライト
リード
FIFO2データ数表示ビット
転送数を設定
有効なデータ数を読出し
00000000B
R/W : リード/ライト可能
リード(有効なデータ数)
送信時:FIFOに書き込まれ, 送信されていないデータ数
受信時:FIFOに受信されたデータ数
ライト(転送数)
送信時:00Hに設定
受信時:受信割込み発生のデータ数を設定
FBYTE1/FBYTE2 レジスタは , FIFO の有効なデータ数を示し , FCR1:FSEL ビットの設
定によって以下のようになります。
表 24.13-9 データ数表示
FSEL
FIFO 選択
バイト数表示
0
FIFO2:受信 FIFO, FIFO1:送信 FIFO
FIFO2:FBYTE2, FIFO1:FBYTE1
1
FIFO2:送信 FIFO, FIFO1:受信 FIFO
FIFO2:FBYTE2, FIFO1:FBYTE1
• FBYTE レジスタの転送数の初期値は "08H" です。
• 受信 FIFO の FBYTE に受信割込みフラグを発生させるデータ数を設定します。その
設定された転送数と FBYTE レジスタのデータ表示が一致すると割込みフラグ
(RDRF) が "1" にセットされます。
• 受信 FIFO アイドル検出許可ビット (FRIIE) が "1" で受信 FIFO に存在するデータ数が
転送数に達しない場合 , 受信アイドル状態がボーレートクロックで 8 クロック以上続
くと割込みフラグ (RDRF) が "1" にセットされます。8 クロックカウント中 , RDR を
読み出すとそのカウンタは "0" にリセットされ , 再度 8 クロックをカウントします。
受信 FIFO が禁止されるとそのカウンタは "0" にリセットされます。受信 FIFO にデー
タが残っている状態で受信 FIFO を許可すると再度 , カウントを開始します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
553
MB91605A シリーズ
• マスタ動作でデータを受信する場合 ( マスタ受信 ), TIE ビットと TBIE ビットを "0"
にして送信 FIFO の FBYTE1/FBYTE2 レジスタに受信データ数を設定し , FDRQ ビッ
トに "0" を書きます。その後 , TXE ビットが "1" のときに設定データ分のシリアル
クロックが出力され , 設定値分データを受信することができます。
TIE ビット , TBIE
ビットに "1" を設定したい場合には FDRQ が "1" になった後に "1" に設定してくだ
さい。
<注意事項>
• マスタ動作で , データを受信するとき以外 , 送信 FIFO の FBYTE1/FBYTE2 には "00H"
を設定してください。
• マスタ動作でデータを受信するときの送信データ数の設定は送信FIFOがエンプティで
TIE ビット , TBIE ビットが "0" のときに行ってください。
• マスタ動作でデータを受信中に受信禁止 (RXE=0) にする場合には , 送信 FIFO を禁止
にしてから送受信を禁止にしてください。
• 受信 FIFO の FBYTE1/FBYTE2 には "1" 以上のデータを設定してください。
• 受信 FIFO の FBYTE1/FBYTE2 の変更は受信を禁止してから変更してください。
• 本レジスタはリードモディファイライト (RMW) 系命令を使用することはできません。
• FIFO 容量を超えた設定は禁止です。
554
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.13.10 シリアルモード選択レジスタ (SSEL89AB)
4 チャネルの CSIO を 1 つのクロックで同時に動作させ , 4 ビットのシリアル通信を
行うことができます。
4 チャネル同時通信ができるのは , ch.8 ∼ ch.11 の組合せになります。
■ シリアルモード選択レジスタ (SSEL89AB) のビット構成
図 24.13-11 にシリアルモード選択レジスタ (SSEL89AB) のビット構成を示します。
図 24.13-11 シリアルモード選択レジスタ (SSEL89AB) のビット構成
bit7
bit6
bit5
bit4
bit3
bit2
bit1
-
-
-
-
-
-
SS1 SS0
-
-
-
-
-
-
R/W R/W
SS1
0
0
1
1
R/W
-
:リード/ライト可能
:未定義
:初期値
SS0
0
1
0
1
bit0
初期値
------00 B
シリアルモード選択ビット
通常モード
4ビットマスタモード
4ビットスレーブモード
未定義ビット
リード時, 値は不定です。ライト時, 影響しません。
<注意事項>
このレジスタは CSIO の動作が停止しているときに設定してください。
[bit7 ∼ bit2]:未定義ビット
CM71-10147-2
書込み時
無視されます。
読出し時
値は不定です。
FUJITSU SEMICONDUCTOR LIMITED
555
MB91605A シリーズ
[bit1, bit0]:SS1, SS0 ( シリアルモード選択ビット )
CSIO を 4 チャネル同時に通信させるかどうかを選択します。また , 4 チャネル同時通
信させる場合は , 動作モードも選択します。
動作モードは次の通りです。
• 通常モード
: 4 チャネル同時通信を利用しないモードです。
• 4 ビットマスタモード
: ch.8 ∼ ch.11 をマスタモードで 4 チャネル同時に通信しま
す。
• 4 ビットスレーブモード : ch.8 ∼ ch.11 をスレーブモードで 4 チャネル同時に通信し
ます。
SS1
SS0
0
0
0
1
1
0
4 ビットマスタモードに設定します。
1
1
4 ビットスレーブモードに設定します。
説明
通常モードに設定します。
<注意事項>
• 4 ビットマスタモードに設定する場合は , シリアル制御レジスタ (SCR) の MS ビット
で次の設定をしてください。
- ch.8 ∼ ch.10: スレーブモード
- ch.11: マスタモード
• 4 ビットスレーブモードに設定する場合は , シリアル制御レジスタ (SCR) の MS ビッ
トで同時通信するすべてのチャネルをスレーブモードにしてください。
556
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.13.11 受信データミラーレジスタ / 送信データミラーレジスタ
(RDRM/TDRM)
受信データミラーレジスタ (RDRM) は , 受信データレジスタ (RDR) の下位 8 ビット
のミラーレジスタです。
送信データミラーレジスタ (TDRM) は , 送信データレジスタ (TDR) の下位 8 ビット
のミラーレジスタです。
このレジスタにアクセスすると受信データレジスタ (RDR) の下位 8 ビット / 送信デー
タレジスタ (TDR) の下位 8 ビットにアクセスできます。
4 チャネル同時通信を利用するときに , このレジスタを使用してください。
■ 受信データミラーレジスタ (RDRM)
受信データミラーレジスタ 8 (RDRM8) が受信データレジスタ 8 (RDR8) の下位 8 ビッ
トに , 受信データミラーレジスタ B (RDRMB) が受信データレジスタ B (RDRB) の下位
8 ビットに対応しています。
ch.8 ∼ ch.11 の受信データミラーレジスタ (RDRM) は並んで配置されているため, ワー
ドアクセスすることで , 一度に読み出すことができます。DMA 転送などに利用してく
ださい。
詳しくは , 「24.15 CSIO( クロック同期シリアルインタフェース ) の 動作」の
「■ 4 チャネル同時通信モード時の動作」を参照してください。
<注意事項>
4 チャネル同時通信を使用する場合は , 9 ビット長のデータは使用できません。
■ 送信データミラーレジスタ (TDRM)
送信データミラーレジスタ 8 (TDRM8) が送信データレジスタ 8 (TDR8) の下位 8 ビット
に , 送信データミラーレジスタ B (TDRMB) が送信データレジスタ B (TDRB) の下位 8
ビットに対応しています。
ch.8 ∼ ch.11 の送信データミラーレジスタ (TDRM) は並んで配置されているため , ワー
ドアクセスすることで , 一度に書き込むことができます。DMA 転送などに利用してく
ださい。
詳しくは , 「24.15 CSIO( クロック同期シリアルインタフェース ) の 動作」の
「■ 4 チャネル同時通信モード時の動作」を参照してください。
<注意事項>
4 チャネル同時通信を使用する場合は , 9 ビット長のデータは使用できません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
557
MB91605A シリーズ
24.14
CSIO( クロック同期シリアルインタフェース ) の割込み
CSIO ( クロック同期シリアルインタフェース ) の割込みには受信割込みと送信割込
みがあり , 次に示す要因で割込み要求を発生させることができます。
• 受信データが受信データレジスタ (RDR) にセットされた場合 , または受信エラー
が発生した場合
• 送信データが送信データレジスタ (TDR) から送信用シフトレジスタに転送され ,
送信が開始された場合
• 送信バスアイドル ( 送信動作なし )
• 送信 FIFO データ要求
■ CSIO の割込み
CSIO の割込み制御ビットと割込み要因は表 24.14-1 のようになっています。
表 24.14-1 CSIO の割込み制御ビットと割込み要因
割込み
割込み 要求
フラグ
の種類 フラグ レジスタ
ビット
割込み要因
割込み要因
許可ビット
1 バイト受信
割込み要求
フラグのクリア
受信データ (RDR) の読出し
FBYTE1/FBYTE2 設定
値分受信
RDRF
SSR
受信
ORE
TDRE
SSR
SSR
FRIIE ビットが "1" で受
信 FIFO に有効なデー
タが存在した状態で
ボーレートクロックで
8 クロック以上の受信
アイドル状態検出
SCR:RIE
受信 FIFO がエンプティになるまでの
受信データ (RDR) の読出し
オーバランエラー
受信エラーフラグクリアビット
(SSR:REC) への "1" 書込み
送信レジスタが
エンプティ
送信データ (TDR) への書込み , また
は送信 FIFO 動作許可ビットが "0" で
送信 FIFO に有効なデータが存在して
いるときに送信 FIFO 動作許可ビット
への "1" 書込み ( 送信再送 ) *
SCR:TIE
TBI
SSR
送信動作なし
送信データ (TDR) への書込み , また
は送信 FIFO 動作許可ビットが "0" で
SCR:TBIE 送信 FIFO に有効なデータが存在して
いるときに送信 FIFO 動作許可ビット
への "1" 書込み ( 送信再送 ) *
FDRQ
FCR1
送信 FIFO が
エンプティ
FIFO 送信データ要求ビット
FCR1:FTIE (FCR1:FDRQ) への "0" 書込みまたは
送信 FIFO がフル
送信
* : TDRE ビットが "0" になってから TIE ビットを "1" にしてください。
558
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
受信割込み発生とフラグセットのタイミング
24.14.1
受信時の割込みとしては , 受信完了 (SSR:RDRF) および受信エラーの発生 (SSR:
ORE) があります。
■ 受信割込み発生とフラグセットのタイミング
最終データビットが検出されることにより , 受信データが受信データレジスタ (RDR)
に格納されます。受信が完了したとき (SSR:RDRF=1) または受信エラーが発生 (SSR :
ORE=1) すると各フラグがセットされます。そのとき , 受信割込みが許可 (SSR : RIE=1)
されていると受信割込みが発生します。
<注意事項>
受信エラーが発生した場合は , 受信データレジスタ (RDR) のデータは無効となります。
図 24.14-1 受信動作とフラグセットのタイミング
SCK
D0
SIN
D1
D2
D3
D4
D5
D6
D7
受信データ
サンプリング
RDRF
受信割込み発生
(注意事項)
図は, 以下の条件でのタイミングを表しています。
SCR:MS=1, SPI=0
ESCR:L2~L0=000B
SMR:SCINV=0, BDS=0, SCKE=0, SOE=0
図 24.14-2 ORE( オーバランエラー ) フラグセットタイミング
SCK
SIN
D0
D1
D2
D3
D4
D5
D6
D7
D0
D1
D2
D3
D4
D5
D6 D7
受信データ
サンプリング
RDRF
ORE
(注意事項)
オーバランエラー発生
・図は, 以下の条件でのタイミングを表しています。
SCR:MS=1, SPI=0
ESCR:L2~L0=000B
SMR:SCINV=0, BDS=0, SCKE=0, SOE=0
・受信データが読み出される前に(RDRF=1), 次のデータが転送されるとオーバランエラーが発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
559
MB91605A シリーズ
24.14.2
受信 FIFO 使用時の割込み発生とフラグセットの
タイミング
受信 FIFO 使用時の割込みは , FBYTE1/FBYTE2 レジスタ (FBYTE1/FBYTE2) の設
定値分のデータを受信すると発生します。
■ 受信 FIFO 使用時の受信割込み発生とフラグセットのタイミング
受信 FIFO 使用時の割込み発生は , FBYTE1/FBYTE2 レジスタの設定値によって決定さ
れます。
• FBYTE1/FBYTE2 レジスタの転送数設定分のデータを受信するとシリアルステータ
スレジスタの受信データフルフラグ (SSR:RDRF) が "1" にセットされます。このと
き , 受信割込みが許可 (SCR:RIE) されていると受信割込みを発生します。
• 受信 FIFO アイドル検出許可ビット (FRIIE) が "1" で受信 FIFO に存在するデータ数
が転送数に達しない場合 , 受信アイドル状態がボーレートクロックで 8 クロック以
上続くと割込みフラグ (RDRF) が "1" にセットされます。8 クロックカウント中 ,
RDR を読み出すとそのカウンタは "0" にリセットされ , 再度 8 クロックをカウント
します。受信 FIFO が禁止されるとそのカウンタは "0" にリセットされます。受信
FIFO にデータが残っている状態で受信 FIFO を許可すると再度 , カウントを開始し
ます。
• 受信 FIFO がエンプティになるまで受信データ (RDR) を読み出すと , 受信データフ
ルフラグ (SSR:RDRF) はクリアされます。
• 受信有効データ数表示が FIFO 容量を示した状態で , 次のデータを受信するとオーバ
ランエラー (SSR:ORE=1) が発生します。
図 24.14-3 受信 FIFO 使用時の受信割込み発生タイミング
SCK
受信データ
1バイト目
2バイト目
3バイト目
4バイト目
6バイト目
7バイト目
3
FIFOBYTE(受信)
有効バイト表示
5バイト目
0
1
2
3 2
1 0
1
2
3
2 1
0
1
RDRF
RDR の読出し
FBYTE設定(転送数)と受信データ数が
一致したことにより割込み発生
560
全受信データの読出し
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
図 24.14-4 ORE ( オーバランエラー ) フラグビットのセットタイミング
SCK
受信データ
12バイト目 13バイト目 14バイト目 15バイト目 16バイト目 17バイト目 18バイト目
12
FIFOBYTE(受信)
有効バイト表示
11
12
13
14
15
16
RDRF
ORE
FIFOBYTE(受信)設定数+1と受信データ数が
一致したことにより割込みを発生
オーバランエラー発生
(注意事項) FIFO表示がFIFO容量を示した状態で, 次のデータを受信すると, オーバランエラーが発生します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
561
MB91605A シリーズ
24.14.3
送信割込み発生とフラグセットのタイミング
送信時の割込みとしては , 送信データが送信データレジスタ (TDR) から送信用シフ
トレジスタに転送され (SSR:TDRE=1) て送信が開始された場合と , 送信動作をし
ていないとき (SSR:TBI=1) に発生します。
■ 送信割込み発生とフラグセットのタイミング
● 送信データエンプティフラグ (TDRE) のセットタイミング
送信データレジスタ (TDR) に書き込まれたデータが送信シフトレジスタに転送される
と , 次のデータの書込みが可能な状態 (SSR:TDRE=1) になります。そのとき , 送信割込
みが許可 (SCR:TIE=1) されていると送信割込みが発生します。TDRE ビットはリード
オンリビットなので , 送信データレジスタ (TDR) へのデータ書込みにより "0" にクリア
されます。
図 24.14-5 送信データエンプティフラグ (TDRE) のセットタイミング
SCK
D0
送信データ
D1
D2
D3
D4
D5
D6
D7
D0
D1
D2
D3
D4
D5
TDRE
TDR への書込み
送信割込みが発生
● 送信バスアイドルフラグ (TBI) のセットタイミング
送信データレジスタがエンプティ (TDRE=1) で送信動作をしていないとき , SSR:TBI
ビットは "1" にセットされます。このとき , 送信バスアイドル割込みが許可 (SCR:
TBIE=1) されていると送信割込みが発生します。送信データレジスタ (TDR) に送信デー
タをセットすると , TBI ビットおよび送信割込み要求はクリアされます。
図 24.14-6 送信バスアイドルフラグ (TBI) のセットタイミング
SCK
送信データ
D0
D1
D2
D3
D4
D5
D6
D7
D0
D1
D2
D3
D4
D5
TBI
TDRE
TDRへの書込み
562
バスアイドルによる
送信割込みが発生
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.14.4
送信 FIFO 使用時の割込み発生とフラグセットの
タイミング
送信 FIFO 使用時の割込みは , 送信 FIFO にデータが存在しないときに発生します。
■ 送信 FIFO 使用時の送信割込み発生とフラグセットのタイミング
• 送信 FIFO にデータが存在しない場合 , FIFO 送信データ要求ビット (FCR1:FDRQ)
が "1" にセットされます。このとき , FIFO 送信割込みが許可 (FCR1:FTIE=1) され
ていると送信割込みが発生します。
• 送信割込みが発生して送信 FIFO に必要なデータを書き込んだら , FIFO 送信データ
要求ビット (FCR1:FDRQ) に "0" を書き込んで割込み要求をクリアしてください。
• 送信 FIFO がフルになると FIFO 送信データ要求ビット (FCR1:FDRQ) は "0" になり
ます。
• 送信 FIFO のデータの存在は , FIFO バイトレジスタ (FBYTE1/FBYTE2) を読み出す
ことで確認できます。
FBYTE1/FBYTE2 = 00H のときは , 送信 FIFO にデータが存在していないことを示し
ます。
図 24.14-7 送信 FIFO 使用時の送信割込み発生タイミング
SCK
送信データ
FIFOBYTE表示
1バイト目
0
1
2
1
2バイト目
0
3バイト目
1
4バイト目
0
FDRQ
TDRE
“0”書込みでクリア
送信割込み発生 *1
送信FIFO
への書込み
送信バッファがエンプティ*2
TXE
*1: 送信FIFOがエンプティのため, FDRQ=1にセットされる。
*2: 送信バッファレジスタにデータが存在しないため, TDRE=1にセットされる。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
563
MB91605A シリーズ
24.15
CSIO( クロック同期シリアルインタフェース ) の
動作
転送方式はクロック同期式となります。
■ CSIO ( クロック同期シリアルインタフェース ) の動作
■ ノーマル転送 (I)
● 特長
表 24.15-1 ノーマル転送 (I) の特長
項目
説明
1
シリアルクロック (SCK) のマークレベル
"H"
2
送信データ出力タイミング
SCK の立下りエッジ
3
受信データのサンプリング
SCK の立上りエッジ
4
データ長
5 ビット∼ 9 ビット
● レジスタ設定
ノーマル転送 (I) に必要なレジスタの設定値を以下に示します。
表 24.15-2 ノーマル転送 (I) レジスタ設定
bit15 bit14 bit13 bit12 bit11 bit10
SCR/ UPCL MS
SMR
0
1/0
SPI
RIE
TIE
0
*
*
SSR/ REC
ESCR
0
−
−
−
−
−
−
RDR/
TDR
BGR1/
BGR0
bit5
bit4
TBIE RXE TXE MD2 MD1 MD0
−
*
bit9
*
bit8
*
bit7
bit6
0
1
0
SOP
−
−
−
0
−
−
*
−
D8
D7
D6
D5
−
*
*
*
ORE RDRF TDRE TBI
−
−
−
0
bit3
bit2
bit1
bit0
SCINV BDS SCKE SOE
0
*
1/0
*
L2
L1
L0
*
*
*
*
D4
D3
D2
D1
D0
*
*
*
*
*
*
WT1 WT0
−
B14
B13
B12
B11
B10
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
−
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
1:"1" を設定
0:"0" を設定
*:ユーザが決める設定
564
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
<注意事項>
上記ビットの設定値 (1/0) は , マスタ動作 , スレーブ動作で異なります。以下のように設定
してください。
マスタ動作時 :SCR:MS=0, SMR:SCKE=1
スレーブ動作時:SCR:MS=1, SMR:SCKE=0
● ノーマル転送 (I) タイミングチャート
図 24.15-1 ノーマル転送 (I) タイミングチャート
1バイト目
●送信動作
2バイト目
SCK
SOUT
D0 D1 D2
D3
D4 D5 D6 D7 D0
D1 D2 D3 D4
D4 D5 D6 D7
D1
D5
D6
D7
D2 D3 D4 D5
D6
D7
TDRE
TDR WR
TXE
●受信動作
D0 D1
SIN
D2 D3
D0
サンプリング
RDRF
RDR RD
RXE
● 動作説明
(1) マスタ動作 (SCR:MS=0, SMR:SCKE=1 に設定します )
• 送信動作
① シリアルデータ出力許可(SMR:SOE=1), 送信動作許可(SCR:TXE=1)および受信動作
禁止 (SCR:RXE=0) にして TDR に送信データを書き込むと SSR:TDRE=0 となり , シ
リアルクロック (SCK) 出力の立下りエッジに同期して送信データを出力します。
② 最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 となり , 送信割込み
が許可 (SCR:TIE=1) されていると送信割込み要求を出力します。このとき , 2 バ
イト目の送信データを書き込むことができます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
565
MB91605A シリーズ
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0), 送信動作許可 (SCR:TXE=1) および受信動
作許可 (SCR:RXE=1) にして TDR にダミーデータを書き込むと , シリアルクロッ
ク出力 (SCK) の立上りエッジで受信データをサンプリングします。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許可 (SCR:RIE=1) さ
れていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み出
すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
<注意事項>
• 受信動作のみを行う場合 , シリアルクロック (SCK) を出力させるために TDR にダミー
データを書いてください。
• 送受信 FIFO 許可時は , 転送させたいフレーム分のバイト数を FBYTE1/FBYTE2 レジ
スタに設定することで , 設定値分のフレームのシリアルクロック (SCK) が出力されま
す。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となりシリアルクロック (SCK) 出
力の立下りエッジに同期して , 送信データを出力します。最初の 1 ビット目の送
信データが出力されると SSR:TDRE=1 となり , 送信割込み許可 (SCR:TIE=1) され
ていると送信割込み要求を出力します。この時 , 2 バイト目の送信データを書き
込むことができます。
③ 受信データをシリアルクロック (SCK) 出力の立上りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
• 連続データ送信または受信ウェイト動作
① 連続データ送信または受信に対し , (ESCR:WT1, ESCR:WT0)= (0, 0) 以外を設定し
た場合フレーム間にウェイトが挿入されます。
- ESCR:WT1=0, ESCR:WT0=1( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=0( マスタ時 )
566
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
- ESCR:WT1=1, ESCR:WT0=1( マスタ時 )
(2) スレーブ動作 (SCR:MS=1, SMR:SCKE=0 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1) および送信動作許可 (SCR:TXE=1) にして
TDR に送信データを書き込むと SSR:TDRE=0 となり , シリアルクロック (SCK) 入
力の立下りエッジに同期して送信データを出力します。
② 最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 となり , 送信割込み
が許可 (SCR:TIE=1) されていると送信割込み要求を出力します。このとき , 2 バ
イト目の送信データを書き込むことができます。
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0) および受信動作許可 (SCR:RXE=1) にする
と , シリアルクロック入力 (SCK) の立上りエッジで受信データをサンプリングし
ます。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許可 (SCR:RIE=1) さ
れていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み出
すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となりシリアルクロック (SCK) 入
力の立下りエッジに同期して , 送信データを出力します。最初の 1 ビット目の送
信データが出力されると SSR:TDRE=1 となり , 送信割込み許可 (SCR:TIE=1) され
ていると送信割込み要求を出力します。この時 , 2 バイト目の送信データを書き
込むことができます。
③ 受信データをシリアルクロック (SCK) 入力の立上りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
■ ノーマル転送 (II)
● 特長
表 24.15-3 ノーマル転送 (II) の特長
1
2
3
4
CM71-10147-2
項目
説明
シリアルクロック (SCK) のマークレベル
送信データ出力タイミング
受信データのサンプリング
データ長
"L"
FUJITSU SEMICONDUCTOR LIMITED
SCK の立上りエッジ
SCK の立下りエッジ
5 ビット∼ 9 ビット
567
MB91605A シリーズ
● レジスタ設定
ノーマル転送 (II) に必要なレジスタの設定値を以下に示します。
表 24.15-4 ノーマル転送 (II) レジスタ設定
bit15 bit14 bit13 bit12 bit11 bit10
SCR/ UPCL MS
SMR
0
1/0
SPI
RIE
TIE
0
*
*
SSR/ REC
ESCR
0
−
−
−
−
−
−
RDR/
TDR
BGR1/
BGR0
bit9
bit8
bit07
bit6
bit5
TBIE RXE TXE MD2 MD1 MD0
*
*
*
bit4
−
0
1
0
SOP
−
−
−
0
−
−
*
−
D8
D7
D6
D5
−
*
*
*
ORE RDRF TDRE TBI
−
−
−
0
bit3
bit2
bit1
bit0
SCINV BDS SCKE SOE
1
*
1/0
*
L2
L1
L0
*
*
*
*
D4
D3
D2
D1
D0
*
*
*
*
*
*
WT1 WT0
−
B14
B13
B12
B11
B10
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
−
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
1:"1" を設定
0:"0" を設定
*:ユーザが決める設定
<注意事項>
上記ビットの設定値 (1/0) は , マスタ動作 , スレーブ動作で異なります。以下のように設定
してください。
マスタ動作時
:SCR:MS=0, SMR:SCKE=1
スレーブ動作時 :SCR:MS=1, SMR:SCKE=0
568
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ ノーマル転送 (II) タイミングチャート
図 24.15-2 ノーマル転送 (II) タイミングチャート
1バイト目
●送信動作
マークレベル
2バイト目
SCK
D0 D1 D2
SOUT
D3 D4 D5 D6
D7 D0 D1
D2 D3 D4
D5 D6
D2 D3 D4
D5
D7
TDRE
TDR WR
TXE
●受信動作
SIN
D0 D1
D2 D3 D4
D5 D6 D7
D0 D1
D6
D7
サンプリング
RDRF
RDR RD
RXE
● 動作説明
(1) マスタ動作 (SCR:MS=0, SMR:SCKE=1 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1), 送信動作許可 (SCR:TXE=1) および受信動
作禁止 (SCR:RXE=0) にし , TDR に送信データを書き込むと SSR:TDRE=0 となり ,
シリアルクロック (SCK) 出力の立上りエッジに同期して送信データを出力しま
す。
② 最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 となり , 送信割込み
が許可 (SCR:TIE=1) されていると送信割込み要求を出力します。このとき , 2 バ
イト目の送信データを書き込むことができます。 • 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0), 送信動作許可 (SCR:TXE=1) および受信動
作許可 (SCR:RXE=1) にし , TDR にダミーデータを書き込むとシリアルクロック
出力 (SCK) の立下りエッジで受信データをサンプリングします。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込みが許可 (SCR:RIE=1)
されていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み
出すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
569
MB91605A シリーズ
<注意事項>
• 受信動作のみを行う場合 , シリアルクロック (SCK) を出力させるために TDR にダミー
データを書いてください。
• 送受信 FIFO 許可時 , 転送させたいフレーム分のバイト数を FBYTE1/FBYTE2 レジス
タに設定することで , 設定値分のフレームのシリアルクロック (SCK) が出力されます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となりシリアルクロック (SCK) 出
力の立上りエッジに同期して , 送信データを出力します。最初の 1 ビット目の送
信データが出力されると SSR:TDRE=1 となり , 送信割込み許可 (SCR:TIE=1) され
ていると送信割込み要求を出力します。この時 , 2 バイト目の送信データを書き
込むことができます。
③ 受信データをシリアルクロック (SCK) 出力の立下りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
• 連続データ送信または受信ウェイト動作
① 連続データ送信または受信に対し , (ESCR:WT1, ESCR:WT0)= (0, 0) 以外を設定し
た場合フレーム間にウェイトが挿入されます。
- ESCR:WT1=0, ESCR:WT0=1( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=0( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=1( マスタ時 )
570
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
(2) スレーブ動作 (SCR:MS=1, SMR:SCKE=0 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1) および送信動作許可 (SCR:TXE=1) にし ,
TDR に送信データを書き込むと SSR:TDRE=0 となり , シリアルクロック (SCK) 入
力の立上りエッジに同期して送信データを出力します。
② 最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 となり , 送信割込み
が許可 (SCR:TIE=1) されていると送信割込み要求を出力します。このとき , 2 バ
イト目の送信データを書き込むことができます。
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0) および受信動作許可 (SCR:RXE=1) にする
と , シリアルクロック入力 (SCK) の立下りエッジで受信データをサンプリングし
ます。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込みが許可 (SCR:RIE=1)
されていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み
出すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となりシリアルクロック (SCK) 入
力の立上りエッジに同期して , 送信データを出力します。最初の 1 ビット目の送
信データが出力されると SSR:TDRE=1 となり , 送信割込み許可 (SCR:TIE=1) され
ていると送信割込み要求を出力します。この時 , 2 バイト目の送信データを書き
込むことができます。
③ 受信データをシリアルクロック (SCK) 入力の立下りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
■ SPI 転送 (I)
● 特長
表 24.15-5 SPI 転送 (I) の特長
CM71-10147-2
項目
説明
1
シリアルクロック (SCK) のマークレベル
"H"
2
送信データ出力タイミング
SCK の立上りエッジ
3
受信データのサンプリング
SCK の立下りエッジ
4
データ長
5 ビット∼ 9 ビット
FUJITSU SEMICONDUCTOR LIMITED
571
MB91605A シリーズ
● レジスタ設定
SPI 転送 (I) に必要なレジスタの設定値を以下に示します。
表 24.15-6 SPI 転送 (I) レジスタ設定
bit15 bit14 bit13 bit12 bit11 bit10
SCR/ UPCL MS
SMR
0
1/0
SPI
RIE
TIE
1
*
*
SSR/ REC
ESCR
0
−
−
−
−
−
−
RDR/
TDR
BGR1/
BGR0
bit9
bit8
bit7
bit6
bit5
TBIE RXE TXE MD2 MD1 MD0
*
*
*
bit4
−
0
1
0
SOP
−
−
−
0
−
−
*
−
D8
D7
D6
D5
−
*
*
*
ORE RDRF TDRE TBI
−
−
−
0
bit3
bit2
bit1
bit0
SCINV BDS SCKE SOE
0
*
1/0
*
L2
L1
L0
*
*
*
*
D4
D3
D2
D1
D0
*
*
*
*
*
*
WT1 WT0
−
B14
B13
B12
B11
B10
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
−
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
1:"1" を設定
0:"0" を設定
*:ユーザが決める設定
<注意事項>
上記ビットの設定値 (1/0) は , マスタ動作 , スレーブ動作で異なります。以下のように設定
してください。
マスタ動作時
:SCR:MS=0, SMR:SCKE=1
スレーブ動作時 :SCR:MS=1, SMR:SCKE=0
572
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
● SPI 転送 (I) タイミングチャート
図 24.15-3 SPI 転送 (I) タイミングチャート
1バイト目
●送信動作
SCK
2バイト目
*
SOUT
D0 D1 D2
D3 D4 D5 D6
D7 D0 D1
D2 D3 D4
D0 D1 D2
D3 D4 D5 D6
D7 D0
D2
D5 D6
D7
TDRE
TDR WR
TXE
●受信動作
SIN
D1
D3 D4 D5
D6
D7
サンプリング
RDRF
RDR RD
RXE
* : スレーブ送信時(MS=1, SCKE=0, SOE=1),TDRに書いてから
4周辺クロック(PCLK)以上の時間が必要。
● 動作説明
(1) マスタ動作 (SCR:MS=0, SMR:SCKE=1 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1), 送信動作許可 (SCR:TXE=1) および受信動
作禁止 (SCR:RXE=0) にし , TDR に送信データを書き込むと SSR:TDRE=0 となり ,
1 ビット目が出力されます。その後 , シリアルクロック (SCK) 出力の立上りエッ
ジに同期して送信データを出力します。
② 最初のシリアルクロック (SCK) 出力の立下りエッジの半サイクル前で
SSR:TDRE=1 となり , 送信割込みが許可 (SCR:TIE=1) されていると送信割込み要求
を出力します。このとき , 2 バイト目の送信データを書き込むことができます。
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0), 送信動作許可 (SCR:TXE=1) および受信動
作許可 (SCR:RXE=1) にし , TDR にダミーデータを書き込むとシリアルクロック
出力 (SCK) の立下りエッジで受信データをサンプリングします。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許可 (SCR:RIE=1) さ
れていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み出
すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
573
MB91605A シリーズ
<注意事項>
• 受信動作のみを行う場合 , シリアルクロック (SCK) を出力させるために TDR にダミー
データを書いてください。
• 送受信 FIFO 許可時 , 転送させたいフレーム分のバイト数を FBYTE1/FBYTE2 レジス
タに設定することで , 設定値分のフレームのシリアルクロック (SCK) が出力されます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となり 1 ビット目が出力されま
す。その後 , シリアルクロック (SCK) 出力の立上りエッジに同期して , 送信デー
タを出力します。最初のシリアルクロック (SCK) 出力の立下りエッジの半サイク
ル前で SSR:TDRE=1 となり , 送信割込み許可 (SCR:TIE=1) されていると送信割込
み要求を出力します。この時 , 2 バイト目の送信データを書き込むことができま
す。
③ 受信データをシリアルクロック (SCK) 出力の立下りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
• 連続データ送信または受信ウェイト動作
① 連続データ送信または受信に対し , (ESCR:WT1, ESCR:WT0)= (0, 0) 以外を設定し
た場合フレーム間にウェイトが挿入されます。
- ESCR:WT1=0, ESCR:WT0=1( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=0( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=1( マスタ時 )
574
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
(2) スレーブ動作 (SCR:MS=1, SMR:SCKE=0 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1) および送信動作許可 (SCR:TXE=1) にし ,
TDR に送信データを書き込むと SSR:TDRE=0 となり , 1 ビット目が出力されま
す。その後 , シリアルクロック (SCK) 出力の立上りエッジに同期して送信データ
を出力します。
② 最初のシリアルクロックの立下りエッジの半サイクル前で SSR:TDRE=1 となり ,
送信割込みが許可 (SCR:TIE=1) されていると送信割込み要求を出力します。この
とき , 2 バイト目の送信データを書き込むことができます。
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0) および受信動作許可 (SCR:RXE=1) にする
と , シリアルクロック入力 (SCK) の立下りエッジで受信データをサンプリングし
ます。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込みが許可 (SCR:RIE=1)
されていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み
出すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となり 1 ビット目が出力されま
す。その後 , シリアルクロック (SCK) 入力の立上りエッジに同期して , 送信デー
タを出力します。
最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 と
なり , 送信割込み許可 (SCR:TIE=1) されていると送信割込み要求を出力します。
この時 , 2 バイト目の送信データを書き込むことができます。
③ 受信データをシリアルクロック (SCK) 入力の立下りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
■ SPI 転送 (II)
● 特長
表 24.15-7 SPI 転送 (II) の特長
CM71-10147-2
項目
説明
1
シリアルクロック (SCK) のマークレベル
"L"
2
送信データ出力タイミング
SCK の立下りエッジ
3
受信データのサンプリング
SCK の立上りエッジ
4
データ長
5 ビット∼ 9 ビット
FUJITSU SEMICONDUCTOR LIMITED
575
MB91605A シリーズ
● レジスタ設定
SPI 転送 (II) に必要なレジスタの設定値を以下に示します。
表 24.15-8 SPI 転送 (II) レジスタ設定
bit15 bit14 bit13 bit12 bit11 bit10
SCR/ UPCL MS
SMR
0
1/0
SPI
RIE
TIE
1
*
*
SSR/ REC
ESCR
0
−
−
−
−
−
−
RDR/
TDR
BGR1/
BGR0
bit9
bit8
bit7
bit6
bit5
TBIE RXE TXE MD2 MD1 MD0
*
*
*
bit4
−
0
1
0
SOP
−
−
−
0
−
−
*
−
D8
D7
D6
D5
−
*
*
*
ORE RDRF TDRE TBI
−
−
−
0
bit3
bit2
bit1
bit0
SCINV BDS SCKE SOE
1
*
1/0
*
L2
L1
L0
*
*
*
*
D4
D3
D2
D1
D0
*
*
*
*
*
*
WT1 WT0
−
B14
B13
B12
B11
B10
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
−
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
1:"1" を設定
0:"0" を設定
*:ユーザが決める設定
<注意事項>
上記ビットの設定値 (1/0) は , マスタ動作 , スレーブ動作で異なります。以下のように設定
してください。
マスタ動作時
:SCR:MS=0, SMR:SCKE=1
スレーブ動作時 :SCR:MS=1, SMR:SCKE=0
576
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
● SPI 転送 (II) タイミングチャート
図 24.15-4 SPI 転送 (II) タイミングチャート
1バイト目
●送信動作
SCK
2バイト目
*
D0 D1 D2
SOUT
D3 D4 D5 D6
D7 D0 D1
D2 D3 D4
D5 D6
D7
D2
D5 D6
D7
TDRE
TDR WR
TXE
●受信動作
D0
SIN
D1 D2 D3 D4 D5 D6 D7 D0
D1
D3 D4
サンプリング
RDRF
RDR RD
RXE
*: スレーブ送信時(MS=1, SCKE=0, SOE=1), TDRに書いてから4周辺クロック(PCLK)以上の時間が必要。
● 動作説明
(1) マスタ動作 (SCR:MS=0, SMR:SCKE=1 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1), 送信動作許可 (SCR:TXE=1) および受信動
作禁止 (SCR:RXE=0) にし , TDR に送信データを書き込むと SSR:TDRE=0 となり ,
1 ビット目が出力されます。その後 , シリアルクロック (SCK) 出力の立下りエッジ
に同期して送信データを出力します。
② 最初のシリアルクロック (SCK) 出力の立上りエッジの半サイクル前で
SSR:TDRE=1 となり , 送信割込みが許可 (SCR:TIE=1) されていると送信割込み要
求を出力します。このとき , 2 バイト目の送信データを書き込むことができます。
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0), 送信動作許可 (SCR:TXE=1) および受信動
作許可 (SCR:RXE=1) にし , TDR にダミーデータを書き込むとシリアルクロック
出力 (SCK) の立上りエッジで受信データをサンプリングします。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込みが許可 (SCR:RIE=1)
されていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み
出すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
577
MB91605A シリーズ
<注意事項>
• 受信動作のみを行う場合 , シリアルクロック (SCK) を出力させるために TDR にダミー
データを書いてください。
• 送受信 FIFO 許可時 , 転送させたいフレーム分のバイト数を FBYTE1/FBYTE2 レジス
タに設定することで , 設定値分のフレームのシリアルクロック (SCK) が出力されます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となり 1 ビット目が出力されま
す。その後 , シリアルクロック (SCK) 出力の立下りエッジに同期して , 送信デー
タを出力します。最初のシリアルクロック (SCK) 出力の立上りエッジの半サイク
ル前で SSR:TDRE=1 となり , 送信割込み許可 (SCR:TIE=1) されていると送信割込
み要求を出力します。この時 , 2 バイト目の送信データを書き込むことができま
す。
③ 受信データを送信クロックの立上りエッジでサンプリングします。受信データの
最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許可 (SCR:RIE=1) さ
れていると , 受信割込み要求を出力します。この時 , 受信データ (RDR) を読み出
すことができます。
受信データを読み出すと SSR:RDRF は "0" にクリアされます。
• 連続データ送信または受信ウェイト動作
① 連続データ送信または受信に対し , (ESCR:WT1, ESCR:WT0)= (0, 0) 以外を設定し
た場合フレーム間にウェイトが挿入されます。
- ESCR:WT1=0, ESCR:WT0=1( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=0( マスタ時 )
- ESCR:WT1=1, ESCR:WT0=1( マスタ時 )
578
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
(2) スレーブ動作 (SCR:MS=1, SMR:SCKE=0 に設定します )
• 送信動作
① シリアルデータ出力許可 (SMR:SOE=1) および送信動作許可 (SCR:TXE=1) にし ,
TDR に送信データを書き込むと SSR:TDRE=0 となり , 1 ビット目が出力されま
す。その後 , シリアルクロック (SCK) 入力の立下りエッジに同期して送信データ
を出力します。
② 最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 となり , 送信割込み
が許可 (SCR:TIE=1) されていると送信割込み要求を出力します。このとき , 2 バ
イト目の送信データを書き込むことができます。
• 受信動作
① シリアルデータ出力禁止 (SMR:SOE=0) および受信動作許可 (SCR:RXE=1) にする
と , シリアルクロック入力 (SCK) の立上りエッジで受信データをサンプリングし
ます。
② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込みが許可 (SCR:RIE=1)
されていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み
出すことができます。
③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。
• 送受信動作
① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (SMR:SOE=1), 送受信
動作許可 (SCR:TXE,RXE=1) にします。
② TDR に送信データを書き込むと , SSR:TDRE=0 となり 1 ビット目が出力されま
す。その後 , シリアルクロック (SCK) 入力の立下りエッジに同期して , 送信デー
タを出力します。
最初の 1 ビット目の送信データが出力されると SSR:TDRE=1 と
なり , 送信割込み許可 (SCR:TIE=1) されていると送信割込み要求を出力します。
この時 , 2 バイト目の送信データを書き込むことができます。
③ 受信データをシリアルクロック (SCK) 入力の立上りエッジでサンプリングしま
す。受信データの最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許
可 (SCR:RIE=1) されていると , 受信割込み要求を出力します。この時 , 受信デー
タ (RDR) を読み出すことができます。受信データを読み出すと SSR:RDRF は "0"
にクリアされます。
■ 4 チャネル同時通信モード時の動作
ch.8 ∼ ch.11 の 4 チャネルの CSIO を同時に通信させ , 一度に 4 ビットのデータを送受
信できます。
4 チャネルをマスタモードでも , スレーブモードで利用できます。4 チャネル同時通信
モード時の動作を説明します。
● 概要
4 チャネル同時に通信するには , シリアルモード選択レジスタ (SSEL89AB) の SS1, SS0
ビットで設定します。
また , マスタモードで通信するかスレーブモードで通信するかで必要な設定が異なり
ます。
4 チャネル同時通信モード時に必要な設定を表 24.15-9 に示します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
579
MB91605A シリーズ
表 24.15-9 4 チャネル同時通信モード時の設定
モード
設定
4 ビットマスタ
4 ビットスレーブ
ch.8
ch.9
ch.10
ch.11
SSEL
SS1/SS0 ビット
10
10
10
10
SCR
MS ビット
1
1
1
0
SSEL
SS1/SS0 ビット
11
11
11
11
SCR
MS ビット
1
1
1
1
SSEL:シリアルモード選択レジスタ (SSEL89AB)
SCR :シリアル制御レジスタ (SCR)
4 ビットマスタモード時と 4 ビットスレーブモード時は , シリアルクロックの入力方法
が異なります。
シリアルクロックの入力元を表 24.15-10 に示します。
表 24.15-10 シリアルクロックの入力元
ch.8
モード
ch.9
ch.10
ch.11
4 ビットマスタ
(SS1, SS0=10)
ch.11 からの出力
ch.11 からの出力
ch.11 からの出力
SCK11 端子
4 ビットスレーブ
(SS1, SS0=11)
SCK11 端子
SCK11 端子
SCK11 端子
SCK11 端子
4 ビットマスタモード時と 4 ビットスレーブモード時のシリアルクロック入力元を図
24.15-5 に示します。
図 24.15-5 シリアルクロックの入力元
ch.8
スレーブ
ch.8
スレーブ
ch.9
スレーブ
ch.9
スレーブ
ch.10
スレーブ
ch.10
スレーブ
ch.11
マスタ
SIN11/SOUT11 ch.11
SCK11 端子
スレーブ
4 ビットマスタモード
580
SIN11/SOUT11
SCK11 端子
4 ビットスレーブモード
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
4 チャネル同時通信モード時の使用可能端子組合せを , 表 24.15-11 に示します。
表 24.15-11 使用可能端子組合せ
組合せ 1
CM71-10147-2
ch.8
ch.9
ch.10
ch.11
SCK8
SIN8
SOUT8
SCK9
SIN9
SOUT9
SCK10
SIN10
SOUT10
SCK11
SIN11
SOUT11
FUJITSU SEMICONDUCTOR LIMITED
581
MB91605A シリーズ
● 動作
4 チャネル同時通信モード利用時の受信動作 / 送信動作は , 1 チャネル動作時と同様で
す。
ただし , 4 ビット同時に送受信するために , 次のレジスタが用意されています。
• 受信データミラーレジスタ (RDRM)
• 送信データミラーレジスタ (TDRM)
これらのレジスタにアクセスすると , 受信データレジスタ (RDR) の下位 8 ビットや送
信データレジスタ (TDR) の下位 8 ビットにアクセスされます。
また , ch.8 ∼ ch.11 の受信データミラーレジスタ (RDRM) / 送信データミラーレジスタ
(TDRM) は並んで配置されているため , ワードアクセスすることで , 一度に書き込むこ
とができます。DMA 転送などに利用してください。
< 注意事項 >
4 チャネル同時起動時の割込みは 4ch 中 1ch のみを使用許可することを推奨致します。
受信データミラーレジスタ (RDRM) / 送信データミラーレジスタ (TDRM) のイメージ
を図 24.15-6 に示します。
図 24.15-6 アクセスイメージ
bit15
RDR8/TDR8
bit7
bit0
bit15
RDR9/TDR9
bit7
bit0
ch.10
bit15
RDRA/TDRA
bit7
bit0
ch.11
bit15
RDRB/TDRB
bit7
bit0
ch.8
ch.9
受信データレジスタ/送信データレジスタ
(RDR8~RDRB/TDR8~TDRB)
受信データミラーレジスタ/送信データミラーレジスタ
(RDRM8~RDRMB/TDRM8~TDRMB)
RDRM8/TDRM8
RDRM9/TDRM9
bit31
RDRMA/TDRMA
RDRMB/TDRMB
bit0
< 注意事項 >
4 チャネル同時通信を使用する場合は , 9 ビット長のデータは使用できません。
582
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.16
専用ボーレートジェネレータ
専用ボーレートジェネレータは , マスタ動作時のみ機能します。ただし , 受信 FIFO
を使用する場合にはスレーブ動作時でも専用ボーレートジェネレータを設定してく
ださい。
■ CSIO( クロック同期シリアルインタフェース ) ボーレート選択
専用ボーレートジェネレータの設定は , マスタ動作時とスレーブ動作時では異なりま
す。
● マスタ動作時
専用ボーレートジェネレータで内部クロックを分周させてボーレートを選択します。
• 2 つの内部リロードカウンタがあり , それぞれ送受信シリアルクロックに対応して
います。ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) で 15 ビットのリロー
ド値を設定することにより , ボーレートを選択できます。
• リロードカウンタは設定された値で内部クロックを分周します。
● スレーブ動作時
スレーブ動作時 (SCR:MS=1) は , 専用ボーレートジェネレータは機能しません
( クロック入力端子 SCK から入力された 外部クロックを直接使用します )。
<注意事項>
受信 FIFO を使用する場合にはスレーブ動作時でも専用ボーレートジェネレータを設定し
てください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
583
MB91605A シリーズ
ボーレート設定
24.16.1
ボーレートの設定を示します。また , シリアルクロック周波数の計算結果を示しま
す。
■ ボーレートの計算
2 つの 15 ビットリロードカウンタは , ボーレートジェネレータレジスタ 1, 0 (BGR1,
BGR0) で設定します。
ボーレートの計算式を以下に示します。
(1) リロード値:
V = φ / b -1
V:リロード値
b:ボーレート
φ:周辺クロック (PCLK) 周波数
(2) 計算例
周辺クロック (PCLK) 16MHz, 内部クロック使用 , ボーレート 19200bps に設定
する場合のリロード値は , 次のようになります。
リロード値:
V = (16 × 1000000)/19200 - 1 = 832
よって , ボーレートは ,
b = (16 × 1000000)/(832+1) = 19208 bps
(3) ボーレートの誤差
ボーレートの誤差は次の式によって求められます。
誤差 (%) = ( 計算値 - 目標値 )/ 目標値 × 100
( 例 ) 周辺クロック (PCLK) 20MHz, 目標ボーレート 153600bps に設定する場合
リロード値 =(20 × 1000000)/153600 - 1 = 129
ボーレート ( 計算値 ) =(20 × 1000000)/(129+1) = 153846 (bps)
誤 差 (%) =(153846 - 153600)/153600 × 100 = 0.16 (%)
<注意事項>
• リロード値を "0" に設定するとリロードカウンタは停止します。
• リロード値が偶数の場合 , シリアルクロックの "H" 幅と "L" 幅は SCINV ビットの設定
によって以下のようになります。奇数の場合 , シリアルクロックの "H" 幅と "L" 幅は同
じになります。
- SCINV=0 のとき , シリアルクロックの "H" 幅が周辺クロック (PCLK) 1 サイクル分
長くなります。
- SCINV=1 のとき , シリアルクロックの "L" 幅が周辺クロック (PCLK) 1 サイクル分長
くなります。
• リロード値は "3" 以上を設定してください。
584
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 各周辺クロック (PCLK) 周波数に対するリロード値とボーレート
表 24.16-1 リロード値とボーレート
8 MHz
10 MHz
16 MHz
20 MHz
24 MHz
32MHz
ボーレート
(bps)
Value
ERR
Value
ERR
Value
ERR
Value
ERR
Value
ERR
Value
ERR
8M
−
−
−
−
−
−
−
−
0
−
0
−
0
3
−
3
−
3
−
−
4
0
−
5
−
0
−
7
−
0
−
9
−
0
−
11
−
0
−
15
−
0
6M
−
−
−
−
−
−
5M
−
−
−
−
4M
−
−
−
3
−
0
−
0
−
0
2.5M
−
3
−
3
4
0
−
7
−
0
2M
1M
7
0
9
0
15
0
19
0
23
0
31
0
500000
15
0
19
0
31
0
39
0
47
0
63
0
460800
−
31
−
0
−
39
−
0
−
63
−
0
−
79
−
0
51
− 0.16
95
0
−
127
−
0
− 0.16
−
−
207
− 0.16
250000
230400
−
−
−
−
−
−
−
−
103
153600
51
− 0.16
64
− 0.16
103
− 0.16
129
− 0.16
155
− 0.16
125000
63
0
79
0
127
0
159
0
191
0
255
0
115200
68
− 0.64
86
0.22
138
0.08
173
0.22
207
− 0.16
277
0.08
76800
103
− 0.16
129
− 0.16
207
− 0.16
259
− 0.16
311
− 0.16
416
0.08
57600
138
0.08
173
0.22
277
0.08
346
− 0.16
416
0.08
555
0.08
38400
207
− 0.16
259
− 0.16
416
0.08
520
0.03
624
0
832
− 0.04
28800
277
0.08
346
< 0.01
554
− 0.01
693
− 0.06
832
− 0.03
1110
− 0.01
19200
416
0.08
520
0.03
832
− 0.03
1041
0.03
1249
0
1666
0.02
10417
767
< 0.01
959
< 0.01
1535
< 0.01
1919
< 0.01
2303
< 0.01
3071
< 0.01
9600
832
0.04
1041
0.03
1666
0.02
2083
0.03
2499
0
3332
− 0.01
7200
1110
< 0.01
2221
< 0.01
2777
< 0.01
3332
< 0.01
4443
− 0.01
4800
1666
− 0.02
3332
< 0.01
4166
< 0.01
4999
0
6666
< 0.01
2400
3332
< 0.01 4166
< 0.01
6666
< 0.01
8332
< 0.01
9999
0
13332 <− 0.01
1200
6666
< 0.01 8334
0.02
13332 < 0.01 16666 < 0.01
19999
0
26666
< 0.01
600
13332 < 0.01 16666 < 0.01 26666 < 0.01
−
−
−
−
−
−
300
26666 < 0.01
−
−
−
−
−
−
< 0.01 1388
0.02
2082
−
−
−
−
• Value:BGR1/BGR0 レジスタの設定値
• ERR :ボーレート誤差 (%)
■ リロードカウンタの機能
リロードカウンタには送信リロードカウンタと受信リロードカウンタがあり , 専用
ボーレートジェネレータとして機能します。リロード値に対する 15 ビットレジスタか
ら構成されており , 内部クロックより送受信クロックを生成します。
■ カウントの開始
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むと , リ
ロードカウンタはカウントを開始します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
585
MB91605A シリーズ
■ 再スタート
リロードカウンタは下記の条件で再スタートします。
● 送信 / 受信リロードカウンタ共通
プログラマブルリセット (SCR:UPCL ビット )
586
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.17
CSIO( クロック同期シリアルインタフェース )
設定手順とプログラムフロー
CSIO( クロック同期シリアルインタフェース ) では , シリアル双方向同期通信をする
ことができます。
■ CPU 間接続
CSIO( クロック同期シリアルインタフェース ) では , 双方向通信を選択します。図 24.171 に示すように 2 つの CPU を相互に接続します。
図 24.17-1 CSIO( クロック同期シリアルインタフェース ) の双方向通信の接続例
SOUT
SOUT
SIN
SIN
SCK
SCK
CPU –1 (マスタ)
CPU –2 (スレーブ)
■ フローチャート
● FIFO 未使用時
図 24.17-2 双方向通信フローチャートの例 (FIFO 未使用時 )
(マスタ側)
(スレーブ側)
スタート
スタート
動作モード設定
(モード2に設定)
動作モード設定
(送信側に合わせる)
データ送信
TDRに1バイトデータ
をセットして通信
NO
RDRF=1
YES
NO
RDRF=1
YES
受信データ読出しと
処理
CM71-10147-2
データ送信
(ANS)
受信データ読出しと
処理
1バイトデータ送信
FUJITSU SEMICONDUCTOR LIMITED
587
MB91605A シリーズ
● FIFO 使用時
図 24.17-3 双方向通信フローチャートの例 (FIFO 使用時 )
(マスタ側)
(スレーブ側)
スタート
スタート
動作モード設定
(モード2に設定)
動作モード設定
(送信側に合わせる)
送受信FIFO許可
送受信FIFO許可
受信FBYTE設定
受信FBYTE設定
送信FIFOにNバイトを
セットし, FDRQビット
に”0”書込み
データ送信
RDRF=1
YES
データ送信
NO
RDRF=1
YES
NO
(ANS)
FIFOBYTE設定値分,
読出しと処理
送信FIFOにNバイトを
セットし, FDRQビットに
”0”書込み
FBYTE設定値分,
読出しと処理
588
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.18
CSIO モードの注意事項
CSIO モードの注意事項を下記に示します。
• FIFO 付きチャネルで DMA 転送要求する場合 , FIFO は使用できません。FIFO 動作
禁止の設定としてください。
• DMA 転送要求する場合 , DMA のブロックサイズを 1 回に設定してください。
• マスタ受信およびスレーブ受信時には , データ受信用の DMA 転送と , ダミーデータ
送信用の DMA 転送が必要なため , DMA を 2 チャネル使用する必要があります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
589
MB91605A シリーズ
24.19
I2C インタフェース
マルチファンクションシリアルインタフェースの機能のうち , 動作モード 4 でサ
ポートしている I2C インタフェースについて説明します。
● I2C インタフェース
● I2C インタフェースの概要
● I2C インタフェースのレジスタ
• I2C バス制御レジスタ (IBCR)
• シリアルモードレジスタ (SMR)
• I2C バスステータスレジスタ (IBSR)
• シリアルステータスレジスタ (SSR)
• 受信データレジスタ / 送信データレジスタ (RDR/TDR)
• 7 ビットスレーブアドレスマスクレジスタ (ISMK)
• 7 ビットスレーブアドレスレジスタ (ISBA)
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)
• FIFO 制御レジスタ 1(FCR1)
• FIFO 制御レジスタ 0(FCR0)
• FIFO バイトレジスタ (FBYTE1/FBYTE2)
● I2C インタフェースの割込み
• I2C インタフェース通信の動作
• マスタモード
• スレーブモード
• バスエラー
● 専用ボーレートジェネレータ
• I2C のフローチャート例
590
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.20
I2C インタフェースの概要
I2C インタフェースは IC 間バスをサポートし , I2C バス上のマスタ / スレーブデバイ
スとして動作します。また , 送信 / 受信 ( 最大 各 16 バイト ) の FIFO を搭載してい
ます。ch.0 には I2C 機能はありません。
■ I2C インタフェースの機能
I2C インタフェースには , 以下の機能があります。
• マスタ / スレーブ送受信機能
• 調停機能
• クロック同期機能
• 転送方向検出機能
• 反復スタート条件の発生と検出機能
• バスエラー検出機能
• ゼネラルコールアドレッシング機能
• マスタおよびスレーブとしての 7 ビットアドレッシング
• 転送およびバスエラー時に割込み発生可能
• 10 ビットアドレッシング機能は , プログラムで対応可能
■ FIFO の機能
FIFO には , 以下の機能があります。
• 送受信 FIFO 搭載 ( 最大容量:送信 FIFO 16 バイト , 受信 FIFO 16 バイト )*
• 送信 FIFO と受信 FIFO を選択可能
• 送信データの再送信が可能
• 受信 FIFO 割込みタイミングをソフトで変更可能
• 独立して FIFO リセットをサポート
*: ch.8 ∼ ch.11 には FIFO はありません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
591
MB91605A シリーズ
24.21
I2C インタフェースのレジスタ
I2C インタフェースのレジスタ一覧を示します。
■ I2C インタフェースのレジスタ一覧
表 24.21-1 I2C インタフェースのレジスタ一覧 <Helvetica>(1 / 4)
チャネル レジスタ略称
レジスタ名
0
IBCR0
I2C バス制御レジスタ 0
1
592
参照先
24.21.1
SMR0
シリアルモードレジスタ 0
24.21.2
IBSR0
I2C バスステータスレジスタ 0
24.21.3
BGR0
ボーレートジェネレータレジスタ 0
24.21.8
SSR0
シリアルステータスレジスタ 0
24.21.4
RDR0
受信データレジスタ 0
24.21.5
TDR0
送信データレジスタ 0
24.21.5
FCR10
FIFO 制御レジスタ 10
24.21.9
FCR00
FIFO 制御レジスタ 00
24.21.10
FBYTE10
FIFO1 バイトレジスタ 0
24.21.11
FBYTE20
FIFO2 バイトレジスタ 0
24.21.11
ISMK0
7 ビットスレーブアドレスマスクレジスタ 0 24.21.6
ISBA0
7 ビットスレーブアドレスレジスタ 0
24.21.7
IBCR1
I C バス制御レジスタ 1
24.21.1
SMR1
シリアルモードレジスタ 1
24.21.2
IBSR1
I2C バスステータスレジスタ 1
24.21.3
BGR1
ボーレートジェネレータレジスタ 1
24.21.8
SSR1
シリアルステータスレジスタ 1
24.21.4
RDR1
受信データレジスタ 1
24.21.5
TDR1
送信データレジスタ 1
24.21.5
FCR11
FIFO 制御レジスタ 11
24.21.9
FCR01
FIFO 制御レジスタ 01
24.21.10
FBYTE11
FIFO1 バイトレジスタ 1
24.21.11
FBYTE21
FIFO2 バイトレジスタ 1
24.21.11
ISMK1
7 ビットスレーブアドレスマスクレジスタ 1 24.21.6
ISBA1
7 ビットスレーブアドレスレジスタ 1
2
FUJITSU SEMICONDUCTOR LIMITED
24.21.7
CM71-10147-2
MB91605A シリーズ
表 24.21-1 I2C インタフェースのレジスタ一覧 <Helvetica>(2 / 4)
チャネル
2
3
4
CM71-10147-2
レジスタ略称
レジスタ名
2
IBCR2
I C バス制御レジスタ 2
参照先
24.21.1
SMR2
シリアルモードレジスタ 2
24.21.2
IBSR2
I2C バスステータスレジスタ 2
24.21.3
BGR2
ボーレートジェネレータレジスタ 2
24.21.8
SSR2
シリアルステータスレジスタ 2
24.21.4
RDR2
受信データレジスタ 2
24.21.5
TDR2
送信データレジスタ 2
24.21.5
FCR12
FIFO 制御レジスタ 12
24.21.9
FCR02
FIFO 制御レジスタ 02
24.21.10
FBYTE12
FIFO1 バイトレジスタ 2
24.21.11
FBYTE22
FIFO2 バイトレジスタ 2
24.21.11
ISMK2
7 ビットスレーブアドレスマスクレジスタ 2 24.21.6
ISBA2
7 ビットスレーブアドレスレジスタ 2
24.21.7
IBCR3
I2C バス制御レジスタ 3
24.21.1
SMR3
シリアルモードレジスタ 3
24.21.2
IBSR3
I C バスステータスレジスタ 3
24.21.3
BGR3
ボーレートジェネレータレジスタ 3
24.21.8
SSR3
シリアルステータスレジスタ 3
24.21.4
RDR3
受信データレジスタ 3
24.21.5
TDR3
送信データレジスタ 3
24.21.5
FCR13
FIFO 制御レジスタ 13
24.21.9
FCR03
FIFO 制御レジスタ 03
24.21.10
FBYTE13
FIFO1 バイトレジスタ 3
24.21.11
FBYTE23
FIFO2 バイトレジスタ 3
24.21.11
ISMK3
7 ビットスレーブアドレスマスクレジスタ 3 24.21.6
ISBA3
7 ビットスレーブアドレスレジスタ 3
24.21.7
IBCR4
I2C バス制御レジスタ 4
24.21.1
SMR4
シリアルモードレジスタ 4
24.21.2
IBSR4
I2C バスステータスレジスタ 4
24.21.3
BGR4
ボーレートジェネレータレジスタ 4
24.21.8
SSR4
シリアルステータスレジスタ 4
24.21.4
RDR4
受信データレジスタ 4
24.21.5
TDR4
送信データレジスタ 4
24.21.5
FCR14
FIFO 制御レジスタ 14
24.21.9
FCR04
FIFO 制御レジスタ 04
24.21.10
FBYTE14
FIFO1 バイトレジスタ 4
24.21.11
FBYTE24
FIFO2 バイトレジスタ 4
24.21.11
ISMK4
7 ビットスレーブアドレスマスクレジスタ 4 24.21.6
ISBA4
7 ビットスレーブアドレスレジスタ 4
2
FUJITSU SEMICONDUCTOR LIMITED
24.21.7
593
MB91605A シリーズ
表 24.21-1 I2C インタフェースのレジスタ一覧 <Helvetica>(3 / 4)
チャネル
5
6
7
594
レジスタ略称
レジスタ名
2
IBCR5
I C バス制御レジスタ 5
参照先
24.21.1
SMR5
シリアルモードレジスタ 5
24.21.2
IBSR5
I2C バスステータスレジスタ 5
24.21.3
BGR5
ボーレートジェネレータレジスタ 5
24.21.8
SSR5
シリアルステータスレジスタ 5
24.21.4
RDR5
受信データレジスタ 5
24.21.5
TDR5
送信データレジスタ 5
24.21.5
FCR15
FIFO 制御レジスタ 15
24.21.9
FCR05
FIFO 制御レジスタ 05
24.21.10
FBYTE15
FIFO1 バイトレジスタ 5
24.21.11
FBYTE25
FIFO2 バイトレジスタ 5
24.21.11
ISMK5
7 ビットスレーブアドレスマスクレジスタ 5 24.21.6
ISBA5
7 ビットスレーブアドレスレジスタ 5
24.21.7
IBCR6
I2C バス制御レジスタ 6
24.21.1
SMR6
シリアルモードレジスタ 6
24.21.2
IBSR6
I C バスステータスレジスタ 6
24.21.3
BGR6
ボーレートジェネレータレジスタ 6
24.21.8
SSR6
シリアルステータスレジスタ 6
24.21.4
RDR6
受信データレジスタ 6
24.21.5
TDR6
送信データレジスタ 6
24.21.5
FCR16
FIFO 制御レジスタ 16
24.21.9
FCR06
FIFO 制御レジスタ 06
24.21.10
FBYTE16
FIFO1 バイトレジスタ 6
24.21.11
FBYTE26
FIFO2 バイトレジスタ 6
24.21.11
ISMK6
7 ビットスレーブアドレスマスクレジスタ 6 24.21.6
ISBA6
7 ビットスレーブアドレスレジスタ 6
24.21.7
IBCR7
I2C バス制御レジスタ 7
24.21.1
SMR7
シリアルモードレジスタ 7
24.21.2
IBSR7
I2C バスステータスレジスタ 7
24.21.3
BGR7
ボーレートジェネレータレジスタ 7
24.21.8
SSR7
シリアルステータスレジスタ 7
24.21.4
RDR7
受信データレジスタ 7
24.21.5
TDR7
送信データレジスタ 7
24.21.5
FCR17
FIFO 制御レジスタ 17
24.21.9
FCR07
FIFO 制御レジスタ 07
24.21.10
FBYTE17
FIFO1 バイトレジスタ 7
24.21.11
FBYTE27
FIFO2 バイトレジスタ 7
24.21.11
ISMK7
7 ビットスレーブアドレスマスクレジスタ 7 24.21.6
ISBA7
7 ビットスレーブアドレスレジスタ 7
2
FUJITSU SEMICONDUCTOR LIMITED
24.21.7
CM71-10147-2
MB91605A シリーズ
表 24.21-1 I2C インタフェースのレジスタ一覧 <Helvetica>(4 / 4)
チャネル
8
9
10
11
CM71-10147-2
レジスタ略称
レジスタ名
2
IBCR8
I C バス制御レジスタ 8
参照先
24.21.1
SMR8
シリアルモードレジスタ 8
24.21.2
IBSR8
I2C バスステータスレジスタ 8
24.21.3
BGR8
ボーレートジェネレータレジスタ 8
24.21.8
SSR8
シリアルステータスレジスタ 8
24.21.4
RDR8
受信データレジスタ 8
24.21.5
TDR8
送信データレジスタ 8
24.21.5
ISMK8
7 ビットスレーブアドレスマスクレジスタ 8 24.21.6
ISBA8
7 ビットスレーブアドレスレジスタ 8
24.21.7
IBCR9
I2C バス制御レジスタ 9
24.21.1
SMR9
シリアルモードレジスタ 9
24.21.2
IBSR9
I2C バスステータスレジスタ 9
24.21.3
BGR9
ボーレートジェネレータレジスタ 9
24.21.8
SSR9
シリアルステータスレジスタ 9
24.21.4
RDR9
受信データレジスタ 9
24.21.5
TDR9
送信データレジスタ 9
24.21.5
ISMK9
7 ビットスレーブアドレスマスクレジスタ 9 24.21.6
ISBA9
7 ビットスレーブアドレスレジスタ 9
24.21.7
IBCRA
I2C バス制御レジスタ A
24.21.1
SMRA
シリアルモードレジスタ A
24.21.2
IBSRA
I2C バスステータスレジスタ A
24.21.3
BGRA
ボーレートジェネレータレジスタ A
24.21.8
SSRA
シリアルステータスレジスタ A
24.21.4
RDRA
受信データレジスタ A
24.21.5
TDRA
送信データレジスタ A
24.21.5
ISMKA
7 ビットスレーブアドレスマスクレジスタ A 24.21.6
ISBAA
7 ビットスレーブアドレスレジスタ A
24.21.7
IBCRB
I C バス制御レジスタ B
24.21.1
SMRB
シリアルモードレジスタ B
24.21.2
IBSRB
I2C バスステータスレジスタ B
24.21.3
BGRB
ボーレートジェネレータレジスタ B
24.21.8
SSRB
シリアルステータスレジスタ B
24.21.4
RDRB
受信データレジスタ B
24.21.5
TDRB
送信データレジスタ B
24.21.5
ISMKB
7 ビットスレーブアドレスマスクレジスタ B 24.21.6
ISBAB
7 ビットスレーブアドレスレジスタ B
2
FUJITSU SEMICONDUCTOR LIMITED
24.21.7
595
MB91605A シリーズ
表 24.21-2 I2C インタフェースのビット配置
bit15 bit14 bit13 bit12 bit11 bit10
IBCR/
SMR
MSS
SSR/
IBSR
REC TSET
bit9
ACT/
ACKE WSEL CNDE INTE BER
SCC
−
−
ORE RDRF TDRE
bit8
bit5
bit4
bit3
bit2
bit1
bit0
INT MD2 MD1 MD0
−
RIE
TIE
−
−
AL
RSC
SPC
BB
−
bit7
bit6
FBT RACK RSA TRX
RDR/
TDR
−
−
−
−
−
−
−
−
D7
D6
D5
D4
D3
D2
D1
D0
BGR1/
BGR0
−
B14
B13
B12
B11
B10
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
ISMK/
ISBA
EN
SM6
SM5
SM4
SM3
SM2 SM1 SM0 SAEN SA6
SA2
SA1
SA0
FCR1/
FCR0
−
−
−
FLST FLD FSET FCL2 FCL1 FE2
FE1
FD6
FD0
FLSTE FRIIE FDRQ FTIE FSEL
FBYTE2/
FD15 FD14 FD13 FD12 FD11 FD10 FD9
FBYTE1
596
FD8
−
FD7
SA5 SA4 SA3
FD5 FD4 FD3
FUJITSU SEMICONDUCTOR LIMITED
FD2
FD1
CM71-10147-2
MB91605A シリーズ
24.21.1
I2C バス制御レジスタ (IBCR)
I2C バス制御レジスタ (IBCR) は , マスタ / スレーブモード選択 , 反復スタート条件の
発生 , アクノリッジ許可 , 割込み許可設定 , バスエラー検出 , 割込みフラグを表示し
ます。
■ I2C バス制御レジスタ (IBCR)
図 24.21-1 に I2C バス制御レジスタ (IBCR) のビット構成を , 表 24.21-3 に各ビットの機
能を示します。
図 24.21-1 I2C バス制御レジスタ (IBCR) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
MSS
R/W
ACT/SCC
ACKE
WSEL
CNDE
INTE
BER
INT
R/W
R/W
R/W
R/W
R/W
R
R/W
バスエラー検出ビット
エラーなし
エラーを検出
INTE
0
1
割込み許可ビット
割込み禁止
割込み許可
CNDE
0
1
条件検出割込み許可ビット
反復スタートまたはストップ条件割込み禁止
反復スタートまたはストップ条件割込み許可
WSEL
0
1
ウェイト選択ビット
アクノリッジ後ウェイト(9ビット)
データ送受信完了後ウェイト(8ビット)
0
1
:リードオンリ
00000000B
BER
0
1
ACT/SCC
:リード/ライト可能
(SMR)
初期値
0
1
ACKE
0
1
R
bit7 ・・・・・・・・・・・ bit0
割込みフラグビット
書込み時
読出し時
INTビットのクリア
割込み要求なし
影響しません
割込み要求あり
INT
R/W
bit8
MSS
0
1
アクノリッジ許可ビット
アクノリッジ禁止
アクノリッジ許可
動作フラグ/反復スタート条件発生ビット
書込み時
読出し時
影響しません
動作なし
反復スタート条件発生
I2C動作中
マスタ/スレーブ選択ビット
スレーブモード選択
マスタモード選択
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
597
MB91605A シリーズ
表 24.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 <Helvetica>(1 / 5)
ビット名
機能
• 本ビットに "1" を設定すると I2C バスがアイドル状態 (EN=1, BB=0) のとき ,
マスタモードとなります。
• IBSR レジスタの BB ビットが "1" のとき , このビットに "1" を設定すると BB
ビットが "0" になるまでスタート条件の発生をウェイトします。そのウェイ
ト中にスレーブアドレスが一致してスレーブとして動作する場合には本
ビットは "0" になり , IBSR レジスタの AL ビットが "1" になります。
• マスタ動作中 (MSS=1, ACT=1) で割込みフラグ (INT) が "1" のとき , 本ビッ
トに "0" を書き込むとストップ条件が発生します。
MSS ビットは以下の条件でクリアされます。
• I2C インタフェースの禁止 (EN ビット =0)
• アービトレーションロスト発生時
• バスエラー検出 (BER ビット =1)
MSS:
マスタ /
bit15 スレーブ
選択
ビット
• INT=1 のとき , MSS ビットへの "0" 書込み
MSS ビットと ACT ビットの関係を以下に示します。
MSS ビット ACT ビット
0
0
0
1
1
0
1
1
状態
アイドル
スレーブアドレス一致または予約アドレスに対
し ACK 応答 * し , スレーブ動作中 ( スレーブ
モード )
マスタ動作待機中
マスタ動作中 ( マスタモード )
2
*:ACK 応答:アクノリッジ区間に I C バスの SDA が "L" であることを指しま
す。
( 注意事項 )
598
MSS ビットが "1" に設定されていて MSS ビットを "0" に変更す
る場合 , MSS ビット =1, INT ビット =1 のときに行ってくださ
い。ACT ビットが "1" のときに MSS ビットに "0" を書き込むと
INT ビットも "0" にクリアされます。
マスタ動作中 , MSS ビットに "0" を書き込んでも ACT ビットが
"1" の間は "1" が読み出されます。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 <Helvetica>(2 / 5)
ビット名
機能
このビットは , 読出しと書込みで意味が異なります。
読出し
書込み
ACT ビット
SCC ビット
ACT ビットはマスタモードまたはスレーブモードとして動作していることを
示します。
ACT ビットのセット条件:
• スタート条件を I2C バスに出力したとき ( マスタモード )
• スレーブアドレスとマスタから送信されたアドレスが一致したとき ( ス
レーブモード )
• 予約アドレスを検出し , それに対しアクノリッジ応答したとき (MSS=0
のときスレーブモードとなる )
ACT ビットのリセット条件:
< マスタモード >
• ストップ条件検出
• アービトレーションロスト検出
ACT/SCC:
動作フラグ /
bit14 反復スタート
条件発生ビッ
ト
• バスエラー検出
• I2C インタフェースの禁止 (EN ビット =0)
< スレーブモード >
• ( 反復 ) スタート条件検出
• ストップ条件検出
• 予約アドレス検出状態 (RSA ビット =1) でアクノリッジ応答しなかった
とき
• I2C インタフェースの禁止 (EN ビット =0)
• バスエラーの発生 (BER ビット =1)
マスタモード時 , このビットに "1" を書き込むと反復スタートを実行します。
"0" 書込みは無効です。
( 注意事項 ) SCC ビットへの "1" 書込みは , マスタモードの割込み中 (MSS=1,
ACT=1, INT=1) に行ってください。ACT ビットが "1" のときに
SCC ビットに "1" を書き込むと INT ビットは "0" にクリアされ
ます。
スレーブモード (MSS=0, ACT=1) 時 , 本ビットに "1" を書き込む
ことは禁止です。
SCC ビットに "1", MSS ビットに "0" を書き込んだ場合には ,
MSS ビットが優先されます。
リードモディファイライト (RMW) 系命令のリード時には SCC
ビットが読み出されます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
599
MB91605A シリーズ
表 24.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 <Helvetica>(3 / 5)
ビット名
機能
• 本ビットに "1" を設定するとアクノリッジタイミングで "L" を出力します。
• ACT=1 のときに本ビットを変更する場合 , INT ビットが "1" のときに行って
ください。
本ビットは以下の条件では無効となります。
• 予約アドレス以外のアドレスフィールドに対するアクノリッジ(自動生成)
• データ送信時 (RSA=0, TRX=1, FBT=0)
ACKE:
bit13 アクノリッジ
許可
ビット
• 受信 FIFO 許可でスレーブ受信時 (FE=1, MSS=0, ACT=1), 常に ACK 応答
します。
• 受信FIFO許可, WSELが"0", マスタ受信時(FE=1, MSS=1, ACT=1, WSEL=
0), TDRE ビットが "0" のとき ACK 応答し , TDRE ビットが "1" のとき
NACK 応答します。受信 FIFO 許可 , WSEL="0", 予約アドレス検出してス
レーブ送信時 (RSA=1, TRX=1, FBT=1), 常に ACK 応答します。NACK 応
答させる場合 , 予約アドレス検出後の割込み時 , 受信 FIFO を禁止にして
ACKE=0 にしてください。
• 受信 FIFO 許可 , WSEL が "1", マスタ受信で送信データレジスタにデータ
があるとき (FE=1, MSS=1, ACT=1, WSEL=1, TDRE=0)
• 本ビットはアクノリッジ前か後のどちらに割込み (INT=1) を発生させ , I2C
バスをウェイトさせるかを選択するビットです。
• WSEL ビットは以下の条件では無効になります。
• 第一バイト *1 に対する割込み発生時 (INT=1)
WSEL:
bit12 ウェイト
選択ビット
• 予約アドレス検出時 (FBT=1, RSA=1)
• FIFO 使用時のデータ転送途中での NACK 応答 *2 検出時 (FE=1, RACK=1,
ACT=1)
• 受信 FIFO 使用時 , 受信 FIFO がフルになったとき
*1: 第一バイト:( 反復 ) スタート条件後のデータを指します。
*2: NACK 応答:アクノリッジ期間 I2C バスの SDA が "H" であることを指し
ます。
CNDE:
bit11 条件検出
割込み許可
ビット
マスタモードまたはスレーブモード時 (ACT=1), ストップ条件または反復ス
タート条件が検出された場合 , 割込みの発生を許可するビットです。IBSR レ
ジスタの RSC または SPC ビットが "1" で本ビットが "1" のときに割込みが発
生します。
INTE:
bit10 割込み許可
ビット
マスタモードまたはスレーブモード時 , データ送受信およびバスエラーに対す
る割込み (INT=1) を許可するビットです。
600
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 <Helvetica>(4 / 5)
ビット名
機能
本ビットは I2C バス上でエラーを検出したことを示します。
BER ビットのセット条件:
• 第一バイト * 転送中にスタート条件またはストップ条件を検出
• 第二バイト以降 , データの 2 ビット∼ 9( アクノリッジ ) ビット目で ( 反
復 ) スタート条件またはストップ条件を検出
bit9
BER:
バスエラー
検出ビット
BER ビットのリセット条件:
• BER=1 のときに INT ビットへ "0" 書込みした場合
• I2C インタフェースの禁止 (EN=0) の場合
*: 第一バイト:( 反復 ) スタート条件後のデータを指します。
( 注意事項 ) 割込みフラグ (INT ビット ) が "1" になったときにこのビットを
確認し , "1" になっていると正常に送受信ができていませんので
再送などの処理を行ってください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
601
MB91605A シリーズ
表 24.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 <Helvetica>(5 / 5)
ビット名
bit8
602
機能
本ビットはマスタモード , スレーブモード時 , データ送受信の 8 ビット , 9
ビット (ACK) 後 , もしくはバスエラー時にこのフラグを "1" にセットします。
バスエラー時以外は , INT ビットが "1" になると SCL を "L" にし , INT ビット
が "0" になると SCL の "L" の状態を解除します。
INT ビットのセット条件:
< 8 ビット目>
• 第一バイトで予約アドレスを検出した場合
• WSEL が "1", 第二バイト以降でアービトレーションロストを検出した場
合
• WSEL が "1", マスタ動作中 , 第二バイト以降で TDRE ビットが "1" の場合
• WSEL が "1", スレーブ動作中 , 受信 FIFO 禁止 , 第二バイト以降で TDRE
ビットが "1" の場合
• WSELが"1", スレーブ送信中, 第二バイト以降でTDREビットが"1"の場合
< 9 ビット目>
• 第一バイトでアービトレーションロストを検出した場合
• ストップ条件出力設定 ( マスタ動作中の MSS ビットへの "0" 書込み ) 時
以外に NACK を受信した場合
• 第一バイトで予約アドレスを検出せずにマスタモードまたはスレーブ
モードの送信方向 (TRX=1) で TDRE ビットが "1" の場合
• 第一バイトで予約アドレスを検出せずにマスタモードまたはスレーブ
モードの受信方向 (TRX=0) で受信 FIFO 許可時に受信 FIFO にデータがあ
る場合
• 第一バイトで予約アドレスを検出せずにマスタモードまたはスレーブ
INT:
モードの受信方向(TRX=0)で受信FIFO禁止時にTDREビットが"1"の場合
割込み
• WSEL=0 設定時 , 第二バイト以降でアービトレーションロストを検出し
フラグビット
た場合
• WSEL=0 設定時 , マスタモード動作中に第二バイト以降で TDRE ビット
が "1" の場合
• WSEL=0 設定時 , スレーブ送信中に第二バイト以降で TDRE ビットが "1"
の場合
• WSEL=0 設定時 , 受信 FIFO 禁止でスレーブ受信の場合。ただし , 予約ア
ドレスを検出した第一バイトでのスレーブ受信では 9 ビット目では割込
みは発生しません。
• 受信 FIFO 許可 , スレーブ受信のときに受信 FIFO がフルになった場合
<その他>
バスエラー検出
INT ビットのリセット条件:
• INT ビットへの "0" 書込み
• INT ビットが "1", ACT ビットが "1" のときに MSS ビットへの "0" 書込み
• INT ビットが "1", ACT ビットが "1" のときに SCC ビットへの "1" 書込み
INT ビットへの "1" 書込みは無効です。
( 注意事項 ) EN ビットを "0" にした場合 , 受信タイミングによっては RDRF
ビットと INT ビットが "1" になることがあります。この場合 ,
受信データを読み出し , INT ビットをクリアしてください。
リードモディファイライト (RMW) 系命令のリード時には "1" が
読み出されます。
受信 FIFO 許可時 , マスタ受信動作で受信 FIFO がフルになって
も INT ビットには "1" がセットされません。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.21.2
シリアルモードレジスタ (SMR)
シリアルモードレジスタ (SMR) は , 動作モードの設定 , 送受信割込みの許可 / 禁止
の設定を行います。
■ シリアルモードレジスタ (SMR)
図 24.21-2 にシリアルモードレジスタ (SMR) のビット構成を , 表 24.21-4 に各ビットの
機能を示します。
図 24.21-2 シリアルモードレジスタ (SMR) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・ bit8
(IBCR)
bit7
bit6
bit5
bit4
bit3
MD2 MD1 MD0 予約 RIE
bit2
bit1
bit0
TIE
予約 予約
初期値
00000000B
R/W R/W R/W R/W R/W R/W R/W R/W
予約ビット
常に“00B”を設定してください。
TIE
0
1
送信割込み許可ビット
送信割込み禁止
送信割込み許可
RIE
0
1
受信割込み許可ビット
受信割込み禁止
受信割込み許可
予約ビット
常に"0"を設定してください。
R/W
:リード/ライト可能
:初期値
動作モード設定ビット
MD2 MD1 MD0
0
0
0
動作モード0(非同期ノーマルモード)
0
0
1
動作モード1(非同期マルチプロセッサモード)
0
1
0
動作モード2(クロック同期モード)
1
0
0
動作モード4(I2Cモード)
(注意事項) 動作モード4のレジスタおよび動作について説明します。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
603
MB91605A シリーズ
表 24.21-4 シリアルモードレジスタ (SMR) の各ビットの機能説明
ビット名
機能
動作モードを設定します。
"000B":動作モード 0( 非同期ノーマルモード ) に設定されます。
"001B":動作モード 1( 非同期マルチプロセッサモード ) に設定されます。
bit7
∼
bit5
MD2, MD1,
MD0:
動作モード
設定ビット
bit4
予約ビット
"010B":動作モード 2( クロック同期モード ) に設定されます。
"100B":動作モード 4(I2C モード ) に設定されます。
動作モード 4(I2C モード ) のレジスタおよび動作について説明します。
( 注意事項 ) 上記の設定以外は禁止です。
動作モードを切り換える場合は , I2C 禁止 (ISMK:EN=0) 後 ,
動作モードを切り換えてください。
動作モード設定後 , 各レジスタを設定してください。
本ビットには , 必ず "0" を設定してください。
• CPU への受信割込み要求出力を許可 / 禁止するビットです。
bit3
RIE:
受信割込み
許可ビット
• RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , またはエ
ラーフラグビット (ORE) が "1" の場合 , 受信割込み要求を出力します。
( 注意事項 )
I2C バス制御レジスタ (IBCR) の INT ビットを使用して
データを受信する場合 , 本ビットを "0" にしてください。
• CPU への送信割込み要求出力を許可 / 禁止するビットです。
bit2
bit1,
bit0
TIE:
送信割込み
許可ビット
予約ビット
• TIE ビットと TDRE ビットが "1" の場合 , 送信割込み要求を出力します。
( 注意事項 )
I2C バス制御レジスタ (IBCR) の INT ビットを使用して
データを送信する場合 , 本ビットを "0" にしてください。
本ビットには , 必ず "00B" を設定してください。
<注意事項>
動作モードを変更すると , ほかのレジスタが初期化されるので動作モードは最初に設定し
てください。ただし , 16 ビット書込みで IBCR と SMR を同時に書き込んだとき , IBCR に
は書き込んだ内容が反映されます。
604
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
I2C バスステータスレジスタ (IBSR)
24.21.3
I2C バスステータスレジスタ (IBSR) は , ファーストバイト , 予約アドレス , 反復ス
タート , アクノリッジ , データ方向 , アービトレーションロスト , ストップ条件 , I2C
バス状態を検出したことを示します。
■ I2C バスステータスレジスタ (IBSR)
図 24.21-3 に I2C バスステータスレジスタ (IBSR) のビット構成を , 表 24.21-5 に各ビッ
トの機能を示します。
図 24.21-3 I2C バスステータスレジスタ (IBSR) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・
(SSR)
bit8
bit7
bit6
bit5
R
R
R
0
1
マスタ
スレーブ
:リード/ライト可能
R
:リードオンリ
:初期値
CM71-10147-2
AL
R
bit2
bit1
RSC SPC
初期値
bit0
BB
R/W R/W
00000000B
R
バス送受信状態
SPC
0
1
R
bit3
バス状態ビット
バスアイドル状態
BB
R/W
bit4
FBT RACK RSA TRX
ストップ条件確認ビット
ストップ条件未検出
ストップ条件検出またはストップ条件出
力時のアービトレーションロスト発生
ストップ条件検出
RSC
0
1
反復スタート条件確認ビット
反復スタート条件未検出
反復スタート条件検出
AL
0
1
アービトレーションロストビット
アービ トレーションロスト発生なし
アービトレーションロスト発生
TRX
0
1
データ方向ビット
受信方向
送信方向
RSA
0
1
予約アドレス検出ビット
予約アドレス未検出
予約アドレス検出
RACK
0
1
アクノリッジフラグビット
“L”受信
“H”受信
FBT
0
1
ファーストバイトビット
ファーストバイト以外
ファーストバイト送受信中
FUJITSU SEMICONDUCTOR LIMITED
605
MB91605A シリーズ
表 24.21-5 I2C バスステータスレジスタ (IBSR) の各ビットの機能説明 <Helvetica>(1 / 3)
ビット名
bit7
bit6
機能
FBT:
ファースト
バイトビット
第一バイトを示すビットです。
FBT ビットのセット条件:
( 反復 ) スタート条件を検出した場合
FBT ビットのクリア条件:
• 2 バイト目の送受信
• ストップ条件検出
• I2C インタフェースの禁止 (EN ビット =0)
• バスエラー検出 (BER ビット =1)
RACK:
アクノリッジ
フラグビット
第一バイト , マスタモード時またはスレーブモード時に受信したアク
ノリッジをこのビットに示します。
RACK ビットの更新条件
• ファーストバイト時のアクノリッジ
• マスタモードまたはスレーブモード時のデータのアクノリッジ
RACK ビットのクリア条件 (RACK ビット =0)
• ( 反復 ) スタート条件検出
• I2C インタフェースの禁止 (EN ビット =0)
• バスエラー検出 (BER ビット =1)
本ビットは予約アドレスを検出したことを示すビットです。
RSA ビットのセット条件 (RSA=1)
一バイト目が (0000XXXXB) または (1111XXXXB)。"X" は "0" また
bit5
606
RSA:
予約アドレス
検出ビット
は "1" を示します。
RSA ビットのリセット条件 (RSA=0)
• ( 反復 ) スタート条件検出
• ストップ条件検出
• I2C インタフェースの禁止 (EN ビット =0)
• バスエラー検出 (BER ビット =1)
第一バイトで RSA ビットが "1" になると , その一バイトの 8 ビット目
の SCL の立下りで , FIFO 許可 , 禁止に関係なく割込みフラグ (INT) を
"1" にして SCL を "L" にします。このとき , 受信データを読み出し , ス
レーブとして動作させる場合には ACKE を "1" に設定し , 割込みフラ
グ (INT) を "0" にクリアします。その後 , TRX ビットが "0" であれば ,
スレーブとしてデータを受信します。途中でデータを受信させない場
合には ACKE ビットを "0" にします。それ以降 , データを受信しませ
ん。
( 注意事項 ) データ転送中に ACKE を "0" にした場合には , ストップ
条件または反復スタート条件を検出するまで ACKE を
"1" にすることは禁止です。
予約アドレス検出による割込み時 , スレーブ送信を確認
した場合 , 受信 FIFO が許可になっていると ACK 応答し
ますので受信 FIFO を禁止にし , ACKE=0 にしてくださ
い。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-5 I2C バスステータスレジスタ (IBSR) の各ビットの機能説明 <Helvetica>(2 / 3)
ビット名
bit4
bit3
機能
TRX:
データ方向
ビット
本ビットはデータの方向を示すビットです。
TRX ビットのセット条件:
• マスタモードで ( 反復 ) スタート条件を送信
• スレーブモードで第一バイトの 8 ビット目が "1" の場合 ( スレー
ブとして送信方向 )
TRX ビットのリセット条件:
• アービトレーションロスト発生 (AL=1)
• スレーブモードでファーストバイトの 8 ビット目が "0" の場合
( スレーブとして受信方向 )
• マスタモードでファーストバイトの 8 ビット目が "1" の場合
( マスタとして受信方向 )
• ストップ条件検出
• マスタモード以外で ( 反復 ) スタート条件検出
• I2C インタフェースの禁止 (EN ビット =0)
• バスエラー検出 (BER ビット =1)
AL:
アービトレー
ションロスト
ビット
本ビットはアービトレーションロストを示します。
AL ビットのセット条件:
• マスタモード時 , 出力しているデータと受信したデータが異なる
場合
• MSS ビットに "1" を設定したが , スレーブとして動作している場
合
• マスタモード時 , 第二バイト目以降のデータの 1 ビット目で反復
スタート条件を検出した場合
• マスタモード時 , 第二バイト目以降のデータの 1 ビット目でス
トップ条件を検出した場合
• マスタモード時 , 反復スタート条件を発生させようとして発生で
きない場合
• マスタモード時 , ストップ条件を発生させようとして発生できな
い場合
AL ビットのリセット条件:
• MSS ビットへの "1" 書込み
• INT ビットへの "0" 書込み
• AL ビット =1, SPC ビット =1 のときに SPC ビットへの "0" 書込み
• I2C インタフェースの禁止 (EN ビット =0)
• バスエラー検出 (BER ビット =1)
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
607
MB91605A シリーズ
表 24.21-5 I2C バスステータスレジスタ (IBSR) の各ビットの機能説明 <Helvetica>(3 / 3)
ビット名
bit2
bit1
bit0
608
機能
RSC:
反復スタート
条件確認
ビット
マスタモードまたはスレーブモード時に反復スタート条件を検出した
ことを示すビットです。
RSC ビットのセット条件:
スレーブモードまたはマスタモードで動作中にアクノリッジ後 , 反
復スタート条件が検出された場合
RSC ビットのリセット条件:
(1) RSC ビットへの "0" 書込み
(2) MSS ビットへの "1" 書込み
(3) I2C インタフェースの禁止 (EN ビット =0)
本ビットへの "1" 書込みは無効となります。
( 注意事項 ) 予約アドレス検出によってスレーブモードとして受信動
作中 , アクノリッジ応答しなかった場合 , スレーブモー
ドを終了しますので次に反復スタート条件を検出しても
本ビットに "1" はセットされません。
リードモディファイライト (RMW) 系命令のリード時に
は "1" が読み出されます。
SPC:
ストップ条件
確認ビット
マスタモードまたはスレーブモード時にストップ条件を検出したこと
を示すビットです。
SPC ビットのセット条件:
(1) スレーブモードまたはマスタモードで動作中にストップ条件が
検出された場合
(2) マスタモード時 , ストップ条件発生動作でアービトレーションロ
ストが発生した場合
SPC ビットのリセット条件:
(1) 本ビットへの "0" 書込み
(2) MSS ビットへの "1" 書込み
(3) I2C インタフェースの禁止 (EN ビット =0)
本ビットへの "1" 書込みは無効です。
( 注意事項 ) 予約アドレス検出によってスレーブモードとして受信動
作中 , アクノリッジ応答しなかった場合 , スレーブモー
ドを終了しますので次にストップ条件を検出しても本
ビットに "1" はセットされません。
リードモディファイライト (RMW) 系命令のリード時に
は "1" が読み出されます。
BB:
バス状態
ビット
本ビットはバスの状態を示します。
BB ビットのセット条件:
I2C バスの SDA または SCL で "L" を検出した場合
BB ビットのリセット条件:
(1) ストップ条件を検出した場合
(2) I2C インタフェースの禁止 (EN ビット =0)
(3) バスエラー検出 (BER ビット =1)
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
24.21.4
シリアルステータスレジスタ (SSR)
シリアルステータスレジスタ (SSR) は , 送受信状態の確認を行います。
■ シリアルステータスレジスタ (SSR)
図 24.21-4 にシリアルステータスレジスタ (SSR) のビット構成を , 表 24.21-6 に各ビッ
トの機能を示します。
図 24.21-4 シリアルステータスレジスタ (SSR) のビット構成
bi t15 bit14
bit13
bit12
REC TSET
-
-
R/W R/W
-
-
bit11
bit10
bit9
ORE RDRF TDRE
R
R
R
bit8
bit7
・・・・・・・・・・・・・・・・・
-
初期値
bit0
(IBSR)
00--001-B
-
未定義ビット
リード時,値は不定です。ライト時,影響しません
1
送信データエンプティフラグビット
送信データレジスタTDRにデータが存在する
送信データレジスタがエンプティ
RDRF
0
1
受信データフルフラグビット
受信データレジスタRDRがエンプティ
受信データレジスタRDRにデータが存在する
TDRE
0
ORE
0
1
オーバランエラーフラグビット
オーバランエラーなし
オーバランエラーあり
未定義ビット
リード時,値は不定です。ライト時,影響しません
TSET
0
1
REC
R/W :リード/ライト可能
R
:リードオンリ
-
:未定義ビット
0
1
送信バッファエンプティフラグセットビット
書込み時
読出し時
影響なし
常に"0"をリード
TDREビットセット
受信エラーフラグクリアビット
書込み時
読出し時
影響なし
常に"0"をリード
受信エラーフラグ
(ORE)のクリア
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
609
MB91605A シリーズ
表 24.21-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
bit15
REC:
受信エラー
フラグクリア
ビット
機能
シリアルステータスレジスタ (SSR) の ORE ビットをクリアするビッ
トです。
• "1" 書込みで , ORE ビットがクリアされます。
• "0" 書込みは , 影響しません。
リードした場合 , 常に "0" が読み出されます。
bit14
bit13,
bit12
TSET:
送信バッファ
エンプティ
フラグセット
ビット
未定義ビット
シリアルステータスレジスタ (SSR) の TDRE ビットをセットする
ビットです。
• "1" 書込みで , TDRE ビットがセットされます。
• "0" 書込みは , 影響しません。
リードした場合 , 常に "0" が読み出されます。
リードした場合 : 値は不定です。
ライトした場合 : 影響しません。
• 受信時にオーバランが発生すると "1" にセットされ , シリアルス
テータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリアさ
bit11
ORE:
オーバラン
エラー
フラグビット
れます。
• OREビットとRIEビットが"1"の場合, 受信割込み要求を出力します。
• 本フラグがセットされた場合 , 受信データレジスタ (RDR) は無効で
す。
• 受信 FIFO 使用時 , 本フラグがセットされた場合には受信データは
受信 FIFO には格納されません。
610
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
機能
• 受信データレジスタ (RDR) の状態を示すフラグです。
• RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , 受信割
込み要求を出力します。
• RDR に受信データがロードされると "1" にセットされ , 受信データ
レジスタ (RDR) を読み出すと "0" にクリアされます。
• データの 8 ビット目の SCL 立下りタイミングでセットされます。
• NACK 応答でもセットされます。
bit10
RDRF:
受信データ
フルフラグ
ビット
• 受信FIFO使用時は, 受信FIFOに所定のデータ数を受信したらRDRF
が "1" にセットされます。
• 受信 FIFO 使用時は , 受信 FIFO がエンプティになると "0" にクリア
されます。
• 受信 FIFO 使用時は , 受信 FIFO に所定のデータ数を受信せずに受信
FIFO にデータが残っていて受信アイドル状態が受信ボーレートク
ロックで 8 クロック以上続き , BER ビットが "0" のとき RDRF が "1"
にセットされます。8 クロックカウント中 , RDR を読み出すとその
カウンタは "0" にリセットされ , 再度 8 クロックをカウントします。
( 注意事項 )
NACK 応答: アクノリッジ期間 , I2C バスの SDA が "H" であること
を指します。
• 送信データレジスタ (TDR) の状態を示すフラグです。
• TIE ビットと TDRE ビットが "1" の場合 , 送信割込み要求を出力し
ます。
• TDR に送信データを書き込むと "0" となり , TDR に有効なデータが
bit9
TDRE:
送信データ
エンプティ
フラグビット
存在していることを示します。データが送信シフトレジスタにロー
ドされて送信が開始されると "1" となり , TDR に有効なデータが存
在していないことを示します。
• シリアルステータスレジスタ (SSR) の TSET ビットに "1" を書き込
むとセットされます。アービトレーションロスト , バスエラーなど
を検出した場合 , TDRE ビットを "1" にセットしたいときに使用し
ます。
bit8
未定義ビット
CM71-10147-2
リードした場合 : 値は不定です。
ライトした場合 : 影響しません。
FUJITSU SEMICONDUCTOR LIMITED
611
MB91605A シリーズ
受信データレジスタ / 送信データレジスタ
(RDR/TDR)
24.21.5
受信データレジスタと送信データレジスタは同一アドレスに配置されています。読
み出した場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレ
ジスタとして機能します。
■ 受信データレジスタ (RDR)
図 24.21-5 にシリアル受信レジスタ (RDR) のビット構成を示します。
図 24.21-5 受信データレジスタ (RDR) のビット構成
bit15................bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D7
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
R
初期値
00000000B
I2C モード時 , bit8 は未使用
R:リードオンリ
受信データレジスタ (RDR) は, シリアルデータ受信用のデータバッファレジスタです。
• シリアルデータライン (SDA 端子 ) に送られてきたシリアルデータ信号がシフトレ
ジスタで変換されて , 受信データレジスタ (RDR) に格納されます。
• 第一バイト * を受信した場合 , 最下位ビット (RDR:D0) がデータ方向ビットとなりま
す。
• 受信データが受信データレジスタ (RDR) に格納されると , 受信データフルフラグ
ビット (SSR:RDRF) が "1" にセットされます。
• 受信データフルフラグビット (SSR:RDRF) は , 受信データレジスタ (RDR) を読み
出すと自動的に "0" にクリアされます。
* : ( 反復 ) スタート条件後のデータを指します。
<注意事項>
• 受信 FIFO 使用時は , 受信 FIFO に所定のデータ数を受信すると RDRF が "1" にセット
されます。
• 受信 FIFO 使用時は , 受信 FIFO がエンプティになると RDRF が "0" にクリアされます。
612
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ 送信データレジスタ (TDR)
図 24.21-6 に送信データレジスタのビット構成を示します。
図 24.21-6 送信データレジスタ (TDR) のビット構成
bit15.................bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
W:ライトオンリ
D7
D6
D5
D4
D3
D2
D1
D0
W
W
W
W
W
W
W
W
初期値
11111111B
I2C モード時 , bit8 は未使用
送信データレジスタ (TDR) は , シリアルデータ送信用のデータバッファレジスタです。
• 送信データレジスタ (TDR) の値の MSB ファーストでシリアルデータライン (SDA 端
子 ) に出力します。
• 第一バイトを送信する場合 , 最下位ビット (TDR:D0) がデータ方向ビットになりま
す。
• 送信データエンプティフラグ (SSR:TDRE) は , 送信データが送信データレジスタ
(TDR) に書き込まれると "0" にクリアされます。
• 送信データエンプティフラグ (SSR:TDRE) は , 送信用シフトレジスタへ転送される
と "1" にセットされます。
• 次の送信データの書込みは , 以下の条件のときに行ってください。
- 割込みフラグ (INT ビット ) が "1"
- バスエラーが発生していない (BER ビット =0)
- アクノリッジが ACK 応答 ( アクノリッジとして "0" 受信 )
• 送信 FIFO 禁止時 , データエンプティフラグ (SSR:TDRE) が "0" のときは送信デー
タレジスタ (TDR) に送信データを書き込むことはできません。
• 送信 FIFO 使用時 , データエンプティフラグ (SSR:TDRE) が "0" であっても送信 FIFO
の容量まで送信データを書き込むことが可能です。
<注意事項>
送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読出し専用のレジ
スタです。2 つのレジスタは同一アドレスに配置されているため , 書込み値と読出し値が
異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW) 系命令は
使用できません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
613
MB91605A シリーズ
7 ビットスレーブアドレスマスクレジスタ (ISMK)
24.21.6
7 ビットスレーブアドレスマスクレジスタ (ISMK) は , スレーブアドレスの各ビット
の比較をするか設定するレジスタです。
■ 7 ビットスレーブアドレスマスクレジスタ (ISMK)
図 24.21-7 に 7 ビットスレーブアドレスレジスタ (ISMK) のビット構成を , 表 24.21-7 に
各ビットの機能を示します。
図 24.21-7 7 ビットスレーブマスクレジスタ (ISMK) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
EN
SM6 SM5
SM4 SM3 SM2 SM1
SM0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7
・・・・・・・・・・・・・・・・・・・ bit0
(ISBA)
SM6~SM0
0
1
R/W
:リード/ライト可能
初期値
EN
0
1
01111111B
スレーブアドレスマスクビット
ビット比較しない
ビット比較する
I2Cインタフェース許可ビット
禁止
許可
:初期値
表 24.21-7 7 ビットスレーブマスクレジスタ (ISMK) の各ビットの機能説明
ビット名
614
機能
bit15
EN:
I2C インタ
フェース
許可ビット
I2C インタフェースの動作を許可 / 禁止するビットです。
"0" に設定した場合:I2C インタフェースは動作禁止状態になります。
"1" に設定した場合:I2C インタフェースが動作可能となります。
( 注意事項 ) IBSR レジスタの BER ビットが "1" にセットされても ,
本ビットは "0" にクリアされません。
本ビットが "0" のときにボーレートジェネレータを設定
してください。
本ビットが "0" のときに 7 ビットスレーブアドレスおよ
び 7 ビットスレーブマスクレジスタを設定してくださ
い。
送信中に EN ビットを "0" にすると I2C バスの SDA/
SCL にパルスが発生することがあります。
FIFO 許可の場合 , FIFO を禁止にして EN ビットに "0"
を書いてください。
bit14
∼
bit8
SM6 ∼ SM0:
スレーブ
アドレス
マスクビット
7 ビットスレーブアドレスと受信したアドレスに対し , 比較対象外に
するかどうかを設定するビットです。
"1" を設定したビット:比較する
"0" を設定したビット:一致したものとして処理する
( 注意事項 ) EN ビットが "0" のときに本レジスタを設定してくださ
い。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
7 ビットスレーブアドレスレジスタ (ISBA)
24.21.7
7 ビットスレーブアドレスレジスタ (ISBA) は , スレーブアドレスを設定するレジス
タです。
■ 7 ビットスレーブアドレスレジスタ (ISBA)
図 24.21-8 に 7 ビットスレーブアドレスレジスタ (ISBA) のビット構成を , 表 24.21-8 に
各ビットの機能を示します。
図 24.21-8 7 ビットスレーブアドレスレジスタ (ISBA) のビット構成
bit15
・・・・・・・・・・・・・・・・・
(ISMK)
bit8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
SAEN SA6 SA5 SA4 SA3 SA2 SA1 SA0
初期値
00000000B
R/W R/W R/W R/W R/W R/W R/W R/W
6~0
スレーブアドレス設定ビット
7ビットスレーブアドレス
SAEN
0
1
スレーブアドレス許可ビット
禁止
許可
SA
R/W
:リード/ライト可能
:初期値
表 24.21-8 7 ビットスレーブアドレスレジスタ (ISBA) の各ビットの機能説明
ビット名
機能
スレーブアドレスの検出許可ビットです。
"0" を設定した場合:スレーブアドレスを検出しません。
"1" を設定した場合:ISBA, ISMK の設定と受信した第一バイトと比較を
行います。
bit7
SAEN:
スレーブ
アドレス
許可ビット
bit6
∼
bit0
7 ビットスレーブアドレスレジスタ (ISBA) は , スレーブアドレス検出が
許可 (SAEN=1) されていると , ( 反復 ) スタート条件検出後に受信した 7
ビットのデータが本レジスタと比較し , 全ビットが一致するとスレーブ
モードとして動作し , ACK を出力します。そのとき , 受信したスレーブ
SA6 ∼ SA0: アドレスは本レジスタにセットされます (SAEN=0 の場合は , ACK を出力
しません )。
スレーブ
アドレス
ISMK レジスタに "0" を設定したアドレスビットは比較対象外となりま
す。
( 注意事項 ) 予約アドレスの設定は禁止です。
本レジスタは ISMK レジスタの EN ビットが "0" のときに
設定してください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
615
MB91605A シリーズ
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)
24.21.8
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) は , シリアルクロックの分周
比を設定します。
■ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成
図 24.21-9 にボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成を示し
ます。
図 24.21-9 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成
bit15
bit14
bit13
(-)
bit12
bi t11 bit10
bit9
bit8
bit7
bit6
bit5
(BGR1)
-
R/W
R/W
R/W
R/W : リード/ライト可能
R/W
bit4
bit3
bit2
bit1
初期値
bit0
-0000000B
00000000B
(BGR0)
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
BGR0
ライト
リード
ボーレートジェネレータレジスタ0
リロードカウンタbit0~bit7に書込む
BGR0の設定値が読み出す
BGR1
ライト
リード
ボーレートジェネレータレジスタ1
リロードカウンタbit8~bit14に書込む
BGR1の設定値が読み出す
未定義ビット
リード時,値は不定です。ライト時,影響しません
ボーレートジェネレータレジスタはシリアルクロックの分周比を設定します。
BGR1 は上位ビット , BGR0 は下位ビットに対応し , カウントするリロード値の書込み ,
BGR1/BGR0 の設定値の読出しが可能です。
ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むとリロー
ドカウンタはカウントを開始します。
<注意事項>
• ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) への書込みは , 16 ビットアクセ
スで行ってください。
• ISMK レジスタの EN ビットが "0" のときにボーレートジェネレータレジスタの設定を
行ってください。
• マスタモード , スレーブモードに関係なくボーレートを設定してください。
• 動作モード 4(I2C モード ) では周辺クロック (PCLK) は 8 MHz 以上で使用し , 400kbps
を超えるボーレートジェネレータの設定は禁止です。
616
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
FIFO 制御レジスタ 1(FCR1)
24.21.9
FIFO 制御レジスタ 1 (FCR1) は , 送受信 FIFO の選択 , 送信 FIFO 割込み許可の設定
および割込みフラグの制御を行います。
■ FIFO 制御レジスタ 1(FCR1) のビット構成
図 24.21-10 に FIFO 制御レジスタ 1 (FCR1) のビット構成を , 表 24.21-9 に各ビットの機
能を示します。
図 24.21-10 FIFO 制御レジスタ 1(FCR1) のビット構成
bit15
bit14
bit13
予約
予約
-
R/W
R/W
-
bit12
bit11
bit10
bit9
FLSTE FRIIE FDRQ FTIE
R/W
R/W
R/W
R/W
bit8
・・・・・・・・・・・・・・・・・・・・・
bit7
bit0
(FCR0)
FSEL
初期値
00-00100B
R/W
FSEL
0
1
FIFO選択ビット
送信FIFO:FIFO1, 受信FIFO:FIFO2
送信FIFO:FIFO2, 受信FIFO:FIFO1
FTIE
0
1
送信FIFO割込み許可ビット
送信FIFO割込み禁止
送信FIFO割込み許可
FDRQ
送信FIFOデータ要求ビット
送信FIFOデータ要求なし
送信FIFOデータ要求あり
0
1
FRIIE
0
1
FLSTE
0
1
受信FIFOアイドル検出許可ビット
受信FIFOアイドル検出禁止
受信FIFOアイドル検出許可
再送データロスト検出許可ビット
データロスト検出禁止
データロスト検出許可
未定義ビット
リード時,値は不定です。ライト時,影響しません
予約ビット
常に"0"を設定してください。
R/W
:リード/ライト可能
:初期値
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
617
MB91605A シリーズ
表 24.21-9 FIFO 制御レジスタ 1(FCR1) の各ビットの機能説明 <Helvetica>(1 / 2)
ビット名
機能
bit15,
bit14
予約ビット
常に "00B" を書き込んでください。
bit13
未定義ビット
リードした場合:値は不定です。
ライトした場合:影響しません。
bit12
FLSTE:
再送データ
ロスト検出
許可ビット
FLST ビット検出を許可するビットです。
"0" に設定した場合:FLST ビット検出禁止
"1" に設定した場合:FLST ビット検出許可
( 注意事項 ) 本ビットに "1" を設定する場合 , FSET ビットに "1" を
設定してから本ビットに "1" を設定してください。
bit11
FRIIE:
受信 FIFO
アイドル検出
許可ビット
受信 FIFO に有効なデータが存在した状態でボーレートクロックで 8
クロック以上の受信アイドル状態を検出するかどうかを設定するビッ
トです。受信割込みが許可 (SCR:RIE=1) されているときに受信アイド
ル状態が検出されると受信割込みが発生します。
"0" に設定した場合:受信アイドル状態検出禁止
"1" に設定した場合:受信アイドル状態検出許可
送信 FIFO のデータ要求ビットです。
本ビットが "1" のとき , 送信データを要求していることを示します。
このとき , 送信割込みが許可 (FTIE=1) されていると送信 FIFO 割込み
要求が出力されます。
FDRQ セット条件
• FBYTE( 送信用 )=0 ( 送信 FIFO がエンプティ )
• 送信 FIFO のリセット
bit10
FDRQ:
送信 FIFO
データ
要求ビット
FDRQ リセット条件
• 本ビットへの "0" 書込み
• 送信 FIFO が Full になった場合
( 注意事項 )
bit9
618
FTIE:
送信 FIFO
割込み許可
ビット
FBYTE( 送信用 )=0 のときに本ビットへの "0" 書込みは
禁止です。
本ビットが "0" のときに FSEL ビットの変更は禁止で
す。
本ビットに "1" を設定した場合 , 動作に影響を与えませ
ん。
リードモディファイライト (RMW) 系命令時には , "1"
が読み出されます。
送信 FIFO の割込み許可ビットです。本ビットに "1" を設定すると
FDRQ ビットが "1" のときに割込みが発生します。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-9 FIFO 制御レジスタ 1(FCR1) の各ビットの機能説明 <Helvetica>(2 / 2)
ビット名
bit8
FSEL:
FIFO 選択
ビット
CM71-10147-2
機能
送受信 FIFO を選択するビットです。
"0" に設定した場合:送信 FIFO:FIFO1, 受信 FIFO:FIFO2 に割り当
てられます。
"1" に設定した場合:送信 FIFO:FIFO2, 受信 FIFO:FIFO1 に割り当
てられます。
( 注意事項 ) 本ビットは , FIFO リセット (FCL2, FCL1=1) ではクリア
されません。
本ビットを変更する場合は , FIFO 動作禁止 (FCR0: FE2,
FE1=0) にしてから行ってください。
FUJITSU SEMICONDUCTOR LIMITED
619
MB91605A シリーズ
24.21.10 FIFO 制御レジスタ 0(FCR0)
FIFO 制御レジスタ 0(FCR0) は , FIFO 動作の許可 / 禁止 , FIFO リセット , リードポ
インタの保存 , 再送信設定を行います。
■ FIFO 制御レジスタ 0(FCR0) のビット構成
図 24.21-11 に FIFO 制御レジスタ 0 (FCR0) のビット構成を , 表 24.21-10 に各ビットの
機能を示します。
図 24.21-11 FIFO 制御レジスタ 0(FCR0) のビット構成
bit15
・・・・・・・・・・・・・・・・・・・・・ bit8
bit7
(FCR1)
-
-
bit2
bit1
FLST FLD FSET FCL2 FCL1 FE2
R
R/W
R/W
R/W
R/W
R/W
FIFO2動作許可ビット
FIFO2動作禁止
FIFO2動作許可
0
1
:リードオンリ
bit3
FE2
0
1
FCL2
R
bit4
FIFO1動作許可ビット
FIFO1動作禁止
FIFO0動作許可
0
1
:リード/ライト可能
bit5
FE1
0
1
FCL1
R/W
bit6
bit0
初期値
FE1 -0000000 B
R/W
FIFO1リセットビット
書込み時
読出し時
影響なし
常に”0”をリード
FIFO1リセット
FIFO2リセットビット
書込み時
読出し時
影響なし
常に”0”をリード
FIFO2リセット
FSET
0
1
FIFOポインタ保存ビット
保存しない
保存実行
FLD
0
1
FIFOポインタリロードビット
リロードしない
リロード実行
FLST
0
1
FIFO再送データロストフラグビット
データロストなし
データロストあり
未定義ビット
リード時,常に”0”をリード。ライト時,常に”0”をライト
:初期値
620
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-10 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(1 / 3)
ビット名
bit7
bit6
未定義ビット
FLST:
FIFO 再送
データロスト
フラグビット
機能
リードした場合:常に "0" が読み出されます。
ライトした場合:常に "0" を書いてください。
送信 FIFO の再送データが失われたことを示すビットです。
FLST セット条件
FIFO 制御レジスタ 1(FCR1) の FLSTE ビットが "1" で送信 FIFO のライ
トポインタと FSET ビットによって保存 したリードポインタが一致し
ているときに FIFO へ書き込んだ場合
FLST リセット条件
• FIFO リセット (FCL への "1" 書込み )
• FSET ビットへの "1" 書込み
本ビットに "1" が設定されると FSET ビットで保存したリードポインタ
が示すデータを上書きしてしまい , エラーが発生しても FLD ビットに
よって再送の設定ができません。本ビットに "1" が設定された状態で再
送を行う場合には FIFO リセットを実施し , 再度 FIFO にデータを書き
込んでください。
bit5
bit4
bit3
FLD:
FIFO
ポインタ
リロード
ビット
送信 FIFO に FSET ビットによって保存したデータをリードポインタに
リロードするビットです。本ビットは通信エラーなどが発生し再送す
るときに使用します。
再送設定が完了した場合 , 本ビットは "0" になります。
( 注意事項 ) 本ビットが "1" にセットされている間 , リードポインタへ
のリロード中なので FIFO リセット以外の書込みは行わな
いでください。
FIFO 許可状態または送信中 , 本ビットに "1" を設定する
ことは禁止です。
TIE ビットを "0" にしてから本ビットに "1" を書き込み ,
送信 FIFO 許可後 , TIE ビットを "1" にしてください。
FSET:
FIFO
ポインタ
保存ビット
送信 FIFO のリードポインタを保存するビットです。
送信前にリードポインタを保存すると , 通信エラーなどが発生した場合 ,
FLST ビットが "0" であれば再送可能となります。
"1" に設定した場合:現在のリードポインタの値を保存します。
"0" に設定した場合:影響しません。
( 注意事項 ) 送信バイト数 (FBYTE1/FBYTE2) が "0" を示しているとき
に本ビットを "1" に設定してください。
FCL2:
FIFO2
リセット
ビット
FIFO2 をリセットするビットです。
本ビットを "1" に設定すると , FIFO2 の内部状態を初期化します。
FCR0:FLST ビットのみ初期化され , FCR1/ FCR0 レジスタのほかのビッ
トは保持されます。
( 注意事項 ) FIFO2 を禁止してから , FIFO2 リセットを実行してくださ
い。
送信 FIFO 割込み許可ビットを "0" にしてから実行してく
ださい。
FBYTE2 レジスタの有効データ数は "0" になります。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
621
MB91605A シリーズ
表 24.21-10 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(2 / 3)
ビット名
bit2
FCL1:
FIFO1
リセット
ビット
機能
FIFO1 をリセットするビットです。
本ビットを "1" に設定すると , FIFO1 の内部状態を初期化します。
FCR0:FLST ビットのみ初期化され , FCR1/FCR0 レジスタのほかのビッ
トは保持されます。
( 注意事項 ) FIFO1 を禁止してから , FIFO1 リセットを実行してくださ
い。
送信 FIFO 割込み許可ビットを "0" にしてから実行してく
ださい。
FBYTE1 レジスタの有効データ数は "0" になります。
FIFO2 の動作を許可 / 禁止するビットです。
• FIFO2 を使用する場合 , 本ビットに "1" を設定してください。
• FSEL ビットによって受信 FIFO として選択された場合 , 受信エラーが
発生すると本ビットは "0" にクリアされ , 受信エラーがクリアされな
い限り , 本ビットに "1" を設定することはできません。
• 送信 FIFO で使用する場合には送信データがエンプティ (TDRE=1), 受
信 FIFO で使用する場合には受信データがエンプティ (RDRF=0) のと
きに本ビットに "1" または "0" を設定してください。
bit1
622
FE2:
FIFO2 動作
許可ビット
• FIFO2 を禁止にしても FIFO2 の状態は保持されます。
( 注意事項 )
BB ビットが "0" または INT ビットが "1" のときに許可 /
禁止の変更を行ってください。
受信 FIFO として選択されていて予約アドレスを検出し ,
スレーブ送信として動作する場合 , 予約アドレス検出に
よる割込みで本ビットを "0" にし , ACKE=0 にしてくださ
い。
受信 FIFO として使用していて本ビットを "1" から "0" に
変更したときに SSR の RDRF ビットが "1" になっている
と "0" になるまで受信 FIFO は禁止になりません。
送信 FIFO として使用していて FIFO2 にデータが存在し ,
本ビットを "0" から "1" に変更する場合 , TIE ビットを
"0" にしてから本ビットに "1" を書き込み , TIE ビットを
"1" にしてください。
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.21-10 FIFO 制御レジスタ 0(FCR0) の各ビットの機能説明 <Helvetica>(3 / 3)
ビット名
機能
FIFO1 の動作を許可 / 禁止するビットです。
• FIFO1 を使用する場合 , 本ビットに "1" を設定してください。
• FSEL ビットによって受信 FIFO として選択された場合 , 受信エラーが
発生すると本ビットは "0" にクリアされ , 受信エラーがクリアされな
い限り , 本ビットに "1" を設定することはできません。
• 送信 FIFO で使用する場合には送信データがエンプティ (TDRE=1), 受
信 FIFO で使用する場合には受信データがエンプティ (RDRF=0) のと
きに本ビットに "1" または "0" を設定してください。
bit0
FE1:
FIFO1 動作
許可ビット
CM71-10147-2
• FIFO1 を禁止にしても FIFO1 の状態は保持されます。
( 注意事項 )
BB ビットが "0" または INT ビットが "1" のときに許可 /
禁止の変更を行ってください。
受信 FIFO として選択されていて予約アドレスを検出し ,
スレーブ送信として動作する場合 , 予約アドレス検出に
よる割込みで本ビットを "0" にし , ACKE=0 にしてくださ
い。
受信 FIFO として使用していて本ビットを "1" から "0" に
変更したときに SSR の RDRF ビットが "1" になっている
と "0" になるまで受信 FIFO は禁止になりません。
送信 FIFO として使用していて FIFO1 にデータが存在し ,
本ビットを "0" から "1" に変更する場合 , TIE ビットを
"0" にしてから本ビットに "1" を書き込み , TIE ビットを
"1" にしてください。
FUJITSU SEMICONDUCTOR LIMITED
623
MB91605A シリーズ
24.21.11 FIFO バイトレジスタ (FBYTE1/FBYTE2)
FIFO バイトレジスタ (FBYTE1/FBYTE2) は , FIFO の有効なデータ数を示します。
また , 受信 FIFO で所定のデータ数を受信したときに受信割込みを発生させるかを設
定できます。
■ FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成
図 24.21-12 に FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成を示します。
図 24.21-12 FIFO バイトレジスタ (FBYTE1/FBYTE2) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
bit7
bit6
bit5
bit4
(FBYTE2)
R/W
R/W
R/W
R/W
R/W
bit3
bit2
bit1
初期値
bit0
(FBYTE1)
R/W
R/W
R/W
R/W
R/W :リード/ライト可能
リード(有効なデータ数)
送信時:FIFOに書き込まれ,送信されていないデータ数
受信時:FIFOに受信されたデータ数
ライト(転送数)
送信時:00Hに設定
受信時:受信割込み発生のデータ数を設定
R/W
R/W
R/W
R/W
R/W
R/W
R/W
FBYTE1
ライト
リード
FIFO1データ数表示ビット
転送数を設定
有効なデータ数を読み出す
FBYTE2
ライト
リード
FIFO2データ数表示ビット
転送数を設定
有効なデータ数を読み出す
00000000B
00000000B
FBYTE レジスタは FIFO の有効なデータ数を示し , FCR1:FSEL ビットの設定によって
以下のようになります。
表 24.21-11 データ数表示
FSEL
FIFO 選択
データ数表示
0
FIFO2:受信 FIFO, FIFO1:送信 FIFO
FIFO2:FBYTE2, FIFO1:FBYTE1
1
FIFO2:送信 FIFO, FIFO1:受信 FIFO
FIFO2:FBYTE2, FIFO1:FBYTE1
• FBYTE レジスタの転送数の初期値は "08H" です。
• 受信 FIFO の FBYTE に受信割込みフラグを発生させるデータ数を設定します。その
設定された転送数と FBYTE レジスタのデータ表示が一致すると割込みフラグ
(RDRF) が "1" にセットされます。
624
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
• 受信 FIFO アイドル検出許可ビット (FRIIE) が "1" で受信 FIFO に存在するデータ数
が転送数に達しない場合 , 受信アイドル状態がボーレートクロックで 8 クロック以
上続くと割込みフラグ (RDRF) が "1" にセットされます。8 クロックカウント中 ,
RDR を読み出すとそのカウンタは "0" にリセットされ , 再度 8 クロックをカウント
します。受信 FIFO が禁止されるとそのカウンタは "0" にリセットされます。受信
FIFO にデータが残っている状態で受信 FIFO を許可すると再度 , カウントを開始し
ます。
• マスタ動作でデータを受信する場合 ( マスタ受信 ), TIE ビットを "0" にして送信 FIFO
の FBYTE レジスタに受信データ数を設定し , FDRQ ビットに "0" を書きます。設定
データ分の SCL のクロックが出力され , その後 , INT ビットが "1" になります。TIE
ビットに "1" を設定したい場合には , FDRQ が "1" になった後に "1" に設定してくだ
さい。
<注意事項>
• マスタ動作でデータを受信するとき以外 , 送信 FIFO の FBYTE は "00H" を設定してく
ださい。
• マスタ動作でデータを受信するときの送信データ数の設定は , 送信 FIFO がエンプティ
で TIE ビットが "0" のときに行ってください。
• マスタ動作でデータを受信中に I2C インタフェースを禁止 (EN=0) にする場合には , 送
受信 FIFO を禁止にしてから禁止してください。
• 受信 FIFO の FBYTE には "1" 以上のデータを設定してください。
• 送受信を禁止してから変更してください。
• 本レジスタはリードモディファイライト (RMW) 系命令を使用することはできません。
• FIFO 容量を超えた設定は禁止です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
625
MB91605A シリーズ
24.22
I2C インタフェースの割込み
I2C インタフェースの割込みは , 次に示す要因で割込み要求を発生させることができ
ます。
• 第一バイト送受信後 / データ送受信後
• ストップ条件
• 反復スタート条件
• FIFO 送信データ要求
• FIFO 受信データ完了
■ I2C インタフェースの割込み
I2C インタフェースの割込み制御ビットと割込み要因は表 24.22-1 のようになっていま
す。
表 24.22-1 I2C インタフェースの割込み制御ビットと割込み要因 <Helvetica>(1 / 2)
割込み
の種類
割込み
要求
フラグ
ビット
フラグ
レジスタ
割込み要因
割込み要因
許可ビット
割込み要求
フラグのクリア
第一バイト送受信後 *1
データ送受信後 *1
割込みフラグビット (IBCR:INT)
への "0" 書込み
バスエラー検出
INT
IBCR
ステー
タス
SPC
IBSR
アービトレーション
ロスト検出
IBCR:INTE
予約アドレス検出
受信 FIFO がエンプティになるまで
の受信データ (RDR) の読出し後 ,
割込みフラグビット (IBCR:INT)
へ "0" 書込み
ストップ条件
ストップ条件検出ビット
(IBSR:SPC) への "0" 書込み
IBCR:CNDE
RSC
626
IBSR
反復スタート条件
反復スタート検出フラグビット
(IBSR:RSC) への "0" 書込み
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
表 24.22-1 I2C インタフェースの割込み制御ビットと割込み要因 <Helvetica>(2 / 2)
割込み
の種類
割込み
要求
フラグ
ビット
フラグ
レジスタ
割込み要因
予約アドレス受信後
割込み要因
許可ビット
割込み要求
フラグのクリア
受信データ (RDR) の読出し
データ受信後
FBYTE 設定値分受信
RDRF
SSR
受信
ORE
SSR
FRIIE ビットが "1" で
受信 FIFO に有効な
データが存在した状態
で 8 ビット時間以上の
受信アイドル状態検出
オーバランエラー
SMR:RIE 受信 FIFO がエンプティになるまで
の受信データ (RDR) の読出し
受信エラーフラグビット
(SSR:REC) への "1" 書込み
送信レジスタが
エンプティ
TDRE
SSR
FDRQ
FCR1
送信
送信データ (TDR) への書込み , ま
たは送信 FIFO 動作許可ビットが
"0" で送信 FIFO に有効なデータが
送信バッファエンプ
SMR:TIE
存在しているときに送信 FIFO 動
ティフラグセットビッ
作許可ビットへの "1" 書込み
ト (SSR:TSET) への "1"
( 送信再送 ) *2
書込み
送信 FIFO が
エンプティ
FIFO 送信データ要求ビットへの
FCR1:FTIE "0" 書込み , または送信 FIFO がフ
ル
*1 : 正常なデータを送受信できます。TDRE が "0" の場合 , 割込みは発生しません。これは DMA 転送
をサポートするためです。
データ送受信時に INT フラグを発生させたい場合には , INT フラグがセットされるタイミングより
前に TDRE ビットが "1" である必要があります。
*2 : TDRE ビットが "0" になってから TIE ビットを "1" にしてください。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
627
MB91605A シリーズ
I2C インタフェース通信の動作
24.22.1
I2C インタフェースは , 2 本の双方向バスライン , シリアルデータライン (SDA) およ
びシリアルクロックライン (SCL) を使用して通信を行います。
■ I2C バススタート条件
I2C バスの起動条件を以下に示します。
図 24.22-1 スタート条件
SDA
SCL
スタート条件
■ I2C バスストップ条件
I2C バスのストップ条件を以下に示します。
図 24.22-2 ストップ条件
SDA
SCL
ストップ条件
■ I2C バス反復スタート条件
I2C バスの反復スタート条件を以下に示します。
図 24.22-3 反復スタート条件
SDA
SCL
ACK *
* : ACK:アクノリッジ
628
反復スタート条件
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
マスタモード
24.22.2
マスタモードは , I2C バスにスタート条件を発生させ , I2C バスにクロックを出力し
ます。I2C バスがアイドル状態 (SCL="H", SDA="H") のとき , IBCR レジスタの
MSS ビットに "1" を設定するとマスタモードになり , IBCR レジスタの ACT ビット
が "1" になります。
■ スタート条件生成
SDA="H", SCL="H", EN=1, BB=0 のとき , MSS ビットへ "1" を書き込むとスタート条件
が出力されます。
I2C バスへスタート条件を出力すると ACT ビットに "1" をセットします。その後 , ス
タート条件を受信すると BB ビットが "1" にセットされ , I2C バスは通信中であること
を示します ( 図 24.22-4 を参照 )。
図 24.22-4 スタート条件出力および各ビットの関係
スタート条件
A6 *1
SDA
SCL
1
A5 *2
2
BBビット
MSSビット
”1”ライト
ACTビット
TRXビット
FBTビット
TDREビット
*1 : A6:アドレスbit6
*2 : A5:アドレスbit5
<注意事項>
動作モード 4(I2C モード ) では周辺クロック (PCLK) は 8 MHz 以上で使用し , 400kbps を
超えるボーレートジェネレータの設定は禁止です。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
629
MB91605A シリーズ
■ スレーブアドレス出力
スタート条件を出力すると TDR レジスタに設定されたデータを bit7 からアドレスとし
て出力します。FIFO 許可の場合 , 最初に書いた TDR レジスタのデータを出力します。
bit0 はデータ方向ビット (R/W) として使用され , データ方向ビット (R/W) が "0" のとき ,
データはライト方向 ( マスタ→スレーブ ) を示します。TDR レジスタへのアドレス設
定は , MSS=1 または SCC=1 を書く前に行ってください。
アドレスおよびデータ方向の出力タイミングについて図 24.22-5 , 図 24.22-6 に示しま
す。
図 24.22-5 アドレスおよびデータ方向 (FIFO 禁止の場合 )
1
2
3
4
5
6
7
8
SCL
SDA
A6(D7) A5(D6) A4(D5) A3(D4) A2(D3) A1(D2) A0(D1) R/W(D0)
ACK
BBビット
MSSビット*
TDRE
INTビット
<予約アドレス検出>
RSAビット
RDRFビット
INTビット
INTが"1"の間, SCLは"L"になります。
A6~A0:アドレス
D7~D0:TDRレジスタビット
R/W
:データ方向("L"で書込み方向)
ACK
:アクノリッジ("L"でアクノリッジ, スレーブから出力)
* : MSSビットに"1"を書き込む前にTDRレジスタにアドレスをセットしてください。
630
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
図 24.22-6 アドレスおよびデータ方向 ( 送受信 FIFO 許可 )
1
2
3
4
5
6
7
8
SCL
A6(D7) A5(D6) A4(D5) A3(D4) A2(D3) A1(D2) A0(D1) R/W(D0)
SDA
ACK
BBビット
MSSビット*1
INTビット*2
<予約アドレス検出>
RSAビット
RDRFビット
INTビット
INTが"1"の間, SCLは"L"になります。
A6~A0:アドレス
D7~D0:TDRレジスタビット
R/W
:データ方向(“L"でライト方向)
ACK
:アクノリッジ(“L"でアクノリッジ, スレーブから出力)
*1 : MSSビットに"1"を書き込む前にTDRレジスタにアドレスをセットしてください。
*2 :アクノリッジが"L"でR/W="L"のとき, 送信FIFOにデータが存在する, またはアクノリッジが"L"
でR/W="H"のとき, 受信FIFOにデータが存在していない場合, INTビットは"1"になりません。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
631
MB91605A シリーズ
■ 第一バイト送信によるアクノリッジ受信
データ方向ビット (R/W) を出力すると , I2C インタフェースはスレーブからのアクノ
リッジを受信します。FIFO 許可と FIFO 禁止では , 以下の動作になります。
表 24.22-2 アクノリッジ受信後の動作 (RSA ビット =0)
送信
FIFO
受信
FIFO
送信
FIFO
状態
受信
FIFO
状態
データ方向
ビット
(R/W)
0
禁止
禁止
−
−
1
データ
なし
禁止
許可
−
0
データ
あり
0
許可
禁止
−
−
1
データ
なし
許可
許可
−
632
0
データ
あり
−
アクノリッジが ACK
TDRE ビットが "1" の場合 , INT ビッ
トを "1" にしてウェイト。TDRE
ビットが "0" の場合 , INT ビットは
"0" のままでウェイトなし
INT ビットを
"1" にして
ウェイト
TDRE ビットが "1" の場合 , INT ビッ
トを "1" にしてウェイト。TDRE
ビットが "0" の場合 , INT ビットは
"0" のままでウェイトなし
TDRE ビットが "1" の場合 , INT ビッ
INT ビットを
トを "1" にしてウェイト。TDRE
"1" にして
ビットが "0" の場合 , INT ビットは
ウェイト
"0" のままでウェイトなし
TDRE ビットが "1" の場合 , INT ビッ
トを "1" にしてウェイト。TDRE
ビットが "0" の場合 , INT ビットは
"0" のままでウェイトなし
INT ビットを "1" にしてウェイト
1
アクノリッジ
が NACK
TDRE ビットが "1" の場合 , INT ビッ
INT ビットを
トを "1" にしてウェイト。TDRE
"1" にして
ビットが "0" の場合 , INT ビットは
ウェイト
"0" のままでウェイトなし
INT ビットを "1" にしてウェイト
1
−
アクノリッジ受信直後の動作
INT ビットを
"1" にして
ウェイト
TDRE ビットが "1" の場合 , INT ビッ
トを "1" にしてウェイト。TDRE
ビットが "0" の場合 , INT ビットは
"0" のままでウェイトなし
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ FIFO 禁止 ( 送信 FIFO, 受信 FIFO 両方とも禁止 )
• RSA ビットが "0" の場合 , アクノリッジ受信後 , TDRE ビットが "1" の場合には , 割
込みフラグ (INT) を "1" にセットし , SCL を "L" に保持してウェイトします。ウェイ
トは割込みフラグに "0" を書くと割込みフラグが "0" になってウェイトを解除しま
す。TDRE ビットが "0" の場合には , ACK を受信すると割込みフラグを "1" にセッ
トせずに SCL にクロックを発生します。
• RSAビットが"1"の場合, 予約アドレス受信後(アクノリッジ前), 割込みフラグ(INT)
を "1" にセットし , SCL を "L" に保持してウェイトします。RDR レジスタ読出し後 ,
ACKE ビット , 送信データを設定し , 割込みフラグに "0" を書くと割込みフラグが
"0" になってウェイトを解除します。
• 受信したアクノリッジは RACK ビットにセットされます。ウェイト中に RACK ビッ
トを確認し , NACK の場合には , MSS ビットに "0" または SCC ビットに "1" を書い
てストップ条件または反復スタート条件を発生させます。このとき , INT ビットは
自動的に "0" にクリアされます。
■ FIFO 許可
• MSS ビットに "1" を設定する前に FIFO に以下の設定をする必要があります。
- スレーブへ送信する場合 ( データ方向ビット =0), スレーブアドレスなどを含む
データを送信 FIFO に設定
- スレーブからデータを受信する場合 ( データ方向ビット =1)
下記のどちらかを行ってください。
1. スレーブアドレスおよびデータ方向ビットを送信データレジスタに書き込んだ
後 , FIFO バイト設定レジスタに受信数を設定
2. スレーブアドレスおよびデータ方向ビットを送信データレジスタに書き込んだ
後 , 受信するデータ数分のダミーデータを送信データレジスタに書き込み
• RSA ビットが "0"の場合 , アクノリッジ受信後 , ACK の場合には , 割込みフラグ(INT)
を "1" にセットせず , データ方向ビットに従ってデータを送受信します ( ウェイトな
し ) 。NACK の場合には , 割込みフラグ (INT) を "1" にセットし , SCL を "L" に保持
してウェイトします。
• 受信したアクノリッジは RACK ビットに格納されます。ウェイト中に RACK ビッ
トを確認し , NACK の場合には , MSS ビットに "0" または SCC ビットに "1" を書い
てストップ条件または反復スタート条件を発生させます。このとき , INT ビットは
自動的に "0" にクリアされます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
633
MB91605A シリーズ
図 24.22-7 アクノリッジ (FIFO 禁止 , RSA=0, ACK 応答の場合 )
Data
INTビットにより"L"
SCL
SDA
R/W
ACK
"0"ライト
INTビット
RACKビット
FBTビット
TDRレジスタへライト
TDREビット
アドレスに対するウェイトは
• RSA ビットが "0" の場合 , アクノリッジ受信後
• RSA ビットが "1" の場合 , アクノリッジ受信前
になります。WSEL の設定には依存しません。
図 24.22-8 アクノリッジ (FIFO 禁止 , RSA=0, NACK 応答の場合 )
INTビットにより"L"
SCL
SDA
R/W
NACK
"0"ライト
ストップ条件
INTビット
MSSビット
RACKビット
FBTビット
634
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
図 24.22-9 アクノリッジ (FIFO 禁止 , RSA=1, ACK 応答の場合 )
INTビットにより"L"
Data
SCL
SDA
R/W
ACK
"0"ライト
INTビット
RACKビット
FBTビット
RSAビット
RDRレジスタの読出し
RDRFビット
図 24.22-10 アクノリッジ (FIFO 禁止 , RSA=1, NACK 応答の場合 )
INTビットにより"L"
SCL
SDA
R/W
NACK
"0"ライト
ストップ条件
INTビット
MSSビット
RACKビット
FBTビット
RSAビット
RDRレジスタの読出し
RDRFビット
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
635
MB91605A シリーズ
図 24.22-11 アクノリッジ
(FIFO 許可 , 送信 FIFO データあり , 受信 FIFO データなし , RSA=0, ACK 応答の場合 )
Data
SCL
SDA
R/W
ACK
INTビット
RACKビット
FBTビット
TDREビット
■ マスタによるデータ送信
データ方向ビット (R/W) が "0" の場合 , データはマスタから送信します。1 バイト送信
ごとにスレーブから ACK または NACK の応答があります。
WSEL ビットの設定によってウェイトの発生する場所が以下のようになります。
表 24.22-3 マスタデータ送信時の WSEL ビット
WSEL ビット
動作
0
第二バイト以降 , TDRE ビットが "1" またはアービトレーションロスト検出でアク
ノリッジ後 , 割込みフラグ (INT) を "1", SCL を "L" にしてウェイト状態にします。
FIFO 許可の場合 , アクノリッジ後 , アービトレーションロスト検出または送信
データレジスタに有効なデータがなくなった (TDRE=1) ときにアクノリッジ後 , 割
込みフラグ (INT) を "1" にしてウェイト状態にします。
1
第二バイト以降 , TDRE ビットが "1" またはアービトレーションロスト検出でマス
タが 1 バイトのデータを送信後 , 割込みフラグ (INT) を "1", SCL を "L" にしてウェ
イト状態にします。FIFO 許可の場合 , アービトレーションロスト検出または送信
データレジスタに有効なデータがなくなった (TDRE=1) ときにデータ送信後 , 割込
みフラグ (INT) を "1" にしてウェイト状態にします。
ただし , ストップ条件設定 (MSS=0, ACT=1) 時以外に NACK を受信した場合 , WSEL の
設定に依存せずにアクノリッジ後に割込みフラグ (INT) をセットします。
636
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
スレーブへデータを送信する場合の手順の一例を以下に示します。
● 予約アドレス以外への送信の場合
• 送信 FIFO が禁止されている場合
① スレーブアドレス ( データ方向ビットも含む ) を TDR レジスタにセットし , MSS
ビットに "1" を書きます。
② スレーブアドレス送信後に ACK を受信し , 割込みフラグ (INT) が "1" になります。
③ TDR レジスタに送信するデータを書きます。
④ WSEL ビット更新とともに割込みフラグ (INT) に "0" を書き込み , I2C バスのウェ
イトを解除します。
⑤ 1 バイト送信後に WSEL=0 の場合にはアクノリッジ受信後 , WSEL=1 の場合には
1 バイト送信直後に割込みフラグを "1" にして I2C バスをウェイトします。所定
のデータ数を送信するまで②∼④を繰り返します。ただし , WSEL=1のとき, ウェ
イト解除後に NACK を受信した場合にはアクノリッジ受信後にもう一度割込み
が発生し , バスをウェイトします。
⑥ MSS ビットに "0" または SCC ビットに "1" を設定し , ストップ条件または反復ス
タート条件を発生させます。
• 送信 FIFO が許可されている場合
①スレーブアドレス ( データ方向ビットも含む ), 送信データを TDR レジスタに書
きます。
② WSEL ビット設定とともに MSS ビットに "1" を書きます。
③ 送信中に NACK 受信した場合 , その直後に割込みフラグ (INT) を "1" にして I2C
バスをウェイトします。すべて ACK 応答を受信した場合 , 最終バイト送信後 ,
WSEL の設定に従って割込みフラグを "1" にして I2C バスをウェイトします。
④ MSS ビットに "0" を書いてストップ条件を生成させます。
● 予約アドレスへの送信の場合
• 送信 FIFO が禁止されている場合
① スレーブアドレスとして予約アドレスを TDR レジスタにセットし , MSS ビット
に "1" を書きます。
② スレーブアドレス送信後 , 割込みフラグ (INT) が "1" になります。
③ RDR レジスタを読み出し , 予約アドレスを確認します。*
④ TDR レジスタに送信するデータを書きます。
⑤ WSEL ビット更新とともに割込みフラグ (INT) に "0" を書き込み , I2C バスのウェ
イトを解除します。
⑥ 1 バイト送信後に WSEL=0 の場合にはアクノリッジ受信後 , WSEL=1 の場合には
1 バイト送信直後に割込みフラグを "1" にして I2C バスをウェイトします。所定
のデータ数を送信するまで④∼⑥を繰り返します。ただし , WSEL=1のとき, ウェ
イト解除後に NACK を受信した場合にはアクノリッジ受信後にもう一度割込み
が発生してバスをウェイトします。
⑦ MSS ビットに "0" または SCC ビットに "1" を設定し , ストップ条件または反復ス
タート条件を発生させます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
637
MB91605A シリーズ
• 送信 FIFO が許可されている場合
① スレーブアドレスとして予約アドレスを TDR レジスタにセットし , MSS ビット
に "1" を書きます。
② スレーブアドレス送信後 , 割込みフラグ (INT) が "1" になります。
③ RDR レジスタを読み出し , 予約アドレスを確認します。*
④ TDR レジスタに全送信データ ( 送信 FIFO がフルとなる場合にはその状態になる
まで ) を書きます。
⑤ 送信中に NACK 受信した場合 , その直後に割込みフラグ (INT) を "1" にして I2C
バスをウェイトします。すべて ACK 応答を受信した場合 , 最終バイト送信後 ,
WSEL の設定に従って割込みフラグを "1" にして I2C バスをウェイトします。
⑥ MSS ビットに "0" または SCC ビットに "1" を設定し , ストップ条件または反復ス
タート条件を発生させます。
*:マルチマスタで予約アドレスがゼネラルコールの場合 , アービトレーション
ロストが発生してスレーブとして動作する可能性がある場合 , ACKE ビット
を "1", WSEL ビットを "1" にして次のデータでマスタとして動作するのか , ス
レーブとして動作するのかを確認する必要があります。
<注意事項> • 送受信中に IBCR レジスタを変更する場合 , 割込みフラグ (INT) が "1" のときに変更し
てください。
• WSEL ビットを変更した場合 , 次のデータの割込みフラグ (INT) の発生条件に使用され
ます。
• データ送信中で TDRE が "1" のときに TDR レジスタへ送信データを書き込み , ACK 応
答を検出すると割込みフラグ (INT) は "1" にならずにその書き込まれたデータが送信さ
れます。
• データ受信中に TDRE が "1" のときに TDR レジスタへ送信データを書き込み , ACK 応
答した場合 , 割込みフラグ (INT) は "1" にならずに RDRF のみ "1" になります ( 受信
FIFO 許可の場合 , FBYTE レジスタ設定分受信した場合 )。
638
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
図 24.22-12 FIFO 禁止によるマスタの割込み 1(WSEL=0, RSA=0)
S
スレーブ
アドレス
W ACK
Data
ACK
△
①
Data
ACK
△
②
Data
ACK P or Sr
△
②
△▲
③
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
② 1バイト送信+アクノリッジ受信により, 割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
③ 1バイト送信+アクノリッジ受信により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
(注意事項) 割込みフラグ(INT)発生時, TDREビットは"1"
図 24.22-13 FIFO 禁止によるマスタ送信の割込み 2(WSEL=1, RSA=0, ACK 応答 )
S
スレーブ
アドレス
W ACK
△
①
Data
ACK
△
②
Data
ACK
△
②
Data
ACK P or Sr
△
③
▲
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
② 1バイト送信により, 割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
③ 1バイト送信により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
(注意事項) 割込みフラグ(INT)発生時, TDREビットは"1"
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
639
MB91605A シリーズ
図 24.22-14 FIFO 禁止によるマスタ送信の割込み 3(WSEL=1, RSA=0, NACK 応答 )
S
スレーブ
アドレス
W ACK
Data
△
①
ACK
Data
△
②
ACK
Data
△
②
NACK
△
③
P or Sr
▲
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
② 1バイト送信により, 割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
③ 1バイト送信により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
(注意事項) 割込みフラグ(INT)発生時, TDREビットは"1"
図 24.22-15 FIFO 禁止によるマスタ送信の割込み 4(WSEL=1, RSA=0, 途中 NACK 応答 )
S
スレーブ
アドレス
W ACK
△
①
Data
ACK
△
②
Data
ACK
△
②
Data
NACK
△
②
P or Sr
△▲
③
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
② 1バイト送信により , 割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
③ NACK応答により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
(注意事項) 割込みフラグ(INT)発生時, TDREビットは"1"
640
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
図 24.22-16 FIFO 禁止によるマスタ送信の割込み 5(WSEL=1->0, RSA=0, ACK 応答 )
S
スレーブ
アドレス
W ACK
Data
△
①
ACK
Data
△
②
ACK
Data
ACK P or Sr
△
②
△▲
③
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生
送信バッファに送信データを書き込んだ後, INT=0 書込み
② 1バイト送信により, 割込み発生
送信バッファに送信データを書き込んだ後, WSEL=0,INT=0 書込み
③ 1バイト送信により,割込み発生
MSS=0またはMSS=1, SCC=1を設定
(注意事項) 割込みフラグ(INT)発生時, TDREビットは"1"
図 24.22-17 FIFO 禁止によるマスタの割込み 6(WSEL=0, RSA=1)
S
スレーブ
アドレス
W ACK
△
①
Data
ACK
△
②
Data
ACK
Data
ACK P or Sr
△
②
△▲
③
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① スレーブアドレス(予約アドレス)送信+方向ビット送信+アクノリッジ受信
により割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
② 1バイト送信+アクノリッジ受信により , 割込み発生
TDRレジスタに送信データ書き込んだ後, INT=0書込み
③ 1バイト送信+アクノリッジ受信により , 割込み発生
MSS=0またはMSS=1, SCC=1を設定
(注意事項) 割込みフラグ(INT)発生時, TDREビットは"1"
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
641
MB91605A シリーズ
図 24.22-18 FIFO 許可によるマスタ送信の割込み 7 (WSEL=0, RSA=0, ACK 応答 )
S
スレーブ
アドレス
W ACK
Data
ACK
Data
ACK
Data
ACK P or Sr
△
①
△▲
②
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① 送信FIFOがエンプティにより割込み発生
送信FIFOに送信データを書き込んだ後, INT=0書込み
② 最終バイト送信(送信FIFOがエンプティ)+アクノリッジ受信により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
図 24.22-19 FIFO 許可によるマスタ送信の割込み 8 (WSEL=1, RSA=0 )
S
スレーブ
アドレス
W ACK
Data
ACK
Data
ACK
Data
△
①
ACK P or Sr
△ ▲
②
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① 送信FIFOがエンプティにより, 割込み発生
送信FIFOに送信データを書き込んだ後, INT=0書込み
② 最終バイト送信(送信FIFOがエンプティ)により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
図 24.22-20 FIFO 許可によるマスタ送信の割込み 9 (WSEL=1, RSA=0, NACK 応答 )
S
スレーブ
アドレス
W ACK
Data
ACK
Data
ACK
△
①
Data
NACK
P or Sr
△▲
②
S :スタート条件
W:データ方向ビット(ライト方向)
P :ストップ条件
Sr:反復スタート条件
△:INTE=1による割込み
▲:CNDE=1による割込み
① 送信FIFOがエンプティにより, 割込み発生
送信FIFOに送信データを書き込んだ後, INT=0書込み
② NACK応答により, 割込み発生
MSS=0またはMSS=1, SCC=1を設定
642
FUJITSU SEMICONDUCTOR LIMITED
CM71-10147-2
MB91605A シリーズ
■ マスタによるデータ受信
データ方向ビット (R/W) が "1" の場合 , スレーブから送信されたデータを受信します。
FIFO 禁止の場合 , マスタは TDRE ビットが "1" であれば 1 バイト受信ごとにウェイト
を発生 (INT=1, RDRF=1) し , WSEL ビットに従って IBCR レジスタの ACKE ビットの
設定で ACK または NACK 応答します。TDRE ビットが "0" であれば , IBCR レジスタ
の ACKE ビットの設定で ACK 応答であればウェイトは発生せず (INT=0) に次のデータ
を受信し , NACK 応答であればウェイトが発生します (INT=1) 。
FIFO 許可の場合 , 受信バイト数設定と同じバイト数分を受信すると RDRF ビットが
セットされます。割込みフラグは TDRE ビットが "1" のときにセットし , I2C バスを
ウェイトします。WSEL=0 の場合 , TDRE ビットが "1" になると NACK 応答して割込
みフラグを "1" にします。WSEL=1 の場合 , 最終バイト受信後にウェイトが発生します
ので , そのウェイト中に ACKE ビットを設定し , 割込みフラグを "0" にクリアした後 ,
ACKE の設定に従って ACK または NACK 応答します。NACK 出力した場合でも受信
データとして受信 FIFO に格納します。
割込みによるウェイトは以下を参照してください。
表 24.22-4 マスタデータ受信時の WSEL ビット
WSEL ビット
動作
0
第二バイト以降 , TDRE ビットが "1" でアクノリッジ後 , 割込みフラグ (INT) を
"1", SCL を "L" にしてウェイト状態にします。
1
第二バイト以降 , TDRE ビットが "1" でマスタが 1 バイトのデータを受信後 , 割込
みフラグ (INT) を "1", SCL を "L" にしてウェイト状態にします。
スレーブからデータを受信する場合の手順の一例を以下に示します。
• 受信 FIFO が禁止されている場合
① スレーブアドレス ( データ方向ビットも含む ) を TDR レジスタにセットし , MSS
ビットに "1" を書きます。
② スレーブアドレス送信後に ACK を受信し , 割込みフラグ (INT) が "1" になります。
③ WSEL ビット更新とともに割込みフラグビット (INT) に "0" を書き込み , I2C バス
のウェイトを解除します。
④ 1 バイト受信後に WSEL=0 の場合にはアクノリッジ送信後 , WSEL=1 の場合には
1 バイト受信直後 , 割込みフラグを "1" にして I2C バスをウェイトします。所定
のデータ数を受信するまで②∼④を繰り返します。
⑤ 最終データ受信後 , NACK を出力し , MSS ビットに "0" または SCC ビットに "1"
を設定し , ストップ条件または反復スタート条件を発生させます。
CM71-10147-2
FUJITSU SEMICONDUCTOR LIMITED
643
MB91605A シリーズ
• 送受信 FIFO が許可されている場合
① FBYTE レジスタに受信数を設定します。
② スレーブアドレス ( データ方向ビットも含む ) と受信数分ダミーのデータを TDR
レジスタに書きます。
③ MSS ビットに "1" を書きます。
④ TDRE ビットが "0" の間 , ACK 応答し , 受信し続けます。その受信中に FBYTE に
設定数分受信すると RDRF を "1" にします。RDRF が "1" になったところで RDR
レジスタを読み出します。
⑤ TDRE ビットが "1" になると WSEL=0 の場合には NACK 出力後 , WSEL=1 の場合
には 1 バイト受信直後 , 割込みフラグを "1" にして I2C バスをウェイトします。
⑥ WSEL=1 の場合 , ACKE ビットを "0" に設定し , WSEL=0 の場合 , ACKE ビットの
設定は必要なく , MSS ビットに "0" または SCC ビットに "1" を設定し , ストップ
条件または反復スタート条件を発生させます。
<注意事項> • 7 ビットスレーブアドレスの検出を許可しているとき (ISBA:SAEN=1) に , マスタモー
ド時に 7 ビットスレーブアドレスを指定することは禁止です。
• TDRE が "0" のとき , オーバランエラーが発生しても ACKE ビットの設定に従ってアク
ノリッジを出力し , 次の処理を行います。
• 送受信中に IBCR レジスタを変更する場合 , 割込みフラグ (INT) が "1" のときに変更し
てください。
• マスタ受信時 , TDR レジスタにダミーデータを書き込み , 割込みフラグ (INT) が "1" に
なるタイミングで TDRE ビットが "0" の場合 , 割込みフラグ (INT) は "0" のままで次の
データを受信します。
• 受信FIFOが許可, WSEL=0のときにデータを受信する場合, 最終ビット受信後にRDRF
ビットが "1" となり , ACK 送信後に割込みフラグ (INT) が "1" となり