本ドキュメントは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" となります。 図 24.22-21 FIFO 禁止によるマスタ受信の割込み 1 (WSEL=0, RSA=0) S スレーブアドレス R ACK △ Data ACK △ ① Data ACK Data △ ② NACK P or Sr △▲ ③ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生 INT=0 書込みにより割込みが"0"にクリア ② 1バイト受信+アクノリッジ送信により割込み発生 受信データを読み出した後, ACKE=0に設定し, INT=0書込み ③ 1バイト受信+アクノリッジ送信したことにより割込み発生 MSS=0またはMSS=1, SCC=1を設定 (注意事項) 割込みフラグ(INT)発生時, TDREビットは"1" 644 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.22-22 FIFO 禁止によるマスタ受信の割込み 2 (WSEL=1, RSA=0) S スレーブアドレス R ACK Data △ ① ACK Data △ ② ACK Data △ ② P or Sr NACK △ ③ ▲ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生 INT=0書込みにより割込みが"0"にクリア ② 1バイト受信により割込み発生 受信データを読み出した後, INT=0書込み ③ 1バイト受信により割込み発生 受信データを読み出した後, ACKE=0に設定し, MSS=0 またはMSS=1, SCC=1を設定 (注意事項) 割込みフラグ(INT)発生時, TDREビットは"1" 図 24.22-23 FIFO 許可によるマスタ受信の割込み 3 (WSEL=0, ACKE=0, RSA=0) S スレーブアドレス R ACK Data ACK Data ACK Data P or Sr NACK △▲ ① △:INTE=1による割込み ▲:CNDE=1による割込み ① TDRE=1により割込み発生 受信FIFOから全データを読み出した後, MSS=0またはMSS=1, SCC=1を設定 図 24.22-24 FIFO 許可によるマスタ受信の割込み 4 (WSEL=1, RSA=0) S スレーブアドレス R ACK Data ACK Data ACK Data NACK △ ① P or Sr ▲ △:INTE=1による割込み ▲:CNDE=1による割込み ① TDRE=1により割込み発生 受信FIFOから全データを読み出した後, ACKE=0, MSS=0 またはMSS=1, SCC=1を設定 ■ アービトレーションロスト マスタのデータがほかのマスタからのデータと衝突し , 送信したデータと異なるデー タを受信した場合 , アービトレーションロストと判断して MSS ビットを "0", AL ビッ トを "1" にしてスレーブモードとして動作可能となります。 AL ビットは , 以下の条件で "0" にクリアすることができます。 • MSS ビットへの "1" 書込み • INT ビットへの "0" 書込み • AL ビット =1, SPC ビット =1 のときに SPC ビットへの "0" 書込み • I2C インタフェースの禁止 (EN ビット =0) アービトレーションロストが発生すると WSEL の設定に従って割込みフラグ (INT) を "1" にし , I2C バスの SCL を "L" にします。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 645 MB91605A シリーズ ■ マスタモードのウェイト BB ビットが "1" のときに MSS ビットに "1" を設定するとスレーブモードとして動作し ていなければ BB ビットが "1" の間 , マスタモードをウェイトし , BB ビットが "0" に なってからスタート条件を送信します。マスタモードがウェイト中かどうかは MSS ビットと ACT ビットで判断できます (MSS=1, ACT=0 であればウェイト状態 ) 。MSS ビットに "1" を設定後 , スレーブモードとして動作する場合 , AL ビットを "1", MSS ビッ トを "0", ACT ビットを "1" にします。 646 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 24.22.3 スレーブモード スレーブモードは ( 反復 ) スタート条件を検出し , ISBA レジスタと ISMK レジスタ との組合せと受信したアドレスが一致すると ACK 応答し , スレーブモードとして動 作します。 ■ スレーブアドレス一致検出 ( 反復 ) スタート条件を検出すると次のデータの 7 ビットをアドレスとして受信します。 ISMK レジスタで "1" がセットされているビットについて ISBA レジスタと受信アドレ スの各ビットを比較し , 一致した場合に ACK を出力します。 表 24.22-5 スレーブアドレスに対するアクノリッジ出力直後の動作 送信 受信 FIFO FIFO 送信 FIFO 状態 受信 FIFO 状態 データ 方向ビット (R/W) 0 禁止 禁止 − − データ なし 禁止 許可 − 1 0 データ あり − 禁止 − − データ なし 許可 許可 − 1 CM71-10147-2 1 0 データ あり − アクノリッジが ACK アクノリッジ が NACK TDRE ビットが "1" の場合 , INT ビット INT ビットは を "1" にしてウェイト。TDRE ビット "0" のままで が "0" の場合 , INT ビットは "0" のまま ウェイトなし でウェイトなし INT ビットは "0" のままでウェイトな し INT ビットを "1" にしてウェイト 0 許可 アクノリッジ直後の動作 INT ビットは "0" のままで TDRE ビットが "1" の場合 , INT ビット ウェイトなし を "1" にしてウェイト。TDRE ビット が "0" の場合 , INT ビットは "0" のまま でウェイトなし TDRE ビットが "1" の場合 , INT ビット INT ビットは を "1" にしてウェイト。TDRE ビット "0" のままで が "0" の場合 , INT ビットは "0" のまま ウェイトなし でウェイトなし INT ビットは "0" のままでウェイトな し INT ビットを "1" にしてウェイト 1 INT ビットは "0" のままで TDRE ビットが "1" の場合 , INT ビット ウェイトなし を "1" にしてウェイト。TDRE ビット が "0" の場合 , INT ビットは "0" のまま でウェイトなし FUJITSU SEMICONDUCTOR LIMITED 647 MB91605A シリーズ • 予約アドレス検出 一バイト目で予約アドレス ("0000XXXXB" または "1111XXXXB") と一致した場合 , 送 受信 FIFO の許可に依存せずに 8 ビット目のデータ受信後 , INT ビットを "1" にして I2C バスをウェイトします。このとき受信データを読み出し , スレーブとして動作さ せたい場合には ACKE を "1" にセットして INT ビットをクリアします。その後 , ス レーブとして動作します。 ACKE を "0" にした場合には , アクノリッジ出力後 , スレー ブとして動作を行いません。 ■ データ方向ビット アドレス受信後 , データの送受信を決めるデータ方向ビットを受信します。このビット が "0" のときにマスタからの送信を示し , スレーブとしてはデータを受信します。 ■ スレーブによる受信 スレーブアドレスが一致しデータ方向ビットが "0" のとき , スレーブモードによる受信 を示します。スレーブモードによる受信の手順の一例は以下のようになります。 • 受信 FIFO が禁止されている場合 ① ACK 送信後 , 割込みフラグ (INT) を "1" にして I2C バスをウェイトします。MSS ビット , ACT ビットと FBT ビットでスレーブアドレス一致による割込みと判断 し , ACKE ビットに "1", 割込みフラグ (INT) に "0" を書いて I2C バスのウェイト を解除します ( 表 24.22-5 を参照 ) 。 ② 1 バイトのデータを受信後 , WSEL の設定に従って割込みフラグ (INT) を "1" に して I2C バスをウェイトします。 ③ RDR レジスタから受信したデータを読み出し , ACKE ビットを設定後 , 割込みフ ラグ (INT) に "0" を書いて I2C バスのウェイトを解除します。 ④ ストップ条件または反復スタート条件を検出するまで② , ③を繰り返します。 • 受信 FIFO が許可されている場合 ① NACK の検出または 受信 FIFO がフルになると割込みフラグ (INT) は "1" になり , I2C バスをウェイトします。ストップ条件 , 反復スタート条件を検出した場合 , SPC ビット , RSC ビットを "1" にして割込みフラグ (INT) は "1" になりません (I2C バスのウェイトなし )。受信 FIFO は FBYTE レジスタの設定値と受信したデータ 数が一致すると RDRF ビットを "1" にします。そのとき , RIE ビットが "1" になっ ていると受信割込みが発生します。 ② 割込みフラグ (INT) が "1" になった場合 , RDR レジスタから受信したデータを読 み出し , すべてのデータを読み出した後に , 割込みフラグに "0" を書いて I2C バ スのウェイトを解除します。ストップ条件または反復スタート条件を検出した場 合 , 受信したデータを RDR レジスタからすべて読み出し , SPC ビットまたは RSC ビットを "0" にクリアします。 648 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.22-25 FIFO 禁止によるスレーブ受信の割込み 1(WSEL=0, RSA=0) S スレーブアドレス W ACK Data ACK △ ① Data ACK △ ② Data P or Sr NACK △ ② △▲ ③ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレスが一致したのでACK出力し, 割込み発生 ACKE=1, INT=0書込み ② 1バイト受信+ACK応答により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み ③ 1バイト受信+NACK応答により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み 図 24.22-26 FIFO 禁止によるスレーブ受信の割込み 2(WSEL=1, RSA=0) S スレーブアドレス W ACK Data △ ① ACK Data △ ② ACK Data △ ② ACK △ ③ P or Sr ▲ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレスが一致したのでACK出力し, 割込み発生 ACKE=1, INT=0書込み ② 1バイト受信により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み ③ 1バイト受信により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み 図 24.22-27 FIFO 禁止によるスレーブ受信の割込み 3(WSEL=1, RSA=0) S スレーブアドレス W ACK Data △ ① ACK Data △ ② ACK Data △ ② NACK △ ② P or Sr △▲ ③ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレスが一致したのでACK出力し, 割込み発生 ACKE=1, INT=0書込み ② 1バイト受信により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み ③ NACK応答により割込み発生 INT=0書込み 図 24.22-28 受信 FIFO 許可によるスレーブ受信の割込み 4 (RSA=0) S スレーブアドレス W ACK Data ACK Data ACK Data ACK P or Sr ▲ ① △:INTE=1による割込み ▲:CNDE=1による割込み ① ストップ条件または反復スタート条件検出により割込み発生 受信FIFOから全データの読出し CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 649 MB91605A シリーズ 図 24.22-29 受信 FIFO 許可によるスレーブ受信の割込み 5 (RSA=0) S スレーブアドレス W ACK Data ACK Data ACK Data ACK P or Sr △▲ ① △:INTE=1による割込み ▲:CNDE=1による割込み ① 受信FIFOがフルになったことにより割込み発生 受信FIFOから全データを読み出した後,INT=0書込み 図 24.22-30 FIFO 禁止によるスレーブ受信の割込み 6(WSEL=0, RSA=1) S スレーブアドレス W ACK △ ① Data ACK △ ② Data ACK Data △ ② ACK P or Sr △▲ ③ △:INTE=1による割込み ▲:CNDE=1による割込み ① 予約アドレス("0000XXXXB"または"1111XXXXB")が一致したので割込み発生 受信データを読み出し, ACKE=1, INT=0書込み ② 1バイト受信+アクノリッジ出力により割込み発生 INT=0書込み ③ 1バイト受信+アクノリッジ出力により割込み発生 INT=0書込みにより割込み ■ スレーブによる送信 スレーブアドレスが一致してデータ方向ビットが "1" のとき , スレーブによる送信を示 します。FIFO 禁止の場合 , WSEL の設定により , 1 バイト送信後またはアクノリッジ応 答後に割込みフラグ (INT) を "1" にしてウェイトを発生します ( 表 24.22-5 を参照 ) 。 RACK ビットによってマスタから出力されたアクノリッジを確認することができ , マ スタから NACK 応答時 , マスタが正しく受信できなかったか , データ受信の終了を示 します。WSEL=1 のときに NACK を検出した場合 , 割込みが発生してウェイトします。 650 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 24.22.4 バスエラー I2C バス上でデータの送受信中にストップ条件 , ( 反復 ) スタート条件を検出すると バスエラーとして取り扱います。 ■ バスエラー発生条件 バスエラーは以下の条件で BER ビットを "1" にします。 • 第一バイト転送中に ( 反復 ) スタート条件またはストップ条件を検出 • データの 2 ビット∼ 9( アクノリッジ ) ビット目で ( 反復 ) スタート条件またはストッ プ条件を検出 ■ バスエラー動作 送受信による割込みフラグ (INT) が "1" になったときに BER ビットを確認し , BER ビッ トが "1" の場合はエラー処理を行ってください。BER ビットは INT ビットに "0" を書 くことによってクリアされます。 バスエラーによって INT ビットは "1" にセットされますが , I2C バスの SCL を "L" にし てウェイト状態にはなりません。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 651 MB91605A シリーズ 24.23 専用ボーレートジェネレータ 専用ボーレートジェネレータは , シリアルクロックの周波数の設定を行います。 ■ ボーレート選択 ● 専用ボーレートジェネレータ ( リロードカウンタ ) で内部クロックを分周して得られるボー レート 2 つの内部リロードカウンタがあり , それぞれ送受信シリアルクロックに対応していま す。ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) で 15 ビットのリロード値を 設定することにより , ボーレートを選択できます。 リロードカウンタは , 設定された値で内部クロックを分周します。 ■ ボーレートの計算 2 つの 15 ビットリロードカウンタは , ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) で設定します。 ボーレートの計算式を以下に示します。 (1) リロード値: V =φ / b − 1 V:リロード値 b:ボーレート φ:周辺クロック (PCLK) 周波数 ただし , I2C バスの SCL の立上り時間によっては設定したボーレートが発生し ませんのでリロード値を調整してください。 (2) 計算例 : 周辺クロック (PCLK) 16MHz, ボーレート 400kbps に設定する場合のリロード 値は , 次のようになります。 リロード値: V = (16 × 1000000)/400000 - 1 = 39 よって , ボーレートは , b = (16 × 1000000)/(38+2) = 400 kbps <注意事項> • ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) への書込みは , 16 ビットアクセ スで行ってください。 • ISMK レジスタの EN ビットが "0" のときにボーレートジェネレータレジスタの設定を 行ってください。 • 動作モード 4(I2C モード ) では周辺クロック (PCLK) は 8 MHz 以上で使用し , 400kbps を超えるボーレートジェネレータの設定は禁止です。 • リロード値を "0" に設定するとリロードカウンタは停止します。 652 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ ■ 各周辺クロック (PCLK) 周波数に対するリロード値とボーレート 表 24.23-1 リロード値とボーレート ボーレート [bps] 8 MHz 10 MHz 16 MHz 20 MHz 24 MHz 32MHz リロード値 リロード値 リロード値 リロード値 リロード値 リロード値 400000 19 24 39 49 59 79 200000 39 49 79 99 119 159 100000 79 99 159 199 239 319 本数値は I2C バスの SCL 立上りが "0" の場合です。I2C バスの SCL 立上りが遅い場合 には上記の数値より遅いボーレートになります。 ■ リロードカウンタの機能 リロード値に対する 15 ビットレジスタから構成されており , 内部クロックより送受信 クロックを生成します。また , 送信リロードカウンタのカウント値をボーレートジェネ レータレジスタ 1, 0 (BGR1, BGR0) より読み出すことができます。 ■ カウントの開始 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むと , リ ロードカウンタはカウントを開始します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 653 MB91605A シリーズ 24.23.1 I2C のフローチャート例 I2C の通信フローチャート例を示します。 ■ I2C マスタ受信 / スレーブ送信 FIFO 通信フロー 図 24.23-1 マスタ受信メイン設定 スタート マスター受信初期設定 エラーフラグ=1 通信エラー? NO YES 2 I C停止(ISMK:EN=0) エンド ISMK:7 ビットスレーブアドレスマスクレジスタ (ISMK) 654 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.23-2 マスタ受信初期設定 スタート 初期設定: I2Cモード設定 (SMR) ボーレート設定(BGR) FIFO設定: FIFO制御レジスタ1設定 (FCR1) FIFO制御レジスタ0設定 (FCR0) INT割込み許可(IBCR:INTE=1) FIFO制御レジスタ1の I2C許可設定 (ISMK:EN=1) FSEL値によって受信 FIFO受信バイト数設定 FIFOが異なります。 (FBYTE1=xx FBYTE2=00 or FBYTE1=00 FBYTE2=xx) FIFOバッファ書込み: スレーブアドレス+ 通信方向(Read) ダミーデータFIFO格納(TDR) バスビジー? YES IBCR:BB=1 NO エラー 動作モード設定: マスター (IBCR:MSS =1 ) エンド SMR BGR ISBA ISMK FCR1 FCR0 IBCR FBYTE1 FBYTE2 TDR :シリアルモードレジスタ (SMR) :ボーレートジェネレータレジスタ (BGR) :7 ビットスレーブアドレスレジスタ (ISBA) :7 ビットスレーブアドレスマスクレジスタ (ISMK) :FIFO 制御レジスタ 1 (FCR1) :FIFO 制御レジスタ 0 (FCR0) :I2C バス制御レジスタ (IBCR) :FIFO1 バイトレジスタ (FBYTE1) :FIFO2 バイトレジスタ (FBYTE2) :送信データレジスタ (TDR) CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 655 MB91605A シリーズ 図 24.23-3 マスタ受信割込み処理 受信割込み処理 バスエラー? YES IBCR:BER=1 NO アービトレーションエラー? YES IBSR:AL=1 NO NO SSR:RDRF=1 FIFO END? (受信完了) YES FIFO受信データ読出し(RDR) 3 IBCR IBSR SSR RDR 1 エラー 2 :I2C バス制御レジスタ (IBCR) :I2C バスステータスレジスタ (IBSR) :シリアルステータスレジスタ (SSR) :受信データレジスタ (RDR) * 実際のエラー処理は , 各ステータスエラーフラグの判断および各エラーの処理を , お客様のシステムを考 慮して行ってください。 * FIFO 受信を連続して行う場合の最終 ACK 処理について , WSEL=1 に設定した場合 , 最終データ受信後に ウェイトが発生します。このウェイト中に IBCR.RACK=1 に設定し , NACK で応答してください。 656 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 1 IBCR:MSS=1 かつ I2C/マスター動作確認 IBCR:ACT=1 NO YES 反復スタート? NO WSEL=1の場合は,ユーザ によるNACK送信設定 YES が必要です。 FIFOバッファ書込み スレーブアドレス+ 通信方向(Read) 全パケットの転送終了 ダミーデータFIFO格納(TDR) 判断を示します。 反復スタート条件設定(IBCR:SCC) WSEL=1の場合は,ユーザ 全データ転送終了? によるNACK送信設定 NO が必要です。 YES Stop Condition (IBCR:MSS=0) 2 3 割込みクリア(IBCR:INT=0) エンド IBCR TDR :I2C バス制御レジスタ (IBCR) :送信データレジスタ (TDR) CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 657 MB91605A シリーズ 図 24.23-4 スレーブ送信メイン設定 スタート スレーブ送信初期設定 エラーフラグ=1 通信エラー? NO YES I2C停止(ISMK:EN=0) エンド ISMK:7 ビットスレーブアドレスマスクレジスタ (ISMK) 658 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.23-5 スレーブ送信初期設定 スタート 初期設定: I2Cモード設定 (SMR) ボーレート設定(BGR) スレーブアドレス設定(ISBA) スレーブマスク設定(ISMK) 反復スタート割込み許可 (IBCR:CNDE=1) INT 割込み許可(IBCR:INTE=1) I2C許可設定 (ISMK:EN=1) スレーブ設定(IBCR:MSS=0) FIFO設定: FIFO制御レジスタ1設定 (FCR1) FIFO制御レジスタ0設定 (FCR0) FIFOバッファ書込み: 送信データFIFO格納(TDR) エンド SMR BGR ISBA ISMK IBCR FCR1 FCR0 TDR :シリアルモードレジスタ (SMR) :ボーレートジェネレータレジスタ (BGR) :7 ビットスレーブアドレスレジスタ (ISBA) :7 ビットスレーブアドレスマスクレジスタ (ISMK) :I2C バス制御レジスタ (IBCR) :FIFO 制御レジスタ 1 (FCR1) :FIFO 制御レジスタ 0 (FCR0) :送信データレジスタ (TDR) CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 659 MB91605A シリーズ 図 24.23-6 スレーブ送信割込み処理 送信割込み処理 バスエラー? YES IBCR:BER=1 送受信を中断し た場合もマスタ NO からNACKが YES 出力されます。 反復スタート検出? (IBSR:RSC=1) FIFOバッファ書込み: NO 送信データFIFO格納(TDR) 割込みフラグのクリア NO (IBSR:RSC=0) 最終データ時NACK応答? (IBSR:RACK=1) 送受信が中断さ エラー れたかをFIFO YES YES FIFOにデータが存在する? のデータ有無 で判断します。 (SSR:TDRE=0) FIFO動作禁止(FCR0=0x00) FIFOリセット (FCR0:FCL=1) NO 送信データエンプティフラグ の設定 (SSR:TSET=1) FIFO動作許可 (FCR0=0x03) 割込みクリア(IBCR:INT=0) エンド IBSR TDR SSR FCR0 IBCR :I2C バスステータスレジスタ (IBSR) :送信データレジスタ (TDR) :シリアルステータスレジスタ (SSR) :FIFO 制御レジスタ 0 (FCR0) :I2C バス制御レジスタ (IBCR) * 実際のエラー処理は , 各ステータスエラーフラグの判断および各エラーの処理を , お客様のシステムを考 慮して行ってください。 660 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ ■ I2C マスタ送信 / スレーブ受信 FIFO 通信フロー 図 24.23-7 マスタ送信メイン設定 スタート マスター送信初期設定 エラーフラグ=1 通信エラー? NO YES I2C停止(ISMK:EN=0) エンド ISMK:7 ビットスレーブアドレスマスクレジスタ (ISMK) CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 661 MB91605A シリーズ 図 24.23-8 マスタ送信初期設定 スタート 初期設定: I2Cモード設定 (SMR) ボーレート設定(BGR) FIFO設定: FIFO制御レジスタ1設定 (FCR1) FIFO制御レジスタ0設定 (FCR0) INT割込み許可(IBCR:INTE=1) I2C許可設定 (ISMK:EN=1) FIFOバッファ書込み: スレーブアドレス+ 通信方向(Write) 送信データFIFO格納(TDR) バスビジー? YES IBCR:BB=1 NO エラー 動作モード設定 : マスター (IBCR:MSS =1 ) エンド SMR BGR ISBA ISMK FCR1 FCR0 IBCR TDR 662 :シリアルモードレジスタ (SMR) :ボーレートジェネレータレジスタ (BGR) :7 ビットスレーブアドレスレジスタ (ISBA) :7 ビットスレーブアドレスマスクレジスタ (ISMK) :FIFO 制御レジスタ 1 (FCR1) :FIFO 制御レジスタ 0 (FCR0) :I2C バス制御レジスタ (IBCR) :送信データレジスタ (TDR) FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.23-9 マスタ送信割込み処理 送信割込み処理 バスエラー? YES IBCR:BER=1 NO アービトレーションエラー? YES IBSR:AL=1 NO NACKエラー? YES IBSR:RACK=1 エラー NO 1 2 IBCR:I2C バス制御レジスタ (IBCR) IBSR:I2C バスステータスレジスタ (IBSR) * 実際のエラー処理は , 各ステータスエラーフラグの判断および各エラーの処理を , お客様のシステムを 考慮して行ってください。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 663 MB91605A シリーズ 1 NO IBCR:MSS=1 かつ I2C/マスター動作確認 IBCR:ACT=1 システム全体の反復 YES パケット動作要求の NO 反 復 ス タ ー ト 要 求? 判断。 YES 反復動作イニシャル設定 FIFOバッファ書込み: スレーブアドレス+ 通信方向(Write) 送信データFIFO格納(TDR) 反復スタート条件設定(IBCR:SCC) FIFO Empty? (送信完了) NO SSR:TDRE=1 かつ パケットデータ転送終了 判断。 全データ転送終了? YES Stop Condition (IBCR:MSS=0) 2 割込みクリア(IBCR:INT=0) エンド IBCR TDR SSR :I2C バス制御レジスタ (IBCR) :送信データレジスタ (TDR) :シリアルステータスレジスタ (SSR) * 実際のエラー処理は , 各ステータスエラーフラグの判断および各エラーの処理を , お客様のシステムを考 慮して行ってください。 664 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.23-10 スレーブ受信メイン設定 スタート スレーブ受信初期設定 エラーフラグ=1 通信エラー? NO YES I2C停止(ISMK:EN=0) エンド ISMK:7 ビットスレーブアドレスマスクレジスタ (ISMK) CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 665 MB91605A シリーズ 図 24.23-11 スレーブ受信初期設定 スタート 初期設定: I2Cモード設定 (SMR) ボーレート設定(BGR) スレーブアドレス設定(ISBA) スレーブマスク設定(ISMK) INT割込み許可(IBCR:INTE=1) I2C許可設定 (ISMK:EN=1) スレーブ設定 (IBCR:MSS =0 ) FIFO設定: FIFO制御レジスタ1設定 (FCR1) FIFO制御レジスタ1の FIFO制御レジスタ0設定 (FCR0) FSEL値によって受信 FIFOが異なります。 FIFO受信バイト数設定 (FBYTE1=xx FBYTE2=00 or FBYTE1=00 FBYTE2=xx) エンド SMR :シリアルモードレジスタ (SMR) BGR :ボーレートジェネレータレジスタ (BGR) ISBA :7 ビットスレーブアドレスレジスタ (ISBA) ISMK :7 ビットスレーブアドレスマスクレジスタ (ISMK) IBCR :I2C バス制御レジスタ (IBCR) FCR1 :FIFO 制御レジスタ 1 (FCR1) FCR0 :FIFO 制御レジスタ 0 (FCR0) FBYTE1:FIFO1 バイトレジスタ (FBYTE1) FBYTE2:FIFO2 バイトレジスタ (FBYTE2) 666 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 図 24.23-12 スレーブ受信割込み処理 受信割込み処理 バスエラー? YES IBCR:BER=1 NO FIFO END? (受信完了) SSR:RDRF=1 NO エラー YES FIFO受信データ読出し(RDR) 割込みクリア(IBCR:INT=0) エンド IBSR SSR RDR IBCR :I2C バスステータスレジスタ (IBSR) :シリアルステータスレジスタ (SSR) :受信データレジスタ (RDR) :I2C バス制御レジスタ (IBCR) * 実際のエラー処理は , 各ステータスエラーフラグの判断および各エラーの処理を , お客様のシステムを考 慮して行ってください。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 667 MB91605A シリーズ 24.24 I2C モードの注意事項 I2C モードの注意事項を下記に示します。 • FIFO 付きチャネルで DMA 転送要求する場合 , FIFO は使用できません。FIFO 動作 禁止の設定としてください。 • DMA 転送要求する場合 , DMA のブロックサイズを 1 回に設定してください。 • マスタ受信およびスレーブ受信時には , データ受信用の DMA 転送と , ダミーデータ 送信用の DMA 転送が必要なため , DMA を 2 チャネル使用する必要があります。 • I2C モードでは , 送信レジスタ (TDR) に有効なデータがなく , 送信データエンプティ フラグビット (TDRE) が "1" の状態で , I2C バス上のデータが 9 ビット目 (WSEL=0 時 ) または 8 ビット目 (WSEL=1 時 ) まで送信された場合 , 図 24.24-1 のように割込みフ ラグ (INT) が "1" となります。DMA 転送中に割込みフラグ (INT) が "1" になると , ソフトで "0" クリアしない限り , DMA 転送が継続できません。( マスタ送信 , スレー ブ送信 , マスタ受信 , スレーブ受信共 ) 図 24.24-1 I2C の INT ビット変化タイミング (WSEL=0 時 ) SCL SDA DATA ACK DATA ACK TDRE bit TDRへの DMA転送 INT bit 上記のような仕様のため , I2C モードで DMA 転送する場合には , 割込みフラグ (INT) が "1" となる前に , TDR への DMA 転送が行われるように対応してください。I2C の DMA 転送を優先するには , 以下のような対応があります。 - 優先度が高い ( チャネル番号が小さい ) DMA を使用する。優先順位設定ビットを 固定 (AT=0) で使用する場合に有効。 - DMA 転送抑止割込みレベルビット (DILVR レジスタの LVL4-LVL0 ビット ) を可 能な限り小さい値にする。 668 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ • 送信データエンプティフラグ (SSR:TDRE) が "1" になって送信データレジスタ (TDR) に送信データを DMA 転送によって書くか , またはソフトによって送信データエン プティフラグ (SSR:TDRE) を確認して書く場合 , 送信データエンプティフラグ (SSR:TDRE) が "0" にならない場合があるため , ACK フィールドの SCL が立下がる までに送信データを書いてください。ソフトによって割込みフラグ (IBCR:INT) が "1" になってから送信データを書く場合は特に制限はありません。 DMA 転送時またはソフトにて送信データエンプティフラグ (SSR:TDRE) による送 信処理を行うとき , ACK フィールドの SCL が立ち下がるまでに送信データを書く のが遅れる場合には以下の設定および手順にしてください。 - 設定 割込みフラグ (IBCR:INT) が "1" になるタイミングを 8 ビット目に設定 (WSEL=1) する。 - 手順 マスタで送受信を行う場合 , 以下の手順で処理してください。スレーブで送受信 を行う場合には , 下記手順は必要ありません。 1. ソフトにて第一バイト ( スレーブアドレス ) を送信データレジスタに書く。 2. マスタ起動 (IBCR:MSS="1" ライト ) と同時にウエイト選択を 8 ビットに設定 (IBCR:WSEL="1" ライト ) する。 3. 第一バイト送信後 , 割込みフラグ (IBCR:INT) が "1" になるので ACK 応答 (IBSR:RACK="0") を確認後, 第二バイト目をソフトによって送信データレジス タ (TDR) に書いてから DMAC の設定を行い , DMA 転送を起動し , 割込みフラ グ (IBCR:INT) に "0" を書く。 4. 送受信が終了した場合 , マスタの終了 (IBCR:MSS="0" ライト ) または再起動 (IBCR:SCC="1" ライト ) を行います。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 669 MB91605A シリーズ 670 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) DMA コントローラ (DMAC) の機能と動作について 説明します。 25.1 概要 25.2 構成 25.3 レジスタ 25.4 動作説明 25.5 制御フロー 25.6 使用上の注意 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 671 第 25 章 DMA コントローラ (DMAC) 25.1 MB91605A シリーズ 25.1 概要 DMA コントローラは , 本品種にて DMA(Direct Memory Access) 転送を実現するためのモ ジュールです。DMA コントローラは本品種のオンチップバスに接続されます。本モジュール 制御の DMA 転送により , CPU を介さずに各種データ転送を高速に行うことが可能となり , シ ステムのパフォーマンスを増加させます。 ■ ハードウェア構成 本モジュールは , 以下より構成されます。 • オンチップバスインタフェース • 独立した DMA チャネル× 4 チャネル • 32 ビットアドレスレジスタ ( 各チャネルにベースアドレスとインデックスアドレス など計 5 本 ) • 32 ビット転送バイト数レジスタ ( 各チャネル 1 本 ) • データバッファ ( 各チャネル 32 バイト ) ■ 主要機能 本モジュールによるデータ転送には , 以下のような機能があります。 • 複数チャネル (4 チャネル ) の独立した DMA 転送が可能 • 優先順位 - 固定優先順位 優先順位が ch.0 > ch.1 > ch.2 > ch.3 で固定になります。 - ラウンドロビン優先順位 転送を行ったチャネルの優先順位が最下位になり,転送を行っていないチャネル の優先順位が高くなるように次の優先順位が決まります。 • • DMA 転送起動要因 - 内部 ( 常時 ) 要求 - ICH からの要求 (ICH 内蔵の周辺機能による要求 ) DMA 転送モード - 転送要求モード:バースト転送 / ブロック転送 - チャネルモード:DA モード /SCA モード /DCA モード /2-D モード , アドレス増 加 / 減少 / 固定 • - 転送データサイズ:1 バイト /2 バイト /4 バイト /32 バイト - 転送総バイト数:最大 224 バイト 割込み発生による DMA 転送抑止 - 672 割込み発生時に , DMA 転送を抑止する割込みレベルを設定可能 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.2 MB91605A シリーズ 25.2 構成 DMA コントローラの構成を示します。 ■ DMA コントローラのブロックダイヤグラム DMA コントローラのブロックダイヤグラムを図 25.2-1 に示します。 図 25.2-1 DMA コントローラのブロックダイヤグラム DM A C ontroller On-Chip Bus Target Interface On-Chip Bus Master Interface On-Chip Bus Registers CM71-10147-2 Data Buffer DMA Transfer Request Controller DMA Transfer Engine Priority Controller Bus Grant Request Controller DMA Request Acknowledge Controller FUJITSU SEMICONDUCTOR LIMITED ICH DACK, DONE, DCH 673 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ 25.3 レジスタ DMA コントローラで使用するレジスタの構成と機能について説明します。 ■ レジスタ一覧 DMA コントローラのレジスタ一覧を表 25.3-1 に示します。 表 25.3-1 DMA コントローラのレジスタ一覧 (1 / 2) チャネル 共通 0 1 674 レジスタ略称 レジスタ名 参照先 GCFR 25.3.1 グローバルコンフィギュレーションレジス タ DNMIR 25.3.11 DMA 転送抑止 NMI フラグレジスタ DILVR DMA 転送抑止割込みレベルレジスタ CCFR0 チャネルコンフィギュレーションレジスタ 25.3.2 0 CSTR0 チャネルステータスレジスタ 0 25.3.3 CCTR0 チャネルコントロールレジスタ 0 25.3.4 SBA0 ソースベースアドレスレジスタ 0 25.3.5 DBA0 デスティネーションベースアドレスレジス 25.3.6 タ0 PIX0 プライマリインデックスレジスタ 0 25.3.7 SIX0 セカンダリインデックスレジスタ 0 25.3.8 BCL0 バイトカウントリミットレジスタ 0 25.3.9 APR0 オルタネートポインタレジスタ 0 25.3.10 CCFR1 チャネルコンフィギュレーションレジスタ 25.3.2 1 CSTR1 チャネルステータスレジスタ 1 25.3.3 CCTR1 チャネルコントロールレジスタ 1 25.3.4 SBA1 ソースベースアドレスレジスタ 1 25.3.5 DBA1 デスティネーションベースアドレスレジス 25.3.6 タ1 PIX1 プライマリインデックスレジスタ 1 25.3.7 SIX1 セカンダリインデックスレジスタ 1 25.3.8 BCL1 バイトカウントリミットレジスタ 1 25.3.9 APR1 オルタネートポインタレジスタ 1 25.3.10 FUJITSU SEMICONDUCTOR LIMITED 25.3.12 CM71-10147-2 MB91605A シリーズ 第 25 章 DMA コントローラ (DMAC) 25.3 表 25.3-1 DMA コントローラのレジスタ一覧 (2 / 2) チャネル 2 3 CM71-10147-2 レジスタ略称 レジスタ名 参照先 CCFR2 25.3.2 チャネルコンフィギュレーションレジスタ 2 CSTR2 チャネルステータスレジスタ 2 25.3.3 CCTR2 チャネルコントロールレジスタ 2 25.3.4 SBA2 ソースベースアドレスレジスタ 2 25.3.5 DBA2 デスティネーションベースアドレスレジス 25.3.6 タ2 PIX2 プライマリインデックスレジスタ 2 25.3.7 SIX2 セカンダリインデックスレジスタ 2 25.3.8 BCL2 バイトカウントリミットレジスタ 2 25.3.9 APR2 オルタネートポインタレジスタ 2 25.3.10 CCFR3 チャネルコンフィギュレーションレジスタ 25.3.2 3 CSTR3 チャネルステータスレジスタ 3 25.3.3 CCTR3 チャネルコントロールレジスタ 3 25.3.4 SBA3 ソースベースアドレスレジスタ 3 25.3.5 DBA3 デスティネーションベースアドレスレジス 25.3.6 タ3 PIX3 プライマリインデックスレジスタ 3 25.3.7 SIX3 セカンダリインデックスレジスタ 3 25.3.8 BCL3 バイトカウントリミットレジスタ 3 25.3.9 APR3 オルタネートポインタレジスタ 3 25.3.10 FUJITSU SEMICONDUCTOR LIMITED 675 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ グローバルコンフィギュレーションレジスタ (GCFR) 25.3.1 本レジスタは DMA コントローラ全体を制御します。 グローバルコンフィギュレーションレジスタ (GCFR) のビット構成を図 25.3-1 に示し ます。 図 25.3-1 グローバルコンフィギュレーションレジスタ (GCFR) のビット構成 bit 31 AT 属性 30 0 予約 R/W 0 初期値 R/W:リード / ライト可能 [bit 31]:AT ( 優先順位タイプビット ) チャネル間の優先順位の決定方法を指定します。 書込み値 優先順位タイプ 0 ラウンドロビン優先順位 転送を行ったチャネルの優先順位が最下位になり , 転送を行っていない チャネルの優先順位が高くなるよう次の優先順位が決定されます。 1 固定優先順位 Ch.0( 最高 ) > Ch.1 > Ch.2 > Ch.3( 最低 ) の順で固定されます。 [bit 30 ∼ bit 0]:予約ビット 676 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ チャネルコンフィギュレーションレジスタ (CCFR0 ∼ CCFR3) 25.3.2 チャネルの構成を決定するための 16 ビット長のレジスタです。チャネルごとに存在します。 チャネルコンフィギュレーションレジスタ (CCFR0 ∼ CCFR3) のビット構成を図 25.32 に示します。 図 25.3-2 チャネルコンフィギュレーションレジスタ (CCFR0 ∼ CCFR3) のビット構成 bit 15 予約 14 13 予約 予約 12 11 10 9 8 予約 TM1 TM0 CM1 CM0 R/W 属性 0 初期値 bit 7 6 5 4 3 2 1 0 予約 予約 予約 予約 RS3 RS2 RS1 RS0 R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 15 ∼ bit 12]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit 11, bit 10]:TM1, TM0 ( 転送モード設定ビット ) チャネルの転送モードを設定します。2 種類のモードが設定できます。 TM1 TM0 転送モード 0 0 ブロック転送 0 1 バースト転送 1 0 設定禁止 1 1 設定禁止 [bit 9, bit 8]:CM1, CM0 ( チャネルモード設定ビット ) チャネルの動作モードを設定します。4 種類のモードが設定できます。 CM1 CM71-10147-2 CM0 チャネルモード 0 0 DA モード (Dual Addressing Mode) 0 1 SCA モード (Source Circular Addressing Mode) 1 0 DCA モード (Destination Circular Addressing Mode) 1 1 2D モード (2-Dimensional Addressing Mode) FUJITSU SEMICONDUCTOR LIMITED 677 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 7 ∼ bit 4]:予約ビット 書込み時 必ず ’0001’ を設定してください。 [bit 3 ∼ bit 0]:RS3 ∼ RS0 (DMA 転送要求元設定ビット ) チャネルに対する転送要求の発生元を選択します。 ただし , チャネルが SCA モードまたは DCA モードのときは内部 ( 常時 ) 要求の指定は 無視されます。 RS3 RS2 RS1 RS0 DMA 転送要求元 0 0 0 0 内部 ( 常時 ) 要求 0 0 0 1 IORR レジスタで設定 その他 設定禁止 チャネルステータスレジスタ (CSTR0 ∼ CSTR3) 25.3.3 チャネルの状態を表示するための 16 ビット長のレジスタです。チャネルごとに存在します。 チャネルステータスレジスタ (CSTR0 ∼ CSTR3) のビット構成を図 25.3-3 に示します。 図 25.3-3 チャネルステータスレジスタ (CSTR0 ∼ CSTR3) のビット構成 bit 15 14 13 12 11 10 9 8 BUSY INT CE RER WER STP FED NE R/W 属性 0 初期値 bit 7 6 5 4 3 2 1 0 予約 FS6 FS5 FS4 FS3 FS2 FS1 FS0 R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 15]:BUSY ( ビジー状態フラグ ) チャネルが動作中であることを示すフラグです。 セット要因 CCTR レジスタの ACT への "1" 書込みによる DMA 転送開始 クリア要因 ・DMA 転送完了 ・エラーの発生 ・CCTR レジスタの ACT への "0" 書込みによる DMA 転送停止 本ビットへの書込みは動作に影響を与えません。 678 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 25 章 DMA コントローラ (DMAC) 25.3 [bit 14]:INT ( 割込みリクエストフラグ ) 割込み要因が検出されていることを示すフラグです。 セット要因 ・ノーマルエンデッド ・フォースエンデッド ・コンペアエンデッド ・リードエラー / ライトエラー検出による DMA 転送動作の完了 ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 [bit 13]:CE ( コンペアエンデッドフラグ ) SCA もしくは DCA モードでアドレスの一致を検出して停止したことを示すフラグで す。 セット要因 ・SCA/DCA モードで , アドレスの一致を検出して DMA が停止 ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 [bit 12]:RER ( リードエラーフラグ ) ソース側のデータをリードする際にエラーが検出されたことを示すフラグです。 セット要因 ・ソース側データのリードエラーの発生 ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 679 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 11]:WER ( ライトエラーフラグ ) デスティネーション側へのライトの際にエラーが検出されたことを示すフラグです。 セット要因 ・デスティネーション側へのライトエラーの発生 ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 [bit 10]:STP ( ストップエンデッドフラグ ) DSTP 入力がアクティブになったことにより , 強制的に動作を停止させたことを示すフ ラグです。DSTP 入力がアクティブになった後 , 転送中の動作が完了した時点で , 本フ ラグが "1" に遷移し , ストップエンデッドとなります。 セット要因 ・ストップエンデッドの発生 (DSTP 入力をアクティブ ) ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 [bit 9]:FED ( フォースエンデッドフラグ ) CCTR レジスタの ACT ビットへの "0" 書込みにより , 強制的に動作を停止させたこと を示します。ACT ビットへの "0" 書込み後 , 転送中の動作が完了した時点で , 本フラグ が "1" に遷移し , フォースエンデッドとなります。 セット要因 ・フォースエンデッドの発生 (CCTR レジスタの ACT ビットへの "0" 書込み ) ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 680 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 8]:NE ( ノーマルエンデッドフラグ ) 設定された転送動作が正常終了したことを示します。本ビットのセット条件はチャネ ルのモードにより以下に示すようになっています (SCA, DCA モードでは転送の終了に より本ビットはセットされません )。 セット要因 ・DA モード…BCL で示されるバイト数の転送の完了 ・2D モード…SIX で示されるスキャンライン数の転送の終了 ・本ビットへの "1" 書込み クリア要因 本ビットへの "0" 書込み 本フラグビットは , ソフトウェアによる "1" 書込みが可能です。 本フラグビットは , 必ずメモリストア命令によるアクセスを行ってください。 リードモディファイライト命令 ( ビット操作演算命令 ) によるアクセスを行わないでく ださい。 [bit 7]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit 6 ∼ bit 0]:FS6 ∼ FS0 (FIFO ステータスビット ) 正常に転送が完了したサイズを示します。 これらのビットへの書込みは無効です。 • 転送がエラーで終了した場合 エラーの種類 レジスタの表示内容 リードエラー 読出しが正常に完了したサイズ ライトエラー 書込みが正常に完了したサイズ 両方 読出しが正常に完了したサイズ • フォースエンデッドの場合 SSIZ の関係 *1 レジスタの表示内容 SSIZ < DSIZ 読出しが完了したサイズを示す。書込み完了により 0 になる。 転送開始時は 0 SSIZ > DSIZ 書込みが完了したサイズを示す。読出し完了により 0 になる。 転送開始時は SSIZ の値 SSIZ = DSIZ 読出しが完了すると SSIZ の値を示す。書込み完了により 0 になる。 転送開始時は 0 *1 SSIZ/DSIZ ビットは CCTR レジスタにあります。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 681 第 25 章 DMA コントローラ (DMAC) 25.3 25.3.4 MB91605A シリーズ チャネルコントロールレジスタ (CCTR0 ∼ CCTR3) チャネルの動作を制御するための 16 ビット長のレジスタです。チャネルごとに存在します。 チャネルコントロールレジスタ (CCTR0 ∼ CCTR3) のビット構成を図 25.3-4 に示しま す。 図 25.3-4 チャネルコントロールレジスタ (CCTR0 ∼ CCTR3) のビット構成 bit 15 14 13 12 ACT IE BUF ICE 11 10 9 8 FC 予約 SAU1 SAU0 3 2 1 0 DAU0 DSIZ2 DSIZ1 DSIZ0 R/W 属性 0 初期値 bit 7 6 5 4 SSIZ2 SSIZ1 SSIZ0 DAU1 R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 15]:ACT ( チャネル動作ビット ) 本ビットに "1" を設定するとチャネルの動作が開始されます。また , 動作中に "0" を書 き込むと動作を一時中断しますが , 再度 "1" を書き込めば動作は再開します。 転送処理が完了した時点で , "0" に遷移します。また , エラーにより転送が中断された 場合にも "0" に遷移し , チャネルは動作を停止します。 書込み値 チャネルへの指示 0 チャネルに停止を指示 1 チャネルに動作を指示 [bit 14]:IE ( 割込み許可ビット ) CSTR レジスタの INT ビットが "1" の場合に割込みを発生するかどうかを指定します。 書込み値 割込みの動作 0 割込みの発生を禁止 1 割込みの発生を許可 [bit 13]:BUF ( バッファアクセス許可ビット ) DMA 転送の内部バスアクセスをバッファ可能なアクセスかどうかを指定します。 書込み値 682 DMA 転送のアクセス 0 DMA 転送のバッファアクセスを禁止 1 DMA 転送のバッファアクセスを許可 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 12]:ICE ( インデックスコンペア許可ビット ) チャネルモードが SCA もしくは DCA の場合にアドレス一致による停止を行うことを 指定します。サーキュラ側に固定を指定した場合 , "1" を設定することは禁止です。 書込み値 アドレス比較動作 0 アドレス比較禁止 1 アドレス比較を許可 ( アドレス一致を検出すると DMA 転送を停 止) [bit 11]:FC (FIFO クリアビット ) "1" を書き込むとチャネルの FIFO バッファをクリアします。"1" を設定した後 , チャネ ルを動作させるためには , ソフトウェアにより "0" を設定してください。 CCTR レジスタの ACT ビットと本ビットが両方とも "0" の状態で , 両方のビットへ同 時に "1" を書き込むと , FIFO に残された情報の書込み動作が行われます。 書込み値 FIFO クリア動作 0 FIFO をクリアしない 1 FIFO をクリアする [bit 10]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit 9, bit 8]:SAU1, SAU0 ( 転送元アドレス更新ビット ) ソース側のアドレスの更新量を指定します ( 実際には , チャネルのモードにより PIX レ ジスタ , または SIX レジスタが更新され , その状況が転送の際のアドレスに反映されま す )。 SAU1 CM71-10147-2 SAU0 ソースアドレス更新 0 0 ホールド。アドレスは固定。 0 1 インクリメント。SSIZ で指定されるサイズ を加算。 1 0 デクリメント。SSIZ で指定されるサイズを 減算。 ( デクリメントを指定した場合 , SSIZ=DSIZ となるように設定する。) 1 1 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 683 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 7 ∼ bit 5]:SSIZ2 ∼ SSIZ0 ( 転送元サイズ設定ビット ) ソース側の転送サイズを指定します。 SSIZ2 SSIZ1 SSIZ0 ソース側転送サイズ 0 0 0 1 バイト 0 0 1 2 バイト 0 1 0 4 バイト 0 1 1 設定禁止 1 0 0 設定禁止 1 0 1 32 バイト 1 1 0 設定禁止 1 1 1 設定禁止 [bit 4, bit 3]:DAU1, DAU0 ( 転送先アドレス更新ビット ) デスティネーション側のアドレスの更新量を指定します ( 実際には , チャネルのモード により PIX レジスタまたは SIX レジスタが更新され , その状況が転送の際のアドレス に反映されます )。 DAU1 DAU0 デスティネーションアドレス更新 0 0 ホールド。アドレスは固定。 0 1 インクリメント。DSIZ で指定されるサイズ を加算。 1 0 デクリメント。DSIZ で指定されるサイズを 減算。 ( デクリメントを指定した場合 , DSIZ=SSIZ となるように設定する。) 1 1 設定禁止 [bit 2 ∼ bit 0]:DSIZ2 ∼ DSIZ0 ( 転送先サイズ設定ビット ) デスティネーション側の転送サイズを指定します。 DSIZ2 DSIZ1 DSIZ0 デスティネーション側 転送サイズ 0 0 0 1 バイト 684 0 0 1 2 バイト 0 1 0 4 バイト 0 1 1 設定禁止 1 0 0 設定禁止 1 0 1 32 バイト 1 1 0 設定禁止 1 1 1 設定禁止 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ ソースベースアドレスレジスタ (SBA0 ∼ SBA3) 25.3.5 ソース側のベースアドレスを示す 32 ビット長のレジスタです。チャネルごとに存在します。 ソースベースアドレスレジスタ (SBA0 ∼ SBA3) のビット構成を図 25.3-5 に示します。 図 25.3-5 ソースベースアドレスレジスタ (SBA0 ∼ SBA3) のビット構成 bit 31 0 SBA R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 31 ∼ bit 0]:SBA ( ソースベースアドレス ) ソース側のベースアドレスを格納します。 ソース側のトランザクションに使用されるアドレスは , モードにより , 以下に示すよう な方法で計算されます。 また , 本レジスタ値は CCTR レジスタの SSIZ2 ∼ SSIZ0 ビット , DSIZ2 ∼ DSIZ0 ビッ トで示されるサイズによりアラインする必要があります。アライン方法については 「25.4.1 設定」の「■各チャネルにおいて独立に設定する項目」を参照してください。 • DA, SCA モード アドレス計算はCCTLレジスタのSAU1, SAU0ビットに従い下表のようになります。 SAU1 SAU0 アドレス計算 0 0 ホールド SBA( 固定 ) 0 1 インクリメント SBA + PIX 1 0 デクリメント SBA - PIX • DCA モード アドレスは SBA に固定です。アドレス計算値 = SBA ( 固定 ) • 2D モード 水平方向のアドレス計算は SAU に従い下表 A のようになります。 また , BCL で示されるバイト数の転送が完了すると , 垂直方向のアドレス計算値に 従い下表 B のようになります。 表 A 水平方向 SAU1 CM71-10147-2 SAU0 アドレス計算 0 0 ホールド SBA( 固定 ) 0 1 インクリメント SBA + PIX 1 0 デクリメント SBA - PIX FUJITSU SEMICONDUCTOR LIMITED 685 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ 表 B 垂直方向 SAU1 25.3.6 SAU0 アドレス計算 0 0 ホールド SBA( 固定 ) 0 1 インクリメント SBA + AP 1 0 デクリメント SBA - AP デスティネーションベースアドレスレジスタ (DBA0 ∼ DBA3) デスティネーション側のベースアドレスを示す 32 ビット長のレジスタです。チャネルごとに 存在します。 デスティネーションベースアドレスレジスタ (DBA0 ∼ DBA3) のビット構成を図 25.36 に示します。 図 25.3-6 デスティネーションベースアドレスレジスタ (DBA0 ∼ DBA3) のビット構成 bit 31 0 DBA R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 31 ∼ bit 0]:DBA ( デスティネーションベースアドレス ) デスティネーション側のベースアドレスを格納します。 デスティネーション側のトランザクションに使用されるアドレスは , モードにより , 以 下に示すような方法で計算されます。 また , 本レジスタ値は CCTR レジスタの SSIZ2 ∼ SSIZ0 ビット , DSIZ2 ∼ DSIZ0 ビッ トで示されるサイズによりアラインする必要があります。アライン方法については 「25.4.1 設定」の「■各チャネルにおいて独立に設定する項目」を参照してください。 • DA モード アドレス計算は CCTL レジスタの DAU1, DAU0 に従い下表のようになります。 DAU1 686 DAU0 アドレス計算 0 0 ホールド DBA( 固定 ) 0 1 インクリメント DBA + SIX 1 0 デクリメント DBA - SIX FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ • DCA モード アドレス計算は CCTL レジスタの DAU1, DAU0 に従い下表のようになります。 DAU1 DAU0 アドレス計算 0 0 ホールド DBA( 固定 ) 0 1 インクリメント DBA + PIX 1 0 デクリメント DBA - PIX • SCI モード アドレスは DBA に固定です。アドレス計算値 = DBA ( 固定 ) • 2D モード 水平方向のアドレス計算は DAU に従い下表 A のようになります。 また , BCL で示されるバイト数の転送が完了すると , 垂直方向のアドレス計算値は DAU に従い下表 B のようになります。 表 A 水平方向 DAU1 DAU0 アドレス計算 0 0 ホールド DBA( 固定 ) 0 1 インクリメント DBA + PIX 1 0 デクリメント DBA - PIX 表 B 垂直方向 DAU1 DAU0 アドレス計算 0 0 ホールド DBA( 固定 ) 0 1 インクリメント DBA + AP 1 0 デクリメント DBA - AP プライマリインデックスレジスタ (PIX0 ∼ PIX3) 25.3.7 ソース側の次に転送されるデータのアドレスをベースアドレスからのオフセットの形で保持 する 32 ビット長のレジスタです。チャネルごとに存在します。 プライマリインデックスレジスタ (PIX0 ∼ PIX3) のビット構成を図 25.3-7 に示します。 図 25.3-7 プライマリインデックスレジスタ (PIX0 ∼ PIX3) のビット構成 bit 31 0 PIX 属性 初期値 R/W 0 R/W:リード / ライト可能 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 687 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 31 ∼ bit 0]:PIX ( プライマリインデックス ) チャネルのモードにより , 以下に示すように機能が変化します。 本レジスタは , 転送を開始する前にソフトウェアにより "0" を設定してください。 本レジスタは転送制御用に使用されるため , DMA コントローラが転送を開始した後は 本レジスタの読出し値は , 転送バイト数としては保証されません。 • DA モード ソース側の転送済みバイト数を格納します。 1 回のトランザクションを終えるたびに , 転送されたデータのサイズが加算されま す。 DMA コントローラの最大転送バイトは 224 バイトのため , PIX が取りうる値は "00000000H" (0 バイト ) ∼ "01000000H" (224 バイト ) です。 • SCA モード 次にデータを読出す位置をサーキュラバッファの先頭からのバイトオフセットの 形で保持しています。 1 回のトランザクションを終えるたびに , 転送されたデータのサイズが加算されま す。値を更新した結果 , BCL に格納されているサーキュラバッファ末尾のオフセッ トの値を超えると "0" にクリアされ , 読出し位置がバッファの先頭に戻されます。 DMA コントローラの最大転送バイトは 224 バイトのため , PIX が取りうる値は "00000000H" (0 バイト ) ∼ "01000000H" (224 バイト ) です。 • DCA モード 次にデータを格納される位置をサーキュラバッファの先頭からのバイトオフセッ トの形で保持しています。 1 回のトランザクションを終えるたびに , 転送されたデータのサイズが加算されま す。 値を更新した結果 , BCL の値と一致すると "0" にクリアされ , 書込み位置がバッ ファの先頭に戻されます。 DMA コントローラの最大転送バイトは 224 バイトのため , PIX が取りうる値は "00000000H" (0 バイト ) ∼ "01000000H" (224 バイト ) です。 • 2D モード スキャンライン内の転送済みデータのバイト数を格納します。 1 回のトランザクションを終えるたびに , 転送されたデータのサイズが加算されま す。値を更新した結果 , BCL の値と一致すると "0" にクリアされます。 DMA コントローラの最大転送バイトは 224 バイトのため , PIX が取りうる値は "00000000H" (0 バイト ) ∼ "01000000H" (224 バイト ) です。 25.3.8 セカンダリインデックスレジスタ (SIX0 ∼ SIX3) デスティネーション側の次に転送されるデータのアドレスをベースアドレスからのオフセッ トの形で保持する 32 ビット長のレジスタです。チャネル毎に存在します。 2D モードの際には , 残りのスキャンライン数を格納するために使用され , SCA, DCA モード ではアドレス一致により転送中断するためのアドレスを格納するために使用されます。 688 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ セカンダリインデックスレジスタ (SIX0 ∼ SIX3) のビット構成を図 25.3-8 に示します。 図 25.3-8 セカンダリインデックスレジスタ (SIX0 ∼ SIX3) のビット構成 bit 31 0 SIX R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 31 ∼ bit 0]:SIX ( セカンダリインデックス ) チャネルのモードにより , 以下に示すように機能が変化します。 本レジスタは , DA モードで使用する場合 , 転送を開始する前にソフトウェアにより "0" を設定してください。 本レジスタは転送制御用に使用されるため , DMA コントローラが転送を開始した後は 本レジスタの読出し値は , 転送バイト数 , および転送スキャンライン数としては保証さ れません。 • DA モード デスティネーション側の転送済みバイト数を格納します。 1 回のトランザクションを終えるたびに , 転送されたデータのサイズが加算されま す。 DMA コントローラの最大転送バイトは 224 バイトのため , SIX が取りうる値は "00000000H" (0 バイト ) ∼ "01000000H" (224 バイト ) です。 • SCA, DCA モード 転送ごとに , SIX の値が比較されます。 CCTR レジスタの ICE=1 の場合 , 両者が一致すると , 一致したときの転送を終えた 後で , CCTR レジスタの ACT ビットが "0" にクリアされ , チャネルは停止状態に遷 移します。 • 2D モード 残りのスキャンライン数を格納します。 1 スキャンライン分の転送を完了するごとにデクリメント ( − 1) されます。"0" が 指定されると , 4G(232) ラインを指定したことになります。 DMA コントローラの最大スキャンライン数は , 224 です。そのため , SIX に設定可 能な値は "00000001H" ( 残り 1 ライン ) ∼ "01000000H" ( 残り 224 ライン ) です。こ れ以外の設定は禁止です。 25.3.9 バイトカウントリミットレジスタ (BCL0 ∼ BCL3) 転送されるデータの総量をバイト数で保持する 32 ビット長のレジスタです。チャネルごとに 存在します。 バイトカウントリミットレジスタ (BCL0 ∼ BCL3) のビット構成を図 25.3-9 に示しま す。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 689 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ 図 25.3-9 バイトカウントリミットレジスタ (BCL0 ∼ BCL3) のビット構成 bit 31 0 BCL R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 31 ∼ bit 0]:BCL ( バイトカウントリミット ) 転送されるデータのバイト数を保持します。 DMA コントローラの最大転送バイト数は , 224 バイトです。そのため , BCL に設定可 能な値は , "00000001H" (1 バイト ) ∼ "01000000H" (224 バイト ) です。これ以外の設定 は禁止です。 機能がチャネルのモードにより以下のように変わります。 また , 本レジスタ値は CCTR レジスタの SSIZ/DSIZ ビットで示されるサイズによりア ラインする必要があります。アライン方法については「25.4.1 設定」の「■各チャネ ルにおいて独立に設定する項目」を参照してください。 • DA モード BCL で示されるバイト数の転送が完了すると , 転送が完了したと判断します。 • SCA, DCA モード BCL で示されるバイト数の転送が完了すると , PIX を "0" にクリアします。チャネ ルの動作は継続されます。 • 2D モード BCL で示されるバイト数の転送が完了すると , 以下のような動作を行います。デク リメントの結果 , SIX の値が "0" になった場合はチャネルの動作は終了しますが , そ の他の場合には動作は継続されます。 25.3.10 - AP の値を使い SBA, DBA を更新します。 - PIX を "0" にクリアします。 - SIX の値をデクリメント (-1) します。 オルタネートポインタレジスタ (APR0 ∼ APR3) チャネルが 2D モードの場合に , フレームバッファの幅を格納するために使用する 32 ビット 長のレジスタです。チャネルごとに存在します。 690 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ オルタネートポインタレジスタ (APR0 ∼ APR3) のビット構成を図 25.3-10 に示します。 図 25.3-10 オルタネートポインタレジスタ (APR0 ∼ APR3) のビット構成 bit 31 0 AP R/W 属性 0 初期値 R/W:リード / ライト可能 [bit 31 ∼ bit 0]:AP ( オルタネートポインタ ) 次のスキャンライン中の転送開始アドレスまでのオフセットが格納されます。 DMA コントローラで設定可能な最大オフセットは , 224 -1 です。そのため , AP に設定 可能な値は , "00000000H" ( オフセット:0) ∼ "00FFFFFFH" ( オフセット:224 -1) です。 これ以外の設定は禁止です。 1 スキャンライン分の有効データの転送が終ると , AP の値がベースレジスタに加算も しくは減算されます。また , 本レジスタ値は CCTR レジスタの SSIZ/DSIZ ビットで示 されるサイズによりアラインする必要があります。アライン方法については「25.4.1 設 定」の「■各チャネルにおいて独立に設定する項目」を参照してください。 DMA 転送抑止 NMI フラグレジスタ (DNMIR) 25.3.11 ユーザ用 NMI による DMA 転送の抑止制御を行います。NMI 要求は他の周辺機能の割込みと 異なり , 割込み要求フラグを持たないため , 本レジスタにて代用します。 ただし , 本レジスタで制御するのは DMA 転送抑止機能のみであり , NMI 要求そのものの制御 には影響しません。 DMA転送抑止NMIフラグレジスタ (DNMIR)のビット構成を図 25.3-11 に示します。 図 25.3-11 DMA 転送抑止 NMI フラグレジスタ (DNMIR) のビット構成 bit 7 6 0 NMIH 予約 R/W 属性 0 初期値 R/W:リード / ライト可能 [bit7]:NMIH (NMI 抑止制御フラグ ) ユーザ用 NMI 要求が発生したことを示すフラグです。 本ビットがセットされていると DMA 転送抑止要求が発生します。DMA 転送を再開す るには , ユーザ用 NMI ハンドラ処理終了時に本ビットをクリアしてください。 書込み値 CM71-10147-2 ユーザ用 NMI による DMA 転送抑止 0 DMA 転送を抑止していません 1 ユーザ用 NMI が発生し , DMA 転送を抑止しています FUJITSU SEMICONDUCTOR LIMITED 691 第 25 章 DMA コントローラ (DMAC) 25.3 MB91605A シリーズ [bit 6 ∼ bit 0]:予約ビット 25.3.12 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 DMA 転送抑止割込みレベルレジスタ (DILVR) 周辺機能の割込み要求による DMA 転送の抑制制御を行うための , 基準となる割込みレベルを 設定します。本レジスタはリセットにより 1FH に初期化されますので , 設定値を変更するま ではすべての割込み要求で DMA 転送を抑止します。 DMA 転送抑止割込みレベルレジスタ (DILVR) のビット構成を図 25.3-12 に示します。 図 25.3-12 DMA 転送抑止割込みレベルレジスタ (DILVR) のビット構成 bit 属性 初期値 7 6 5 4 予約 R/W 予約 R/W 予約 R/W LVL4 0 0 0 3 2 1 0 LVL3 LVL2 LVL1 LVL0 R/W R/W R/W R/W R/W 1 1 1 1 1 R/W:リード / ライト可能 [bit 7 ∼ bit 5]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit 4 ∼ bit 0]:LVL4 ∼ LVL0 (DMA 抑止割込みレベル ) DMA 転送抑止を行う割込みレベルを設定します。 本レジスタに設定したレベルより強いレベルの周辺機能の割込みが発生していると DMA 転送抑止要求が発生します。bit4 は "1" 固定で , bit3 ∼ bit0 が設定可能です。 LVL4 LVL3 LVL2 LVL1 LVL0 1 1 1 1 1 すべての周辺機能の割込み要求でDMA転送を抑 止する 1 1 1 1 0 レベルが 1EH より強い周辺機能の割込み要求で 1 1 1 0 1 DMA 転送抑止割込みレベル設定 DMA 転送を抑止する レベルが 1DH より強い周辺機能の割込み要求で DMA 転送を抑止する … 1 0 0 … 0 1 レベルが 10H より強い周辺機能の割込み要求で DMA 転送を抑止する 1 692 0 0 0 0 周辺機能の割込み要求ではDMA転送を抑止しな い FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 25 章 DMA コントローラ (DMAC) 25.4 25.4 動作説明 割込みコントローラの動作について説明します。 25.4.1 設定 全チャネル共通の設定項目と , 各チャネルごとの設定項目に分けて説明します。 ■ 全チャネルにおいて共通に設定する項目 全チャネルにおいて共通に設定する項目は以下のとおりです。 • チャネル優先順位設定 • 割込み発生時の DMA 転送抑止設定 各項目の詳細を以下に示します。 チャネル優先順位設定 GCFR レジスタの AT ビットで , チャネル間の優先順位の決定方法を設定します。 チャネル優先順位は , 以下の 2 つから設定できます。 • ラウンドロビン優先順位 [AT=0] • 固定優先順位 [AT=1] 割込み発生時の DMA 転送抑止設定 DILVR レジスタの LVL3 ∼ LVL0 ビットで , 割込み発生時に DMA 転送より優先して 処理したい割込みレベルを設定します。 設定可能なレベルは 1FH から 10H までです。 ■ 各チャネルにおいて独立に設定する項目 各チャネルにおいて独立に設定する項目は以下のとおりです。 • DMA 転送要求設定 • 転送モード設定 • アクノリッジタイミング設定 • 転送単位設定 • 転送アドレス更新設定 • チャネルモード , および , 転送アドレス / 転送データ設定 • 割込み許可設定 • DMA 転送のバッファ可能アクセス設定 • SCA/DCA モード時のアドレス比較検出設定 各項目の詳細を以下に示します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 693 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ DMA 転送要求設定 CCFR レジスタの RS3 ∼ RS0 ビットで転送要求を受け付ける転送要求元を設定します。 転送要求は , 以下の 2 つから設定できます。 • 内部 ( 常時 ) 転送要求 [RS3 ∼ RS0=0000] • ICH からの転送要求 [RS3 ∼ RS0=0001] 転送モード設定 CCFR レジスタの TM1, TM0 ビットで DMA 転送の転送モードを設定します。 転送モードは , 以下の 2 つから設定できます。 • ブロック転送 [TM1, TM0=00] • バースト転送 [TM1, TM0=01] 転送単位設定 CCTR レジスタの SSIZ3 ∼ SSIZ0 ビットで , ソース側からの DMA 転送の転送単位を設 定します。 CCTR レジスタの DSIZ3 ∼ DSIZ0 ビットで , デスティネーション側への DMA 転送の 転送単位を設定します。 転送単位は , SSIZ/DSIZ ビットともに以下の 4 つから設定できます。 • 1 バイト [SSIZ3 ∼ SSIZ0=000, DSIZ3 ∼ DSIZ0=000] • 2 バイト [SSIZ3 ∼ SSIZ0=001, DSIZ3 ∼ DSIZ0=001] • 4 バイト [SSIZ3 ∼ SSIZ0=010, DSIZ3 ∼ DSIZ0=010] • 32 バイト [SSIZ3 ∼ SSIZ0=101, DSIZ3 ∼ DSIZ0=101] 転送アドレス更新設定 CCTR レジスタの SAU1, SAU0 ビットで , DMA 転送におけるソース側のアドレス更新 を設定します。 CCTR レジスタの DAU ビットで , DMA 転送におけるデスティネーション側のアドレ ス更新を設定します。 アドレス更新は , SAU/DAU ビットともに以下の 3 つから設定できます。 • ホールド [SAU1, SAU0=00, DAU=00] • インクリメント [SAU1, SAU0=01, DAU=01] • デクリメント [SAU1, SAU0=10, DAU=10] チャネルモード , および , 転送アドレス / 転送データ設定 CCFR レジスタの CM1, CM0 ビットで , DMA 転送するチャネルモードを設定します。 チャネルモードは , 以下の 4 つから設定できます。 • DA(Dual Addressing) モード [CM1, CM0=00] • SCA(Source Circular Addressing) モード [CM1, CM0=01] • DCA(Destination Circular Addressing) モード [CM1, CM0=10] • 2D(2-Demensional Addressing) モード [CM1, CM0=11] 各チャネルモードによって , SBA/DBA/PIX/SIX/BCL/APR の転送アドレス / 転送データ 設定レジスタが持つ機能が変化します。 各チャネルモードの詳細は「■チャネルモード」を参照してください。 694 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 25 章 DMA コントローラ (DMAC) 25.4 割込み許可設定 CCTR レジスタの IE ビットで DMA コントローラの割込み許可を設定します。 DMA 転送のバッファ許可アクセス設定 CCTR レジスタの BUF ビットで , DMA 転送アクセスのバッファ許可を設定します。 SCA/DCA モード時のアドレス比較検出設定 CCTR レジスタの ICE ビットで , SCA モード /DCA モードにおけるアドレス比較検出 の許可を設定します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 695 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ ■ チャネルモード 以下に , 各チャネルモードにおける各レジスタ設定と転送アドレス / 転送データの関係 および , 設定値のアライメントを示します。 なお , 転送アドレス / 転送データ設定レジスタは , 初期値が不定です。これらのレジス タは,チャネルの使用/不使用に関わらずソフトウェアによる初期化を行ってください。 ● 各チャネルモードにおける各レジスタ設定と転送アドレス / 転送データの関 係 DA モード 最も基本的な転送モードです。 SBA + PIX で指定されるアドレスから DBA + SIX で指定されるアドレスへの転送を 行い , PIX と SIX を指定された量だけ更新するという動作を繰り返しながら , BCL で指 定されるバイト数のデータを転送します。 • SBA:転送元のデータ領域の先頭アドレス • DBA:転送先のデータ領域の先頭アドレス • PIX:"0" を設定 • SIX:"0" を設定 • BCL:転送サイズ • APR:"0" を設定 図 25.4-1 DA モード 00000000H インクリメントの場 SBA BCL(転送サイズ) PIX++ DBA BCL(転送サイズ) SIX++ FFFFFFFFH 696 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ SCA モード メモリ上のサーキュラバッファから固定アドレスへの転送を行うモードです。 本モードは内部 ( 常時 ) 要求の設定と併用できません。 SBA + PIX で指定されるアドレスから DBA で指定される固定アドレスへの転送を行 います。転送後 PIX の値を指定された量だけ更新する点は DA モードの場合と似てい ますが , PIX の値が BCL に達した場合 , 停止するのではなく PIX を "0" に戻して動作を 継続します。 SCA モードでは , CCTR レジスタの ICE ビットに "1" を設定することにより , SBA+PIX = SIX となる転送を終えたところで動作を停止させることが可能です。 • SBA:サーキュラバッファの先頭アドレス • DBA:転送先の I/O アドレス • PIX:"0" を設定 • SIX:転送を停止するサーキュラバッファ内のアドレス • BCL:サーキュラバッファのサイズ • APR:"0" を設定 図 25.4-2 SCA モード 00000000H BCL(サーキュラ SBA バッファサイズ) PIX++ PIX←0 DBA FFFFFFFFH CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 697 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ DCA モード 固定アドレスからメモリ上のサーキュラバッファへの転送を行うモードです。 本モードは内部 ( 常時 ) 要求の設定と併用できません。 SBA で指定される固定アドレスから DBA + PIX で指定されるアドレスへの転送を行 います。SCA モードと同様 , PIX の値が BCL に達すると PIX を "0" に戻して転送を継 続します。 また,本モードでも, CCTRレジスタのICEビットに"1"を設定することにより, DBA+PIX = SIX となる転送を終えたところで動作を停止させることが可能です。 • SBA:転送元の I/O アドレス • DBA:サーキュラバッファの先頭アドレス • PIX:"0" を設定 • SIX:転送を停止するサーキュラバッファ内のアドレス • BCL:サーキュラバッファのサイズ • APR:"0" を設定 図 25.4-3 DCA モード 00000000H SBA BCL(サーキュラ DBA バッファサイズ) PIX++ PIX←0 FFFFFFFFH 698 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 2D モード メモリ上にあるフレームバッファ内の矩形領域を転送することができます。 本モードを使うためには,チャネルの制御レジスタを以下に示すように設定して転送を 開始させます。 • SBA:転送元の矩形領域の基準アドレス ( 例:左下隅のピクセルのアドレス ) • DBA:転送先の矩形領域の基準アドレス ( 例:左下隅のピクセルのアドレス ) • PIX:"0" を設定 • SIX:矩形領域のスキャンライン数 • BCL:矩形領域の 1 行分の転送バイト数 • APR:仮想画面の 1 行分のバイト数 図 25.4-4 2D モード APR SBA PIX++ APR(仮想画面幅) 00000000H BCL(横幅) SIX SBA PIX++ PIX←0,SIX・・ BCL DBA APR DBA FFFFFFFFH CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 699 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ ● 転送アドレス / 転送データにおける設定値のアライメント SBA/DBA/PIX/SIX/BCL/APR の転送アドレス / 転送データ設定レジスタは , 次の表に示 されるサイズでアラインする必要があります。 転送モード SBA DBA レジスタ BCL DSIZ(*2) SCA, または , 転送先 SSIZ と DSIZ の DSIZ(*1) アドレスが固定 大きい方 DCA, または , 転送元 SSIZ(*1) SSIZ と DSIZ の SSIZ(*3) アドレスが固定 大きい方 APR SIX SSIZ と DSIZ SSIZ と DSIZ の大きい方 の大きい方 SSIZ と DSIZ SSIZ と DSIZ の大きい方 の大きい方 ソ ー ス , デ ス テ ィ SSIZ と DSIZ の SSIZ と DSIZ の SSIZ と DSIZ の SSIZ と DSIZ − ネーションの双方が 大きい方 大きい方 大きい方 の大きい方 非固定 (*1) ソース側 , もしくはデスティネーション側にデクリメントを指定した場合 , CCTR レジスタの SSIZ2 ∼ SSIZ0 ビットと DSIZ2 ∼ DSIZ0 ビットの大きいほうのサイズ の倍数になるようアラインしてください。 (*2) 転送元からは , CCTR レジスタの SSIZ ビットで示される単位で読出しが行われる ため , 転送先に書き込まれるよりも多くの情報が読み出される場合があります。読 み出されるサイズを転送先に送られるサイズと同じサイズにしたい場合には CCTR レジスタの DSIZ ビットに加え , SSIZ ビットでもアラインしてください。ま た , ソース側にデクリメントを指定した場合も SSIZ ビットの倍数になるようアラ インしてください。 (*3) 転送先への書込みが CCTR レジスタの DSIZ ビットで行われない場合があります。 書込みのサイズを DSIZ ビットで行わなければならない場合は , DSIZ ビットでも アラインしてください。また , デスティネーション側にデクリメントを指定した場 合も DSIZ ビットの倍数になるようアラインしてください。また , デスティネー ション側の転送で DREQ による起動を使用して転送する場合 (CCFR レジスタの ATS2 ∼ ATS0=010) にも , DSIZ ビットの倍数となるようアラインしてください。 25.4.2 起動 DMA コントローラは , 各チャネルの CCTR レジスタの ACT ビットを "1" に設定するこ とで起動します。このとき , CCFR レジスタの RS3 ∼ RS0 ビットによって設定される DMA 転送要求設定により , DMA コントローラは以下のような状態になります。 • 内部 ( 常時 ) 転送要求 [RS3 ∼ RS0=0000] DMA コントローラ起動により , DMA 転送を即時開始します。 • 各リソースからの転送要求 [RS3 ∼ RS0=0001] DMA コントローラ起動により , 転送要求受付状態となります。転送要求を受け付け るまで , 転送動作を開始しません。 700 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 25.4.3 第 25 章 DMA コントローラ (DMAC) 25.4 動作 DMA コントローラの動作について説明します。 ■ DMA コントローラの起動確認 DMA コントローラのチャネルごとの起動状態を確認する方法を説明します。 ステータス確認ビット DMA コントローラが起動状態にある場合 , CSTR レジスタの BUSY ビットが "1" にな り , チャネルが動作中であることを示します。 また , DMA コントローラが転送完了あるいは転送中断により停止状態に遷移した場合 BUSY ビットは "0" になり , チャネルが停止中であることを示します。 ■ 転送動作 DMA コントローラの転送動作について , 設定とその動作について説明します。 転送モード 転送モードは , DMA コントローラが 1 回の転送要求に対してどのような転送を行うか を決定します。 DMA コントローラでサポートする転送モードは以下の 2 つです。 • ブロック転送 一回の転送要求に対して 1 転送単位のみ転送を行い , その後 , 次の転送要求が受け 付けられるまで DMA コントローラは転送を停止します。ここで , 1 転送単位とは以 下を示します。 - ソース側に対して転送要求を行う場合 (CCFR レジスタの ATS2 ∼ ATS0 ビット が 001), CCTR レジスタの SSIZ2 ∼ SSIZ0 ビットで決まります。 - デスティネーション側に対して転送要求を行う場合 (CCFR レジスタの ATS2 ∼ ATS0 ビットが 010), CCTR レジスタの DSIZ2 ∼ DSIZ0 ビットで決まります。 • バースト転送 一回の転送要求に対して , BCL レジスタで設定された転送バイト数の転送が完了す るまで , チャネル内部で転送単位ごとに転送要求し続けます。一回の転送要求に対 して , 転送が完了するまで連続して転送を行います。 転送要求 転送要求は , どの転送要求元からの転送要求を受け付けるかを決定します。 DMA コントローラが設定可能な転送要求元は以下の 2 つです。 • 内部 ( 常時 ) 転送要求 内部 ( 常時 ) 転送要求を設定すると , CCTR レジスタの ACT ビットを "1" にする ( チャネル起動操作 ) だけで , DMA 転送を開始します。そのため , CCTR レジスタの ACT ビットを "1" にする以前に DMA 転送に必要なすべての設定を行ってください。 • ICH からの転送要求 ICH からの転送要求を設定すると , チャネル起動状態において , ICH からの転送要 求を検出することで DMA 転送を開始します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 701 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 転送単位 転送単位は , ソース側アクセス / デスティネーション側アクセスに対して独立に以下か ら設定できます。 • 1 バイト • 2 バイト • 4 バイト • 32 バイト 転送単位を 1 バイト /2 バイト /4 バイトに設定した場合 , オンチップバスではシングル アクセスを行います。 転送単位を 32 バイトに設定した場合 , オンチップバスでは 8 ビー トのラップ式バーストアクセスを行います。 転送アドレス更新 転送アドレスの更新は , 以下から設定できます。 • ホールド • インクリメント • デクリメント 上記の更新設定により , 転送アドレスのインデックス (PIX/SIX) は転送単位ごとの転送 を行うと , 以下のように更新されます。ただし , チャネルモードによってインデックス (PIX/SIX) の更新方法が決まっているものがあります。その場合 , 転送アドレスの更新 はチャネルモードの更新方法に従います。 - ホールド 転送アドレスのインデックスは固定であり , SIX/PIX は更新されません。 - インクリメント ソース側:転送単位 (CCTR レジスタの SSIZ2 ∼ SSIZ0 ビット ) が加算されます。 デスティネーション側:転送単位 (CCTR レジスタの DSIZ2 ∼ DSIZ0 ビット ) が 加算されます。 - デクリメント ソース側:転送単位 (CCTR レジスタの SSIZ2 ∼ SSIZ0 ビット ) が減算されます。 デスティネーション側:転送単位 (CCTR レジスタの DSIZ2 ∼ DSIZ0 ビット ) が 減算されます。 アクノリッジタイミング DMA 転送単位ごとの転送要求に対するアクノリッジには , 以下の 4 つのタイミングが 設定可能です。 • アクノリッジを出力しない • ソース側のアクセス時にアクノリッジを出力する • デスティネーション側のアクセス時にアクノリッジを出力する • ソース側とデスティネーション側の両アクセスに対してアクノリッジを出力する 上記の 4 つのタイミングでの転送要求およびアクノリッジ動作は以下のようになりま す。 702 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ - 第 25 章 DMA コントローラ (DMAC) 25.4 アクノリッジを出力しない 転送単位ごとの転送要求で , CCTR レジスタの SSIZ ビットと DSIZ ビットの大き い方のサイズだけソース側に対してリードします。その後 , 同サイズのデスティ ネーション側に対するライトをします。ソース側 / デスティネーション側のどち らに対してもアクノリッジを出力しません。 - ソース側のアクセス時にアクノリッジを出力する 転送単位ごとの転送要求で , CCTR レジスタの SSIZ ビットのサイズだけソース 側に対してリードすると同時に , アクノリッジを出力します。その後 , デスティ ネーション側に対するライトをしますが,このときにアクノリッジを出力しませ ん。 - デスティネーション側のアクセス時にアクノリッジを出力する 転送単位ごとの転送要求で, CCTRレジスタのDSIZビットのサイズだけデスティ ネーション側に対してライトが実行されます。ソース側に対するリードは転送 要求に関係なく自動的に行い , このときアクノリッジを出力しません。そのため チャネルを起動する前に転送元のデータを準備する必要があります。 - ソース側とデスティネーション側の両アクセスに対してアクノリッジを出力す る 転送単位ごとの転送要求で , CCTR レジスタの SSIZ ビットのサイズだけソース 側に対してリード , または , CCTR レジスタの DSIZ ビットのサイズだけデスティ ネーション側に対してライトが実行されます。ソース側 / デスティネーション側 の両方に対して , アクノリッジを出力します。 チャネルモード DMA コントローラでサポートするチャネルモードは以下の 4 つです。 • DA モード • SCA モード • DCA モード • 2D モード 各チャネルモードの詳細は「■チャネルモード」を参照してください。 アクセスのバッファ許可 DMAコントローラは, DMA転送を行うターゲットへのバッファ可能アクセスをサポー トしています。バッファ可能アクセスをサポートしているターゲットに対して , バッ ファ可能アクセスを行うことができます。ただし , DMA コントローラでバッファ可能 アクセスを指定した場合でも,バッファ可能アクセスをサポートしていないターゲット に DMA 転送を行うと , この指定は無効になります。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 703 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ チャネル間の転送優先順位 チャネル間の転送優先順位は , 以下の 2 つをサポートしています。 • ラウンドロビン優先順位 転送の優先順位は , DMA 転送を開始したチャネルの優先順位が最下位になり , 開始 したチャネルより下位であったチャネルの優先順位が 1 つずつ上がります。転送単 位での転送を行うたびに , 優先順位が更新されます。 • 固定優先順位 転送の優先順位は , 以下に固定されます。 チャネル 0 ( 最高 ) > チャネル 1 > チャネル 2 > チャネル 3 ( 最低 ) いずれの設定において同時に転送要求が発生した場合,転送を開始可能なチャネルの中 で最も優先順位が高いチャネルの転送を行います。 固定優先順位では , 2 つ以上のチャネルを同時に起動させる場合 , 以下のような動作を 行います。 低い優先順位のチャネルは , 優先順位が高いチャネルが DMA 転送を行っていない場合 に DMA 転送を行います。このため , 転送要求から転送動作までにタイムラグが発生し ます。 このタイムラグを一定時間以下にしたい場合には , 固定優先順位でチャネル 0 を使用す るか , もしくは , ラウンドロビン優先順位を使用してください。 704 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ DMA 転送のデータの動き ( 通常転送時 ) 図 25.4-5 ∼図 25.4-10 に転送例を示します。 図 25.4-5 外部領域 → 外部領域の転送 ICH On -Chip Bus RAM PeripheralBus MCH DMAC CPU Bus Bridge I/O Bus Bridge CPU Data Buffer I/O DMAC Data Buffer On -Chip Bus RAM PeripheralBus Local Bus Interface MCH Local Bus Interface ICH 図 25.4-6 外部領域 → 内部 RAM 領域の転送 ICH On -Chip Bus RAM PeripheralBus MCH DMAC Bus Bridge CPU Data Buffer I/O Bus Bridge I/O DMAC CPU Data Buffer On -Chip Bus RAM PeripheralBus Local Bus Interface MCH Lo cal Bus Interface ICH 図 25.4-7 外部領域 → 内部 IO 領域の転送 ICH PeripheralBus CM71-10147-2 On -Chip Bus RA M MCH DMAC Bus Bridge CPU Data Buffer I/O Bus Bridge I/O DMAC PeripheralBus FUJITSU SEMICONDUCTOR LIMITED CPU Data Buffer On -Chip Bus RAM Local Bus Interface MCH Local Bus Interface ICH 705 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 図 25.4-8 内部 RAM 領域 → 外部領域の転送 ICH I/O Bus Bridge CPU On -Chip Bus RAM PeripheralBus MCH DMAC CPU Bus Bridge Data Buffer I/O DMAC Data Buffer On -Chip Bus RAM PeripheralBus Local Bus Interface MCH Local Bus Interface ICH 図 25.4-9 内部 RAM 領域 → 内部 IO 領域の転送 ICH Bus Bridge I/O CPU On -Chip Bus RAM PeripheralBus MCH DMAC CPU Bus Bridge Data Buffer I/O DMAC Data Buffer On -Chip Bus RAM PeripheralBus Local Bus Interface MCH Local Bus Interface ICH 図 25.4-10 内部 IO 領域 → 内部 RAM 領域の転送 ICH PeripheralBus 706 On -Chip Bus RAM MCH DMAC CPU Bus Bridge Bus Bridge I/O CPU Data Buffer I/O DMAC PeripheralBus FUJITSU SEMICONDUCTOR LIMITED Data Buffer On -Chip Bus RAM Local Bus Interface MCH Local Bus Interface ICH CM71-10147-2 MB91605A シリーズ 第 25 章 DMA コントローラ (DMAC) 25.4 ■ 転送完了と割込み 転送正常終了と割込みについて説明します。 転送正常終了後の状態 転送が正常終了した場合 , DMA コントローラが停止状態へ遷移するため CCTR レジス タの ACT ビットが "0" になります。さらに , 以下に示す CSTR レジスタのフラグビッ トが変化します。 • BUSY ビット "0" になり , DMA コントローラのチャネルが停止状態へ遷移したこと示します。 • INT ビット "1" になり , 割込み要因 (DMA 転送の正常終了 ) が検出されたことを示します。 • NE ビット "1" になり , 設定された転送が正常に終了したことを示します。 割込み 転送が正常終了した場合 , CSTR レジスタの INT ビットが "1" になります。CCTR レジ スタの IE ビットによりチャネルの割込みを許可している場合 , DMA コントローラは 割込みコントローラに対して割込み要求を出力します。 割込み要求のクリアは , CSTR レジスタの INT ビットに "0" を書き込むことにより行い ます。 転送終了後の処理 転送が正常に終了し , 再び転送を行う前に必ず以下の処理をします。 • CSTR レジスタの INT ビットに "0" を書き込む ( 割込みフラグの初期化 ) • CSTR レジスタの NE ビットに "0" を書き込む ( 転送正常終了フラグの初期化 ) ■ 転送中断と割込み 転送動作の中断と割込みについて説明します。 転送動作の中断要因 DMA コントローラは , 以下の要因によって転送動作を中断します。 • チャネルモードが SCA モードまたは DCA モードにおける , アドレス一致検出の転 送停止機能による転送中断 CM71-10147-2 • オンチップバスのリードアクセス時における , エラー応答検出による転送中断 • オンチップバスのライトアクセス時における , エラー応答検出による転送中断 • 転送要求元からの転送停止要求による転送中断 • 起動中のチャネルに対する CCTR レジスタの ACT ビットのクリアによる強制停止 FUJITSU SEMICONDUCTOR LIMITED 707 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 転送動作の中断 各要因による転送動作の中断を説明します。 • チャネルモードが SCA モードまたは DCA モードにおける , アドレス一致検出の転 送停止機能による転送中断 チャネルモードが SCA/DCA モードの場合において , CCTR レジスタの ICE ビット を "1" に設定することにより , 任意のアドレスで転送を中断することが可能です。 DMA コントローラが転送を中断する際には , 転送するアドレスが SIX の値に一致 する箇所の転送を実行してから転送を中断しますので , CCTR レジスタの ACT ビッ トを "1" にセットすることで転送を継続することが可能です。 また , ソース側の転送サイズ (CCTR レジスタの SSIZ2 ∼ SSIZ0 ビット ) とデスティ ネーション側の転送サイズ (CCTR レジスタの DSIZ2 ∼ DSIZ0 ビット ) が異なる場 合には SIX の値は大きい方の転送サイズでアラインしなければなりません。その際 転送が中断される位置についてはソース側の転送サイズとデスティネーション側 の総転送サイズが一致するアドレスまで転送してから中断されます。 転送モードに SCA を設定した場合の例を図 25.4-11 に示します。 図 25.4-11 転送モードに SCA を設定した場合 ・SBA :00000000H ・DBA :10000000H ・PIX :00000000H ・SIX :00000008H ・BCL :00000100H 転送開始 4B read (00000000 H ) 2B write (10000000 H ) ・CCTR.SSIZ :4 バイト 2B write (10000000H ) ・CCTR.DSIZ :2 バイト 4B read (00000004 H ) 2B write (10000000 H ) 2B write (10000000 H ) Index Match 4B read (00000008 H ) 2B write (10000000 H ) 2B write (10000000 H ) マッチするアドレスに対する転送後,読出し総転送 量と同じだけ書き込んだ時点で停止します。 708 FUJITSU SEMICONDUCTOR LIMITED 転送中断 CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 転送モードに DCA を設定した場合の例を図 25.4-12 に示します。 図 25.4-12 転送モードに DCA を設定した場合 ・SBA :00000000H ・DBA :10000000H ・PIX :00000000H ・SIX :1000000CH ・BCL :00000100H 転送開始 4B read (00000000 H ) 2B write (10000000 H ) ・CCTR.SSIZ :4 バイト ・CCTR.DSIZ :2 バイト 2B write (10000002 H ) 4B read (00000000 H ) 2B write (10000004 H ) 2B write (10000006 H ) 4B read (00000000 H ) 2B write (10000008 H ) 2B write (1000000A H ) 4B read (00000000 H ) 2B write (1000000C H ) Index Match 2B write (1000000E H ) マッチするアドレスに対する転送後,すでに読み出されて いる総転送量と同じだけ書き込んだ時点で停止します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 転送中断 709 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 転送モードに SCA を設定した場合の例を図 25.4-13 に示します。 図 25.4-13 転送モードに SCA を設定した場合 ・SBA :00000000H ・DBA :10000000H ・PIX :00000000H ・SIX :00000004H ・BCL :00000100H ・CCTR.SSIZ :2 バイト 転送開始 2B read (00000000 H ) 2B read (00000002 H ) ・CCTR.DSIZ :4 バイト 4B write (10000000 H ) Index Match 2B read (00000004 H ) 2B read (00000006 H ) 4B write (10000000 H ) マッチするアドレスに対する転送後,書込みに 必要な転送量の読み出し後,読出し総転送量と 同じだけ書き込んだ時点で停止します。 710 FUJITSU SEMICONDUCTOR LIMITED 転送中断 CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 転送モードに DCA を設定した場合の例を図 25.4-14 に示します。 図 25.4-14 転送モードに DCA を設定した場合 ・SBA :00000000H ・DBA :10000000H ・PIX :00000000H ・SIX :1000000CH ・BCL :00000100H 転送開始 2B read (00000000 H ) 2B read (00000000 H ) ・CCTR.SSIZ :2 バイト ・CCTR.DSIZ :4 バイト 4B write (10000000 H ) 2B read (00000000 H ) 2B read (00000000 H ) 4B write (10000004 H ) 2B read (00000000 H ) 2B read (00000000 H ) 4B write (10000008 H ) 2B read (00000000 H ) 2B read (00000000 H ) Index Match 4B write (1000000C H ) マッチするアドレスに対する転送後,すでに読み出されて 転送中断 いる総転送量と同じだけ書き込んだ時点で停止します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 711 第 25 章 DMA コントローラ (DMAC) 25.4 • MB91605A シリーズ オンチップバスのリードアクセスおよびライトアクセス時における , エラー応答検 出による転送中断 エラーによって転送が中断した場合 , エラーを発生した箇所のデータは使用しない でください。エラーが発生した場合 , インデックスレジスタの更新は行いません。 従って , ベースアドレスとインデックスで示されるアドレスがエラーの発生した位 置を示しています。 エラーが発生した場合には , その転送を再開することができません。CCTR レジス タの FC ビットにより , FIFO クリアを行ってから新たに各レジスタを設定して転送 を行ってください。 • 転送要求元からの転送停止要求による転送中断 CCFR レジスタの RS3 ∼ RS0 ビットで設定した転送要求元から転送停止要求を検出 すると , すでに受け付けた転送要求に応じた転送を終えたところで転送を中断しま す。その状態で CCTR レジスタの ACT ビットに "1" が書き込まれると , DMA コン トローラは転送を再開します。一時中断や転送再開の際に , ACT ビットに "0" や "1" を書き込む場合には他の設定を変更しないように , リードモディファイライトでの 処理を行う必要があります。 • 起動中のチャネルに対する CCTR レジスタの ACT ビットをクリアによる強制停止 起動中のチャネルの CCTR レジスタの ACT ビットに "0" を書き込むと , すでに受け 付けた転送要求に応じた転送を終えたところで転送を中断します。その状態で ACT ビットに "1" が書き込まれると , DMA コントローラは転送を再開します。一時中断 や転送再開の際に , ACT ビットに "0" や "1" を書き込む場合には他の設定を変更し ないように , リードモディファイライトでの処理を行う必要があります。 転送中断後の状態 転送を中断した場合 , DMA コントローラが停止状態に遷移するため CCTR レジスタの ACT ビットが "0" になります。さらに , 転送動作の中断要因に関係なく , 表 25.4-1 に示 す CSTR レジスタのフラグビットが変化します。 表 25.4-1 転送動作の中断要因に関係なく変化する CSTR レジスタのフラグビット ビット BUSY INT 712 変化 "0" になり , DMA コントローラのチャネル が停止状態へ遷移したこと示します。 "1" になり , 割込み要因 (DMA 転送の中断 ) が検出されたことを示します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ また , 転送動作の中断要因によって , 表 25.4-2 に示す CSTR レジスタのフラグビットが 変化します。 表 25.4-2 転送動作の中断要因によって変化する CSTR レジスタのフラグビット ビット CE 変化 チャネルモードが SCA モードまたは DCA モードにおいて , アドレスの 一致による転送停止機能で転送動作を中断した場合 , "1" になります。そ れ以外では , 変化しません。 RER オンチップバスのリードアクセス時にエラー応答を検出して転送動作 を中断した場合 , "1" になります。それ以外では , 変化しません。 WER オンチップバスのライトアクセス時にエラー応答を検出して転送動作 を中断した場合 , "1" になります。それ以外では , 変化しません。 STP 転送要求元から転送停止要求により転送動作を中断した場合 , "1" にな ります。それ以外では , 変化しません。 FED 起動中のチャネルに対して CCTR レジスタの ACT ビットへ "0" を書込 み , 強制的に動作を停止させた場合 , "1" になります。それ以外では , 変 化しません。 割込み 転送が中断した場合 , CSTR レジスタの INT ビットが "1" になります。CCTR レジスタ の IE ビットによりチャネルの割込みを許可している場合 , DMA コントローラは割込 みコントローラに対して割込み要求を出力します。 割込み要求のクリアは , INT ビットに "0" を書き込むことにより行います。 転送中断時の処理 転送が中断した後 , 再び転送を行う前に必ず以下の処理をします。 • • CSTR レジスタの INT ビットに "0" を書き込む ( 割込みフラグの初期化 ) CSTR レジスタの CE ビット /RER ビット /WER ビット /STP ビット /FED ビットに "0" を書き込む ( 転送中断要因フラグの初期化 ) 転送中断により未転送となったデータの処理方法 転送要求元からの転送停止要求による転送中断 , または , 起動中のチャネルに対する CCTR レジスタの ACT ビットをクリアによる強制停止では , DMA コントローラのデー タバッファに書込みが完了していないデータが残る場合があります。そのような状態 は , CSTR レジスタの BUSY ビットが "0" のときに CSTR レジスタの FS6 ∼ FS0 を読み 出し , 表 25.4-3, 表 25.4-4 から確認することができます。 表 25.4-3 転送中断により未転送となったデータの処理方法 (1/2) 状態 SSIZ = DSIZ FS = 0 未転送データ なし 書込み後に有効な IX データ長 CM71-10147-2 FS != 0 SSIZ < DSIZ FS = 0 あり なし IX + SSIZ IX FS != 0 and FS[6] = 0 FS != 0 and FS[6] = 1 あり IX + FS FUJITSU SEMICONDUCTOR LIMITED あり BCL 713 第 25 章 DMA コントローラ (DMAC) 25.4 MB91605A シリーズ 表 25.4-4 転送中断により未転送となったデータの処理方法 (2/2) SSIZ > DSIZ 状態 FS = SSIZ FS != SSIZ FS != SSIZ or and and (IX = 0 and FS != 0) (BCL % SSIZ <= BCL -IX ) (BCL % SSIZ > BCL - IX ) and and not(IX = 0 and FS != 0 ) not(IX = 0 and FS != 0 ) 未転送データ なし 書込み後に有効な IX データ長 あり IX + SSIZ - FS あり BCL また , DMA コントローラのデータバッファに未転送データが残っている場合に , その データをデスティネーション側へ書き込むことが可能です。それには他の設定を変え ずに , CCTR レジスタの ACT ビットと FC ビットを同時に "1" に遷移させます。この場 合 , CCTR レジスタの DSIZ2 ∼ DSIZ0 で示される転送サイズで転送が行われ , DBA か ら始まる以下の表に示される長さのデータが有効となります。また , IX の値はモード によって異なり , DA モードでは書込み動作を行う前の SIX 値が , SCA/DCA/2D モード では書込み動作を行う前の PIX 値 となります。 モード IX の値 DA 書込み前の SIX 値 SCA 書込み前の PIX 値 DCA 書込み前の PIX 値 2D 書込み前の PIX 値 ■ 割込み発生時の DMA 転送抑止 割込み発生時の DMA 転送を抑止する機能の動作を説明します。 DMA 転送抑止の目的 リアルタイム性が重要視されるアプリケーションでは,割込み応答が重要なファクタで す。 DMA 転送時では , CPU よりバス権付与のプライオリティが高い DMA コントローラが バス権を持ちます。DMA 転送を行っている場合 , オンチップバスシステムは DMA コ ントローラが行うバスアクセスの合間にのみ CPU へバス権を付与します。そのため DMA 転送時に割込みが発生すると , 以下のような現象が生じます。 • 即座に CPU へバス権が付与されない • DMA コントローラのバスアクセスの合間に CPU が割込みハンドラを実行する その結果 , 割込みの応答および処理が大幅に低下します。この現象を防止する目的で , 割込み発生時は DMA 転送を抑止する機能が必要となります。 DMA 転送抑止レベルと割込みレベルの関係 DILVR レジスタの LVL4 ∼ LVL0 で設定した DMA 転送抑止レベルと発生した割込み のレベルの関係により , 割込み発生時に CPU コアは次のように動作します。 714 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ • 第 25 章 DMA コントローラ (DMAC) 25.4 発生した割込みレベル > DILVR レジスタに設定したレベル DMA 転送は抑止され , CPU の割込みハンドラを優先的に実行します。 • 発生した割込みレベル ≦ DILVR レジスタに設定したレベル DMA 転送は抑止されません。DMA 転送を優先的に実行します。 割込みハンドラでの処理 割込みによる DMA 転送抑止機能に関連して , 割込みハンドラでは次のようなフローで 処理を行ってください。 • ユーザ NMI 以外による割込み 1. 割込みハンドラの本処理 2. 割込みフラグのクリア 3. RETI 命令実行による割込みハンドラからの復帰 • ユーザ NMI による割込み 1. 割込みハンドラの本処理 2. DNMIR レジスタの NMIH ビットのクリア 3. RETI 命令実行による割込みハンドラからの復帰 上記の 2 つのフローの 2 以降において , RETI 命令実行前に DMA 転送が再開されるこ とがあります。この現象が発生するのは , 以下に示す場合です。 フローの 2 の直後の割込みレベルが DMA 転送抑止レベル以下の場合 エミュレータモード時の DMA 転送抑止 エミュレータモードでは , DMA 転送抑止レベルの設定に関係なく DMA 転送は抑止さ れます。ICE 接続時では , DSU の DMA 転送抑止機能 (ECTL3 レジスタの DMST ビッ ト)によりエミュレーション状態からトレース状態へ移行するRETI命令実行中もDMA 転送を抑止できます。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 715 第 25 章 DMA コントローラ (DMAC) 25.5 MB91605A シリーズ 25.5 制御フロー DMA コントローラの制御フローを示します。 図 25.5-1 DMA コントローラの制御フロー START 送信データの準備 送信データの準備 , あるいは 受信データの処理 SIX の 再設定 GCFR,CCFR,CSTR,CCTR, SBA,DBA,PIX,SIX,AP,DMAR を設定 転送開始を指示 Read modify write で CCTR レジスタの ACT に 1 を設定 受信データの処理 ( 周辺または外部端子による 転送要求モードでは , 上記設 定の後に転送要求を入力 ) Read modify write で CCTR レジスタの ACT に 0 割込み、あるいは CSTR レジスタの を設定 BUSY の polling による完了待ち または転送停止要求を 入力 Error end ? (CSTR.WER==1 or CSTR.RER==1) Yes FIFO clear CCTR.FC <= 1 転送停止を指示 No Normal end ? (CSTR.NE==1) Yes No Yes Yes Force/Stop end ? (CSTR.FED==1 or CSTR.STP==1) 転送を継続? No No Yes SSIZ < DSIZ で , デスティネーションが メモリ? Yes Compare end ? (CSTR.CE==1) No FIFO 書出し CCTR.FC <= 1, CTR.ACT <= 1 No Yes 転送を継続? No 716 FUJITSU SEMICONDUCTOR LIMITED FIFO clear CCTR.FC <= 1 受信データの処理 CM71-10147-2 第 25 章 DMA コントローラ (DMAC) 25.6 MB91605A シリーズ 25.6 使用上の注意 DMA コントローラを使用する際は , 次の点に注意してください。 DMA 転送の転送起動要因に対応していない周辺機能の割込みを転送起動要因として 設定した場合の動作 DMA転送の転送起動要因に対応していない周辺機能の割込み (DMAコントローラの割 込み , 遅延割込み , など ) を ICH の IORR レジスタで転送起動要因として設定した場合 , 割込み発生により以下のように動作します。 1. 転送起動要求と転送停止要求がアクティブになります。 2. DMA コントローラのチャネルは , 転送起動要求により転送を起動します。同時 に転送停止要求により転送を停止するため,チャネルは転送を行わずに停止しま す。 3. DMA コントローラのチャネルは , ストップエンデッドとなります。 DMA 転送の転送禁止領域について 本品種では , 以下に挙げる領域は DMA 転送を行えません。 CM71-10147-2 • 予約領域 00000800H ∼ 000008FFH • 予約領域 00000B00H ∼ 00000BFFH • キャッシュ領域 00000300H ∼ 000003FFH • データキャッシュ RAM 領域 00008000H ∼ 00009FFFH • データキャッシュ RAM ミラー領域 0000A000H ∼ 0000FFFFH FUJITSU SEMICONDUCTOR LIMITED 717 第 25 章 DMA コントローラ (DMAC) 25.6 MB91605A シリーズ 図 25.6-1 DMA 転送の転送禁止領域 0000 0000H オンチップバス (I/O) 0000 0300H 0000 0400H キャッシュ オンチップバス (I/O) 0000 0800H 0000 0900H 予約領域 オンチップバス (I/O) 0000 0B00H 0000 0C00H 予約領域 オンチップバス (I/O) 0000 8000H D$ RAM(8K バイト ) 0000 A000H D$ RAM ミラー 0001 0000H オンチップバス (I/O) DMA 転送禁止領域 FFFF FFFFH 718 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 26 章 周辺機能による DMA 転送要求の 発生 / クリア選択 機能 周辺機能の割込み要求を利用して DMA 転送要求を 発生させる方法と , DMA コントローラ (DMAC) ) か ら周辺機能の割込み要求フラグをクリアする方法 を説明します。 26.1 概要 26.2 構成 26.3 レジスタ 26.4 動作説明と設定手順例 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 719 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.1 MB91605A シリーズ 26.1 概要 本製品では , 周辺機能の割込み要求を利用して DMA 転送を起動することができます。 DMA 転送を起動する割込み要求を選択するレジスタが DMA コントローラ (DMAC) のチャネ ルごとに用意されています。 1つの割込みベクタ番号に複数の割込み要求が割り当てられていた場合に, どの割込み要求フ ラグを DMA コントローラ (DMAC) でクリアするのかも設定する必要があります。 ■ 周辺機能による DMA 転送要求発生についての概要 DMA コントローラ (DMAC) のレジスタで DMA 転送要求の発生要因 ( 転送要求元 ) を 周辺機能の割込み要求に設定できます。 割込みベクタ番号に対応する値を指定して , 使用する割込み要求を選択します。 ■ 周辺機能による DMA 転送要求クリア選択機能の概要 • 割込み要求の選択 DMA 転送要求の発生要因 ( 転送要求元 ) を周辺機能の割込み要求にすると , その割 込み要求フラグは DMA 転送後に DMA コントローラ (DMAC) によってクリアされ ます。 そのため , DMA 転送要求の発生要因 ( 転送要求元 ) として選択した割込みベクタ番 号に複数の割込み要求が割り当てられていると , DMA 転送の終了後 , DMA コント ローラ (DMAC) がクリアする割込み要求フラグを選択する必要があります。 720 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.2 26.2 構成 周辺機能による DMA 転送要求発生部および DMA 転送要求のクリア選択機能の構成について 説明します。 ■ 周辺機能による DMA 転送要求発生部のブロックダイヤグラム 周辺機能の割込み要求を DMA 転送の転送要求元として使用する部分のブロックダイ ヤグラムを図 26.2-1 に示します。 図 26.2-1 周辺機能割込み要求利用時のブロックダイヤグラム DMAC ch.0 IORR IOS5 ∼ IOS0 IOE ch.1 ch.2 ch.3 周辺機能での 割込み要求 セ レ ク タ ch.0 転送要求 ch.1 転送要求 ch.2 転送要求 ch.3 転送要求 DMA 転送要求による ウェイクアップ CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 721 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.2 MB91605A シリーズ ■ DMA 転送要求のクリア選択機能のブロックダイヤグラム DMA 転送要求のクリア選択機能のブロックダイヤグラムを図 26.2-2 に示します。 図 26.2-2 DMA 転送要求のクリア選択機能のブロックダイヤグラム DMA コントローラ (DMAC) から DMA 転送要求クリア 内 部 バ ス 16 ビット 周辺機能による DMA転送要求の クリア選択レジスタ (ICSEL0 ∼ ICSEL3) デコーダ デコーダ 各周辺機能へ DMA 転送要求をクリア • 周辺機能による DMA 転送要求のクリア選択レジスタ (ICSEL0 ∼ ICSEL3) DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択するレ ジスタです。 722 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 26.3 レジスタ DMA転送要求の発生/クリア選択機能で使用するレジスタの構成と機能について説明します。 ■ 周辺機能による DMA 転送要求発生部のレジスタ一覧 DMA 転送要求発生部のレジスタ一覧を表 26.3-1 に示します。 表 26.3-1 周辺機能による DMA 転送要求発生部のレジスタ一覧 DMAC のチャネル CM71-10147-2 レジスタ略称 レジスタ名 参照先 0 IORR0 IO 転送要求設定レジスタ 0 26.3.1 1 IORR1 IO 転送要求設定レジスタ 1 26.3.1 2 IORR2 IO 転送要求設定レジスタ 2 26.3.1 3 IORR3 IO 転送要求設定レジスタ 3 26.3.1 FUJITSU SEMICONDUCTOR LIMITED 723 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 MB91605A シリーズ ■ DMA 転送要求のクリア選択機能のレジスタ一覧 DMA 転送要求のクリア選択機能のレジスタ一覧を表 26.3-2 に示します。 表 26.3-2 DMA 転送要求のクリア選択機能のレジスタ一覧 チャネル 共通 724 レジスタ略称 ICSEL0 レジスタ名 周辺機能による DMA 転送要求のクリア選択レジスタ 0 参照先 26.3.2 ICSEL1 周辺機能による DMA 転送要求のクリア選択レジスタ 1 26.3.3 ICSEL2 周辺機能による DMA 転送要求のクリア選択レジスタ 2 26.3.4 ICSEL3 周辺機能による DMA 転送要求のクリア選択レジスタ 3 26.3.5 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 IO 転送要求設定レジスタ (IORR0 ∼ IORR3) 26.3.1 DMA 転送要求の発生要因を周辺機能の割込み要求に設定したときに , どの周辺機能の割込み 要求を DMA 転送要求の発生要因にするかを設定するレジスタです。 DMA コントローラ (DMAC) のチャネルごとに , このレジスタが用意されています。 IO 転送要求設定レジスタ (IORR0 ∼ IORR3) のビット構成を図 26.3-1 に示します。 図 26.3-1 IO 転送要求設定レジスタ (IORR0 ∼ IORR3) のビット構成 bit 属性 7 6 5 4 3 2 1 0 予約 R/W IOE IOS5 IOS4 IOS3 IOS2 IOS1 IOS0 R/W R/W R/W R/W R/W R/W R/W 0 0 0 0 0 0 0 0 初期値 R/W:リード / ライト可能 < 注意事項 > このレジスタは , チャネルコンフィギュレーションレジスタ (CCFR0 ∼ CCFR3) の RS3 ∼ RS0 ビットで IORR レジスタで設定(RS3 ∼ RS0=0001)したときに有効になります。 [bit7]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit6]:IOE ( 転送要求許可ビット ) IOS5∼IOS0ビットで指定した割込み要求が発生したときに, 対応するチャネルのDMA コントローラ (DMAC) に , DMA 転送要求を出力するかどうかを設定します。 書込み値 説明 0 DMA 転送要求を出力しません。 ( 周辺機能で発生した割込み要求を DMA 転送要求として使用しません ) 1 DMA 転送要求を出力します。 ( 周辺機能で発生した割込み要求を DMA 転送要求として使用します ) [bit5 ∼ bit0]:IOS5 ∼ IOS0 ( 転送要求選択ビット ) このレジスタに対応するチャネルのDMAコントローラ (DMAC) が, どの周辺機能で発 生した割込み要求を転送要求元として使用するか設定します。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 725 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 IOS5 ∼ IOS0 726 割込みベクタ 番号 MB91605A シリーズ 周辺機能 10 進 16 進 000000 16 10 外部割込み要求 ch.0 000001 17 11 外部割込み要求 ch.1 000010 18 12 外部割込み要求 ch.2 000011 19 13 外部割込み要求 ch.3 000100 20 14 外部割込み要求 ch.4 000101 21 15 外部割込み要求 ch.5 000110 22 16 外部割込み要求 ch.6 000111 23 17 外部割込み要求 ch.7 001000 24 18 16 ビットリロードタイマ ch.0 001001 25 19 16 ビットリロードタイマ ch.1 001010 26 1A 16 ビットリロードタイマ ch.2 001011 27 1B マルチファンクションシリアルインタフェース ch.0 RX 001100 28 1C マルチファンクションシリアルインタフェース ch.0 TX 001101 29 1D − 001110 30 1E マルチファンクションシリアルインタフェース ch.1 RX 001111 31 1F マルチファンクションシリアルインタフェース ch.1 TX 010000 32 20 − 010001 33 21 マルチファンクションシリアルインタフェース ch.2 RX 010010 34 22 マルチファンクションシリアルインタフェース ch.2 TX 010011 35 23 − 010100 36 24 マルチファンクションシリアルインタフェース ch.3 RX/TX 010101 37 25 マルチファンクションシリアルインタフェース ch.4 RX/TX 010110 38 26 マルチファンクションシリアルインタフェース ch.5 RX/TX 010111 39 27 A/D コンバータ 011000 40 28 − 011001 41 29 外部割込み要求 ch.8 ∼ ch.15 011010 42 2A 外部割込み要求 ch.16 ∼ ch.23 011011 43 2B マルチファンクションシリアルインタフェース ch.6 RX/TX 011100 44 2C マルチファンクションシリアルインタフェース ch.7 RX/TX 011101 45 2D マルチファンクションシリアルインタフェース ch.8 RX/TX 011110 46 2E マルチファンクションシリアルインタフェース ch.9 RX/TX 011111 47 2F マルチファンクションシリアルインタフェース ch.10 RX/TX 100000 48 30 マルチファンクションシリアルインタフェース ch.11 RX/TX 100001 49 31 ベースタイマ ch.0 IRQ0/IRQ1 100010 50 32 ベースタイマ ch.1 IRQ0/IRQ1 100011 51 33 ベースタイマ ch.2 IRQ0/IRQ1 100100 52 34 ベースタイマ ch.3 IRQ0/IRQ1 100101 53 35 ベースタイマ ch.4 IRQ0/IRQ1 100110 54 36 ベースタイマ ch.5 IRQ0/IRQ1 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ IOS5 ∼ IOS0 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 割込みベクタ 番号 周辺機能 10 進 16 進 100111 55 37 ベースタイマ ch.6 IRQ0/IRQ1 101000 56 38 ベースタイマ ch.7 IRQ0/IRQ1 101001 57 39 ベースタイマ ch.8/ch.9/ch.10/ch.11 IRQ0/IRQ1 101010 58 3A − 101011 59 3B − 101100 60 3C − 101101 61 3D − 101110 62 3E − 101111 63 3F − < 注意事項 > • 1 つの割込みベクタ番号を複数の割込み要求で兼用している場合 , DMA 転送の転送要 求元として使用できる割込み要求は 1 つだけです。 DMA 転送の転送要求元にしない割込み要求の発生は禁止してください。 • 1 つの割込みベクタ番号を複数の割込み要求で兼用している場合 , 周辺機能による DMA 転送要求のクリア選択レジスタ (ICSEL0∼ICSEL3) でフラグビットをクリアする割込 み要求を設定してください。 • このレジスタで選択する割込み要求は , 割込みレベルマスクレジスタ (ILM) と割込み コントロールレジスタ (ICR00 ∼ ICR47) の値が次のようになるよう , 割込みレベルを 設定してください。 ILM ≦ ICR CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 727 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 MB91605A シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) 26.3.2 割込みベクタ番号 41 (10 進 ) には , 外部割込み要求 ch.8 ∼ ch.15 が割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) のビット構成を図 26.3-2 に示します。 図 26.3-2 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W EISEL12 EISEL11 EISEL10 R/W R/W R/W 0 0 0 0 0 0 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit3]:予約ビット 728 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 [bit2 ∼ bit0]:EISEL12 ∼ EISEL10 ( 割込み要求選択ビット ) 割込みベクタ番号 41 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でクリアするフラグビットを選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 41 (10 進 ) に対して , 割込み要求クリ ア信号を出力すると , ここで選択したビットがクリアされます。 CM71-10147-2 EISEL12 EISEL11 EISEL10 説明 0 0 0 外部割込み ch.8 0 0 1 外部割込み ch.9 0 1 0 外部割込み ch.10 0 1 1 外部割込み ch.11 1 0 0 外部割込み ch.12 1 0 1 外部割込み ch.13 1 1 0 外部割込み ch.14 1 1 1 外部割込み ch.15 FUJITSU SEMICONDUCTOR LIMITED 729 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 MB91605A シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 1 (ICSEL1) 26.3.3 割込みベクタ番号 42 (10 進 ) には , 外部割込み要求 ch.16 ∼ ch.23 が割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 1 (ICSEL1) のビット構成を図 26.3-3 に示します。 図 26.3-3 周辺機能による DMA 転送要求のクリア選択レジスタ 1 (ICSEL1) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W EISEL22 EISEL21 EISEL20 R/W R/W R/W 0 0 0 0 0 0 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit3]:予約ビット 730 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 [bit2 ∼ bit0]:EISEL22 ∼ EISEL20 ( 割込み要求選択ビット ) 割込みベクタ番号 42(10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 42(10 進 ) に対して , 割込み要求クリ ア信号を出力すると , ここで選択したビットがクリアされます。 CM71-10147-2 EISEL22 EISEL21 EISEL20 説明 0 0 0 外部割込み ch.16 0 0 1 外部割込み ch.17 0 1 0 外部割込み ch.18 0 1 1 外部割込み ch.19 1 0 0 外部割込み ch.20 1 0 1 外部割込み ch.21 1 1 0 外部割込み ch.22 1 1 1 外部割込み ch.23 FUJITSU SEMICONDUCTOR LIMITED 731 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 MB91605A シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) 26.3.4 割込みベクタ番号 49 ∼ 56 (10 進 ) には , それぞれベースタイマ ch.0 ∼ ch.7 の割込み要求が 割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) のビット構成を図 26.3-4 に示します。 図 26.3-4 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) のビット構成 bit 7 6 5 4 3 2 1 0 BTSEL07 BTSEL06 BTSEL05 BTSEL04 BTSEL03 BTSEL02 BTSEL01 BTSEL00 属性 初期値 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:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 732 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 [bit7 ∼ bit0]:BTSEL07 ∼ BTSEL00 ( 割込み要求選択ビット ) 割込みベクタ番号 49 ∼ 56 (10 進 ) に割り当てられた割込み要求の中から DMA コント ローラ (DMAC) でフラグビットをクリアする割込み要求を , 割込み要求 0 と割込み要求 1 の中から選択します。 割込み要求 0 および割込み要求 1 に割り当てられている割込み要求は , ベースタイマの 使用方法によって異なります。 割込み要求 0 割込み要求 1 アンダフロー割込み要求 トリガ割込み要求 アンダフロー割込み要求 デューティ一致割込み要求 トリガ割込み要求 16/32 ビット PWC タイマ オーバフロー割込み要求 測定終了割込み要求 16 ビット PPG タイマ アンダフロー割込み要求 トリガ割込み要求 ベースタイマの使用方法 16/32 ビットリロードタイマ 16 ビット PWM タイマ DMA コントローラ (DMAC) が割込みベクタ番号 49 ∼ 56 (10 進 ) に対して , 割込み要 求クリア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリア されます。 CM71-10147-2 ビット名 割込みベクタ 番号 (10 進 ) BTSEL07 56 BTSEL06 55 BTSEL05 54 BTSEL04 53 BTSEL03 52 BTSEL02 51 BTSEL01 50 BTSEL00 49 書込み値 説明 0 ベースタイマ ch.7 の割込み要求 0 1 ベースタイマ ch.7 の割込み要求 1 0 ベースタイマ ch.6 の割込み要求 0 1 ベースタイマ ch.6 の割込み要求 1 0 ベースタイマ ch.5 の割込み要求 0 1 ベースタイマ ch.5 の割込み要求 1 0 ベースタイマ ch.4 の割込み要求 0 1 ベースタイマ ch.4 の割込み要求 1 0 ベースタイマ ch.3 の割込み要求 0 1 ベースタイマ ch.3 の割込み要求 1 0 ベースタイマ ch.2 の割込み要求 0 1 ベースタイマ ch.2 の割込み要求 1 0 ベースタイマ ch.1 の割込み要求 0 1 ベースタイマ ch.1 の割込み要求 1 0 ベースタイマ ch.0 の割込み要求 0 1 ベースタイマ ch.0 の割込み要求 1 FUJITSU SEMICONDUCTOR LIMITED 733 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 MB91605A シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 3 (ICSEL3) 26.3.5 割込みベクタ番号 57 (10 進 ) には , ベースタイマ ch.8 ∼ ch.11 の割込み要求が割り当てられ ています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 3 (ICSEL3) のビット構成を図 26.3-5 に示します。 図 26.3-5 周辺機能による DMA 転送要求のクリア選択レジスタ 3 (ICSEL3) のビット構成 bit 属性 初期値 7 6 5 4 3 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 0 2 1 0 BTSEL12 BTSEL11 BTSEL10 R/W R/W R/W 0 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit3]:予約ビット 734 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.3 [bit2 ∼ bit0]:BTSEL12 ∼ BTSEL10 ( 割込み要求選択ビット ) 割込みベクタ番号 57 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を , 割込み要求 0 と割込み要求 1 の中か ら選択します。 割込み要求 0 および割込み要求 1 に割り当てられている割込み要求は , ベースタイマの 使用方法によって異なります。 割込み要求 0 割込み要求 1 アンダフロー割込み要求 トリガ割込み要求 アンダフロー割込み要求 デューティ一致割込み要求 トリガ割込み要求 16/32 ビット PWC タイマ オーバフロー割込み要求 測定終了割込み要求 16 ビット PPG タイマ アンダフロー割込み要求 トリガ割込み要求 ベースタイマの使用方法 16/32 ビットリロードタイマ 16 ビット PWM タイマ DMA コントローラ (DMAC) が割込みベクタ番号 57 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 CM71-10147-2 BTSEL12 BTSEL11 BTSEL10 説明 0 0 0 ベースタイマ ch.8 の割込み要求 0 0 0 1 ベースタイマ ch.8 の割込み要求 1 0 1 0 ベースタイマ ch.9 の割込み要求 0 0 1 1 ベースタイマ ch.9 の割込み要求 1 1 0 0 ベースタイマ ch.10 の割込み要求 0 1 0 1 ベースタイマ ch.10 の割込み要求 1 1 1 0 ベースタイマ ch.11 の割込み要求 0 1 1 1 ベースタイマ ch.11 の割込み要求 1 FUJITSU SEMICONDUCTOR LIMITED 735 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.4 MB91605A シリーズ 26.4 動作説明と設定手順例 周辺機能の割込み要求で DMA 転送を起動する場合の動作と設定手順について説明します。 DMA 転送時の動作 26.4.1 ■ 設定 DMA 転送の転送要求元を周辺機能の割込み要求にする場合は , 割込みベクタ番号の選 択や , 各周辺機能での設定も必要です。 設定する順番は次のようになります。 1. 割込みベクタ番号の選択 (IO 転送要求設定レジスタ (IORR0 ∼ IORR3) ) - IOS5 ∼ IOS0 ビットに割込みベクタ番号に対応した値を書き込む - IOE ビットで周辺機能の割込み要求による DMA 転送の開始を許可する (IOE=1) 2. DMA コントローラ (DMAC) でクリアする割込み要求を選択 ( 周辺回路による DMA 転送要求のクリア選択レジスタ (ICSEL0 ∼ ICSEL3) ) 3. DMA コントローラ (DMAC) の設定 詳しくは , 「第 25 章 DMA コントローラ (DMAC)」を参照してください。 - DMA 転送の転送要求元を周辺機能の割込み要求に設定 - DMA 転送の動作を許可して , 転送要求待ち状態に設定 4. 周辺機能の設定 使用する周辺機能の章を参照してください。 - DMA 転送に使用する割込み要求のフラグをクリア - DMA 転送に使用する割込み要求の発生を許可 < 注意事項 > • 周辺機能の割込み要求フラグは DMA コントローラ (DMAC) によってクリアされるた め , 周辺機能の割込み要求としては使用できません。 DMA 転送の転送要求元として使用する割込み要求は , 割込みレベルを "31" ( 割込み禁 止 ) にしてください。 割込みレベルの設定方法については , 「第 12 章 割込みコントローラ」を参照してく ださい。 • 736 周辺機能の設定をする際は, 割込み要求フラグをクリアしてから, 割込み要求の発生を 許可してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.4 ■ 動作 次のように動作します。 1. 周辺機能を起動 2. 周辺機能で DMA 転送要求元になる割込み要求が発生 3. DMA 転送要求が発生し , DMA コントローラ (DMAC) が起動 4. DMA 転送終了 周辺機能の割込み要求フラグが DMA コントローラ (DMAC) によってクリアされま す。 < 注意事項 > 割込み要求が発生した時点での割込みレベルマスクレジスタ (ILM) と割込みコントロー ルレジスタ (ICR00 ∼ ICR47) の値が次のようになるよう , 割込みレベルを設定してくだ さい。 ILM ≦ ICR 割込みレベルマスクレジスタ (ILM) の値が割込みコントロールレジスタ (ICR00 ∼ICR47) の値より大きいと , 周辺機能の割込み要求発生動作が成立し , DMA 転送要求も発生できま すが , 割込み要求処理動作が不安定になります。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 737 第 26 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 26.4 738 MB91605A シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 HDMI-CEC 受信・ACK 自動応答 , リモコン受信の機 能と動作について説明します。 27.1 概要 27.2 レジスタ 27.3 動作説明と設定手順例 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 739 第 27 章 リモコン受信 27.1 MB91605A シリーズ 27.1 概要 本製品には , HDMI-CEC 受信・ACK 自動応答 , リモコン受信の機能が搭載されています。 ■ リモコン受信のブロックダイヤグラム 図 27.1-1 リモコン受信のブロックダイヤグラム カウント オーバフロー カウンタ クロック High 幅設定レジス スタートビット検 RCIN ノイズ エッジ フィルタ 検出 ラッチ Comp "1" 検出 立上り / 立下り "0" 検出 ※ ACK データ格納レジスタ エンディアン シフタ 変換 ※擬似オープンドレイン 740 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 27.2 MB91605A シリーズ 27.2 レジスタ リモコン受信で使用するレジスタの構成と機能について説明します。 ■ レジスタ一覧 リモコン受信のレジスタ一覧を表 27.2-1 に示します。 表 27.2-1 リモコン受信のレジスタ一覧 レジスタ略称 RCCR レジスタ名 リモコン受信制御レジスタ 参照先 27.2.1 RCST リモコン受信割込み制御レジスタ 27.2.2 RCSHW スタートビット High 幅設定レジスタ 27.2.4 RCDAHW High 幅設定レジスタ A 27.2.5 RCDBHW High 幅設定レジスタ B 27.2.6 RCADR1 デバイスアドレス設定レジスタ 1 27.2.3 RCADR2 デバイスアドレス設定レジスタ 2 27.2.3 RCDTHH データ格納レジスタ HH 27.2.7 RCDTHL データ格納レジスタ HL 27.2.7 RCDTLH データ格納レジスタ LH 27.2.7 RCDTLL データ格納レジスタ LL 27.2.7 RCCKD クロック分周レジスタ 27.2.8 リモコン受信制御レジスタ (RCCR) 27.2.1 リモコン受信制御レジスタ (RCCR) のビット構成を図 27.2-1 に示します。 図 27.2-1 リモコン受信制御レジスタ (RCCR) のビット構成 bit 7 THSEL 6 予約 5 予約 4 3 2 1 0 予約 ADRCE MOD1 MOD0 EN 0 0 0 R/W 属性 0 初期値 − − − 0 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 8 ビットアクセスのみ可能です。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 741 第 27 章 リモコン受信 27.2 MB91605A シリーズ [bit 7]:THSEL 閾値選択ビットです。 初期値は "0" です。 High 幅設定レジスタ A/B によって "0", "1" を判定する基準を設定します。 THSEL 状態 0 1 W>幅A W<幅B Logic "0" Logic "1" W>幅A W≧幅B Logic "1" Logic "0" [bit 6 ∼ bit 4]:予約ビット 書込み時 無効です。 読出し時 "0" が読み出されます。 [bit 3]:ADRCE アドレス比較許可ビットです。 初期値は "0"( 比較禁止 ) で , "1" にすると受信アドレスとデバイスアドレスの比較が許 可されます。 比較許可の場合 , アドレスが一致したときのみ ACK/OVF 割込みが発生します。 CEC モードの場合 , アドレス一致を検出すると ACK 応答を返します。ブロードキャス トアドレスの場合は一致とみなしますが , ACK 応答は行いません。 SIRCS モード・HDMI-CEC モード以外のときは "0" に設定してください。 [bit 2, bit 1]:MOD1, MOD0 リモコン受信の動作モードを設定します。 MOD1 MOD0 機能 0 0 SIRCS モード 0 1 設定禁止 1 0 NEC/ 家電協モード ( リピート信号未対応 ) 1 1 HDMI-CEC モード SIRCS モード以外 (MOD1=1 のとき ) は , 入力信号を内部で反転して処理しています。 High 幅比較は Low 幅に対して適用されます。 [bit 0]:EN 動作許可ビットです。 本ビットを "1" にすると , リモコン受信動作が開始されます。 初期値は "0"( 停止 ) です。 本ビットが"1"のとき(動作中)は,下記の設定レジスタ・ビットは変更しないでください。 RCCR レジスタの THSEL ビット , ADRCE ビット , MOD ビット RCST レジスタの OVFSEL ビット RCSHW, RCDAHW, RCDBHW, RCADR1, RCADR2, RCCKD レジスタ 742 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 27.2 MB91605A シリーズ リモコン受信割込み制御レジスタ (RCST) 27.2.2 リモコン受信割込み制御レジスタ (RCST) のビット構成を図 27.2-2 に示します。 図 27.2-2 リモコン受信割込み制御レジスタ (RCST) のビット構成 bit 7 6 5 4 3 2 1 0 STIE ACKIE OVFIE OVFSEL ST ACK EOM OVF R/W 属性 0 初期値 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 8 ビットアクセスのみ可能です。 [bit 7]:STIE スタートビット割込みを許可するビットです。 値 説明 0 割込み禁止 1 割込み許可 [bit 6]:ACKIE ACK 割込みを許可するビットです。 値 説明 0 割込み禁止 1 割込み許可 CEC モードのみ有効です。 [bit 5]:OVFIE カウンタオーバーフロー割込みを許可するビットです。 値 説明 0 割込み禁止 1 割込み許可 本割込みは , スタートビットが検出された後にオーバーフローが発生した場合のみ発 生します。 スタートビット未検出の状態では割込みは発生しません。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 743 第 27 章 リモコン受信 27.2 MB91605A シリーズ [bit 4]:OVFSEL オーバーフロー検出の条件を設定するビットです。 値 説明 0 カウンタが 128 クロックカウントするとオーバーフローが発生します。 1 カウンタが 256 クロックカウントするとオーバーフローが発生します。 [bit 3]:ST スタートビット検出を示すビットです。 値 説明 0 スタートビット未検出 1 スタートビット検出 "0" 書込みでクリアされます。 STIE ビットが "1" のとき , スタートビットを検出すると割込みが発生します。 [bit 2]:ACK ACK 検出を示すビットです。 値 説明 0 ACK 未検出 1 ACK 検出 "0" 書込みでクリアされます。 ACKIE ビットが "1" のとき , ACK を検出すると割込みが発生します。 アドレス比較許可の場合は , アドレス一致した場合のみ割込みが発生します。 CEC モードのみ有効です。 [bit 1]:EOM EOM 検出を示すビットです。 値 説明 0 EOM 未検出 1 EOM 検出 "0" 書込みでクリアされます。 CEC モードのみ有効です。 [bit 0]:OVF カウンタオーバーフローの検出を示すビットです。 値 説明 0 カウンタオーバーフロー未検出 1 カウンタオーバーフロー検出 アドレス比較許可の場合は , アドレス一致した場合のみ割込みが発生します。 "0" 書込みでクリアされます。 SIRCS モード時は , 2 バイト目を受信するまでは OVF フラグはセットされません。 744 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 27.2 MB91605A シリーズ デバイスアドレス設定レジスタ 1, 2 (RCADR1, RCADR2) 27.2.3 デバイスアドレス設定レジスタ 1, 2 (RCADR1, RCADR2) のビット構成を図 27.2-3 に示 します。 図 27.2-3 デバイスアドレス設定レジスタ 1, 2 (RCADR1, RCADR2) のビット構成 bit 7 6 5 4 3 2 1 0 0 0 RCADR1, 2 予約 R/W 属性 初期値 − − − 0 0 0 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 8 ビットアクセスのみ可能です。 [bit 7 ∼ bit 5]:予約ビット 書込み時 無効です。 読出し時 "0" が読み出されます。 [bit 4 ∼ bit 0]:RCADR1, 2 デバイス側 ( 受信側 ) のアドレスを設定するレジスタです。 本レジスタに設定したアドレスが , リモコン受信したデバイスアドレスや HDMI-CEC のデスティネーションと比較されます。 HDMI-CEC モード時は , 本レジスタに 0FH( ブロードキャストアドレス ) を設定しない でください。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 745 第 27 章 リモコン受信 27.2 MB91605A シリーズ スタートビット High 幅設定レジスタ (RCSHW) 27.2.4 スタートビット High 幅設定レジスタ (RCSHW) のビット構成を図 27.2-4 に示します。 図 27.2-4 スタートビット High 幅設定レジスタ (RCSHW) のビット構成 bit 7 0 RCSHW R/W 属性 0 初期値 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 8 ビットアクセスのみ可能です。 スタートビットの High 期間を設定するレジスタです。 設定値を超える幅の High が受信されると , スタートビットと認識します。 受信した信号の High 幅が設定値未満の場合 , スタートビット未検出となり , 再度スター トビット High の検出待ち状態となります。 OVFSEL=0 のときは RCSHW ≦ 127( オーバーフロー検出を超えない値 ) としてくださ い。 746 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 27.2 MB91605A シリーズ High 幅設定レジスタ A (RCDAHW) 27.2.5 High 幅設定レジスタ A (RCDAHW) のビット構成を図 27.2-5 に示します。 図 27.2-5 High 幅設定レジスタ A (RCDAHW) のビット構成 bit 7 0 RCDAHW R/W 属性 0 初期値 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 8 ビットアクセスのみ可能です。 High 期間を設定するレジスタ A です。 本レジスタに設定する値は , 2 ≦ RCDAHW < RCDBHW となるようにしてください。 また , CEC モード時は , RCDAHW < 46 となるようにしてください (ACK 応答パルス 幅未満 )。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 747 第 27 章 リモコン受信 27.2 MB91605A シリーズ High 幅設定レジスタ B (RCDBHW) 27.2.6 High 幅設定レジスタ B (RCDBHW) のビット構成を図 27.2-6 に示します。 図 27.2-6 High 幅設定レジスタ B (RCDBHW) のビット構成 bit 7 0 RCDBHW R/W 属性 0 初期値 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 8 ビットアクセスのみ可能です。 High 期間を設定するレジスタ B です。 RCCDAHW より小さい値は設定しないでください。 必ず RCCDAHW < RCCDBHW < RCSHW となるように設定してください。 748 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 27.2 MB91605A シリーズ 27.2.7 データ格納レジスタ (RCDTHH, RCDTHL, RCDTLH, RCDTLL) データ格納レジスタ (RCDTHH, RCDTHL, RCDTLH, RCDTLL)のビット構成を図 27.2-7 に示します。 図 27.2-7 データ格納レジスタ (RCDTHH, RCDTHL, RCDTLH, RCDTLL) のビット構成 bit 31 24 23 RCDTHH 16 15 RCDTHL 8 7 RCDTLH 属性 R 初期値 0 0 RCDTLL R:リードオンリ 受信したデータを格納するレジスタです。 CEC モードの場合は RCDTHH に受信データが格納されます。 リモコンモードの場合は , 8 ビット受信するごとに RCDTHH から順に格納されます。 カウンタオーバーフロー割込み発生時は , それまで受信されたビットが MSB 詰めで 格納されます。 RCCR レジスタの EN ビットが "0" のときは , 本レジスタからは不定が読み出されま す。 4 バイト分を超える信号が入力された場合 , 超過分は無視され , レジスタには反映され ません。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 749 第 27 章 リモコン受信 27.2 MB91605A シリーズ クロック分周設定レジスタ (RCCKD) 27.2.8 クロック分周設定レジスタ (RCCKD) のビット構成を図 27.2-8 に示します。 図 27.2-8 クロック分周設定レジスタ (RCCKD) のビット構成 bit 15 13 属性 12 11 0 予約 R/W CKSEL CKDIV R/W R/W − 0 0 初期値 R/W:リード / ライト可能 < 注意事項 > 本レジスタは , 16 ビットアクセスのみ可能です。 [bit 15 ∼ bit 13]:予約ビット 書込み時 無効です。 読出し時 "0" が読み出されます。 [bit 12]:CKSEL 動作クロックを選択します。 値 説明 0 周辺クロックを分周したクロックが選択されます。 1 原発振クロックを分周したクロックが選択されます。 [bit 11 ∼ bit 0]:CKDIV クロックの分周比を設定します。 分周比は CKDIV + 1 となります。 1 分周 ( 非分周 ) ∼ 4096 分周まで設定できます。 分周後の周波数が 32.768KHz に近くなるように設定します。 以下に設定例を示します。 動作クロック周波数 750 CKDIV 設定値 分周後周波数 16MHz( 原発振 ) 487 32.787KHz 32MHz( 周辺クロック ) 976 32.753KHz 40MHz( 周辺クロック ) 1220 32.760KHz FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 27 章 リモコン受信 27.3 MB91605A シリーズ 27.3 動作説明と設定手順例 リモコン受信の動作について説明します。また , 各動作状態を設定するための設定例も示し ます。 ■ 動作フローチャート 図 27.3-1 HDMI-CEC 受信の動作フローチャート HDMI-CEC START ビット検出? No Yes データ受信 (8 ビット ) EOM 検出? No Yes ACK 処理 ACK 処理 終了 b7 Start bit CM71-10147-2 b0 Initiator MSB Destination LSB EOM ACK FUJITSU SEMICONDUCTOR LIMITED Data EOM ACK 751 第 27 章 リモコン受信 27.3 MB91605A シリーズ 図 27.3-2 リモコン受信の動作フローチャート リモコン START ビット検出? No Yes データ受信 オーバフロー? No Yes 終了 b0 b6 command Start bit b15 b0 カスタムコード LSB b7 b0 データコード MSB LSB b0 b2 b0 Start bit Ext.+5 Ext.+3 MSB LSB MSB LSB MSB LSB b0 リーダコード b4 device LSB 752 b0 b7 ストップビット データコード MSB LSB FUJITSU SEMICONDUCTOR LIMITED リーダコード MSB CM71-10147-2 第 27 章 リモコン受信 27.3 MB91605A シリーズ ■ 設定例 HDMI-CEC 時 レジスタ リモコン受信制御レジスタ 設定値 MOD=11, THSEL=1, ADRCE=1 リモコン受信割込み制御レジスタ ACKIE=1, OVFSEL=1, OVFIE=1 (7.8ms) スタートビット High 幅設定レジスタ 114 3.5ms High 幅設定レジスタ A 13 0.4ms High 幅設定レジスタ B 42 1.3ms リモコン (SIRCS) 時 レジスタ リモコン受信制御レジスタ 設定値 MOD=00, THSEL=0, ADRCE=1 リモコン受信割込み制御レジスタ ACKIE=0, OVFSEL=0, OVFIE=1 3.9ms スタートビット High 幅設定レジスタ 76 2.3ms High 幅設定レジスタ A 17 0.52ms High 幅設定レジスタ B 37 1.1ms リモコン (NEC) 時 レジスタ CM71-10147-2 リモコン受信制御レジスタ 設定値 MOD=10, THSEL=0 リモコン受信割込み制御レジスタ ACKIE=0, OVFSEL=1, OVFIE=1 7.8ms スタートビット High 幅設定レジスタ 144 4.4ms High 幅設定レジスタ A 15 0.46ms High 幅設定レジスタ B 52 1.6ms FUJITSU SEMICONDUCTOR LIMITED 753 第 27 章 リモコン受信 27.3 754 MB91605A シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 28 章 シリアル書込み 接続例 MB91605A では外部バス接続されたフラッシュメ モリのシリアルオンボード書込みをサポートして います。その仕様について解説します。 28.1 使用する端子 28.2 シリアル書込み接続例 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 755 第 28 章 シリアル書込み 接続例 28.1 MB91605A シリーズ 28.1 使用する端子 シリアルオンボード書込みに使用する端子について説明します。 表 28.1-1 シリアルオンボード書き込みに使用する端子 756 端子 MD1, MD0 機能 補足説明 モード端子 MB91605A は MD1=0, MD0=1 に設定し , SOUT0=1の状態でリセットを掛けるとシリ アル書込みモードとなります。なお , プル アップ / プルダウン抵抗を付ける場合は , 配 線の引き回しをしないように注意願いま す。 X0, X1 発振用端子 シリアル書き込みモード時に使用可能な原 周波数クロックは 16MHz となります。 SOUT0/P76 書き込みプログラム起動 端子 /UART シリアル データ出力端子 外部に Pull Up 抵抗を付加し , リセット時の レベルを "1" にすることでシリアル書込み プログラム起動端子となります。 通信モードを UART とした場合 , プログラ ムが起動し通信が開始された時点でシリア ルデータ出力端子となります。 SIN0/P75 UART 同期・非同期選択 端子 /UART シリアル データ入力端子 通信を開始するまでの本端子の入力レベル を "1" にする事で非同期 UART 通信モード となり , "0" とすることで同期 UART 通信 モードとなります。 プログラムが起動し通信が開始された時点 で, UARTシリアルデータ入力端子として使 用します。 SCK0/P77 シリアルクロック入力端子 通信モードを UART 同期通信した場合 , シ リアルクロック入力端子となります。 INIT リセット端子 ― VDDE 電源電圧供給端子 書き込み電圧をユーザシステムから供給し てください。接続時にはユーザ側の電源と 短絡しないようにしてください。 VSS GND 端子 フラッシュマイコンプログラマのGNDと共 通にします。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 28 章 シリアル書込み 接続例 28.2 MB91605A シリーズ 28.2 シリアル書込み接続例 シリアル書込み接続例を示します。 28.2.1 同期シリアル書込み接続例 図 28.2-1 シリアル書込み接続例 ( 同期通信モード ) AF220/AF210/AF120/AF110 フラッシュマイコン プログラマ TAUX3 ユーザーシステム コネクタ DX10-28S MB91605A MD0 (19) 10kΩ MD1 X0 16MHz X1 TMODE TAUX /TICS /TRES TTXD TRXD (12) (23) (10) (5) (13) (27) TCK (6) TVcc (2) GND 10kΩ INIT 非通信時 Low レベル 10kΩ (7,8, 14,15, 21,22, 1,28) SIN0/P75 SOUT0/P76 SCK0/P77 VDDE ユーザ電源 VSS 14 ピン 1 ピン DX10 -28S DX10 -28S:ライトアングルタイプ CM71-10147-2 28 ピン 15 ピン コネクタ(ヒロセ電機製) のピン配列 FUJITSU SEMICONDUCTOR LIMITED 757 第 28 章 シリアル書込み 接続例 28.2 28.2.2 MB91605A シリーズ 非同期シリアル書込み接続例 図 28.2-2 シリアル書き込み接続例 ( 非同期通信モード ) ユーザシステム MB91605A MD 0 MD 10kΩ MD1 X0 16MHz X1 ユーザシステム リセット TXD RXD 非通信時 High レベル 10kΩ 758 SIN0/P75 SOUT0/P76 ユーザ電源 GND INIT VDDE VSS FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 第 29 章 デバイスの取扱い について 本製品の使用上の注意について説明します。 29.1 デバイス取扱い上の注意 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 759 第 29 章 デバイスの取扱いについて 29.1 MB91605A シリーズ 29.1 デバイス取扱い上の注意 本製品を使用する際は , 次の点に注意してください。 ■ デバイス取扱い上の注意 ● ラッチアップ防止のために CMOS IC では入力端子や出力端子に VDDE または VDDI より高い電圧や VSS より低い 電圧を印加した場合 , または , VDDE 端子と VSS 端子または VDDI 端子と VSS 端子の 間に定格を超える電圧を印加した場合に, ラッチアップ現象を生じることがあります。 ラッチアップが生じると電源電流が激増し , 素子の熱破壊に至ることがあります。使 用に際しては最大定格を超えることのないよう十分に注意してください。 ● 未使用端子の処理について 使用していない入力端子を開放のままにした場合 , 誤動作 , およびラッチアップによる 永久破壊の原因となることがありますので , 2 kΩ 以上の抵抗を介して , プルアップ , ま たはプルダウンなどの処理をしてください。 また , 使用していない入出力端子がある場合は , 出力状態に設定して開放するか , 入力 状態に設定して入力端子と同じ処理をしてください。 ● 電源端子について MB91605A シリーズは , VDDE 端子または VDDI 端子 , VSS 端子が複数あります。その ため , デバイス設計上ラッチアップなどの誤動作を防止するためにデバイス内部で同 電位にすべきものどうしを接続してあります。不要輻射の低減・グランドレベルの上 昇によるストローブ信号の誤動作の防止・総出力電流規格を遵守などのために , 必ず それらすべてを外部で電源およびグランドに接続してください。また , 電流供給源か らできるかぎり低インピーダンスで本デバイスの VDDE 端子または VDDI 端子 , VSS 端子に接続するような配慮をお願いします。 さらに , 本デバイスの近くで , VDDE 端子または VDDI 端子 , VSS 端子の間に 0.1 μF 程度のセラミックコンデンサをバイパスコンデンサとして接続することをお勧めいた します。 ● 水晶発振回路について X0, X1 端子の近辺のノイズは本デバイスの誤動作のもととなります。X0 と X1 および 水晶発振子さらにグランドへのバイパスコンデンサはできるかぎり近くに配置するよ うにプリント板を設計してください。 また , X0, X1 端子の回りをグランドで囲むようなプリント板アートワークは安定した 動作を期待できるので , 強くお勧めします。 各量産品において , ご使用される発振子メーカに発振評価依頼をしてください。 760 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 29 章 デバイスの取扱いについて 29.1 ● モード端子 (MD0, MD1) について これらの端子は , 電源端子または GND 端子に直接つないで使用してください。ノイズ により誤ってテストモードに入ってしまうことを防ぐために , プリント板上の各モー ド端子と電源端子または GND 端子間のパターン長をできる限り短くし , これらを低イ ンピーダンスで接続するようにしてください。 ● 電源投入時について 電源投入直後は必ず INIT 端子にて設定初期化リセット (INIT) を行ってください。 また , 電源投入直後は , 発振回路の発振安定待ち時間を確保するため , INIT 端子への "L" レベル入力を発振回路の要求する安定待ち時間の間持続してください (INIT 端子に よる INIT では , 発振安定待ち時間の設定は最小値に初期化されています ) 。 ● 電源投入時の原振入力について 電源投入時は , 必ず発振安定待ちが解除されるまでクロックを入力し続けてください。 ● VDDI端子 (内部電源1.8 V系) とVDDE端子 (外部端子電源3.3 V系) の電源投 入 / 切断の順序について • 電源は , 次の順序で投入 / 切断してください。 投入時 VDDI 端子 ( 内部電源 ) → VDDE 端子 ( 外部電源 ) →アナログ→ 信号 切断時 信号 →アナログ → VDDE 端子 ( 外部電源 ) → VDDI 端子 ( 内部 電源 ) • VDDI 端子 ( 内部電源 ) が切断されている条件で VDDE 端子 ( 外部電源 ) のみを継 続的 (1 分間を目安 ) に印加することは , LSI の信頼性上の問題がありますので避け てください。 • VDDE 端子 ( 外部電源 ) を OFF 状態から ON 状態に復帰させる際には , 電源ノイズ などの影響により , 回路の内部状態が保持できない場合があります。 • 電源投入時は内部電源が安定するまでの間 , 出力端子が不定となる可能性がありま す。 • CM71-10147-2 電源 (VDDI/VDDE/ アナログ ) を同時に投入 / 切断することは問題ありません。 FUJITSU SEMICONDUCTOR LIMITED 761 第 29 章 デバイスの取扱いについて 29.1 MB91605A シリーズ ● 外部クロック使用時の注意について 外部クロックを使用する際には , 原則として X0 端子と X1 端子へ同時に供給してくだ さい。また X1 端子には X0 と逆相のクロックを供給してください。ただし , この場合 にはSTOP モード ( 発振停止モード) は使用しないでください (STOP時X1 端子が"H" 出力で停止するため ) 。 図 29.1-1 外部クロック使用方法 X0 X1 MB91605A シリーズ STOP モード ( 発振停止モード ) では使用できません。 ● AVCC 端子について MB91605A シリーズは A/D コンバータを内蔵しています。AVCC 端子と AVSS 端子の 間に 0.1 μF 程度のコンデンサを必ず入れてください。 AVCC MB91605A シリーズ 0.1μF AVSS ● エミュレータを使用しない場合の注意について エミュレータを接続しない状態でユーザシステム上の評価 MCU を動作させる場合 , ユーザシステム上でエミュレータインタフェースと接続している評価 MCU の各入力 端子を以下のように処理してください。 ユーザシステム上に切換え回路などが必要になる場合がありますので設計時にはご注 意ください。 表 29.1-1 エミュレータインタフェース端子処理 評価 MCU 端子名 端子処理 TRST ユーザシステム上のリセット出力回路に接続します。 INIT ユーザシステム上のリセット出力回路に接続します。 その他 開放とします。 762 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 第 29 章 デバイスの取扱いについて 29.1 ● PLL クロック選択時の注意について 本マイクロコントローラで PLL クロックを選択しているときに発振子が外れたり , ク ロック入力が停止した場合には PLL 内部の自励発振回路の自走周波数で動作を継続し 続ける場合があります。 この動作は保証外となります。 ■ 制限事項 1. PS レジスタに関する注意事項 一部の命令で PS レジスタを先行処理しているため , 例外動作により , デバッガ使 用時に割込み処理ルーチンでブレークしたり , PS レジスタ内のフラグの表示内容 が更新されたりする場合があります。いずれの場合も , EIT から復帰後以降に正し く再処理を行うように設計されていますので , EIT 前後の動作は仕様どおりの処理 を行います。 DIV0U/DIV0S 命令の直前の命令では , 以下の場合に , 1 ∼ 3 の処理を行うことがあ ります。 - ユーザ割込み /NMI を受け付けた場合 - ステップ実行を行った場合 - データイベント / エミュレータメニューでブレークした場合 1. D0, D1 フラグが先行して更新されます。 2. EIT 処理ルーチン ( ユーザ割込み /NMI またはエミュレータ ) を実行します。 3. EIT から復帰後 , DIV0U/DIV0S 命令が実行され , D0/D1 フラグが 1 と同じ値に 更新されます。 ユーザ割込み /NMI 要因が発生している状態で割込みを許可するために OR CCR, ST ILM, MOV Ri, PS の各命令が実行されると , 以下のような動作を行います。 1. PS レジスタが先行して更新されます。 2. EIT 処理ルーチン ( ユーザ割込み /NMI, またはエミュレータ ) を実行します。 3. EITから復帰後, 上記命令が実行され, PSレジスタが1と同じ値に更新されます。 2. ウォッチドッグタイマ機能について ウォッチドッグタイマは , プログラムが一定時間内にリセット延期動作を行うこと を監視し , プログラムの暴走によりリセット延期動作が行われなかったときに , CPU をリセットするための機能です。そのため , いったんウォッチドッグタイマ機 能を有効にすると , リセットを掛けるまで動作を続けます。例外として , CPU のプ ログラム実行が停止する条件では自動的にリセット延期を行います。なお , システ ムの暴走により上記状態となってしまった場合 , ウォッチドッグリセットが発生し ない可能性があります。その場合 , 外部 INIT 端子よりリセット (INIT) をかけてく ださい。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 763 第 29 章 デバイスの取扱いについて 29.1 MB91605A シリーズ 3. デバッガ関連の注意事項 • RETI 命令のステップ実行 ステップ実行する際 , 割込みが頻繁に発生する環境下では , 該当割込み処理ルーチ ンだけを繰り返して実行されます。その結果 , メインルーチンや割込みレベルの低 いプログラムが実行されなくなります ( 例えば , リロードタイマの割込みを許可し ていた場合 , RETI をステップ実行すると , 必ずリロードタイマの割込みルーチンの 先頭でブレークされます。該当割込み処理ルーチンのデバッグが不要になった段階 で , 該当割込みを禁止してください。 • ブレーク機能 ハードウェアブレーク ( イベントブレーク含む ) の対象アドレスを現在のシステム スタックポインタのアドレスや , スタックポインタを含む領域に設定すると , ユー ザプログラムに実際のデータアクセス命令がないにもかかわらず , 1 命令実行後に ブレークされます。 したがって, システムスタックポインタのアドレスを含む領域に対する (ワード) ア クセスを , ハードウェアブレーク ( イベントブレーク含む ) の対象に設定しないで ください。 • オペランドブレークについて DSU のオペランドブレークとして設定している領域にスタックポインタがあると 誤動作の原因となります。システムスタックポインタのアドレスを含む領域に対す るアクセスを , データイベントブレークの対象にしないでください。 764 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 I/O マップ , レジスタ一覧 , CPU の状態における端 子状態および FR80 ファミリ CPU の命令一覧につ いて説明します。 付録 A I/O マップ 付録 B レジスタ一覧 付録 C 割込みベクタ 付録 D CPU の状態における端子状態 付録 E 命令一覧 付録 F プログラムローダモード CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 765 付録 A I/O マップ 付録 A MB91605A シリーズ I/O マップ メモリ空間領域と周辺機能の各レジスタの対応を示します。 ■ I/O マップの見かた メモリ空間領域と周辺リソースの各レジスタの対応を示します。 図 A-1 表の見方 アドレス レジスタ 000000H ブロック +0 +1 +2 +3 PDR0 [R/W] XXXXXXXX PDR1 [R/W] XXXXXXXX PDR2 [R/W] XXXXXXXX PDR3 [R/W] XXXXXXXX T-unit ポートデータ レジスタ リード / ライト 属性 リセット後のレジスタ初期値 レジスタ名 (1 コラムのレジスタが 4n 番地 , 2 コラムが 4n + 1 番地・・・) 最左のレジスタ番地 ( ワードでアクセスした際は , 1 コラム目のレジスタが データの MSB 側となる。) < 注意事項 > • レジスタのビット値は , 以下のように初期値を表します。 - "1":初期値 "1" - "0":初期値 "0" - "X":初期値 不定 - "-":その位置に物理的にレジスタがない - "*":初期化されないビット • リード / ライト属性は , 以下を表します。 - "R":リードオンリのビットが存在することを示します。 - "R/W":リード / ライト可能なビットが存在することを示します。 - "W":ライトオンリのビットが存在することを示します。 • 766 記述されていないデータアクセス属性によるアクセスは禁止です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 000000H +1 予約 ブロック +2 +3 PDR2 [R/W] ----XXXX PDR3 [R/W] XXXXXXXX 000004H PDR4 [R/W] --XXXXXX PDR5 [R/W] XXXXXXXX PDR6 [R/W] XXXXXXXX PDR7[R/W] XXXXXXXX 000008H PDR8 [R/W] --XXXXXX PDR9 [R/W] --XXXXXX PDRA [R/W] --XXXXXX PDRB[R/W] XXXXXXXX 00000CH PDRC [R/W] XXXXXXXX PDRD [R/W] XXXXXXXX PDRE [R/W] XXXXXXXX 予約 000010H ポートデータ レジスタ 予約 ∼ 00001CH 000020H ADCTH [R/W] 00000000 ADCTL [R/W] 00000000 ADCH [R/W] 00000000 00000000 000024H ADAT0 [R] 00000000 00000000 ADAT1 [R] 00000000 00000000 000028H ADAT2 [R] 00000000 00000000 ADAT3 [R] 00000000 00000000 00002CH ADAT4 [R] 00000000 00000000 ADAT5 [R] 00000000 00000000 000030H ADAT6 [R] 00000000 00000000 ADAT7 [R] 00000000 00000000 000034H ADAT8 [R] 00000000 00000000 ADAT9 [R] 00000000 00000000 000038H ADAT10 [R] 00000000 00000000 ADAT11 [R] 00000000 00000000 10 ビット A/D コンバータ 00003CH WDTCR0 [R/W] 00000000 WDTCPR0 [R/W] 00000000 予約 ウォッチ ドッグタイマ 000040H EIRR0 [R/W] 00000000 ENIR0 [R/W] 00000000 ELVR0 [R/W] 00000000 00000000 外部割込み 0∼7 000044H DICR [R/W] 11111110 予約 遅延割込み 16 ビット リロード タイマ ch. 0 000048H TMRLRA0 [R/W] XXXXXXXX XXXXXXXX TMR0 [R] XXXXXXXX XXXXXXXX 00004CH 予約 TMCSR0 [R/W] 00000000 XX000000 000050H TMRLRA1 [R/W] XXXXXXXX XXXXXXXX TMR1 [R] XXXXXXXX XXXXXXXX 000054H 予約 TMCSR1 [R/W] 00000000 XX000000 000058H TMRLRA2 [R/W] XXXXXXXX XXXXXXXX TMR2 [R] XXXXXXXX XXXXXXXX 00005CH 予約 TMCSR2 [R/W] 00000000 XX000000 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 16 ビット リロード タイマ ch. 1 16 ビット リロード タイマ ch. 2 767 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス 000060H 000064H レジスタ ブロック +0 +1 +2 +3 SCR0/IBCR0 [R, R/W] 0--00000 SMR0 [R/W] 00000000 SSR0 [R, R/W] 0-000011 ESCR0 [R/W], IBSR0 [R, R/W] -0000000 BGR10 [R/W] 00000000 BGR00 [R/W] 00000000 RDR0[R]/TDR0[W] -------0 00000000 000068H ISMK0 [R/W] 01111111 ISBA0 [R/W] 00000000 00006CH FCR10 [R/W] 00-00100 FCR00 [R, R/W] 00000000 FBYTE20 [R/W] 00000000 FBYTE10 [R/W] 00000000 000070H SCR1/IBCR1 [R, R/W] 0--00000 SMR1 [R/W] 00000000 SSR1 [R, R/W] 0-000011 ESCR1 [R/W], IBSR1 [R, R/W] -0000000 BGR11 [R/W] 00000000 BGR01 [R/W] 00000000 000074H RDR1[R]/TDR1[W] -------0 00000000 予約 000078H ISMK1 [R/W] 01111111 ISBA1 [R/W] 00000000 00007CH FCR11 [R/W] 00-00100 FCR01 [R, R/W] 00000000 FBYTE21 [R/W] 00000000 FBYTE11 [R/W] 00000000 000080H SCR2/IBCR2 [R, R/W] 0--00000 SMR2 [R/W] 00000000 SSR2 [R, R/W] 0-000011 ESCR2 [R/W], IBSR2 [R, R/W] -0000000 BGR12 [R/W] 00000000 BGR02 [R/W] 00000000 000084H RDR2[R]/TDR2[W] -------0 00000000 予約 000088H ISMK2 [R/W] 01111111 ISBA2 [R/W] 00000000 00008CH FCR12 [R/W] 00-00100 FCR02 [R, R/W] 00000000 FBYTE22 [R/W] 00000000 FBYTE12 [R/W] 00000000 000090H SCR3/IBCR3 [R, R/W] 0--00000 SMR3 [R/W] 00000000 SSR3 [R, R/W] 0-000011 ESCR3 [R/W], IBSR3 [R, R/W] -0000000 BGR13 [R/W] 00000000 BGR03 [R/W] 00000000 000094H RDR3[R]/TDR3[W] -------0 00000000 予約 000098H ISMK3 [R/W] 01111111 ISBA3 [R/W] 00000000 00009CH FCR13 [R/W] 00-00100 FCR03 [R, R/W] 00000000 FBYTE23 [R/W] 00000000 FBYTE13 [R/W] 00000000 0000A0H SCR4/IBCR4 [R, R/W] 0--00000 SMR4 [R/W] 00000000 SSR4 [R, R/W] 0-000011 ESCR4 [R/W], IBSR4 [R, R/W] -0000000 BGR14 [R/W] 00000000 BGR04 [R/W] 00000000 0000A4H RDR4[R]/TDR4[W] -------0 00000000 0000A8H ISMK4 [R/W] 01111111 ISBA4 [R/W] 00000000 0000ACH FCR14 [R/W] 00-00100 FCR04 [R, R/W] 00000000 768 予約 予約 FBYTE24 [R/W] 00000000 FUJITSU SEMICONDUCTOR LIMITED FBYTE14 [R/W] 00000000 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.0 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.1 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.2 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.3 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.4 CM71-10147-2 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ 0000B0H 0000B4H ブロック +0 +1 +2 +3 SCR5/IBCR5 [R, R/W] 0--00000 SMR5 [R/W] 00000000 SSR5 [R, R/W] 0-000011 ESCR5 [R/W], IBSR5 [R, R/W] -0000000 BGR15 [R/W] 00000000 BGR05 [R/W] 00000000 RDR5[R]/TDR5[W] -------0 00000000 0000B8H ISMK5 [R/W] 01111111 ISBA5 [R/W] 00000000 0000BCH FCR15 [R/W] 00-00100 FCR05 [R, R/W] 00000000 FBYTE25 [R/W] 00000000 FBYTE15 [R/W] 00000000 0000C0H SCR6/IBCR6 [R, R/W] 0--00000 SMR6 [R/W] 00000000 SSR6 [R, R/W] 0-000011 ESCR6 [R/W], IBSR6 [R, R/W] -0000000 BGR16 [R/W] 00000000 BGR06 [R/W] 00000000 0000C4H 予約 RDR6[R]/TDR6[W] -------0 00000000 0000C8H ISMK6 [R/W] 01111111 ISBA6 [R/W] 00000000 0000CCH FCR16 [R/W] 00-00100 FCR06 [R, R/W] 00000000 FBYTE26 [R/W] 00000000 FBYTE16 [R/W] 00000000 0000D0H SCR7/IBCR7 [R, R/W] 0--00000 SMR7 [R/W] 00000000 SSR7 [R, R/W] 0-000011 ESCR7 [R/W], IBSR7 [R, R/W] -0000000 BGR17 [R/W] 00000000 BGR07 [R/W] 00000000 0000D4H 予約 RDR7[R]/TDR7[W] -------0 00000000 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.5 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.6 マルチ ファンク ション シリアル インタ フェース (FIFO あり ) ch.7 0000D8H ISMK7 [R/W] 01111111 ISBA7 [R/W] 00000000 0000DCH FCR17 [R/W] 00-00100 FCR07 [R, R/W] 00000000 0000E0H EIRR1 [R/W] 00000000 ENIR1 [R/W] 00000000 ELVR1 [R/W] 00000000 00000000 外部割込み 8 ∼ 15 0000E4H EIRR2 [R/W] 00000000 ENIR2 [R/W] 00000000 ELVR2 [R/W] 00000000 00000000 外部割込み 16 ∼ 23 0000E8H IRPR0H [R] 00000000 予約 FBYTE27 [R/W] 00000000 FBYTE17 [R/W] 00000000 予約 0000ECH 割込み要求 一括読出し機 能 予約 予約 0000F0H RCCR [R/W] 0---0000 RCST [R/W] 00000000 RCSHW [R/W] 00000000 RCDAHW [R/W] 00000000 0000F4H RCDBHW [R/W] 00000000 予約 RCADR1 [R/W] ---00000 RCADR2 [R/W] ---00000 0000F8H RCDTHH [R] 00000000 RCDTHL [R] 00000000 RCDTLH [R] 00000000 RCDTLL[R] 00000000 0000FCH 000100H RCCKD [R/W] ---00000 00000000 リモコン 予約 予約 予約 ∼ 0001FCH CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 769 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス 000200H 000204H 000208H レジスタ +1 +2 +3 SCR8/IBCR8 [R, R/W] 0--00000 SMR8 [R/W] 00000000 SSR8 [R, R/W] 0-000011 ESCR8 [R/W], IBSR8 [R, R/W] -0000000 BGR18 [R/W] 00000000 BGR08 [R/W] 00000000 RDR8[R]/TDR8[W] -------0 00000000 ISMK8 [R/W] 01111111 ISBA8 [R/W] 00000000 00020CH 000210H 000214H 000218H 000224H 000228H SCR9/IBCR9 [R, R/W] 0--00000 SMR9 [R/W] 00000000 RDR9[R]/TDR9[W] -------0 00000000 ISMK9 [R/W] 01111111 ISBA9 [R/W] 00000000 SCRA/IBCRA [R, R/W] 0--00000 SMRA [R/W] 00000000 000234H 000238H ESCR9 [R/W], IBSR9 [R, R/W] -0000000 BGR19 [R/W] 00000000 BGR09 [R/W] 00000000 予約 RDRA[R]/TDRA[W] -------0 00000000 ISMKA [R/W] 01111111 SSRA [R, R/W] 0-000011 ESCRA [R/W], IBSRA [R, R/W] -0000000 BGR1A [R/W] 00000000 BGR0A [R/W] 00000000 ISBAA [R/W] 00000000 マルチ ファンク ション シリアル インタ フェース (FIFO なし ) ch.9 予約 マルチ ファンク ション シリアル インタ フェース (FIFO なし ) ch.10 予約 SCRB/IBCRB [R, R/W] 0--00000 SMRB [R/W] 00000000 RDRB[R]/TDRB[W] -------0 00000000 ISMKB [R/W] 01111111 ISBAB [R/W] 00000000 000240H RDRM8/TDRM8 [R/W] 00000000 RDRM9/TDRM9 [R/W] 00000000 000244H SSEL89AB [R/W] ------00 00023CH 000248H SSR9 [R, R/W] 0-000011 予約 00022CH 000230H 予約 マルチ ファンク ション シリアル インタ フェース (FIFO なし ) ch.8 予約 00021CH 000220H ブロック +0 SSRB [R, R/W] 0-000011 ESCRB [R/W], IBSRB [R, R/W] -0000000 BGR1B [R/W] 00000000 BGR0B [R/W] 00000000 予約 マルチ ファンク ション シリアル インタ フェース (FIFO なし ) ch.11 予約 RDRMA/TDRMA [R/W] 00000000 予約 予約 RDRMB/TDRMB [R/W] 00000000 マルチ ファンク ション シリアル インタ フェース データ レジスタ ( ミラー ) マルチ ファンク ション シリアル インタ フェース シリアル クロック選択 予約 ∼ 00027CH 770 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 000280H +1 BT0TMR [R] 00000000 00000000 000284H 予約 000288H BT0PCSR/BT0PRLL [R/W] XXXXXXXX XXXXXXXX +3 BT0TMCR [R/W] 00000000 00000000 BT0STC [R/W] 00000000 00028CH ベースタイマ ch.0 予約 BT0PDUT/BT0PRLH [R/W], BT0DTBF [R] XXXXXXXX XXXXXXXX 予約 BT1TMR [R] 00000000 00000000 000290H BT1TMCR [R/W] 00000000 00000000 BT1STC [R/W] 00000000 000294H 予約 000298H BT1PCSR/BT1PRLL [R/W] XXXXXXXX XXXXXXXX 00029CH ベースタイマ ch.1 予約 BT1PDUT/BT1PRLH [R/W], BT1DTBF [R] XXXXXXXX XXXXXXXX 予約 0002A0H BT2TMR [R] 00000000 00000000 BT2TMCR [R/W] 00000000 00000000 BT2STC [R/W] 00000000 0002A4H 予約 0002A8H BT2PCSR/BT2PRLL [R/W] XXXXXXXX XXXXXXXX 0002ACH ベースタイマ ch.2 予約 BT2PDUT/BT2PRLH [R/W], BT2DTBF [R] XXXXXXXX XXXXXXXX 予約 BT3TMR [R] 00000000 00000000 0002B0H BT3TMCR [R/W] 00000000 00000000 BT3STC [R/W] 00000000 0002B4H 予約 0002B8H BT3PCSR/BT3PRLL [R/W] XXXXXXXX XXXXXXXX 0002BCH ブロック +2 予約 BT3PDUT/BT3PRLH [R/W], BT3DTBF [R] XXXXXXXX XXXXXXXX BTSEL0123 [R/W] 00000000 0002C0H 予約 BT4TMR [R] 00000000 00000000 0002C4H 予約 0002C8H BT4PCSR/BT4PRLL [R/W] XXXXXXXX XXXXXXXX 0002D8H BT5PCSR/BT5PRLL [R/W] XXXXXXXX XXXXXXXX BT5TMCR [R/W] 00000000 00000000 BT5STC [R/W] 00000000 0002DCH ベースタイマ ch.5 予約 BT5PDUT/BT5PRLH [R/W], BT5DTBF [R] XXXXXXXX XXXXXXXX 予約 BT6TMR [R] 00000000 00000000 BT6TMCR [R/W] 00000000 00000000 BT6STC [R/W] 00000000 0002E4H 予約 0002E8H BT6PCSR/BT6PRLL [R/W] XXXXXXXX XXXXXXXX CM71-10147-2 BT4PDUT/BT4PRLH [R/W], BT4DTBF [R] XXXXXXXX XXXXXXXX 予約 予約 0002ECH ベースタイマ ch.4 予約 BT5TMR [R] 00000000 00000000 0002D4H 0002E0H BT4TMCR [R/W] 00000000 00000000 BT4STC [R/W] 00000000 0002CCH 0002D0H ベースタイマ ch.3 ベースタイマ ch.6 予約 BT6PDUT/BT6PRLH [R/W], BT6DTBF [R] XXXXXXXX XXXXXXXX 予約 FUJITSU SEMICONDUCTOR LIMITED 771 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 0002F0H +1 BT7TMR [R] 00000000 00000000 0002F4H 予約 0002F8H BT7PCSR/BT7PRLL [R/W] XXXXXXXX XXXXXXXX 0002FCH ブロック +2 +3 BT7TMCR [R/W] 00000000 00000000 BT7STC [R/W] 00000000 ベースタイマ ch.7 予約 BT7PDUT/BT7PRLH [R/W], BT7DTBF [R] XXXXXXXX XXXXXXXX BTSEL4567 [R/W] 00000000 予約 000300H 予約 予約 予約 命令 / データ キャッシュ ∼ 0003CCH 0003D0H ∼ 0003DCH 0003E0H CARR [R/W] 00000000 DCHCR [R/W] XXXXXX00 予約 0003E4H ICHCR [R/W] XXXX0000 予約 0003E8H DSIZE [R] 00100000 00000000 DFUNC [R] 00000001 01010010 0003ECH ISIZE [R] 00100000 00000000 IFUNC [R] 00000000 00010110 0003F0H 予約 予約 ∼ 0003FCH 000400H 予約 DDR2 [R/W] ----0000 DDR3 [R/W] 00000000 000404H DDR4 [R/W] --000000 DDR5 [R/W] 00000000 DDR6 [R/W] 00000000 DDR7[R/W] 00000000 000408H DDR8 [R/W] --000000 DDR9 [R/W] --000000 DDRA [R/W] --000000 DDRB[R/W] 00000000 00040CH DDRC [R/W] 00000000 DDRD [R/W] 00000000 DDRE [R/W] 00000000 予約 000410H データ方向 レジスタ 予約 ∼ 00041CH 000420H, 000424H 予約 000428H 00042CH 000430H PCRB [R/W] 00000000 予約 PCRC [R/W] 00000000 PCRE [R/W] 00000000 予約 ポート プルアップ 制御レジスタ 予約 予約 ∼ 00043CH 772 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ ブロック +0 +1 +2 +3 000440H ICR00 [R/W] 11111111 ICR01 [R/W] 11111111 ICR02 [R/W] 11111111 ICR03 [R/W] 11111111 000444H ICR04 [R/W] 11111111 ICR05 [R/W] 11111111 ICR06 [R/W] 11111111 ICR07 [R/W] 11111111 000448H ICR08 [R/W] 11111111 ICR09 [R/W] 11111111 ICR10 [R/W] 11111111 ICR11 [R/W] 11111111 00044CH ICR12 [R/W] 11111111 ICR13 [R/W] 11111111 ICR14 [R/W] 11111111 ICR15 [R/W] 11111111 000450H ICR16 [R/W] 11111111 ICR17 [R/W] 11111111 ICR18 [R/W] 11111111 ICR19 [R/W] 11111111 000454H ICR20 [R/W] 11111111 ICR21 [R/W] 11111111 ICR22 [R/W] 11111111 ICR23 [R/W] 11111111 000458H ICR24 [R/W] 11111111 ICR25 [R/W] 11111111 ICR26 [R/W] 11111111 ICR27 [R/W] 11111111 00045CH ICR28 [R/W] 11111111 ICR29 [R/W] 11111111 ICR30 [R/W] 11111111 ICR31 [R/W] 11111111 000460H ICR32 [R/W] 11111111 ICR33 [R/W] 11111111 ICR34 [R/W] 11111111 ICR35 [R/W] 11111111 000464H ICR36 [R/W] 11111111 ICR37 [R/W] 11111111 ICR38 [R/W] 11111111 ICR39 [R/W] 11111111 000468H ICR40 [R/W] 11111111 ICR41 [R/W] 11111111 ICR42 [R/W] 11111111 ICR43 [R/W] 11111111 00046CH ICR44 [R/W] 11111111 ICR45 [R/W] 11111111 ICR46 [R/W] 11111111 ICR47 [R/W] 11111111 STBCR [R/W] 00000011 SLPRR [R/W] 00000000 DIVR2 [R/W] 00110000 予約 IORR2 [R/W] 00000000 IORR3 [R/W] 00000000 000470H 割込み コントローラ 予約 ∼ 00047CH 000480H RSTRR [R] XXXXXXXX RSTCR [R/W] 00000000 000484H 000488H 予約 DIVR0 [R/W] 00000000 DIVR1 [R/W] 00010000 00048CH 000490H クロック 制御部 予約 IORR0 [R/W] 00000000 IORR1 [R/W] 00000000 000494H 予約 周辺機能 DMA 転送 要求 予約 ∼ 00049CH 0004A0H 予約 PFR2 [R/W] ----1110 PFR3 [R/W] 10001111 0004A4H PFR4 [R/W] --110000 PFR5 [R/W] 11111111 PFR6 [R/W] 00000000 PFR7 [R/W] 00000000 0004A8H PFR8 [R/W] --000000 PFR9 [R/W] --000000 PFRA [R/W] --000000 PFRB [R/W] 00000000 0004ACH PFRC [R/W] 00000000 PFRD [R/W] 00000000 PFRE [R/W] 00000000 予約 0004B0H ポート ファンク ション レジスタ 予約 ∼ 0004DCH CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 773 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 0004E0H +1 ブロック +2 ADER [R/W] 00001111 11111111 0004E4H +3 予約 A/D 入力許可 予約 予約 ∼ 0004ECH 0004F0H ICSEL0[R/W] 00000000 ICSEL1[R/W] 00000000 0004F4H ICSEL2[R/W] 00000000 ICSEL3[R/W] 00000000 予約 DMA 起動 要求クリア 選択機能 予約 ∼ 00050CH 000510H 000514H CSELR [R/W] -01---00 (INIT 時 ) -**---** (RST 時 ) CMONR [R] -01---00 (INIT 時 ) -**---** (RST 時 ) PLLCR [R/W] --000000 11110000 (INIT 時 ) --****** ******** (RST 時 ) 000518H MTMCR [R/W] 00001111 予約 CSTBR [R/W] ---- 0000 (INIT 端子 =L 時 ) ---- ****(INIT 時 ) 0*** ****(RST 時 ) 予約 クロック生成 予約 予約 予約 DMAC ∼ 0007DCH 0007E0H ∼ 0007E8H 0007ECH DNMIR [R/W] 00000000 予約 0007F0H DILVR [R/W] 00011111 予約 予約 ∼ 0007F8H 0007FCH BMODR [R] MODR [R] XXXXXXXX 000XXXXX ( 動作モードによっ ( 動作モードによっ て異なる。) て異なる。) 000800H 予約 動作モード 制御 予約 予約 000C00H GCFR [R/W] 00000000 00000000 00000000 00000000 DMAC 000C04H 予約 予約 ∼ 000BFCH ∼ 000CFCH 000D00H CCFR0 [R/W] 00000000 00000000 CSTR0 [R/W] 00000000 00000000 000D04H CCTR0 [R/W] 00000000 00000000 予約 000D08H SBA0 [R/W] 00000000 00000000 00000000 00000000 000D0CH DBA0 [R/W] 00000000 00000000 00000000 00000000 774 FUJITSU SEMICONDUCTOR LIMITED DMAC CM71-10147-2 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 +1 ブロック +2 000D10H PIX0 [R/W] 00000000 00000000 00000000 00000000 000D14H SIX0 [R/W] 00000000 00000000 00000000 00000000 000D18H BCL0 [R/W] 00000000 00000000 00000000 00000000 000D1CH APR0 [R/W] 00000000 00000000 00000000 00000000 +3 DMAC 000D20H CCFR1 [R/W] 00000000 00000000 CSTR1 [R/W] 00000000 00000000 000D24H CCTR1 [R/W] 00000000 00000000 予約 000D28H SBA1 [R/W] 00000000 00000000 00000000 00000000 000D2CH DBA1 [R/W] 00000000 00000000 00000000 00000000 000D30H PIX1 [R/W] 00000000 00000000 00000000 00000000 000D34H SIX1 [R/W] 00000000 00000000 00000000 00000000 000D38H BCL1 [R/W] 00000000 00000000 00000000 00000000 000D3CH APR1 [R/W] 00000000 00000000 00000000 00000000 000D40H CCFR2 [R/W] 00000000 00000000 CSTR2 [R/W] 00000000 00000000 000D44H CCTR2 [R/W] 00000000 00000000 予約 000D48H SBA2 [R/W] 00000000 00000000 00000000 00000000 000D4CH DBA2 [R/W] 00000000 00000000 00000000 00000000 000D50H PIX2 [R/W] 00000000 00000000 00000000 00000000 000D54H SIX2 [R/W] 00000000 00000000 00000000 00000000 000D58H BCL2 [R/W] 00000000 00000000 00000000 00000000 000D5CH APR2 [R/W] 00000000 00000000 00000000 00000000 000D60H CCFR3 [R/W] 00000000 00000000 CSTR3 [R/W] 00000000 00000000 000D64H CCTR3 [R/W] 00000000 00000000 予約 000D68H SBA3 [R/W] 00000000 00000000 00000000 00000000 000D6CH DBA3 [R/W] 00000000 00000000 00000000 00000000 000D70H PIX3 [R/W] 00000000 00000000 00000000 00000000 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 775 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 +1 ブロック +2 +3 000D74H SIX3 [R/W] 00000000 00000000 00000000 00000000 000D78H BCL3 [R/W] 00000000 00000000 00000000 00000000 000D7CH APR3 [R/W] 00000000 00000000 00000000 00000000 000D80H 予約 DMAC 予約 ∼ 000EFCH 000F00H BT8TMR [R] 00000000 00000000 000F04H 予約 000F08H BT8PCSR/BT8PRLL [R/W] XXXXXXXX XXXXXXXX BT8STC [R/W] 00000000 000F0CH 000F10H BT9PCSR/BT9PRLL [R/W] XXXXXXXX XXXXXXXX 000F1CH BT9TMCR [R/W] 00000000 00000000 ベースタイマ ch.9 予約 BT9PDUT/BT9PRLH [R/W], BT9DTBF [R] XXXXXXXX XXXXXXXX 予約 BTATMR [R] 00000000 00000000 BTATMCR [R/W] 00000000 00000000 BTASTC [R/W] 00000000 000F24H 予約 000F28H BTAPCSR/BTAPRLL [R/W] XXXXXXXX XXXXXXXX 000F2CH ベースタイマ ch.10 予約 BTAPDUT/BTAPRLH [R/W], BTADTBF [R] XXXXXXXX XXXXXXXX 予約 BTBTMR [R] 00000000 00000000 000F34H 予約 000F38H BTBPCSR/BTBPRLL [R/W] XXXXXXXX XXXXXXXX 000F40H BT8PDUT/BT8PRLH [R/W], BT8DTBF [R] XXXXXXXX XXXXXXXX BT9STC [R/W] 00000000 000F18H 000F3CH 予約 BT9TMR [R] 00000000 00000000 予約 000F30H ベースタイマ ch.8 予約 000F14H 000F20H BT8TMCR [R/W] 00000000 00000000 BTSEL89AB [R/W] 00000000 BTBTMCR [R/W] 00000000 00000000 BTBSTC [R/W] 00000000 ベースタイマ ch.11 予約 BTBPDUT/BTBPRLH [R/W], BTBDTBF [R] XXXXXXXX XXXXXXXX BTSSSR [W] -------- -------- 予約 予約 予約 ∼ 001FFCH 776 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 +1 ブロック +2 002000H MCMR0 [R/W] -------- -------- -------- -0000000 002004H MCMR1 [R/W] -------- -------- -------- -0000000 002008H MCMR2 [R/W] -------- -------- -------- -0000000 00200CH MCMR3 [R/W] -------- -------- -------- -0000000 002010H MCMR4 [R/W] -------- -------- -------- -0000001 002014H MCMR5 [R/W] -------- -------- -------- -0000000 002018H MCMR6 [R/W] -------- -------- -------- -0000000 00201CH MCMR7 [R/W] -------- -------- -------- -0000000 002020H MCTR0 [R/W] 00000101 01011111 11110000 00001111 002024H MCTR1 [R/W] 00000101 01011111 11110000 00001111 002028H MCTR2 [R/W] 00000101 01011111 11110000 00001111 00202CH MCTR3 [R/W] 00000101 01011111 11110000 00001111 002030H MCTR4 [R/W] 00000101 01011111 11110000 00001111 002034H MCTR5 [R/W] 00000101 01011111 11110000 00001111 002038H MCTR6 [R/W] 00000101 01011111 11110000 00001111 00203CH MCTR7 [R/W] 00000101 01011111 11110000 00001111 002040H MCAR0 [R/W] -------- -0001111 -------- 01000000 002044H MCAR1 [R/W] -------- -0001111 -------- 00010000 002048H MCAR2 [R/W] -------- -0001111 -------- 00100000 00204CH MCAR3 [R/W] -------- -0001111 -------- 00110000 002050H MCAR4 [R/W] -------- -0001111 -------- 00000000 002054H MCAR5 [R/W] -------- -0001111 -------- 01010000 002058H MCAR6 [R/W] -------- -0001111 -------- 01100000 00205CH MCAR7 [R/W] -------- -0001111 -------- 01110000 002000H 予約 +3 外部バス インタ フェース 予約 ∼ 0020FCH CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 777 付録 A I/O マップ MB91605A シリーズ 表 A-1 I/O マップ アドレス レジスタ +0 +1 ブロック +2 002100H SDMR [R/W] -------- -------- 00010011 --00-000 002104H SDRTR [R/W] -------0 00000000 00000000 00101000 002108H SDPDR [R/W] -------- -------- 00000000 00000000 00210CH SDTR [R/W] ------00 01000010 00010001 0100--01 002110H SDCMR [R/W] 0------- ---00000 00000000 00000000 002114H 予約 +3 SDRAM インタ フェース 予約 ∼ 0022FCH 002300H 002304H CLKCTL [R/W] ------00 予約 予約 外部バス インタ フェース 予約 ∼ 007FFCH 778 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ 付録 B レジスタ一覧 本製品で利用できるレジスタを示します。 本製品のレジスタをレジスタ略称順に示します。 略称 レジスタ名 アドレス 参照先 ADAT0 A/D 変換結果レジスタ ch.0 000024H 23.4.3 ADAT1 A/D 変換結果レジスタ ch.1 000026H 23.4.3 ADAT2 A/D 変換結果レジスタ ch.2 000028H 23.4.3 ADAT3 A/D 変換結果レジスタ ch.3 00002AH 23.4.3 ADAT4 A A/D 変換結果レジスタ ch.4 00002CH 23.4.3 ADAT5 A/D 変換結果レジスタ ch.5 00002EH 23.4.3 ADAT6 A/D 変換結果レジスタ ch.6 000030H 23.4.3 ADAT7 A/D 変換結果レジスタ ch.7 000032H 23.4.3 ADAT8 A/D 変換結果レジスタ ch.8 000034H 23.4.3 ADAT9 A/D 変換結果レジスタ ch.9 000036H 23.4.3 ADAT10 A/D 変換結果レジスタ ch.10 000038H 23.4.3 ADAT11 A/D 変換結果レジスタ ch.11 00003AH 23.4.3 ADCH ソフト変換アナログ入力選択レジスタ 000022H 23.4.2 ADCTH A/D 制御レジスタ 000020H 23.4.1 ADCTL A/D 制御レジスタ 000021H 23.4.1 ADER ADER 制御レジスタ 0004E0H 17.4.5 APR0 オルタネートポインタレジスタ 0 000D1CH 25.3.10 APR1 オルタネートポインタレジスタ 1 000D3CH 25.3.10 APR2 オルタネートポインタレジスタ 2 000D5CH 25.3.10 APR3 オルタネートポインタレジスタ 3 000D7CH 25.3.10 BCL0 バイトカウントリミットレジスタ 0 000D18H 25.3.9 BCL1 B バイトカウントリミットレジスタ 1 000D38H 25.3.9 BCL2 バイトカウントリミットレジスタ 2 000D58H 25.3.9 BCL3 バイトカウントリミットレジスタ 3 000D78H 25.3.9 BGR00 ボーレートジェネレータレジスタ 00 000067H 24.4.6 ,24.13.6 ,24.21.8 BGR01 ボーレートジェネレータレジスタ 01 000077H 24.4.6 ,24.13.6 ,24.21.8 BGR02 ボーレートジェネレータレジスタ 02 000087H 24.4.6 ,24.13.6 ,24.21.8 BGR03 ボーレートジェネレータレジスタ 03 000097H 24.4.6 ,24.13.6 ,24.21.8 BGR04 ボーレートジェネレータレジスタ 04 0000A7H 24.4.6 ,24.13.6 ,24.21.8 BGR05 ボーレートジェネレータレジスタ 05 0000B7H 24.4.6 ,24.13.6 ,24.21.8 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 779 付録 B レジスタ一覧 MB91605A シリーズ BGR06 ボーレートジェネレータレジスタ 06 0000C7H 24.4.6 ,24.13.6 ,24.21.8 BGR07 ボーレートジェネレータレジスタ 07 0000D7H 24.4.6 ,24.13.6 ,24.21.8 BGR08 ボーレートジェネレータレジスタ 08 000207H 24.4.6 ,24.13.6 ,24.21.8 BGR09 ボーレートジェネレータレジスタ 09 000217H 24.4.6 ,24.13.6 ,24.21.8 BGR0A ボーレートジェネレータレジスタ 0A 000227H 24.4.6 ,24.13.6 ,24.21.8 BGR0B ボーレートジェネレータレジスタ 0B 000237H 24.4.6 ,24.13.6 ,24.21.8 BGR10 ボーレートジェネレータレジスタ 10 000066H 24.4.6 ,24.13.6 ,24.21.8 BGR11 ボーレートジェネレータレジスタ 11 000076H 24.4.6 ,24.13.6 ,24.21.8 BGR12 ボーレートジェネレータレジスタ 12 000086H 24.4.6 ,24.13.6 ,24.21.8 BGR13 ボーレートジェネレータレジスタ 13 000096H 24.4.6 ,24.13.6 ,24.21.8 BGR14 ボーレートジェネレータレジスタ 14 0000A6H 24.4.6 ,24.13.6 ,24.21.8 BGR15 ボーレートジェネレータレジスタ 15 0000B6H 24.4.6 ,24.13.6 ,24.21.8 BGR16 ボーレートジェネレータレジスタ 16 0000C6H 24.4.6 ,24.13.6 ,24.21.8 BGR17 ボーレートジェネレータレジスタ 17 0000D6H 24.4.6 ,24.13.6 ,24.21.8 BGR18 ボーレートジェネレータレジスタ 18 000206H 24.4.6 ,24.13.6 ,24.21.8 BGR19 ボーレートジェネレータレジスタ 19 000216H 24.4.6 ,24.13.6 ,24.21.8 BGR1A ボーレートジェネレータレジスタ 1A 000226H 24.4.6 ,24.13.6 ,24.21.8 BGR1B ボーレートジェネレータレジスタ 1B 000236H 24.4.6 ,24.13.6 ,24.21.8 BMODR バスモードデータレジスタ 0007FCH 6.3.1 BT0PCSR ベースタイマ 0 周期設定レジスタ 000288H 22.8.1.2 ,22.8.3.2 BT0PDUT ベースタイマ 0 デューティ設定レジスタ 00028AH 22.8.1.3 BT0PRLH ベースタイマ 0 H 幅設定リロードレジスタ 00028AH 22.8.2.3 BT0DTBF ベースタイマ 0 データバッファレジスタ 00028AH 22.8.4.2 BT0PRLL ベースタイマ 0 L 幅設定リロードレジスタ 000288H 22.8.2.2 BT0STC ベースタイマ 0 ステータス制御レジスタ 000285H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT0TMCR ベースタイマ 0 タイマ制御レジスタ 000282H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT0TMR ベースタイマ 0 タイマレジスタ 000280H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT1PCSR ベースタイマ 1 周期設定レジスタ 000298H 22.8.1.2 ,22.8.3.2 BT1PDUT ベースタイマ 1 デューティ設定レジスタ 00029AH 22.8.1.3 BT1PRLH ベースタイマ 1 H 幅設定リロードレジスタ 00029AH 22.8.2.3 BT1DTBF ベースタイマ 1 データバッファレジスタ 00029AH 22.8.4.2 BT1PRLL ベースタイマ 1 L 幅設定リロードレジスタ 000298H 22.8.2.2 BT1STC ベースタイマ 1 ステータス制御レジスタ 000295H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT1TMCR ベースタイマ 1 タイマ制御レジスタ 000292H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT1TMR ベースタイマ 1 タイマレジスタ 000290H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT2PCSR ベースタイマ 2 周期設定レジスタ 0002A8H 22.8.1.2 ,22.8.3.2 BT2PDUT ベースタイマ 2 デューティ設定レジスタ 0002AAH 22.8.1.3 BT2PRLH ベースタイマ 2 H 幅設定リロードレジスタ 0002AAH 22.8.2.3 BT2DTBF ベースタイマ 2 データバッファレジスタ 0002AAH 22.8.4.2 BT2PRLL ベースタイマ 2 L 幅設定リロードレジスタ 0002A8H 22.8.2.2 BT2STC ベースタイマ 2 ステータス制御レジスタ 0002A5H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 780 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ BT2TMCR ベースタイマ 2 タイマ制御レジスタ 0002A2H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT2TMR ベースタイマ 2 タイマレジスタ 0002A0H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT3PCSR ベースタイマ 3 周期設定レジスタ 0002B8H 22.8.1.2 ,22.8.3.2 BT3PDUT ベースタイマ 3 デューティ設定レジスタ 0002BAH 22.8.1.3 BT3PRLH ベースタイマ 3 H 幅設定リロードレジスタ 0002BAH 22.8.2.3 BT3DTBF ベースタイマ 3 データバッファレジスタ 0002BAH 22.8.4.2 BT3PRLL ベースタイマ 3 L 幅設定リロードレジスタ 0002B8H 22.8.2.2 BT3STC ベースタイマ 3 ステータス制御レジスタ 0002B5H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT3TMCR ベースタイマ 3 タイマ制御レジスタ 0002B2H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT3TMR ベースタイマ 3 タイマレジスタ 0002B0H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT4PCSR ベースタイマ 4 周期設定レジスタ 0002C8H 22.8.1.2 ,22.8.3.2 BT4PDUT ベースタイマ 4 デューティ設定レジスタ 0002CAH 22.8.1.3 BT4PRLH ベースタイマ 4 H 幅設定リロードレジスタ 0002CAH 22.8.2.3 BT4DTBF ベースタイマ 4 データバッファレジスタ 0002CAH 22.8.4.2 BT4PRLL ベースタイマ 4 L 幅設定リロードレジスタ 0002C8H 22.8.2.2 BT4STC ベースタイマ 4 ステータス制御レジスタ 0002C5H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT4TMCR ベースタイマ 4 タイマ制御レジスタ 0002C2H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT4TMR ベースタイマ 4 タイマレジスタ 0002C0H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT5PCSR ベースタイマ 5 周期設定レジスタ 0002D8H 22.8.1.2 ,22.8.3.2 BT5PDUT ベースタイマ 5 デューティ設定レジスタ 0002DAH 22.8.1.3 BT5PRLH ベースタイマ 5 H 幅設定リロードレジスタ 0002DAH 22.8.2.3 BT5DTBF ベースタイマ 5 データバッファレジスタ 0002DAH 22.8.4.2 BT5PRLL ベースタイマ 5 L 幅設定リロードレジスタ 0002D8H 22.8.2.2 BT5STC ベースタイマ 5 ステータス制御レジスタ 0002D5H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT5TMCR ベースタイマ 5 タイマ制御レジスタ 0002D2H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT5TMR ベースタイマ 5 タイマレジスタ 0002D0H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT6PCSR ベースタイマ 6 周期設定レジスタ 0002E8H 22.8.1.2 ,22.8.3.2 BT6PDUT ベースタイマ 6 デューティ設定レジスタ 0002EAH 22.8.1.3 BT6PRLH ベースタイマ 6 H 幅設定リロードレジスタ 0002EAH 22.8.2.3 BT6DTBF ベースタイマ 6 データバッファレジスタ 0002EAH 22.8.4.2 BT6PRLL ベースタイマ 6 L 幅設定リロードレジスタ 0002E8H 22.8.2.2 BT6STC ベースタイマ 6 ステータス制御レジスタ 0002E5H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT6TMCR ベースタイマ 6 タイマ制御レジスタ 0002E2H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT6TMR ベースタイマ 6 タイマレジスタ 0002E0H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT7PCSR ベースタイマ 7 周期設定レジスタ 0002F8H 22.8.1.2 ,22.8.3.2 BT7PDUT ベースタイマ 7 デューティ設定レジスタ 0002FAH 22.8.1.3 BT7PRLH ベースタイマ 7 H 幅設定リロードレジスタ 0002FAH 22.8.2.3 BT7DTBF ベースタイマ 7 データバッファレジスタ 0002FAH 22.8.4.2 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 781 付録 B レジスタ一覧 MB91605A シリーズ BT7PRLL ベースタイマ 7 L 幅設定リロードレジスタ 0002F8H 22.8.2.2 BT7STC ベースタイマ 7 ステータス制御レジスタ 0002F5H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT7TMCR ベースタイマ 7 タイマ制御レジスタ 0002F2H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT7TMR ベースタイマ 7 タイマレジスタ 0002F0H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT8PCSR ベースタイマ 8 周期設定レジスタ 000F08H 22.8.1.2 ,22.8.3.2 BT8PDUT ベースタイマ 8 デューティ設定レジスタ 000F0AH 22.8.1.3 BT8PRLH ベースタイマ 8 H 幅設定リロードレジスタ 000F0AH 22.8.2.3 BT8DTBF ベースタイマ 8 データバッファレジスタ 000F0AH 22.8.4.2 BT8PRLL ベースタイマ 8 L 幅設定リロードレジスタ 000F08H 22.8.2.2 BT8STC ベースタイマ 8 ステータス制御レジスタ 000F05H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT8TMCR ベースタイマ 8 タイマ制御レジスタ 000F02H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT8TMR ベースタイマ 8 タイマレジスタ 000F00H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BT9PCSR ベースタイマ 9 周期設定レジスタ 000F18H 22.8.1.2 ,22.8.3.2 BT9PDUT ベースタイマ 9 デューティ設定レジスタ 000F1AH 22.8.1.3 BT9PRLH ベースタイマ 9 H 幅設定リロードレジスタ 000F1AH 22.8.2.3 BT9DTBF ベースタイマ 9 データバッファレジスタ 000F1AH 22.8.4.2 BT9PRLL ベースタイマ 9 L 幅設定リロードレジスタ 000F18H 22.8.2.2 BT9STC ベースタイマ 9 ステータス制御レジスタ 000F15H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT9TMCR ベースタイマ 9 タイマ制御レジスタ 000F12H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BT9TMR ベースタイマ 9 タイマレジスタ 000F10H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BTAPCSR ベースタイマ 10 周期設定レジスタ 000F28H 22.8.1.2 ,22.8.3.2 BTAPDUT ベースタイマ 10 デューティ設定レジスタ 000F2AH 22.8.1.3 BTAPRLH ベースタイマ 10 H 幅設定リロードレジスタ 000F2AH 22.8.2.3 BTADTBF ベースタイマ 10 データバッファレジスタ 000F2AH 22.8.4.2 BTAPRLL ベースタイマ 10 L 幅設定リロードレジスタ 000F28H 22.8.2.2 BTASTC ベースタイマ 10 ステータス制御レジスタ 000F25H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BTATMCR ベースタイマ 10 タイマ制御レジスタ 000F22H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BTATMR ベースタイマ 10 タイマレジスタ 000F20H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BTBPCSR ベースタイマ 11 周期設定レジスタ 000F38H 22.8.1.2 ,22.8.3.2 BTBPDUT ベースタイマ 11 デューティ設定レジスタ 000F3AH 22.8.1.3 BTBPRLH ベースタイマ 11 H 幅設定リロードレジスタ 000F3AH 22.8.2.3 BTBDTBF ベースタイマ 11 データバッファレジスタ 000F3AH 22.8.4.2 BTBPRLL ベースタイマ 11 L 幅設定リロードレジスタ 000F38H 22.8.2.2 BTBSTC ベースタイマ 11 ステータス制御レジスタ 000F35H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BTBTMCR ベースタイマ 11 タイマ制御レジスタ 000F32H 22.8.1.1 ,22.8.2.1 ,22.8.3.1 , 22.8.4.1 BTBTMR ベースタイマ 11 タイマレジスタ 000F30H 22.8.1.4 ,22.8.2.4 ,22.8.3.3 BTSEL0123 入出力選択レジスタ 0123 0002BCH 21.4.1 BTSEL4567 入出力選択レジスタ 4567 0002FCH 21.4.2 782 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ BTSEL89A 入出力選択レジスタ 89AB 000F3CH 21.4.3 BTSSSR 同時ソフト起動レジスタ 000F3EH 21.4.4 CARR 命令 / データキャッシュ領域設定レジスタ 0003E0H 4.3.1 CCFR0 チャネルコンフィギュレーションレジスタ 0 000D00H 25.3.2 CCFR1 チャネルコンフィギュレーションレジスタ 1 000D20H 25.3.2 CCFR2 C チャネルコンフィギュレーションレジスタ 2 000D40H 25.3.2 CCFR3 チャネルコンフィギュレーションレジスタ 3 000D60H 25.3.2 CCTR0 チャネルコントロールレジスタ 0 000D04H 25.3.4 CCTR1 チャネルコントロールレジスタ 1 000D24H 25.3.4 CCTR2 チャネルコントロールレジスタ 2 000D44H 25.3.4 CCTR3 チャネルコントロールレジスタ 3 000D64H 25.3.4 CLKCTL クロックコントロールレジスタ 002300H 16.3.9 CMONR クロックソース監視レジスタ 000511H 7.4.2 CSELR クロックソース設定レジスタ 000510H 7.4.1 CSTBR 発振安定待ち設定レジスタ 000516H 7.4.3 CSTR0 チャネルステータスレジスタ 0 000D02H 25.3.3 CSTR1 チャネルステータスレジスタ 1 000D22H 25.3.3 CSTR2 チャネルステータスレジスタ 2 000D42H 25.3.3 CSTR3 チャネルステータスレジスタ 3 000D62H 25.3.3 DBA0 デスティネーションベースアドレスレジスタ 0 000D0CH 25.3.6 DBA1 デスティネーションベースアドレスレジスタ 1 000D2CH 25.3.6 DBA2 デスティネーションベースアドレスレジスタ 2 000D4CH 25.3.6 DBA3 D デスティネーションベースアドレスレジスタ 3 000D6CH 25.3.6 DCHCR データキャッシュ制御レジスタ 0003E3H 5.3.1 DDR2 データ方向レジスタ 2 000402H 17.4.2 DDR3 データ方向レジスタ 3 000403H 17.4.2 DDR4 データ方向レジスタ 4 000404H 17.4.2 DDR5 データ方向レジスタ 5 000405H 17.4.2 DDR6 データ方向レジスタ 6 000406H 17.4.2 DDR7 データ方向レジスタ 7 000407H 17.4.2 DDR8 データ方向レジスタ 8 000408H 17.4.2 DDR9 データ方向レジスタ 9 000409H 17.4.2 DDRA データ方向レジスタ A 00040AH 17.4.2 DDRB データ方向レジスタ B 00040BH 17.4.2 DDRC データ方向レジスタ C 00040CH 17.4.2 DDRD データ方向レジスタ D 00040DH 17.4.2 DDRE データ方向レジスタ E 00040EH 17.4.2 DFUNC データキャッシュ機能レジスタ 0003EAH 5.3.3 DICR 遅延割込み制御レジスタ 000044H 15.3.1 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 783 付録 B レジスタ一覧 MB91605A シリーズ DILVR DMA 転送抑止割込みレベルレジスタ 0007EFH 25.3.12 DIVR0 分周設定レジスタ 0 000488H 8.4.1 DIVR1 分周設定レジスタ 1 000489H 8.4.2 DIVR2 分周設定レジスタ 2 00048AH 8.4.3 DNMIR DMA 転送抑止 NMI フラグレジスタ 0007EEH 25.3.11 DSIZE データキャッシュサイズレジスタ 0003E8H 5.3.2 EIRR0 外部割込み要因レジスタ 0 000040H 18.4.2 EIRR1 外部割込み要因レジスタ 1 0000E0H 18.4.2 EIRR2 外部割込み要因レジスタ 2 0000E4H 18.4.2 ELVR0 外部割込み要求レベル設定レジスタ 0 000042H 18.4.1 ELVR1 外部割込み要求レベル設定レジスタ 1 0000E2H 18.4.1 ELVR2 外部割込み要求レベル設定レジスタ 2 0000E6H 18.4.1 ENIR0 割込み許可レジスタ 0 000041H 18.4.3 ENIR1 割込み許可レジスタ 1 0000E1H 18.4.3 ENIR2 割込み許可レジスタ 2 0000E5H 18.4.3 ESCR0 拡張通信制御レジスタ 0 000063H 24.4.4 ,24.13.4 ESCR1 E 拡張通信制御レジスタ 1 000073H 24.4.4 ,24.13.4 ESCR2 拡張通信制御レジスタ 2 000083H 24.4.4 ,24.13.4 ESCR3 拡張通信制御レジスタ 3 000093H 24.4.4 ,24.13.4 ESCR4 拡張通信制御レジスタ 4 0000A3H 24.4.4 ,24.13.4 ESCR5 拡張通信制御レジスタ 5 0000B3H 24.4.4 ,24.13.4 ESCR6 拡張通信制御レジスタ 6 0000C3H 24.4.4 ,24.13.4 ESCR7 拡張通信制御レジスタ 7 0000D3H 24.4.4 ,24.13.4 ESCR8 拡張通信制御レジスタ 8 000203H 24.4.4 ,24.13.4 ESCR9 拡張通信制御レジスタ 9 000213H 24.4.4 ,24.13.4 ESCRA 拡張通信制御レジスタ A 000223H 24.4.4 ,24.13.4 ESCRB 拡張通信制御レジスタ B 000233H 24.4.4 ,24.13.4 FBYTE10 FIFO1 バイトレジスタ 0 00006FH 24.4.9 ,24.13.9 ,24.21.11 FBYTE11 FIFO1 バイトレジスタ 1 00007FH 24.4.9 ,24.13.9 ,24.21.11 FBYTE12 FIFO1 バイトレジスタ 2 00008FH 24.4.9 ,24.13.9 ,24.21.11 FBYTE13 FIFO1 バイトレジスタ 3 00009FH 24.4.9 ,24.13.9 ,24.21.11 FBYTE14 FIFO1 バイトレジスタ 4 0000AFH 24.4.9 ,24.13.9 ,24.21.11 FBYTE15 FIFO1 バイトレジスタ 5 0000BFH 24.4.9 ,24.13.9 ,24.21.11 FBYTE16 F FIFO1 バイトレジスタ 6 0000CFH 24.4.9 ,24.13.9 ,24.21.11 FBYTE17 FIFO1 バイトレジスタ 7 0000DFH 24.4.9 ,24.13.9 ,24.21.11 FBYTE20 FIFO2 バイトレジスタ 0 00006EH 24.4.9 ,24.13.9 ,24.21.11 FBYTE21 FIFO2 バイトレジスタ 1 00007EH 24.4.9 ,24.13.9 ,24.21.11 FBYTE22 FIFO2 バイトレジスタ 2 00008EH 24.4.9 ,24.13.9 ,24.21.11 FBYTE23 FIFO2 バイトレジスタ 3 00009EH 24.4.9 ,24.13.9 ,24.21.11 784 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ FBYTE24 FIFO2 バイトレジスタ 4 0000AEH 24.4.9 ,24.13.9 ,24.21.11 FBYTE25 FIFO2 バイトレジスタ 5 0000BEH 24.4.9 ,24.13.9 ,24.21.11 FBYTE26 FIFO2 バイトレジスタ 6 0000CEH 24.4.9 ,24.13.9 ,24.21.11 FBYTE27 FIFO2 バイトレジスタ 7 0000DEH 24.4.9 ,24.13.9 ,24.21.11 FCR00 FIFO 制御レジスタ 00 00006DH 24.4.8 ,24.13.8 ,24.21.10 FCR01 FIFO 制御レジスタ 01 00007DH 24.4.8 ,24.13.8 ,24.21.10 FCR02 FIFO 制御レジスタ 02 00008DH 24.4.8 ,24.13.8 ,24.21.10 FCR03 FIFO 制御レジスタ 03 00009DH 24.4.8 ,24.13.8 ,24.21.10 FCR04 FIFO 制御レジスタ 04 0000ADH 24.4.8 ,24.13.8 ,24.21.10 FCR05 FIFO 制御レジスタ 05 0000BDH 24.4.8 ,24.13.8 ,24.21.10 FCR06 FIFO 制御レジスタ 06 0000CDH 24.4.8 ,24.13.8 ,24.21.10 FCR07 FIFO 制御レジスタ 07 0000DDH 24.4.8 ,24.13.8 ,24.21.10 FCR10 FIFO 制御レジスタ 10 00006CH 24.4.7 ,24.13.7 ,24.21.9 FCR11 FIFO 制御レジスタ 11 00007CH 24.4.7 ,24.13.7 ,24.21.9 FCR12 FIFO 制御レジスタ 12 00008CH 24.4.7 ,24.13.7 ,24.21.9 FCR13 FIFO 制御レジスタ 13 00009CH 24.4.7 ,24.13.7 ,24.21.9 FCR14 FIFO 制御レジスタ 14 0000ACH 24.4.7 ,24.13.7 ,24.21.9 FCR15 FIFO 制御レジスタ 15 0000BCH 24.4.7 ,24.13.7 ,24.21.9 FCR16 FIFO 制御レジスタ 16 0000CCH 24.4.7 ,24.13.7 ,24.21.9 FCR17 FIFO 制御レジスタ 17 0000DCH 24.4.7 ,24.13.7 ,24.21.9 グローバルコンフィギュレーションレジスタ 000C00H 25.3.1 I2C バス制御レジスタ 0 000060H 24.21.1 G GCFR I IBCR0 IBCR1 I バス制御レジスタ 1 000070H 24.21.1 IBCR2 I2C バス制御レジスタ 2 000080H 24.21.1 IBCR3 I2C バス制御レジスタ 3 000090H 24.21.1 IBCR4 I2C バス制御レジスタ 4 0000A0H 24.21.1 IBCR5 I2C バス制御レジスタ 5 0000B0H 24.21.1 IBCR6 I2C バス制御レジスタ 6 0000C0H 24.21.1 IBCR7 I2C バス制御レジスタ 7 0000D0H 24.21.1 IBCR8 I2C バス制御レジスタ 8 000200H 24.21.1 IBCR9 I2C バス制御レジスタ 9 000210H 24.21.1 IBCRA 2C 2C バス制御レジスタ A 000220H 24.21.1 2C バス制御レジスタ B 000230H 24.21.1 I IBCRB I IBSR0 I2C バスステータスレジスタ 0 000063H 24.21.3 IBSR1 I2C バスステータスレジスタ 1 000073H 24.21.3 IBSR2 I2C バスステータスレジスタ 2 000083H 24.21.3 IBSR3 I2C バスステータスレジスタ 3 000093H 24.21.3 IBSR4 I2C バスステータスレジスタ 4 0000A3H 24.21.3 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 785 付録 B レジスタ一覧 MB91605A シリーズ IBSR5 I2C バスステータスレジスタ 5 0000B3H 24.21.3 IBSR6 I2C バスステータスレジスタ 6 IBSR7 0000C3H 24.21.3 2 0000D3H 24.21.3 2 I C バスステータスレジスタ 7 IBSR8 I C バスステータスレジスタ 8 000203H 24.21.3 IBSR9 I2C バスステータスレジスタ 9 000213H 24.21.3 IBSRA I2C バスステータスレジスタ A 000223H 24.21.3 IBSRB I2C バスステータスレジスタ B 000233H 24.21.3 ICHCR 命令キャッシュ制御レジスタ 0003E7H 4.3.2 ICR00 割込みコントロールレジスタ 00 000440H 12.3.1 ICR01 割込みコントロールレジスタ 01 000441H 12.3.1 ICR02 割込みコントロールレジスタ 02 000442H 12.3.1 ICR03 割込みコントロールレジスタ 03 000443H 12.3.1 ICR04 割込みコントロールレジスタ 04 000444H 12.3.1 ICR05 割込みコントロールレジスタ 05 000445H 12.3.1 ICR06 割込みコントロールレジスタ 06 000446H 12.3.1 ICR07 割込みコントロールレジスタ 07 000447H 12.3.1 ICR08 割込みコントロールレジスタ 08 000448H 12.3.1 ICR09 割込みコントロールレジスタ 09 000449H 12.3.1 ICR10 割込みコントロールレジスタ 10 00044AH 12.3.1 ICR11 割込みコントロールレジスタ 11 00044BH 12.3.1 ICR12 割込みコントロールレジスタ 12 00044CH 12.3.1 ICR13 割込みコントロールレジスタ 13 00044DH 12.3.1 ICR14 割込みコントロールレジスタ 14 00044EH 12.3.1 ICR15 割込みコントロールレジスタ 15 00044FH 12.3.1 ICR16 割込みコントロールレジスタ 16 000450H 12.3.1 ICR17 割込みコントロールレジスタ 17 000451H 12.3.1 ICR18 割込みコントロールレジスタ 18 000452H 12.3.1 ICR19 割込みコントロールレジスタ 19 000453H 12.3.1 ICR20 割込みコントロールレジスタ 20 000454H 12.3.1 ICR21 割込みコントロールレジスタ 21 000455H 12.3.1 ICR22 割込みコントロールレジスタ 22 000456H 12.3.1 ICR23 割込みコントロールレジスタ 23 000457H 12.3.1 ICR24 割込みコントロールレジスタ 24 000458H 12.3.1 ICR25 割込みコントロールレジスタ 25 000459H 12.3.1 ICR26 割込みコントロールレジスタ 26 00045AH 12.3.1 ICR27 割込みコントロールレジスタ 27 00045BH 12.3.1 ICR28 割込みコントロールレジスタ 28 00045CH 12.3.1 ICR29 割込みコントロールレジスタ 29 00045DH 12.3.1 ICR30 割込みコントロールレジスタ 30 00045EH 12.3.1 ICR31 割込みコントロールレジスタ 31 00045FH 12.3.1 ICR32 割込みコントロールレジスタ 32 000460H 12.3.1 ICR33 割込みコントロールレジスタ 33 000461H 12.3.1 ICR34 割込みコントロールレジスタ 34 000462H 12.3.1 ICR35 割込みコントロールレジスタ 35 000463H 12.3.1 786 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ ICR36 割込みコントロールレジスタ 36 000464H 12.3.1 ICR37 割込みコントロールレジスタ 37 000465H 12.3.1 ICR38 割込みコントロールレジスタ 38 000466H 12.3.1 ICR39 割込みコントロールレジスタ 39 000467H 12.3.1 ICR40 割込みコントロールレジスタ 40 000468H 12.3.1 ICR41 割込みコントロールレジスタ 41 000469H 12.3.1 ICR42 割込みコントロールレジスタ 42 00046AH 12.3.1 ICR43 割込みコントロールレジスタ 43 00046BH 12.3.1 ICR44 割込みコントロールレジスタ 44 00046CH 12.3.1 ICR45 割込みコントロールレジスタ 45 00046DH 12.3.1 ICR46 割込みコントロールレジスタ 46 00046EH 12.3.1 ICR47 割込みコントロールレジスタ 47 00046FH 12.3.1 ICSEL0 周辺機能による DMA 転送要求のクリア選択レジスタ 0 0004F0H 26.3.2 ICSEL1 周辺機能による DMA 転送要求のクリア選択レジスタ 1 0004F1H 26.3.3 ICSEL2 周辺機能による DMA 転送要求のクリア選択レジスタ 2 0004F2H 26.3.4 ICSEL3 周辺機能による DMA 転送要求のクリア選択レジスタ 3 0004F3H 26.3.5 IFUNC 命令キャッシュ機能レジスタ 0003EEH 4.3.4 IORR0 IO 転送要求設定レジスタ 0 000490H 26.3.1 IORR1 IO 転送要求設定レジスタ 1 000491H 26.3.1 IORR2 IO 転送要求設定レジスタ 2 000492H 26.3.1 IORR3 IO 転送要求設定レジスタ 3 000493H 26.3.1 IRPR0H 割込み要求一括読出しレジスタ 0 上位 0000E8H 14.3.1 ISBA0 7 ビットスレーブアドレスレジスタ 0 000069H 24.21.7 ISBA1 7 ビットスレーブアドレスレジスタ 1 000079H 24.21.7 ISBA2 7 ビットスレーブアドレスレジスタ 2 000089H 24.21.7 ISBA3 7 ビットスレーブアドレスレジスタ 3 000099H 24.21.7 ISBA4 7 ビットスレーブアドレスレジスタ 4 0000A9H 24.21.7 ISBA5 7 ビットスレーブアドレスレジスタ 5 0000B9H 24.21.7 ISBA6 7 ビットスレーブアドレスレジスタ 6 0000C9H 24.21.7 ISBA7 7 ビットスレーブアドレスレジスタ 7 0000D9H 24.21.7 ISBA8 7 ビットスレーブアドレスレジスタ 8 000209H 24.21.7 ISBA9 7 ビットスレーブアドレスレジスタ 9 000219H 24.21.7 ISBAA 7 ビットスレーブアドレスレジスタ A 000229H 24.21.7 ISBAB 7 ビットスレーブアドレスレジスタ B 000239H 24.21.7 ISIZE 命令キャッシュサイズレジスタ 0003ECH 4.3.3 ISMK0 7 ビットスレーブアドレスマスクレジスタ 0 000068H 24.21.6 ISMK1 7 ビットスレーブアドレスマスクレジスタ 1 000078H 24.21.6 ISMK2 7 ビットスレーブアドレスマスクレジスタ 2 000088H 24.21.6 ISMK3 7 ビットスレーブアドレスマスクレジスタ 3 000098H 24.21.6 ISMK4 7 ビットスレーブアドレスマスクレジスタ 4 0000A8H 24.21.6 ISMK5 7 ビットスレーブアドレスマスクレジスタ 5 0000B8H 24.21.6 ISMK6 7 ビットスレーブアドレスマスクレジスタ 6 0000C8H 24.21.6 ISMK7 7 ビットスレーブアドレスマスクレジスタ 7 0000D8H 24.21.6 ISMK8 7 ビットスレーブアドレスマスクレジスタ 8 000208H 24.21.6 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 787 付録 B レジスタ一覧 MB91605A シリーズ ISMK9 7 ビットスレーブアドレスマスクレジスタ 9 000218H 24.21.6 ISMKA 7 ビットスレーブアドレスマスクレジスタ A 000228H 24.21.6 ISMKB 7 ビットスレーブアドレスマスクレジスタ B 000238H 24.21.6 MCAR0 SRAM/FLASH エリアレジスタ 0 002040H 16.3.3 MCAR1 SRAM/FLASH エリアレジスタ 1 002044H 16.3.3 MCAR2 M SRAM/FLASH エリアレジスタ 2 002048H 16.3.3 MCAR3 SRAM/FLASH エリアレジスタ 3 00204CH 16.3.3 MCAR4 SRAM/FLASH エリアレジスタ 4 002050H 16.3.3 MCAR5 SRAM/FLASH エリアレジスタ 5 002054H 16.3.3 MCAR6 SRAM/FLASH エリアレジスタ 6 002058H 16.3.3 MCAR7 SRAM/FLASH エリアレジスタ 7 00205CH 16.3.3 MCMR0 SRAM/FLASH モードレジスタ 0 002000H 16.3.1 MCMR1 SRAM/FLASH モードレジスタ 1 002004H 16.3.1 MCMR2 SRAM/FLASH モードレジスタ 2 002008H 16.3.1 MCMR3 SRAM/FLASH モードレジスタ 3 00200CH 16.3.1 MCMR4 SRAM/FLASH モードレジスタ 4 002010H 16.3.1 MCMR5 SRAM/FLASH モードレジスタ 5 002014H 16.3.1 MCMR6 SRAM/FLASH モードレジスタ 6 002018H 16.3.1 MCMR7 SRAM/FLASH モードレジスタ 7 00201CH 16.3.1 MCTR0 SRAM/FLASH タイミングレジスタ 0 002020H 16.3.2 MCTR1 SRAM/FLASH タイミングレジスタ 1 002024H 16.3.2 MCTR2 SRAM/FLASH タイミングレジスタ 2 002028H 16.3.2 MCTR3 SRAM/FLASH タイミングレジスタ 3 00202CH 16.3.2 MCTR4 SRAM/FLASH タイミングレジスタ 4 002030H 16.3.2 MCTR5 SRAM/FLASH タイミングレジスタ 5 002034H 16.3.2 MCTR6 SRAM/FLASH タイミングレジスタ 6 002038H 16.3.2 MCTR7 SRAM/FLASH タイミングレジスタ 7 00203CH 16.3.2 MODR モードレジスタ 0007FDH 6.3.2 MTMCR メインタイマ制御レジスタ 000512H 9.3.1 PCRB プルアップ制御レジスタ B 00042BH 17.4.4 PCRC プルアップ制御レジスタ C 00042CH 17.4.4 PCRE プルアップ制御レジスタ E 00042EH 17.4.4 PDR2 ポートデータレジスタ 2 000002H 17.4.1 PDR3 P ポートデータレジスタ 3 000003H 17.4.1 PDR4 ポートデータレジスタ 4 000004H 17.4.1 PDR5 ポートデータレジスタ 5 000005H 17.4.1 PDR6 ポートデータレジスタ 6 000006H 17.4.1 PDR7 ポートデータレジスタ 7 000007H 17.4.1 PDR8 ポートデータレジスタ 8 000008H 17.4.1 788 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ PDR9 ポートデータレジスタ 9 000009H 17.4.1 PDRA ポートデータレジスタ A 00000AH 17.4.1 PDRB ポートデータレジスタ B 00000BH 17.4.1 PDRC ポートデータレジスタ C 00000CH 17.4.1 PDRD ポートデータレジスタ D 00000DH 17.4.1 PDRE ポートデータレジスタ E 00000EH 17.4.1 PFR2 ポートファンクションレジスタ 2 0004A2H 17.4.3 PFR3 ポートファンクションレジスタ 3 0004A3H 17.4.3 PFR4 ポートファンクションレジスタ 4 0004A4H 17.4.3 PFR5 ポートファンクションレジスタ 5 0004A5H 17.4.3 PFR6 ポートファンクションレジスタ 6 0004A6H 17.4.3 PFR7 ポートファンクションレジスタ 7 0004A7H 17.4.3 PFR8 ポートファンクションレジスタ 8 0004A8H 17.4.3 PFR9 ポートファンクションレジスタ 9 0004A9H 17.4.3 PFRA ポートファンクションレジスタ A 0004AAH 17.4.3 PFRB ポートファンクションレジスタ B 0004ABH 17.4.3 PFRC ポートファンクションレジスタ C 0004ACH 17.4.3 PFRD ポートファンクションレジスタ D 0004ADH 17.4.3 PFRE ポートファンクションレジスタ E 0004AEH 17.4.3 PIX0 プライマリインデックスレジスタ 0 000D10H 25.3.7 PIX1 プライマリインデックスレジスタ 1 000D30H 25.3.7 PIX2 プライマリインデックスレジスタ 2 000D50H 25.3.7 PIX3 プライマリインデックスレジスタ 3 000D70H 25.3.7 PLL 設定レジスタ 000514H 7.4.4 RCADR1 デバイスアドレス設定レジスタ 1 0000F6H 27.2.3 RCADR2 デバイスアドレス設定レジスタ 2 0000F7H 27.2.3 RCCKD クロック分周レジスタ 0000FCH 27.2.8 RCCR リモコン受信制御レジスタ 0000F0H 27.2.1 RCDAHW PLLCR R High 幅設定レジスタ A 0000F3H 27.2.5 RCDBHW High 幅設定レジスタ B 0000F4H 27.2.6 RCDTHH データ格納レジスタ HH 0000F8H 27.2.7 RCDTHL データ格納レジスタ HL 0000F9H 27.2.7 RCDTLH データ格納レジスタ LH 0000FAH 27.2.7 RCDTLL データ格納レジスタ LL 0000FBH 27.2.7 RCSHW スタートビット High 幅設定レジスタ 0000F2H 27.2.4 RCST リモコン受信割込み制御レジスタ 0000F1H 27.2.2 RDR0 受信データレジスタ 0 000064H 24.4.5 ,24.13.5 ,24.21.5 RDR1 受信データレジスタ 1 000074H 24.4.5 ,24.13.5 ,24.21.5 RDR2 受信データレジスタ 2 000084H 24.4.5 ,24.13.5 ,24.21.5 RDR3 受信データレジスタ 3 000094H 24.4.5 ,24.13.5 ,24.21.5 受信データレジスタ 4 0000A4H 24.4.5 ,24.13.5 ,24.21.5 RDR4 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 789 付録 B レジスタ一覧 MB91605A シリーズ RDR5 受信データレジスタ 5 0000B4H 24.4.5 ,24.13.5 ,24.21.5 RDR6 受信データレジスタ 6 0000C4H 24.4.5 ,24.13.5 ,24.21.5 RDR7 受信データレジスタ 7 0000D4H 24.4.5 ,24.13.5 ,24.21.5 RDR8 受信データレジスタ 8 000204H 24.4.5 ,24.13.5 ,24.21.5 RDR9 受信データレジスタ 9 000214H 24.4.5 ,24.13.5 ,24.21.5 RDRA 受信データレジスタ A 000224H 24.4.5 ,24.13.5 ,24.21.5 RDRB 受信データレジスタ B 000234H 24.4.5 ,24.13.5 ,24.21.5 RDRM8 受信データミラーレジスタ 8 000240H 24.13.11 RDRM9 受信データミラーレジスタ 9 000241H 24.13.11 RDRMA 受信データミラーレジスタ A 000242H 24.13.11 RDRMB 受信データミラーレジスタ B 000243H 24.13.11 RSTCR リセット制御レジスタ 000481H 11.4.2 リセット要因レジスタ 000480H 11.4.1 SBA0 ソースベースアドレスレジスタ 0 000D08H 25.3.5 SBA1 ソースベースアドレスレジスタ 1 000D28H 25.3.5 SBA2 ソースベースアドレスレジスタ 2 000D48H 25.3.5 SBA3 RSTRR S ソースベースアドレスレジスタ 3 000D68H 25.3.5 SCR0 シリアル制御レジスタ 0 000060H 24.4.1 ,24.13.1 SCR1 シリアル制御レジスタ 1 000070H 24.4.1 ,24.13.1 SCR2 シリアル制御レジスタ 2 000080H 24.4.1 ,24.13.1 SCR3 シリアル制御レジスタ 3 000090H 24.4.1 ,24.13.1 SCR4 シリアル制御レジスタ 4 0000A0H 24.4.1 ,24.13.1 SCR5 シリアル制御レジスタ 5 0000B0H 24.4.1 ,24.13.1 SCR6 シリアル制御レジスタ 6 0000C0H 24.4.1 ,24.13.1 SCR7 シリアル制御レジスタ 7 0000D0H 24.4.1 ,24.13.1 SCR8 シリアル制御レジスタ 8 000200H 24.4.1 ,24.13.1 SCR9 シリアル制御レジスタ 9 000210H 24.4.1 ,24.13.1 SCRA シリアル制御レジスタ A 000220H 24.4.1 ,24.13.1 SCRB シリアル制御レジスタ B 000230H 24.4.1 ,24.13.1 SDCMR SDRAM コマンドレジスタ 002110H 16.3.8 SDMR SDRAM モードレジスタ 002100H 16.3.4 SDPDR SDRAM パワーダウンカウントレジスタ 002108H 16.3.6 SDRTR SDRAM リフレッシュタイマレジスタ 002104H 16.3.5 SDTR SDRAM タイミングレジスタ 00210CH 16.3.7 SIX0 セカンダリインデックスレジスタ 0 000D14H 25.3.8 SIX1 セカンダリインデックスレジスタ 1 000D34H 25.3.8 SIX2 セカンダリインデックスレジスタ 2 000D54H 25.3.8 SIX3 セカンダリインデックスレジスタ 3 000D74H 25.3.8 SLPRR スリープレート設定レジスタ 000483H 10.3.2 SMR0 シリアルモードレジスタ 0 000061H 24.4.2 ,24.13.2 ,24.21.2 シリアルモードレジスタ 1 000071H 24.4.2 ,24.13.2 ,24.21.2 SMR1 790 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 B レジスタ一覧 MB91605A シリーズ SMR2 シリアルモードレジスタ 2 000081H 24.4.2 ,24.13.2 ,24.21.2 SMR3 シリアルモードレジスタ 3 000091H 24.4.2 ,24.13.2 ,24.21.2 SMR4 シリアルモードレジスタ 4 0000A1H 24.4.2 ,24.13.2 ,24.21.2 SMR5 シリアルモードレジスタ 5 0000B1H 24.4.2 ,24.13.2 ,24.21.2 SMR6 シリアルモードレジスタ 6 0000C1H 24.4.2 ,24.13.2 ,24.21.2 SMR7 シリアルモードレジスタ 7 0000D1H 24.4.2 ,24.13.2 ,24.21.2 SMR8 シリアルモードレジスタ 8 000201H 24.4.2 ,24.13.2 ,24.21.2 SMR9 シリアルモードレジスタ 9 000211H 24.4.2 ,24.13.2 ,24.21.2 SMRA シリアルモードレジスタ A 000221H 24.4.2 ,24.13.2 ,24.21.2 SMRB シリアルモードレジスタ B 000231H 24.4.2 ,24.13.2 ,24.21.2 SSEL89AB シリアルモード選択レジスタ 89AB 000244H 24.13.10 SSR0 シリアルステータスレジスタ 0 000062H 24.4.3 ,24.13.3 ,24.21.4 SSR1 シリアルステータスレジスタ 1 000072H 24.4.3 ,24.13.3 ,24.21.4 SSR2 シリアルステータスレジスタ 2 000082H 24.4.3 ,24.13.3 ,24.21.4 SSR3 シリアルステータスレジスタ 3 000092H 24.4.3 ,24.13.3 ,24.21.4 SSR4 シリアルステータスレジスタ 4 0000A2H 24.4.3 ,24.13.3 ,24.21.4 SSR5 シリアルステータスレジスタ 5 0000B2H 24.4.3 ,24.13.3 ,24.21.4 SSR6 シリアルステータスレジスタ 6 0000C2H 24.4.3 ,24.13.3 ,24.21.4 SSR7 シリアルステータスレジスタ 7 0000D2H 24.4.3 ,24.13.3 ,24.21.4 SSR8 シリアルステータスレジスタ 8 000202H 24.4.3 ,24.13.3 ,24.21.4 SSR9 シリアルステータスレジスタ 9 000212H 24.4.3 ,24.13.3 ,24.21.4 SSRA シリアルステータスレジスタ A 000222H 24.4.3 ,24.13.3 ,24.21.4 SSRB シリアルステータスレジスタ B 000232H 24.4.3 ,24.13.3 ,24.21.4 スタンバイ制御レジスタ 000482H 10.3.1 TDR0 送信データレジスタ 0 000064H 24.4.5 ,24.13.5 ,24.21.5 TDR1 送信データレジスタ 1 000074H 24.4.5 ,24.13.5 ,24.21.5 TDR2 送信データレジスタ 2 000084H 24.4.5 ,24.13.5 ,24.21.5 TDR3 送信データレジスタ 3 000094H 24.4.5 ,24.13.5 ,24.21.5 TDR4 STBCR T 送信データレジスタ 4 0000A4H 24.4.5 ,24.13.5 ,24.21.5 TDR5 送信データレジスタ 5 0000B4H 24.4.5 ,24.13.5 ,24.21.5 TDR6 送信データレジスタ 6 0000C4H 24.4.5 ,24.13.5 ,24.21.5 TDR7 送信データレジスタ 7 0000D4H 24.4.5 ,24.13.5 ,24.21.5 TDR8 送信データレジスタ 8 000204H 24.4.5 ,24.13.5 ,24.21.5 TDR9 送信データレジスタ 9 000214H 24.4.5 ,24.13.5 ,24.21.5 TDRA 送信データレジスタ A 000224H 24.4.5 ,24.13.5 ,24.21.5 TDRB 送信データレジスタ B 000234H 24.4.5 ,24.13.5 ,24.21.5 TDRM8 送信データミラーレジスタ 8 000240H 24.13.11 TDRM9 送信データミラーレジスタ 9 000241H 24.13.11 TDRMA 送信データミラーレジスタ A 000242H 24.13.11 TDRMB 送信データミラーレジスタ B 000243H 24.13.11 コントロールステータスレジスタ 0 00004EH 20.4.1 TMCSR0 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 791 付録 B レジスタ一覧 MB91605A シリーズ TMCSR1 コントロールステータスレジスタ 1 000056H 20.4.1 TMCSR2 コントロールステータスレジスタ 2 00005EH 20.4.1 TMR0 16 ビットタイマレジスタ 0 00004AH 20.4.3 TMR1 17 ビットタイマレジスタ 0 000052H 20.4.3 TMR2 18 ビットタイマレジスタ 0 00005AH 20.4.3 TMRLRA0 16 ビットタイマリロードレジスタ A0 000048H 20.4.2 TMRLRA1 17 ビットタイマリロードレジスタ A0 000050H 20.4.2 TMRLRA2 18 ビットタイマリロードレジスタ A0 000058H 20.4.2 ウォッチドッグタイマ 0 クリアレジスタ 00003DH 19.3.2 ウォッチドッグタイマ 0 制御レジスタ 00003CH 19.3.1 W WDTCPR0 WDTCR0 792 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 C 割込みベクタ MB91605A シリーズ 付録 C 割込みベクタ 本製品の割込みベクタテーブルについて説明します。割込み要因と割込みベクタおよび割込 みコントロールレジスタ (ICR00 ∼ ICR47) の割り当てが配置されています。 割込要因 割込番号 10 進 16 進 割込 レベル オフセット TBR デフォルト のアドレス DMA 転送 要求 リセット 0 00 − 3FCH 000FFFFCH − システム予約 1 01 − 3F8H 000FFFF8H − システム予約 2 02 − 3F4H 000FFFF4H − システム予約 3 03 − 3F0H 000FFFF0H − システム予約 4 04 − 3ECH 000FFFECH − システム予約 5 05 − 3E8H 000FFFE8H − システム予約 6 06 − 3E4H 000FFFE4H − システム予約 7 07 − 3E0H 000FFFE0H − システム予約 8 08 − 3DCH 000FFFDCH − INTE 命令 9 09 − 3D8H 000FFFD8H − 命令ブレーク例外 10 0A − 3D4H 000FFFD4H − オペランドブレーク 11 0B − 3D0H 000FFFD0H − ステップトレーストラップ 12 0C − 3CCH 000FFFCCH − NMI 要求 (tool) 13 0D − 3C8H 000FFFC8H − 未定義命令例外 14 0E − 3C4H 000FFFC4H − NMI 要求 15 0F 15 (FH) 3C0H 000FFFC0H − 3BCH 000FFFBCH ○ 外部割込み ch.0 16 10 固定 ICR00 外部割込み ch.1 17 11 ICR01 3B8H 000FFFB8H ○ 外部割込み ch.2 18 12 ICR02 3B4H 000FFFB4H ○ 外部割込み ch.3 19 13 ICR03 3B0H 000FFFB0H ○ 外部割込み ch.4 20 14 ICR04 3ACH 000FFFACH ○ 外部割込み ch.5 21 15 ICR05 3A8H 000FFFA8H ○ 外部割込み ch.6 22 16 ICR06 3A4H 000FFFA4H ○ 外部割込み ch.7 23 17 ICR07 3A0H 000FFFA0H ○ 16 ビットリロードタイマ ch.0 24 18 ICR08 39CH 000FFF9CH ○ 16 ビットリロードタイマ ch.1 25 19 ICR09 398H 000FFF98H ○ 16 ビットリロードタイマ ch.2 26 1A ICR10 394H 000FFF94H ○ マルチファンクションシリアルインタフェース ch.0 RX 27 1B ICR11 390H 000FFF90H ○ マルチファンクションシリアルインタフェース ch.0 TX 28 1C ICR12 38CH 000FFF8CH ○ マルチファンクションシリアルインタフェース ch.0 I2C ステータス 29 1D ICR13 388H 000FFF88H − CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 793 付録 C 割込みベクタ MB91605A シリーズ 割込要因 割込番号 10 進 16 進 割込 レベル オフセット TBR デフォルト のアドレス DMA 転送 要求 マルチファンクションシリアルインタフェース ch.1 RX 30 1E ICR14 384H 000FFF84H ○ マルチファンクションシリアルインタフェース ch.1 TX 31 1F ICR15 380H 000FFF80H ○ マルチファンクションシリアルインタフェース ch.1 I2C ステータス 32 20 ICR16 37CH 000FFF7CH − マルチファンクションシリアルインタフェース ch.2 RX 33 21 ICR17 378H 000FFF78H ○ マルチファンクションシリアルインタフェース ch.2 TX 34 22 ICR18 374H 000FFF74H ○ マルチファンクションシリアルインタフェース ch.2 I2C ステータス 35 23 ICR19 370H 000FFF70H − マルチファンクションシリアルインタフェース ch.3 RX/TX/I2C ステータス 36 24 ICR20 36CH 000FFF6CH ○* マルチファンクションシリアルインタフェース ch.4 RX/TX/I2C ステータス 37 25 ICR21 368H 000FFF68H ○* マルチファンクションシリアルインタフェース ch.5 RX/TX/I2C ステータス 38 26 ICR22 364H 000FFF64H ○* A/D コンバータ 39 27 ICR23 360H 000FFF60H ○ HDMI-CEC/ リモコン 40 28 ICR24 35CH 000FFF5CH − 外部割込み 8 ∼ 15 41 29 ICR25 358H 000FFF58H ○ 外部割込み 16 ∼ 23 42 2A ICR26 354H 000FFF54H ○ マルチファンクションシリアルインタフェース ch.6 RX/TX/I2C ステータス 43 2B ICR27 350H 000FFF50H ○* マルチファンクションシリアルインタフェース ch.7 RX/TX/I2C ステータス 44 2C ICR28 34CH 000FFF4CH ○* マルチファンクションシリアルインタフェース ch.8 RX/TX/I2C ステータス 45 2D ICR29 348H 000FFF48H ○* マルチファンクションシリアルインタフェース ch.9 RX/TX/I2C ステータス 46 2E ICR30 344H 000FFF44H ○* マルチファンクションシリアルインタフェース ch.10 RX/TX/I2C ステータス 47 2F ICR31 340H 000FFF40H ○* マルチファンクションシリアルインタフェース ch.11 RX/TX/I2C ステータス 48 30 ICR32 33CH 000FFF3CH ○* ベースタイマ ch.0 49 31 ICR33 338H 000FFF38H ○ ベースタイマ ch.1 50 32 ICR34 334H 000FFF34H ○ ベースタイマ ch.2 51 33 ICR35 330H 000FFF30H ○ ベースタイマ ch.3 52 34 ICR36 32CH 000FFF2CH ○ ベースタイマ ch.4 53 35 ICR37 328H 000FFF28H ○ ベースタイマ ch.5 54 36 ICR38 324H 000FFF24H ○ ベースタイマ ch.6 55 37 ICR39 320H 000FFF20H ○ ベースタイマ ch.7 56 38 ICR40 31CH 000FFF1CH ○ ベースタイマ ch.8/ch.9/ch.10/ch.11 57 39 ICR41 318H 000FFF18H ○ DMAC ch.0 58 3A ICR42 314H 000FFF14H − DMAC ch.1 59 3B ICR43 310H 000FFF10H − 794 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 C 割込みベクタ MB91605A シリーズ 割込要因 割込番号 10 進 16 進 割込 レベル オフセット TBR デフォルト のアドレス DMA 転送 要求 DMAC ch.2 60 3C ICR44 30CH 000FFF0CH − DMAC ch.3 61 3D ICR45 308H 000FFF08H − タイムベースタイマ 62 3E ICR46 304H 000FFF04H − 遅延割込み 63 3F ICR47 300H 000FFF00H − システム予約 (REALOS にて使用 ) 64 40 − 2FCH 000FFEFCH − システム予約 (REALOS にて使用 ) 65 41 − 2F8H 000FFEF8H − INT 命令で使用 66 ∼ 255 42 ∼ FF − 2F4H 000FFEF4H − ∼ 000H ∼ 000FFC00H *I2C ステータス割込みは DMAC の転送要求に使用できません。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 795 付録 D CPU の状態における端子状態 付録 D MB91605A シリーズ CPU の状態における端子状態 CPU の状態と端子の状態を示します。 ■ 端子状態 端子の状態として使用している語句は , 以下の意味を持ちます。 • INIT="L" 時 INIT 端子が "L" レベルの期間です。 • INIT="H" 時 INIT 端子が "L" レベルから "H" レベルに遷移した直後の状態です。 • SLVL1 スタンバイ制御レジスタ (STBCR) にあるスタンバイレベル設定ビットです。 • 入力可 入力機能が使用可能な状態です。 • 入力不可 入力機能が使用できない状態です。 • 出力 Hi-Z 端子駆動用トランジスタを駆動禁止状態にし , 端子を Hi-Z にします。 • 直前状態保持 本モードになる直前に出力していた状態を保持します。 内蔵されている周辺機能が動作中であれば , その周辺機能にしたがって出力を行い ます。 ポートなどとして出力している場合は , その出力を保持します。 • 内部入力 "0" 固定 端子からすぐの入力ゲートで外部入力を遮断し , 内部へ "0" を伝えています。 • 割込み機能選択許可時入力可能 端子機能を外部割込み要求入力端子に設定し , 外部割込み要求を許可している場合 にのみ入力できます。 796 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 D CPU の状態における端子状態 MB91605A シリーズ 表 D-1 外部バス 16 ビットモード時の端子状態 イニシャライズ時 端子 ポー 指定機能名 (INIT=0) 番号 ト名 機能名 初期値 3 P45 MCLK MCLK 4 -- A0 A0 5 -- A1 A1 6 -- A2 A2 7 -- A3 A3 8 -- A4 A4 9 -- A5 A5 10 -- A6 A6 11 -- A7 A7 14 -- A8 A8 15 -- A9 A9 16 -- A10 A10 17 -- A11 A11 18 -- A12 A12 19 -- A13 A13 20 -- A14 A14 21 -- A15 A15 25 P50 A16 A16 26 P51 A17 A17 27 P52 A18 A18 28 P53 A19 A19 29 P54 A20 A20 30 P55 A21 A21 31 P56 A22 A22 32 P57 A23 A23 57 P60 AN0 AN0 58 P61 AN1 AN1 59 P62 AN2/SIN10 AN2 60 P63 AN3/SOUT10/SDA10 AN3 61 P64 AN4/SCK10/SCL10 AN4 62 P65 AN5/SIN11 AN5 63 P66 AN6/SOUT11/SDA11 AN6 64 P67 AN7/SCK11/SCL11 AN7 65 P70 AN8/TIOA10 AN8 66 P71 AN9/TIOB10 AN9 67 P72 AN10/TIOA11 AN10 68 P73 AN11/TIOB11 AN11 スリープ 時 ストップ時 HIZ=0 HIZ=1 "L" 出力 P: 直前状 態保持 F:"L" 出力 P: 直前状 態保持 F:"L" 出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 出力不定 アドレス 出力 アドレス 出力 出力 Hi-Z 出力不定 アドレス 出力 アドレス 出力 出力 Hi-Z 出力不定 P: 直前状 態保持 F: アドレ ス出力 P: 直前状 態保持 F: アドレ ス出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 アナログ 入力無効 P: 直前状 態保持 F: 通常動 作 P: 直前状 態保持 F: 直前状 態保持 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 P:ポート接続時 F:指定機能使用時 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 797 付録 D CPU の状態における端子状態 MB91605A シリーズ イニシャライズ時 端子 番号 ポー ト名 指定機能名 (INIT=0) 機能名 71 P74 RCIN スリープ 時 初期値 ストップ時 HIZ=0 HIZ=1 P74 72 P75 SIN0 P75 73 P76 SOUT0/SDA0 P76 74 P77 SCK0/SCL0 P77 75 P80 SIN1 P80 76 P81 SOUT1/SDA1 P81 77 P82 SCK1/SCL1 P82 78 P83 SIN2 P83 79 P84 SOUT2/SDA2 P84 80 P85 SCK2/SCL2 P85 81 P90 SIN3 P90 82 P91 SOUT3/SDA3 P91 83 P92 SCK3/SCL3 P92 84 P93 SIN4 P93 85 P94 SOUT4/SDA4 P94 86 P95 SCK4/SCL4 P95 87 -- NMI NMI 91 PA0 SIN5 PA0 92 PA1 SOUT5/SDA5 PA1 93 PA2 SCK5/SCL5 PA2 94 PA3 SIN6/ATRG PA3 95 PA4 SOUT6/SDA6 PA4 96 PA5 SCK6/SCL6 PA5 97 PB0 INT0/SIN7 PB0 98 PB1 INT1/SOUT7/SDA7 PB1 99 PB2 INT2/SCK7/SCL7 PB2 100 PB3 INT3/TOUT0 PB3 101 PB4 INT4/TOUT1 PB4 102 PB5 INT5/TOUT2 PB5 103 PB6 INT6/TIOA8 PB6 104 PB7 INT7/TIOB8 PB7 105 PC0 INT8/TIOA9 PC0 106 PC1 INT9/TIOB9 PC1 107 PC2 INT10/SIN8 PC2 108 PC3 INT11/SOUT8/SDA8 PC3 109 PC4 INT12/SCK8/SCL8 PC4 110 PC5 INT13/SIN9 PC5 111 PC6 INT14/SOUT9/SDA9 PC6 112 PC7 INT15/SCK9/SCL9 PC7 出力 Hi-Z 入力可能 P: 直前状 態保持 F: 通常動 作 P: 直前状 態保持 F: 直前状 態保持 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 出力 Hi-Z 入力可能 P: 直前状 態保持 F: 通常動 作 P: 直前状 態保持 F: 直前状 態保持 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 入力可能 入力可能 入力可能 入力可能 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 出力 Hi-Z 入力可能 P: 直前状 態保持 F: 通常動 作 P: 直前状 態保持 F: 直前状 態保持 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 ( 外部割込み要 因許可の場合 は入力可能 ) *FLASH シリアル書込みモード時は , SIN0, SOUT0, SCK0 端子のみ異なります。 P:ポート接続時 F:指定機能使用時 798 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 D CPU の状態における端子状態 MB91605A シリーズ イニシャライズ時 端子 番号 ポー ト名 指定機能名 (INIT=0) 機能名 116 PD0 TIOA0 PD0 117 PD1 TIOB0 PD1 118 PD2 TIOA1 PD2 119 PD3 TIOB1 PD3 120 PD4 TIOA2 PD4 121 PD5 TIOB2 PD5 122 PD6 TIOA3 PD6 123 PD7 TIOB3 PD7 124 PE0 INT16/TIOA4 PE0 125 PE1 INT17/TIOB4 PE1 126 PE2 INT18/TIOA5 PE2 127 PE3 INT19/TIOB5 PE3 128 PE4 INT20/TIOA6 PE4 129 PE5 INT21/TIOB6 PE5 130 PE6 INT22/TIOA7 PE6 131 PE7 INT23/TIOB7 PE7 135 -- D16 D16 136 -- D17 D17 137 -- D18 D18 138 -- D19 D19 139 -- D20 D20 140 -- D21 D21 141 -- D22 D22 142 -- D23 D23 145 -- D24 D24 146 -- D25 D25 147 -- D26 D26 148 -- D27 D27 149 -- D28 D28 150 -- D29 D29 151 -- D30 D30 152 -- D31 D31 155 P20 SYSCLK P20 スリープ 時 初期値 ストップ時 HIZ=0 HIZ=1 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 P: 直前状 態保持 F: 通常動 作 P: 直前状 態保持 F: 直前状 態保持 出力 Hi-Z 入力可能 出力保持 または HiZ 出力保持 または HiZ 出力 Hi-Z/ 入力 "0" 固定 出力 Hi-Z 入力可能 出力保持 または HiZ 出力保持 または HiZ 出力 Hi-Z/ 入力 "0" 固定 出力 Hi-Z 入力可能 P: 直前状 態保持 F:SYSCLK 出力 P: 直前状 態保持 F:"H" または "L" 出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 出力 Hi-Z 入力可能 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 ( 外部割込み要 因許可の場合 は入力可能 ) P:ポート接続時 F:指定機能使用時 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 799 付録 D CPU の状態における端子状態 MB91605A シリーズ イニシャライズ時 端子 番号 ポー ト名 指定機能名 (INIT=0) 機能名 156 -- RD RD 157 P21 WE WE 158 P22 MDQM3 MDQM 3 159 P23 MDQM2 MDQM 2 160 P30 CS0 CS0 161 P31 CS1 CS1 162 P32 CS2 CS2 163 P33 CS3 CS3 164 -- CS4 CS4 167 P34 AS/TIN0 P34 168 P35 CS5/TIN1 P35 169 P36 CS6/TIN2 P36 170 P37 CS8 CS8 171 P40 RDY P40 172 P41 MRAS P41 173 P42 MCAS P42 174 P43 MDWE P43 175 P44 MCLKE MCLKE スリープ 時 初期値 ストップ時 HIZ=0 HIZ=1 "H" 出力 "H" 出力 出力 Hi-Z P: 直前状 態保持 F:"H" 出力 P: 直前状 態保持 F:"H" 出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 "H" 出力 "H" 出力 出力 Hi-Z 出力 Hi-Z 入力可能 P: 直前状 態保持 F:"H" 出力 P: 直前状 態保持 F:"H" 出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 "H" 出力 P: 直前状 態保持 F:"H" 出力 P: 直前状 態保持 F:"H" 出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 P: 直前状 態保持 F:RDY 入 力 P: 直前状 態保持 F: 直前状 態保持 P: 直前状 態保持 F:"H" 出力 P: 直前状 態保持 F:"H" 出力 P: 直前状 態保持 F: 直前状 態保持 P: 直前状 態保持 F: 直前状 態保持 "H" 出力 出力 Hi-Z 入力可能 "H" 出力 P: 出力 Hi-Z/ 入力 "0" 固定 F: 出力 Hi-Z/ 入力 "0" 固定 P:ポート接続時 F:指定機能使用時 800 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.1 MB91605A シリーズ 付録 E 命令一覧 FR80 ファミリ CPU の命令一覧と命令マップを示します。 命令一覧表の見かた E.1 命令一覧表および命令細則に用いている記号の意味を説明します。 型 OP CYC FLAG NZVC Rj,Rj A A6 1 CCCC Ri + Rj → Rj #s5,Rj C A4 1 CCCC Ri + s5 → Ri ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ニーモニック ADD *ADD RMW 動作 ○ 備考 ・ ・ │ │ │ │ │ │ │ │ (1) (2) (3) (4) (5) (6) (7) (8) (1) 命令名が示されています。 * 印は , CPU 仕様にはなくアセンブラで命令を拡張または追加した拡張命令です。 (2) オペランドに指定可能なアドレッシングモードを記号で示されています。 記号の意味は , 「■アドレッシングモードの記号 ( 次項 ) 」を参照してください。 (3) 命令フォーマットが示されています。 (4) 命令コードが 16 進数表示されています。 ( アセンブラ拡張命令では記載されません。) (5) マシンサイクル数を表しています。 a : メモリアクセスサイクルであり , アクセス対象により変化します。 最小値は 1 サイクルです。 b : 完了していない LD 命令が 4 命令未満であり , LD 動作の対象となるレジスタが後 続の命令に参照されない間は , 1 サイクルで動作します。 完了していない LD 命令が 4 命令となった場合 , その時点から最初の LD 命令が 完了するまでインタロックがかかり , 実行サイクル数が ( メモリアクセスサイク ル数− 命令発行から最初の LD 命令が完了するまでのサイクル数 ) だけ増加しま す。 c : 直後の命令が MDH を参照する場合 , インタロックがかかり , 実行サイクル数は増 加して 2 となります。それ以外は 1 サイクルとなります。 d : プリフェッチバッファへの命令先読みが完了していない場合 , 最大で 2 サイクル となります。最小値は 1 サイクルです。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 801 付録 E 命令一覧 E.1 MB91605A シリーズ (6) フラグ変化を表しています。 フラグ変化 フラグの意味 C : 変化する N : ネガティブフラグ − : 変化しない Z : ゼロフラグ 0 : クリア V : オーバフラグ 1 : セット C : キャリフラグ (7) RMW 系命令時は○が入ります。 (8) 命令動作が表記されています。 ■ アドレッシングモードの記号 802 Ri : レジスタ直接 (R0 ∼ R15, AC, FP, SP) Rj : レジスタ直接 (R0 ∼ R15, AC, FP, SP) R13 : レジスタ直接 (R13, AC) Ps : レジスタ直接 ( プログラムステータスレジスタ ) Rs : レジスタ直接 (TBR, RP, SSP, USP, MDH, MDL) #i4 : 4 ビット即値 ( ゼロ拡張 :0 ∼ 15, マイナス拡張 :-16 ∼ -1) #i8 : 符号なし 8 ビット即値 (0 ∼ 255) #i20 : 符号なし 20 ビット即値 (-0x80000 ∼ 0xFFFFF) *1 #i32 : 符号なし 32 ビット即値 (-0x80000000 ∼ 0xFFFFFFFF) *2 #s5 : 符号付き 5 ビット即値 (-16 ∼ 15) #s10 : 符号付き 10 ビット即値 (-512 ∼ 508 4 の倍数のみ ) #u4 : 符号なし 4 ビット即値 (0 ∼ 15) #u5 : 符号なし 5 ビット即値 (0 ∼ 31) #u8 : 符号なし 8 ビット即値 (0 ∼ 255) #u10 : 符号なし 10 ビット即値 (0 ∼ 1020 4 の倍数のみ ) @dir8 : 符号なし 8 ビット直接アドレス (0 ∼ 0xFF) @dir9 : 符号なし 9 ビット直接アドレス (0 ∼ 0x1FE 2 の倍数のみ ) @dir10 : 符号なし 10 ビット直接アドレス (0 ∼ 0x3FC 4 の倍数のみ ) label9 : 符号付き 9 ビット分岐アドレス (-0x100 ∼ 0xFC 2 の倍数のみ ) label12 : 符号付き 12 ビット分岐アドレス (-0x800 ∼ 0x7FC 2 の倍数のみ ) label20 : 符号付き 20 ビット分岐アドレス (-0x80000 ∼ 0x7FFFF) label32 : 符号付き 32 ビット分岐アドレス (-0x80000000 ∼ 0x7FFFFFFF) @Ri : レジスタ間接 (R0 ∼ R15, AC, FP, SP) @Rj : レジスタ間接 (R0 ∼ R15, AC, FP, SP) @(R13,Rj) : レジスタ相対間接 (Rj: R0 ∼ R15, AC, FP, SP) @(R14,disp10) : レジスタ相対間接 (disp10: -0x200 ∼ 0x1FC 4 の倍数のみ ) @(R14,disp9) : レジスタ相対間接 (disp9: -0x100 ∼ 0xFE 2 の倍数のみ ) @(R14,disp8) : レジスタ相対間接 (disp8: -0x80 ∼ 0x7F) @(R15,udisp6) : レジスタ相対間接 (udisp6: 0 ∼ 60 4 の倍数のみ ) @Ri+ : ポストインクリメント付きレジスタ間接 (R0 ∼ R15, AC, FP, SP) FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.1 MB91605A シリーズ @R13+ : ポストインクリメント付きレジスタ間接 (R13, AC) @SP+ : スタックポップ @-SP : スタックプッシュ (reglist) : レジスタリスト *1: -0x7FFFF ∼ -1 は , 0x7FFFF ∼ 0xFFFFF として扱います。 *2: -0x80000000 ∼ -1 は , 0x80000000 ∼ 0xFFFFFFFF として扱います。 ■ 命令フォーマット一覧 TYPE-A TYPE-B OP Rj Ri 8 4 4 OP i/8 o/8 Ri 4 8 4 TYPE-C OP u4/m4 Ri 8 4 4 ADD, ADDN, CMP, LSL, LSR, ASR 命令のみ TYPE-C' TYPE-D TYPE-E TYPE-F CM71-10147-2 OP s5/u5 Ri 7 5 4 OP u8/rel8/dir/reglist 8 8 OP SUB-OP Ri 8 4 4 OP rel11 5 11 FUJITSU SEMICONDUCTOR LIMITED 803 付録 E 命令一覧 E.1 MB91605A シリーズ ■ 動作欄 命令一覧表の動作欄と , 命令細則のオペレーションに使用されている記号です。 extu ( ) ゼロ拡張操作を示します。上位ビットの欠けている部分に "0" ビットを補います。 extn ( ) マイナス拡張操作を示します。上位ビットの欠けている部分 に "1" ビットを補います。 exts ( ) 符号拡張操作を示します。( ) 内のデータの MSB が "0" なら ばゼロ拡張操作をし , MSB が "1" ならばマイナス拡張操作をし ます。 & ビット毎の論理積 (AND) を示します。 | ビット毎の論理和 (OR) を示します。 ^ ビット毎の排他的論理和 (EXOR) を示します。 () 間接アドレス指定を示します。( ) 内のレジスタまたは式の示 すアドレスのメモリ読み出し・書き込み値です。 {} 演算の優先順位を明示するための括弧になります。( ) を間接 アドレス指定に使用しているため , { } を使用します。 条件実行を示します。条件が成立したときに then の次の式を , if ( 条件 ) then { 式 } 成立しなかったときに else の次の式を実行します。式は { } で または if ( 条件 ) then { 式 1} 囲み複数記述できます。 else { 式 2} [m:n] 804 ビット m からビット n までを取り出して , 操作対象とします。 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.2 MB91605A シリーズ E.2 命令一覧表 FR80 ファミリ CPU の命令一覧を示します。 FR80 ファミリ CPU の命令数は全部で 162 あります。以下の 15 種類に分類しています。 • 加減算命令 • 比較演算命令 • 論理演算命令 • ビット操作演算命令 • 乗除算命令 • シフト演算命令 • 即値データ転送命令 • メモリロード命令 • メモリストア命令 • レジスタ間転送命令 / 専用レジスタ転送命令 • 遅延なし分岐命令 • 遅延分岐命令 • ダイレクトアドレス指定命令 • ビットサーチ命令 • その他の命令 表 E-1 加減算命令 ニーモニック CM71-10147-2 型 OP CYC FLAG NZVC RMW 動作 備考 ADD Rj, Ri A A6 1 CCCC − Ri+Rj → Ri *ADD #s5, Ri C' − 1 CCCC − Ri+s5 → Ri アセンブラでは s5 の上位 1 ビットを符 号と見る ADD #i4, Ri C A4 1 CCCC − Ri+extu(i4) → Ri i4 はゼロ拡張 ADD2 #i4, Ri C A5 1 CCCC − Ri+extn(i4) → Ri i4 はマイナス拡張 ADDC Rj, Ri A A7 1 CCCC − Ri+Rj+C → Ri キャリ付き加算 ADDN Rj, Ri A A2 1 ---- − Ri+Rj → Ri *ADDN #s5, Ri C' − 1 ---- − Ri+s5 → Ri アセンブラでは s5 の上位 1 ビットを符 号と見る ADDN #i4, Ri C A0 1 ---- − Ri+extu(i4) → Ri i4 はゼロ拡張 ADDN2 #i4, Ri C A1 1 ---- − Ri+extn(i4) → Ri i4 はマイナス拡張 SUB Rj, Ri A AC 1 CCCC − Ri-Rj → Ri SUBC Rj, Ri A AD 1 CCCC − Ri-Rj-C → Ri SUBN Rj, Ri A AE 1 ---- − Ri-Rj → Ri FUJITSU SEMICONDUCTOR LIMITED キャリ付き減算 805 付録 E 命令一覧 E.2 MB91605A シリーズ 表 E-2 比較演算命令 ニーモニック OP 型 CYC FLAG NZVC RMW 動作 備考 CMP Rj, Ri A AA 1 CCCC − Ri-Rj *CMP #s5, Ri C' − 1 CCCC − Ri-s5 アセンブラでは s5 の上位 1 ビットを符 号と見る CMP #i4, Ri C A8 1 CCCC − Ri-extu(i4) i4 はゼロ拡張 CMP2 #i4, Ri C A9 1 CCCC − Ri-extn(i4) i4 はマイナス拡張 CYC FLAG NZVC 表 E-3 論理演算命令 ニーモニック OP 型 RMW 動作 備考 AND Rj, Ri A 82 1 CC-- − Ri & Rj → Ri ワード AND Rj, @Ri A 84 1+2a CC-- ○ (Ri) & Rj → (Ri) ワード ANDH Rj, @Ri A 85 1+2a CC-- ○ (Ri) & Rj → (Ri) ハーフワード ANDB Rj, @Ri A 86 1+2a CC-- ○ (Ri) & Rj → (Ri) バイト OR Rj, Ri A 92 1 CC-- − Ri | Rj → Ri ワード OR Rj, @Ri A 94 1+2a CC-- ○ (Ri) | Rj → (Ri) ワード ORH Rj, @Ri A 95 1+2a CC-- ○ (Ri) | Rj → (Ri) ハーフワード ORB Rj, @Ri A 96 1+2a CC-- ○ (Ri) | Rj → (Ri) バイト EOR Rj, Ri A 9A 1 CC-- − Ri ^ Rj → Ri ワード EOR Rj, @Ri A 9C 1+2a CC-- ○ (Ri) ^ Rj → (Ri) ワード EORH Rj, @Ri A 9D 1+2a CC-- ○ (Ri) ^ Rj → (Ri) ハーフワード EORB Rj, @Ri A 9E 1+2a CC-- ○ (Ri) ^ Rj → (Ri) バイト 表 E-4 ビット操作演算命令 ニーモニック 型 OP CYC FLAG RMW NZVC 動作 備考 BANDL #u4, @Ri C 80 1+2a ---- ○ (Ri) & {F0H+u4} → (Ri) 下位 4 ビット BANDH #u4, @Ri C 81 1+2a ---- ○ (Ri) & {u4<<4+0FH} → (Ri) 上位 4 ビット *BAND #u8, @Ri *1 − − − ---- ○ (Ri) & =u8 BORL #u4, @Ri C 90 1+2a ---- ○ (Ri) | u4 → (Ri) 下位 4 ビット BORH #u4, @Ri C 91 1+2a ---- ○ (Ri) | {u4<<4} → (Ri) 上位 4 ビット *BOR #u8, @Ri *2 − − − ---- ○ (Ri) | =u8 BEORL #u4, @Ri C 98 1+2a ---- ○ (Ri) ^ u4 → (Ri) 下位 4 ビット C 99 1+2a ---- ○ (Ri) ^ {u4<<4} → (Ri) 上位 4 ビット − ---- ○ (Ri) ^ =u8 − (Ri) & u4 下位 4 ビット − (Ri) & {u4<<4} 上位 4 ビット BEORH #u4, @Ri *BEOR #u8, @Ri *3 − − BTSTL #u4, @Ri C 88 2+a 0C-- BTSTH #u4, @Ri C 89 2+a CC-- *1: アセンブラは , u8 & 0x0F でビットが立っていれば , BANDL を生成し , u8 & 0xF0 でビットが 立っていれば , BANDH を生成する。BANDL, BANDH 両方生成する場合もある。 *2: アセンブラは , u8 & 0x0F でビットが立っていれば , BORL を生成し , u8 & 0xF0 でビットが 立っていれば , BORH を生成する。BORL, BORH 両方生成する場合もある。 *3: アセンブラは , u8 & 0x0F でビットが立っていれば , BEORL を生成し , u8 & 0xF0 でビットが 立っていれば , BEORH を生成する。BEORL, BEORH 両方生成する場合もある。 806 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.2 MB91605A シリーズ 表 E-5 乗除算命令 ニーモニック 型 OP CYC FLAG NZVC RMW 動作 備考 MUL Rj, Ri A AF 5 CCC- − Ri × Rj → MDH,MDL 32 × 32 ビット =64 ビット MULU Rj, Ri A AB 5 CCC- − Ri × Rj → MDH,MDL 符号なし MULH Rj, Ri A BF 3 CC-- − Ri × Rj → MDL 16 × 16 ビット =32 ビット MULUH Rj, Ri A BB 3 CC-- − Ri × Rj → MDL 符号なし DIV0S Ri E 97-4 1 ---- − 所 定 の 命 令 シ ー ケ ステップ演算 ンスにて 32 ÷ 32 ビット =32 MDL ÷ Ri → MDL ビット MDL%Ri → MDH DIV0U Ri E 97-5 1 ---- − DIV1 Ri E 97-6 1 -C-C − DIV2 Ri E 97-7 c -C-C − DIV3 E 9F-6 1 ---- − DIV4S *DIV Ri *1 *DIVU Ri *2 E 9F-7 1 ---- − − − 36 -C-C − MDL ÷ Ri → MDL MDL%Ri → MDH − − 36 -C-C − MDL ÷ Ri → MDL MDL%Ri → MDH *1: DIV0S, DIV1 × 32, DIV2, DIV3, DIV4S を生成する。命令コード長は , 72 バイトとなる。 *2: DIV0U, DIV1 × 32 を生成する。命令コード長は , 66 バイトとなる。 表 E-6 シフト演算命令 ニーモニック CM71-10147-2 型 OP CYC FLAG NZVC RMW 動作 LSL Rj, Ri A B6 1 CC-C − Ri << Rj → Ri *LSL #u5, Ri (u5:0 ∼ 31) C' − 1 CC-C − Ri << u5 → Ri LSL #u4, Ri C B4 1 CC-C − Ri << u4 → Ri LSL2 #u4, Ri C B5 1 CC-C − Ri << {u4+16} → Ri LSR Rj, Ri A B2 1 CC-C − Ri >> Rj → Ri *LSR #u5, Ri (u5:0 ∼ 31) C' − 1 CC-C − Ri >> u5 → Ri LSR #u4, Ri C B0 1 CC-C − Ri >> u4 → Ri LSR2 #u4, Ri C B1 1 CC-C − Ri >> {u4+16} → Ri ASR Rj, Ri A BA 1 CC-C − Ri >> Rj → Ri *ASR #u5, Ri (u5:0 ∼ 31) C' − 1 CC-C − Ri >> u5 → Ri ASR #u4, Ri C B8 1 CC-C − Ri >> u4 → Ri ASR2 #u4, Ri C B9 1 CC-C − Ri >> {u4+16} → Ri FUJITSU SEMICONDUCTOR LIMITED 備考 論理シフト 論理シフト 算術シフト 807 付録 E 命令一覧 E.2 MB91605A シリーズ 表 E-7 即値データ転送命令 ニーモニック OP 型 CYC FLAG NZVC RMW 動作 備考 LDI:32 #i32, Ri H 9F-8 d ---- − i32 → Ri LDI:20 #i20, Ri G 9B d ---- − extu(i20) → Ri 上位 12 ビットは ゼロ拡張 LDI:8 #i8, Ri B C0 1 ---- − extu(i8) → Ri 上位 24 ビットは ゼロ拡張 − − − − {i8|i20|i32} → Ri *LDI {i8|i20|i32}, Ri *1 − *1: 即値が絶対値の場合は , i8,i20,i32 の選択はアセンブラが自動的に行う。 即値が相対値または外部参照シンボルを含む場合は , i32 が選択される。 表 E-8 メモリロード命令 ニーモニック 型 OP CYC FLAG NZVC RMW 動作 備考 LD @Rj, Ri A 04 b ---- − (Rj) → Ri LD @(R13, Rj), Ri A 00 b ---- − (R13+Rj) → Ri LD @(R14, disp10), Ri B 2 b ---- − (R14+o8 × 4) → Ri LD @(R15, udisp6), Ri C 03 b ---- − (R15+u4 × 4) → Ri LD @R15+, Ri E 07-0 b ---- − (R15) → Ri, R15+4 → R15 LD @R15+, Rs E 07-8 b ---- − (R15) → Rs, R15+4 → R15 Rs: 特殊 レジスタ LD @R15+, PS E 07-9 1+a CCCC − (R15) → PS, R15+4 → R15 ワード LDUH @Rj, Ri A 05 b ---- − extu((Rj)) → Ri LDUH @(R13, Rj), Ri A 01 b ---- − extu((R13+Rj)) → Ri LDUH @(R14, disp9), Ri B 04 b ---- − extu((R14+o8 × 2)) → Rj ハーフ ワード ゼロ拡張 LDUB @Rj, Ri A 06 b ---- − extu((Rj)) → Ri LDUB @(R13, Rj), Ri A 02 b ---- − extu((R13+Rj)) → Ri 6 b ---- − extu((R14+o8)) → Ri LDUB @(R14, disp8), Ri B • ワード バイト ゼロ拡張 命令フォーマットTYPE-Bのo8およびTYPE-Cのu4フィールドと, アセンブラ記述の disp8 ∼ disp10 の関係は次のようになっています。 o8 = disp8 o8 = disp9 >> 1 o8 = disp10 >> 2 u4 = udisp6 >> 2 808 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.2 MB91605A シリーズ 表 E-9 メモリストア命令 ニーモニック OP 型 CYC FLAG NZVC RMW 動作 ST Ri, @Rj A 14 a ---- − Ri → (Rj) − Ri → (R13+Rj) 備考 ワード ST Ri, @(R13, Rj) A 10 a ---- ST Ri, @(R14, disp10) B 3 a ---- − Ri → (R14+o8 × 4) ST Ri, @(R15, udisp6) C 13 a ---- − Ri → (R15+u4 × 4) ST Ri, @-R15 E 17-0 a ---- − R15-4 → R15, Ri → (R15) ST Rs, @-R15 E 17-8 a ---- − R15-4 → R15, Rs → (R15) Rs: 特殊 レジスタ ST PS, @-R15 E 17-9 a ---- − R15-4 → R15, PS → (R15) ワード STH Ri, @Rj A 15 a ---- − Ri → (Rj) STH Ri, @(R13, Rj) A 11 a ---- − Ri → (R13+Rj) ハーフ ワード STH Ri, @(R14, disp9) B 5 a ---- − Ri → (R14+o8 × 2) STB Ri, @Rj A 16 a ---- − Ri → (Rj) STB Ri, @(R13, Rj) A 12 a ---- − Ri → (R13+Rj) STB Ri, @(R14, disp8) B 7 a ---- − Ri → (R14+o8) • バイト 命令フォーマット TYPE-B の o8 および TYPE-C の u4 フィールドと , アセンブラ記述 disp8 ∼ disp10 の関係は次のようになっています。 o8 = disp8 o8 = disp9 >> 1 o8 = disp10 >> 2 u4 = udisp6 >> 2 表 E-10 レジスタ間転送命令 / 専用レジスタ転送命令 ニーモニック CM71-10147-2 型 OP CYC FLAG NZVC RMW 動作 備考 MOV Rj, Ri A 8B 1 ---- − Rj → Ri 汎用レジスタ間転送 MOV Rs, Ri A B7 1 ---- − Rs → Ri Rs: 特殊レジスタ MOV Ri, Rs A B3 1 ---- − Ri → Rs Rs: 特殊レジスタ MOV PS, Ri E 17-1 1 ---- − PS → Ri PS: プログラムステータス MOV Ri, PS E 07-1 1 CCCC − Ri → PS PS: プログラムステータス FUJITSU SEMICONDUCTOR LIMITED 809 付録 E 命令一覧 E.2 MB91605A シリーズ 表 E-11 遅延なし分岐命令 ニーモニック 810 型 OP CYC FLAG NZVC RMW 動作 JMP @Ri E 97-0 2 ---- − Ri → PC CALL label12 F D0 2 ---- − PC+2 → RP, PC+2+exts(rel11 × 2) → PC CALL @Ri E 97-1 2 ---- − PC+2 → RP, Ri → PC RET E 97-2 2 ---- − RP → PC INT #u8 D 1F 1+3a ---- − SSP-4 → SSP, PS → (SSP) , SSP-4 → SSP, PC+2 → (SSP) , 0 → CCR:I, 0 → CCR:S, (TBR+3FC-u8 × 4) → PC INTE E 9F-3 1+3a ---- − SSP-4 → SSP, PS → (SSP), SSP-4 → SSP, PC+2 → (SSP), 0 → CCR:S, 4 → ILM, (TBR+3D8) → PC RETI E 97-3 1+2b ---- − (SSP) → PC, SSP+4 → SSP, (SSP) → PS, SSP+4 → SSP BRA label9 D E0 2 ---- − PC+2+exts(rel8 × 2) → PC BNO label9 D E1 1 ---- − BEQ label9 D E2 2/1 ---- − 非分岐 if (Z==1) then PC+2+exts(rel8 × 2) → PC BNE label9 D E3 2/1 ---- − if (Z==0) then PC+2+exts(rel8 × 2) → PC BC label9 D E4 2/1 ---- − if (C==1) then PC+2+exts(rel8 × 2) → PC BNC label9 D E5 2/1 ---- − if (C==0) then PC+2+exts(rel8 × 2) → PC BN label9 D E6 2/1 ---- − if (N==1) then PC+2+exts(rel8 × 2) → PC BP label9 D E7 2/1 ---- − if (N==0) then PC+2+exts(rel8 × 2) → PC BV label9 D E8 2/1 ---- − if (V==1) then PC+2+exts(rel8 × 2) → PC BNV label9 D E9 2/1 ---- − if (V==0) then PC+2+exts(rel8 × 2) → PC BLT label9 D EA 2/1 ---- − if (V ^ N==1) then PC+2+exts(rel8 × 2) → PC BGE label9 D EB 2/1 ---- − if (V ^ N==0) then PC+2+exts(rel8 × 2) → PC BLE label9 D EC 2/1 ---- − if ({V ^ N} | Z==1) then PC+2+exts(rel8 × 2) → PC BGT label9 D ED 2/1 ---- − if ({V ^ N} | Z==0) then PC+2+exts(rel8 × 2) → PC BLS label9 D EE 2/1 ---- − if (C or Z==1) then PC+2+exts(rel8 × 2) → PC BHI label9 D EF 2/1 ---- − if (C or Z==0) then PC+2+exts(rel8 × 2) → PC FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.2 MB91605A シリーズ • CYC 欄の "2/1" は , 分岐するときは 2, 分岐しないときは 1 を示します。 • RETI を実行するときはスタックフラグ (S) が "0" である必要があります。 • 命令フォーマットTYPE-Dのrel8および TYPE-Fのrel11フィールドと, アセンブラ記 述の label9, label12 の関係は次のようになっています。 rel8 = (label9-PC-2) /2 rel11 = (label12-PC-2) /2 表 E-12 遅延分岐命令 ニーモニック 型 OP CYC FLAG NZVC RMW 動作 JMP:D @Ri E 9F-0 1 ---- − Ri → PC CALL:D label12 F D8 1 ---- − PC+4 → RP, PC+2+exts(rel11 × 2) → PC CALL:D @Ri E 9F-1 1 ---- − PC+4 → RP, Ri → PC RET:D E 9F-2 1 ---- − RP → PC BRA:D label9 D F0 1 ---- − PC+2+exts(rel8 × 2) → PC BNO:D label9 D F1 1 ---- − BEQ:D label9 D F2 1 ---- − 非分岐 if (Z==1) then PC+2+exts(rel8 × 2) → PC BNE:D label9 D F3 1 ---- − if (Z==0) then PC+2+exts(rel8 × 2) ) → PC BC:D label9 D F4 1 ---- − if (C==1) then PC+2+exts(rel8 × 2) → PC BNC:D label9 D F5 1 ---- − if (C==0) then PC+2+exts(rel8 × 2) → PC BN:D label9 D F6 1 ---- − if (N==1) then PC+2+exts(rel8 × 2) → PC BP:D label9 D F7 1 ---- − if (N==0) then PC+2+exts(rel8 × 2) → PC BV:D label9 D F8 1 ---- − if (V==1) then PC+2+exts(rel8 × 2) → PC BNV:D label9 D F9 1 ---- − if (V==0) then PC+2+exts(rel8 × 2) → PC BLT:D label9 D FA 1 ---- − if (V ^ N==1) then PC+2+exts(rel8 × 2) → PC BGE:D label9 D FB 1 ---- − if (V ^ N==0) then PC+2+exts(rel8 × 2) → PC BLE:D label9 D FC 1 ---- − if ({V ^ N} | Z==1) then PC+2+exts(rel8 × 2) → PC BGT:D label9 D FD 1 ---- − if ({V ^ N} | Z==0) then PC+2+exts(rel8 × 2) → PC BLS:D label9 D FE 1 ---- − if (C or Z==1) then PC+2+exts(rel8 × 2) → PC BHI:D label9 D FF 1 ---- − if (C or Z==0) then PC+2+exts(rel8 × 2) → PC • 遅延分岐命令は必ず次の命令 ( 遅延スロット ) を実行してから分岐します。 • 命令フォーマットTYPE-Dのrel8および TYPE-Fのrel11フィールドと, アセンブラ記 述の label9, label12 の関係は次のようになっています。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 811 付録 E 命令一覧 E.2 MB91605A シリーズ rel8 = (label9-PC-2) /2 rel11 = (label12-PC-2) /2 表 E-13 ダイレクトアドレス指定命令 ニーモニック 型 OP CYC FLAG NZVC RMW 動作 備考 DMOV @dir10, R13 D 08 b ---- − (dir10) → R13 DMOV R13, @dir10 D 18 a ---- − R13 → (dir10) DMOV @dir10, @R13+ D 0C 1+2a ---- − (dir10) → (R13), R13+=4 DMOV @R13+, @dir10 D 1C 1+2a ---- − (R13) → (dir10), R13+=4 DMOV @dir10, @-R15 D 0B 1+2a ---- − R15-=4, (R15) → (dir10) DMOV @R15+, @dir10 D 1B 1+2a ---- − (R15) → (dir10), R15+=4 DMOVH @dir9, R13 D 09 b ---- − (dir9) → R13 DMOVH R13, @dir9 D 19 a ---- − R13 → (dir9) DMOVH @dir9, @R13+ D 0D 1+2a ---- − (dir9) → (R13), R13+=2 DMOVH @R13+, @dir9 D 1D 1+2a ---- − (R13) → (dir9), R13+=2 DMOVB @dir8, R13 D 0A b ---- − (dir8) → R13 DMOVB R13, @dir8 D 1A a ---- − R13 → (dir8) DMOVB @dir8, @R13+ D 0E 1+2a ---- − (dir8) → (R13), R13++ DMOVB @R13+, @dir8 D 1E 1+2a ---- − (R13) → (dir8), R13++ • ワード ハーフ ワード バイト 命令フォーマットTYPE-Dのdir8フィールドとアセンブラ記述のdir8, dir9, dir10の関 係は次のようになっています。 dir8 = dir8 dir8 = dir9 >> 1 dir8 = dir10 >> 2 表 E-14 ビットサーチ命令 812 OP CYC FLAG NZVC RMW ニーモニック 型 動作 SRCH0 Ri E 97-C 1 ---- − search_zero(Ri) → Ri MSB から LSB へ 0 検索 SRCH1 Ri E 97-D 1 ---- − search_one(Ri) → Ri MSB から LSB へ 1 検索 SRCHC Ri E 97-E 1 ---- − search_change(Ri) → Ri MSB から LSB へ 変化点検索 FUJITSU SEMICONDUCTOR LIMITED 備考 CM71-10147-2 付録 E 命令一覧 E.2 MB91605A シリーズ 表 E-15 その他の命令 ニーモニック 型 OP CYC FLAG NZVC RMW 動作 NOP E’ 9F-A 1 ---- − 何も変化しない ANDCCR #u8 D 83 1 CCCC − CCR & u8 → CCR ORCCR #u8 D 93 1 CCCC − CCR | u8 → CCR STILM #u8 D 87 1 ---- − u8 → ILM 備考 ILM 即値セット ADDSP #s10 D A3 1 ---- − R15 += s10 EXTSB Ri E 97-8 1 ---- − exts(Ri[7:0]) → Ri 符号拡張 8 → 32 EXTUB Ri E 97-9 1 ---- − extu(Ri[7:0]) → Ri ゼロ拡張 8 → 32 EXTSH Ri E 97-A 1 ---- − exts(Ri[15:0]) → Ri 符号拡張 16 → 32 EXTUH Ri E 97-B 1 ---- − extu(Ri[15:0]) → Ri ゼロ拡張 16 → 32 LDM0 (reglist) D 8C *1 ---- − (R15) → reglist, ロードマルチ R15 インクリメント R0 ∼ R7 LDM1 (reglist) D 8D *1 ---- − (R15) → reglist, ロードマルチ R15 インクリメント R8 ∼ R15 *LDM (reglist) *3 − − − ---- − (R15) → reglist, ロードマルチ R15 インクリメント R0 ∼ R15 STM0 (reglist) D 8E *2 ---- − R15ディクリメント, ストアマルチ R0 ∼ R7 reglist → (R15) STM1 (reglist) D 8F *2 ---- − R15ディクリメント, ストアマルチ R8 ∼ R15 reglist → (R15) *STM (reglist) *4 − − − ---- − R15ディクリメント, ストアマルチ R0 ∼ R15 reglist → (R15) ENTER #u10 D 0F 1+a ---- − R14 → (R15-4), 関数の入口処理 R15-4 → R14, R15-extu(u8 × 4) → R15 LEAVE E 9F-9 b ---- − R14+4 → R15, (R15-4) → R14 関数の出口処理 XCHB @Rj, Ri A 8A ---- ○ Ri → TEMP, extu((Rj)) → Ri, TEMP → (Rj)) セマフォ管理用 バイトデータ *1 : *2 : *3 : *4 : • 2a LDM0 (reglist), LDM1 (reglist) の実行サイクル数は , 指定されたレジスタ数が n のとき b × n サイクルとなります。 STM0 (reglist), STM1 (reglist) の実行サイクル数は , 指定されたレジスタ数が n の とき a × n サイクルとなります。 reglist で , R0-R7 のいずれかの指定があれば , LDM0 を生成し , R8-R15 のいずれ かの指定があれば , LDM1 を生成する。LDM0, LDM1 両方生成する場合もある。 reglist で , R0-R7 のいずれかの指定があれば , STM0 を生成し R8-R15 のいずれか の指定があれば , STM1 を生成する。STM1, STM0 両方生成する場合もある。 ADDSP 命令において , 命令フォーマット TYPE-D の s8 フィールドとアセンブラ記述 の s10 の関係は次のようになっています。 s8 = s10 >> 2 • ENTER命令において , 命令フォーマット中の TYPE-D の u8 フィールドとアセンブラ 記述の u10 の関係は次のようになっています。 u8 = u10 >> 2 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 813 付録 E 命令一覧 E.3 E.3 MB91605A シリーズ 遅延スロットに配置可能な命令一覧 遅延分岐命令の遅延スロットに配置可能な命令一覧を示します。 • 加減算命令 ADD Rj, Ri ADD #14, Ri ADD2 #i4, Ri ADDC Rj, Ri ADDN Rj, Ri ADDN #i4, Ri ADDN2 #i4, Ri SUB Rj, Ri SUBC Rj, Ri CMP #i4, Ri CMP2 #i4, Ri OR Rj, Ri EOR Rj, Ri DIV0S Ri DIV0U Ri DIV1 Ri DIV2 Ri DIV3 DIV4S LSL Rj, Ri LSL #u4, Ri LSL2 #u4, Ri LSR Rj, Ri LSR #u4, Ri LSR2 #u4, Ri ASR Rj, Ri ASR #u4, Ri ASR2 #u4, Ri LD @Rj, Ri LD @(R13, Rj), Ri LD @(R14, disp10), Ri LD @(R15, udisp6), Ri LD @R15+, Ri LD @R15+, Rs LDUH @Rj, Ri LDUH @(R13, Rj), Ri LDUH @(R14, disp9), Ri LDUB @Rj, Ri LDUB @(R13, Rj), Ri LDUB @(R14, disp8), Ri ST Ri, @Rj ST Ri, @(R13, Rj) ST Ri, @(R14, disp10) ST Ri, @(R15, udisp6) ST Ri, @-R15 ST Rs, @-R15 STH Ri, @Rj STH Ri, @(R13, Rj) STH Ri, @(R14, disp9) STB Ri, @Rj STB Ri, @(R13, Rj) STB Ri, @(R14, disp8) SUBN Rj, Ri • 比較演算命令 CMP Rj, Ri • 論理演算命令 AND Rj, Ri • • • 乗除算命令 シフト演算命令 即値データ転送命令 LDI:8 #i8, Ri • • メモリロード命令 メモリストア命令 ST PS, @-R15 814 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 E 命令一覧 E.3 MB91605A シリーズ • • • レジスタ間転送命令 MOV Rj, Ri MOV Rs, Ri MOV PS, Ri MOV Ri, PS ダイレクトアドレス指定命令 DMOV @dir10, R13 DMOV R13, @dir10 DMOVH @dir9, R13 DMOVH R13, @dir9 DMOVB @dir8, R13 DMOVB R13, @dir8 SRCH1 Ri SRCHC Ri NOP ANDCCR #u8 ORCCR #u8 STILM #u8 ADDSP #s10 EXTSB Ri EXTUB Ri EXTSH Ri EXTUH Ri ビットサーチ命令 SRCH0 Ri • MOV Ri, Rs その他の命令 LEAVE CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 815 付録 F プログラムローダモード E.3 付録 F MB91605A シリーズ プログラムローダモード 本モードは , 内蔵 ROM に格納されたプログラムローダが , マルチファンクションシリアルイ ンタフェース ch.0 を用いて外部とシリアル通信を行い , 外部からプログラムを内蔵 RAM (128K バイト ) へロードして , ロードしたプログラムを起動するモードです。 シリアル通信は , INITによる初期化時の MD1, MD0, SIN0/P75, SOUT0/P76 の状態により , 非 同期通信か同期通信かを選択可能です。端子設定は「■ 設定方法」を参考にしてご使用くだ さい。 ■ 設定方法 INIT による初期化時に端子 MD1, MD0, SIN0/P75, SOUT0/P76 の状態を下記表のとおり に設定すると , 内蔵 ROM に格納されたプログラムローダが起動します。 プログラムローダは , MD1, MD0, SOUT0/P76 で決定されます。 外部とのシリアル通信に用いるマルチファンクションシリアルインタフェース ch.0 の 非同期通信か同期通信かは SIN0/P75 で決定されます。 原発振周波数は 16MHz となります。 ● 端子設定 ( 原発振周波数 16MHz) 端子名 仕様 MD1 MD0 SIN0/P75 SOUT0/P76 非同期通信 0 1 1 1 同期通信 0 1 0 1 ■ 詳細 • 非同期通信−原発振周波数 (16MHz) マルチファンクションシリアルインタフェース ch.0 の非同期モード ( モード 0) で シリアル通信を行います。 ボーレート 9600bps になります。 シリアルの設定はデータ長 : 8 ビット , ストップビット長 : 1 ビット , パリティなし , LSB ファーストです。 • 同期通信 マルチファンクションシリアルインタフェース ch.0 の同期モード ( モード 2) でシ リアル通信を行います。ボーレートの選択は , クロック入力 (SCK0) により自由に 設定できます ( クロック入力 SCK0 の周波数がそのままボーレート )。 クロック入力の最大周波数は , 2MHz です。 シリアル設定はデータ長 : 8 ビット , パリティなし , LSB ファーストです。 いずれのモードも • 816 コマンドデータ (00H) FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 F プログラムローダモード E.3 MB91605A シリーズ • ダウンロード先 RAM アドレス 4 バイト (00020000H ∼ 0003FEFFH) ( 使用禁止 : 0003FF00H ∼ 0003FFFFH) • ダウンロードバイト数 4 バイト ( 最大 0001FEFFH) の 3 つのダウンロード情報データを FR 側へ順に上位バイトから 1 バイトずつ与え , さ らにこれらの SUM チェックデータ ( データをすべて加えて下位 8 ビットを取り出す ) を与えることにより , RAM へのダウンロードルーチンに入ります。次に , 内蔵 RAM に ダウンロードしたいデータを同じく FR 側へ順に上位バイトから 1 バイトずつ与え , SUM チェックデータを与えます。転送終了後 , RAM にジャンプしダウンロードされた プログラムが実行されます。 例 ) RAM アドレス "00020000H" へ "0000005BH" バイトのデータを転送するとき 表 F-1 ダウンロード時のハンドシェイク FR PC など ① 00H → ② 00H → ③ 02H → ④ 00H → ⑤ 00H → ⑥ 00H → ⑦ 00H → ⑧ 00H → ⑨ 5BH → SUM チェックデータ ⑩ 5EH → FR からのアクノリッジ ⑪ データ送信 ⑫ DATA → SUM チェックデータ ⑬ * → FR からのアクノリッジ ⑭ コマンドデータ ダウンロード先アドレス ダウンロードバイト数 (91 バイト ) ← ← 01H 01H *: 送信データをすべて加えて下位 8 ビットを取り出します。 表 F-2 RAM へジャンプするときのハンドシェイク FR PC など ① C0H → ② 00H → ③ 00H → ④ 00H → ⑤ 00H → ⑥ 00H → ⑦ 00H → ⑧ 00H → ⑨ 00H → SUM チェックデータ ⑩ C0H → RAM へジャンプ ⑪ コマンドデータ ダミーデータ ダミーデータ CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 817 付録 F プログラムローダモード E.3 MB91605A シリーズ 詳細動作については , 次項以降の専用 ROM 内プログラムのフローチャートを参照して ください。 なお , マルチファンクションシリアルインタフェースの詳細動作 , 全端子状態などにつ いては , 「第 24 章 マルチファンクションシリアル インタフェース」, または表 D-1 の 「イニシャライズ時 (INIT)」を参照してください。 • メインプログラムフローチャート 図 F-1 メインプログラムフローチャート 開始 NO SIN0/P75 = "H" ? 同期通信 YES 非同期通信 非同期通信 *: マルチファンクションシリアル インタフェース0設定について 同期 非同期のとき ・非同期モード(内部タイマ使用) ・ボーレート9600bps ・データ長 8ビット ・ストップビット 1ビット ・パリティなし 同期のとき ・同期モード(外部クロック使用) ・データ長 8ビット ・パリティなし 動作周波数設定 マルチファンクションシリアルインタフェース0設定 メイン コマンド受信 00H ダウンロード 受信コマンド①=? (ダウンロード) 00H/C0H以外 C0H コマンドエラー RAMへジャンプ FR 側に発行されるコマンドおよび FR 側からの応答信号の一覧を示します。 FR コマンド コマンド 受信応答 818 PC など ダウンロード ← 00H リセット ← 18H RAM ジャンプ ← C0H コマンド異常 ( 受信コマンド &F0H)|04H → SUM チェック異常 ( 受信コマンド (00H) & F0H)|04H → RESET コマンド受信 11H → DOWN LOAD コマンド受信 01H → FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 F プログラムローダモード E.3 MB91605A シリーズ • サブルーチン " コマンド受信 " フローチャート ( 非同期モードのとき ) 図 F-2 サブルーチン " コマンド受信 " フローチャート ( 非同期モードのとき ) コマンド受信 1バイト受信 (コマンドデータ) No 受信データあり? Yes 1バイトデータ受信①(コマンドデータ) Yes 受信データ①=18H?(*) RESET 8バイト受信(ダウンロード情報データ) No ダウンロード先アドレス4バイト + ダウンロードバイト数4バイト No 受信データあり? Yes 1バイトデータ受信②~⑨ (ダウンロード情報データ) ・受信データ格納アドレスインクリメント ・受信回数カウント 受信回数=8回 ? No Yes 1バイト受信 (SUMチェックデータ) No 受信データあり? Yes 1バイトデータ受信⑩(SUMチェックデータ) ①~⑨を加えて下位8ビット取出し: ⑩=α?(SUMチェック) α No SUMチェックエラー Yes EXIT *: 受信データ①が 00H である場合は,フローチャート中の番号は表 F-1 に対応しています。 受信データ①が C0H である場合は,フローチャート中の番号は表 F-2 に対応しています。 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 819 付録 F プログラムローダモード E.3 • MB91605A シリーズ サブルーチン " ダウンロード " フローチャート ( 非同期モードのとき ) 図 F-3 サブルーチン " ダウンロード " フローチャート ( 非同期モードのとき ) ダウンロード 1バイト送信 (コマンド正常受信応答) 1バイト送信 (01H) RAMにダウンロード 受信データあり? No Yes 1バイトデータ受信 ・受信データ格納アドレスインクリメント ・受信回数カウント No 受信回数=ダウンロードバイト数? Yes 1バイト受信 (SUMチェックデータ) 受信データあり? No Yes 1バイトデータ受信⑬(SUMチェックデータ) 受信データすべてを加えて下位8ビット取出し: β ⑬=β?(SUMチェック) No SUMチェックエラー Yes 1バイト送信 (01H) EXIT 820 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 F プログラムローダモード E.3 MB91605A シリーズ • " コマンドエラー " 処理フローチャート ( 非同期モードのとき ) 図 F-4 " コマンドエラー " 処理フローチャート ( 非同期モードのとき ) 1バイト送信 (コマンド異常受信応答) コマンドエラー 送信データ作成 ・受信コマンドデータ取出し ・{(受信コマンドデータ)&(F0H)}|(04H) 1バイト送信 MAIN • "SUM チェックエラー " 処理フローチャート ( 非同期モードのとき ) 図 F-5 "SUM チェックエラー " 処理フローチャート ( 非同期モードのとき ) 1バイト送信 (SUMチェック異常応答) SUMチェックエラ- 送信データ作成 ・受信コマンドデータ取出し ・{(受信コマンドデータ)&(F0H)}|(02H) 1バイト送信 MAIN • "RESET" 処理フローチャート ( 非同期モードのとき ) 図 F-6 "RESET" 処理フローチャート ( 非同期モードのとき ) 1バイト送信 (RESETコマンド受信応答) RESET 1バイト送信(11H) MAIN CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 821 付録 F プログラムローダモード E.3 • MB91605A シリーズ サブルーチン " コマンド受信 " フローチャート ( 同期モードのとき ) 図 F-7 サブルーチン " コマンド受信 " フローチャート ( 同期モードのとき ) コマンド受信 1バイト送信(ダミー)… 00H 1バイト受信 (コマンドデータ) No 受信データあり? Yes 1バイトデータ受信①(コマンドデータ) Yes 受信データ①=18H?(*) RESET No 1バイト送信(ダミー)… 00H 8バイト受信(ダウンロード情報データ) ダウンロード先アドレス4バイト + ダウンロードバイト数4バイト No 受信データあり? Yes 1バイト送信(ダミー)… 00H 1バイトデータ受信②~⑨(ダウンロード情報データ) ・受信データ格納アドレスインクリメント ・受信回数カウント No 受信回数=8回 ? 1バイト受信 (SUMチェックデータ) Yes No 受信データあり? Yes 1バイトデータ受信⑩(SUMチェックデータ) ①~⑨を加えて下位8ビット取出し: ⑩=α?(SUMチェック) α No SUMチェックエラー Yes EXIT *: 受信データ①が 00H である場合は,フローチャート中の番号は表 F-1 に対応しています。 受信データ①が C0H である場合は,フローチャート中の番号は表 F-2 に対応しています。 822 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 F プログラムローダモード E.3 MB91605A シリーズ • サブルーチン " ダウンロード " フローチャート ( 同期モードのとき ) 図 F-8 サブルーチン " ダウンロード " フローチャート ( 同期モードのとき ) ダウンロード 1バイト送信 (コマンド正常受信応答) 1バイト送信 (01H) 受信データあり? No Yes ダミー受信 DOWNLOAD 1バイト送信(ダミー)…00H 受信データあり? No Yes RAMにダウンロード 1バイトデータ受信 ・受信データ格納アドレスインクリメント ・受信回数カウント No 受信回数=ダウンロードバイト数? Yes 1バイト送信(ダミー)…00H 1バイト受信 (SUMチェックデータ) 受信データあり? No Yes ・1バイト受信データ⑬受信 ・受信データすべてを加えて下位8ビット取出し: β ⑬=β?(SUMチェック) No SUMチェックエラー Yes 1バイト送信 (01H) EXIT CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 823 付録 F プログラムローダモード E.3 • MB91605A シリーズ " コマンドエラー " 処理フローチャート ( 同期モードのとき ) 図 F-9 " コマンドエラー " 処理フローチャート ( 同期モードのとき ) 1バイト送信 (コマンド異常受信応答) コマンドエラー 送信データ作成 ・受信コマンドデータ取出し ・{(受信コマンドデータ)&(F0H)}|(04H) 1バイト送信 受信データあり? No Yes ダミー受信 メイン • "SUM チェックエラー " 処理フローチャート ( 同期モードのとき ) 図 F-10 "SUM チェックエラー " 処理フローチャート ( 同期モードのとき ) 1バイト送信 (SUMチェック異常応答) SUMチェックエラ- 送信データ作成 ・受信コマンドデータ取出し ・{(受信コマンドデータ)&(F0H)}|(02H) 1バイト送信 受信データあり? No Yes ダミー受信 メイン 824 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 F プログラムローダモード E.3 MB91605A シリーズ • "RESET" 処理フローチャート ( 同期モードのとき ) 図 F-11 "RESET" 処理フローチャート ( 同期モードのとき ) 1バイト送信 (RESETコマンド受信応答) RESET 1バイト送信(11H) 受信データあり? No Yes ダミー受信 メイン ■ メモリマップ 本ローダプログラムは , シリアルライタモードで実行され , 実行後のメモリマップは , 下記のようになります。プログラムを配置できるのは下記の RAM 領域となります。 外部領域以外へアクセスする場合は , ダウンロードされたプログラムにて , 必要なレジ スタ設定を行ってください。 図 F-12 メモリマップ 000FFFFFH 内蔵ROM 2Kバイト 000FF800H データ用RAM 0003FFFFH RAM領域128Kバイト 00020000H 使用禁止領域:"0003FF00H"~"0003FFFFH" この領域はプログラムローダ プログラムで使用する領域です。 00000000H CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 825 付録 F プログラムローダモード E.3 MB91605A シリーズ ■ ロードプログラムを利用して , フラッシュメモリへの書込みを行う例 図 F-13 に , ロード (RAM に展開 ) されたプログラムにて ,「CS4 へ接続されたフラッ シュメモリを書き込む」場合の接続例を示します。 フラッシュ全体をアクセスするためには , 内蔵リソースや RAM などの内部領域とオー バラップしない領域にフラッシュメモリを配置する必要があります。本例では , CS4 領 域に接続された 1M バイトのフラッシュメモリを"0x10 0000H" ∼ "0x1F FFFFH" 番地と してアクセスすることを想定しています。ただし , FR ファミリでは , リセットベクタ は "0xF FFFCH" 番地 , モードベクタは "0xF FFF8H" 番地に固定されており , 書き込まれ たフラッシュ内のプログラムを正常に実行させるためには , この領域をカバーしてお く必要があります。これは , 1M バイトのフラッシュの場合であれば , A20 より上位の アドレス信号はフラッシュへは接続されませんので , CS4 のアドレスレンジ設定を "0x0-0x1F FFFFH" 番 地 と す る こ と で , "0x0-0xF FFFFH" 番 地 と "0x10 0000H" ∼ "0x1FFFFFH" 番地をミラー領域としてアクセスすることで対応できます。 なお , フラッシュへ書き込まれたプログラムを実行する場合は , 外 ROM 外バスモード となりますので , ローダが格納された内蔵 ROM 領域は意識する必要はありません ( 図 F-14 を参照 )。 • オフセットアドレスを付加したメモリアクセス 図 F-13 1M バイトフラッシュの接続例 MB91605 "000F FFFCH"としても"1F FFFCH"としても,同一領域をアクセス可能 A20 A19 A18 A17 A16 .. A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 A18 A17 A16 A15 .. A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1Mバイト フラッシュ メモリ D15- D7D8 D0 CEx D31-D24 D23-D16 CS4x 826 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 付録 F プログラムローダモード E.3 MB91605A シリーズ 図 F-14 各モードにおけるメモリマップ シリアルライタモード(ローダプログラム実行時) 0x00 0000H 内蔵リソース 外ROM外バスモード(通常動作時) 0x00 0000H 内蔵リソース 内蔵RAM 内蔵RAM A* 0x0F FFFFH 0x10 0000H 0x0F FFFFH 外部フラッシュ への書込み 0x1F FFFFH B* 0x1F FFFFH *: Aの領域でプログラムを実行させる場合は, コンパイラの「ショートアドレス最適化」が使用で きますが, 内蔵メモリや, 内蔵リソースにオーバラップしている領域はアクセスできません。 Bの領域で実行させる場合は, コンパイラの「ショートアドレス最適化」は使用できませんが, 内蔵メモリなどのアドレスとオーバラップすることなく, フラッシュ全体をアクセスできます。 ■ リセットのタイミングチャート • リセットタイミング ( 非同期通信 ) 図 F-15 リセットタイミング ( 非同期通信 ) INIT SIN0 1ms以上 SOUT0 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 827 付録 F プログラムローダモード E.3 • MB91605A シリーズ リセットタイミング ( 同期通信 ) 図 F-16 リセットタイミング ( 同期通信 ) INIT SIN0 1ms以上 SOUT0 SCK0 828 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 索引 索引 Numerics A 10 ビット A/D コンバータ 構成 .........................................................................455 端子 .........................................................................456 動作説明 .................................................................463 レジスタ .................................................................457 割込み .....................................................................462 16/32 ビット 16/32 ビット PWC タイマ ....................................373 16/32 ビット PWC タイマ (ch.1, ch.0) のブロック ダイヤグラム ..................................................377 16/32 ビットリロードタイマ ..............................373 16/32 ビットリロードタイマ (ch.1, ch.0) の ブロックダイヤグラム ..................................375 16 ビット 16 ビット PPG タイマ ..........................................373 16 ビット PPG タイマのブロック ダイヤグラム ..................................................374 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 ..................................................................391 16 ビット PWM タイマ ........................................372 16 ビット PWM タイマのブロック ダイヤグラム ..................................................374 16 ビット PPG タイマ 16 ビット PPG タイマ ..........................................373 16 ビット PPG タイマのブロック ダイヤグラム ..................................................374 16 ビット PWM タイマ 16 ビット PWM タイマ ........................................372 16 ビット PWM タイマのブロック ダイヤグラム ..................................................374 16 ビットリロードタイマ イベントカウンタモード時の動作 .....................329 インターバルモード時の動作 .............................316 カスケードモード時の動作 .................................335 構成 .........................................................................303 使用上の注意 .........................................................337 端子 .........................................................................305 レジスタ .................................................................306 割込み .....................................................................314 32 ビット 16/32 ビット PWC タイマ ....................................373 16/32 ビット PWC タイマ (ch.1, ch.0) のブロック ダイヤグラム ..................................................377 16/32 ビットリロードタイマ ..............................373 16/32 ビットリロードタイマ (ch.1, ch.0) の ブロックダイヤグラム ..................................375 32 ビットモード機能 ............................................389 32 ビットモード設定 ............................................389 32 ビットモード動作 ............................................390 7 ビットスレーブアドレスマスクレジスタ 7 ビットスレーブアドレスマスクレジスタ (ISMK) ..............................................................614 7 ビットスレーブアドレスレジスタ 7 ビットスレーブアドレスレジスタ (ISBA) ...............................................................615 A/D コンバータ 構成 ........................................................................455 端子 ........................................................................456 動作説明 ................................................................ 463 レジスタ ................................................................ 457 割込み ....................................................................462 CM71-10147-2 B BGR ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 ........ 491, 545, 616 BTxDTBF データバッファレジスタ (BTxDTBF) の ビット構成 ......................................................444 BTxPCSR PWM 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................402 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................432 BTxPDUT PWM デューティ設定レジスタ (BTxPDUT) の ビット構成 ......................................................403 BTxPRLH "H" 幅設定リロードレジスタ (BTxPRLH) のビッ ト構成 .............................................................. 417 BTxPRLL "L" 幅設定リロードレジスタ (BTxPRLL) のビット 構成 .................................................................. 416 BTxSTC ステータス制御レジスタ (BTxSTC) .................................400, 414, 430, 442 BTxTMCR タイマ制御レジスタ (BTxTMCR 下位バイト ) ....... 398, 412, 427, 440 タイマ制御レジスタ (BTxTMCR 上位バイト ) ....... 396, 410, 438, 425 BTxTMR タイマレジスタ (BTxTMR) の ビット構成 ......................................404, 418, 433 C CPU CPU 間接続 ............................................ 518, 520, 587 EIT(例外・割込み・トラップ).......................... 49 アドレッシング ......................................................44 基本プログラミングモデル ..................................32 データ構造 .............................................................. 42 内部アーキテクチャの特徴 ..................................26 パイプライン .......................................................... 28 分岐命令 .................................................................. 46 命令概要 .................................................................. 30 メモリ空間 .............................................................. 24 FUJITSU SEMICONDUCTOR LIMITED 829 MB91605A シリーズ 索引 レジスタ ...................................................................33 CSIO 4 チャネル同時通信モード時の動作 ..................579 CSIO ( クロック同期シリアルインタフェース ) の 機能 ..................................................................525 CSIO ( クロック同期シリアルインタフェース ) の 動作 ..................................................................564 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 CSIO( クロック同期シリアルインタフェース ) ボーレート選択 ..............................................583 CSIO の割込み .......................................................558 D DMA コントローラ(DMAC) 起動 .........................................................................700 構成 .........................................................................673 使用上の注意 .........................................................717 制御フロー .............................................................716 設定 .........................................................................693 動作 .........................................................................701 レジスタ .................................................................674 E I/O ポート 構成 ........................................................................249 端子 ........................................................................250 レジスタ ................................................................ 251 I2C I2C インタフェースの機能 ..................................591 I2C インタフェースのレジスタ一覧 .................. 592 I2C インタフェースの割込み ..............................626 I2C バススタート条件 .......................................... 628 I2C バスステータスレジスタ (IBSR) ................. 605 I2C バスストップ条件 .......................................... 628 I2C バス制御レジスタ (IBCR) ............................. 597 I2C バス反復スタート条件 ..................................628 IBCR I2C バス制御レジスタ (IBCR) ............................. 597 IBSR I2C バスステータスレジスタ (IBSR) ................. 605 ISBA 7 ビットスレーブアドレスレジスタ (ISBA) .............................................................. 615 ISMK 7 ビットスレーブアドレスマスクレジスタ (ISMK) .............................................................614 L EIT EIT(例外・割込み・トラップ)..........................49 ESCR 拡張通信制御レジスタ (ESCR) の ビット構成 ..............................................485, 540 F FIFO FIFO 制御レジスタ 0(FCR0) の ビット構成 ......................................496, 550, 620 FIFO 制御レジスタ 1(FCR1) の ビット構成 ......................................493, 547, 617 FIFO の機能 ...........................................................591 FIFO バイトレジスタ (FBYTE1/FBYTE2) の ビット構成 ......................................499, 553, 624 受信 FIFO 使用時の受信割込み発生とフラグ セットのタイミング ..............................504, 560 送受信 FIFO ...........................................................468 送信 FIFO 使用時の送信割込み発生とフラグ セットのタイミング ..............................507, 563 FIFO 制御レジスタ FIFO 制御レジスタ 0(FCR0) の ビット構成 ......................................496, 550, 620 FIFO 制御レジスタ 1(FCR1) の ビット構成 ......................................493, 547, 617 FIFO バイトレジスタ FIFO バイトレジスタ (FBYTE1/FBYTE2) の ビット構成 ......................................499, 553, 624 H "H" 幅設定リロードレジスタ "H" 幅設定リロードレジスタ (BTxPRLH) の ビット構成 ......................................................417 830 I L PWM 出力オール "L" またはオール "H" の 出力方法 .......................................................... 408 "L" 幅設定リロードレジスタ "L" 幅設定リロードレジスタ (BTxPRLL) のビット 構成 .................................................................. 416 M MB91605A 外形寸法図 ................................................................ 7 概要 ............................................................................2 品種構成 .................................................................... 5 ブロックダイヤグラム ............................................ 6 N NMI 入力 動作説明 ................................................................ 197 P PCLK 各周辺クロック (PCLK) 周波数に対するリロード 値とボーレート ......................................585, 653 PPG 16 ビット PPG タイマ .......................................... 373 16 ビット PPG タイマのブロック ダイヤグラム ..................................................374 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 .................................................................. 391 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) ................................... 423 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ PWC 16/32 ビット PWC タイマ ....................................373 PWC タイマの使用上の注意 ...............................392 PWC タイマ 16/32 ビット PWC タイマ (ch.1, ch.0) のブロック ダイヤグラム ..................................................377 PWM 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 ..................................................................391 16 ビット PWM タイマ ........................................372 16 ビット PWM タイマのブロック ダイヤグラム ..................................................374 PWM 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................402 PWM 出力オール "L" またはオール "H" の 出力方法 ..........................................................408 PWM デューティ設定レジスタ (BTxPDUT) の ビット構成 ......................................................403 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) .................................407 PWM 周期設定レジスタ PWM 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................402 PWM 出力 PWM 出力オール "L" またはオール "H" の 出力方法 ..........................................................408 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) .................................407 PWM タイマ 16 ビット PWM タイマ ........................................372 16 ビット PWM タイマのブロック ダイヤグラム ..................................................374 PWM デューティ設定レジスタ PWM デューティ設定レジスタ (BTxPDUT) の ビット構成 ......................................................403 索引 U UART UART( 非同期シリアルインタフェース ) の 機能 .................................................................. 470 UART( 非同期シリアルインタフェース ) の レジスタ一覧 ..................................................471 UART の動作 .........................................................508 UART の割込み ..................................................... 501 UART ボーレート選択 ........................................ 513 R RDR 受信データレジスタ (RDR) ...............................................487, 542, 612 S SCR シリアル制御レジスタ (SCR) .....................476, 531 SMR シリアルモードレジスタ (SMR) ........479, 534, 603 SPI SPI 転送 (I) .............................................................571 SPI 転送 (II) ............................................................575 SSR シリアルステータスレジスタ (SSR) .................................................482, 537, 609 T TDR 送信データレジスタ (TDR) ................................................489, 543, 613 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 831 MB91605A シリーズ 索引 あ か アービトレーションロスト アービトレーションロスト .................................645 アドレス 7 ビットスレーブアドレスマスクレジスタ (ISMK) ..............................................................614 7 ビットスレーブアドレスレジスタ (ISBA) ...............................................................615 スレーブアドレス一致検出 .................................647 スレーブアドレス出力 .........................................630 アドレスレジスタ 7 ビットスレーブアドレスレジスタ (ISBA) ...............................................................615 アンダフロー動作 アンダフロー動作 .................................................435 外部 外部クロック ........................................................ 517 外部クロック 外部クロック ........................................................ 517 外部バスインタフェース 構成 ........................................................................215 使用上の注意 ........................................................ 244 レジスタ ................................................................ 217 レジスタ設定例 ....................................................236 外部割込み制御部 構成 ........................................................................273 スタンバイモードからの復帰 ............................286 スリープモードからの復帰 ................................288 端子 ........................................................................275 動作説明 ................................................................ 283 レジスタ ................................................................ 276 概要 動作概要 ................................................................ 419 カウンタ カウンタのクリアと初期値 ................................448 リロードカウンタの機能 .................... 517, 585, 653 カウント カウントクロックの選択 .................................... 446 カウントの開始 ....................................517, 585, 653 書込み リロードレジスタへの書込みタイミング ........419 各タイマ 各タイマの使用上で共通する注意 .................... 391 拡張通信制御レジスタ 拡張通信制御レジスタ (ESCR) の ビット構成 ..............................................485, 540 関係 モード設定と各種タイマ機能の関係 ................ 372 リロード値とパルス幅の関係 ............................422 い インタフェース CSIO ( クロック同期シリアルインタフェース ) の 機能 ..................................................................525 CSIO ( クロック同期シリアルインタフェース ) の 動作 ..................................................................564 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 CSIO( クロック同期シリアルインタフェース ) ボーレート選択 ..............................................583 I2C インタフェースの機能 ..................................591 I2C インタフェースのレジスタ一覧 ..................592 I2C インタフェースの割込み ..............................626 UART( 非同期シリアルインタフェース ) の 機能 ..................................................................470 UART( 非同期シリアルインタフェース ) の レジスタ一覧 ..................................................471 インタフェースモード .........................................467 インタフェースモードの切換え .........................467 う ウォッチドッグタイマ 構成 .........................................................................291 動作説明 .................................................................298 レジスタ .................................................................293 え エラー バスエラー動作 .....................................................651 バスエラー発生条件 .............................................651 お オール "L" またはオール "H" PWM 出力オール "L" またはオール "H" の 出力方法 ..........................................................408 832 き 起動 起動後の動作 ........................................................ 448 パルス幅測定の起動と停止 ................................448 機能 機能ごとの割込み制御ビットと割込み 要因 .................................................................. 393 機能選択 ................................................................ 520 く クリア カウンタのクリアと初期値 ................................448 クロック CSIO ( クロック同期シリアルインタフェース ) の 機能 .................................................................. 525 CSIO ( クロック同期シリアルインタフェース ) の 動作 .................................................................. 564 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 CSIO( クロック同期シリアルインタフェース ) ボーレート選択 .............................................. 583 外部クロック ........................................................ 517 カウントクロックの選択 .................................... 446 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 各周辺クロック (PCLK) 周波数に対するリロード 値とボーレート ..............................585, 515, 653 内部クロック選択時のカウント動作 .................434 クロック生成部 PLL クロック(PLLCLK)生成のための逓倍率 ..........................................................................117 構成 ...........................................................................97 ソースクロック(SRCCLK)の切換え .............115 端子 .........................................................................100 動作説明 .................................................................113 レジスタ .................................................................101 クロック同期シリアルインタフェース CSIO ( クロック同期シリアルインタフェース ) の 機能 ..................................................................525 CSIO ( クロック同期シリアルインタフェース ) の 動作 ..................................................................564 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 CSIO( クロック同期シリアルインタフェース ) ボーレート選択 ..............................................583 クロック分周制御部 構成 .........................................................................123 内部クロック .........................................................121 分周比 .....................................................................128 レジスタ .................................................................124 さ 再起動 再起動 .....................................................................448 再スタート 再スタート .....................................................517, 586 し 周期設定レジスタ PWM 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................402 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................432 周辺機能によるDMA転送要求の発生/クリア選択機能 DMA 転送時の動作 ..............................................736 構成 .........................................................................721 レジスタ .................................................................723 受信 FIFO 受信 FIFO 使用時の受信割込み発生とフラグ セットのタイミング ..............................504, 560 受信時 受信時の許容ボーレート範囲 .............................516 受信データミラーレジスタ 受信データミラーレジスタ (RDRM) .................557 受信データレジスタ 受信データレジスタ (RDR) ...............................................487, 542, 612 受信割込み 受信 FIFO 使用時の受信割込み発生とフラグ セットのタイミング ..............................504, 560 受信割込み発生とフラグセットの タイミング ..............................................503, 559 出力端子機能 出力端子機能の動作 .............................................436 CM71-10147-2 索引 使用上の注意 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 .................................................................. 391 PWC タイマの使用上の注意 ............................... 392 初期値 カウンタのクリアと初期値 ................................448 シリアル書込み接続例 使用する端子 ........................................................ 756 同期シリアル書込み接続例 ................................757 非同期シリアル書込み接続例 ............................758 シリアルステータスレジスタ シリアルステータスレジスタ (SSR) ................................................ 482, 537, 609 シリアル制御レジスタ シリアル制御レジスタ (SCR) .....................476, 531 シリアルモード選択レジスタ シリアルモード選択レジスタ (SSEL89AB) の ビット構成 ......................................................555 シリアルモードレジスタ シリアルモードレジスタ (SMR) ........ 479, 534, 603 す スタート スタート条件生成 ................................................629 ステータス制御レジスタ ステータス制御レジスタ (BTxSTC) .................................400, 414, 430, 442 ストップモード ストップモード時の動作 .................................... 160 スリープモード スリープモード時の動作 .................................... 156 スレーブ 7 ビットスレーブアドレスマスクレジスタ (ISMK) .............................................................614 7 ビットスレーブアドレスレジスタ (ISBA) .............................................................. 615 スレーブアドレス一致検出 ................................647 スレーブアドレス出力 ........................................ 630 スレーブによる受信 ............................................ 648 スレーブによる送信 ............................................ 650 スレーブアドレスマスクレジスタ 7 ビットスレーブアドレスマスクレジスタ (ISMK) .............................................................614 スレーブアドレスレジスタ 7 ビットスレーブアドレスレジスタ (ISBA) .............................................................. 615 せ 制御レジスタ FIFO 制御レジスタ 0(FCR0) の ビット構成 ......................................496, 550, 620 FIFO 制御レジスタ 1(FCR1) の ビット構成 ......................................493, 547, 617 I2C バス制御レジスタ (IBCR) ............................. 597 シリアル制御レジスタ (SCR) .....................476, 531 ステータス制御レジスタ (BTxSTC) .................................400, 414, 430, 442 タイマ制御レジスタ (BTxTMCR 下位バイト ) ....... 398, 412, 427, 440 FUJITSU SEMICONDUCTOR LIMITED 833 MB91605A シリーズ 索引 タイマ制御レジスタ (BTxTMCR 上位バイト ) .......396, 410, 438, 425 そ 送受信 送受信 FIFO ...........................................................468 送信 FIFO 送信 FIFO 使用時の送信割込み発生とフラグ セットのタイミング ..............................507, 563 送信データミラーレジスタ 送信データミラーレジスタ (TDRM) .................557 送信データレジスタ 送信データレジスタ (TDR) ................................................489, 543, 613 送信割込み 送信 FIFO 使用時の送信割込み発生とフラグ セットのタイミング ..............................507, 563 送信割込み発生とフラグセットの タイミング ..............................................506, 562 ソースクロック ソースクロック(SRCCLK)の切換え .............115 た 第一バイト送信 第一バイト送信によるアクノリッジ受信 .........632 タイマ 16/32 ビット PWC タイマ ....................................373 16/32 ビットリロードタイマ ..............................373 16/32 ビットリロードタイマ (ch.1, ch.0) の ブロックダイヤグラム ..................................375 16 ビット PPG タイマ ..........................................373 16 ビット PPG タイマのブロック ダイヤグラム ..................................................374 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 ..................................................................391 16 ビット PWM タイマ ........................................372 16 ビット PWM タイマのブロック ダイヤグラム ..................................................374 PWC タイマの使用上の注意 ...............................392 各タイマの使用上で共通する注意 .....................391 タイマ制御レジスタ (BTxTMCR 下位バイト ) .......398, 412, 427, 440 タイマ制御レジスタ (BTxTMCR 上位バイト ) .......396, 410, 438, 425 タイマレジスタ (BTxTMR) の ビット構成 ......................................404, 418, 433 ベースタイマの機能 .............................................394 ベースタイマの動作 .............................................387 ベースタイマのレジスタ一覧 .............................379 モード設定と各種タイマ機能の関係 .................372 タイマ制御レジスタ タイマ制御レジスタ (BTxTMCR 下位バイト ) .......398, 412, 427, 440 タイマ制御レジスタ (BTxTMCR 上位バイト ) .......396, 410, 438, 425 タイマレジスタ タイマレジスタ (BTxTMR) の ビット構成 ......................................404, 418, 433 834 タイミング 受信 FIFO 使用時の受信割込み発生とフラグ セットのタイミング ..............................504, 560 受信割込み発生とフラグセットの タイミング ..............................................503, 559 送信 FIFO 使用時の送信割込み発生とフラグ セットのタイミング ..............................507, 563 送信割込み発生とフラグセットの タイミング ..............................................506, 562 リロードレジスタへの書込みタイミング ........419 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) ................................... 423 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) ................................. 407 タイミングチャート 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) ................................... 423 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) ................................. 407 端子 出力端子機能の動作 ............................................ 436 端子機能一覧 .......................................................... 11 端子配列図 .............................................................. 10 入出力回路形式 ......................................................20 入力端子機能の動作 ............................................ 436 ち 遅延割込み 構成 ........................................................................207 使用上の注意 ........................................................ 211 動作説明 ................................................................ 210 レジスタ ................................................................ 208 注意 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 .................................................................. 391 PWC タイマの使用上の注意 ............................... 392 各タイマの使用上で共通する注意 .................... 391 つ 通常極性 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) ................................... 423 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) ................................. 407 て 停止 停止について ........................................................ 448 パルス幅測定の起動と停止 ................................448 低消費電力モード クロック制御時の動作 ........................................ 153 構成 ........................................................................145 使用上の注意 ........................................................ 162 ストップモード時の動作 .................................... 160 スリープモード時の動作 .................................... 156 ドーズモード時の動作 ........................................ 155 メインタイマモード時の動作 ............................158 レジスタ ................................................................ 147 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ データ 受信データレジスタ (RDR) ...............................................487, 542, 612 送信データレジスタ (TDR) ................................................489, 543, 613 データ方向ビット .................................................648 マスタによるデータ受信 .....................................643 マスタによるデータ送信 .....................................636 データキャッシュメモリ 各キャッシュ動作状態でのキャッシュ内容 .......86 キャッシュオフ時の RAM 動作モード ...............87 構成 ...........................................................................79 初期状態 ...................................................................85 データキャッシュのキャッシュ対象領域 ...........85 データキャッシュの動作許可 ...............................86 データキャッシュの無効化 ...................................86 レジスタ ...................................................................81 データバッファレジスタ データバッファレジスタ (BTxDTBF) の ビット構成 ......................................................444 データレジスタ 受信データレジスタ (RDR) ...............................................487, 542, 612 送信データレジスタ (TDR) ................................................489, 543, 613 デバイスの取扱いについて デバイス取扱い上の注意 .....................................760 転送 SPI 転送 (I) .............................................................571 SPI 転送 (II) ............................................................575 ノーマル転送 (I) ....................................................564 ノーマル転送 (II) ..................................................567 と 同期シリアルインタフェース CSIO ( クロック同期シリアルインタフェース ) の 機能 ..................................................................525 CSIO ( クロック同期シリアルインタフェース ) の 動作 ..................................................................564 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 CSIO( クロック同期シリアルインタフェース ) ボーレート選択 ..............................................583 動作 32 ビットモード動作 ............................................390 CSIO ( クロック同期シリアルインタフェース ) の 動作 ..................................................................564 UART の動作 .........................................................508 アンダフロー動作 .................................................435 起動後の動作 .........................................................448 出力端子機能の動作 .............................................436 動作概要 .................................................................419 動作モード .............................................................475 動作モードの選択 .................................................447 内部クロック選択時のカウント動作 .................434 入力端子機能の動作 .............................................436 バスエラー動作 .....................................................651 ベースタイマの動作 .............................................387 ワンショット動作 .........................................406, 421 動作モード 各種モード詳細 .......................................................94 CM71-10147-2 索引 構成 ..........................................................................91 動作モード ............................................................ 475 動作モードの選択 ................................................447 動作モード設定方法 .............................................. 94 レジスタ .................................................................. 92 ドーズモード ドーズモード時の動作 ........................................ 155 な 内部クロック 内部クロック選択時のカウント動作 ................ 434 に 入出力回路形式 入出力回路形式 ......................................................20 入力端子機能 入力端子機能の動作 ............................................ 436 の ノーマル ノーマル転送 (I) ................................................... 564 ノーマル転送 (II) ..................................................567 は バスエラー バスエラー動作 ....................................................651 バスエラー発生条件 ............................................ 651 バスステータスレジスタ I2C バスステータスレジスタ (IBSR) ................. 605 パルス パルス幅測定機能 ................................................445 パルス幅測定動作詳細 ........................................ 449 パルス幅測定の起動と停止 ................................448 リロード値とパルス幅の関係 ............................422 ひ ビット構成 FIFO 制御レジスタ 0(FCR0) の ビット構成 ......................................496, 550, 620 FIFO 制御レジスタ 1(FCR1) の ビット構成 ......................................493, 547, 617 FIFO バイトレジスタ (FBYTE1/FBYTE2) の ビット構成 ......................................499, 553, 624 "H" 幅設定リロードレジスタ (BTxPRLH) の ビット構成 ......................................................417 "L" 幅設定リロードレジスタ (BTxPRLL) のビット 構成 .................................................................. 416 PWM 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................402 PWM デューティ設定レジスタ (BTxPDUT) の ビット構成 ......................................................403 拡張通信制御レジスタ (ESCR) の ビット構成 ..............................................485, 540 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................432 FUJITSU SEMICONDUCTOR LIMITED 835 MB91605A シリーズ 索引 シリアルモード選択レジスタ (SSEL89AB) の ビット構成 ......................................................555 タイマレジスタ (BTxTMR) の ビット構成 ......................................404, 418, 433 データバッファレジスタ (BTxDTBF) の ビット構成 ......................................................444 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 ........491, 545, 616 非同期シリアルインタフェース UART( 非同期シリアルインタフェース ) の 機能 ..................................................................470 UART( 非同期シリアルインタフェース ) の レジスタ一覧 ..................................................471 ふ ま マスタ マスタによるデータ受信 .................................... 643 マスタによるデータ送信 .................................... 636 マスタモードのウェイト .................................... 646 マルチファンクションシリアルインタフェース (CSIO) 4 チャネル同時通信モード時の動作 ................. 579 め フラグセット 受信 FIFO 使用時の受信割込み発生とフラグ セットのタイミング ..............................504, 560 受信割込み発生とフラグセットの タイミング ..............................................503, 559 送信 FIFO 使用時の送信割込み発生とフラグ セットのタイミング ..............................507, 563 送信割込み発生とフラグセットの タイミング ..............................................506, 562 フローチャート フローチャート .....................................518, 521, 587 ブロックダイヤグラム 16/32 ビット PWC タイマ (ch.1, ch.0) のブロック ダイヤグラム ..................................................377 16/32 ビットリロードタイマ (ch.1, ch.0) の ブロックダイヤグラム ..................................375 16 ビット PPG タイマのブロック ダイヤグラム ..................................................374 16 ビット PWM タイマのブロック ダイヤグラム ..................................................374 へ ベースタイマ ベースタイマの機能 .............................................394 ベースタイマの動作 .............................................387 ベースタイマのレジスタ一覧 .............................379 ベースタイマ入出力選択機能 構成 .........................................................................342 端子 .........................................................................343 入出力モード .........................................................356 レジスタ .................................................................345 ほ ボーレート CSIO( クロック同期シリアルインタフェース ) ボーレート選択 ..............................................583 UART ボーレート選択 .........................................513 各周辺クロック (PCLK) 周波数に対するリロード 値とボーレート ..............................515, 585, 653 受信時の許容ボーレート範囲 .............................516 ボーレート選択 .....................................................652 ボーレートの計算 .................................514, 584, 652 836 ボーレートジェネレータ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 ........ 491, 545, 616 命令キャッシュメモリ 各キャッシュ動作状態でのキャッシュ内容 ...... 75 構成 ..........................................................................63 初期状態 .................................................................. 72 命令キャッシュのキャッシュ対象領域 ..............72 命令キャッシュの動作許可 ..................................73 命令キャッシュの無効化 ...................................... 73 命令キャッシュロック機能 ..................................73 レジスタ .................................................................. 65 メインタイマ 構成 ........................................................................133 ストップモードへの遷移について .................... 142 メインタイマの動作 ............................................ 140 レジスタ ................................................................ 134 割込み ....................................................................139 メインタイマモード メインタイマモード時の動作 ............................158 も モード 32 ビットモード機能 ...........................................389 32 ビットモード設定 ...........................................389 32 ビットモード動作 ...........................................390 インタフェースモード ........................................ 467 インタフェースモードの切換え ........................ 467 シリアルモードレジスタ (SMR) ........ 479, 534, 603 動作モード ............................................................ 475 動作モードの選択 ................................................447 マスタモードのウェイト .................................... 646 モード設定と各種タイマ機能の関係 ................ 372 リセットモード ....................................................372 モードレジスタ シリアルモードレジスタ (SMR) ........ 479, 534, 603 り リセット イレギュラーリセット ........................................ 179 リセットモード ....................................................372 構成 ........................................................................165 端子 ........................................................................167 動作状態と遷移 ....................................................180 リセットの種類 ....................................................173 リセットの動作 ....................................................175 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ リセット要因 .........................................................174 レジスタ .................................................................168 リモコン受信 動作説明と設定手順例 .........................................751 レジスタ .................................................................741 リロード 16/32 ビットリロードタイマ ..............................373 16/32 ビットリロードタイマ (ch.1, ch.0) の ブロックダイヤグラム ..................................375 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 ..................................................................391 "H" 幅設定リロードレジスタ (BTxPRLH) のビッ ト構成 ..............................................................417 "L" 幅設定リロードレジスタ (BTxPRLL) のビット 構成 ..................................................................416 各周辺クロック (PCLK) 周波数に対するリロード 値とボーレート ..............................515, 585, 653 リロードカウンタの機能 .....................517, 585, 653 リロード値とパルス幅の関係 .............................422 リロードレジスタへの書込みタイミング .........419 リロードタイマ 16/32 ビットリロードタイマ ..............................373 16/32 ビットリロードタイマ (ch.1, ch.0) の ブロックダイヤグラム ..................................375 16 ビット PWM/PPG/ リロードタイマの使用上の 注意 ..................................................................391 リロードタイマ(16 ビット) イベントカウンタモード時の動作 .....................329 インターバルモード時の動作 .............................316 カスケードモード時の動作 .................................335 構成 .........................................................................303 使用上の注意 .........................................................337 端子 .........................................................................305 レジスタ .................................................................306 割込み .....................................................................314 リロード値 各周辺クロック (PCLK) 周波数に対するリロード 値とボーレート ..............................515, 585, 653 リロード値とパルス幅の関係 .............................422 リロードレジスタ "H" 幅設定リロードレジスタ (BTxPRLH) のビッ ト構成 ..............................................................417 "L" 幅設定リロードレジスタ (BTxPRLL) のビット 構成 ..................................................................416 リロードレジスタへの書込みタイミング .........419 れ レジスタ 7 ビットスレーブアドレスマスクレジスタ (ISMK) ..............................................................614 7 ビットスレーブアドレスレジスタ (ISBA) ...............................................................615 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 FIFO 制御レジスタ 0(FCR0) の ビット構成 ......................................496, 550, 620 FIFO 制御レジスタ 1(FCR1) の ビット構成 ......................................493, 547, 617 FIFO バイトレジスタ (FBYTE1/FBYTE2) の ビット構成 ......................................499, 553, 624 CM71-10147-2 索引 "H" 幅設定リロードレジスタ (BTxPRLH) の ビット構成 ......................................................417 I2C インタフェースのレジスタ一覧 .................. 592 I2C バスステータスレジスタ (IBSR) ................. 605 I2C バス制御レジスタ (IBCR) ............................. 597 "L" 幅設定リロードレジスタ (BTxPRLL) のビット 構成 .................................................................. 416 PWM 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................402 PWM デューティ設定レジスタ (BTxPDUT) の ビット構成 ......................................................403 UART( 非同期シリアルインタフェース ) の レジスタ一覧 ..................................................471 拡張通信制御レジスタ (ESCR) の ビット構成 ..............................................485, 540 周期設定レジスタ (BTxPCSR) の ビット構成 ......................................................432 受信データレジスタ (RDR0) .............................................487, 542, 612 シリアルステータスレジスタ (SSR) ................................................ 482, 537, 609 シリアル制御レジスタ (SCR) .....................476, 531 シリアルモードレジスタ (SMR) ........ 479, 534, 603 ステータス制御レジスタ (BTxSTC) .................................400, 414, 430, 442 送信データレジスタ (TDR) ...............................................489, 543, 613 タイマ制御レジスタ (BTxTMCR 下位バイト ) ....... 398, 412, 427, 440 タイマ制御レジスタ (BTxTMCR 上位バイト ) ....... 396, 410, 438, 425 タイマレジスタ (BTxTMR) の ビット構成 ......................................404, 418, 433 データバッファレジスタ (BTxDTBF) の ビット構成 ......................................................444 ベースタイマのレジスタ一覧 ............................379 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 ........ 491, 545, 616 リロードレジスタへの書込みタイミング ........419 受信データミラーレジスタ (RDRM) ................. 557 シリアルモード選択レジスタ (SSEL89AB) の ビット構成 ......................................................555 送信データミラーレジスタ (TDRM) ................. 557 レジスタ一覧 CSIO( クロック同期シリアルインタフェース ) の レジスタ一覧 ..................................................526 I2C インタフェースのレジスタ一覧 .................. 592 UART( 非同期シリアルインタフェース ) の レジスタ一覧 ..................................................471 ベースタイマのレジスタ一覧 ............................379 連続動作 連続動作 ........................................................405, 420 わ 割込み CSIO の割込み ......................................................558 I2C インタフェースの割込み ..............................626 UART の割込み ..................................................... 501 機能ごとの割込み制御ビットと割込み 要因 .................................................................. 393 FUJITSU SEMICONDUCTOR LIMITED 837 MB91605A シリーズ 索引 受信 FIFO 使用時の受信割込み発生とフラグ セットのタイミング ..............................504, 560 受信割込み発生とフラグセットの タイミング ..............................................503, 559 送信 FIFO 使用時の送信割込み発生とフラグ セットのタイミング ..............................507, 563 送信割込み発生とフラグセットの タイミング ..............................................506, 562 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) ...................................423 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) .................................407 割込みコントローラ 構成 .........................................................................187 使用上の注意 .........................................................193 動作説明 .................................................................191 レジスタ .................................................................188 割込み制御 機能ごとの割込み制御ビットと割込み 要因 ..................................................................393 割込み要因 機能ごとの割込み制御ビットと割込み 要因 ..................................................................393 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) ...................................423 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) .................................407 割込み要求一括読出し機能 構成 .........................................................................201 使用上の注意 .........................................................204 レジスタ .................................................................202 ワンショット動作 ワンショット動作 .........................................406, 421 838 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 端子索引 端子名 関連機能 ページ A0 外部バスインタフェース 213 A1 外部バスインタフェース 213 A2 外部バスインタフェース 213 A3 外部バスインタフェース 213 A4 外部バスインタフェース 213 A5 外部バスインタフェース 213 A6 外部バスインタフェース 213 A7 外部バスインタフェース 213 A8 外部バスインタフェース 213 A9 外部バスインタフェース 213 A10 外部バスインタフェース 213 A11 外部バスインタフェース 213 A12 外部バスインタフェース 213 A13 外部バスインタフェース 213 A14 外部バスインタフェース 213 A15 外部バスインタフェース 213 A16 外部バスインタフェース 213 A17 外部バスインタフェース 213 A18 外部バスインタフェース 213 A19 外部バスインタフェース 213 A20 外部バスインタフェース 213 A21 外部バスインタフェース 213 A22 外部バスインタフェース 213 A23 外部バスインタフェース 213 AN0 10 ビット A/D コンバータ 456 AN1 10 ビット A/D コンバータ 456 AN2 10 ビット A/D コンバータ 456 AN3 10 ビット A/D コンバータ 456 AN4 10 ビット A/D コンバータ 456 AN5 10 ビット A/D コンバータ 456 AN6 10 ビット A/D コンバータ 456 AN7 10 ビット A/D コンバータ 456 AN8 10 ビット A/D コンバータ 456 AN9 10 ビット A/D コンバータ 456 AN10 10 ビット A/D コンバータ 456 AN11 10 ビット A/D コンバータ 456 AS 外部バスインタフェース 213 ATRG 10 ビット A/D コンバータ 456 A AVCC 10 ビット A/D コンバータ 456 AVRH 10 ビット A/D コンバータ 456 AVSS 10 ビット A/D コンバータ 456 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 839 MB91605A シリーズ 端子名 関連機能 ページ CS4 外部バスインタフェース 213 CS5 外部バスインタフェース 213 CS6 外部バスインタフェース 213 CS8 SDRAM インタフェース 213 D16 外部バスインタフェース 213 D17 外部バスインタフェース 213 D18 外部バスインタフェース 213 D19 外部バスインタフェース 213 D20 外部バスインタフェース 213 D21 外部バスインタフェース 213 D22 外部バスインタフェース 213 D23 外部バスインタフェース 213 D24 外部バスインタフェース 213 D25 外部バスインタフェース 213 D26 外部バスインタフェース 213 D27 外部バスインタフェース 213 D28 外部バスインタフェース 213 D29 外部バスインタフェース 213 D30 外部バスインタフェース 213 D31 外部バスインタフェース 213 INIT リセット 165 INT0 外部割込み要求 275 INT1 外部割込み要求 275 INT2 外部割込み要求 275 INT3 外部割込み要求 275 INT4 外部割込み要求 275 INT5 外部割込み要求 275 INT6 外部割込み要求 275 INT7 外部割込み要求 275 INT8 外部割込み要求 275 INT9 外部割込み要求 275 INT10 外部割込み要求 275 INT11 外部割込み要求 275 INT12 外部割込み要求 275 INT13 外部割込み要求 275 INT14 外部割込み要求 275 INT15 外部割込み要求 275 INT16 外部割込み要求 275 INT17 外部割込み要求 275 INT18 外部割込み要求 275 INT19 外部割込み要求 275 INT20 外部割込み要求 275 INT21 外部割込み要求 275 INT22 外部割込み要求 275 C D I 840 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 端子名 関連機能 ページ INT23 外部割込み要求 275 MCAS SDRAM インタフェース 213 MCLK 外部バスインタフェース 213 MCLKE SDRAM インタフェース 213 MD0 モード端子 11 MD1 モード端子 11 MDQM2 外部バスインタフェース 213 MDQM3 M 外部バスインタフェース 213 MDWE SDRAM インタフェース 213 MRAS SDRAM インタフェース 213 NMI 入力 195 P20 I/O ポート 250 P21 I/O ポート 250 P22 I/O ポート 250 P23 I/O ポート 250 P30 I/O ポート 250 P31 I/O ポート 250 P32 I/O ポート 250 P33 I/O ポート 250 P34 I/O ポート 250 P35 I/O ポート 250 P36 I/O ポート 250 P37 I/O ポート 250 P40 I/O ポート 250 P41 I/O ポート 250 P42 I/O ポート 250 P43 I/O ポート 250 P44 I/O ポート 250 P45 I/O ポート 250 P50 I/O ポート 250 P51 I/O ポート 250 P52 I/O ポート 250 P53 I/O ポート 250 P54 I/O ポート 250 P55 I/O ポート 250 P56 I/O ポート 250 P57 N NMI P I/O ポート 250 P60 I/O ポート 250 P61 I/O ポート 250 P62 I/O ポート 250 P63 I/O ポート 250 P64 I/O ポート 250 P65 I/O ポート 250 P66 I/O ポート 250 CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 841 MB91605A シリーズ 端子名 関連機能 ページ P67 I/O ポート 250 P70 I/O ポート 250 P71 I/O ポート 250 P72 I/O ポート 250 P73 I/O ポート 250 P74 I/O ポート 250 P75 I/O ポート 250 P76 I/O ポート 250 P77 I/O ポート 250 P80 I/O ポート 250 P81 I/O ポート 250 P82 I/O ポート 250 P83 I/O ポート 250 P84 I/O ポート 250 P85 I/O ポート 250 P90 I/O ポート 250 P91 I/O ポート 250 P92 I/O ポート 250 P93 I/O ポート 250 P94 I/O ポート 250 P95 I/O ポート 250 PA0 I/O ポート 250 PA1 I/O ポート 250 PA2 I/O ポート 250 PA3 I/O ポート 250 PA4 I/O ポート 250 PA5 I/O ポート 250 PB0 I/O ポート 250 PB1 I/O ポート 250 PB2 I/O ポート 250 PB3 I/O ポート 250 PB4 I/O ポート 250 PB5 I/O ポート 250 PB6 I/O ポート 250 PB7 I/O ポート 250 PC0 I/O ポート 250 PC1 I/O ポート 250 PC2 I/O ポート 250 PC3 I/O ポート 250 PC4 I/O ポート 250 PC5 I/O ポート 250 PC6 I/O ポート 250 PC7 I/O ポート 250 PD0 I/O ポート 250 PD1 I/O ポート 250 PD2 I/O ポート 250 PD3 I/O ポート 250 PD4 I/O ポート 250 842 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 MB91605A シリーズ 端子名 関連機能 ページ PD5 I/O ポート 250 PD6 I/O ポート 250 PD7 I/O ポート 250 PE0 I/O ポート 250 PE1 I/O ポート 250 PE2 I/O ポート 250 PE3 I/O ポート 250 PE4 I/O ポート 250 PE5 I/O ポート 250 PE6 I/O ポート 250 PE7 I/O ポート 250 RCIN リモコン 739 RD 外部バスインタフェース 213 RDY 外部バスインタフェース 213 SCK0 マルチファンクションシリアルインタフェース 465 SCK1 マルチファンクションシリアルインタフェース 465 SCK2 マルチファンクションシリアルインタフェース 465 SCK3 マルチファンクションシリアルインタフェース 465 SCK4 マルチファンクションシリアルインタフェース 465 SCK5 マルチファンクションシリアルインタフェース 465 SCK6 マルチファンクションシリアルインタフェース 465 SCK7 マルチファンクションシリアルインタフェース 465 SCK8 マルチファンクションシリアルインタフェース 465 SCK9 マルチファンクションシリアルインタフェース 465 SCK10 マルチファンクションシリアルインタフェース 465 SCK11 マルチファンクションシリアルインタフェース 465 SIN0 マルチファンクションシリアルインタフェース 465 SIN1 マルチファンクションシリアルインタフェース 465 SIN2 マルチファンクションシリアルインタフェース 465 SIN3 マルチファンクションシリアルインタフェース 465 SIN4 マルチファンクションシリアルインタフェース 465 SIN5 マルチファンクションシリアルインタフェース 465 SIN6 マルチファンクションシリアルインタフェース 465 SIN7 マルチファンクションシリアルインタフェース 465 SIN8 マルチファンクションシリアルインタフェース 465 SIN9 マルチファンクションシリアルインタフェース 465 SIN10 マルチファンクションシリアルインタフェース 465 SIN11 マルチファンクションシリアルインタフェース 465 SOUT0 マルチファンクションシリアルインタフェース 465 SOUT1 マルチファンクションシリアルインタフェース 465 SOUT2 マルチファンクションシリアルインタフェース 465 SOUT3 マルチファンクションシリアルインタフェース 465 SOUT4 マルチファンクションシリアルインタフェース 465 SOUT5 マルチファンクションシリアルインタフェース 465 SOUT6 マルチファンクションシリアルインタフェース 465 R S CM71-10147-2 FUJITSU SEMICONDUCTOR LIMITED 843 MB91605A シリーズ 端子名 関連機能 ページ SOUT7 マルチファンクションシリアルインタフェース 465 SOUT8 マルチファンクションシリアルインタフェース 465 SOUT9 マルチファンクションシリアルインタフェース 465 SOUT10 マルチファンクションシリアルインタフェース 465 SOUT11 マルチファンクションシリアルインタフェース 465 TIOA0 ベースタイマ 343 TIOA1 ベースタイマ 343 TIOA2 ベースタイマ 343 TIOA3 ベースタイマ 343 TIOA4 ベースタイマ 343 TIOA5 ベースタイマ 343 TIOA6 ベースタイマ 343 TIOA7 ベースタイマ 343 TIOA8 ベースタイマ 343 TIOA9 ベースタイマ 343 TIOA10 ベースタイマ 343 TIOA11 ベースタイマ 343 TIOB0 ベースタイマ 343 TIOB1 ベースタイマ 343 TIOB2 ベースタイマ 343 TIOB3 ベースタイマ 343 TIOB4 ベースタイマ 343 TIOB5 ベースタイマ 343 TIOB6 ベースタイマ 343 TIOB7 ベースタイマ 343 TIOB8 ベースタイマ 343 TIOB9 ベースタイマ 343 TIOB10 ベースタイマ 343 TIOB11 ベースタイマ 343 TIN0 16 ビットリロードタイマ 305 TIN1 16 ビットリロードタイマ 305 TIN2 16 ビットリロードタイマ 305 TOUT0 16 ビットリロードタイマ 305 TOUT1 16 ビットリロードタイマ 305 TOUT2 16 ビットリロードタイマ 305 VDDE 電源端子 19 VSS 電源端子 19 VDDI 電源端子 19 外部バスインタフェース 213 X0 クロック制御部 100 X1 クロック制御部 100 T V W WE X 844 FUJITSU SEMICONDUCTOR LIMITED CM71-10147-2 CM71-10147-2 富士通セミコンダクター・CONTROLLER MANUAL FR80 32 ビット・マイクロコントローラ MB91605A シリーズ Series ハードウェアマニュアル 2010 年 5 月 第 2 版発行 発行 富士通セミコンダクター株式会社 編集 企画部 プロモーション推進部