本ドキュメントはCypress (サイプレス) 製品に関する情報が記載されております。 FUJITSU SEMICONDUCTOR CONTROLLER MANUAL CM71-10158-1 FR80 32 ビット・マイクロコントローラ MB91665 Series ハードウェアマニュアル FR80 32 ビット・マイクロコントローラ MB91665 Series ハードウェアマニュアル 富士通セミコンダクターのマイコンを効率的に開発するための情報を下記 URL にてご紹介いたします。 ご採用を検討中 , またはご採用いただいたお客様に有益な情報を公開しています。 開発における最新の注意事項に関しては , 「デザインレビューシート」を参照してください。 「デザインレビューシート」はシステム開発において , 問題を未然に防ぐことを目的として , 最低限必要と思われる チェック項目をリストにしたものです。 http://edevice.fujitsu.com/micom/jp-support/ 富士通セミコンダクター株式会社 MB91665 シリーズ はじめに 富士通半導体製品につきまして , 平素より格別のご愛顧を賜り厚くお礼申し上げます。 MB91665 シリーズをご利用になる前に , 本書および『データシート』をご一読ください。 ■ 本書の目的と対象読者 本書は , 実際に MB91665 シリーズを使用して製品を開発される技術者を対象に , MB91665 シリーズの機能や動作 , 使い方について解説しています。 ■ 商標 FR は , FUJITSU RISC controller の略で , 富士通セミコンダクター株式会社の製品です。 F2MC は , FUJITSU Flexible Microcontroller の略で , 富士通セミコンダクター株式会社の 登録商標です。 その他の社名および製品名は各社の商標もしくは登録商標です。 ■ サンプルプログラムおよび開発環境 FR80ファミリの周辺機能を動作させるためのサンプルプログラムを無償で提供してお ります。また , MB91665 シリーズで使用する開発環境も掲載しています。当社マイコ ンの動作仕様や使用方法の確認などにお役立てください。 • マイコンサポート情報 http://edevice.fujitsu.com/micom/jp-support/ * サンプルプログラムは , 予告なしに変更することがあります。また , サンプルプログ ラムは標準的な動作や使い方を示したものですので,お客様のシステム上でご使用の際 は十分評価された上でご使用ください。 また , サンプルプログラムの使用に起因し生じた損害については , 当社は一切その責任 を負いません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED i MB91665 シリーズ • • • • • • 本資料の記載内容は , 予告なしに変更することがありますので , ご用命の際は営業部門にご確認くださ い。 本資料に記載された動作概要や応用回路例は , 半導体デバイスの標準的な動作や使い方を示したもので , 実際に使用する機器での動作を保証するものではありません。したがいまして , これらを使用するにあ たってはお客様の責任において機器の設計を行ってください。これらの使用に起因する損害などについ ては , 当社はその責任を負いません。 本資料に記載された動作概要・回路図を含む技術情報は , 当社もしくは第三者の特許権 , 著作権等の知的 財産権やその他の権利の使用権または実施権の許諾を意味するものではありません。また , これらの使用 について , 第三者の知的財産権やその他の権利の実施ができることの保証を行うものではありません。し たがって , これらの使用に起因する第三者の知的財産権やその他の権利の侵害について , 当社はその責任 を負いません。 本資料に記載された製品は , 通常の産業用 , 一般事務用 , パーソナル用 , 家庭用などの一般的用途に使用 されることを意図して設計・製造されています。極めて高度な安全性が要求され , 仮に当該安全性が確保 されない場合 , 社会的に重大な影響を与えかつ直接生命・身体に対する重大な危険性を伴う用途 ( 原子力 施設における核反応制御 , 航空機自動飛行制御 , 航空交通管制 , 大量輸送システムにおける運行制御 , 生 命維持のための医療機器 , 兵器システムにおけるミサイル発射制御をいう ), ならびに極めて高い信頼性 が要求される用途 ( 海底中継器 , 宇宙衛星をいう ) に使用されるよう設計・製造されたものではありませ ん。したがって , これらの用途にご使用をお考えのお客様は , 必ず事前に営業部門までご相談ください。 ご相談なく使用されたことにより発生した損害などについては , 責任を負いかねますのでご了承くださ い。 半導体デバイスはある確率で故障が発生します。当社半導体デバイスが故障しても , 結果的に人身事故 , 火災事故 , 社会的な損害を生じさせないよう , お客様は , 装置の冗長設計 , 延焼対策設計 , 過電流防止対策 設計 , 誤動作防止設計などの安全設計をお願いします。 本資料に記載された製品を輸出または提供する場合は , 外国為替及び外国貿易法および米国輸出管理関 連法規等の規制をご確認の上 , 必要な手続きをおとりください。 • 本書に記載されている社名および製品名などの固有名詞は , 各社の商標または登録商標です。 Copyright ©2010 FUJITSU SEMICONDUCTOR LIMITED All rights reserved. ii FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ マニュアル構成 本シリーズで使用するマニュアルを一覧で示します。状況に応じて必要なマニュアルを参照 してください。 本書に記載したマニュアルの内容は予告なく変更することがあります。最新版をお問い合わ せください。 ■ ハードウェアマニュアル • FR80 ファミリ MB91665 シリーズハードウェアマニュアル (CM71-10158) ( 本書 ) ■ データシート • マイクロコントローラ 32 ビットオリジナル FR80 ファミリ MB91665 シリーズ DATA SHEET (DS07-16916) ■ プログラミングマニュアル • FR80 ファミリプログラミングマニュアル (CM71-00104) FR80 ファミリ CPU のプログラミングモデルと命令について説明しています。 ■ ハードウェアツール系マニュアル • DSU-FR エミュレータ MB2198-01 ハードウェアマニュアル (CM71-00413) エミュレータの取扱いと仕様 , 接続方法や操作方法について説明しています。 ■ ソフトウェアツール系マニュアル • SOFTUNE® Workbench 操作マニュアル V6 対応 (CM71-00328) 統合開発環境 SOFTUNE の操作方法や開発手順について説明しています。 • SOFTUNE® Workbench 機能説明書 V6 対応 (CM71-00329) SOFTUNE Workbench の基本機能および依存機能について説明しています。 • SOFTUNE® Workbench コマンドリファレンスマニュアル V6 対応 (CM71-00330) SOFTUNE Workbench のコマンドおよび組込み変数 / 関数について説明していま す。 • FR ファミリ 32 ビットマイクロコントローラ 機器組み込み用 C プログラミングマ ニュアル 活用編 (CM71-00324) FR ファミリ用 C コンパイラ fcc911 を使用して組み込みシステムを作成するため のノウハウ集です。FR ファミリのアーキテクチャを利用した効率の良い C プロ グラムの作成方法および注意事項を説明します。 • FR ファミリ SOFTUNE C/C++ コンパイラマニュアル V6 対応 (CM81-00206) SOFTUNE C/C++ コンパイラを使用して C 言語および C++ 言語でアプリケーショ ンプログラムを作成 / 開発する際に参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED iii MB91665 シリーズ • FR ファミリ SOFTUNE® アセンブラマニュアル V6 対応 (CM71-00203) Windows 98, Windows Me, Windows 2000, Windows XP で動作する富士通SOFTUNE® アセンブラの機能および使用方法を説明しています。 • SOFTUNE® リンケージキットマニュアル V6 対応 (CM71-00327) Windows 98, Windows Me, Windows 2000, Windows XP で動作する富士通SOFTUNE® リンケージキットの機能および使用方法を説明しています。 応用プログラムを開発する際に参照してください。 • FR ファミリ 絶対アセンブルリスト作成ツールマニュアル (CM71-00305) 絶対アセンブルリストについて説明しています。 • FR-V/FR ファミリ Softune C/C++ Analyzer マニュアル V5 対応 (CM81-00309) C/C++ Analyzer の機能および使用方法について説明しています。 • FR-V/FR ファミリ Softune C/C++ Checker マニュアル V5 対応 (CM81-00310) C/C++ Checker の機能および使用方法について説明しています。 ■ REALOS 系マニュアル ● REALOS µITRON3.0 系マニュアル • FR/F2MC® ファミリ µITRON 仕様準拠 SOFTUNE® REALOS®/FR/907/896 コンフィ グレータマニュアル (CM71-00322) Softune REALOS コンフィグレータの機能と操作について説明しています。 • FR-V/FR/F2MC® ファミリ µITRON 仕様準拠 SOFTUNE® REALOS®/ アナライザマ ニュアル (CM81-00315) Softune REALOS アナライザが提供する機能とその機能の利用方法について説明し ています。 • FR ファミリ µITRON3.0 仕様準拠 SOFTUNE® REALOS®/FR ユーザーズガイド (CM71-00320) REALOS/FR 応用システムの構築 / 起動について説明しています。 システム全体のまとめの作業を行う際に参照してください。 • FR ファミリ µITRON3.0 仕様準拠 SOFTUNE® REALOS®/FR カーネルマニュアル (CM71-00321) Softune REALOS/FR が提供する機能とその機能の利用方法について説明しています アプリケーションシステムやユーザプログラムを作成する際に参照してください。 ● REALOS µITRON4.0 系マニュアル • FRファミリµITRON4.0仕様準拠 SOFTUNE® REALOS®/FR Spec.4 プログラミング マニュアル (CM81-00316) Softune REALOS/FR Spec.4 の提供する機能とその利用方法について説明しています。 • FR-V/FRファミリµITRON4.0仕様準拠 SOFTUNE® REALOS® カーネルマニュアル (CM81-00312) Softune REALOS/FRV/FR Spec.4 が提供する機能とその機能の利用方法について説 明しています。 iv FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ • FR-V/FRファミリ µITRON4.0 仕様準拠SOFTUNE® REALOS® コンフィギュレータ マニュアル (CM81-00311) SOFTUNE REALOS コンフィギュレータ GUI の提供する機能とその利用方法につ いて説明しています。 • FR-V/FR /F2MC® ファミリ µITRON 仕様準拠 SOFTUNE® REALOS® アナライザマ ニュアル (CM81-00315) SOFTUNE REALOS アナライザの提供する機能と利用方法について説明しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED v MB91665 シリーズ 本書の使い方 ■ 機能の探し方 本書では次の方法で , 使いたい機能の説明を探すことができます。 • 目次から探す 本書の内容を記載順に示します。 • レジスタ一覧から探す 本デバイスのレジスタが一覧で記載されています。調べたいレジスタの名称から , 配置アドレスやレジスタの説明ページを探すことができます。 本文中では各レジスタの配置アドレスを記載しておりません。各レジスタのアド レスを確認するときは , 「付録 A I/O マップ」および「付録 B レジスタ一覧」を 参照してください。 • 索引から探す 周辺機能の名称などのキーワードから機能の説明を探すことができます。 ■ 章について 本書では , 基本的に 1 つの周辺機能を 1 つの章で説明しています。 ■ 用語について 本書で使用している用語について示します。 用語 vi 説明 ワード 32 ビット単位でのアクセスを指します。 ハーフワード 16 ビット単位でのアクセスを指します。 バイト 8 ビット単位でのアクセスを指します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 目次 第1章 1.1 1.2 1.3 1.4 第2章 2.1 2.2 2.3 2.4 第3章 概要 ............................................................................................................1 MB91665 シリーズの概要 ..................................................................................................... 2 MB91665 シリーズの品種構成 .............................................................................................. 8 MB91665 シリーズのブロックダイヤグラム ........................................................................ 9 外形寸法図 ........................................................................................................................... 10 MB91665 シリーズの端子 ........................................................................13 端子配列図 ........................................................................................................................... 14 端子機能一覧 ....................................................................................................................... 16 入出力回路形式 ................................................................................................................... 24 端子の設定方法 ................................................................................................................... 28 CPU ..........................................................................................................53 3.1 メモリ空間 ........................................................................................................................... 54 3.2 内部アーキテクチャの特徴 .................................................................................................. 56 3.3 動作モード ........................................................................................................................... 57 3.4 パイプライン ....................................................................................................................... 58 3.5 命令概要 .............................................................................................................................. 60 3.5.1 算術演算 .................................................................................................................... 60 3.5.2 ロードとストア ......................................................................................................... 60 3.5.3 分岐 ........................................................................................................................... 61 3.5.4 論理演算とビット操作 .............................................................................................. 61 3.5.5 ダイレクトアドレッシング ....................................................................................... 61 3.5.6 ビットサーチ ............................................................................................................. 61 3.5.7 その他 ........................................................................................................................ 61 3.6 基本プログラミングモデル .................................................................................................. 62 3.7 レジスタ .............................................................................................................................. 63 3.7.1 汎用レジスタ (R0 ∼ R15) ......................................................................................... 63 3.7.2 プログラムステータスレジスタ (PS) ........................................................................ 64 3.7.3 プログラムカウンタ (PC) .......................................................................................... 68 3.7.4 テーブルベースレジスタ (TBR) ................................................................................ 69 3.7.5 リターンポインタ (RP) ............................................................................................. 69 3.7.6 システムスタックポインタ (SSP) ............................................................................. 69 3.7.7 ユーザスタックポインタ (USP) ................................................................................ 70 3.7.8 乗除算レジスタ (Multiply & Divide register) .............................................................. 71 3.8 データ構造 ........................................................................................................................... 72 3.8.1 ビットオーダリング .................................................................................................. 72 3.8.2 バイトオーダリング .................................................................................................. 72 3.8.3 ワードアライメント .................................................................................................. 73 3.9 アドレッシング ................................................................................................................... 74 3.9.1 ダイレクトアドレッシング領域 ................................................................................ 74 3.9.2 20 ビットアドレッシング領域 .................................................................................. 75 3.9.3 32 ビットアドレッシング領域 .................................................................................. 75 3.9.4 ベクタテーブル初期領域 ........................................................................................... 75 3.10 分岐命令 .............................................................................................................................. 76 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED vii MB91665 シリーズ 3.10.1 遅延スロット付き動作 .............................................................................................. 76 3.10.2 遅延スロットなし動作 .............................................................................................. 78 3.11 EIT ( 例外・割込み・トラップ ) .......................................................................................... 79 3.11.1 EIT 要因 ..................................................................................................................... 79 3.11.2 EIT からの復帰 .......................................................................................................... 79 3.11.3 割込みレベル ............................................................................................................. 80 3.11.4 I フラグ ...................................................................................................................... 80 3.11.5 割込みレベルマスクレジスタ (ILM) .......................................................................... 82 3.11.6 割込みに対するレベルマスク .................................................................................... 82 3.11.7 割込み制御レジスタ (ICR) ......................................................................................... 83 3.11.8 システムスタックポインタ (SSP) ............................................................................. 83 3.11.9 割込みスタック ......................................................................................................... 83 3.11.10 テーブルベースレジスタ (TBR) ................................................................................ 84 3.11.11 EIT ベクタテーブル ................................................................................................... 84 3.11.12 多重 EIT 処理 ............................................................................................................. 85 3.11.13 動作 ........................................................................................................................... 86 3.11.14 INT 命令の動作 .......................................................................................................... 87 3.11.15 INTE 命令の動作 ....................................................................................................... 88 3.11.16 ステップトレーストラップの動作 ............................................................................. 88 3.11.17 未定義命令例外の動作 .............................................................................................. 89 3.11.18 RETI 命令の動作 ....................................................................................................... 89 3.11.19 遅延スロットと EIT ................................................................................................... 89 第4章 クロック生成部 ........................................................................................91 4.1 概要 ..................................................................................................................................... 92 4.2 構成 ..................................................................................................................................... 93 4.2.1 クロック生成部 ......................................................................................................... 93 4.2.2 ソースクロック (SRCCLK) 選択部 ............................................................................ 96 4.3 端子 ..................................................................................................................................... 97 4.4 レジスタ .............................................................................................................................. 98 4.4.1 クロックソース設定レジスタ (CSELR) .................................................................... 99 4.4.2 クロックソース監視レジスタ (CMONR) ................................................................. 103 4.4.3 発振安定待ち設定レジスタ (CSTBR) ...................................................................... 105 4.4.4 PLL 設定レジスタ (PLLCR) ..................................................................................... 109 4.5 動作説明 ............................................................................................................................ 113 4.5.1 クロックソースの動作説明 ..................................................................................... 113 4.5.2 ソースクロック (SRCCLK) の切換え ...................................................................... 116 4.5.3 PLL クロック (PLLCLK) 生成のための逓倍率 ......................................................... 119 第5章 クロック分周制御部 ...............................................................................121 5.1 概要 ................................................................................................................................... 122 5.2 内部クロック ..................................................................................................................... 123 5.3 構成 ................................................................................................................................... 125 5.4 レジスタ ............................................................................................................................ 126 5.4.1 分周設定レジスタ 0 (DIVR0) ................................................................................... 127 5.4.2 分周設定レジスタ 1 (DIVR1) ................................................................................... 128 5.4.3 分周設定レジスタ 2 (DIVR2) ................................................................................... 130 5.5 分周比 ................................................................................................................................ 131 5.6 使用上の注意 ..................................................................................................................... 133 viii FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第6章 メインタイマ ..........................................................................................135 6.1 概要 ................................................................................................................................... 136 6.2 構成 ................................................................................................................................... 137 6.3 レジスタ ............................................................................................................................ 138 6.3.1 メインタイマ制御レジスタ (MTMCR) ..................................................................... 139 6.4 割込み ................................................................................................................................ 143 6.5 動作説明と設定手順例 ....................................................................................................... 144 6.5.1 メインタイマの動作 ................................................................................................ 144 6.5.2 ストップモードへの遷移について ........................................................................... 146 第7章 サブタイマ .............................................................................................147 7.1 概要 ................................................................................................................................... 148 7.2 構成 ................................................................................................................................... 149 7.3 レジスタ ............................................................................................................................ 150 7.3.1 サブタイマ制御レジスタ (STMCR) ......................................................................... 151 7.4 割込み ................................................................................................................................ 154 7.5 動作説明と設定手順例 ....................................................................................................... 155 7.5.1 サブタイマの動作 .................................................................................................... 155 7.5.2 ストップモードへの遷移と時計モードについて ..................................................... 157 第8章 低消費電力モード ..................................................................................159 8.1 概要 ................................................................................................................................... 160 8.2 構成 ................................................................................................................................... 161 8.3 レジスタ ............................................................................................................................ 163 8.3.1 スタンバイ制御レジスタ (STBCR) ......................................................................... 164 8.3.2 スリープレート設定レジスタ (SLPRR) .................................................................. 167 8.4 動作説明と設定手順例 ....................................................................................................... 169 8.4.1 クロック制御時の動作 ............................................................................................ 169 8.4.2 ドーズモード時の動作 ............................................................................................ 171 8.4.3 スリープモード時の動作 ......................................................................................... 172 8.4.4 メインタイマモード時の動作 .................................................................................. 175 8.4.5 時計モード時の動作 ................................................................................................ 177 8.4.6 ストップモード時の動作 ......................................................................................... 179 8.5 使用上の注意 ..................................................................................................................... 182 第9章 リセット .................................................................................................183 9.1 概要 ................................................................................................................................... 184 9.2 構成 ................................................................................................................................... 185 9.3 端子 ................................................................................................................................... 187 9.4 レジスタ ............................................................................................................................ 188 9.4.1 リセット要因レジスタ (RSTRR) ............................................................................. 189 9.4.2 リセット制御レジスタ (RSTCR) ............................................................................. 191 9.5 動作説明 ............................................................................................................................ 193 9.5.1 リセットの種類 ....................................................................................................... 193 9.5.2 リセット要因 ........................................................................................................... 194 9.5.3 リセットの動作 ....................................................................................................... 195 9.5.4 イレギュラーリセット ............................................................................................ 199 9.6 動作状態と遷移 ................................................................................................................. 200 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED ix MB91665 シリーズ 第 10 章 割込みコントローラ ...............................................................................205 10.1 概要 ................................................................................................................................... 206 10.2 構成 ................................................................................................................................... 207 10.3 レジスタ ............................................................................................................................ 208 10.3.1 割込みコントロールレジスタ (ICR00 ∼ ICR47) ..................................................... 209 10.4 動作説明と設定手順例 ....................................................................................................... 211 10.4.1 割込みコントローラの動作説明 .............................................................................. 211 10.5 使用上の注意 ..................................................................................................................... 213 第 11 章 割込み要求一括読出し機能 ....................................................................215 11.1 概要 ................................................................................................................................... 216 11.2 構成 ................................................................................................................................... 217 11.3 レジスタ ............................................................................................................................ 218 11.3.1 割込み要求一括読出し機能レジスタ 0 上位 (IRPR0H) ........................................... 219 11.3.2 割込み要求一括読出し機能レジスタ 2 下位 (IRPR2L) ............................................ 220 11.3.3 割込み要求一括読出し機能レジスタ 3 上位 (IRPR3H) ........................................... 221 11.3.4 割込み要求一括読出し機能レジスタ 3 下位 (IRPR3L) ............................................ 222 11.3.5 割込み要求一括読出し機能レジスタ 4 上位 (IRPR4H) ........................................... 223 11.3.6 割込み要求一括読出し機能レジスタ 4 下位 (IRPR4L) ............................................ 224 11.4 使用上の注意 ..................................................................................................................... 225 第 12 章 遅延割込み .............................................................................................227 12.1 概要 ................................................................................................................................... 228 12.2 構成 ................................................................................................................................... 229 12.3 レジスタ ............................................................................................................................ 230 12.3.1 遅延割込み制御レジスタ (DICR) ............................................................................. 231 12.4 動作説明と設定手順例 ....................................................................................................... 232 12.4.1 遅延割込みの動作説明 ............................................................................................ 232 12.5 使用上の注意 ..................................................................................................................... 233 第 13 章 外部バスインタフェース ........................................................................235 13.1 概要 ................................................................................................................................... 236 13.2 構成 ................................................................................................................................... 239 13.3 端子 ................................................................................................................................... 241 13.4 レジスタ ............................................................................................................................ 243 13.4.1 CS 領域設定レジスタ (ASR0 ∼ ASR3) .................................................................. 244 13.4.2 CS バス設定レジスタ (ACR0 ∼ ACR3) .................................................................. 247 13.4.3 CS ウェイトレジスタ (AWR0 ∼ AWR3) ................................................................ 250 13.5 プロトコル ......................................................................................................................... 258 13.5.1 アドレス・データスプリットバスのプロトコル ..................................................... 258 13.5.2 アドレス・データマルチプレックスバスのプロトコル .......................................... 264 13.6 タイミング設定 ................................................................................................................. 270 13.6.1 リードアクセスオートウェイト .............................................................................. 271 13.6.2 ライトアクセスオートウェイト .............................................................................. 274 13.6.3 リードアクセスアイドルサイクル ........................................................................... 277 13.6.4 ライトリカバリサイクル ......................................................................................... 280 13.6.5 リードアクセスセットアップサイクル ................................................................... 283 13.6.6 リードアクセスホールドサイクル ........................................................................... 285 13.6.7 ライトアクセスセットアップサイクル ................................................................... 288 x FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 13.6.8 ライトアクセスホールドサイクル ........................................................................... 290 13.6.9 チップセレクト遅延サイクル .................................................................................. 292 13.6.10 アドレス出力延長サイクル ..................................................................................... 295 13.6.11 アドレスストローブ出力延長サイクル ................................................................... 297 13.7 RDY 端子によるアクセスサイクルの延長 ......................................................................... 300 13.8 アクセスサイクル数 .......................................................................................................... 303 13.9 アドレス情報とアドレスアラインメント .......................................................................... 305 13.9.1 アドレス情報 ........................................................................................................... 305 13.9.2 アドレスアラインメント ......................................................................................... 306 13.10 データアラインメント ....................................................................................................... 307 13.10.1 ビッグエンディアン ................................................................................................ 309 13.10.2 リトルエンディアン ................................................................................................ 313 13.11 CS 領域設定手順 ............................................................................................................... 317 第 14 章 I/O ポート ...............................................................................................323 14.1 概要 ................................................................................................................................... 324 14.2 構成 ................................................................................................................................... 326 14.3 端子 ................................................................................................................................... 330 14.4 レジスタ ............................................................................................................................ 331 14.4.1 ポートデータ方向レジスタ (DDR0 ∼ DDRK) ......................................................... 333 14.4.2 ポート機能レジスタ (PFR0 ∼ PFRH) .................................................................... 336 14.4.3 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) ....................................................... 339 14.4.4 ポートデータレジスタ (PDR0 ∼ PDRK) ................................................................ 354 14.4.5 プルアップ制御レジスタ (PCR0 ∼ PCR8) ............................................................. 355 14.4.6 A/D チャネルイネーブルレジスタ (ADCHE) ........................................................... 356 14.4.7 N-ch オープンドレイン制御レジスタ (NDE0, NDE1) ............................................. 357 14.4.8 外部バスアドレス選択レジスタ (EXBS) ................................................................. 359 14.4.9 FR 識別情報レジスタ (FRID) .................................................................................. 360 14.5 使用上の注意 ..................................................................................................................... 361 第 15 章 外部割込み制御部 ..................................................................................363 15.1 概要 ................................................................................................................................... 364 15.2 構成 ................................................................................................................................... 365 15.3 端子 ................................................................................................................................... 367 15.4 レジスタ ............................................................................................................................ 368 15.4.1 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) ........................................... 369 15.4.2 外部割込み要因レジスタ (EIRR0, EIRR2) .............................................................. 371 15.4.3 割込み許可レジスタ (ENIR0, ENIR2) ...................................................................... 372 15.5 動作説明と設定手順例 ....................................................................................................... 373 15.5.1 外部割込み制御部の動作 ......................................................................................... 373 15.5.2 スタンバイモードからの復帰 .................................................................................. 376 15.5.3 スリープモードからの復帰 ..................................................................................... 378 第 16 章 ウォッチドッグタイマ ...........................................................................379 16.1 概要 ................................................................................................................................... 380 16.2 構成 ................................................................................................................................... 381 16.3 レジスタ ............................................................................................................................ 383 16.3.1 ウォッチドッグタイマ 0 制御レジスタ (WDTCR0) ................................................ 384 16.3.2 ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) .......................................... 387 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED xi MB91665 シリーズ 16.4 動作説明と設定手順例 ....................................................................................................... 388 16.4.1 ウォッチドッグタイマの動作 .................................................................................. 388 第 17 章 時計カウンタ ..........................................................................................391 17.1 概要 ................................................................................................................................... 392 17.2 構成 ................................................................................................................................... 393 17.3 レジスタ ............................................................................................................................ 395 17.3.1 時計カウンタリロードレジスタ (WCRL) ................................................................ 396 17.3.2 時計カウンタ制御レジスタ (WCCR) ....................................................................... 397 17.3.3 時計カウンタリードレジスタ (WCRD) ................................................................... 399 17.4 割込み ................................................................................................................................ 400 17.5 動作説明と設定手順例 ....................................................................................................... 401 17.5.1 時計カウンタの動作 ................................................................................................ 401 17.6 使用上の注意 ..................................................................................................................... 403 第 18 章 32 ビットフリーランタイマ ...................................................................405 18.1 概要 ................................................................................................................................... 406 18.2 構成 ................................................................................................................................... 407 18.3 端子 ................................................................................................................................... 411 18.4 レジスタ ............................................................................................................................ 412 18.4.1 フリーランタイマ選択レジスタ (FRTSEL) ............................................................. 413 18.4.2 コンペアクリアレジスタ (CPCLR0, CPCLR1) ....................................................... 414 18.4.3 タイマデータレジスタ (TCDT0, TCDT1) ................................................................ 415 18.4.4 タイマ状態制御レジスタ上位 / 下位 (TCCSH0/TCCSL0, TCCSH1/TCCSL1) ........ 416 18.5 割込み ................................................................................................................................ 420 18.6 動作説明と設定手順例 ....................................................................................................... 421 18.6.1 内部クロック ( 周辺クロック ) 選択時の動作 .......................................................... 422 18.6.2 外部クロック選択時の動作 ..................................................................................... 423 第 19 章 32 ビットインプットキャプチャ ............................................................425 19.1 概要 ................................................................................................................................... 426 19.2 構成 ................................................................................................................................... 427 19.3 端子 ................................................................................................................................... 429 19.4 レジスタ ............................................................................................................................ 430 19.4.1 インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) ................................... 431 19.4.2 インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) ...................................... 434 19.5 割込み ................................................................................................................................ 435 19.6 動作説明と設定手順例 ....................................................................................................... 436 19.6.1 32 ビットインプットキャプチャの動作説明 ........................................................... 436 第 20 章 32 ビットアウトプットコンペア ............................................................439 20.1 概要 ................................................................................................................................... 440 20.2 構成 ................................................................................................................................... 441 20.3 端子 ................................................................................................................................... 443 20.4 レジスタ ............................................................................................................................ 444 20.4.1 アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) ............................................. 445 20.4.2 コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) .......................... 446 20.4.3 コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) ............................. 449 20.5 割込み ................................................................................................................................ 452 xii FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 20.6 動作説明と設定手順例 ....................................................................................................... 453 20.6.1 独立で使用する場合の動作 ..................................................................................... 453 20.6.2 一対にして使用する場合の動作 .............................................................................. 455 第 21 章 16 ビットリロードタイマ ......................................................................459 21.1 概要 ................................................................................................................................... 460 21.2 構成 ................................................................................................................................... 461 21.3 端子 ................................................................................................................................... 463 21.4 レジスタ ............................................................................................................................ 464 21.4.1 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) .................................... 465 21.4.2 16 ビットタイマリロードレジスタ A/B (TMRLRA0 ∼ TMRLRA2/ TMRLRB0 ∼ TMRLRB2) ................................................... 472 21.4.3 16 ビットタイマレジスタ (TMR0 ∼ TMR2) ........................................................... 474 21.5 割込み ................................................................................................................................ 475 21.6 動作説明と設定手順例 ....................................................................................................... 476 21.6.1 インターバルタイマモード時の動作 ....................................................................... 479 21.6.2 イベントカウンタモード時の動作 ........................................................................... 499 21.6.3 カスケードモード時の動作 ..................................................................................... 513 21.7 使用上の注意 ..................................................................................................................... 515 第 22 章 ベースタイマ入出力選択機能 ................................................................517 22.1 概要 ................................................................................................................................... 518 22.2 構成 ................................................................................................................................... 520 22.3 端子 ................................................................................................................................... 521 22.4 レジスタ ............................................................................................................................ 523 22.4.1 入出力選択レジスタ 0123 (BTSEL0123) ................................................................ 524 22.4.2 同時ソフト起動レジスタ (BTSSSR) ....................................................................... 526 22.5 入出力モード ..................................................................................................................... 528 22.5.1 入出力モード 0 (16 ビットタイマ標準モード ) ....................................................... 528 22.5.2 入出力モード 1 ( タイマフルモード ) ...................................................................... 529 22.5.3 入出力モード 2 ( 外部トリガ共有モード ) ............................................................... 531 22.5.4 入出力モード 3 ( 他チャネルトリガ共有モード ) .................................................... 532 22.5.5 入出力モード 4 ( タイマ起動 / 停止モード ) 時の動作 ............................................. 534 22.5.6 入出力モード 5 ( 同時ソフト起動モード ) 時の動作 ............................................... 536 22.5.7 入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) 時の動作 ........................... 537 22.5.8 入出力モード 7 ( タイマ起動モード ) 時の動作 ....................................................... 539 22.5.9 入出力モード 8 ( 他チャネルトリガ共有タイマ起動 / 停止モード ) 時の動作 ......... 540 第 23 章 ベースタイマ.......................................................................................... 543 23.1 ベースタイマの概要 ........................................................................................................... 544 23.2 ベースタイマのブロックダイヤグラム............................................................................... 546 23.3 ベースタイマのレジスタ .................................................................................................... 551 23.4 ベースタイマの動作 ........................................................................................................... 554 23.5 32 ビットモード動作 .......................................................................................................... 556 23.6 ベースタイマの使用上の注意 ............................................................................................. 558 23.7 ベースタイマ割込み ........................................................................................................... 560 23.8 ベースタイマの機能別説明................................................................................................. 561 23.8.1 PWM 機能................................................................................................................. 562 23.8.1.1 PWM タイマ選択時のタイマ制御レジスタ (BTxTMCR) ..................................... 563 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED xiii MB91665 シリーズ 23.8.1.2 PWM 周期設定レジスタ (BTxPCSR) .................................................................. 569 23.8.1.3 PWM デューティ設定レジスタ (BTxPDUT)........................................................ 570 23.8.1.4 タイマレジスタ (BTxTMR).................................................................................. 571 23.8.1.5 16 ビット PWM タイマ動作 ................................................................................ 572 23.8.1.6 ワンショット動作................................................................................................ 573 23.8.1.7 割込み要因とタイミングチャート ...................................................................... 574 23.8.1.8 出力波形 .............................................................................................................. 575 23.8.2 PPG 機能.................................................................................................................. 576 23.8.2.1 PPG タイマ選択時のタイマ制御レジスタ (BTxTMCR) ...................................... 577 23.8.2.2 "L" 幅設定リロードレジスタ (BTxPRLL)............................................................. 583 23.8.2.3 "H" 幅設定リロードレジスタ (BTxPRLH) ........................................................... 584 23.8.2.4 タイマレジスタ (BTxTMR).................................................................................. 585 23.8.2.5 16 ビット PPG タイマ動作 ................................................................................. 586 23.8.2.6 連続動作 .............................................................................................................. 587 23.8.2.7 ワンショット動作................................................................................................ 588 23.8.2.8 割込み要因とタイミングチャート ...................................................................... 590 23.8.3 リロードタイマ機能 ................................................................................................. 591 23.8.3.1 リロードタイマ選択時のタイマ制御レジスタ (BTxTMCR) ................................ 592 23.8.3.2 周期設定レジスタ (BTxPCSR) ............................................................................ 599 23.8.3.3 タイマレジスタ (BTxTMR).................................................................................. 600 23.8.3.4 16 ビットリロードタイマの動作......................................................................... 601 23.8.4 PWC 機能 ................................................................................................................. 604 23.8.4.1 PWC タイマ選択時のタイマ制御レジスタ (BTxTMCR) ..................................... 605 23.8.4.2 データバッファレジスタ (BTxDTBF).................................................................. 611 23.8.4.3 PWC 動作 ............................................................................................................ 612 第 24 章 アップダウンカウンタ ...........................................................................621 24.1 概要 ................................................................................................................................... 622 24.2 構成 ................................................................................................................................... 624 24.3 端子 ................................................................................................................................... 626 24.4 レジスタ ............................................................................................................................ 627 24.4.1 リロードコンペアレジスタ (RCR1) ........................................................................ 628 24.4.2 アップダウンカウントレジスタ (UDCR1) .............................................................. 630 24.4.3 カウンタコントロールレジスタ (CCR1) ................................................................. 631 24.4.4 カウンタステータスレジスタ (CSR1) ..................................................................... 636 24.5 割込み ................................................................................................................................ 639 24.6 動作説明と設定手順例 ....................................................................................................... 641 24.6.1 タイマモード時の動作 ............................................................................................ 645 24.6.2 アップダウンカウントモード時の動作 ................................................................... 647 24.6.3 位相差カウントモード (2 逓倍 ) 時の動作 ............................................................... 650 24.6.4 位相差カウントモード (4 逓倍 ) 時の動作 ............................................................... 652 第 25 章 10 ビット A/D コンバータ ......................................................................655 25.1 概要 ................................................................................................................................... 656 25.2 構成 ................................................................................................................................... 658 25.3 端子 ................................................................................................................................... 660 25.4 レジスタ ............................................................................................................................ 662 25.4.1 A/DC コントロールレジスタ (ADCR0) ................................................................... 663 25.4.2 A/DC ステータスレジスタ (ADSR0) ....................................................................... 666 xiv FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 25.4.3 スキャン変換コントロールレジスタ (SCCR0) ....................................................... 669 25.4.4 スキャン変換 FIFO 段数設定レジスタ (SFNS0) ..................................................... 673 25.4.5 スキャン変換 FIFO データレジスタ (SCFD0) ......................................................... 675 25.4.6 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) ............................................. 678 25.4.7 優先変換コントロールレジスタ (PCCR0) ............................................................... 679 25.4.8 優先変換 FIFO 段数設定レジスタ (PFNS0) ............................................................ 682 25.4.9 優先変換 FIFO データレジスタ (PCFD0) ................................................................ 683 25.4.10 優先変換入力選択レジスタ (PCIS0) ........................................................................ 687 25.4.11 A/D 比較値設定レジスタ (CMPD0) ......................................................................... 690 25.4.12 A/D 比較コントロールレジスタ (CMPCR0) ............................................................ 691 25.4.13 サンプリング時間設定レジスタ (ADST00, ADST10) .............................................. 694 25.4.14 サンプリング時間選択レジスタ (ADSS20 ∼ ADSS00) .......................................... 697 25.4.15 コンペア時間設定レジスタ (ADCT0) ...................................................................... 699 25.5 割込み ................................................................................................................................ 700 25.6 動作説明と設定手順例 ....................................................................................................... 702 25.6.1 A/D スキャン変換時の動作 ...................................................................................... 709 25.6.2 A/D 優先変換時の動作 ............................................................................................. 712 25.6.3 FIFO の動作 ............................................................................................................. 715 25.6.4 DMA コントローラ (DMAC) の起動 ........................................................................ 721 第 26 章 マルチファンクションシリアルインタフェース.................................... 723 26.1 マルチファンクションシリアルインタフェースの特長 ..................................................... 724 26.2 UART( 非同期シリアルインタフェース ) ........................................................................... 725 26.3 UART( 非同期シリアルインタフェース ) の概要................................................................ 726 26.4 UART( 非同期シリアルインタフェース ) のレジスタ ........................................................ 727 26.4.1 シリアル制御レジスタ (SCR)................................................................................... 729 26.4.2 シリアルモードレジスタ (SMR)............................................................................... 732 26.4.3 シリアルステータスレジスタ (SSR) ........................................................................ 735 26.4.4 拡張通信制御レジスタ (ESCR) ................................................................................ 738 26.4.5 受信データレジスタ / 送信データレジスタ (RDR/TDR) .......................................... 740 26.4.6 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)............................................ 743 26.5 UART の割込み................................................................................................................... 745 26.5.1 受信割込み発生とフラグセットのタイミング.......................................................... 746 26.5.2 送信割込み発生とフラグセットのタイミング.......................................................... 747 26.6 UART の動作 ...................................................................................................................... 748 26.7 専用ボーレートジェネレータ ............................................................................................. 752 26.7.1 ボーレート設定 ........................................................................................................ 753 26.8 動作モード 0 ( 非同期ノーマルモード ) 設定手順とプログラムフロー.............................. 757 26.9 動作モード 1 ( 非同期マルチプロセッサモード ) 設定手順とプログラムフロー ............... 758 26.10 UART モードの注意事項 .................................................................................................... 760 26.11 CSIO( クロック同期シリアルインタフェース ).................................................................. 761 26.12 CSIO( クロック同期シリアルインタフェース ) の概要...................................................... 762 26.13 CSIO( クロック同期シリアルインタフェース ) のレジスタ............................................... 763 26.13.1 シリアル制御レジスタ (SCR)................................................................................... 765 26.13.2 シリアルモードレジスタ (SMR)............................................................................... 768 26.13.3 シリアルステータスレジスタ (SSR) ........................................................................ 771 26.13.4 拡張通信制御レジスタ (ESCR) ................................................................................ 774 26.13.5 受信データレジスタ / 送信データレジスタ (RDR/TDR) .......................................... 776 26.13.6 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)............................................ 779 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED xv MB91665 シリーズ 26.14 CSIO( クロック同期シリアルインタフェース ) の割込み .................................................. 781 26.14.1 受信割込み発生とフラグセットのタイミング.......................................................... 782 26.14.2 送信割込み発生とフラグセットのタイミング.......................................................... 783 26.15 CSIO( クロック同期シリアルインタフェース ) の動作...................................................... 784 26.16 専用ボーレートジェネレータ ............................................................................................. 800 26.16.1 ボーレート設定 ........................................................................................................ 801 26.17 CSIO( クロック同期シリアルインタフェース ) 設定手順とプログラムフロー.................. 804 26.18 CSIO モードの注意事項 ..................................................................................................... 805 26.19 I2C インタフェース ............................................................................................................ 806 26.20 I2C インタフェースの概要.................................................................................................. 807 26.21 I2C インタフェースのレジスタ .......................................................................................... 808 26.21.1 I2C バス制御レジスタ (IBCR)................................................................................... 811 26.21.2 シリアルモードレジスタ (SMR)............................................................................... 816 26.21.3 I2C バスステータスレジスタ (IBSR) ........................................................................ 818 26.21.4 シリアルステータスレジスタ (SSR) ........................................................................ 822 26.21.5 受信データレジスタ / 送信データレジスタ (RDR/TDR) .......................................... 825 26.21.6 7 ビットスレーブアドレスマスクレジスタ (ISMK).................................................. 827 26.21.7 7 ビットスレーブアドレスレジスタ (ISBA) ............................................................. 828 26.21.8 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0)............................................ 829 26.22 I2C インタフェースの割込み .............................................................................................. 830 26.22.1 I2C インタフェース通信の動作 ................................................................................ 832 26.22.2 マスタモード ............................................................................................................ 833 26.22.3 スレーブモード ........................................................................................................ 845 26.22.4 バスエラー ............................................................................................................... 848 26.23 専用ボーレートジェネレータ ............................................................................................. 849 26.24 I2C モードの注意事項......................................................................................................... 851 第 27 章 USB クロック生成部 ..............................................................................853 27.1 概要 ................................................................................................................................... 854 27.2 構成 ................................................................................................................................... 855 27.3 レジスタ ............................................................................................................................ 856 27.3.1 USB クロック設定レジスタ (UCCR) ...................................................................... 857 27.4 動作説明と設定手順例 ....................................................................................................... 859 第 28 章 DMA 転送要求セレクタ .........................................................................861 28.1 概要 ................................................................................................................................... 862 28.2 構成 ................................................................................................................................... 863 28.3 レジスタ ............................................................................................................................ 864 28.3.1 DREQ 選択レジスタ (DREQSEL) ........................................................................... 865 第 29 章 USB ファンクション ..............................................................................867 29.1 概要 ................................................................................................................................... 868 29.2 構成 ................................................................................................................................... 870 29.3 レジスタ ............................................................................................................................ 871 29.3.1 USB 選択レジスタ (USBSEL) ................................................................................. 873 29.3.2 USB 許可レジスタ (USBEN) ................................................................................... 874 29.3.3 UDC 制御レジスタ (UDCC) .................................................................................... 876 29.3.4 EP0 制御レジスタ (EP0C) ...................................................................................... 880 29.3.5 EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) ........................................................... 882 xvi FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 29.3.6 タイムスタンプレジスタ (TMSP) ............................................................................ 887 29.3.7 UDC ステータスレジスタ (UDCS) .......................................................................... 888 29.3.8 UDC 割込み許可レジスタ (UDCIE) ......................................................................... 891 29.3.9 EP0I ステータスレジスタ (EP0IS) .......................................................................... 893 29.3.10 EP0O ステータスレジスタ (EP0OS) ...................................................................... 895 29.3.11 EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) ................................................. 898 29.3.12 EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL) ............. 902 29.4 動作説明と設定手順例 ....................................................................................................... 906 29.4.1 接続検出と切断検出 ................................................................................................ 909 29.4.2 コマンド応答時のレジスタ動作 .............................................................................. 912 29.4.3 STALL 応答と解除 ................................................................................................... 915 29.4.4 サスペンド機能 ....................................................................................................... 922 29.4.5 ウェイクアップ機能 ................................................................................................ 923 29.4.6 DMA 転送機能 ......................................................................................................... 925 29.4.7 NULL 転送機能 ........................................................................................................ 931 29.4.8 ソフトウェア制御例 ................................................................................................ 932 第 30 章 USB ホスト ............................................................................................939 30.1 概要 ................................................................................................................................... 940 30.2 構成 ................................................................................................................................... 942 30.3 レジスタ ............................................................................................................................ 943 30.3.1 ホストコントロールレジスタ 0,1 (HCNT) .............................................................. 945 30.3.2 ホスト割込みレジスタ (HIRQ) ................................................................................ 951 30.3.3 ホストエラーステータスレジスタ (HERR) ............................................................. 955 30.3.4 ホスト状態ステータスレジスタ (HSTATE) ............................................................. 959 30.3.5 SOF 割込み FRAME 比較レジスタ (HFCOMP) ...................................................... 962 30.3.6 リトライタイマ設定レジスタ (HRTIMER) .............................................................. 963 30.3.7 ホストアドレスレジスタ (HADR) ........................................................................... 965 30.3.8 EOF 設定レジスタ (HEOF) ..................................................................................... 966 30.3.9 FRAME 設定レジスタ (HFRAME) ........................................................................... 968 30.3.10 ホストトークンエンドポイントレジスタ (HTOKEN) ............................................. 969 30.4 動作説明と設定手順例 ....................................................................................................... 971 30.4.1 USB デバイスの接続 ............................................................................................... 971 30.4.2 USB バスのリセット ............................................................................................... 973 30.4.3 トークンパケット .................................................................................................... 975 30.4.4 データパケット ....................................................................................................... 978 30.4.5 ハンドシェークパケットの動作 .............................................................................. 978 30.4.6 リトライ機能 ........................................................................................................... 979 30.4.7 SOF 割込み ............................................................................................................. 980 30.4.8 エラーステータス .................................................................................................... 982 30.4.9 パケット終了 ........................................................................................................... 983 30.4.10 サスペンド・リジューム ......................................................................................... 984 30.4.11 USB デバイスの切断 ............................................................................................... 987 30.4.12 USB ホストの各トークンフローチャート ............................................................... 988 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED xvii MB91665 シリーズ 第 31 章 DMA コントローラ (DMAC) ..................................................................993 31.1 概要 ................................................................................................................................... 994 31.2 構成 ................................................................................................................................... 997 31.3 レジスタ ............................................................................................................................ 999 31.3.1 DMA コントロールレジスタ (DMACR) ................................................................. 1000 31.3.2 DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) ............................................. 1002 31.3.3 DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) ............................................. 1003 31.3.4 DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) ........................................................ 1004 31.3.5 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) .................................. 1005 31.3.6 DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) ...................................... 1015 31.3.7 DMA 転送抑止割込みレベルレジスタ (DILVR) ..................................................... 1019 31.4 割込み .............................................................................................................................. 1021 31.5 動作説明と設定手順例 ..................................................................................................... 1022 31.5.1 転送設定 ................................................................................................................ 1022 31.5.2 転送動作 ................................................................................................................ 1025 31.5.3 転送の中断 ............................................................................................................ 1035 31.5.4 転送終了時の動作 .................................................................................................. 1037 31.5.5 転送後の動作 ......................................................................................................... 1038 31.5.6 DMA 転送の抑止 .................................................................................................... 1042 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 .....................1043 32.1 概要 ................................................................................................................................. 1044 32.2 構成 ................................................................................................................................. 1045 32.3 レジスタ .......................................................................................................................... 1047 32.3.1 IO 転送要求設定レジスタ (IORR0 ∼ IORR3) ....................................................... 1049 32.3.2 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) ...................... 1053 32.3.3 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) ...................... 1055 32.3.4 周辺機能による DMA 転送要求のクリア選択レジスタ 4 (ICSEL4) ...................... 1057 32.3.5 周辺機能による DMA 転送要求のクリア選択レジスタ 6 (ICSEL6) ...................... 1058 32.3.6 周辺機能による DMA 転送要求のクリア選択レジスタ 7 (ICSEL7) ...................... 1060 32.3.7 周辺機能による DMA 転送要求のクリア選択レジスタ 8 (ICSEL8) ...................... 1061 32.3.8 周辺機能による DMA 転送要求のクリア選択レジスタ 9 (ICSEL9) ...................... 1063 32.3.9 周辺機能による DMA 転送要求のクリア選択レジスタ 10 (ICSEL10) .................. 1065 32.4 動作説明と設定手順例 ..................................................................................................... 1068 32.4.1 DMA 転送時の動作 ................................................................................................ 1068 第 33 章 内蔵プログラムメモリ制御 ..................................................................1071 33.1 内蔵プログラムメモリ制御部の概要 ............................................................................... 1072 33.2 内蔵プログラムメモリ制御部のレジスタ ........................................................................ 1073 33.2.1 FLASH 制御レジスタ (FCTLR) ............................................................................. 1074 第 34 章 フラッシュメモリ ................................................................................1077 34.1 フラッシュメモリの概要 ................................................................................................. 1078 34.2 フラッシュメモリの構成 ................................................................................................. 1079 34.3 フラッシュメモリのレジスタ .......................................................................................... 1081 34.3.1 FLASH ステータスレジスタ (FSTR) ..................................................................... 1082 34.3.2 FLASH 制御レジスタ (FCTLR) ............................................................................. 1083 34.4 フラッシュメモリのアクセスモード ............................................................................... 1084 34.5 自動アルゴリズム ............................................................................................................ 1085 34.5.1 コマンドシーケンス .............................................................................................. 1085 xviii FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 34.5.2 自動アルゴリズムの実行状態 ................................................................................ 1088 34.6 フラッシュメモリの動作説明 .......................................................................................... 1093 34.6.1 リセット動作 ......................................................................................................... 1093 34.6.2 データ書込み動作 .................................................................................................. 1094 34.6.3 チップ消去動作 ..................................................................................................... 1097 34.6.4 セクタ消去動作 ..................................................................................................... 1097 34.6.5 セクタ消去一時停止動作 ....................................................................................... 1100 34.6.6 セクタ消去再開動作 .............................................................................................. 1101 34.7 データポーリングフラグ (DQ7) の制約事項と回避方法 .................................................. 1102 34.8 フラッシュメモリの使用上の注意 ................................................................................... 1105 第 35 章 ワイルドレジスタ ................................................................................1107 35.1 ワイルドレジスタの概要 ................................................................................................. 1108 35.2 ワイルドレジスタの構成 ................................................................................................. 1109 35.3 ワイルドレジスタのレジスタ .......................................................................................... 1110 35.3.1 ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) .............................. 1112 35.3.2 ワイルドレジスタデータレジスタ (WRDR00 ∼ WRDR15) ................................. 1113 35.3.3 ワイルドレジスタデータイネーブルレジスタ (WREN) ........................................ 1114 35.4 ワイルドレジスタの動作説明と設定手順例 .................................................................... 1115 35.4.1 ワイルドレジスタの動作 ....................................................................................... 1115 35.5 ワイルドレジスタの使用上の注意 ................................................................................... 1116 第 36 章 シリアル書込み接続 .............................................................................1119 36.1 富士通セミコンダクター製シリアルプログラマ ............................................................. 1120 36.1.1 使用する端子 ......................................................................................................... 1127 第 37 章 デバイスの取扱いについて ..................................................................1129 37.1 デバイス取扱い上の注意 ................................................................................................. 1130 付録 .......................................................................................................................1139 付録 A I/O マップ .............................................................................................1140 付録 B レジスタ一覧 ........................................................................................1155 付録 C 割込みベクタ ........................................................................................1167 付録 D CPU の状態における端子状態 .............................................................1170 付録 E E.1 E.2 E.3 命令一覧 ...............................................................................................1175 命令一覧表の見かた ........................................................................................................ 1175 命令一覧表 ....................................................................................................................... 1179 遅延スロットに配置可能な命令一覧 ............................................................................... 1188 索引 .......................................................................................................................1191 端子索引 ................................................................................................................1201 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED xix MB91665 シリーズ xx FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 本版での主な変更内容 ページ - 変更内容 ( 詳細は本文を参照してください。) 本ハードウェアマニュアルが初版となります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED xxi MB91665 シリーズ xxii FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 1 章 概要 MB91665 シリーズの特長と基本的な仕様について 説明します。 1.1 MB91665 シリーズの概要 1.2 MB91665 シリーズの品種構成 1.3 MB91665 シリーズのブロックダイヤグラム 1.4 外形寸法図 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1 第 1 章 概要 1.1 1.1 MB91665 シリーズ MB91665 シリーズの概要 MB91665 シリーズは , 32 ビット RISC CPU を使用し , 高性能 / 高速な CPU 処理を要求され る組込み制御用に各種周辺機能を内蔵したマイクロコントローラです。 本シリーズは , FR80 ファミリ CPU をベースにシングルチップ化したシリーズです。 ■ FR80 ファミリ CPU • 32 ビット RISC, ロード / ストアアーキテクチャ , パイプライン 5 段 • 汎用レジスタ 32 ビット 16 本 • 16 ビット固定長命令 ( 基本命令 ), 1 命令 /1 サイクル • 組込み用途に適した命令 - メモリ−メモリ間転送 , ビット処理 , バレルシフトなどの命令 - 高級言語対応命令 関数入口 / 出口命令 , レジスタ内容のマルチロードストア命令 - ビットサーチ命令 1 検出 , 0 検出 , 変化点検出 - 遅延スロット付き分岐命令 分岐処理時のオーバヘッドの低減 - レジスタインターロック機能 アセンブラ記述の容易化 - 乗算器の内蔵 / 命令レベルでのサポート 符号付き 32 ビット乗算− 5 サイクル 符号付き 16 ビット乗算− 3 サイクル - 割込み (PC, PS の退避 ) 最小 6 サイクルの高速応答 , 16 レベルの優先順位 - ハーバードアーキテクチャにより , プログラムアクセスとデータアクセスを同 時に実行可能 • 2 CPU 内の 4 ワードの命令キューにより , 命令の先取り機能 FR ファミリ CPU との基本命令互換 - ビットサーチ命令追加 - リソース命令 , コプロセッサ命令はありません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 1 章 概要 1.1 MB91665 シリーズ ■ 最大動作周波数 CPU 33MHz 周辺 33MHz 外部バス 33MHz ■ 外部バスインタフェース • 動作周波数 最大 33MHz • MB91F669 (64pin) アドレス 24 本 , 8/16 ビットデータ入出力 ( マルチプレックスバス ) アドレス 8 本 , 8/16 ビットデータ入出力 ( スプリットバス ) • MB91F668 (48pin)* アドレス 16 本 , 8 ビットデータ入出力 ( マルチプレックスバス ) アドレスなし , 8 ビットデータ入出力 ( スプリットバス ) * RDY, SYSCLK, WR1, CS1, CS2, CS3 はなし • 領域ごとにプログラマブルなオートウェイトサイクル発生 ■ DMA コントローラ (DMAC) • チャネル数:4 チャネル • アドレス空間:32 ビット (4G バイト ) • 転送モード:ブロック転送 / バースト転送 / デマンド転送 • アドレス更新:増加 / 減少 / 固定 ( 増減値は 1, 2, 4 固定 ) • 転送サイズ:8 ビット , 16 ビット , 32 ビット • ブロックサイズ:1 ∼ 16 • 転送回数:1 ∼ 65535 回 • 転送要求: - ソフトウェアによる要求 - 内蔵周辺機能の割込み要求 ( 割込み要求を共用 , 外部割込み要求含む ) • リロード機能:全チャネルリロード指定可 • 優先順位:固定 (ch.0 > ch.1 > ch.2 > ch.3 > …), もしくはラウンドロビン • 割込み要求:正常終了割込み要求 , 異常終了割込み要求 , 転送中断割込み要求を発生 可能 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 3 第 1 章 概要 1.1 MB91665 シリーズ ■ マルチファンクションシリアルインタフェース • チャネルごとに , 使用方法を次の中から選択可能 - UART - CSIO - I2C [UART の特長 ] - 全二重ダブルバッファ - パリティあり / なし選択可能 - 専用ボーレートジェネレータを内蔵 - 外部クロックをシリアルクロックとして使用可能 - 豊富なエラー検出機能あり ( パリティエラー , フレーミングエラー , オーバラン エラー ) [CSIO の特長 ] - 全二重ダブルバッファ - 専用ボーレートジェネレータを内蔵 - オーバランエラー検出機能あり [I2C の特長 ] - 標準モード ( 最大 100kbps) / 高速モード ( 最大 400kbps) に対応 - 一部のチャネルは 5V トレラント対応 ■ 割込み • 外部割込みは合計 16 本 ( 一部の端子は 5V トレラント対応 ) • 内部周辺機能からの割込み • 割込みレベルをプログラマブルに設定可能 (16 レベル ) • ストップモード , スリープモードからの復帰に使用可能 ■ A/D コンバータ 4 • MB91F669(64pin): 12 チャネル , 1 ユニット • MB91F668(48pin): 10 チャネル , 1 ユニット • 10 ビット分解能 • 逐次比較変換型 変換時間:約 1.2μs (PCLK=33MHz) • 優先 A/D 変換可能 (2 レベル ) • 変換モード ( 単発変換モード , スキャン変換モード ) • 起動要因 ( ソフトウェア / 外部トリガ / ベースタイマ ) • 変換データ格納用 FIFO を搭載 ( スキャン変換用:16 段 , 優先変換用:4 段 ) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 1 章 概要 1.1 MB91665 シリーズ ■ ベースタイマ • チャネル数:4 チャネル内蔵 • チャネルごとに , 使用方法を次の中から選択可能 - 16/32 ビットリロードタイマ - 16 ビット PWM タイマ - 16/32 ビット PWC タイマ - 16 ビット PPG タイマ • 2 チャネルをカスケード接続して 32 ビットタイマとして使用可能 • 複数チャネルの同時起動機能あり • 入出力選択機能あり ■ 16 ビットリロードタイマ • チャネル数:3 チャネル (REALOS 用 1 チャネル含む ) • インターバルタイマ機能 • カウント用クロック選択機能 ( 周辺クロック (PCLK) の 2 分周∼ 64 分周 ) ■ コンペアタイマ • 32 ビットインプットキャプチャ:8 チャネル内蔵 • 32 ビットアウトプットコンペア:8 チャネル内蔵 • 32 ビットフリーランタイマ:2 チャネル内蔵 ■ その他のインターバルタイマ • アップダウンカウンタ:1 チャネル内蔵 • 時計カウンタ:1 チャネル内蔵 • ウォッチドッグタイマ:1 チャネル内蔵 ■ USB ファンクション / ホスト CM71-10158-1 • チャネル数:1 チャネル • USB2.0 Full-Speed 対応 • USB ファンクションと USB ホストは切換え式 (USB I/O は兼用 ) • DMA 転送をサポート FUJITSU SEMICONDUCTOR LIMITED 5 第 1 章 概要 1.1 MB91665 シリーズ [USB ファンクション ] • 最大 4 本のエンドポイントをサポート - エンドポイント 0 はコントロール転送に固定 - エンドポイント 1 ∼エンドポイント 3 は , バルク転送とインタラプト転送を選択 可能 • エンドポイント 1 ∼エンドポイント 3 はダブルバッファ構成 [USB ホスト ] • コントロール転送 , バルク転送 , インタラプト転送 , アイソクロナス転送をサポート • USB デバイスの接続 / 切断の自動検出 • IN/OUT トークン時のハンドシェークパケットの自動処理 • 最大パケット長 256 バイトまでのサポート • ウェイクアップ機能のサポート ■ メインタイマ • チャネル数:1 チャネル • メインクロック (MCLK) の発振安定待ち時間をカウント • PLL クロック (PLLCLK) の発振安定待ち時間をカウント • メインクロック (MCLK) の発振が安定状態のときは , インターバルタイマとしても 使用可能 ■ サブタイマ • チャネル数:1 チャネル • サブクロック (SBCLK) の発振安定待ち時間をカウント • サブクロック (SBCLK) の発振が安定状態のときは, インターバルタイマとしても使 用可能 ■ クロック生成 • メインクロック (MCLK) 発振 • サブクロック (SBCLK) 発振 • PLL クロック (PLLCLK) 発振 ■ 低消費電力モード 6 • ストップモード • 時計モード • スリープモード • ドーズモード • クロック分周機能 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 1 章 概要 1.1 MB91665 シリーズ ■ その他の特長 • I/O ポート • リセット端子として INIT 端子を用意 • ウォッチドッグタイマリセット , ソフトウェアリセットあり • 遅延割込み • 電源 - CM71-10158-1 単一電源 (USB 未使用時 : 2.7 V ∼ 3.6 V, USB 使用時 : 3.0 V ∼ 3.6 V) FUJITSU SEMICONDUCTOR LIMITED 7 第 1 章 概要 1.2 MB91665 シリーズ MB91665 シリーズの品種構成 1.2 MB91665 シリーズの品種について説明します。 表 1.2-1 MB91665 シリーズの品種構成 品名 項目 MB91F669 分類 MB91F668 フラッシュメモリ品 内蔵プログラムメモリ容量 128K バイト ( フラッシュ ) 内蔵 RAM 容量 16K バイト マルチ アドレス 24bit データ 16/8bit アドレス 16bit データ 8bit スプリット アドレス 8bit データ 16/8bit アドレスなし データ 8bit 外部バスインタフェース DMA コントローラ (DMAC) ベースタイマ マルチファンクション シリアルインタフェース 4 チャネル 4 チャネル ( リロードタイマ /PWM/PPG/PWC モード切替可能 ) 4 チャネル (UART/SPI/I2C モード切替可能 ) 外部割込み 10 ビット A/D コンバータ 16 本 12 チャネル (1 ユニット ) 16 ビットリロードタイマ コンペアタイマ 10 チャネル (1 ユニット ) 3 チャネル 32 ビットインプットキャプチャ:8 チャネル 32 ビットアウトプットコンペア:8 チャネル 32 ビットフリーランタイマ:2 チャネル アップダウンカウンタ 1 チャネル 時計カウンタ 1 チャネル I/O ポート USB ファンクション / ホスト 50 本 34 本 1 チャネル ( ファンクション / ホストモード切替可能 ) メインタイマ 1 チャネル サブタイマ 1 チャネル ワイルドレジスタ 16 チャネル - デバッグ機能 パッケージ 8 種類:LQFP-64 パッケージコード:FPT-64P-M24 端子ピッチ:0.5mm ピッチ サイズ:10mm × 10mm FUJITSU SEMICONDUCTOR LIMITED 種類:LQFP-48 パッケージコード:FPT-48P-M26 端子ピッチ:0.5mm ピッチ サイズ:7mm × 7mm CM71-10158-1 第 1 章 概要 1.3 MB91665 シリーズ MB91665 シリーズのブロックダイヤグラム 1.3 MB91665 シリーズのブロックダイヤグラムを図 1.3-1 に示します。 図 1.3-1 MB91665 シリーズのブロックダイヤグラム 降圧レギュレータ FR80 CPU クロスバー スイッチ 内蔵プログラムメモリ フラッシュメモリ RAM オンチップバス DMAC 4 チャネル 外部バス I/F 周辺バス ブリッジ USB ファンクション / ホスト 割込みコントローラ 遅延割込み ポート 外部割込み 16 チャネル 16 ビット周辺バス ウォッチドッグタイマ 32 ビット周辺バス クロック制御 クロック生成 USB クロック生成 時計カウンタ 16 ビットリロードタイマ 3 チャネル アップダウンカウンタ 1 チャネル 32 ビットインプットキャプチャ 8 チャネル A/D コンバータ 12/10 チャネル (1 ユニット )* 32 ビットアウトプットコンペア 8 チャネル ポート 32 ビットフリーランタイマ 2 チャネル ベースタイマ 4 チャネル マルチファンクションシリアル インタフェース 4 チャネル * MB91F669(64pin): 12 チャネル MB91F668(48pin): 10 チャネル ポート CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 9 第 1 章 概要 1.4 MB91665 シリーズ 外形寸法図 1.4 MB91665 シリーズで使用する各パッケージの外形寸法図を示します。 図 1.4-1 外形寸法図 (FPT-48P-M26) プラスチック・LQFP, 48 ピン (FPT-48P-M26) リードピッチ 0.50mm パッケージ幅× パッケージ長さ 7mm × 7mm リード形状 ガルウイング 封止方法 プラスチックモールド 取付け高さ 1.70mm MAX 質量 0.17g コード(参考) P-LFQFP48-7×7-0.50 プラスチック・LQFP, 48 ピン (FPT-48P-M26) 注 1)* 印寸法はレジン残りを含む。 注 2)端子幅および端子厚さはメッキ厚を含む。 注 3)端子幅はタイバ切断残りを含まず。 9.00±0.20(.354±.008)SQ +0.40 +.016 * 7.00 –0.10 .276 –.004 SQ 36 0.145±0.055 (.006±.002) 25 37 24 0.08(.003) Details of "A" part +0.20 1.50 –0.10 +.008 INDEX 48 13 "A" 0°~8° LEAD No. 0.50(.020) 1 (Mounting height) .059 –.004 0.10±0.10 (.004±.004) (Stand off) 12 0.20±0.05 (.008±.002) 0.08(.003) 0.25(.010) M 0.60±0.15 (.024±.006) C 2003-2010 FUJITSU SEMICONDUCTOR LIMITED F48040S-c-2-3 単位:mm (inches) 注意:括弧内の値は参考値です。 最新の外形寸法図については , 下記の URL にてご確認ください。 http://edevice.fujitsu.com/package/jp-search/ 10 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 1 章 概要 1.4 MB91665 シリーズ 図 1.4-2 外形寸法図 (FPT-64P-M24) プラスチック・LQFP, 64 ピン リードピッチ 0.50 mm パッケージ幅× パッケージ長さ 10.0 mm × 10.0 mm リード形状 ガルウィング 封止方法 プラスチックモールド コード(参考) P-LFQFP64-10×10-0.50 (FPT-64P-M24) プラスチック・LQFP, 64 ピン (FPT-64P-M24) 注 1)* 印寸法はレジン残りを含まず。 注 2)端子幅および端子厚さはメッキ厚を含む。 注 3)端子幅はタイバ切断残りを含まず。 12.00±0.20(.472±.008)SQ Details of "A" part *10.00±0.10(.394±.004)SQ 48 0.145±0.055 (.006±.002) 33 49 0.15(.006) MAX 0.40(.016) MAX 32 0.08(.003) Details of "B" part 11.00(.433) NOM. +0.20 1.50 –0.10 +.008 (Mounting height) .059 –.004 0.25(.010) INDEX "A" 64 LEAD No. 1 "B" 16 0.50(.020) C 0~8° 17 0.20±0.05 (.008±.002) 0.08(.003) M 2006-2010 FUJITSU SEMICONDUCTOR LIMITED F64036S-1c(D)-1-3 0.50±0.20 (.020±.008) 0.60±0.15 (.024±.006) 0.10±0.10 (.004±.004) (Stand off) 単位:mm (inches) 注意:括弧内の値は参考値です。 最新の外形寸法図については , 下記の URL にてご確認ください。 http://edevice.fujitsu.com/package/jp-search/ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 11 第 1 章 概要 1.4 12 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズ の端子 MB91665シリーズの端子と, 兼用端子の設定につい て説明します。 2.1 端子配列図 2.2 端子機能一覧 2.3 入出力回路形式 2.4 端子の設定方法 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 13 第 2 章 MB91665 シリーズの端子 2.1 2.1 MB91665 シリーズ 端子配列図 MB91665 シリーズには 2 種類のパッケージが用意されています。 ■ LQFP-64 (MB91F669) 図 2.1-1 LQFP-64 端子配列図 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 P10/D08/SOUT2/INT0 (5V耐圧,OD) P61/SYSCLK/TIOB1_1/SIN2_1 P60/RDY/TIOA1_1/SOUT2_1 P83/AN11/IN3_1 P82/AN10/IN2_1 P81/AN9/IN1_1/TMI1_1 P80/AN8/IN0_1/TMI0_1 P77/AN7/SCK0/TMI2/OUT7_1/INT23 P76/AN6/SIN0/TMI1/OUT6_1/INT22 P75/AN5/SOUT0/TMI0/OUT5_1/INT21 P74/AN4/TMO2/OUT4_1/INT20 P73/AN3/TMO1/OUT3_1/INT19 P72/AN2/TMO0/OUT2_1/INT18 P71/AN1/OUT1_1/INT17 P70/AN0/OUT0_1/INT16 AVcc (TOP VIEW) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 LQFP-64 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 AVss P57/WR1/TIOB3_1/TMI2_1 P56/WR0/ZIN1_1/FRCK0/SCK6 P55/RD/BIN1_1/ADTRG0/SIN6 P54/AS/AIN1_1/SOUT6 P53/CS3/FRCK1/TIOA3_1/SCK1_1 P52/CS2/TIOB2_1/SIN1_1 P51/CS1/TIOA2_1/SOUT1_1 P50/CS0/TMO0_1 P07/D07/TIOB3/IN7 P06/D06/TIOA3/SCK1/IN6 (5V耐圧,OD) P05/D05/TIOB2/SIN1/IN5 (5V耐圧) P04/D04/TIOA2/SOUT1/IN4 (5V耐圧,OD) P03/D03/TIOB1/IN3 P02/D02/TIOA1/SCK0_1/IN2 (5V耐圧,OD) Vcc P24/A04/OUT0/A20 (5V耐圧,OD) P25/A05/OUT1/A21 (5V耐圧,OD) P26/A06/OUT2/A22 (5V耐圧,OD) P27/A07/OUT3/A23 (5V耐圧,OD) PH2/SCK2_1/INT2_1 (5V耐圧) P00/D00/TIOA0/SOUT0_1/IN0 (5V耐圧,OD) P01/D01/TIOB0/SIN0_1/IN1 INIT X0A/PK1 X1A/PK0 C MD1 MD0 X0 X1 Vss 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 P11/D09/SIN2/INT1 (5V耐圧) P12/D10/SCK2/INT2 (5V耐圧,OD) P13/D11/INT3 P14/D12/AIN1/INT4/OUT4 P15/D13/BIN1/INT5/OUT5 P16/D14/ZIN1/INT6/OUT6 P17/D15/INT7/OUT7 PH3/INT3_1 (5V耐圧) Vcc UDM UDP Vss P20/A00/TMO1_1/A16 (5V耐圧,OD) P21/A01/TMO2_1/A17 (5V耐圧,OD) P22/A02/TIOA0_1/A18 (5V耐圧,OD) P23/A03/TIOB0_1/A19 (5V耐圧) * ( )内の説明 5V耐圧:5V耐圧端子 OD:オープンドレイン制御端子 (FPT-64P-M24) (注意事項)XXX_1, XXX_2 のように , 「_ ( アンダバー ) 」がついている端子の , 「_」以降の数字はポー ト番号を示しています。 これらの端子は 1 つのチャネルに複数の同一機能の端子が用意されていますので , 拡張ポー ト機能レジスタ (EPFR) で使用する端子を選択してください。 14 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.1 MB91665 シリーズ ■ LQFP-48 (MB91F668) 図 2.1-2 LQFP-48 端子配列図 48 47 46 45 44 43 42 41 40 39 38 37 P10/D08/SOUT2/INT0 (5V耐圧,OD) P81/AN9/IN1_1/TMI1_1 P80/AN8/IN0_1/TMI0_1 P77/AN7/SCK0/TMI2/OUT7_1/INT23 P76/AN6/SIN0/TMI1/OUT6_1/INT22 P75/AN5/SOUT0/TMI0/OUT5_1/INT21 P74/AN4/TMO2/OUT4_1/INT20 P73/AN3/TMO1/OUT3_1/INT19 P72/AN2/TMO0/OUT2_1/INT18 P71/AN1/OUT1_1/INT17 P70/AN0/OUT0_1/INT16 AVcc (TOP VIEW) 1 2 3 4 5 6 7 8 9 10 11 12 LQFP-48 36 35 34 33 32 31 30 29 28 27 26 25 AVss P56/WR0/ZIN1_1/FRCK0/SCK6 P55/RD/BIN1_1/ADTRG0/SIN6 P54/AS/AIN1_1/SOUT6 P50/CS0/TMO0_1 P07/D07/TIOB3/IN7 P06/D06/TIOA3/SCK1/IN6 (5V耐圧,OD) P05/D05/TIOB2/SIN1/IN5 (5V耐圧) P04/D04/TIOA2/SOUT1/IN4 (5V耐圧,OD) P03/D03/TIOB1/IN3 P02/D02/TIOA1/SCK0_1/IN2 (5V耐圧,OD) Vcc PH2/SCK2_1/INT2_1 (5V耐圧) P00/D00/TIOA0/SOUT0_1/IN0 (5V耐圧,OD) P01/D01/TIOB0/SIN0_1/IN1 INIT X0A/PK1 X1A/PK0 C MD1 MD0 X0 X1 Vss 13 14 15 16 17 18 19 20 21 22 23 24 P11/D09/SIN2/INT1 (5V耐圧) P12/D10/SCK2/INT2 (5V耐圧,OD) P13/D11/INT3 P14/D12/AIN1/INT4/OUT4 P15/D13/BIN1/INT5/OUT5 P16/D14/ZIN1/INT6/OUT6 P17/D15/INT7/OUT7 PH3/INT3_1 (5V耐圧) Vcc UDM UDP Vss * ( )内の説明 5V耐圧:5V耐圧端子 OD:オープンドレイン制御端子 (FPT-48P-M26) (注意事項)XXX_1, XXX_2 のように , 「_ ( アンダバー ) 」がついている端子の , 「_」以降の数字はポー ト番号を示しています。 これらの端子は 1 つのチャネルに複数の同一機能の端子が用意されていますので , 拡張ポー ト機能レジスタ (EPFR) で使用する端子を選択してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 15 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 端子機能一覧 2.2 表 2.2-1 に , MB91665 シリーズの端子の機能一覧を示します。 XXX_1, XXX_2 のように , 「_ ( アンダバー ) 」がついている端子の , 「_」以降の数字はポー ト番号を示しています。ポート番号については , 「2.4 端子の設定方法」を参照してください。 ■ 端子機能一覧表 表 2.2-1 端子機能一覧 ( 1 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 入出力 回路 形式* 1 P11 汎用入出力ポートです。 2 1 2 外部バスインタフェースのデータバスの bit9 です。 ○ SIN2 ⎯ ○ INT1 外部割込み要求 1 の入力端子です。 ⎯ ○ P12 汎用入出力ポートです。 ⎯ ○ D10 外部バスインタフェースのデータバスの bit10 です。 ○ ⎯ マルチファンクションシリアルインタフェース ch.2 のク ロック入出力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SCK2 として , I2C ( 動作モード 4) として使用するときは , SCL2 として機能します。 ⎯ ○ 外部割込み要求 2 の入力端子です。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ SCK2 (SCL2) Q*2 P13 3 外部バスインタフェースのデータバスの bit11 です。 ○ ⎯ 外部割込み要求 3 の入力端子です。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのデータバスの bit12 です。 ○ ⎯ アップダウンカウンタの ch.1 の AIN 入力端子です。 ⎯ ○ INT4 外部割込み要求 4 の入力端子です。 ⎯ ○ OUT4 32 ビットアウトプットコンペア ch.4 の出力端子です。 ⎯ ⎯ 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのデータバスの bit13 です。 ○ ⎯ アップダウンカウンタの ch.1 の BIN 入力端子です。 ⎯ ○ 外部割込み要求 5 の入力端子です。 ⎯ ○ ○ D11 B INT3 P14 D12 4 4 AIN1 B P15 D13 5 5 BIN1 B INT5 32 ビットアウトプットコンペア ch.5 の出力端子です。 ⎯ P16 汎用入出力ポートです。 ⎯ ○ D14 外部バスインタフェースのデータバスの bit14 です。 ○ ⎯ アップダウンカウンタ ch.1 の ZIN 入力端子です。 ⎯ ○ 外部割込み要求 6 の入力端子です。 ⎯ ○ 32 ビットアウトプットコンペア ch.6 の出力端子です。 ⎯ ○ OUT5 6 6 ZIN1 INT6 OUT6 16 ○ マルチファンクションシリアルインタフェース ch.2 の入 力端子です。 Q*2 INT2 3 ⎯ ⎯ D09 1 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 B FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 2 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 入出力 回路 形式* 1 P17 7 7 D15 INT7 B OUT7 8 8 PH3 INT3_1 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのデータバスの bit15 です。 ○ ⎯ 外部割込み要求 7 の入力端子です。 ⎯ ○ 32 ビットアウトプットコンペア ch.7 の出力端子です。 ⎯ ○ ⎯ ○ ⎯ ○ 汎用入出力ポートです。 D*2 外部割込み要求 3 の入力端子 (1 番ポート ) です。 9 9 VCC ⎯ 電源端子です。 ⎯ ⎯ 10 10 UDM USB USB ファンクション / ホストの D −端子です。 ⎯ ⎯ 11 11 UDP USB USB ファンクション / ホストの D +端子です。 ⎯ ⎯ 12 12 VSS ⎯ GND 端子です。 ⎯ ⎯ P20 A00 13 ⎯ TMO1_1 汎用入出力ポートです。 外部バスインタフェースのアドレスバスの bit0 です。 Q * 2 16 ビットリロードタイマ ch.1 の出力端子 (1 番ポート ) で す。 15 16 17 18 19 ⎯ ⎯ ⎯ ⎯ ⎯ ⎯ ⎯ ○ ⎯ 外部バスインタフェースのアドレスバスの bit16 です。 ⎯ 汎用入出力ポートです。 ⎯ ○ A01 外部バスインタフェースのアドレスバスの bit1 です。 ⎯ ⎯ ⎯ ○ TMO2_1 Q * 2 16 ビットリロードタイマ ch.2 の出力端子 (1 番ポート ) で す。 A17 外部バスインタフェースのアドレスバスの bit17 です。 ⎯ ⎯ P22 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのアドレスバスの bit2 です。 ⎯ ⎯ A02 Q*2 ベースタイマ ch.0 の TIOA 端子 (1 番ポート ) です。 ⎯ ○ A18 外部バスインタフェースのアドレスバスの bit18 です。 ⎯ ⎯ P23 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのアドレスバスの bit3 です。 ⎯ ⎯ ベースタイマ ch.0 の TIOB 端子 (1 番ポート ) です。 ⎯ ○ TIOA0_1 A03 TIOB0_1 Q*2 A19 外部バスインタフェースのアドレスバスの bit19 です。 ○ ⎯ P24 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのアドレスバスの bit4 です。 ⎯ ⎯ A04 Q*2 32 ビットアウトプットコンペア ch.0 の出力端子です。 ⎯ ⎯ A20 外部バスインタフェースのアドレスバスの bit20 です。 ⎯ ⎯ P25 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのアドレスバスの bit5 です。 ⎯ ⎯ OUT0 A05 Q*2 32 ビットアウトプットコンペア ch.1 の出力端子です。 ⎯ ⎯ A21 外部バスインタフェースのアドレスバスの bit21 です。 ⎯ ⎯ P26 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのアドレスバスの bit6 です。 ⎯ ⎯ 32 ビットアウトプットコンペア ch.2 の出力端子です。 ⎯ ⎯ 外部バスインタフェースのアドレスバスの bit22 です。 ⎯ ⎯ OUT1 A06 OUT2 A22 CM71-10158-1 ○ ⎯ P21 A16 14 ⎯ ⎯ Q*2 FUJITSU SEMICONDUCTOR LIMITED 17 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 3 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 入出力 回路 形式* 1 P27 20 21 ⎯ 13 A07 Q*2 17 26 18 18 ⎯ 外部バスインタフェースのアドレスバスの bit23 です。 ⎯ PH2 汎用入出力ポートです。 ⎯ ○ ⎯ ○ ○ SCK2_1 (SCL2_1) マルチファンクションシリアルインタフェース ch.2 のク ロック入出力端子 (1 番ポート ) です。UART/CSIO ( 動作 D * 2 モード 0 ∼ 2) として使用するときは , SCK2_1 として , I2C ( 動作モード 4) として使用するときは , SCL2_1 として機 能します。 INT2_1 外部割込み要求 2 の入力端子 (1 番ポート ) です。 ⎯ P00 汎用入出力ポートです。 ⎯ ○ D00 外部バスインタフェースのデータバスの bit0 です。 ○ ⎯ ベースタイマ ch.0 の TIOA 端子です。 ⎯ ⎯ マルチファンクションシリアルインタフェース ch.0 の出 力端子 (1 番ポート ) です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SOUT0_1 として , I2C ( 動作モー ド 4) として使用するときは , SDA0_1 として機能します。 ⎯ ⎯ ○ Q*2 32 ビットインプットキャプチャ ch.0 の入力端子です。 ⎯ P01 汎用入出力ポートです。 ⎯ ○ D01 外部バスインタフェースのデータバスの bit1 です。 ○ ⎯ ベースタイマ ch.0 の TIOB 端子です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.0 の入 力端子 (1 番ポート ) です。 ⎯ ○ 32 ビットインプットキャプチャ ch.1 の入力端子です。 ⎯ ○ 外部リセット入力端子です。INIT=L でリセットが有効に なります。フラッシュメモリ品の入出力回路形式は P で す。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ サブクロック ( 発振 ) 入力端子です。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ サブクロック ( 発振 ) 入出力端子です。 ⎯ ⎯ TIOB0 B IN1 25 ⎯ ⎯ SIN0_1 16 外部バスインタフェースのアドレスバスの bit7 です。 ⎯ IN0 24 ○ ⎯ 14 15 ⎯ 32 ビットアウトプットコンペア ch.3 の出力端子です。 SOUT0_1 (SDA0_1) 23 汎用入出力ポートです。 A23 OUT3 TIOA0 22 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 INIT PK1 X0A PK0 X1A P I I 27 19 C ⎯ 電源安定化容量端子です。 ⎯ ⎯ 28 20 MD1 P モード 1 端子です。常に "L" レベルを入力してください。 フラッシュメモリ品の入出力回路形式は P です。 ⎯ ○ 29 21 MD0 P モード 0 端子です。フラッシュメモリ品の入出力回路形式 は P です。 通常は , MD0=L を入力してください。フラッシュメモリ のシリアル書込み時は , MD0=H を入力してください。 ⎯ ○ 30 22 X0 A メインクロック ( 発振 ) 入力端子です。 ⎯ ○ 31 23 X1 A メインクロック ( 発振 ) 入出力端子です。 ⎯ ⎯ 32 24 VSS ⎯ GND 端子です。 ⎯ ⎯ 33 25 VCC ⎯ 電源端子です。 ⎯ ⎯ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 4 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 入出力 回路 形式* 1 P02 汎用入出力ポートです。 ⎯ ○ D02 外部バスインタフェースのデータバスの bit2 です。 ○ ⎯ ベースタイマ ch.1 の TIOA 端子です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.0 のク ロック入出力端子 (1 番ポート ) です。UART/CSIO ( 動作 モード 0 ∼ 2) として使用するときは , SCK0_1 として , I2C ( 動作モード 4) として使用するときは , SCL0_1 として機能 します。 ⎯ ○ IN2 32 ビットインプットキャプチャ ch.2 の入力端子です。 ⎯ ○ P03 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのデータバスの bit3 です。 ○ ⎯ ○ TIOA1 34 Q*2 26 SCK0_1 (SCL0_1) 35 27 D03 B ベースタイマ ch.1 の TIOB 端子です。 ⎯ IN3 32 ビットインプットキャプチャ ch.3 の入力端子です。 ⎯ ○ P04 汎用入出力ポートです。 ⎯ ○ D04 外部バスインタフェースのデータバスの bit4 です。 ○ ⎯ ベースタイマ ch.2 の TIOA 端子です。 ⎯ ⎯ マルチファンクションシリアルインタフェース ch.1 の出 力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用 するときは , SOUT1 として , I2C ( 動作モード 4) として使 用するときは , SDA1 として機能します。 ⎯ ○ IN4 32 ビットインプットキャプチャ ch.4 の入力端子です。 ⎯ ○ P05 汎用入出力ポートです。 ⎯ ○ D05 外部バスインタフェースのデータバスの bit5 です。 ○ ⎯ ベースタイマ ch.2 の TIOB 端子です。 ⎯ ○ SIN1 マルチファンクションシリアルインタフェース ch.1 の入 力端子です。 ⎯ ○ IN5 ○ TIOB1 TIOA2 36 Q*2 28 SOUT1 (SDA1) 37 29 TIOB2 Q*2 32 ビットインプットキャプチャ ch.5 の入力端子です。 ⎯ P06 汎用入出力ポートです。 ⎯ ○ D06 外部バスインタフェースのデータバスの bit6 です。 ○ ⎯ ベースタイマ ch.3 の TIOA 端子です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.1 のク ロック入出力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SCK1 として , I2C ( 動作モード 4) として使用するときは , SCL1 して機能します。 ⎯ ○ ○ TIOA3 38 Q*2 30 SCK1 (SCL1) 32 ビットインプットキャプチャ ch.6 の入力端子です。 ⎯ P07 汎用入出力ポートです。 ⎯ ○ D07 外部バスインタフェースのデータバスの bit7 です。 ○ ⎯ ベースタイマ ch.3 の TIOB 端子です。 ⎯ ○ IN6 39 31 TIOB3 B 32 ビットインプットキャプチャ ch.7 の入力端子です。 ⎯ ○ P50 汎用入出力ポートです。 ⎯ ○ CS0 外部バスインタフェースのチップセレクト 0 出力端子で す。 ⎯ ⎯ 16 ビットリロードタイマ ch.0 の出力端子 (1 番ポート ) で す。 ⎯ ⎯ IN7 40 32 TMO0_1 CM71-10158-1 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 C FUJITSU SEMICONDUCTOR LIMITED 19 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 5 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 41 ⎯ 入出力 回路 形式* 1 P51 汎用入出力ポートです。 ⎯ ○ CS1 外部バスインタフェースのチップセレクト 1 出力端子で す。 ⎯ ⎯ ベースタイマ ch.2 の TIOA 端子 (1 番ポート ) です。 ⎯ ⎯ マルチファンクションシリアルインタフェース ch.1 の出 力端子 (1 番ポート ) です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SOUT1_1 として , I2C ( 動作モー ド 4) として使用するときは , SDA1_1 として機能します。 ⎯ ○ P52 汎用入出力ポートです。 ⎯ ○ CS2 外部バスインタフェースのチップセレクト 2 出力端子で す。 ⎯ ⎯ ベースタイマ ch.2 の TIOB 端子 (1 番ポート ) です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.1 の入 力端子 (1 番ポート ) です。 ⎯ ○ P53 汎用入出力ポートです。 ⎯ ○ CS3 外部バスインタフェースのチップセレクト 3 出力端子で す。 ⎯ ⎯ FRCK1 32 ビットフリーランタイマ ch.1 の外部クロック入力端子 です。 ⎯ ○ ベースタイマ ch.3 の TIOA 端子 (1 番ポート ) です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.1 のク ロック入出力端子 (1 番ポート ) です。UART/CSIO ( 動作 モード 0 ∼ 2) として使用するときは , SCK1_1 として , I2C ( 動作モード 4) として使用するときは , SCL1_1 として機能 します。 ⎯ ○ P54 汎用入出力ポートです。 ⎯ ○ AS 外部バスインタフェースのアドレスストローブ出力端子で す。 ⎯ ⎯ アップダウンカウンタの ch.1 の AIN 入力端子 (1 番ポート ) です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.6 の出 力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用 するときは , SOUT6 として , I2C ( 動作モード 4) として使 用するときは , SDA6 として機能します。 ⎯ ○ P55 汎用入出力ポートです。 ⎯ ○ RD 外部バスインタフェースのリードストローブ出力端子で す。 ⎯ ⎯ アップダウンカウンタの ch.1 の BIN 入力端子 (1 番ポート ) です。 ⎯ ○ 10 ビット A/D コンバータの外部トリガ入力端子です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.6 の入 力端子です。 ⎯ ○ TIOA2_1 C SOUT1_1 (SDA1_1) 42 ⎯ TIOB2_1 C SIN1_1 43 ⎯ TIOA3_1 C SCK1_1 (SCL1_1) 44 33 AIN1_1 C SOUT6 (SDA6) 45 34 BIN1_1 ADTRG0 SIN6 20 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 C FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 6 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 入出力 回路 形式* 1 P56 汎用入出力ポートです。 ⎯ ○ WR0 外部バスインタフェースのライトストローブ 0 出力端子で す。 ⎯ ⎯ アップダウンカウンタ ch.1 の ZIN 入力端子 (1 番ポート ) です。 ⎯ ○ FRCK0 32 ビットフリーランタイマ ch.0 の外部クロック入力端子 です。 ⎯ ○ SCK6 (SCL6) マルチファンクションシリアルインタフェース ch.6 のク ロック入出力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SCK6 として , I2C ( 動作モード 4) として使用するときは , SCL6 として機能します。 ⎯ ○ P57 汎用入出力ポートです。 ⎯ ○ WR1 外部バスインタフェースのライトストローブ 1 出力端子で す。 ⎯ ⎯ ベースタイマ ch.3 の TIOB 端子 (1 番ポート ) です。 ⎯ ○ 16 ビットリロードタイマ ch.2 の入力端子 (1 番ポート ) で す。 ⎯ ○ ⎯ ⎯ ⎯ ZIN1_1 46 47 35 ⎯ 機能 C TIOB3_1 C TMI2_1 48 36 AVSS ⎯ 10 ビット A/D コンバータの GND 端子です。 49 37 AVCC ⎯ 50 38 10 ビット A/D コンバータのアナログ電源端子です。 ⎯ P70 汎用入出力ポートです。 ⎯ ○ AN0 10 ビット A/D コンバータ ch.0 のアナログ入力端子です。 ⎯ ⎯ 32 ビットアウトプットコンペア ch.0 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 16 の入力端子です。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ 10 ビット A/D コンバータ ch.1 のアナログ入力端子です。 ⎯ ⎯ 32 ビットアウトプットコンペア ch.1 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 17 の入力端子です。 ⎯ ○ P72 汎用入出力ポートです。 ⎯ ○ AN2 10 ビット A/D コンバータ ch.2 のアナログ入力端子です。 ⎯ ⎯ 16 ビットリロードタイマ ch.0 の出力端子です。 ⎯ ⎯ 32 ビットアウトプットコンペア ch.2 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ ○ OUT0_1 E INT16 P71 AN1 51 39 OUT1_1 E INT17 52 40 TMO0 E OUT2_1 外部割込み要求 18 の入力端子です。 ⎯ P73 汎用入出力ポートです。 ⎯ ○ AN3 10 ビット A/D コンバータ ch.3 のアナログ入力端子です。 ⎯ ⎯ 16 ビットリロードタイマ ch.1 の出力端子です。 ⎯ ⎯ 32 ビットアウトプットコンペア ch.3 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 19 の入力端子です。 ⎯ ○ INT18 53 41 TMO1 OUT3_1 INT19 CM71-10158-1 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 E FUJITSU SEMICONDUCTOR LIMITED 21 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 7 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 54 42 入出力 回路 形式* 1 P74 汎用入出力ポートです。 ⎯ ○ AN4 10 ビット A/D コンバータ ch.4 のアナログ入力端子です。 ⎯ ⎯ 16 ビットリロードタイマ ch.2 の出力端子です。 ⎯ ⎯ 32 ビットアウトプットコンペア ch.4 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 20 の入力端子です。 ⎯ ○ TMO2 E OUT4_1 INT20 汎用入出力ポートです。 ⎯ ○ AN5 10 ビット A/D コンバータ ch.5 のアナログ入力端子です。 ⎯ ⎯ SOUT0 (SDA0) マルチファンクションシリアルインタフェース ch.0 の出 力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用 するときは , SOUT0 として , I2C ( 動作モード 4) として使 用するときは , SDA0 として機能します。 ⎯ ⎯ 16 ビットリロードタイマ ch.0 の入力端子です。 ⎯ ○ 32 ビットアウトプットコンペア ch.5 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 21 の入力端子です。 ⎯ ○ P76 汎用入出力ポートです。 ⎯ ○ AN6 10 ビット A/D コンバータ ch.6 のアナログ入力端子です。 ⎯ ⎯ SIN0 マルチファンクションシリアルインタフェース ch.0 の入 力端子です。 ⎯ ○ 16 ビットリロードタイマ ch.1 の入力端子です。 ⎯ ○ 32 ビットアウトプットコンペア ch.6 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 22 の入力端子です。 ⎯ ○ P77 汎用入出力ポートです。 ⎯ ○ AN7 10 ビット A/D コンバータ ch.7 のアナログ入力端子です。 ⎯ ⎯ SCK0 (SCL0) マルチファンクションシリアルインタフェース ch.0 のク ロック入出力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SCK0 として , I2C ( 動作モード 4) として使用するときは , SCL0 として機能します。 ⎯ ○ 16 ビットリロードタイマ ch.2 の入力端子です。 ⎯ ○ 32 ビットアウトプットコンペア ch.7 の出力端子 (1 番ポー ト ) です。 ⎯ ⎯ 外部割込み要求 23 の入力端子です。 ⎯ ○ P75 55 43 E TMI0 OUT5_1 INT21 56 44 TMI1 E OUT6_1 INT22 57 45 E TMI2 OUT7_1 INT23 P80 AN8 58 46 IN0_1 TMI0_1 22 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 E 汎用入出力ポートです。 ⎯ ○ 10 ビット A/D コンバータ ch.8 のアナログ入力端子です。 ⎯ ⎯ 32 ビットインプットキャプチャ ch.0 の入力端子 (1 番ポー ト ) です。 ⎯ ○ 16 ビットリロードタイマ ch.0 の入力端子 (1 番ポート ) で す。 ⎯ ○ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.2 MB91665 シリーズ 表 2.2-1 端子機能一覧 ( 8 / 8 ) 端子 番号 端子名 64 ピン 48 ピン 59 47 入出力 回路 形式* 1 P81 汎用入出力ポートです。 ⎯ ○ AN9 10 ビット A/D コンバータ ch.9 のアナログ入力端子です。 ⎯ ⎯ 32 ビットインプットキャプチャ ch.1 の入力端子 (1 番ポー ト ) です。 ⎯ ○ 16 ビットリロードタイマ ch.1 の入力端子 (1 番ポート ) で す。 ⎯ ○ IN1_1 E TMI1_1 P82 60 ⎯ AN10 E IN2_1 ⎯ ⎯ ⎯ ○ 10 ビット A/D コンバータ ch.11 のアナログ入力端子です。 32 ビットインプットキャプチャ ch.3 の入力端子 (1 番ポー ト ) です。 ⎯ ○ P60 汎用入出力ポートです。 ⎯ ○ RDY 外部バスインタフェースのレディ入力端子です。 ○ ⎯ ベースタイマ ch.1 の TIOA 端子 (1 番ポート ) です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.2 の出 力端子 (1 番ポート ) です。UART/CSIO ( 動作モード 0 ∼ 2) として使用するときは , SOUT2_1 として , I2C ( 動作モー ド 4) として使用するときは , SDA2_1 として機能します。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのバスクロック出力端子です。 ⎯ ⎯ ベースタイマ ch.1 の TIOB 端子 (1 番ポート ) です。 ⎯ ○ マルチファンクションシリアルインタフェース ch.2 の入 力端子 (1 番ポート ) です。 ⎯ ○ 汎用入出力ポートです。 ⎯ ○ 外部バスインタフェースのデータバスの bit8 です。 ○ ⎯ マルチファンクションシリアルインタフェース ch.2 の出 力端子です。UART/CSIO ( 動作モード 0 ∼ 2) として使用 するときは , SOUT2 として , I2C ( 動作モード 4) として使 用するときは , SDA2 として機能します。 ⎯ ○ 外部割込み要求 0 の入力端子です。 ⎯ ○ E TIOA1_1 B TIOB1_1 C SIN2_1 P10 D08 48 32 ビットインプットキャプチャ ch.2 の入力端子 (1 番ポー ト ) です。 ○ SYSCLK 64 10 ビット A/D コンバータ ch.10 のアナログ入力端子です。 ⎯ P61 ⎯ ○ ⎯ ⎯ SOUT2_1 (SDA2_1) 63 ⎯ ⎯ ⎯ AN11 IN3_1 62 汎用入出力ポートです。 汎用入出力ポートです。 P83 61 機能 CMOS CMOS レベル レベル ヒステ 入力 リシス 入力 SOUT2 (SDA2) INT0 Q * 1:入出力回路形式については ,「2.3 入出力回路形式」を参照してください。 * 2:5 V トレラント端子 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 23 第 2 章 MB91665 シリーズの端子 2.3 MB91665 シリーズ 入出力回路形式 2.3 表 2.3-1 に , MB91665 シリーズの入出力回路の形式を示します。 ■ 入出力回路形式 表 2.3-1 入出力回路形式 ( 1 / 4 ) 分類 A 回路 X1 備考 クロック入力 ・発振帰還抵抗 : 約 1MΩ ・スタンバイ制御あり X0 スタンバイ制御 B P-ch P-ch N-ch デジタル出力 デジタル出力 R プルアップ制御 デジタル入力 スタンバイ制御 デジタル入力 スタンバイ制御 24 ・CMOS レベル出力 ・CMOS レベル入力 ・CMOS レベルヒステリシス入力 ・プルアップ制御あり ・スタンバイ制御あり * 外部バスインタフェース時の 入力データ , RDY 端子を選択時は CMOS レベル入力。 上記以外の入力は , すべて CMOS レベルヒステリシス入力となりま す。 * I2C 端子として使用時 , デジタル 出力 P-ch トランジスタは常にオ フです。 *N-ch オープンドレイン制御端子 として使用時 , デジタル出力 P-ch トランジスタは常にオフです。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.3 MB91665 シリーズ 表 2.3-1 入出力回路形式 ( 2 / 4 ) 分類 C 回路 備考 ・CMOS レベル出力 ・CMOS レベルヒステリシス入力 ・プルアップ制御あり ・スタンバイ制御あり P-ch P-ch デジタル出力 N-ch デジタル出力 R * I2C 端子として使用時 , デジタル 出力 P-ch トランジスタは常にオ フです。 プルアップ制御 デジタル入力 スタンバイ制御 D P-ch N-ch デジタル出力 デジタル出力 R ・CMOS レベル出力 ・CMOS レベルヒステリシス入力 ・5V トレラント入力 ・スタンバイ制御あり * I2C 端子として使用時 , デジタル 出力 P-ch トランジスタは常にオ フです。 デジタル入力 スタンバイ制御 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 25 第 2 章 MB91665 シリーズの端子 2.3 MB91665 シリーズ 表 2.3-1 入出力回路形式 ( 3 / 4 ) 分類 E 回路 P-ch P-ch N-ch R 備考 デジタル出力 デジタル出力 ・CMOS レベル出力 ・CMOS レベルヒステリシス入力 ・入力制御あり ・アナログ入力 ・プルアップ制御あり ・スタンバイ制御あり *I2C 端子として使用時 , デジタル 出力 P-ch トランジスタは常にオ フです。 プルアップ制御 デジタル入力 スタンバイ制御 アナログ入力 入力制御 I X1A P-ch デジタル出力 N-ch デジタル出力 ・発振帰還抵抗 : 約 10MΩ ・CMOS レベル出力 ・CMOS レベルヒステリシス入力 ・スタンバイ制御あり R デジタル入力 スタンバイ制御 クロック入力 スタンバイ制御 デジタル入力 R X0A 26 スタンバイ制御 P-ch デジタル出力 N-ch デジタル出力 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.3 MB91665 シリーズ 表 2.3-1 入出力回路形式 ( 4 / 4 ) 分類 P 回路 備考 ・フラッシュメモリ品のみ ・CMOS レベルヒステリシス入力 ・フラッシュメモリテスト用の高 電圧制御あり N-ch N-ch 制御端子 N-ch N-ch N-ch モード入力 R Q P-ch デジタル出力 N-ch デジタル出力 R ・CMOS レベル出力 ・CMOS レベル入力 ・CMOS レベルヒステリシス入力 ・5 V トレラント入力 ・スタンバイ制御あり *N-ch オープンドレイン制御端子 として使用時 , デジタル出力 P-ch トランジスタは常にオフです。 デジタル入力 スタンバイ制御 デジタル入力 スタンバイ制御 USB USB 入出力端子 UDP ( + ) 出力 UDP(+) UDP ( + ) 入力 Differential UDM(-) 差動入力 UDM ( − ) 入力 UDM ( − ) 出力 方向 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 27 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ 端子の設定方法 2.4 兼用端子のレジスタの設定方法を説明します。 兼用端子には , 複数の機能が割り当てられています。その中からひとつの機能に割り当 てるためのレジスタの設定値を周辺機能ごとに示します。 表中のレジスタ名は略称です。 ・EPFR:拡張ポート機能レジスタ ・PFR:ポート機能レジスタ ・DDR:ポートデータ方向レジスタ これらのレジスタについては , 「第 14 章 I/O ポート」を参照してください。 これ以外のレジスタ略称については , 各表の下に注記してあります。それぞれの章を参 照してください。 ■ ポート P00 ∼ P07 端子名 レジスタ名 PFR0 PFR00 ∼ PFR07 0 P10 ∼ P17 PFR1 PFR10 ∼ PFR17 0 P20 ∼ P27 PFR2 PFR20 ∼ PFR27 0 ― PFR3 PFR30 ∼ PFR37 0 ― PFR4 PFR40 ∼ PFR47 0 PFR50 ∼ PFR57 0 PFR60, PFR61 0 PFR5 P50 ∼ P57 ビット名 書込み値 P60, P61 PFR6 P70 ∼ P77 PFR7 PFR70 ∼ PFR77 0 P80 ∼ P83 PFR8 PFR80 ∼ PFR83 0 ― PFRA PFRA0 ∼ PFRA7 0 ― PFRG PFRG0 ∼ PFRG7 0 PFRH* PFRH2, PFRH3 0 PH2, PH3 *: * P60, PH3 は PFR レジスタの設定は不要です。 < 注意事項 > ポートデータ方向レジスタ (DDR) の設定については , 「第 14 章 I/O ポート」を参照して ください。 28 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ クロック 端子名 X0A, X1A レジスタ名 DDRK ビット名 DDRK1, DDRK0 書込み値 00 EPFR19 XAE 1 CSELR SCEN 1 CSELR:クロックソース設定レジスタ ■ 外部割込み制御部 チャネルごとに使用する端子を INTx 端子または INTx_1 端子から 1 本ずつ選択できま す。( 一部チャネルのみ対応 ) INT 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. 外部割込み制御部の動作を許可 ( 詳細は , 「第 15 章 外部割込み制御部」を参照し てください。) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 0∼3 端子名 0 番ポート INT0 ∼ INT3 1 番ポート INT2_1 ∼ INT3_1 4∼7 0 番ポート INT4 ∼ INT7 16 ∼ 19 0 番ポート INT16 ∼ INT19 20 21 0 番ポート INT20 0 番ポート INT21 レジスタ名 ビット名 DDR1 DDR10 ∼ DDR13 書込み値 0 PFR1 PFR10 ∼ PFR13 0 EPFR28 INT0E ∼ INT3E 0 DDRH DDRH0 ∼ DDRH3 0 PFRH * 0 EPFR28 INT0E ∼ INT3E 1 DDR1 DDR14 ∼ DDR17 0 PFR1 PFR14 ∼ PFR17 0 EPFR28 INT4E ∼ INT7E 0 DDR3 DDR34 ∼ DDR37 0 PFR3 PFR34 ∼ PFR37 0 DDR7 DDR70 ∼ DDR73 0 PFR7 PFR70 ∼ PFR73 0 EPFR30 INT16E ∼ INT19E 0 ADCHE ADE0 ∼ ADE3 0 DDR7 DDR74 0 PFR7 PFR74 0 EPFR31 INT20E 0 ADCHE ADE4 0 DDR7 DDR75 0 PFR7 PFR75 0 EPFR31 INT21E1, INT21E0 00 ADCHE ADE5 0 *: INT2_1:PFRH2, INT3_1:PFR なし CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 29 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 22 INT22 0 番ポート 23 0 番ポート INT23 レジスタ名 ビット名 DDR7 DDR76 書込み値 0 PFR7 PFR76 0 EPFR31 INT22E1, INT22E0 00 ADCHE ADE6 0 DDR7 DDR77 0 PFR7 PFR77 0 EPFR31 INT23E1, INT23E0 00 ADCHE ADE7 0 ■ 32 ビットフリーランタイマ FRCK 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. 32 ビットフリーランタイマの動作を許可 ( 詳細は ,「第 18 章 32 ビット フリーラン タイマ」を参照してください。) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 0 0 番ポート FRCK0 1 0 番ポート FRCK1* レジスタ名 DDR5 ビット名 DDR56 書込み値 0 PFR5 PFR56 0 EPFR34 FRCK0E1, FRCK0E0 00 DDR3 DDR32 0 PFR3 PFR32 0 DDR5 DDR53 0 PFR5 PFR53 0 EPFR34 FRCK1E1, FRCK1E0 00 DDRG DDRG6 0 PFRG PFRG6 0 * MB91F668(48pin) は FRCK1 端子はありません。 30 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ 32 ビットインプットキャプチャ 32 ビットインプットキャプチャは , チャネルごとに IN 端子が 2 本用意されています。 ( 一部チャネルのみ対応 ) チャネルごとに使用する端子を 1 本ずつ選択できます。 IN 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. 32 ビットインプットキャプチャの動作を許可 ( 詳細は , 「第 19 章 32 ビットイン プットキャプチャ」を参照してください。) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 0 IN0 0 番ポート 1 番ポート 1 0 番ポート 1 番ポート 2 0 番ポート 1 番ポート CM71-10158-1 IN0_1 IN1 IN1_1 IN2 IN2_1 レジスタ名 DDR0 ビット名 DDR00 書込み値 0 PFR0 PFR00 0 EPFR4 IN0E1, IN0E0 00 DDR8 DDR80 0 PFR8 PFR80 0 EPFR4 IN0E1, IN0E0 01 ADCHE ADE8 0 DDRA DDRA5 0 ADCHE ADE21 1 DDR0 DDR01 0 PFR0 PFR01 0 EPFR4 IN1E1, IN1E0 00 DDR8 DDR81 0 PFR8 PFR81 0 EPFR4 IN1E1, IN1E0 01 ADCHE ADE9 0 DDRA DDRA6 0 PFRA PFRA6 0 ADCHE ADE22 1 DDR0 DDR02 0 PFR0 PFR02 0 EPFR4 IN2E1, IN2E0 00 DDR8 DDR82 0 PFR8 PFR82 0 EPFR4 IN2E1, IN2E0 01 ADCHE ADE10 0 FUJITSU SEMICONDUCTOR LIMITED 31 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 3 IN3 0 番ポート 1 番ポート 4 5 6 7 0 番ポート 0 番ポート 0 番ポート 0 番ポート IN3_1 IN4 IN5 IN6 IN7 レジスタ名 DDR0 ビット名 DDR03 書込み値 0 PFR0 PFR03 0 EPFR4 IN3E1, IN3E0 00 DDR8 DDR83 0 PFR8 PFR83 0 EPFR4 IN3E1, IN3E0 01 ADCHE ADE11 0 DDR0 DDR04 0 PFR0 PFR04 0 EPFR5 IN4E1, IN4E0 00 DDR0 DDR05 0 PFR0 PFR05 0 EPFR5 IN5E1, IN5E0 00 DDR0 DDR06 0 PFR0 PFR06 0 EPFR5 IN6E1, IN6E0 00 DDR0 DDR07 0 PFR0 PFR07 0 EPFR5 IN7E1, IN7E0 00 ■ 32 ビットアウトプットコンペア 32 ビットアウトプットコンペアは , チャネルごとに OUT 端子が 2 本用意されています。 チャネルごとに使用する端子を 1 本ずつ選択できます。 OUT 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 4. PFR レジスタで周辺機能を設定 (PFR=1) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 0 0 番ポート OUT0 1 番ポート 32 OUT0_1 レジスタ名 PFR2 ビット名 PFR24 書込み値 1 EPFR0 OUT0E2 ∼ OUT0E0 001 DDR4 DDR44 0 PFR4 PFR44 0 PFR7 PFR70 1 EPFR0 OUT0E2 ∼ OUT0E0 010 ADCHE ADE0 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 1 OUT1 0 番ポート 1 番ポート 2 0 番ポート 1 番ポート 3 0 番ポート 1 番ポート 4 0 番ポート 1 番ポート 5 0 番ポート 1 番ポート CM71-10158-1 OUT1_1 OUT2 OUT2_1 OUT3 OUT3_1 OUT4 OUT4_1 OUT5 OUT5_1 レジスタ名 PFR2 ビット名 PFR25 書込み値 1 EPFR0 OUT1E2 ∼ OUT1E0 001 DDR4 DDR45 0 PFR4 PFR45 0 PFR7 PFR71 1 EPFR0 OUT1E2 ∼ OUT1E0 010 ADCHE ADE1 0 PFR2 PFR26 1 EPFR1 OUT2E2 ∼ OUT2E0 001 DDR4 DDR46 0 PFR4 PFR46 0 PFR7 PFR72 1 EPFR1 OUT2E2 ∼ OUT2E0 010 EPFR33 TMO0E1,TMO0E0 01 以外 * ADCHE ADE2 0 PFR2 PFR27 1 EPFR1 OUT3E2 ∼ OUT3E0 001 DDR4 DDR47 0 PFR4 PFR47 0 PFR7 PFR73 1 EPFR1 OUT3E2 ∼ OUT3E0 010 EPFR33 TMO1E1,TMO1E0 01 以外 * ADCHE ADE3 0 PFR3 PFR34 1 EPFR2 OUT4E2 ∼ OUT4E0 001 DDR1 DDR14 0 PFR1 PFR14 0 PFR7 PFR74 1 EPFR2 OUT4E2 ∼ OUT4E0 010 EPFR34 TMO2E1,TMO2E0 01 以外 * ADCHE ADE4 0 PFR3 PFR35 1 EPFR2 OUT5E2 ∼ OUT5E0 001 DDR1 DDR15 0 PFR1 PFR15 0 PFR7 PFR75 1 EPFR2 OUT5E2 ∼ OUT5E0 010 EPFR6 SOUT0E2∼SOUT0E0 001 以外 * ADCHE ADE5 FUJITSU SEMICONDUCTOR LIMITED 0 33 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 6 OUT6 0 番ポート 1 番ポート 7 0 番ポート 1 番ポート OUT6_1 OUT7 OUT7_1 レジスタ名 PFR3 ビット名 PFR36 書込み値 1 EPFR3 OUT6E2 ∼ OUT6E0 001 DDR1 DDR16 0 PFR1 PFR16 0 PFR7 PFR76 1 EPFR3 OUT6E2 ∼ OUT6E0 010 ADCHE ADE6 0 PFR3 PFR37 1 EPFR3 OUT7E2 ∼ OUT7E0 001 DDR1 DDR17 0 PFR1 PFR17 0 PFR7 PFR77 1 EPFR3 OUT7E2 ∼ OUT7E0 010 EPFR6 SCK0E2 ∼ SCK0E0 001 以外 * ADCHE ADE7 0 * : 設定禁止値を書込みしないでください。詳細は「第 14 章 I/O ポート」を参照して ください。 34 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ 16 ビットリロードタイマ 16 ビットリロードタイマは , チャネルごとに TMI/TMO 端子が 2 本ずつ用意されてい ます。 チャネルごとに使用する TMI /TMO 端子を 1 本ずつ選択できます。ただし , 同じチャ ネルで使用する端子は , 同じポート番号に割り当てられている端子を選択してくださ い。 TMI 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. 16 ビットリロードタイマの動作を許可 ( 詳細は ,「第 21 章 16 ビットリロードタイ マ」を参照してください。) TMO 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 4. PFR レジスタで周辺機能を設定 (PFR=1) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 0 0 番ポート TMI0 TMO0 1 番ポート TMI0_1 TMO0_1 CM71-10158-1 レジスタ名 DDR7 ビット名 DDR75 書込み値 0 PFR7 PFR75 0 EPFR33 TMI0E 0 ADCHE ADE5 0 PFR7 PFR72 1 EPFR33 TMO0E1, TMO0E0 01 ADCHE ADE2 0 DDRA DDRA5 0 EPFR33 TMI0E 1 ADCHE ADE21 0 DDR8 DDR80 0 PFR8 PFR80 0 ADCHE ADE8 1 PFRA PFRA2 1 EPFR33 TMO0E1, TMO0E0 10 ADCHE ADE18 0 DDR5 DDR50 0 PFR5 PFR50 0 FUJITSU SEMICONDUCTOR LIMITED 35 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 1 TMI1 0 番ポート TMO1 1 番ポート TMI1_1 TMO1_1 2 0 番ポート TMI2 TMO2 1 番ポート TMI2_1 TMO2_1 36 レジスタ名 DDR7 ビット名 DDR76 書込み値 0 PFR7 PFR76 0 EPFR33 TMI1E 0 ADCHE ADE6 0 PFR7 PFR73 1 EPFR33 TMO1E1, TMO1E0 01 ADCHE ADE3 0 DDRA DDRA6 0 PFRA PFRA6 0 EPFR33 TMI1E 1 ADCHE ADE22 0 DDR8 DDR81 0 PFR8 PFR81 0 ADCHE ADE9 1 PFRA PFRA3 1 EPFR33 TMO1E1, TMO1E0 10 ADCHE ADE19 0 DDR2 DDR20 0 PFR2 PFR20 0 DDR4 DDR40 0 PFR4 PFR40 0 DDR7 DDR77 0 PFR7 PFR77 0 EPFR34 TMI2E 0 ADCHE ADE7 0 PFR7 PFR74 1 EPFR34 TMO2E1, TMO2E0 01 ADCHE ADE4 0 DDRA DDRA7 0 PFRA PFRA7 0 EPFR34 TMI2E 1 ADCHE ADE23 0 DDR5 DDR57 0 PFR5 PFR57 0 DDRG DDRG7 0 PFRA PFRA4 1 EPFR34 TMO2E1, TMO2E0 10 ADCHE ADE20 0 DDR2 DDR21 0 PFR2 PFR21 0 DDR4 DDR41 0 PFR4 PFR41 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ ベースタイマ ベースタイマは , 0 ∼ 3 チャネルはチャネルごとに TIOA/TIOB 端子が 2 本ずつ , 6 ∼ 15 チャネルは TIOA/TIOB 端子が 1 本ずつ用意されています。 0 ∼ 5 チャネルはチャネルごとに使用する TIOA/TIOB 端子を 1 本ずつ選択できます。 ただし , 同じチャネルで使用する端子は , 同じポート番号に割り当てられている端子を 選択してください。 TIOA/TIOB 端子を入力に使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. ベースタイマの動作を許可 ( 詳細は ,「第 23 章 ベースタイマ」を参照してください。) TIOA 端子を出力で使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 4. PFR レジスタで周辺機能を設定 (PFR=1) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 0 TIOA0 0 番ポート TIOB0 1 番ポート TIOA0_1 TIOB0_1 CM71-10158-1 レジスタ名 ビット名 PFR0 PFR00 1 書込み値 EPFR20 TIOA0E1, TIOA0E0 01 EPFR6 SOUT0E2 ∼ SOUT0E0 010 以外 * PFR0 PFR01 0 DDR0 DDR01 0 EPFR20 TIOB0E 0 PFRG PFRG0 1 EPFR20 TIOA0E1, TIOA0E0 10 DDR2 DDR22 0 PFR2 PFR22 0 DDR4 DDR42 0 PFR4 PFR42 0 PFRG PFRG1 0 DDRG DDRG1 0 EPFR20 TIOB0E 1 DDR2 DDR23 0 PFR2 PFR23 0 DDR4 DDR43 0 PFR4 PFR43 0 FUJITSU SEMICONDUCTOR LIMITED 37 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 1 TIOA1 0 番ポート TIOB1 1 番ポート TIOA1_1 TIOB1_1 2 0 番ポート TIOA2 TIOB2 1 番ポート TIOA2_1 TIOB2_1 38 レジスタ名 ビット名 PFR0 PFR02 書込み値 入力時:0 出力時:1 DDR0 DDR02 0 ( 入力時のみ ) EPFR20 TIOA1E1, TIOA1E0 01 EPFR6 SCK0E2 ∼ SCK0E0 010 以外 * PFR0 PFR03 0 DDR0 DDR03 0 EPFR20 TIOB1E 0 PFRG PFRG2 入力時:0 出力時:1 DDRG DDRG2 0 ( 入力時のみ ) EPFR20 TIOA1E1, TIOA1E0 10 DDR6 DDR60 0 PFR6 PFR60 0 DDRH DDRH0 0 PFRH PFRH0 0 DDRG DDRG3 0 EPFR20 TIOB1E 1 DDR6 DDR61 0 PFR6 PFR61 0 DDRH DDRH1 0 PFR0 PFR04 1 EPFR21 TIOA2E1, TIOA2E0 01 EPFR7 SOUT1E1,SOUT1E0 01 以外 * PFR0 PFR05 0 DDR0 DDR05 0 EPFR21 TIOB2E 0 PFRG PFRG4 1 EPFR21 TIOA2E1, TIOA2E0 10 EPFR7 SOUT1E1,SOUT1E0 10 以外 * DDR5 DDR51 0 PFR5 PFR51 0 PFRG PFRG5 0 DDRG DDRG5 0 EPFR21 TIOB2E 1 DDR5 DDR52 0 PFR5 PFR52 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 3 TIOA3 0 番ポート TIOB3 1 番ポート TIOA3_1 TIOB3_1 レジスタ名 ビット名 PFR0 PFR06 書込み値 入力時:0 出力時:1 DDR0 DDR06 0 ( 入力時のみ ) EPFR21 TIOA3E1, TIOA3E0 01 EPFR7 SCK1E1,SCK1E0 01 以外 * PFR0 PFR07 0 DDR0 DDR07 0 EPFR21 TIOB3E 0 PFRG PFRG6 入力時:0 出力時:1 DDRG DDRG6 0 ( 入力時のみ ) EPFR21 TIOA3E1, TIOA3E0 10 EPFR7 SCK1E1,SCK1E0 10 以外 * DDR5 DDR53 0 PFR5 PFR53 0 DDRG DDRG7 0 EPFR21 TIOB3E 1 DDR5 DDR57 0 PFR5 PFR57 0 DDRA DDRA7 0 PFRA PFRA7 0 * : 設定禁止値を書込みしないでください。詳細は「第 14 章 I/O ポート」を参照して ください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 39 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ アップダウンカウンタ アップダウンカウンタは , AIN/BIN/ZIN 端子が 2 本用意されています。 使用する AIN/BIN/ZIN 端子を 1 本選択できます。ただし , 使用する端子は , 同じポート 番号に割り当てられている端子を選択してください。 AIN/BIN/ZIN 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. アップダウンカウンタの動作を許可 ( 詳細は ,「第 24 章 アップダウンカウンタ」を 参照してください。) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 1 0 番ポート AIN1 BIN1 ZIN1 1 番ポート AIN1_1 BIN1_1 ZIN1_1 40 レジスタ名 DDR1 ビット名 DDR14 書込み値 0 PFR1 PFR14 0 EPFR18 UDIN1E1, UDIN1E0 00 DDR3 DDR34 0 PFR3 PFR34 0 DDR1 DDR15 0 PFR1 PFR15 0 EPFR18 UDIN1E1, UDIN1E0 00 DDR3 DDR35 0 PFR3 PFR35 0 DDR1 DDR16 0 PFR1 PFR16 0 EPFR18 UDIN1E1, UDIN1E0 00 DDR3 DDR36 0 PFR3 PFR36 0 DDR5 DDR54 0 PFR5 PFR54 0 EPFR18 UDIN1E1, UDIN1E0 01 DDR3 DDR30 0 PFR3 PFR30 0 DDR5 DDR55 0 PFR5 PFR55 0 EPFR18 UDIN1E1, UDIN1E0 01 DDR3 DDR31 0 PFR3 PFR31 0 DDR5 DDR56 0 PFR5 PFR56 0 EPFR18 UDIN1E1, UDIN1E0 01 DDR3 DDR32 0 PFR3 PFR32 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ 10 ビット A/D コンバータ • AN 端子 端子名 AN0 ∼ AN7 レジスタ名 ADCHE ビット名 ADE0 ∼ ADE7 1 書込み値 AN8 ∼ AN11 * ADCHE ADE8 ∼ ADE11 1 * MB91F668(48pin) は , AN10 端子 , AN11 端子は存在しません。 ADCHE:A/D チャネルイネーブルレジスタ • ADTRG0 端子 10 ビット A/D コンバータの ADTRG0 端子は , 1 本用意されています。使用する端子を 1 本選択できます。 ADTRG0 端子を使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. 10 ビット A/D コンバータの動作を許可 ( 詳細は ,「第 25 章 10 ビット A/D コンバー タ」を参照してください。) 基本的な設定については , 下表を参照してください。 ポート番号 0 番ポート 端子名 ADTRG0 レジスタ名 DDR5 DDR55 ビット名 書込み値 0 PFR5 PFR55 0 EPFR19 ADTRG0E2 ∼ ADTRG0E0 000 DDR3 DDR31 0 PFR3 PFR31 0 ■ マルチファンクションシリアルインタフェース マルチファンクションシリアルインタフェースは , 1 チャネルに対し , 複数の SCK 端 子 , SIN 端子 , SOUT 端子が用意されています。 チャネルごとに使用する SCK/SIN/SOUT 端子を 1 本ずつ選択できます。ただし , 同じ チャネルで使用する端子は , 同じポート番号に割り当てられている端子を選択してく ださい。 SIN/SCK 端子を入力に使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 3. マルチファンクションシリアルインタフェースの動作を許可 ( 詳細は ,「第 26 章 マ ルチファンクションシリアル インタフェース」を参照してください。) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 41 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ SOUT/SCK 端子を出力で使用する場合は , 次の設定が必要です。 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. EPFR レジスタで使用する端子 ( ポート番号 ) を選択 4. PFR レジスタで周辺機能を設定 (PFR=1) 基本的な設定については , 下表を参照してください。 チャネル ポート番号 端子名 0 0 番ポート SCK0 (SCL0) SIN0 SOUT0 (SDA0) 1 番ポート SCK0_1 (SCL0_1) SIN0_1 レジスタ名 ビット名 PFR7 PFR77 SCK 入力時:0 SCK 出力時:1 DDR7 DDR77 0 (SCK 入力時の み) EPFR6 SCK0E2 ∼ SCK0E0 001 SMR0 SCKE 入力許可:0 出力許可:1 ADCHE ADE7 0 DDR7 DDR76 0 PFR7 PFR76 0 EPFR6 SIN0E1, SIN0E0 00 ADCHE ADE6 0 PFR7 PFR75 1 EPFR6 SOUT0E2 ∼ SOUT0E0 001 SMR0 SOE 1 ADCHE ADE5 0 PFR0 PFR02 SCK 入力時:0 SCK 出力時:1 DDR0 DDR02 0 (SCK 入力時 のみ ) EPFR6 SCK0E2 ∼ SCK0E0 010 SMR0 SCKE 入力許可:0 出力許可:1 DDR0 DDR01 0 PFR0 PFR01 0 EPFR6 SIN0E1, SIN0E0 01 PFR00 1 SOUT0_1 PFR0 (SDA0_1) EPFR6 SMR0 42 書込み値 SOUT0E2 ∼ SOUT0E0 010 SOE FUJITSU SEMICONDUCTOR LIMITED 1 CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 1 0 番ポート SCK1 (SCL1) SIN1 SOUT1 (SDA1) 1 番ポート SCK1_1 (SCL1_1) SIN1_1 レジスタ名 ビット名 PFR0 PFR06 SCK 入力時:0 SCK 出力時また は SCL 時:1 DDR0 DDR06 0 (SCK 入力時 のみ ) EPFR7 SCK1E1, SCK1E0 01 SMR1 SCKE 入力許可:0 出力許可:1 (SCK 時のみ ) DDR0 DDR05 0 PFR0 PFR05 0 EPFR7 SIN1E 0 PFR0 PFR04 1 EPFR7 SOUT1E1, SOUT1E0 01 SMR1 SOE 1 PFRG PFRG6 SCK 入力時:0 SCK 出力時また は SCL 時:1 DDRG DDRG6 0 (SCK 入力時 のみ ) EPFR7 SCK1E1, SCK1E0 10 SMR1 SCKE 入力許可:0 出力許可:1 (SCK 時のみ ) DDR5 DDR53 0 PFR5 PFR53 0 DDRG DDRG5 0 PFRG PFRG5 0 EPFR7 SIN1E 1 DDR5 DDR52 0 PFR5 PFR52 0 PFRG4 1 SOUT1E1, SOUT1E0 10 SMR1 SOE 1 DDR5 DDR51 0 PFR5 PFR51 0 SOUT1_1 PFRG (SDA1_1) EPFR7 CM71-10158-1 書込み値 FUJITSU SEMICONDUCTOR LIMITED 43 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 2 0 番ポート SCK2 (SCL2) SIN2 SOUT2 (SDA2) 1 番ポート SCK2_1 (SCL2_1) SIN2_1 レジスタ名 ビット名 PFR1 PFR12 SCK 入力時:0 SCK 出力時また は SCL 時:1 DDR1 DDR12 0 (SCK 入力時 のみ ) EPFR8 SCK2E1, SCK2E0 01 SMR2 SCKE 入力許可:0 出力許可:1 (SCK 時のみ ) DDR1 DDR11 0 PFR1 PFR11 0 EPFR8 SIN2E 0 PFR1 PFR10 1 EPFR8 SOUT2E1, SOUT2E0 01 SMR2 SOE 1 PFRH PFRH2 SCK 入力時:0 SCK 出力時また は SCL 時:1 DDRH DDRH2 0 (SCK 入力時 のみ ) EPFR8 SCK2E1, SCK2E0 10 SMR2 SCKE 入力許可:0 出力許可:1 (SCK 時のみ ) DDRH DDRH1 0 EPFR8 SIN2E 1 DDR6 DDR61 0 PFR6 PFR61 0 DDRG DDRG3 0 PFRH0 1 SOUT2_1 PFRH (SDA2_1) EPFR8 44 書込み値 SOUT2E1, SOUT2E0 10 SMR2 SOE 1 DDR6 DDR60 0 PFR6 PFR60 0 DDRG DDRG2 0 PFRG PFRG2 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ チャネル ポート番号 端子名 6 0 番ポート SCK6 (SCL6) SIN6 SOUT6 (SDA6) レジスタ名 ビット名 PFR3 PFR32 書込み値 SCK 入力時:0 SCK 出力時また は SCL 時:1 DDR3 DDR32 0(SCK 入力時 のみ ) EPFR12 SCK6E1, SCK6E0 01 SMR6 SCKE 入力許可:0 出力許可:1 (SCK 時のみ ) DDR5 DDR56 0 PFR5 PFR56 0 DDR3 DDR31 0 PFR3 PFR31 0 EPFR12 SIN6E 0 DDR5 DDR55 0 PFR5 PFR55 0 PFR3 PFR30 1 EPFR12 SOUT6E1, SOUT6E0 01 SMR6 SOE 1 DDR5 DDR54 0 PFR5 PFR54 0 SMR:シリアルモードレジスタ < 注意事項 > 動作モードによって , 有効となる端子が変わります。詳細は「第 26 章 マルチファンク ションシリアル インタフェース」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 45 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ ■ 外部バスインタフェース 外部バスインタフェース端子を割り当てる場合は , その端子を兼用しているほかの端 子設定をすべて無効にします。 • A 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。) 4. PFR レジスタで周辺機能を設定 (PFR=1) 端子名 A00 A01 A02 A03 A04 46 レジスタ名 PFR2 PFR20 ビット名 1 書込み値 DDR4 DDR40 0 PFR4 PFR40 0 DDRA DDRA3 0 PFRA PFRA3 0 ADCHE ADE19 1 EXBS MSS 0 PFR2 PFR21 1 DDR4 DDR41 0 PFR4 PFR41 0 DDRA DDRA4 0 PFRA PFRA4 0 ADCHE ADE20 1 EXBS MSS 0 PFR2 PFR22 1 DDR4 DDR42 0 PFR4 PFR42 0 DDRG DDRG0 0 PFRG PFRG0 0 EXBS MSS 0 PFR2 PFR23 1 DDR4 DDR43 0 PFR4 PFR43 0 DDRG DDRG1 0 PFRG PFRG1 0 EXBS MSS 0 PFR2 PFR24 1 EPFR0 OUT0E2 ∼ OUT0E0 001 以外 * DDR4 DDR44 0 PFR4 PFR44 0 EXBS MSS 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ 端子名 A05 A06 A07 A16 A17 A18 A19 A20 CM71-10158-1 レジスタ名 PFR2 PFR25 ビット名 1 書込み値 EPFR0 OUT1E2 ∼ OUT1E0 001 以外 * DDR4 DDR45 0 PFR4 PFR45 0 EXBS MSS 0 PFR2 PFR26 1 EPFR1 OUT2E2 ∼ OUT2E0 001 以外 * DDR4 DDR46 0 PFR4 PFR46 0 EXBS MSS 0 PFR2 PFR27 1 EPFR1 OUT3E2 ∼ OUT3E0 001 以外 * DDR4 DDR47 0 PFR4 PFR47 0 EXBS MSS 0 PFR4 PFR40 1 DDR2 DDR20 0 PFR2 PFR20 0 DDRA DDRA3 0 PFRA PFRA3 0 ADCHE ADE19 1 EXBS MSS 1 PFR4 PFR41 1 DDR2 DDR21 0 PFR2 PFR21 0 DDRA DDRA4 0 PFRA PFRA4 0 ADCHE ADE20 1 EXBS MSS 1 PFR4 PFR42 1 DDR2 DDR22 0 PFR2 PFR22 0 DDRG DDRG0 0 PFRG PFRG0 0 EXBS MSS 1 PFR4 PFR43 1 DDR2 DDR23 0 PFR2 PFR23 0 DDRG DDRG1 0 PFRG PFRG1 0 EXBS MSS 1 PFR4 PFR44 1 DDR2 DDR24 0 PFR2 PFR24 0 EXBS MSS 1 FUJITSU SEMICONDUCTOR LIMITED 47 第 2 章 MB91665 シリーズの端子 2.4 端子名 A21 A22 A23 MB91665 シリーズ レジスタ名 PFR4 PFR45 ビット名 1 書込み値 DDR2 DDR25 0 PFR2 PFR25 0 EXBS MSS 1 PFR4 PFR46 1 DDR2 DDR26 0 PFR2 PFR26 0 EXBS MSS 1 PFR4 PFR47 1 DDR2 DDR27 0 PFR2 PFR27 0 EXBS MSS 1 *: 設定禁止値を書込みしないでください。詳細は「第 14 章 I/O ポート」を参照して ください。 • AS 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。 4. PFR レジスタで周辺機能を設定 (PFR=1) 端子名 AS • レジスタ名 PFR5 ビット名 書込み値 PFR54 1 DDR3 DDR30 0 PFR3 PFR30 0 CS 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。 4. PFR レジスタで周辺機能を設定 (PFR=1) 48 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ 端子名 CS0 CS1 CS2 CS3 レジスタ名 PFR5 PFR50 ビット名 1 書込み値 DDRA DDRA2 0 PFRA PFRA2 0 ADCHE ADE18 1 PFR5 PFR51 1 DDRG DDRG4 0 PFRG PFRG4 0 PFR5 PFR52 1 EPFR16 bit-2:1 01 以外 * DDRG DDRG5 0 PFRG PFRG5 0 PFR5 PFR53 1 DDRG DDRG6 0 PFRG PFRG6 0 *: 設定禁止値を書込みしないでください。詳細は「第 14 章 I/O ポート」を参照して ください。 • D 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。 4. PFR レジスタで周辺機能を設定 (PFR=1) 端子名 D00 CM71-10158-1 レジスタ名 PFR0 ビット名 書込み値 PFR00 1 EPFR6 SOUT0E2 ∼ SOUT0E0 010 以外 * EPFR20 TIOA0E1, TIOA0E0 01 以外 * D01 PFR0 PFR01 1 D02 PFR0 PFR02 1 EPFR6 SCK0E2 ∼ SCK0E0 010 以外 * EPFR20 TIOA1E1, TIOA1E0 01 以外 * D03 PFR0 PFR03 1 D04 PFR0 PFR04 1 EPFR7 SOUT1E1, SOUT1E0 01 以外 * EPFR21 TIOA2E1, TIOA2E0 01 以外 * D05 PFR0 PFR05 1 D06 PFR0 PFR06 1 EPFR7 SCK1E1, SCK1E0 01 以外 * EPFR21 TIOA3E1, TIOA3E0 01 以外 * D07 PFR0 PFR07 1 D08 PFR1 PFR10 1 EPFR8 SOUT2E1, SOUT2E0 01 以外 * FUJITSU SEMICONDUCTOR LIMITED 49 第 2 章 MB91665 シリーズの端子 2.4 端子名 MB91665 シリーズ D09 レジスタ名 PFR1 PFR11 1 D10 PFR1 PFR12 1 EPFR8 SCK2E1, SCK2E0 01 以外 * D11 PFR1 PFR13 1 D12 PFR1 PFR14 1 DDR3 DDR34 0 PFR3 PFR34 0 PFR1 PFR15 1 D13 D14 D15 ビット名 書込み値 DDR3 DDR35 0 PFR3 PFR35 0 PFR1 PFR16 1 DDR3 DDR36 0 PFR3 PFR36 0 PFR1 PFR17 1 DDR3 DDR37 0 PFR3 PFR37 0 *: 設定禁止値を書込みしないでください。詳細は「第 14 章 I/O ポート」を参照して ください。 • RD 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。) 3. PFR レジスタで周辺機能を設定 (PFR=1) 端子名 RD • レジスタ名 PFR5 PFR55 ビット名 1 書込み値 DDR3 DDR31 0 PFR3 PFR31 0 RDY 端子 1. DDR レジスタでポート入力を設定 (DDR=0) 2. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。) 端子名 RDY 50 レジスタ名 DDR6 ビット名 書込み値 DDR60 0 DDRG DDRG2 0 PFRG PFRG2 0 DDRH DDRH0 0 PFRH PFRH0 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 2 章 MB91665 シリーズの端子 2.4 MB91665 シリーズ • SYSCLK 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。) 3. PFR レジスタで周辺機能を設定 (PFR=1) 端子名 SYSCLK • レジスタ名 PFR6 ビット名 書込み値 PFR61 1 DDRG DDRG3 0 DDRH DDRH1 0 WR0, WR1 端子 1. DDR レジスタおよび PFR レジスタでポート入力を設定 (DDR=0, PFR=0) 2. EPFR レジスタでこの端子と兼用している周辺機能の出力を禁止 ( 兼用端子については , 端子配列図を参照してください。) 3. 外部バスインタフェースの設定 ( 詳細は , 「第 13 章 外部バス インタフェース」を 参照してください。) 4. PFR レジスタで周辺機能を設定 (PFR=1) 端子名 WR0 WR1 レジスタ名 PFR5 ビット名 書込み値 PFR56 1 DDR3 DDR32 0 PFR3 PFR32 0 PFR5 PFR57 1 DDRG DDRG7 0 DDRA DDRA7 0 PFRA PFRA7 0 ADCHE ADE23 1 < 注意事項 > 外部バスにアクセスする際は , 上記のレジスタ設定がすべて完了してからアクセスしてく ださい。 設定完了前にアクセスを行うと意図しない波形が出力される場合があります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 51 第 2 章 MB91665 シリーズの端子 2.4 52 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 53 第 3 章 CPU 3.1 3.1 MB91665 シリーズ メモリ空間 FR80 ファミリ CPU の論理アドレスは 4G バイト (232 番地 ) あり , CPU はリニアにアクセス を行います。 ■ ダイレクトアドレッシング領域 アドレス空間の0000 0000H∼0000 03FFHをダイレクトアドレッシング領域とよびます。 この領域は , 命令中で直接オペランドを指定できます。 アクセスするデータのサイズによって , ダイレクトアドレッシング領域は次のように なります。 54 • バイトデータアクセス:0000 0000H ∼ 0000 00FFH • ハーフワードデータアクセス:0000 0000H ∼ 0000 01FFH • ワードデータアクセス:0000 0000H ∼ 0000 03FFH FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.1 MB91665 シリーズ ■ メモリマップ MB91665 シリーズのメモリマップを図 3.1-1 に示します。 図 3.1-1 メモリマップ MB91F668/F669 Flash 128 K バイト RAM16 K バイト 0000 0000H I/O 領域 ( ダイレクト アドレッシング ) 0000 0400H I/O 領域 0001 0000H 予約 0003 C000H 内蔵 RAM 領域 16K バイト 0004 0000H 予約 000E 0000H FLASH 領域 128 K バイト 0010 0000H 予約 0024 0000H 外部バス領域 FFFF FFFFH < 注意事項 > • • CM71-10158-1 フラッシュメモリの小セクタ領域については , 「第 34 章 フラッシュメモリ」を参照 してください。 小セクタ領域は , フラッシュメモリ品のみ関係します。 予約領域にはアクセスしないでください。 FUJITSU SEMICONDUCTOR LIMITED 55 第 3 章 CPU 3.2 3.2 MB91665 シリーズ 内部アーキテクチャの特徴 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 つのロード命令を先行して発行可能 56 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.3 MB91665 シリーズ 3.3 動作モード 本シリーズの動作モードについて説明します。 本シリーズは以下の動作モードを持ち , デバイス起動時に動作モードを選択できます。 • ユーザシングルチップモード • シリアル書込みモード 本シリーズの動作モードを表 3.3-1 に示します。 表 3.3-1 動作モード MD 端子 MD1 0 CM71-10158-1 制御端子 MD0 動作モード P75 0 X ユーザシングルチップモード 1 1 シリアル書込みモード FUJITSU SEMICONDUCTOR LIMITED 57 第 3 章 CPU 3.4 MB91665 シリーズ パイプライン 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 ステージが延長さ れます。 ただし , ロードで使用するレジスタを , 以降の命令で使用しない場合はそのまま命令を 実行します。 58 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.4 MB91665 シリーズ ( 例 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 59 第 3 章 CPU 3.5 3.5 MB91665 シリーズ 命令概要 FR80 ファミリ CPU は , 一般的な RISC の命令体系に加え , 組み込み用途に最適化された論 理演算とビット操作命令およびダイレクトアドレッシング命令をサポートしています。 各命令は 16 ビット長 ( 一部命令は 32, 48 ビット長 ) ですので , 優れたメモリ使用効率を持ち ます。 命令セットは次の機能グループに分けることができます。 3.5.1 • 算術演算 • ロードとストア • 分岐 • 論理演算とビット操作 • ダイレクトアドレッシング • ビットサーチ • その他 算術演算 標準の算術演算命令 ( 加算 , 減算 , 比較 ) およびシフト命令 ( 論理シフト , 算術演算シフ ト ) があります。加算と減算については , 多ワード長演算 (32 ビット以上のデータの演 算 ) で使用するキャリ付演算や, アドレス計算に便利なフラグ値を変化させない演算も 可能です。 さらに , 32 ビット× 32 ビット , 16 ビット× 16 ビットの乗算命令と , 32 ビット÷ 32 ビットのステップ除算命令を持ちます。 また , レジスタに即値をセットする即値転送命令や , レジスタ間転送命令も備えていま す。 算術演算命令はすべて CPU 内の汎用レジスタおよび乗除算レジスタを用いて演算を行 います。 3.5.2 ロードとストア ロードとストアは外部メモリに対して読出しと書込みを行う命令です。また , チップ内 の周辺機能の読出しと書込みにも使用されます。 ロードとストアはバイト , ハーフワード , ワードの 3 種類のアクセス長を持ちます。ま た一般的なレジスタ間接のメモリアドレッシングに加え , 一部の命令についてはディ スプレースメント付レジスタ間接やレジスタインクリメント・デクリメント付レジス タ間接のメモリアドレッシングも可能です。 60 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.5 MB91665 シリーズ 3.5.3 分岐 分岐 , コール , 割込みおよび復帰の命令です。分岐命令は , 遅延スロットを持つものと 持たないものがあり , 用途に応じて最適化を行うことができます。分岐命令の詳細につ いては , 「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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 61 第 3 章 CPU 3.6 3.6 MB91665 シリーズ 基本プログラミングモデル 基本プログラミングモデルを図 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 乗除算結果 レジスタ 62 (MDH) XXXX XXXXH (MDL) XXXX XXXXH FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.7 MB91665 シリーズ 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-10158-1 • R13:AC ( 仮想アキュムレータ ) • R14:FP ( フレームポインタ ) • R15:SP ( スタックポインタ ) FUJITSU SEMICONDUCTOR LIMITED 63 第 3 章 CPU 3.7 3.7.2 MB91665 シリーズ プログラムステータスレジスタ (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)」を参照してください。 64 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.7 MB91665 シリーズ ■ コンディションコードレジスタ (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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 65 第 3 章 CPU 3.7 MB91665 シリーズ [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 キャリ , またはボローが発生しました。 リセットによる初期状態は不定です。 66 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.7 MB91665 シリーズ ■ システムコンディションレジスタ (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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 67 第 3 章 CPU 3.7 MB91665 シリーズ ■ 割込みレベルマスクレジスタ (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 の倍数のアドレスに置く必要があります。 リセットによる初期値は不定で , リセットベクタフェッチによりプログラム開始アド レスが設定されます。 68 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.7 MB91665 シリーズ テーブルベースレジスタ (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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 69 第 3 章 CPU 3.7 MB91665 シリーズ ユーザスタックポインタ (USP) 3.7.7 コンディションコードレジスタ (CCR) の S フラグが "1" のとき , R15 として機能します。 ユーザスタックポインタ (USP) を明示的に指定することも可能です。 ユーザスタックポインタ (USP) のビット構成を図 3.7-10 に示します。 図 3.7-10 ユーザスタックポインタ (USP) のビット構成 bit 31 0 初期値 XXXX XXXXH リセットによる初期値は不定です。 RETI 命令で使用することはできません。 70 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.7 MB91665 シリーズ 乗除算レジスタ (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-10158-1 • MDH:剰余 • MDL:商 FUJITSU SEMICONDUCTOR LIMITED 71 第 3 章 CPU 3.8 3.8 MB91665 シリーズ データ構造 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 0 MSB 3.8.2 LSB バイトオーダリング FR80ファミリCPUでは, バイトオーダリングとして, ビッグエンディアンを採用しています。 バイトオーダリングを図 3.8-2 に示します。 図 3.8-2 バイトオーダリング MSB LSB bit31 10101010 bit23 bit15 11001100 bit7 11111111 bit0 00010001 bit 7 72 0 n 番地 10101010 (n+1) 番地 11001100 (n+2) 番地 11111111 (n+3) 番地 00010001 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.8 MB91665 シリーズ 3.8.3 ワードアライメント ■ プログラムアクセス FR80 ファミリ CPU のプログラムは , 2 の倍数のアドレスに配置する必要があります。 プログラムカウンタ (PC) の bit0 は , 命令の実行に伴うプログラムカウンタ (PC) の更新 時に , "0" に設定されます。分岐先アドレスとして奇数番地を指定して , bit0 を "1" にす ることは禁止です。 命令は 2 の倍数のアドレスに置かなくてはなりません。 奇数アドレス例外はありません。 ■ データアクセス FR80 ファミリでは , データアクセスを行う際 , アクセスサイズにより以下のとおりの アドレスとしてください。( ハードでアラインメントが行われません。) ワードアクセス:アドレスは , 4 の倍数 ( 最下位 2 ビットは "00") ハーフワードアクセス:アドレスは , 2 の倍数 ( 最下位 ビットは "0") バイトアクセス:── ワードおよびハーフワードデータアクセス時に , 実効アドレスの計算結果に対して上 記のアドレスとしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 73 第 3 章 CPU 3.9 MB91665 シリーズ アドレッシング 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 用の領域です。この領域は , ダイレクトアドレッシングによ り , 命令中で直接オペランドアドレスを指定することができます。 ダイレクトアドレス指定可能なアドレス領域の大きさは , データ長ごとに異なります。 74 • バイトデータ ( 8 ビット ) …… 0 ∼ 0x0FF • ハーフワードデータ (16 ビット ) …… 0 ∼ 0x1FF • ワードデータ (32 ビット ) …… 0 ∼ 0x3FF FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.9 MB91665 シリーズ 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 75 第 3 章 CPU 3.10 MB91665 シリーズ 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) の更新動作だけです。その他の動作 ( レジスタの更新・参照など ) はあくまで記述された順番で実行されます。 76 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.10 MB91665 シリーズ 以下に , 具体的な説明をします。 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 77 第 3 章 CPU 3.10 MB91665 シリーズ ■ 割込み 遅延スロットを持つ分岐命令の実行と遅延スロットの間では , 割込みを受理しません。 ■ 未定義命令例外 BNO: D 命令以外の遅延スロットに未定義命令があった場合 , 未定義命令例外は発生し ません。このとき , 未定義命令は NOP 命令として動作します。 < 注意事項 > BNO: D 命令の遅延スロットに未定義命令を配置しないでください。 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 を明記した遅延スロッ ト付き分岐命令に比べ , 命令コード効率を上げることができます。 遅延スロットに有効な命令を設置できるときは遅延スロット付きの動作を選択し , そ うでないときは遅延スロットなしの動作を選択することで , 実行速度とコード効率を 両立させることが可能となります。 78 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.11 MB91665 シリーズ 3.11 EIT ( 例外・割込み・トラップ ) EIT とは , 現プログラム実行時にイベントの発生により , そのプログラムの実行を中断しほか のプログラムを実行することを指し , 例外 (Exception), 割込み (Interrupt), トラップ (Trap) の 総称です。 例外とは実行中のコンテキストに関連して発生する事象です。例外を起こした命令から再実 行します。 割込みとは実行中のコンテキストに無関係に発生する事象です。イベント要因は , ハードウェ アです。 トラップとは実行中のコンテキストに関連して発生する事象です。システムコールのように プログラムで指示するものがあります。トラップを起こした命令の次の命令から再実行しま す。 ■ 特徴 3.11.1 • 多重 EIT をサポート • 割込みにレベルマスク機能 (15 レベルをユーザが使用可能 ) • トラップ命令 (INT/INTE) • エミュレータ起動用 EIT ( ハードウェア / ソフトウェア ) EIT 要因 EIT 要因として , 次のものがあります。 3.11.2 • リセット • ユーザ割込み ( 周辺機能 , 外部割込み ) • 遅延割込み • 未定義命令例外 • トラップ命令 (INT) • トラップ命令 (INTE) • ステップトレーストラップ EIT からの復帰 RETI 命令により , 各 EIT より復帰します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 79 第 3 章 CPU 3.11 3.11.3 MB91665 シリーズ 割込みレベル 割込みレベルは 0 ∼ 31 で , 5 ビットで管理されます。 各レベルの割り当てを表 3.11-1 に示します。 表 3.11-1 割込みレベル割り当て表 レベル 割込みの種類 2 進数 10 進数 00000 0 ( システム予約 ) ・・・ ・・・ ・・・ ・・・ 00011 ・・・ 3 ・・・ 00100 4 INTE 命令 ステップトレースト ラップ 00101 5 ( システム予約 ) ・・・ ・・・ ・・・ ・・・ 01100 ・・・ 14 ・・・ 01101 15 ( システム予約 ) 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 80 説明 0 INT 命令実行時 , 自動的に "0" にクリアされます。 ( ただし , スタックに退避される値は , クリアされる前の値です。) 1 ユーザ割込み要求のマスク処理は , 割込みレベルマスクレジスタ (ILM) の保持 する値により制御されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.11 MB91665 シリーズ < 注意事項 > I フラグの値を変更したとき , 割込み要求の受付けは I フラグを書き換えた命令の次の次の 命令から反映されます。 よって , 割込みを正しく動作させるために I フラグを変更する命令の後には NOP を置い てください。 • 割込み許可 (I フラグ =1) にするとき 命令実行 ↓ • I フラグ 割込み ORCCR #set_iflag 0 禁止 NOP 1 禁止 命令 A 1 許可 ↑ ここから割込み許可 割込み禁止 (I フラグ =0) にするとき 命令実行 ↓ I フラグ 割込み ANDCCR #clear_iflag 1 許可 NOP 0 許可 命令 A 0 禁止 ↑ ここから割込み禁止 I フラグを "0" にする命令を実行しているときに割込みを受け付けると , I フラグ , ILM は変更するのに命令実行から 1cycle 遅れがあるため , 割込み処理ルーチンに飛んでい るにもかかわらず I フラグが "0" となります。 この際 , 多重割込みが発生しても I フラグは "0" のため受け付けられず , 多重割込みの 処理が実行されません。 なお , I フラグ自体は命令実行時に更新されます。そのため , スタックには更新後の I フラグの値が退避され , スタックの値が復帰された際には PS レジスタには更新後の I フラグの値が反映されます。割込みルーチン内で新たな割込みを受け付けたい場合は , 割込みルーチンの先頭で I フラグを "1" とするソフトウェア処理を行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 81 第 3 章 CPU 3.11 MB91665 シリーズ 割込みレベルマスクレジスタ (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 割込み受付け SETILM #set_ILM_B A A NOP B A 命令 C B B ↑ 命令 D B B ここから ILM=B が反映 割込みに対するレベルマスク 割込み要求が発生したときは , 割込み要因の持つ割込みレベルが割込みレベルマスク レジスタ (ILM) の保持するレベルマスク値と比較されます。そして , 次の条件が成立し たときはマスクされ , 要求は受理されません。 要因の持つ割込みレベル ≧ レベルマスク値 82 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.11 MB91665 シリーズ 割込み制御レジスタ (ICR) 3.11.7 「第 10 章 割込みコントローラ」を参照してください。 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 83 第 3 章 CPU 3.11 3.11.10 MB91665 シリーズ テーブルベースレジスタ (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 FFFFH の領域がリセットによるベクタテーブルの初期領域です。 ベクタの一部には特殊な機能が割り当てられています。 84 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.11 MB91665 シリーズ 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 ステップトレースト これより優先度の低い要因すべて ラップ 4 EIT 要因を受理した後のほかの要因に対するマスクの処理を加味すると , 同時に発生し た EIT 要因の各ハンドラの実行順序は , 次のようになります。 実行順序を表 3.11-3 に示します。 表 3.11-3 EIT ハンドラの実行順序 CM71-10158-1 受理の優先順位 1 要因 リセット 2 未定義命令以外 3 INTE 命令 4 ステップトレーストラップ 5 INT 命令 6 ユーザ割込み FUJITSU SEMICONDUCTOR LIMITED 85 第 3 章 CPU 3.11 MB91665 シリーズ 多重 EIT 処理について , 図 3.11-4 に示します。 図 3.11-4 多重 EIT 処理 メインルーチン INTE 命令の ハンドラ INT 命令のハンドラ 優先度 最初に実行 ( 高 ) INT 命令実行 ( 低 ) INTE 命令実行 3.11.13 動作 次の説明で , 転送元の「PC」とは各 EIT 要因を検出した命令のアドレスを示すものと します。 また , 「次の命令のアドレス」とは , EIT を検出した命令が • LDI:32 のとき:PC + 6 • LDI:20 のとき:PC + 4 • その他の命令のとき:PC + 2 を意味します。 ■ ユーザ割込みの動作 ユーザ割込み要求が発生すると , 次の順序で要求受理の可否が判定されます。 ユーザ割込みとは , 各種周辺機能から要求が発生する割込みで , 割込み要求ごとに割込 みレベルが設定されています。 ● 割込み要求受理の可否判定 1. 同時に発生した要求の割込みレベルを比較し, 最も強いレベル (最も小さい数値) を 保持するものが選択されます。 対応する割込み制御レジスタ (ICR) の保持する値が比較に使用されます。 2. 同じレベルを持つ割込み要求が複数発生しているときは , 最も若い割込み番号を持 つ割込み要求が選択されます。 3. 割込みレベル≧レベルマスク値のとき , 割込み要求はマスクされ受理されません。 86 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.11 MB91665 シリーズ 割込みレベル<レベルマスク値のとき , 4 へ。 4. 選択された割込み要求がマスク可能割込みであるとき , I フラグが "0" ならば割込み 要求はマスクされ , 受理されません。I フラグが "1" ならば割込み要求受理へ。 上記の条件が成立したとき , 命令処理の切れ目で割込み要求は受理されます。 I フラグや割込みレベルマスクレジスタ (ILM) を変更する命令を実行した場合 , 2 命令 後から新しい受付け条件での EIT 制御を行います。 EIT 要求検出時にユーザ割込み要求が受理されると , 受理された割込み要求に対応した 割込み番号を使用して , 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 処理シーケンス に遷移します。 3.11.14 INT 命令の動作 INT #u8 命令はソフトウェアでトラップを発生する命令です。 オペランドで指定された割込み番号のトラップを発生します。 ● 動作 CM71-10158-1 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 FUJITSU SEMICONDUCTOR LIMITED 87 第 3 章 CPU 3.11 3.11.15 MB91665 シリーズ 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 がユーザモードのとき。 以上の条件が成立すると , 命令動作の切れ目でブレークします。 ● 動作 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 のときは , ユーザ割込みは禁止状態となります。 88 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 3 章 CPU 3.11 MB91665 シリーズ 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) として退避されるのは , 未定義命令例外を検出した命令自身 のアドレスです。 3.11.18 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 命令として動作します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 89 第 3 章 CPU 3.11 90 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 本デバイスのすべての内部クロックの元となる , ソースクロック (SRCCLK) を生成するクロック生 成部について説明します。 4.1 概要 4.2 構成 4.3 端子 4.4 レジスタ 4.5 動作説明 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 91 第 4 章 クロック生成部 4.1 4.1 MB91665 シリーズ 概要 ソースクロック (SRCCLK) とは , 本デバイスを動作させるために使用する内部クロックの生 成元になるクロックです。 ソースクロック (SRCCLK) となるクロックの生成と発振制御 , またどのクロックをソースク ロック (SRCCLK) として選択するか , その方法を説明します。 ■ 概要 本デバイスは各種内部クロックを利用して動作します。各種内部クロックは , ソースク ロック (SRCCLK) を分周して生成します。 ソースクロック (SRCCLK) は , 次の 3 つのクロックから選択できます。 • メインクロック (MCLK) • PLL クロック (PLLCLK) • サブクロック (SBCLK) クロック生成部では次の制御を行います。 • • • メインクロック (MCLK) の生成 - メインクロック (MCLK) の発振を制御します。 - メインクロック (MCLK) の発振安定待ち時間を設定します。 - メインタイマの制御やメインタイマ割込み要求の発生を制御します。 サブクロック (SBCLK) の生成 - サブクロック (SBCLK) の発振を制御します。 - サブクロック (SBCLK) の発振安定待ち時間を設定します。 - サブタイマの制御やサブタイマ割込み要求の発生を制御します。 PLL クロック (PLLCLK) の生成 - PLL クロック (PLLCLK) の発振を制御します。 - PLL クロック (PLLCLK) の発振安定待ち時間を設定します。 - PLL 逓倍率 (PLL クロック (PLLCLK) を生成するためのメインクロック (MCLK) の逓倍率 ) を設定します。 メインクロック (MCLK) の逓倍のみです。サブクロック (SBCLK) の逓倍はでき ません。 • ソースクロック (SRCCLK) の選択 3 つのクロックの中から , ソースクロック (SRCCLK) として使用するクロックを選 択します。 92 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.2 MB91665 シリーズ 4.2 構成 クロック生成部は , クロック生成部とソースクロック (SRCCLK) 選択部で構成されていま す。 クロック生成部 4.2.1 3 つのクロック生成部があります。クロック生成部で作成したクロックは , ソースクロック (SRCCLK) として選択できます。 ■ メインクロック (MCLK) 生成部 X0 端子 , X1 端子 ( メイン発振子 ) からの入力を使用してメインクロック (MCLK) を生 成します。 メインクロック (MCLK) は , PLL クロック (PLLCLK) の生成にも使用します。 メインクロック (MCLK) 生成部のブロックダイヤグラムを図 4.2-1 に示します。 図 4.2-1 メインクロック (MCLK) 生成部のブロックダイヤグラム メインクロック (MCLK) 生成部 MTE MTC MOSW MTS MTIE メインタイマ 割込み要求 メイン タイマ MTIF X1 メインクロック レディフラグ MCRDY メインクロック MCEN X0 • (MCLK) メインタイマ メインクロック (MCLK) で動作するタイマです。詳細は「第 6 章 メインタイマ」を 参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 93 第 4 章 クロック生成部 4.2 MB91665 シリーズ ■ PLL クロック (PLLCLK) 生成部 メインクロック (MCLK) を逓倍して PLL クロック (PLLCLK) を生成します。 PLL クロック (PLLCLK) 生成部のブロックダイヤグラムを図 4.2-2 に示します。 図 4.2-2 PLL クロック (PLLCLK) 生成部のブロックダイヤグラム USB クロック 生成部へ PLL クロック (PLLCLK) 生成部 メインクロック (MCLK) PLL 入力 クロック 分周器 (1 ∼ 16 分周 ) PLL 入力 クロック PLL PLL フィードバック クロック PLL フィード バッククロック 分周器 (1 ∼ 16 逓倍 ) PDS PTS PLL マクロ 発振 クロック PCEN PLL マクロ 発振クロック 分周器 (1 ∼ 4 分周 ) • (PLLCLK) ODS PMS PCRDY メインタイマ PLL クロック PLL クロック レディフラグ PLL クロック逓倍回路です。 • PLL 入力クロック分周器 メインクロック (MCLK) を分周して PLL 入力クロックを生成します。 • PLL フィードバッククロック分周器 PLL マクロ発振クロックを分周して生成した PLL クロック (PLLCLK) をさらに分周 して , PLL フィードバッククロックを生成します。 • PLL マクロ発振クロック分周器 PLL マクロ発振クロックを分周して , PLL クロック (PLLCLK) を生成します。 94 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.2 MB91665 シリーズ ■ サブクロック (SBCLK) 生成部 X0A 端子 , X1A 端子 ( サブ発振子 ) からの入力を使用してサブクロック (SBCLK) を生 成します。 発振出力がそのままサブクロック (SBCLK) となります。 サブクロック (SBCLK) 生成部のブロックダイヤグラムを図 4.2-3 に示します。 図 4.2-3 サブクロック (SBCLK) 生成部のブロックダイヤグラム サブクロック (SBCLK) 生成部 STE STC SOSW STS STIE サブタイマ 割込み サブ タイマ 要求 STIF X1A サブクロック レディフラグ SCRDY サブクロック SCEN X0A • (SBCLK) サブタイマ サブクロック (SBCLK) で動作するタイマです。詳細は「第 7 章 サブタイマ」を参 照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 95 第 4 章 クロック生成部 4.2 4.2.2 MB91665 シリーズ ソースクロック (SRCCLK) 選択部 ソースクロック (SRCCLK) の選択について説明します。ソースクロック (SRCCLK) は , 次の 3 つのクロックソースの中から選択します。 • メインクロック (MCLK) の 2 分周 • PLL クロック (PLLCLK) • サブクロック (SBCLK) イニシャライズリセット (INIT) が発生した場合 , ソースクロック (SRCCLK) の設定は 初期化されて , ソースクロック (SRCCLK) はメインクロック (MCLK) の 2 分周になり ます。 プログラムの動作開始後は , クロックソース設定レジスタ (CSELR) の設定によって , 任意のソースクロック (SRCCLK) に変更してください。 ■ ソースクロック (SRCCLK) 選択部のブロックダイヤグラム ソースクロック (SRCCLK) 選択部のブロックダイヤグラムを図 4.2-4 に示します。 図 4.2-4 ソースクロック (SRCCLK) 選択部のブロックダイヤグラム ソースクロック (SRCCLK) 選択部 メインクロック (MCLK) メインクロック分周器 2 分周 ソースクロック サブクロック (SBCLK) SRCCLK PLL クロック (PLLCLK) CKS [0] • CKS [1] メインクロック分周器 (2 分周 ) メインクロック (MCLK) は , 2 分周されてからソースクロック (SRCCLK) になりま す。 • CKS1, CKS0 ビット クロックソース設定レジスタ (CSELR) のソースクロック (SRCCLK) 選択ビットで す。 96 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.3 MB91665 シリーズ 4.3 端子 クロック生成部で使用する端子について説明します。 ■ 概要 • X0, X1 端子 メインクロック (MCLK) の生成に使用する端子です。 • X0A, X1A 端子 サブクロック (SBCLK) の生成に使用する端子です。 外部に発振子を接続します。 この端子は兼用端子です。サブクロック (SBCLK) の X0A, X1A 端子として使用する には , 「2.4 端子の設定方法」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 97 第 4 章 クロック生成部 4.4 4.4 MB91665 シリーズ レジスタ クロック生成部で使用するレジスタの構成と機能について説明します。 ■ クロック生成部のレジスタ一覧 クロック生成部のレジスタ一覧を表 4.4-1 に示します。 表 4.4-1 クロック生成部のレジスタ一覧 98 レジスタ略称 CSELR レジスタ名 クロックソース設定レジスタ 参照先 4.4.1 CMONR クロックソース監視レジスタ 4.4.2 CSTBR 発振安定待ち設定レジスタ 4.4.3 PLLCR PLL 設定レジスタ 4.4.4 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ クロックソース設定レジスタ (CSELR) 4.4.1 クロックソースの制御とソースクロック (SRCCLK) を選択するレジスタです。 クロックソース設定レジスタ (CSELR) のビット構成を図 4.4-1 に示します。 図 4.4-1 クロックソース設定レジスタ (CSELR) のビット構成 bit 7 6 5 SCEN PCEN MCEN R/W R/W R/W 予約 R/W 初期値 (INIT 時 ) 0 0 1 初期値 (RST 時 ) * * * 属性 4 3 2 1 0 予約 R/W 予約 R/W CKS1 CKS0 R/W R/W 0 0 0 0 0 0 0 0 * * R/W:リード / ライト可能 *:初期化されないビット < 注意事項 > • このレジスタを読み出しても , 実際に設定されている値は読み出されません。このレ ジスタに設定した値が実際に反映されたかどうかは , クロックソース監視レジスタ (CMONR) を読み出して確認してください。 • このレジスタを書き換える場合は , このレジスタに設定した値とクロックソース監視 レジスタ (CMONR) の値が同じであることを確認してから , 書き換えてください。 • クロックの切り替え中に (CKS1, CKS0 ≠ CKM1, CKM0) のときに , このレジスタに書 込みを行っても , 書込みは無視されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 99 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit7]:SCEN ( サブクロック発振許可ビット ) サブクロック (SBCLK) の発振を制御します。 書込み値 説明 備考 0 サブクロック (SBCLK) の発振を停止 X0A, X1A 端 子 は ポ ー ト (PK0, します。 PK1) として使用できます 1 サ ブ ク ロッ ク (SBCLK) が発 振 し ま X0A, X1A 端 子 は サ ブ ク ロ ッ ク す。 (SBCLK) の生成に使用されます。 < 注意事項 > • CKS1, CKS0 ビットでソースクロック (SRCCLK) にサブクロック (SBCLK) を選択 (CKS1, CKS0=11) している場合は , このビットを書き換えられません。 • このビットに "0" を書き込むと , サブタイマがクリアされます。 • ストップモード時は , このビットの値にかかわらずサブクロック (SBCLK) の発振が停 止します。 [bit6]:PCEN (PLL クロック発振許可ビット ) PLL クロック (PLLCLK) の発振を制御します。 書込み値 説明 0 PLL クロック (PLLCLK) の発振を停止します。 1 PLL クロック (PLLCLK) が発振します。 < 注意事項 > • ストップモードにする前に , このビットに "0" を書き込んで , PLL クロック (PLLCLK) の発振を停止してください。 • 次のいずれかの場合は , このビットは書き換えられません。 - CKS1, CKS0 ビットでソースクロック (SRCCLK) に PLL クロック (PLLCLK) を選択 している (CKS1, CKS0=10) - メインクロック (MCLK) の発振が停止中 / 発振安定待ち中 ( クロックソース監視レジスタ (CMONR) の MCRDY ビット =0) • MCEN ビットでメインクロック (MCLK) の発振を停止 (MCEN=0) すると , このビット も "0" になります。 • メインタイマのクリア中 (メインタイマ制御レジスタ (MTMCR) のMTCビット=1) は , このビットを "0" から "1" に書き換えないでください。 • このビットを "0" から "1" に書き換えて , PLL クロック (PLLCLK) の発振を許可すると , メインタイマがクリアされます。 このとき , メインタイマ制御レジスタ (MTMCR) の MTC ビットからは "1" が読み出さ れます。 100 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit5] :MCEN ( メインクロック発振許可ビット ) メインクロック (MCLK) の発振を制御します。 書込み値 0 説明 メインクロック (MCLK) の発振を停止します。 1 メインクロック (MCLK) が発振します。 < 注意事項 > • CKS1, CKS0 ビットでソースクロック (SRCCLK) を次のいずれかにしている場合は , このビットを書き換えられません。 - メインクロック (MCLK) を選択 (CKS1, CKS0=00 または 01) - PLL クロック (PLLCLK) を選択 (CKS1, CKS0=10) • このビットに "0" を書き込むと , メインタイマがクリアされます。 • ストップモード時は , このビットの値にかかわらずメインクロック (MCLK) の発振が 停止します。 [bit4 ∼ bit2]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit1, bit0]:CKS1, CKS0 ( ソースクロック選択ビット ) ソースクロック (SRCCLK) を選択します。 CKS1 CKS0 説明 0 0 0 1 1 0 PLL クロック (PLLCLK) 1 1 サブクロック (SBCLK) メインクロック (MCLK) の 2 分周 発振が停止中 / 発振安定待ち中のクロックは , ソースクロック (SRCCLK) に選択できま せん。 また, PLLクロック (PLLCLK) からサブクロック (SBCLK), サブクロック (SBCLK) から PLL クロック (PLLCLK) へ直接切り換えることはできません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 101 第 4 章 クロック生成部 4.4 MB91665 シリーズ このビットの書換え条件を表 4.4-2 に示します。 表 4.4-2 CKS1, CKS0 ビットの書換え条件 変更前の値 CKS1 CKS0 0 0 0 1 1 0 1 1 書換え可能な値 [CKS1:CKS0] 書換え条件となるビット 書換え不可能な値 クロックソース監視レジスタ [CKS1:CKS0] (CMONR) 00, 01 MCRDY=1 10 PCRDY=1 00, 01 MCRDY=1 11 SCRDY=1 00 MCRDY=1 10 PCRDY=1 01 MCRDY=1 11 SCRDY=1 11 10 01, 11 00, 10 表 4.4-2 の書換え不可能の値は書き込まないでください。ソースクロック (SRCCLK) の 切換え手順は , 「4.5.2 ソースクロック (SRCCLK) の切換え」を参照してください。 102 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ クロックソース監視レジスタ (CMONR) 4.4.2 クロックソースや , ソースクロック (SRCCLK) の状態を表示するレジスタです。 このレジスタを読み出すと , クロックソース設定レジスタ (CSELR) に設定した値が , 実際に反映されているかどうかを確認できます。 クロックソース監視レジスタ (CMONR) のビット構成を図 4.4-2 に示します。 図 4.4-2 クロックソース監視レジスタ (CMONR) のビット構成 bit 7 6 5 4 3 2 1 0 SCRDY PCRDY MCRDY 属性 R 予約 R 予約 R CKM0 R 予約 R CKM1 R R R 初期値 (INIT 時 ) 0 0 1 0 0 0 0 0 初期値 (RST 時 ) * * * 0 0 0 * * R:リードオンリ *:初期化されないビット < 注意事項 > • クロックソース設定レジスタ (CSELR) の設定値を変更した場合は , 必ずこのレジスタ を読み出して , 値がクロックソース設定レジスタ (CSELR) の設定値と同じかどうか確 認してください。 • クロックソース設定レジスタ (CSELR) に設定した値とこのレジスタの値が一致する まで , クロックソース設定レジスタ (CSELR) は変更しないでください。 [bit7]:SCRDY ( サブクロックレディビット ) サブクロック (SBCLK) の状態を表示します。 読出し値 0 1 説明 発振が停止しているか , 発振安定待ち状態です。 安定発振中です。 ソースクロック (SRCCLK) として使用できます。 < 注意事項 > • このビットが "0" のときは , サブクロック (SBCLK) をソースクロック (SRCCLK) とし て選択できません。 • クロックソース設定レジスタ (CSELR) の SCEN ビットを "1" から "0" に書き換えた後 に , このビットを読み出すと "1" が読み出される場合があります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 103 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit6]:PCRDY (PLL クロックレディビット ) PLL クロック (PLLCLK) の状態を表示します。 読出し値 説明 0 発振が停止しているか , 発振安定待ち状態です。 1 安定発振中です。 ソースクロック (SRCCLK) として使用できます。 < 注意事項 > • • このビットが "0" のときは , PLL クロック (PLLCLK) をソースクロック (SRCCLK) と して選択できません。 クロックソース設定レジスタ (CSELR) の PCEN ビットを "1" から "0" に書き換えた後 に , このビットを読み出すと "1" が読み出される場合があります。 [bit5]:MCRDY ( メインクロックレディビット ) メインクロック (MCLK) の状態を表示します。 読出し値 説明 0 発振が停止しているか , 発振安定待ち状態です。 1 安定発振中です。 ソースクロック (SRCCLK) として使用できます。 < 注意事項 > • このビットが "0" のときは , メインクロック (MCLK) または PLL クロック (PLLCLK) を ソースクロック (SRCCLK) として選択できません。 • クロックソース設定レジスタ (CSELR) の MCEN ビットを "1" から "0" に書き換えた後 に , このビットを読み出すと "1" が読み出される場合があります。 [bit4 ∼ bit2]:予約ビット 読出し時 "0" が読み出されます。 [bit1, bit0]:CKM1, CKM0 ( ソースクロック表示ビット ) ソースクロック (SRCCLK) に選択中のクロックを表示します。 CKM1 104 CKM0 説明 0 0 0 1 1 0 PLL クロック (PLLCLK) を選択しています。 1 1 サブクロック (SBCLK) を選択しています。 メインクロック (MCLK) の 2 分周を選択しています。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ 発振安定待ち設定レジスタ (CSTBR) 4.4.3 クロックソースの発振安定待ち時間を設定するレジスタです。 このレジスタで設定した発振安定待ち時間は , 次の場合に , そのクロックのレディビッ トが "1" になるまでに使用します。 • ストップモードまたは時計モードからの復帰時 • メイン発振停止かつイニシャライズリセット (INIT) 発生時 • 停止していたクロックの発振を許可 レディビットとは次のビットを指します。 - サブクロック:SCRDY ビット - PLL クロック:PCRDY ビット - メインクロック:MCRDY ビット 発振安定待ち設定レジスタ (CSTBR) のビット構成を図 4.4-3 に示します。 図 4.4-3 発振安定待ち設定レジスタ (CSTBR) のビット構成 bit 7 6 5 4 3 2 1 0 予約 R/W SOSW2 SOSW1 SOSW0 MOSW3 MOSW2 MOSW1 MOSW0 R/W R/W R/W R/W R/W R/W R/W INIT 端子 =L 時 0 0 0 0 0 0 0 0 初期値 (INIT 時 ) 0 0 0 0 * * * * 初期値 (RST 時 ) 0 * * * * * * * 属性 R/W:リード / ライト可能 *:初期化されないビット < 注意事項 > メイン発振停止時 , イニシャライズリセット (INIT) が発生した場合 , 動作再開後のメイン 発振安定待ち時間は , このレジスタの初期値の時間になります。 [bit7]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 105 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit6 ∼ bit4]:SOSW2 ∼ SOSW0 ( サブクロック発振安定待ち選択ビット ) サブクロック (SBCLK) の発振安定待ち時間を選択します。 サブクロック (SBCLK) 発振安定待ち時間 SOSW2 SOSW1 SOSW0 32.768kHz 時 0 0 0 28 ×サブクロック (SBCLK) の周期 約 7.8ms 0 0 1 29 ×サブクロック (SBCLK) の周期 約 15.6ms 0 1 0 2 ×サブクロック (SBCLK) の周期 約 31.3ms 0 1 1 211 ×サブクロック (SBCLK) の周期 62.5ms 1 0 0 212 ×サブクロック (SBCLK) の周期 125.0ms 1 0 1 213 ×サブクロック (SBCLK) の周期 250.0ms 1 1 0 214 ×サブクロック (SBCLK) の周期 500.0ms 1 1 1 215 ×サブクロック (SBCLK) の周期 1s 10 < 注意事項 > • 表中の時間は , 計算値です。実際の時間は , 発振の状態により , 若干の誤差を含みます ので目安としてください。 • 次の条件を満たしたとき ( サブクロック (SBCLK) の発振安定待ち時間中 ) は , この ビットへの書込みは無効になります。 - クロックソース監視レジスタ (CMONR) の SCRDY ビット =0 - クロックソース設定レジスタ (CSELR) の SCEN ビット =1 106 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit3 ∼ bit0]:MOSW3 ∼ MOSW0 ( メインクロック発振安定待ち選択ビット ) メインクロック (MCLK) の発振安定待ち時間を選択します。 MOSW3 MOSW2 MOSW1 MOSW0 CM71-10158-1 メインクロック (MCLK) 発振安定待ち時間 4MHz 時 8MHz 時 48MHz 時 0 0 0 0 21 ×メインクロック (MCLK) の周期 500ns 250ns 約 42ns 0 0 0 1 25 ×メインクロック (MCLK) の周期 8μs 4μs 約 667ns 0 0 1 0 26 ×メインクロック (MCLK) の周期 16μs 8μs 約 1μs 0 0 1 1 27 ×メインクロック (MCLK) の周期 32μs 16μs 約 3μs 0 1 0 0 28 ×メインクロック (MCLK) の周期 64μs 32μs 約 5μs 0 1 0 1 29 ×メインクロック (MCLK) の周期 128μs 64μs 約 11μs 0 1 1 0 210×メインクロック (MCLK) の周期 256μs 128μs 約 21μs 0 1 1 1 211×メインクロック (MCLK) の周期 512μs 256μs 約 43μs 1 0 0 0 212×メインクロック (MCLK) の周期 約 1ms 512μs 約 85μs 1 0 0 1 213×メインクロック (MCLK) の周期 約 2ms 約 1ms 約 171μs 1 0 1 0 214×メインクロック (MCLK) の周期 約 4ms 約 2ms 約 341μs 1 0 1 1 215×メインクロック (MCLK) の周期 約 8ms 約 4ms 約 683μs 1 1 0 0 217×メインクロック (MCLK) の周期 約 33ms 約 16ms 約 3ms 1 1 0 1 219×メインクロック (MCLK) の周期 約 131ms 約 66ms 約 11ms 1 1 1 0 221×メインクロック (MCLK) の周期 約 524ms 約 262ms 約 44ms 1 1 1 1 223×メインクロック (MCLK) の周期 FUJITSU SEMICONDUCTOR LIMITED 約 2s 約 1s 約 175ms 107 第 4 章 クロック生成部 4.4 MB91665 シリーズ < 注意事項 > • 表中の時間は , 計算値です。実際の時間は , 発振の状態により , 若干の誤差を含みます ので目安としてください。 • レギュレータ搭載品では , 発振安定待ち時間を 25μs 以上に設定してください。 • 次の条件を満たしたとき ( メインクロック (MCLK) の発振安定待ち時間中 ) は , この ビットへの書込みは無効になります。 - クロックソース監視レジスタ (CMONR) の MCRDY ビット =0 - クロックソース設定レジスタ (CSELR) の MCEN ビット =1 108 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ PLL 設定レジスタ (PLLCR) 4.4.4 メインクロック (MCLK) から PLL クロック (PLLCLK) を生成するための逓倍率を設定するレ ジスタです。 PLLクロック (PLLCLK) の生成に関係するクロック周波数と逓倍率の計算方法は 「4.5.3 PLL クロック (PLLCLK) 生成のための逓倍率」を参照してください。 PLL 設定レジスタ (PLLCR) のビット構成を図 4.4-4 に示します。 図 4.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 0 0 初期値 (RST 時 ) 0 0 * * * * * * 属性 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-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 109 第 4 章 クロック生成部 4.4 MB91665 シリーズ [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 [bit11 ∼ bit8]:PMS3 ∼ PMS0 (PLL クロック逓倍率選択ビット ) PLL 入力クロックから PLL クロック (PLLCLK) への逓倍率を選択します。 110 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) 逓倍率 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit7 ∼ bit4]:PTS3 ∼ PTS0 (PLL クロック発振安定待ち時間選択ビット ) PLL クロック (PLLCLK) の発振安定待ち時間を選択します。 PTS3 PTS2 PTS1 PTS0 PLL クロック (PLLCLK) 発振安定待ち時間 4MHz 時 8MHz 時 48MHz 時 1 0 0 0 29 ×メインクロック (MCLK) 周期 128.0μs 64.0μs 約 10.7μs 1 0 0 1 210 ×メインクロック (MCLK) 周期 256.0μs 128.0μs 約 21.3μs 1 0 1 0 211 ×メインクロック (MCLK) 周期 512.0μs 256.0μs 約 42.7μs 1 0 1 1 212 ×メインクロック (MCLK) 周期 約 1ms 512.0μs 約 85.3μs 1 1 0 0 213 ×メインクロック (MCLK) 周期 約 2ms 約 1ms 約 170.7μs 1 1 0 1 214 ×メインクロック (MCLK) 周期 約 4ms 約 2ms 約 341.3μs 1 1 1 0 215 ×メインクロック (MCLK) 周期 約 8ms 約 4ms 約 682.7μs 1 1 1 1 216 ×メインクロック (MCLK) 周期 約 16.4ms 約 8ms 約 1.4ms < 注意事項 > • 表中の時間は , 計算値です。実際の時間は , 発振の状態により , 若干の誤差を含みます ので目安としてください。 • PTS3 ビットには常に "1" を書き込んでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 111 第 4 章 クロック生成部 4.4 MB91665 シリーズ [bit3 ∼ bit0]:PDS3 ∼ PDS0 (PLL 入力クロック分周選択ビット ) PLL 入力クロックを生成するための , メインクロック (MCLK) の分周比を選択します。 PDS3 112 PDS2 PDS1 PDS0 PLL 入力クロック分周選択 0 0 0 0 PLL 入力クロック=メインクロック (MCLK) / 1 0 0 0 1 PLL 入力クロック=メインクロック (MCLK) / 2 0 0 1 0 PLL 入力クロック=メインクロック (MCLK) / 3 0 0 1 1 PLL 入力クロック=メインクロック (MCLK) / 4 0 1 0 0 PLL 入力クロック=メインクロック (MCLK) / 5 0 1 0 1 PLL 入力クロック=メインクロック (MCLK) / 6 0 1 1 0 PLL 入力クロック=メインクロック (MCLK) / 7 0 1 1 1 PLL 入力クロック=メインクロック (MCLK) / 8 1 0 0 0 PLL 入力クロック=メインクロック (MCLK) / 9 1 0 0 1 PLL 入力クロック=メインクロック (MCLK) / 10 1 0 1 0 PLL 入力クロック=メインクロック (MCLK) / 11 1 0 1 1 PLL 入力クロック=メインクロック (MCLK) / 12 1 1 0 0 PLL 入力クロック=メインクロック (MCLK) / 13 1 1 0 1 PLL 入力クロック=メインクロック (MCLK) / 14 1 1 1 0 PLL 入力クロック=メインクロック (MCLK) / 15 1 1 1 1 PLL 入力クロック=メインクロック (MCLK) / 16 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.5 MB91665 シリーズ 動作説明 4.5 クロック生成部の動作について説明します。 各クロックソースの動作説明とソースクロックの切替えについて説明します。 4.5.1 クロックソースの動作説明 各クロックソースについて発振制御を中心に説明します。 ■ メインクロック (MCLK) X0 端子 , X1 端子 ( メイン発振子 ) からの入力を使用して生成するクロックです。PLL クロックの生成にも使用します。 メインクロックを使用して, メインタイマが動作します。「第6章 ( メインタイマ」参照) ● 発振停止の条件 次のいずれかの場合にメインクロック (MCLK) の発振が停止します。 • ストップモード中 • ソースクロック (SRCCLK) としてサブクロック (SBCLK) を選択中で, メインクロッ ク (MCLK) の発振が停止 ( 次の条件が揃った場合 ) - クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビット =11 - クロックソース設定レジスタ (CSELR) の MCEN ビット =0 上記の発振停止条件がすべて取り下げられた後 , 発振安定待ち設定レジスタ (CSTBR) の MOSW3 ∼ MOSW0 ビットに設定された発振安定待ち時間を経過すると , メインク ロック (MCLK) の供給を開始します。 ● 発振安定待ち時間の選択 メインクロック (MCLK) は発振が許可されると , 発振が安定するのを待ってから , ク ロックの供給を開始します。 メインクロック (MCLK) の発振安定待ち時間は , 発振安定待ち設定レジスタ (CSTBR) の MOSW3 ∼ MOSW0 ビットで設定します。 MOSW3 ∼ MOSW0 ビットは , INIT 端子に "L" レベルが入力されると , 初期化され , 発 振安定待ち時間が初期値に戻ります。その場合の初期値は , 21 ×メインクロック (MCLK) 周期です。 それ以外のリセットが発生しても , MOSW3 ∼ MOSW0 ビットは初期化されません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 113 第 4 章 クロック生成部 4.5 MB91665 シリーズ < 注意事項 > レギュレータ搭載品では , 発振安定待ち時間を 25μs 以上に設定してください。 ● 発振安定待ち時間の終了 発振安定待ち時間が終了すると , メインクロック (MCLK) が供給されます。 メインクロック (MCLK) が発振安定待ち時間中かどうかは , メインクロック (MCLK) の動作が許可されているときに , 以下の値で確認できます。 発振安定待ち状態の表示 発振安定状態の表示 クロックソース監視レジスタ (CMONR) クロックソース監視レジスタ (CMONR) の MCRDY=1 の MCRDY=0 ■ PLL クロック (PLLCLK) メインクロック (MCLK) を逓倍して生成する高速のクロックです。 ● 発振停止の条件 次のいずれかの場合に PLL クロック (PLLCLK) の発振が停止します。 • メインクロック (MCLK) の発振が停止中 , または発振安定待ち時間中 ( クロックソース設定レジスタ (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 ×メインクロック (MCLK) 周期です。 発振安定待ち時間を変更するには , PTS3 ∼ PTS0 ビットを設定後 , クロックソース設定 レジスタ (CSELR) の PCEN ビットに "1" を書き込んでください。 114 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.5 MB91665 シリーズ ● 発振安定待ち時間の終了 発振安定待ち時間が終了すると , PLL クロック (PLLCLK) が供給されます。 PLL クロック (PLLCLK) が発振安定待ち時間中かどうかは , PLL クロック (PLLCLK) の 動作が許可されているときに , 以下の値で確認できます。 発振安定待ち状態の表示 発振安定状態の表示 クロックソース監視レジスタ (CMONR) クロックソース監視レジスタ (CMONR) の PCRDY=1 の PCRDY=0 ■ サブクロック (SBCLK) X0A 端子 , X1A 端子 ( サブ発振子 ) からの入力を使用して生成するクロックです。発 振出力がそのままサブクロック (SBCLK) になります。 サブクロックを使用して , サブタイマが動作します。(「第 7 章 サブタイマ」参照 ) ● 発振停止の条件 次のいずれかの場合にサブクロック (SBCLK) の発振が停止します。 • INIT 端子に "L" が入力された • ストップモード中 • ソースクロック (SRCCLK) としてサブクロック (SBCLK) 以外を選択中で , サブク ロック (SBCLK) の発振が停止 ( 次の条件が揃った場合 ) • - クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビット =11 以外 - クロックソース設定レジスタ (CSELR) の SCEN ビット =0 端子設定がポート使用になっている ( サブクロック (SBCLK) 生成部とポートの端 子が兼用のため ) 。 上記の発振停止条件がすべて取り下げられた後 , 発振安定待ち設定レジスタ (CSTBR) の SOSW2 ∼ SOSW0 ビットに設定された発振安定待ち時間を経過すると , サブクロッ ク (SBCLK) の供給を開始します。 INIT端子に"L"が入力された場合, またはイニシャライズリセット (INIT) から復帰した 場合は , クロックソース設定レジスタ (CSELR) の SCEN ビットが "0" に初期化され , サ ブクロック (SBCLK) の発振は停止します。( 初期化後 , 発振するにはクロックソース設 定レジスタ (CSELR) の SCEN ビットを "1" にしてください。) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 115 第 4 章 クロック生成部 4.5 MB91665 シリーズ ● 発振安定待ち時間の選択 サブクロック (SBCLK) は発振が許可されると発振が安定するのを待ってから , クロッ クの供給を開始します。 サブクロック (SBCLK) の発振安定待ち時間は, 発振安定待ち設定レジスタ (CSTBR) の SOSW2 ∼ SOSW0 ビットで設定します。 SOSW2 ∼ SOSW0 ビットは , INIT 端子に "L" が入力された場合 , またはイニシャライ ズリセット (INIT) から復帰すると初期化され , 発振安定待ち時間が初期値に戻ります。 その場合の初期値は , 28 ×サブクロック (SBCLK) 周期です。 発振安定待ち時間を変更するには , SOSW2 ∼ SOSW0 ビットを設定してください。 ● 発振安定待ち時間の終了 発振安定待ち時間が終了すると , サブクロック (SBCLK) が供給されます。 サブクロック (SBCLK) が発振安定待ち時間中かどうかは , サブクロックの動作が許可 されているときに , 以下の値で確認できます。 発振安定待ち状態の表示 発振安定状態の表示 クロックソース監視レジスタ (CMONR) クロックソース監視レジスタ (CMONR) の SCRDY=1 の SCRDY=0 4.5.2 ソースクロック (SRCCLK) の切換え ソースクロック (SRCCLK) の切換えについて説明します。 ■ 概要 INIT 端子に "L" が入力された場合 , またはイニシャライズリセット (INIT) が発生する と, ソースクロック (SRCCLK) の設定は初期化されて, ソースクロック (SRCCLK) はメ インクロック (MCLK) の 2 分周になります。 プログラムの動作開始後は, クロックソース設定レジスタ (CSELR) のCKS1, CKS0ビッ トでソースクロック (SRCCLK) をクロックソースの中から選択できます。 ソースクロック (SRCCLK) を変更するとき , PLL クロック (PLLCLK) からサブクロッ ク (SBCLK) または , サブクロック (SBCLK) から PLLクロック (PLLCLK) に直接切り換 えることはできません。一度 , メインクロック (MCLK) の 2 分周に設定してから切り 換えてください。 116 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.5 MB91665 シリーズ ソースクロック (SRCCLK) の切換え方法を図 4.5-1 に示します。 図 4.5-1 ソースクロック (SRCCLK) 切換え方法 メインクロック (MCLK) の 2 分周 PLL クロック (PLLCLK) サブクロック (SBCLK) < 注意事項 > ソースクロック (SRCCLK) を切り換えても , 各クロックの発振許可設定 ( クロックソース 設定レジスタ (CSELR) の SCEN ビット , PCEN ビット , MCEN ビットの値 ) は保持され ています。必要に応じて発振を停止してください。 ■ 手順 ● メインクロック (MCLK) の 2 分周から PLL クロック (PLLCLK) への切換え ソースクロック (SRCCLK) をメインクロック (MCLK) の 2 分周から PLL クロック (PLLCLK) に切り換える場合は , 次のように設定してください。 1. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , メインクロック (MCLK) の 2 分周が選択されていることを確認 (CKM1, CKM0=00 または 01) 2. PLL 設定レジスタ (PLLCR) で , PLL 逓倍率と PLL クロック (PLLCLK) 発振安定待ち 時間を設定 3. クロックソース設定レジスタ (CSELR) の PCEN ビットで , PLL クロック (PLLCLK) の発振を開始 (PCEN=1) 4. クロックソース監視レジスタ (CMONR) の PCRDY ビットで , (PLLCLK) の発振が安定したのを確認 (PCRDY=1) PLL クロック 5. クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビットで , ソースクロック (SRCCLK) を PLL クロック (PLLCLK) に切換え (CKS1, CKS0=10) 6. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , ソースクロック (SRCCLK) が PLL ク ロ ッ ク (PLLCLK) に 切 り 換 え ら れ た こ と を 確 認 (CKM1, CKM0=10) < 注意事項 > PLLクロック (PLLCLK) の発振が有効になっている場合は, 手順2.から4.は省略できます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 117 第 4 章 クロック生成部 4.5 MB91665 シリーズ ● PLL クロック (PLLCLK) からメインクロック (MCLK) の 2 分周への切換え ソースクロック (SRCCLK) を PLL クロック (PLLCLK) からメインクロック (MCLK) の 2 分周に切り換える場合は , 次のように設定してください。 1. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , PLL クロック (PLLCLK) が選択されていることを確認 (CKM1, CKM0=10) 2. クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビットで , ソースクロック (SRCCLK) をメインクロック (MCLK) の 2 分周に切換え (CKS1, CKS0=00) 3. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , ソースクロック (SRCCLK) が メ イ ン ク ロ ッ ク (MCLK) の 2 分 周 に 切 り 換 え ら れ た こ と を 確 認 (CKM1, CKM0=00) ● メインクロック (MCLK) の 2 分周からサブクロック (SBCLK) への切換え ソースクロック (SRCCLK) をメインクロック (MCLK) の 2 分周からサブクロック (SBCLK) に切り換える場合は , 次のように設定してください。 1. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , メインクロック (MCLK) の 2 分周が選択されていることを確認 (CKM1, CKM0=01) 2. 発振安定待ち設定レジスタ (CSTBR) の SOSW2 ∼ SOSW0 ビットで , サブクロック (SBCLK) 発振安定待ち時間を設定 3. クロックソース設定レジスタ (CSELR) のSCENビットで, サブクロック (SBCLK) の 発振を開始 (SCEN=1) 4. クロックソース監視レジスタ (CMONR) のSCRDYビットで, サブクロック (SBCLK) の発振が安定したのを確認 (SCRDY=1) 5. クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビットで , ソースクロック (SRCCLK) をサブクロック (SBCLK) に切換え (CKS1, CKS0=11) 6. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , ソースクロック (SRCCLK) がサブクロック (SBCLK) に切り換えられたことを確認する。(CKM1, CKM0=11) < 注意事項 > サブクロック (SBCLK) の発振が有効になっている場合は , 手順2.から4. は省略できます。 118 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 4 章 クロック生成部 4.5 MB91665 シリーズ ● サブクロック (SBCLK) からメインクロック (MCLK) の 2 分周への切換え ソースクロック (SRCCLK) をサブクロック (SBCLK) からメインクロック (MCLK) の 2 分周に切り換える場合は , 次のように設定してください。 1. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , サブクロック (SBCLK) が選択されていることを確認 (CKM1, CKM0=11) 2. 発振安定待ち設定レジスタ (CSTBR) の MOSW2 ∼ MOSW0 ビットで , メインクロッ ク (MCLK) 発振安定待ち時間を設定 3. クロックソース設定レジスタ (CSELR) の MCEN ビットで , メインクロック (MCLK) の発振を開始 (MCEN=1) 4. クロックソース監視レジスタ (CMONR) の MCRDY ビットで , メインクロック (MCLK) の発振安定 (MCRDY=1) を確認する。 5. クロックソース設定レジスタ (CSELR) の CKS1, CKS0 ビットで , ソースクロック (SRCCLK) をメインクロック (MCLK) に切り換え (CKS1, CKS0=01) 6. クロックソース監視レジスタ (CMONR) の CKM1, CKM0 ビットで , ソースクロック (SRCCLK) が メ イ ン ク ロ ッ ク (MCLK) に 切 り 換 え ら れ た こ と を 確 認 (CKM1, CKM0=01) < 注意事項 > メインクロック (MCLK) の発振が有効になっている場合は , 手順 2. から 4. は省略できま す。 4.5.3 PLL クロック (PLLCLK) 生成のための逓倍率 PLL クロック (PLLCLK) の生成に関係するクロック周波数と逓倍率の計算方法について説明 します。 PLL 入力クロック周波数 = ( メイン発振周波数 ) / (PLL 設定レジスタ (PLLCR) の PDS ビットで設定した分周比 ) PLL 逓倍率 = (PLL 設定レジスタ (PLLCR) の ODS ビットで設定した分周比 ) × (PLL 設定レジス タ (PLLCR) の PMS ビットで設定した逓倍率 ) PLL マクロ発振クロック周波数 = (PLL 入力クロック周波数 ) × PLL 逓倍率 PLL クロック (PLLCLK) 周波数 = (PLL 入力クロック周波数 ) × (PLL 設定レジスタ (PLLCR) の PMS ビットで設定し た逓倍率 ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 119 第 4 章 クロック生成部 4.5 MB91665 シリーズ PLL クロック (PLLCLK) の設定例を表 4.5-1 に示します。 表 4.5-1 PLL クロック (PLLCLK) の設定例 PLL 設定レジスタ (PLLCR) メイン 発振 周波数 PDS3 ∼ PDS0 ODS1, ODS0 PMS3 ∼ PMS0 PLL 入力 クロック 周波数 PLL PLL 逓倍率 PLL マクロ発振 ODS × クロック クロック PMS 周波数 周波数 4MHz 0000 00 0111 4MHz 8 逓倍 32MHz 32MHz 4.167MHz 0000 00 0111 4.167MHz 8 逓倍 33MHz 33MHz 48MHz 0010 10 0001 16MHz 6 逓倍 96MHz 32MHz 4MHz 0000 10 0111 4MHz 24 逓倍 96MHz 32MHz 8MHz 0000 10 0011 8MHz 12 逓倍 96MHz 32MHz < 注意事項 > • • 120 PLL 入力クロック , PLL 逓倍率 , PLL マクロ発振クロックは , 次の使用条件を満たすよ うに設定してください。 PLL 入力クロック周波数 4MHz ∼ 24MHz PLL 逓倍率 2 逓倍∼ 24 逓倍 PLL マクロ発振クロック周波数 96MHz ∼ 100MHz ソースクロック (PLL クロック選択時 ) 24MHz ∼ 33 MHz ODS=00 かつ PMS=0000 (PLL 逓倍率 =1) の設定は禁止です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 5 章 クロック分周 制御部 内部クロックを生成するクロック分周制御部につ いて説明します。 5.1 概要 5.2 内部クロック 5.3 構成 5.4 レジスタ 5.5 分周比 5.6 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 121 第 5 章 クロック分周制御部 5.1 5.1 MB91665 シリーズ 概要 クロック生成部から入力したソースクロック (SRCCLK) を分周して内部クロックを生成し ます。 クロック分周制御部は , ソースクロック (SRCCLK) を分周して , 内部クロックを生成 し , CPU やバス , 周辺機能に供給します。 生成する内部クロックを表 5.1-1 に示します。これらのクロックを総称して内部クロッ クといいます。 表 5.1-1 生成する内部クロック クロック名 ベースクロック (BCLK) 生成元クロック ソースクロック (SRCCLK) の 1 ∼ 8 分周 CPU クロック (CCLK) ベースクロック (BCLK) の 1 分周 ( 非分周 ) オンチップバスクロック (HCLK) ベースクロック (BCLK) の 1 分周 ( 非分周 ) 外部バスクロック (TCLK) ベースクロック (BCLK) の 1 ∼ 8 分周 周辺クロック (PCLK) ベースクロック (BCLK) の 1 ∼ 16 分周 ソースクロック (SRCCLK) については,「第4章 クロック生成部」を参照してください。 122 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 5 章 クロック分周制御部 5.2 MB91665 シリーズ 5.2 内部クロック 各内部クロックについて説明します。 ■ ベースクロック (BCLK) すべての内部クロックの生成元になるクロックです。 分周設定レジスタ 0 (DIVR0) の DIVB2 ∼ DIVB0 ビットでソースクロック (SRCCLK) を 1 ∼ 8 分周して生成します。 デバイス全体の動作周波数を一括して低下させることができます。 次の各低消費電力モード時に停止します。 • 時計モード / メインタイマモード • ストップモード ■ CPU クロック (CCLK) 本デバイスの CPU 部に供給するクロックで , ベースクロック (BCLK) から生成します。 ベースクロック (BCLK) を分周せずに生成するので , 動作周波数は常にベースクロッ ク (BCLK) と同じです。 次の各低消費電力モード時に停止します。 • ドーズモード ( 停止期間中 ) • スリープモード • 時計モード / メインタイマモード • ストップモード クロック名 CPU クロック (CCLK) 代表的な供給先 CPU ( 命令実行部 ) ■ オンチップバスクロック (HCLK) オンチップバスとそれに接続される各回路に供給されるクロックで , ベースクロック (BCLK) から生成します。 ベースクロック (BCLK) を分周せずに生成するので , 動作周波数は常にベースクロッ ク (BCLK) と同じです。 次の各低消費電力モード時に停止します。 • バススリープモード • 時計モード / メインタイマモード • ストップモード クロック名 オンチップバスクロック (HCLK) CM71-10158-1 代表的な供給先 DMA コントローラ (DMAC) FUJITSU SEMICONDUCTOR LIMITED 123 第 5 章 クロック分周制御部 5.2 MB91665 シリーズ ■ 外部バスクロック (TCLK) 外部バスインタフェースに供給されるクロックです。 分周設定レジスタ1 (DIVR1) のDIVT2∼DIVT0ビットでベースクロック (BCLK) を1∼ 8 分周して生成します。 分周設定レジスタ 1 (DIVR1) の TSTP ビットを設定することで , バススリープモード中 でオンチップバスアクセスを行っていないときは停止させることができます。 次の低消費電力モード時は , 設定にかかわらず停止します。 • 時計モード / メインタイマモード • ストップモード クロック名 外部バスクロック (TCLK) 代表的供給先 外部バスインタフェース < 注意事項 > • 外部バスクロック (TCLK) と同じ周波数が, SYSCLK端子からバスクロック (SYSCLK) として出力されます。 • 外部バスクロック (TCLK) の分周比を奇数分周に設定 ( 分周設定レジスタ 1 (DIVR1) の DIVT2 ∼ DIVT0 ビット ) すると , SYSCLK 端子から出力されるバスクロック (SYSCLK) のデューティ比は 50% になりません。"H" レベルの出力期間が出力周期の 50% 以下となります。 • DIVT = 000 のとき , 必ず DIVB = 000 に設定してください。 • 外部バス領域にアクセス中に外部バスクロック(TCLK)の分周比を変更しないでくださ い。分周比の変更については , 「5.6 使用上の注意」を参照してください。 ■ 周辺クロック (PCLK) 周辺バスとそれに接続する各周辺機能に供給されるクロックです。 分周設定レジスタ 2 (DIVR2) の DIVP3 ∼ DIVP0 ビットでベースクロック (BCLK) を 1 ∼ 16 分周して生成します。 次の低消費電力モード時は , 設定にかかわらず停止します。 • 時計モード / メインタイマモード • ストップモード クロック名 周辺クロック (PCLK) 124 代表的な供給先 周辺バス クロック制御部 リセット制御部 ウォッチドッグタイマ 割込みコントローラ 外部割込み 遅延割込み 16 ビットリロードタイマ 各周辺機能 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 5 章 クロック分周制御部 5.3 MB91665 シリーズ 5.3 構成 クロック生成部から入力されたソースクロックを, レジスタに設定した値で分周し, 各回路へ 出力します。 ■ クロック分周制御部のブロックダイヤグラム クロック分周制御部のブロックダイヤグラムを図 5.3-1 に示します。 図 5.3-1 クロック分周制御部のブロックダイヤグラム ソースクロック (SRCCLK) DIVB2 ∼ DIVB0 (1 ∼ 8 分周 ) ベースクロック (BCLK) CPU スリープ CPU クロック (CCLK) バススリープ オンチップ バスクロック (HCLK) バススリープ 外部バスアクセスしていない TSTP DIVT2 ∼ DIVT0 (1 ∼ 8 分周 ) DIVP3 ∼ DIVP0 (1 ∼ 16 分周 ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 外部バスクロック (TCLK) 周辺クロック (PCLK) 125 第 5 章 クロック分周制御部 5.4 5.4 MB91665 シリーズ レジスタ クロック分周制御部で使用するレジスタの構成と機能について説明します。 ■ クロック分周制御部のレジスタ一覧 クロック分周制御部のレジスタ一覧を表 5.4-1 に示します。 表 5.4-1 クロック分周制御のレジスタ一覧 126 レジスタ略称 DIVR0 レジスタ名 分周設定レジスタ 0 5.4.1 DIVR1 分周設定レジスタ 1 5.4.2 DIVR2 分周設定レジスタ 2 5.4.3 FUJITSU SEMICONDUCTOR LIMITED 参照先 CM71-10158-1 第 5 章 クロック分周制御部 5.4 MB91665 シリーズ 分周設定レジスタ 0 (DIVR0) 5.4.1 ベースクロック (BCLK) を生成するときのソースクロック (SRCCLK) の分周比を設定するレ ジスタです。 分周設定レジスタ 0 (DIVR0) のビット構成を図 5.4-1 に示します。 図 5.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 1 1 初期値 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-10158-1 書込み時 必ず "1" を書き込んでください。 読込み時 "1" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 127 第 5 章 クロック分周制御部 5.4 MB91665 シリーズ 分周設定レジスタ 1 (DIVR1) 5.4.2 外部バスクロック (TCLK) を生成するときのベースクロック (BCLK) の分周比を設定するレ ジスタです。また , 外部バスクロック (TCLK) の停止制御も行います。 分周設定レジスタ 1 (DIVR1) のビット構成を図 5.4-2 に示します。 図 5.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 分周 < 注意事項 > 外部バス領域にアクセス中に外部バスクロック (TCLK) の分周比を変更しないでくださ い。分周比の変更については , 「5.6 使用上の注意」を参照してください。 128 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 5 章 クロック分周制御部 5.4 MB91665 シリーズ [bit3 ∼ bit0]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読込み時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 129 第 5 章 クロック分周制御部 5.4 MB91665 シリーズ 分周設定レジスタ 2 (DIVR2) 5.4.3 周辺クロック (PCLK) を生成するときのベースクロック (BCLK) の分周比を設定するレジス タです。 分周設定レジスタ 2 (DIVR2) のビット構成を図 5.4-3 に示します。 図 5.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]:予約ビット 130 書込み時 必ず "0" を書き込んでください。 読込み時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 5 章 クロック分周制御部 5.5 MB91665 シリーズ 5.5 分周比 クロック分周制御部は , 各内部クロックに対して分周比を設定できます。 各内部クロックに対するソースクロックからの分周比を図 5.5-1 に示します。 図 5.5-1 各内部クロックに対するソースクロックからの分周比 ソースクロック (SRCCLK) 1 ∼ 8 分周 ベースクロック (BCLK) CPU クロック (CCLK) 1 ∼ 8 分周 1 ∼ 16 分周 外部バスクロック (TCLK) 周辺クロック (PCLK) ■ 初期化後の分周比 リセット発生後の内部クロックの分周を表 5.5-1 に示します。 表 5.5-1 リセット発生後の分周比 クロック名 CM71-10158-1 初期化後の分周比 ベースクロック (BCLK) ソースクロック (SRCCLK) の 1 分周 CPU クロック (CCLK) ベースクロック (BCLK) の 1 分周 オンチップバスクロック (HCLK) ベースクロック (BCLK) の 1 分周 外部バスクロック (TCLK) ベースクロック (BCLK) の 2 分周 周辺クロック (PCLK) ベースクロック (BCLK) の 4 分周 FUJITSU SEMICONDUCTOR LIMITED 131 第 5 章 クロック分周制御部 5.5 MB91665 シリーズ ■ 分周比の変更 分周比の設定に変更があった場合は , 設定値を変更した次のクロックの立上りエッジ から変更した分周比が有効となります。 A A B B B クロック レジスタの設定値 ( 分周比 ) A B 分周比変更 132 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 5 章 クロック分周制御部 5.6 MB91665 シリーズ 5.6 使用上の注意 クロック分周比を設定する際は次の点に注意してください。 • 外部バス領域にアクセス中に外部バスクロック (TCLK) 分周比を変更しないでくだ さい。 分周比を変更する際は , 分周設定レジスタ 1(DIVR1) の DIVT2 ∼ DIVT0 ビットに以 下のような処理を行ってください。 例 LDI #value_of_divr1, R0 ;DIVR1(DIVT2 ∼ DIVT0 ビット ) 設定 LDI #_DIVR1, R12 ; STB R0, @R12 ; ライト LDUB @R12, R0 ; ダミー処理 MOV R0, R0 ; ダミー処理 NOP ; ダミー処理 NOP ; ダミー処理 BRA _escape_divr1 NOP ; ダミー処理 ; ダミー処理 _escape_divr1 以降実行プログラムを記述 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 133 第 5 章 クロック分周制御部 5.6 134 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 6 章 メインタイマ メインタイマの機能と動作について説明します。 6.1 概要 6.2 構成 6.3 レジスタ 6.4 割込み 6.5 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 135 第 6 章 メインタイマ 6.1 6.1 MB91665 シリーズ 概要 メインタイマは , メインクロック (MCLK) で動作するタイマです。 メインクロック (MCLK) とPLLクロック (PLLCLK) の発振安定待ち時間の生成に使用します。 メインタイマは , メインクロック (MCLK) の発振安定待ち時間や PLL クロック (PLLCLK) の発振安定待ち時間をカウントするタイマです。 メインクロック (MCLK) の発振が安定状態のときは , 一定間隔で割込み要求を発生す るインターバルタイマとしても使用できます。 このタイマは , 次の場合にクリアされます。 • メインタイマ制御レジスタ (MTMCR) の MTC ビットに "1" を書き込んだとき MTC ビットに "1" を書き込んでから , メインタイマがクリアされるまでは , メイン タイマ制御レジスタ (MTMCR) の MTC ビットからは "1" が読み出されます。 • メインクロック (MCLK) の発振が停止しているとき ( クロックソース設定レジスタ (CSELR) の MCEN ビット =0 のとき ) • • ストップモード時 メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマを停止したと き (MTE=0) メインタイマの動作が禁止されると , メインクロック (MCLK) と PLL クロック (PLLCLK) の発振安定待ち時間以外は , このタイマは停止します。 136 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 6 章 メインタイマ 6.2 MB91665 シリーズ 6.2 構成 メインタイマの構成を示します。 ■ メインタイマのブロックダイヤグラム メインタイマのブロックダイヤグラムは , 「第 4 章 クロック生成部」の「■ メインク ロック (MCLK) 生成部」を参照してください。 ■ クロック メインタイマで使用するクロックを表 6.2-1 に示します。 表 6.2-1 メインタイマで使用するクロック クロック名 動作クロック CM71-10158-1 内容 メインクロック (MCLK) FUJITSU SEMICONDUCTOR LIMITED 137 第 6 章 メインタイマ 6.3 6.3 MB91665 シリーズ レジスタ メインタイマで使用するレジスタの構成と機能について説明します。 ■ メインタイマのレジスタ一覧 メインタイマのレジスタ一覧を表 6.3-1 に示します。 表 6.3-1 メインタイマのレジスタ一覧 レジスタ略称 MTMCR 138 レジスタ名 メインタイマ制御レジスタ FUJITSU SEMICONDUCTOR LIMITED 参照先 6.3.1 CM71-10158-1 第 6 章 メインタイマ 6.3 MB91665 シリーズ メインタイマ制御レジスタ (MTMCR) 6.3.1 メインタイマを制御するレジスタです。 メインタイマ制御レジスタ (MTMCR) のビット構成を図 6.3-1 に示します。 図 6.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:リード / ライト可能 < 注意事項 > • このレジスタは, メインクロック (MCLK) が安定発振中のとき (クロックソース監視レ ジスタ (CMONR) の MCRDY ビット =1) のみ , 書き換えられます。 ただし , MTIE ビットは , MCRDY ビットが "0" の場合も書き換えることができます。 • CM71-10158-1 ソフトウェアリセットは , MTE ビットと MTC ビットの両方が "0" のときに , 行ってく ださい。ソフトウェアリセットについては , 「第 9 章 リセット」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED 139 第 6 章 メインタイマ 6.3 MB91665 シリーズ [bit7]:MTIF ( メインタイマ割込みフラグビット ) メインタイマがオーバフローしたことを示すフラグです。 メインタイマは次の場合にオーバフローします。 • MTS3 ∼ MTS0 ビットで設定した周期をカウントアップし終わったとき • クロックソース設定レジスタ (CSELR)のMCENビットを"0"から"1"に書き換えた後, メインクロック (MCLK) の発振安定待ち時間が経過したとき • ストップモードから復帰後 , メインクロック (MCLK) の発振安定待ち時間が経過し たとき MTIE ビットに "1" が設定されているときに , このビットが "1" になると , メインタイ マ割込み要求が発生します。 MTIF 読出し時 書込み時 0 オーバフローは発生していません。 このビットを "0" にクリアします。 1 オーバフローが発生しました。 無視されます。 メインタイマ割込み要求による DMA 転送が発生した場合も , このビットは "0" にクリ アされます。 < 注意事項 > • MTEビットでメインタイマの動作を禁止 (MTE=0) すると, メインタイマがクリアされ ます。 • MTIE ビットが "0" に設定されていると , メインタイマ割込み要求による DMA 転送が 発生した場合でも , このビットはクリアされません。 • INIT 端子から "L" レベルの信号を入力して本デバイスをリセット後 , 再度 INIT 端子か ら "H"レベルの信号を入力した場合は , メインクロック (MCLK) の発振安定待ち時間が 経過しても , このビットは "1" に変わりません。 • このビットを "0" にクリアするタイミングと , オーバフロー発生のタイミングが重なっ た場合は , オーバフローの発生が優先され , このビットは "1" のままになります。 • リードモディファイライト系命令では "1" が読み出されます。 [bit6]:MTIE ( メインタイマ割込み許可ビット ) メインタイマがオーバフローしたとき (MTIF=1) にメインタイマ割込み要求を発生さ せるかどうかを設定します。 このビットに "1" が設定されている場合に , MTIF ビットが "1" になると , メインタイ マ割込み要求が発生します。 書込み値 140 説明 0 メインタイマ割込み要求の発生を禁止します。 1 メインタイマ割込み要求の発生を許可します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 6 章 メインタイマ 6.3 MB91665 シリーズ [bit5]:MTC ( メインタイマクリアビット ) メインタイマをクリアします。 また , このビットを読み出すとメインタイマの動作状態を確認できます。 MTC 書込み時 読出し時 0 無視されます。 通常動作中です。 1 メインタイマをクリアします。 メインタイマのクリア中です。 < 注意事項 > • リードモディファイライト系命令では "0" が読み出されます。 • PLL クロック (PLLCLK) の発振安定待ち中は , メインタイマをクリアしないでくださ い。 • メインクロック (MCLK) の発振が安定している場合にのみ , このレジスタを書き換え ることができます。そのため , 次の条件が揃ったときは , このビットに "1" を書き込ん でも , メインタイマをクリアできません。 - メインクロック (MCLK) の発振中 (クロックソース設定レジスタ (CSELR) のMCEN ビット =1) - メインクロック (MCLK) の発振停止中 / 発振安定待ち中 ( クロックソース監視レジス タ (CMONR) の MCRDY ビット =0) • MTE ビットを "0" から "1" に書き換えるのと同時に , このビットに "1" を書き込むと , メインタイマをクリアしてから , メインタイマの動作が開始されます。 • このビットが "1" のときに , 再度このビットに "1" を書き込まないでください。 • MTC ビットが "0" になるまでは , MTIF ビットが "1" になることがあります。 [bit4]:MTE ( メインタイマ動作許可ビット ) メインタイマの動作を許可 / 禁止 ( 停止 ) します。 書込み値 説明 0 メインタイマの動作を禁止 ( 停止 ) します。 1 メインタイマの動作を許可します。 < 注意事項 > • メインタイマの動作を禁止 ( 停止 ) すると , メインクロック (MCLK) と PLL クロック (PLLCLK) の発振安定待ち時間中以外は , メインタイマは停止します。 • メインタイマの動作を禁止 ( 停止 ) すると , メインタイマがクリアされます。メインタ イマのクリア中は , MTC ビットから "1" が読み出されます。MTC ビットが "0" になる までは , MTIF ビットが "1" になることがあります。 • PLL クロック (PLLCLK) の発振安定待ち中は , このビットを "1" から "0" に書き換えな いでください。 • MTC ビットが "1" のときは , このビットに "1" を書き込まないでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 141 第 6 章 メインタイマ 6.3 MB91665 シリーズ [bit3 ∼ bit0]:MTS3 ∼ MTS0 ( メインタイマ周期選択ビット ) メインタイマのオーバフロー周期を選択します。 このビットで設定した周期をカウントアップし終わると , メインタイマがオーバフ ローします。 MTS3 MTS2 MTS1 MTS0 オーバフロー周期 4MHz 時 8MHz 時 48MHz 時 128.0μs 64.0μs 約 10.7μs 210 ×メインクロックの周期 256.0μs 128.0μs 約 21.3μs 0 211 512.0μs 256.0μs 約 42.7μs 1 1 12 ×メインクロックの周期 約 1ms 512.0μs 約 85.3μs 1 0 0 13 ×メインクロックの周期 約 2ms 約 1ms 約 170.7μs 1 1 0 1 14 ×メインクロックの周期 約 4ms 約 2ms 約 341.3μs 1 1 1 0 15 2 ×メインクロックの周期 約 8ms 約 4ms 約 682.7μs 1 1 1 1 216 ×メインクロックの周期 約 16.4ms 1 0 0 0 29 1 0 0 1 1 0 1 1 0 1 ×メインクロックの周期 2 2 2 ×メインクロックの周期 約 8ms 約 1.4ms MTS3 ビットには必ず "1" を書き込んでください。 < 注意事項 > • このビットは , MTE ビットでメインタイマを停止して (MTE=0) から変更してくださ い。 • MTIE ビットが "1" に設定されていると , メインタイマがオーバフローしたときに , メ インタイマ割込み要求が発生します。 メインタイマのオーバフロー周期が 5T (T:周辺クロック (PCLK) の周期 ) 以上になる ように設定してください。 142 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 6 章 メインタイマ 6.4 MB91665 シリーズ 割込み 6.4 メインタイマがオーバフローすると , メインタイマ割込み要求が発生します。 メインタイマで使用できる割込みについて表 6.4-1 に示します。 表 6.4-1 メインタイマの割込み 割込み要求 割込み要求フラグ 割込み要求許可 割込み要求のクリア メ イ ン タ イ マ MTMCRのMTIF=1 MTMCR の MTIE=1 MTMCR の MTIF ビットに 割込み要求 "0" を書き込む MTMCR : メインタイマ制御レジスタ (MTMCR) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 143 第 6 章 メインタイマ 6.5 6.5 MB91665 シリーズ 動作説明と設定手順例 メインタイマの動作について説明します。また , 動作状態を設定するための手順例も示しま す。 6.5.1 メインタイマの動作 ■ 概要 メインタイマは , メインクロック (MCLK) の発振安定待ち時間や PLL クロック (PLLCLK) の発振安定待ち時間をカウントするタイマです。 メインクロック (MCLK) の発振が安定状態のときは , 一定間隔で割込み要求を発生す るインターバルタイマとしても使用できます。 メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマの動作を禁止する と (MTE=0), メインクロック (MCLK) と PLL クロック (PLLCLK) の発振安定待ち時間 以外は , このタイマは停止します。 ■ 動作 メインタイマは次のように動作します。 1. メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマの動作を許可 する (MTE=1) 2. メインタイマがメインクロック (MCLK) に同期して , カウントアップを開始する メインタイマ制御レジスタ (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" が読み出されます。 144 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 6 章 メインタイマ 6.5 MB91665 シリーズ • メインクロック (MCLK) の発振が停止しているとき ( クロックソース設定レジスタ (CSELR) の MCEN ビット =0 のとき ) • ストップモード時 • メインタイマ制御レジスタ (MTMCR) の MTE ビットでメインタイマを停止したと き (MTE=0) < 注意事項 > メインタイマ制御レジスタ (MTMCR) は , メインクロック (MCLK) の発振が安定している 場合にのみ書き換えられます。そのため , 次の条件が揃ったときに , メインタイマ制御レ ジスタ (MTMCR) のMTCビットに"1"を書き込んでも, メインタイマはクリアできません。 • メインクロック (MCLK) の発振中 ( クロックソース設定レジスタ (CSELR) の MCEN ビット =1) • メインクロック (MCLK) の発振停止中 / 発振安定待ち中 ( クロックソース監視レジスタ (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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 145 第 6 章 メインタイマ 6.5 MB91665 シリーズ ストップモードへの遷移について 6.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 ビットでメインクロッ ク (MCLK) の発振安定待ち時間を設定 7. ストップモードへ遷移 < 注意事項 > ストップモードへ遷移する前に , 必ず PLL クロック (PLLCLK) の発振を停止してくださ い。 146 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 7 章 サブタイマ サブタイマの機能と動作について説明します。 7.1 概要 7.2 構成 7.3 レジスタ 7.4 割込み 7.5 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 147 第 7 章 サブタイマ 7.1 7.1 MB91665 シリーズ 概要 サブタイマは , サブクロック (SBCLK) で動作するタイマです。 サブクロック (SBCLK) の発振安定待ち時間の生成に使用します。 サブタイマは , サブクロック (SBCLK) の発振安定待ち時間をカウントします。 サブクロック (SBCLK) の発振が安定状態のときは , 一定間隔で割込み要求を発生する インターバルタイマとしても使用できます。 このタイマは , 次の場合にクリアされます。 • サブタイマ制御レジスタ (STMCR) の STC ビットに "1" を書き込んだとき STC ビットに "1" を書き込んでから , サブタイマがクリアされるまでは , サブタイ マ制御レジスタ (STMCR) の STC ビットからは "1" が読み出されます。 • サブクロック (SBCLK) の発振が停止しているとき ( クロックソース設定レジスタ (CSELR) の SCEN ビット =0 のとき ) • ストップモード時 • サブタイマ制御レジスタ (STE=0) (STMCR) の STE ビットでサブタイマを停止したとき サブタイマの動作が禁止されると, サブクロック (SBCLK) の発振安定待ち時間以外は, このタイマは停止します。 148 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 7 章 サブタイマ 7.2 MB91665 シリーズ 7.2 構成 サブタイマの構成を示します。 ■ サブタイマのブロックダイヤグラム サブタイマのブロックダイヤグラムは , 「第 4 章 クロック生成部」の「■ サブクロッ ク (SBCLK) 生成部」を参照してください。 ■ クロック サブタイマで使用するクロックを表 7.2-1 に示します。 表 7.2-1 サブタイマで使用するクロック クロック名 動作クロック CM71-10158-1 内容 サブクロック (SBCLK) FUJITSU SEMICONDUCTOR LIMITED 149 第 7 章 サブタイマ 7.3 7.3 MB91665 シリーズ レジスタ サブタイマで使用するレジスタの構成と機能について説明します。 ■ サブタイマのレジスタ一覧 サブタイマのレジスタ一覧を表 7.3-1 に示します。 表 7.3-1 サブタイマのレジスタ一覧 レジスタ略称 STMCR 150 レジスタ名 サブタイマ制御レジスタ FUJITSU SEMICONDUCTOR LIMITED 参照先 7.3.1 CM71-10158-1 第 7 章 サブタイマ 7.3 MB91665 シリーズ サブタイマ制御レジスタ (STMCR) 7.3.1 サブタイマを制御するレジスタです。 サブタイマ制御レジスタ (STMCR) のビット構成を図 7.3-1 に示します。 図 7.3-1 サブタイマ制御レジスタ (STMCR) のビット構成 bit 属性 7 6 5 4 3 2 1 0 STIF STIE STC STE STS2 STS1 STS0 R/W R/W R/W R/W 予約 R/W R/W R/W R/W 0 0 0 0 0 1 1 1 初期値 R/W:リード / ライト可能 < 注意事項 > • このレジスタは , サブクロック (SBCLK) が安定発振中のとき ( クロックソース監視レ ジスタ (CMONR) の SCRDY ビット =1) のみ , 書き換えられます。 ただし , STIE ビットは , SCRDY ビットが "0" の場合も書き換えることができます。 • ソフトウェアリセットは , STE ビットと STC ビットの両方が "0" のときに行ってくだ さい。ソフトウェアリセットについては , 「第 9 章 リセット」を参照してください。 [bit7]:STIF ( サブタイマ割込みフラグビット ) サブタイマがオーバフローしたことを示すフラグです。 サブタイマは次の場合にオーバフローします。 • • STS2 ∼ STS0 ビットで設定した周期をカウントアップし終わったとき クロックソース設定レジスタ (CSELR) の SCEN ビットを "0" から "1" に書き換えた 後 , サブクロック (SBCLK) の発振安定待ち時間が経過したとき • ストップモードから復帰後, サブクロック (SBCLK) の発振安定待ち時間が経過した とき STIE ビットに "1" が設定されているときに , このビットが "1" になると , サブタイマ割 込み要求が発生します。 STIF 読出し時 書込み時 0 オーバフローは発生していません。 このビットを "0" にクリアします。 1 オーバフローが発生しました。 無視されます。 サブタイマ割込み要求による DMA 転送が発生した場合も , このビットは "0" にクリア されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 151 第 7 章 サブタイマ 7.3 MB91665 シリーズ < 注意事項 > • STE ビットでサブタイマの動作を禁止 (STE=0) すると , サブタイマがクリアされま す。 • STIE ビットが "0" に設定されていると , サブタイマ割込み要求による DMA 転送が発生 した場合でも , このビットはクリアされません。 • このビットを "0" にクリアするタイミングと , オーバフロー発生のタイミングが重なっ た場合は , オーバフローの発生が優先され , このビットは "1" のままになります。 • リードモディファイライト系命令では "1" が読み出されます。 [bit6]:STIE ( サブタイマ割込み許可ビット ) サブタイマがオーバフローしたとき (STIF=1) にサブタイマ割込み要求を発生させる かどうかを設定します。 このビットに "1" が設定されている場合に , STIF ビットが "1" になると , サブタイマ割 込み要求が発生します。 書込み値 説明 0 サブタイマ割込み要求の発生を禁止します。 1 サブタイマ割込み要求の発生を許可します。 [bit5]:STC ( サブタイマクリアビット ) サブタイマをクリアします。 また , このビットを読み出すとサブタイマの動作状態を確認できます。 STC 書込み時 読出し時 0 無視されます。 通常動作中です。 1 サブタイマをクリアします。 サブタイマのクリア中です。 < 注意事項 > • リードモディファイライト系命令では "0" が読み出されます。 • サブクロック (SBCLK) の発振が安定している場合にのみ , このレジスタを書き換える ことができます。そのため , 次の条件が揃ったときは , このビットに "1" を書き込んで も , サブタイマをクリアできません。 - サブクロック (SBCLK) の発振中 ( クロックソース設定レジスタ (CSELR) の SCEN ビット =1) - サブクロック (SBCLK) の発振停止中 / 発振安定待ち中 ( クロックソース監視レジス タ (CMONR) の SCRDY ビット =0) 152 • STE ビットを "0" から "1" に書き換えるのと同時に , このビットに "1" を書き込むと , サブタイマをクリアしてから , サブタイマの動作が開始されます。 • このビットが "1" のときに , 再度このビットに "1" を書き込まないでください。 • STC ビットが "0" になるまでは , STIF ビットが "1" になることがあります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 7 章 サブタイマ 7.3 MB91665 シリーズ [bit4]:STE ( サブタイマ動作許可ビット ) サブタイマの動作を制御します。 書込み値 説明 0 サブタイマの動作を禁止 ( 停止 ) します。 1 サブタイマの動作を許可します。 < 注意事項 > • サブタイマの動作を禁止 ( 停止 ) すると , サブクロック (SBCLK) の発振安定待ち時間 中以外は , サブタイマは停止します。 • サブタイマの動作を禁止 ( 停止 ) するとサブタイマがクリアされます。サブタイマのク リア中は , STC ビットから "1" が読み出されます。STC ビットが "0" になるまでは , STIF ビットが "1" になることがあります。 • STC ビットが "1" のときは , このビットに "1" を書き込まないでください。 [bit3]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit2 ∼ bit0]:STS2 ∼ STS0 ( サブタイマ周期選択ビット ) サブタイマのオーバフロー周期を選択します。 このビットで設定した周期をカウントアップし終わると , サブタイマがオーバフロー します。 STS2 STS1 STS0 オーバフロー周期 32768Hz 時 0 0 0 28 ×サブクロック周期 約 7.8ms 0 0 1 29 ×サブクロック周期 約 15.6ms 0 1 0 210 ×サブクロック周期 約 31.3ms 0 1 1 2 ×サブクロック周期 62.5ms 1 0 0 212 ×サブクロック周期 125.0ms 1 0 1 213 ×サブクロック周期 250.0ms 1 1 0 214 ×サブクロック周期 500.0ms 1 1 1 215 ×サブクロック周期 1s 11 < 注意事項 > • このビットは , STE ビットでサブタイマを停止して (STE=0) から変更してください。 • STIE ビットが "1" に設定されていると , サブタイマがオーバフローしたときに , サブ タイマ割込み要求が発生します。 サブタイマのオーバフロー周期が 5T (T:周辺クロック (PCLK) の周期 ) 以上になるよ うに設定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 153 第 7 章 サブタイマ 7.4 MB91665 シリーズ 割込み 7.4 サブタイマがオーバフローすると , サブタイマ割込み要求が発生します。 サブタイマで使用できる割込みについて表 7.4-1 に示します。 表 7.4-1 サブタイマの割込み 割込み要求 サブタイマ 割込み要求 割込み要求フラグ 割込み要求許可 割込み要求のクリア STMCR の STIF=1 STMCR の STIE=1 STMCR のSTIF ビットに"0" を書き込む STMCR : サブタイマ制御レジスタ (STMCR) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 154 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 7 章 サブタイマ 7.5 MB91665 シリーズ 7.5 動作説明と設定手順例 サブタイマの動作について説明します。また , 動作状態を設定するための手順例も示します。 7.5.1 サブタイマの動作 ■ 概要 サブタイマは , サブクロック (SBCLK) の発振安定待ち時間をカウントします。 サブクロック (SBCLK) の発振が安定状態のときは , 一定間隔で割込み要求を発生する インターバルタイマとしても使用できます。 サブタイマ制御レジスタ (STMCR) の STE ビットでサブタイマの動作を禁止すると (STE=0), サブクロック (SBCLK) の発振安定待ち時間以外は , このタイマは停止しま す。 ■ 動作 サブタイマは次のように動作します。 1. サブタイマ制御レジスタ (STMCR) の STE ビットでサブタイマの動作を許可する (STE=1) 2. サブタイマがサブクロック (SBCLK) に同期して , カウントアップを開始する サブタイマ制御レジスタ (STMCR) STE ビットが "1" の間 , カウントアップを継続し ます。 3. サブタイマ制御レジスタ (STMCR) の STS2 ∼ STS0 ビットで設定した値までカウン トアップする サブタイマ制御レジスタ (STMCR) の STIF ビットが "1" に変わります。 このとき , サブタイマ制御レジスタ (STMCR) の STIE ビットが "1" だと , サブタイ マ割込み要求が発生します。 サブタイマ割込み要求をクリアするには , STIF ビットに "0" を書き込んでください。 STIF ビットが "0" にクリアされます。 サブタイマの動作中に , サブタイマ制御レジスタ (STMCR) の STE ビットでサブタイマ の動作を禁止 (STE=0) すると , サブタイマはカウントを停止し , 値がクリアされます。 詳しくは , 「■ タイマクリア」を参照してください。 ■ タイマクリア サブタイマは次の場合にクリアされます。 • サブタイマ制御レジスタ (STMCR) の STC ビットに "1" を書き込んだとき STC ビットに "1" を書き込んでから , サブタイマがクリアされるまでは , サブタイ マ制御レジスタ (STMCR) の STC ビットからは "1" が読み出されます。 • サブクロック (SBCLK) の発振が停止しているとき ( クロックソース設定レジスタ (CSELR) の SCEN ビット =0 のとき ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 155 第 7 章 サブタイマ 7.5 MB91665 シリーズ • ストップモード時 • サブタイマ制御レジスタ (STE=0) (STMCR) の STE ビットでサブタイマを停止したとき サブクロック (SBCLK) の発振安定待ち時間以外は , このタイマは停止します。 < 注意事項 > サブタイマ制御レジスタ (STMCR) は , サブクロック (SBCLK) の発振が安定している場 合にのみ書き換えられます。そのため , 次の条件が揃ったときに , サブタイマ制御レジス タ (STMCR) の STC ビットに "1" を書き込んでも , サブタイマはクリアできません。 • サブクロック (SBCLK) の発振中 ( クロックソース設定レジスタ (CSELR) の SCEN ビット =1) • サブクロック (SBCLK) の発振停止中 / 発振安定待ち中 ( クロックソース監視レジスタ (CMONR) の SCRDY ビット =0) ■ 割込みの設定手順 サブタイマ制御レジスタ (STMCR) の設定手順例は次のとおりです。 1. STIE ビットでサブタイマ割込みを禁止 (STIE=0) 2. STIF ビットでサブタイマ割込みフラグをクリア (STIF=0) 3. STE ビットでサブタイマの動作を禁止 (STE=0) 4. STC ビットを読み出して , サブタイマが通常動作中であることを確認 (STC=0) 5. STS2 ∼ STS0 ビットでタイマ周期を設定 6. STIE ビットで , サブタイマ割込みを許可 (STIE=1) 7. STE ビットで , サブタイマの動作を許可 (STE=1) STS2∼STS0ビットで設定した周期が経過すると, サブタイマ割込み要求が発生し , 割込み処理ルーチンへ移行します。 8. STIF ビットで , サブタイマ割込みフラグをクリア (STIF=0) 9. STIF ビットを 1 回読み出して , サブタイマ割込みフラグのクリアを完了させる。 RETI 命令で割込み処理ルーチンから , 通常のプログラム処理動作へ復帰します。 < 注意事項 > STIF ビットに "0" を書き込んでもサブタイマ割込みフラグはすぐにクリアされません。 STIF ビットを 1 回読み出すことでフラグクリア完了後 , RETI 命令で復帰させることがで きます。 156 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 7 章 サブタイマ 7.5 MB91665 シリーズ ストップモードへの遷移と時計モードについて 7.5.2 ストップモードへ遷移する前には , サブタイマによる割込み動作を禁止する必要があります。 ストップモードへの遷移は次の手順で行ってください。 1. クロックソース設定レジスタ (CSELR) の PCEN ビットで , PLL クロック (PLLCLK) の発振を停止 (PCEN=0) 2. サブタイマ制御レジスタ (STMCR) の STIE ビットで , サブタイマ割込みを禁止 (STIE=0) 3. サブタイマ制御レジスタ (STMCR) の STE ビットで , サブタイマの動作を禁止 (STE=0) 4. サブタイマ制御レジスタ (STMCR) の STC ビットを読み出して , サブタイマがクリ ア中でないことを確認 (STC=0) 5. サブタイマ制御レジスタ (STMCR) の STIF ビットで , サブタイマ割込みフラグをク リア (STIF=0) 6. 発振安定待ち設定レジスタ (CSTBR) の SOSW2 ∼ SOSW0 ビットで , サブクロック (SBCLK) の発振安定待ち時間を設定 7. ストップモードへ遷移 < 注意事項 > ストップモードへ遷移する前に , 必ず PLL 発振を停止してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 157 第 7 章 サブタイマ 7.5 158 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 低消費電力モードの機能と動作について説明しま す。 8.1 概要 8.2 構成 8.3 レジスタ 8.4 動作説明と設定手順例 8.5 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 159 第 8 章 低消費電力モード 8.1 8.1 MB91665 シリーズ 概要 本製品は , 消費電力を低減するために低消費電力モードを利用することができます。 ■ 概要 本製品では次のように消費電力を制御することができます。 • クロック制御 - クロック分周 各動作クロックの分周比を変更することで , 動作周波数を落とすことができま す。 - クロック停止 特定のクロックを指定して停止させることができます。 • ドーズモード 設定した動作率で CPU を繰り返し間欠動作させるモードです。 • スリープモード 周辺機能のみを動作させるモードです。次の 2 種類の中から選択できます。 - CPU スリープモード CPU の動作を停止させるモードです。 - バススリープモード CPU とオンチップバスの動作を停止させるモードです。 • スタンバイモード 次の 3 種類の中から選択できます。 - メインタイマモード メインクロック発振以外の動作をすべて停止できるモードです。 サブクロック発振は任意に設定できます。 - 時計モード サブクロック発振以外の動作をすべて停止できるモードです。 - ストップモード すべてのクロック発振と動作を停止させるモードです。 160 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.2 MB91665 シリーズ 構成 8.2 消費電力制御部の構成を示します。 ■ 消費電力制御部のブロックダイヤグラム 消費電力制御部のブロックダイヤグラムを図 8.2-1 に示します。 図 8.2-1 消費電力制御部のブロックダイヤグラム RUN [3:0] RUN SLP [3:0] リロード値 選択回路 SLP S 1 1 Q > [5] [4] [3] [2] [1] [0] SLP 値カウント R 終了 CPU スリープ要求 RUN 値カウント 終了 DOZE カウンタ (6 ビットダウンカウンタ ) 周辺クロック (PCLK) DOZE SLEEP S STBCR 読出し Q バススリープ要求 > R SLVL [1] TIMER S STBCR 読出し Q > クロック停止要求 R バスアクノリッジ STOP STBCR 読出し S Q 発振停止要求 > R 復帰 リセット (RST) STBCR:スタンバイ制御レジスタ (STBCR) S :セット R :リセット Q :出力 • スタンバイ制御レジスタ (STBCR) 低消費電力モードを制御するレジスタです。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 161 第 8 章 低消費電力モード 8.2 • MB91665 シリーズ スリープレート設定レジスタ (SLPRR) ドーズモード時の , 動作状態 (RUN 状態 ) の比率およびスリープ状態の比率 ( スリー プレート ) を設定するレジスタです。 • リロード値選択回路 スリープレート設定レジスタ (SLPRR) に設定された動作状態 (RUN 状態 ) の比率と スリープ状態の比率 ( スリープレート ) のどちらをリロードするか選択する回路で す。 ■ クロック 消費電力制御部で使用するクロックを表 8.2-1 に示します。 表 8.2-1 消費電力制御部で使用するクロック クロック名 動作クロック 162 内容 周辺クロック (PCLK) 備考 - FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.3 MB91665 シリーズ 8.3 レジスタ 消費電力を制御するために必要なレジスタの構成と機能について説明します。 ■ 消費電力を制御するレジスタ一覧 消費電力を制御するレジスタの一覧を表 8.3-1 に示します。 表 8.3-1 消費電力を制御するレジスタ一覧 レジスタ略称 STBCR SLPRR CM71-10158-1 レジスタ名 スタンバイ制御レジスタ スリープレート設定レジスタ FUJITSU SEMICONDUCTOR LIMITED 参照先 8.3.1 8.3.2 163 第 8 章 低消費電力モード 8.3 MB91665 シリーズ スタンバイ制御レジスタ (STBCR) 8.3.1 低消費電力モードを制御するレジスタです。 スタンバイ制御レジスタ (STBCR) のビット構成を図 8.3-1 に示します。 図 8.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" にクリアされます。ス トップモードからの復帰要因については , 「8.4.6 ストップモード時の動作」の「■ ス トップモードからの復帰」を参照してください。 [bit6]:TIMER ( メインタイマモード / 時計モード許可ビット ) メインタイマモード / 時計モードへの移行を許可するビットです。 書込み値 説明 0 メインタイマモード / 時計モードへ移行しません。 1 メインタイマモード / 時計モードへ移行します。 このビットで , メインタイマモード / 時計モードへの移行を許可後 , このレジスタを読 み出すとメインタイマモード / 時計モードに移行します。 ただし, STOPビットでストップモードへの移行を許可 (STOP=1) した場合は, このビッ トに "1" を書き込んでメインタイマモード / 時計モードへの移行を許可しても , この ビットの設定は無視されます。 メインタイマモード / 時計モードからの復帰要因が発生すると , このビットは "0" にク リアされます。メインタイマモードからの復帰要因については , 「8.4.4 メインタイマ モード時の動作」の「■ メインタイマモードからの復帰」を参照してください。時計 モードからの復帰要因については , 「8.4.5 時計モード時の動作」の「■ 時計モードか らの復帰」を参照してください。 164 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.3 MB91665 シリーズ [bit5]:SLEEP ( スリープモード許可ビット ) スリープモードへの移行を許可するビットです。 書込み値 説明 0 スリープモードへ移行しません。 1 スリープモードへ移行します。 このビットで , スリープモードへの移行を許可後 , このレジスタを読み出すとスリープ モードへ移行します。 ただし , STOP ビット /TIMER ビットでストップモード / メインタイマモード / 時計モー ドへの移行を許可 (STOP/TIMER=1) した場合は , このビットに "1" を書き込んでスリー プモードへの移行を許可しても , このビットの設定は無視されます。 スリープモードからの復帰要因が発生すると , このビットは "0" にクリアされます。ス リープモードからの復帰要因については , 「8.4.3 スリープモード時の動作」の「■ ス リープモードからの復帰」を参照してください。 [bit4]:DOZE ( ドーズモード許可ビット ) ドーズモードへの移行を許可するビットです。 書込み値 説明 0 ドーズモード (CPU 間欠スリープ ) へ移行しません。 1 CPU がドーズモード (CPU 間欠スリープ ) へ移行します。 SLVL1 ビットが "0" に設定されている場合は , ドーズモードからの復帰要因が発生す ると , このビットは "0" にクリアされます。ドーズモードからの復帰要因については , 「8.4.2 ドーズモード時の動作」の「■ ドーズモードからの復帰」を参照してください。 [bit3, bit2]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 165 第 8 章 低消費電力モード 8.3 MB91665 シリーズ [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 転送中は , オンチップバスは動作します。 < 注意事項 > 166 • ストップモード / メインタイマモード / 時計モード設定時に出力を Hi-Z にできる端子 は ,「付録 D CPU の状態における端子状態」を参照してください。 • SLVL0 ビットの設定値は動作に影響ありません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.3 MB91665 シリーズ スリープレート設定レジスタ (SLPRR) 8.3.2 ドーズモード時の, 動作状態 (RUN状態) の比率およびスリープ状態の比率 (スリープレート) を設定するレジスタです。 スリープレート設定レジスタ (SLPRR) のビット構成を図 8.3-2 に示します。 図 8.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) の周期 動作期間についての詳細は , 「8.4.2 ドーズモード時の動作」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 167 第 8 章 低消費電力モード 8.3 MB91665 シリーズ [bit3 ∼ bit0]:SLP3 ∼ SLP0 ( スリープ状態周期ビット ) ドーズモード時のスリープ状態の期間を設定します。 このビットに設定した値からスリープ状態の期間が次のように算出されます。 ( このビットの値 +1) × 4 × tCYCP tCYCP : 周辺クロック (PCLK) の周期 スリープ状態の期間についての詳細は , 「8.4.2 ドーズモード時の動作」を参照してく ださい。 < 注意事項 > 168 • CPU がスリープ要求を受け付けるときに , 遅延が生じる場合があります。その場合は , 上記の計算式で得られた期間よりもスリープ期間が短くなります。 • スリープ状態の期間が短い場合 , CPU の動作状況によっては , スリープ状態にならな い場合があります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ 8.4 動作説明と設定手順例 低消費電力モードの動作や使用方法と設定手順例について説明します。 ■ 概要 動作クロックの分周比を変更したり , 動作クロックを停止させて消費電力を低減した りすることができます。 また , 次の低消費電力モードを使用することができます。 • ドーズモード 設定した動作率で CPU を繰り返し間欠動作させるモードです。 設定した期間で CPU の動作と停止を交互に繰り返すことで , CPU の平均消費電力 を低減できます。 • スリープモード CPU やオンチップバスを停止させ , 周辺機能のみを動作させるモードです。 次の 2 種類の中から選択できます。 - CPU スリープモード CPU の動作を停止させるモードです。 - バススリープモード CPU とオンチップバスの動作を停止させるモードです。 • スタンバイモード デバイス全体を停止させ , 待機状態にするモードです。 次の 3 種類の中から選択できます。 8.4.1 - メインタイマモード - 時計モード - ストップモード クロック制御時の動作 本製品に内蔵されている各動作クロックを調整することで消費電力とCPUの処理能力の最適 化を行うことができます。 ■ 概要 クロックを制御して消費電力を低減するには , 次の 2 つの方法があります。 • クロック分周 各動作クロックの分周比を変更することで , 動作周波数を落とすことができます。 • クロック停止 特定のクロックを指定して停止させることができます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 169 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ■ クロック分周 各動作クロックの分周比を変更することで消費電力を低減できます。動作クロックの 分周比は個別に設定することができます。 各動作クロックと設定可能な分周比を表 8.4-1 に示します。 表 8.4-1 動作クロックと設定可能な分周比 動作クロック 分周比 ベースクロック (BCLK) ソースクロック (SRCCLK) の 1 ∼ 8 分周 外部バスクロック (TCLK) ベースクロック (BCLK) の 1 ∼ 8 分周 周辺クロック (PCLK) ベースクロック (BCLK) の 1 ∼ 16 分周 < 注意事項 > 分周方法や条件は動作クロックによって異なります。動作クロックの分周については ,「第 5 章 クロック分周制御部」を参照してください。 ■ クロックの停止 使用しない動作クロックを停止することで , 消費電力を低減することができます。 停止できる動作クロックと供給 / 停止タイミングの対応を表 8.4-2 に示します。 表 8.4-2 停止できる動作クロックと供給 / 停止タイミングとの対応 動作クロック 外部バスクロック (TCLK) 供給 / 停止タイミング バススリープ中 外部バスクロック (TCLK) の停止を許可すると , 外部バスを使用したアクセスが行わ れない間などは , 自動的に外部バスクロック (TCLK) の供給を停止します。 アクセスが行われると , 自動的に供給を再開し , アクセス終了後に再度 , 供給を停止し ます。外部バスクロック (TCLK) の停止条件については , 「第 5 章 クロック分周制御 部」を参照してください。 170 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ドーズモード時の動作 8.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) の周期 それぞれの期間について図 8.4-1 に示します。 図 8.4-1 動作期間とスリープ状態の期間 PCLK CPU 動作 SLEEP RUN SLEEP (RUN+1) × 4 × tCYCP (SLP+1) × 4 × tCYCP RUN tCYCP :周辺クロック (PCLK) の周期 SLEEP :スリープ状態 RUN :動作中 < 注意事項 > • 上記の計算式は , CPU がスリープ要求を受け付けるときの遅延時間を含みません。そ のため , 誤差が生じる場合があります。 • スリープ状態の期間が短い場合 , CPU の動作状況によっては , スリープ状態にならな い場合があります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 171 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ■ 移行 周期を設定後 , スタンバイ制御レジスタ (STBCR) の DOZE ビットに "1" を書き込むと , ドーズモードへ移行し , スリープレート設定レジスタ (SLPRR) の設定にしたがって CPU が動作と停止を繰り返す間欠動作を開始します。 ドーズモードから復帰する場合は , スタンバイ制御レジスタ (STBCR) の DOZE ビット に "0" を書き込んでください。 < 注意事項 > ドーズモード中にスリープレート設定レジスタ (SLPRR) を書き換えた場合は , 次の停止 / 動作移行タイミングで書き換えた設定が反映されます。 ■ ドーズモードからの復帰 次のいずれかの場合に CPU がドーズモードから復帰します。 • 本デバイスがリセットされた • スタンバイ制御レジスタ (STBCR) の DOZE ビットに "0" が書き込まれた • スタンバイ制御レジスタ (STBCR) の SLVL1 ビットが "0" のときに , 割込み要求が発 生した 上記以外の場合は , 設定が維持されるためスリープモード , メインタイマモード , 時計 モード , ストップモードからの復帰後も , ドーズモードを利用できます。 8.4.3 スリープモード時の動作 イベント待ち状態での消費電力を低減させるために利用するモードです。 スリープモードになると, 復帰要因が発生するまでスリープモードを継続し, 復帰要因が発生 すると 2 ∼ 3 クロックの周期でプログラム動作へ復帰できます。 ■ 概要 スリープモードを利用すると , CPU とオンチップバスを停止させ周辺機能のみが動作 するため , イベント待ち状態での消費電力を大幅に低減することができます。 スリープモードには次の 2 つのモードが用意されています。 • CPU スリープモード CPU のみを停止させるモードです。 DMAコントローラ (DMAC) やオンチップバスへのクロックは供給されているので, 動作を継続できます。 バススリープモードより電力を消費しますが , DMA 転送要求に早く対応できます。 172 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ • バススリープモード CPU とオンチップバスの動作を停止させるモードです。 DMA コントローラ (DMAC) やオンチップバスへのクロック供給も停止します。ク ロックの停止については , 「第 5 章 クロック分周制御部」を参照してください。 ただし , DMA 転送要求が受け付けられると , 一時的に DMA コントローラ (DMAC) やオンチップバスへのクロック供給が再開し , DMA 転送を行うことができます。 DMA 転送が終了すると , クロックの供給が再度停止します。 分周設定レジスタ 1 (DIVR1) の TSTP ビットで , バススリープモード時に外部バス クロック (TCLK) の供給を停止するかどうかを設定できます。 分周設定レジスタ 1 (DIVR1) については , 「5.4.2 分周設定レジスタ 1 (DIVR1)」を 参照してください。 CPU スリープモード時より , DMA 転送要求に対する反応が遅れますが , 消費電力を 低減できます。 ■ 設定 スリープモードへ移行する前に必要な設定を表 8.4-3 に示します。 表 8.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 173 第 8 章 低消費電力モード 8.4 MB91665 シリーズ < 注意事項 > スリープモードに移行する前に 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 がスリープモードから復帰します。 • 本デバイスがリセットされた • 割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 ) 割込みレベルについては , 「第 10 章 割込みコントローラ」を参照してください。 < 注意事項 > 174 • 割込み要求でスリープモードから復帰したときに , CPU が割込み要求を受け付けな かった場合は , スリープモードになった次の命令からプログラムが実行されます。CPU が割込み要求を受け付けた場合は , 割込み処理ルーチンへ分岐します。 • バススリープモードでは , DMA 転送要求が発生すると , オンチップバスクロック (HCLK) を一時的に復帰させ , DMA 転送を行います。また , DMA 転送が終了するとオ ンチップバスクロック (HCLK) を再度停止します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ メインタイマモード時の動作 8.4.4 メインタイマモードは , スタンバイモードの 1 つとして分類されます。スタンバイモードは , デバイス全体を停止させて , 待機状態にするモードです。そのため , 外部イベントの発生待ち 状態での消費電力を大幅に低減できます。ただし , 許可されたクロックの発振は動作するた め , ストップモードほどは消費電力は低減できません。 メインタイマモード時は , CPU のソースクロック (SRCCLK) としてメインクロック (MCLK) の発振を選択してください。 メインタイマモードになると, 復帰要因が発生するまでメインタイマモードを継続し, 復帰要 因が発生すると 2 ∼ 3 クロックの周期でプログラム動作へ復帰できます。 ■ 概要 メインタイマモードでは , CPU のソースクロック (SRCCLK) としてメインクロック (MCLK) の発振が許可されているため , メインタイマのカウント動作が実行されます。 サブクロック (SBCLK) の発振は任意に設定可能です。 ■ 設定 メインタイマモードへ移行する前に必要な設定を表 8.4-4 に示します。 表 8.4-4 設定レジスタ レジスタ クロックソース 設定レジスタ (CSELR) スタンバイ制御 レジスタ (STBCR) ビット CKS1, CKS0 説明 CPU のソースクロック (SRCCLK) にメインクロッ ク (MCLK) を選択 (CKS1, CKS0=00 または 01) PCEN PLL クロック (PLLCLK) の発振を停止 (PCEN=0) SCEN サブクロック (SBCLK) の発振を設定 0= 発振を停止 1= 発振する SLVL1 メインタイマモード時の端子から出力信号を設定 0= メインタイマモードになる前の状態を保持 1=Hi-Z < 注意事項 > メインタイマモードに移行する時点で , ドーズモードを設定しているときに , スタンバイ 制御レジスタ (STBCR) の SLVL1 ビットが "0" に設定されていると , メインタイマモード からの復帰時に DOZE ビット "0" にクリアされ , ドーズモードが終了します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 175 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ■ 移行 次の手順を実施するとメインタイマモードへ移行します。 1. スタンバイ制御レジスタ (STBCR) のSTOPビットに"0", TIMERビットに"1", SLEEP ビットに "0" を書き込む 2. スタンバイ制御レジスタ (STBCR) を読み出す < 注意事項 > メインタイマモードに移行する前に CPU が次の命令を実行しないよう , 例 ) のように手 順 2 の次の命令で読み出した値を使用するダミー処理を行ってください。 例) LDI #value_of_timer, R0 ; TIMER ビット =1, SLVL1, SLVL0 ビット設定 LDI #_STBCR, R12 ; STB R0, @R12 ; 書込み LDUB @R12, R0 ; 読出し ( メインタイマモードへ移行 ) MOV R0, R0 ; ダミー処理 NOP ; ダミー処理 NOP ; ダミー処理 ■ メインタイマモードからの復帰 次のいずれかの場合に CPU がメインタイマモードから復帰します。 • 本デバイスがリセットされた • 以下の割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 ) - メインタイマ割込み - サブタイマ割込み - 時計カウンタ割込み - 外部割込み - USB ファンクションの WKUP ビットによる割込み 割込みレベルについては , 「第 10 章 割込みコントローラ」を参照してください。 < 注意事項 > 割込み要求でメインタイマモードから復帰したときに , CPU が割込み要求を受け付けな かった場合は , メインタイマモードになった次の命令からプログラムが実行されます。 CPU が割込み要求を受け付けた場合は , 割込み処理ルーチンへ分岐します。 176 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ 時計モード時の動作 8.4.5 時計モードは , スタンバイモードの 1 つとして分類されます。スタンバイモードは , デバイス 全体を停止させて , 待機状態にするモードです。そのため , 外部イベントの発生待ち状態での 消費電力を大幅に低減できます。ただし , 許可されたクロックの発振は動作するため , ストッ プモードほどは消費電力は低減できません。 時計モード時は , CPU のソースクロック (SRCCLK) としてサブクロック (SBCLK) の発振を 選択してください。 時計モードになると , 復帰要因が発生するまで時計モードを継続し , 復帰要因が発生すると 2 ∼ 3 クロックの周期でプログラム動作へ復帰できます。 ■ 概要 時計モードでは , CPU のソースクロック (SRCCLK) としてサブクロック (SBCLK) の発 振が許可されているため , サブタイマと時計カウンタのカウント動作が実行されます。 ■ 設定 時計モードへ移行する前に必要な設定を表 8.4-5 に示します。 表 8.4-5 設定レジスタ レジスタ クロックソース 設定レジスタ (CSELR) スタンバイ制御 レジスタ (STBCR) ビット CKS1, CKS0 説明 CPU のソースクロック (SRCCLK) にサブクロック (SBCLK) を選択 (CKS1, CKS0=11) PCEN PLL クロック (PLLCLK) の発振を停止 (PCEN=0) MCEN メインクロック (MCLK) の発振を停止 (MCEN=0) SLVL1 時計モード時の端子から出力信号を設定 0= 時計モードになる前の状態を保持 1=Hi-Z < 注意事項 > 時計モードに移行する時点で , ドーズモードを設定しているときに , スタンバイ制御レジ スタ (STBCR) の SLVL1 ビットが "0" に設定されていると , 時計モードからの復帰時に DOZE ビット "0" にクリアされ , ドーズモードが終了します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 177 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ■ 移行 次の手順を実施すると時計モードへ移行します。 1. スタンバイ制御レジスタ (STBCR) のSTOPビットに"0", TIMERビットに"1", SLEEP ビットに "0" を書き込む 2. スタンバイ制御レジスタ (STBCR) を読み出す < 注意事項 > 時計モードに移行する前に CPU が次の命令を実行しないよう , 例 ) のように手順 2 の次 の命令で読み出した値を使用するダミー処理を行ってください。 例) LDI #value_of_timer, R0 ; TIMER ビット =1, SLVL1, SLVL0 ビット設定 LDI #_STBCR, R12 ; STB R0, @R12 ; 書込み LDUB @R12, R0 ; 読出し ( 時計モードへ移行 ) MOV R0, R0 ; ダミー処理 NOP ; ダミー処理 NOP ; ダミー処理 ■ 時計モードからの復帰 次のいずれかの場合に CPU が時計モードから復帰します。 • 本デバイスがリセットされた • 以下の割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 ) - サブタイマの割込み要求 - 時計カウンタの割込み要求 - 外部割込みの要求 - USB ファンクションの WKUP ビットによる割込み 割込みレベルについては「第 10 章 割込みコントローラ」を参照してください。 < 注意事項 > 割込み要求で時計モードから復帰したときに, CPUが割込み要求を受け付けなかった場合 は , 時計モードになった次の命令からプログラムが実行されます。CPU が割込み要求を受 け付けた場合は , 割込み処理ルーチンへ分岐します。 178 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ストップモード時の動作 8.4.6 ストップモードは , スタンバイモードの 1 つとして分類されます。スタンバイモードは , デバ イス全体を停止させて , 待機状態にするモードです。そのため , 外部イベントの発生待ち状態 での消費電力を大幅に低減できます。 ストップモードは , すべてのクロックの発振を停止し , 消費電力を最小にするモードです。 ■ 概要 ストップモードを利用すると , すべてのクロックの発振が停止するため消費電力を最 小にできます。 ただし , 復帰要求が発生してからプログラム動作へ復帰するまでには発振安定待ち時 間を必要とします。 ■ 設定 ストップモードになる前とストップモードからの復帰後の CPU のソースクロック (SRCCLK) によって , 設定が異なります。 ● ストップモード前後の CPU のソースクロック (SRCCLK) がサブクロック (SBCLK) の場合 ストップモードへ移行する前に必要な設定を表 8.4-6 に示します。 表 8.4-6 設定レジスタ レジスタ ビット クロックソース設定 CKS1, CKS0 レジスタ (CSELR) PCEN スタンバイ制御レジ SLVL1 スタ (STBCR) 説明 CPU のソースクロック (SRCCLK) にサブク ロック (SBCLK) を選択 (CKS1, CKS0=11) PLL クロック (PLLCLK) の発振を停止 (PCEN=0) ストップモード時の端子から出力信号を設 定 0= ストップモードになる前の状態を保持 1=Hi-Z < 注意事項 > ストップモードに移行する時点で , ドーズモードを設定しているときに , スタンバイ制御 レジスタ (STBCR) の SLVL1 ビットが "0" に設定されていると , ストップモードからの復 帰時に DOZE ビット "0" にクリアされ , ドーズモードが終了します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 179 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ● ストップモード前後のCPUのソースクロック (SRCCLK) がメインクロック (MCLK) の場合 ストップモードへ移行する前に必要な設定を表 8.4-7 に示します。 表 8.4-7 設定レジスタ レジスタ ビット クロックソース設定 CKS1, CKS0 レジスタ (CSELR) 説明 CPU のソースクロック (SRCCLK) にメイ ンクロック (MCLK) を選択 (CKS1, CKS0=00/01) PCEN PLL クロック (PLLCLK) の発振を停止 (PCEN=0) スタンバイ制御レジ SLVL1 スタ (STBCR) ストップモード時の端子から出力信号を 設定 0= ストップモードになる前の状態を保持 1=Hi-Z < 注意事項 > ストップモードに移行する時点で , ドーズモードを設定しているときに , スタンバイ制御 レジスタ (STBCR) の SLVL1 ビットが "0" に設定されていると , ストップモードからの復 帰時に DOZE ビット "0" にクリアされ , ドーズモードが終了します。 ■ 移行 次の手順を実施するとストップモードへ移行します。 1. スタンバイ制御レジスタ (STBCR) のSTOPビットに"1", TIMERビットに"0", SLEEP ビットに "0" を書き込む 2. スタンバイ制御レジスタ (STBCR) を読み出す < 注意事項 > ストップモードに移行する前に CPU が次の命令を実行しないよう , 例 ) のように手順 2 の次の命令で読み出した値を使用するダミー処理を行ってください。 例) 180 LDI #value_of_stop, R0 ; STOP ビット =1, SLVL1, SLVL0 ビット設定 LDI #_STBCR, R12 ; STB R0, @R12 ; 書込み LDUB @R12, R0 ; 読出し ( ストップモードへ移行 ) MOV R0, R0 ; ダミー処理 NOP ; ダミー処理 NOP ; ダミー処理 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 8 章 低消費電力モード 8.4 MB91665 シリーズ ■ ストップモードからの復帰 次のいずれかの場合に CPU がストップモードから復帰します。 • 本デバイスがリセットされた • 以下の割込み要求が発生した ( 割込みレベルが "31" 以外の割込み要求 ) - 外部割込み - USB ファンクションの WKUP ビットによる割込み 割込みレベルについては , 「第 10 章 割込みコントローラ」を参照してください。 < 注意事項 > 割込み要求でストップモードから復帰したときに, CPUが割込み要求を受け付けなかった 場合は , ストップモードになった次の命令からプログラムが実行されます。CPU が割込み 要求を受け付けた場合は , 割込み処理ルーチンへ分岐します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 181 第 8 章 低消費電力モード 8.5 8.5 MB91665 シリーズ 使用上の注意 低消費電力モードを使用する際は , 次の点に注意してください。 • 次の低消費電力モードに切り換えるときに , 割込み要求が発生していると低消費電 力モードへ移行できません。 • - ドーズモード - スリープモード - メインタイマモード - 時計モード - ストップモード 例として , 次の場合はスリープモードにはなりません。割込み要求をクリアしてか らスリープモードへ移行してください。 - スリープモード中, CPUが受け付けない割込み要求によりスリープモードから復 帰した後で , 割込み要求をクリアせずに再びスリープモードへの移行動作を行 なった。 182 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット リセットの機能と動作について説明します。 9.1 概要 9.2 構成 9.3 端子 9.4 レジスタ 9.5 動作説明 9.6 動作状態と遷移 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 183 第 9 章 リセット 9.1 9.1 MB91665 シリーズ 概要 内部回路を初期化するためのリセットについて説明します。 ■ 概要 本デバイスには , 次の 3 種類のリセット要因があります。 • INIT 端子入力 • ウォッチドッグリセット 0 • ソフトウェアリセット リセット要因が発生すると , すべてのプログラムと内部回路の動作を停止して , 状態を 初期化します。 この状態をリセット状態とよびます。 リセット要因が解除されると , プログラムおよびハードウェア動作が開始されます。 184 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.2 MB91665 シリーズ 構成 9.2 リセットの構成を示します。 ■ リセットのブロックダイヤグラム リセットのブロックダイヤグラムを図 9.2-1 に示します。 図 9.2-1 リセットのブロックダイヤグラム リセット (RST) リセット要求 S Q RDLY R RSTCR 周辺クロック (PCLK) オ ン チ ッ プ バ ス INIT 端子 遅延 セレクタ 8 ビット 周辺 クロック (PCLK) リセット発生 4 ビット 延長カウンタ 遅延カウンタ バスアイドル応答 イニシャライズリセット (INIT) ノイズ フィルタ S 周辺 クロック 4 ビット (PCLK) 延長カウンタ Q R 周辺クロック (PCLK) 2 ビット 要因延長カウンタ リセット 要求フラグ リセット発生 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 185 第 9 章 リセット 9.2 • MB91665 シリーズ 遅延カウンタ リセット要求が発生してから , バスがアイドル状態になるまでの期間をカウントし ます。 一定時間内にバスアイドル状態にならない場合は , 強制的にイニシャライズリセッ ト (INIT) が発行されます。 • 要因延長カウンタ リセット要因を延長する時間をカウントするカウンタです。各リセット要因は , リ セットが発行されるまで保持されます。 ■ クロック リセットで使用するクロックを表 9.2-1 に示します。 表 9.2-1 リセットで使用するクロック クロック名 動作クロック 186 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.3 MB91665 シリーズ 9.3 端子 リセットで使用する端子について説明します。 ■ 概要 リセットには次の端子があります。 • INIT 端子 リセット要求を入力する , 外部入力端子です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 187 第 9 章 リセット 9.4 9.4 MB91665 シリーズ レジスタ リセットで使用するレジスタの構成と機能について説明します。 ■ リセットのレジスタ一覧 リセットのレジスタ一覧を表 9.4-1 に示します。 表 9.4-1 リセットのレジスタ一覧 188 レジスタ略称 RSTRR レジスタ名 リセット要因レジスタ 参照先 9.4.1 RSTCR リセット制御レジスタ 9.4.2 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.4 MB91665 シリーズ リセット要因レジスタ (RSTRR) 9.4.1 リセット要因を記憶するレジスタです。 電源投入後 , このレジスタを読み出すまでの間に発生したリセット要因をすべて記憶 します。 リセット要因レジスタ (RSTRR) のビット構成を図 9.4-1 に示します。 図 9.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-10158-1 説明 イレギュラーリセットは検出されていません。 メモリ内容が破壊されていないことを保証します。 イレギュラーリセットが検出されました。 直前のリセットで , メモリ内容が破壊された可能性があります。 FUJITSU SEMICONDUCTOR LIMITED 189 第 9 章 リセット 9.4 MB91665 シリーズ イレギュラーリセットについては , 「9.5.3 リセットの動作」の「■ イレギュラーリ セット」を参照してください。 [bit6]:ERST ( リセット端子入力ビット ) INIT 端子入力のリセットが発生したかどうかを示します。 読出し値 説明 0 INIT 端子入力のリセットは発生していません。 1 INIT 端子入力のリセットが発生しました。 [bit5]:未定義ビット 読出し時 値は不定です。 [bit4]:WDG0 ( ウォッチドッグリセット 0 ビット ) ウォッチドッグリセット 0 が発生したかどうかを示します。 ウォッチドッグタイマ 0 でリセットタイムアウトが発生した場合は , IRRST ビットも "1" に変わります。 読出し値 説明 0 ウォッチドッグリセット 0 は発生していません。 1 ウォッチドッグリセット 0 が発生しました。 [bit3 ∼ bit1]:未定義ビット 読出し時 値は不定です。 [bit0]:SRST ( ソフトウェアリセットビット ) ソフトウェアリセット (RSTCR:SRST) が発生したかどうかを示します。 ソフトウェアリセット (RSTCR:SRST) でリセットタイムアウトが発生していた場合 は , IRRST ビットも "1" に変わります。 読出し値 190 説明 0 ソフトウェアリセット (RSTCR:SRST) は発生していません。 1 ソフトウェアリセット (RSTCR:SRST) が発生しました。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.4 MB91665 シリーズ リセット制御レジスタ (RSTCR) 9.4.2 リセットの発行を制御するレジスタです。 リセット制御レジスタ (RSTCR) のビット構成を図 9.4-2 に示します。 図 9.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 回のみ可 能です。 • 遅延サイクルの設定が短い場合は , リセットタイムアウトによるイレギュラーリセッ トが発生する可能性が高くなります。一方 , 遅延サイクルの設定が長い場合は , リセッ ト要因が発生してからリセットが発行されるまでに長時間かかることがあります。 • イレギュラーリセットについては , 「9.5.3 リセットの動作」の「■ イレギュラーリ セット」を参照してください。 [bit4 ∼ bit1]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 191 第 9 章 リセット 9.4 MB91665 シリーズ [bit0]:SRST ( ソフトウェアリセットビット ) このビットに "1" を書き込んだ後 , リセット制御レジスタ (RSTCR) を読み出すと , ソフ トウェアリセット要求が発生します。 書込み値 説明 0 リセット要求を発生しません。 1 本レジスタの読出しによってリセット要求を発生します。 < 注意事項 > 192 • このビットに "1" を書き込んだ後は , リセットが発生するまで , リセット制御レジスタ (RSTCR) への書込みは無視されます。 • SRST=1 でソフトウェアリセット要求を発生させるまえに , ソースクロックをメイン クロック (MCLK) の 2 分周に切り換えてください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.5 MB91665 シリーズ 9.5 動作説明 リセットの動作について説明します。 9.5.1 リセットの種類 本デバイスには , 3 種類のリセットがあり , それぞれ発生要因や初期化する内容が異な ります。 • 電源投入リセット (SINIT) 分周回路の不定状態を初期化するために使用します。 また , 同時にイニシャライズリセット (INIT) とリセット (RST) を発行します。 リセット要因 ・INIT 端子へ "L" レベルを入力 初期化対象 ・メインクロック (MCLK) の発振安定待ち時間 同時に発生するリセット ・イニシャライズリセット (INIT) ・リセット (RST) • イニシャライズリセット (INIT) クロック制御の設定をリセットするために , 次のレジスタを初期化します ・クロックソース設定レジスタ (CSELR)・クロックソース監視レジスタ (CMONR) ・PLL設定レジスタ (PLLCR) ・発振安定待ち設定レジスタ (CSTBR) また , 同時に , リセット (RST) を発行します。 リセット要因 ・INIT 端子入力 ・リセットタイムアウト ・ウォッチドッグリセット 0 初期化対象 ・ソースクロック = メインクロック (MCLK) の 2 分周 ・クロック発振 = メイン発振 , サブ /PLL 停止 ・PLL マクロ発振クロックの分周比 ・PLL クロック (PLLCLK) の逓倍率 ・PLL クロックの発振安定待ち時間 ・PLL 入力クロックの分周比 ・サブクロックの発振安定待ち時間 同時に発生するリセット ・リセット (RST) • リセット (RST) プログラム動作を初期化するリセットです。 CM71-10158-1 リセット要因 ・INIT 端子入力 ・リセットタイムアウト ・ウォッチドッグリセット 0 ・ソフトウェアリセット 初期化対象 電源投入リセット (SINIT) およびイニシャライズリセッ ト (INIT) で初期化されるレジスタ以外のすべてのレジ スタ設定およびハードウェア 同時に発生するリセット なし FUJITSU SEMICONDUCTOR LIMITED 193 第 9 章 リセット 9.5 9.5.2 MB91665 シリーズ リセット要因 3 種類のリセット要因があります。リセット要因によって , 発行されるリセットのレベ ルが異なります。 また, バスアクセスの完了を確認せずに, イニシャライズリセット (INIT) を発行するイ レギュラーリセットが発生するかどうかもリセット要因によって異なります。 • INIT 端子入力 INIT 端子に "L" レベルが入力されている間 , イニシャライズリセット (INIT) 要求が 発生します。 発生要因 INIT 端子へ "L" レベルを入力 解除要因 INIT 端子へ "H" レベルを入力 リセットレベル 電源投入リセット (SINIT), イニシャライズリセット (INIT), リ セット (RST) すべてを発行 対応フラグ リセット要因レジスタ (RSTRR) の ERST ビット =1 動作 バスアクセスの完了を待たずに電源投入リセット (SINIT), イニ シャライズリセット (INIT), リセット (RST) を発行 ( イレギュラー リセット ) • ウォッチドッグリセット 0 ウォッチドッグタイマで設定した周期が経過すると , ウォッチドッグリセット 0 要 求が発生します。ウォッチドッグリセット 0 要求が発生すると , イニシャライズリ セット (INIT) が発行されます。 194 発生要因 ウォッチドッグタイマで設定した周期が経過 解除要因 イニシャライズリセット (INIT) の発行後 , 自動的に解除 リセットレベル イニシャライズリセット (INIT) とリセット (RST) を発行 対応フラグ リセット要因レジスタ (RSTRR) の WDG0 ビット =1 動作 ・ バスアクセスの完了を確認してからイニシャライズリセット (INIT) とリセット (RST) を発行 ・ バスアクセスが完了せずリセットタイムアウトが発生した場合 は , 強制的にイニシャライズリセット (INIT) とリセット (RST) を発行 ( イレギュラーリセット ) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.5 MB91665 シリーズ • ソフトウェアリセット (RSTCR:SRST) リセット制御レジスタ (RSTCR) の SRST ビットに "1" を書き込んだ後に , リセット 制御レジスタ (RSTCR) を読み出すと , リセット (RST) 要求が発生します。 発生要因 リセット制御レジスタ (RSTCR) の SRST ビットに "1" を書き込ん だ後に , リセット制御レジスタ (RSTCR) を読み出す * SRST ビットに "1" を書き込む前にソースクロック (SRCCLK) を メインクロック (MCLK) の 2 分周に切り換えてください。 解除要因 リセット (RST) の発行後 , 自動的に解除 リセットレベル リセット (RST) のみを発行 対応フラグ リセット要因レジスタ (RSTRR) の SRST ビット =1 動作 ・バスアクセスの完了を確認してからリセット (RST) を発行 ・バスアクセスが完了せずリセットタイムアウトが発生した場合 は , 強制的にイニシャライズリセット (INIT) とリセット (RST) を 発行 ( イレギュラーリセット ) ■ リセット要因判定フロー 図 9.5-1 リセット要因判定フロー RSTRRをリード (RSTRRの全ビットはクリアされる) No IRRST=1 ? Yes No ERST=1 ? Yes INIT端子=Lによる リセット 9.5.3 下位6bitの判定 (リセットタイムアウト) 下位6bitの判定 リセットの動作 ■ リセット動作の流れ リセットが発生し , リセット状態に入ってから , CPU が動作を開始するまでの一連の動 作をリセットシーケンスとよびます。 リセットシーケンスを図 9.5-2 に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 195 第 9 章 リセット 9.5 MB91665 シリーズ 図 9.5-2 リセットシーケンス リセット要因発生 INIT 端子から "L" レベル入力 リセット要因発生 ウォッチドッグリセット 0 リセット要因発生 ソフトウェアリセット バスアイドル待ち バスアイドル待ち リセット タイムアウト バスアイドル 状態 リセット タイムアウト バスアイドル 状態 電源投入リセット (SINIT 発行 ) イニシャライズリセット (INIT) 発行 リセット (RST) 発行 リセット (RST) 発行 イニシャライズリセット (INIT) 解除 リセット (RST) 解除 リセットベクタフェッチ プログラム開始 1. リセット要因の取り込みと延長 発生したリセット要因が非同期で取り込まれ , リセットが発行されるまで保持され ます。 2 ビットの要因延長カウンタを持ち , 最小でも 4T (T: 周辺クロック (PCLK) の周期 ) リセット要因を保持します。 2. リセット要求の発生 生成したリセット要求を内部バス制御部へ通知し , 次の処理を行います。 - CPU のプログラム動作の停止 ( スリープモードと同一処理。) - すべてのバスへアイドル要求が通知されたことの確認 同時に遅延カウンタがカウントを開始します。 196 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.5 MB91665 シリーズ 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) のリセット要因が解除された後の各 リセット発行シーケンスを図 9.5-3 に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 197 第 9 章 リセット 9.5 MB91665 シリーズ 図 9.5-3 電源投入リセット (SINIT) のリセット要因解除後の各リセット発行シーケンス PCLK SINIT INIT RST PCLK × 16 サイクル PCLK × 16 サイクル 発振安定待ち時間 + (PCLK × 4 サイクル ) PCLK SINIT INIT RST :周辺クロック (PCLK) :電源投入リセット (SINIT) :イニシャライズリセット (INIT) :リセット (RST) ■ イニシャライズリセット (INIT) イニシャライズリセット (INIT) が発行されると同時にリセット (RST) も発行されま す。 イニシャライズリセット (INIT) のリセット要因が解除された後の各リセット発行シー ケンスを図 9.5-4 に示します。 図 9.5-4 イニシャライズリセット (INIT) のリセット要因解除後の各リセット発行シーケンス PCLK リセット 要因 INIT RST PCLK × 4 サイクル PCLK × 16 サイクル PCLK × 16 サイクル PCLK :周辺クロック (PCLK) INIT :イニシャライズリセット (INIT) RST :リセット (RST) 198 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.5 MB91665 シリーズ ■ リセット (RST) リセット (RST) のリセット要因が解除された後の各リセット発行シーケンスを図 9.55 に示します。 図 9.5-5 リセット (RST) のリセット要因解除後の各リセット発行シーケンス PCLK リセット 要因 INIT L RST PCLK × 4 サイクル PCLK × 16 サイクル PCLK :周辺クロック (PCLK) INIT :イニシャライズリセット (INIT) RST :リセット (RST) イレギュラーリセット 9.5.4 次の場合にイレギュラーリセットが発生します。 • INIT 端子入力 (INIT) 時 • リセットタイムアウト発生時 ( ウォッチドッグリセット 0/ ソフトウェアリセット (RSTCR:SRST) 時 , バスから応 答がある前に , 遅延カウンタがオーバフローした ) イレギュラーリセットが発生すると , 次の処理が行われます。 • イニシャライズリセット (INIT) を発行 • リセット要因レジスタ (RSTRR) の IRRST ビットが "1" に変わる < 注意事項 > イレギュラーリセット発生時は , リセットが入力される時点でバスアクセスが行われてい た可能性があり , メモリ内容が破壊されていることがあります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 199 第 9 章 リセット 9.6 MB91665 シリーズ 動作状態と遷移 9.6 各種状態と , その制御について説明します。 ■ 動作状態 動作状態の遷移を図 9.6-1 に示します。 図 9.6-1 動作状態の遷移 ① INIT=L ⑩ クロックを必要としない外部割込み ② INIT=H ⑪ サブタイマ割込み / 時計カウンタ割込み ③ 発振安定待ち終了 ⑫ メイン→サブ切り替え ( 命令書込み ) ④ RST 解除 ⑬ サブ→メイン切り替え ( 命令書込み ) ⑤ ソフトウェアリセット (RST) ⑭ メイン→ PLL 切り替え ( 命令書込み ) ⑥ スリープモード ( 命令書込み ) ⑦ ストップモード ( 命令書込み ) ⑮ PLL →メイン切り替え ( 命令書込み ) ⑯ ウォッチドッグリセット / ソフトリセットのタイムアウト時 (INIT) ⑧メインタイマモード / 時計モード ( 命令書込み ) ⑰ INIT 解除 ⑨ 割込み ⑱ メインタイマ割込み / サブタイマ割込み / 時計カウンタ割込み パワーオン ① 電源投入リセット (SINIT) ② MCRDY=0 のとき ① メイン発振安定待ち ③ ⑥ MCRDY=1 のとき ① ① メインプログラム リセット (RST) メインタイマモード PLL RUN ① ⑯ ⑩ ④ ⑪ 時計モード ① ⑯ ⑤ ⑱ ⑧ ⑦ メインストップ ⑬ メイン RUN ドーズモード ⑥ ⑨ ① ⑨ ドーズモード ⑮ ⑭ ⑩ ① ⑯ 設定初期化 (INIT) ⑰ ① PLL スリープ リセット メインスリープ ⑫ ⑧ サブ RUN ドーズモード ① ① ⑥ サブストップ ⑦ ⑩ ⑨ サブスリープ ① ③ サブ発振安定待ち RUN ⑩ ③ メイン発振安定待ち RUN ① 200 ① ① FUJITSU SEMICONDUCTOR LIMITED ① CM71-10158-1 第 9 章 リセット 9.6 MB91665 シリーズ ● RUN 状態 ( 通常動作 ) プログラム実行状態です。 すべての内部クロックが供給され , すべての回路が動作可能な状態です。 ストップ状態とメインタイマモード状態と時計モード状態の外部端子の Hi-Z 制御は解 除されます。 ● スリープ状態 プログラム停止状態です。プログラム動作によって遷移します。 CPU のプログラム実行のみを停止します。周辺回路は動作が可能です。 各種内蔵メモリおよび外部バスは , DMA コントローラ (DMAC) が要求するまで停止し ます。 内部バスは , バススリープモードのとき , DMA コントローラ (DMAC) が要求するまで 停止状態です。 • 有効な割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。 • INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ遷移しま す。 ● 時計モード状態 デバイス停止状態です。プログラム動作によって遷移します。 発振回路 ( サブクロック (SBCLK) ) 以外の内部回路が停止します。 外部端子を一律 Hi-Z にすることができます。( 一部端子を除く ) • 外部割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。 • サブタイマ割込み , 時計カウンタ割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ 遷移します。 • INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ遷移しま す。 < 注意事項 > 時計モードに移行する前に , メインクロック (MCLK) と PLL クロック (PLLCLK) の発振を 停止してください。 ● メインタイマモード状態 デバイス停止状態です。プログラムによって遷移します。発振回路 ( メインクロック (MCLK), サブクロック (SBCLK)) 以外の内部回路が停止します。外部端子を一律 Hi-Z にすることができます ( 一部端子を除く )。 • 外部割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。 • メインタイマ割込み , サブタイマ割込み , 時計カウンタ割込み要求が発生すると , RUN 状態 ( 通常動作 ) へ遷移します。 • CM71-10158-1 INIT端子に"L"レベルが入力されると, 電源投入リセット(SINIT)状態へ遷移します。 FUJITSU SEMICONDUCTOR LIMITED 201 第 9 章 リセット 9.6 MB91665 シリーズ < 注意事項 > メインタイマモードに移行する前に PLL クロック (PLLCLK) の発振を停止してください。 ● ストップ状態 デバイス停止状態です。プログラム動作によって移行します。 すべての内部回路が停止します。 外部端子を一律 Hi-Z にすることができます。( 一部端子を除く ) • 外部割込み要求が発生すると , 発振安定待ち RUN 状態へ遷移します。 • INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ遷移しま す。 < 注意事項 > ストップ状態に移行する前に , PLL クロック (PLLCLK) の発振を停止してください。 ● 発振安定待ち RUN 状態 デバイス停止状態です。ストップ状態からの復帰後に移行します。 すべての内部回路が停止します。( 発振安定待ちのためのタイマ動作を除く ) 内部クロックはすべて停止しますが , 動作を許可されていた発振回路は動作していま す。 • 発振安定待ち時間が経過すると , RUN 状態 ( 通常動作 ) へ移行します。 • INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ移行しま す。 ● 発振安定待ちリセット (RST) 状態 デバイス停止状態です。電源投入リセット (SINIT) からの復帰後に移行します。 すべての内部回路が停止します。( 発振安定待ちのためのタイマ動作を除く ) 内部クロックはすべて停止しますが , メイン発振回路は動作しています。 • 発振安定待ち時間が経過すると , イニシャライズリセット (INIT) 状態へ移行しま す。 • INIT 端子に "L" レベルが入力されると , 電源投入リセット (SINIT) 状態へ移行しま す。 ● プログラムリセット (RST) 状態 プログラム初期化状態です。リセット (RST) 要求を受け付けたとき , またはイニシャラ イズリセット (INIT) 状態の終了後に移行します。 CPU のプログラム実行は停止し , プログラムカウンタは初期化されます。周辺回路は 初期化されます。( 一部を除く ) 202 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 9 章 リセット 9.6 MB91665 シリーズ すべての内部クロックと動作が許可されていた発振回路と PLL クロック (PLLCLK) は 動作しています。 • 内部回路に対してリセット (RST) 要求し , リセット (RST) 要求が消失すると , RUN 状態 ( 通常動作 ) へ移行します。 • INIT 端子に "L" が入力されると , 電源投入リセット (SINIT) 状態へ移行します。 ● イニシャライズリセット (INIT) 状態 全設定初期化状態です。イニシャライズリセット (INIT) 要求の受付けによって移行し ます。 CPU のプログラム実行は停止し , プログラムカウンタは初期化されます。周辺回路は すべて初期化されます。メインクロック (MCLK) 発振回路は動作します ( サブクロッ ク (SBCLK) 発振回路と PLL クロック (PLLCLK) 発振回路は動作を停止します ) 。INIT 端子への "L" レベル入力期間は , すべての内部クロックは停止しますが , それ以外では 動作します。 内部回路に対し , イニシャライズリセット (INIT) とリセット (RST) を出力します。 • イニシャライズリセット (INIT) 要求が消失すると , この状態は解除されて , プログ ラムリセット (RST) 状態へ移行します。 • INIT 端子に "L" が入力されると , 電源投入リセット (SINIT) 状態へ移行します。 ■ 各状態遷移要求の優先順位 どの状態においても , 各状態遷移要求は以下の優先順位に従います。ただし , 一部要求 は特定の状態でしか発生しませんので , その状態でしか有効になりません。 最強 電源投入リセット (SINIT) 要求 イニシャライズリセット (INIT) 要求 発振安定待ち時間の終了 発振安定待ちリセット状態 , 発振 安定待ち RUN 状態のみ発生 リセット (RST) 要求 最弱 CM71-10158-1 有効な割込み要求 RUN, スリープ , ストップ , 時計 モード状態のみ発生 ストップモード要求 ( レジスタ書込み ) RUN 状態のみ発生 時計モード要求 ( レジスタ書込み ) RUN 状態のみ発生 スリープモード要求 ( レジスタ書込み ) RUN 状態のみ発生 FUJITSU SEMICONDUCTOR LIMITED 203 第 9 章 リセット 9.6 204 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 10 章 割込みコントローラ 割込みコントローラの機能と動作について説明し ます。 10.1 概要 10.2 構成 10.3 レジスタ 10.4 動作説明と設定手順例 10.5 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 205 第 10 章 割込みコントローラ 10.1 MB91665 シリーズ 10.1 概要 割込みコントローラは , 割込み要求の優先度を判定して , 要求を CPU へ送ります。 ■ 概要 割込みコントローラには次の機能があります。 • 周辺機能からの割込み要求を受け付けます。 • 割込みレベル , および割込みベクタによって , CPU へ送る優先順位を判定します。 • 最も優先度の高い割込み要求を CPU へ送ります。 • 最も優先度の高い割込み要求の割込みベクタ番号を CPU へ送ります。 • 割込みレベルが "1111" 以外の割込み要求で , スリープモードおよびストップモード からの復帰要求を生成します。 206 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 10 章 割込みコントローラ 10.2 MB91665 シリーズ 10.2 構成 割込みコントローラの構成を示します。 ■ 割込みコントローラのブロックダイヤグラム 割込みコントローラのブロックダイヤグラムを図 10.2-1 に示します。 図 10.2-1 割込みコントローラのブロックダイヤグラム ICR00 優 先 度 判 定 ICR47 レベル 割込みレベル ベクタ 割込みベクタ番号 復帰要求 周辺機能からの割込み要求 周辺バス • 割込み優先度判定回路 入ってきた割込み要求の優先度を判定します。また , スリープモード / ストップモー ドのときは復帰要求を生成します。 • 割込みレベル発生回路 割込み要求の割込みレベルを CPU に送ります。 • 割込みベクタ発生回路 割込み要求の割込みベクタを CPU に送ります。 • 割込みコントロールレジスタ (ICR00 ∼ ICR47) 割込み要求の割込みレベルを設定するレジスタです。 ■ クロック クロック名 動作クロック CM71-10158-1 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED 207 第 10 章 割込みコントローラ 10.3 MB91665 シリーズ 10.3 レジスタ 割込みコントローラで使用するレジスタの構成と機能について説明します。 ■ 割込みコントローラのレジスタ一覧 割込みコントローラのレジスタ一覧を表 10.3-1 に示します。 表 10.3-1 割込みコントローラのレジスタ一覧 レジスタ略称 ICR00 ∼ ICR47 208 レジスタ名 割込みコントロールレジスタ 00 ∼ 47 FUJITSU SEMICONDUCTOR LIMITED 参照先 10.3.1 CM71-10158-1 第 10 章 割込みコントローラ 10.3 MB91665 シリーズ 割込みコントロールレジスタ (ICR00 ∼ ICR47) 10.3.1 割込みレベルを設定するレジスタです。各割込みの入力に対して 1 つずつ設けられています。 割込みコントロールレジスタ (ICR00 ∼ ICR47) のビット構成を図 10.3-1 に示します。 図 10.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-10158-1 書込み時 無視されます。 読出し時 "1" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 209 第 10 章 割込みコントローラ 10.3 MB91665 シリーズ [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 割込み禁止 割込みレベル 設定可能な最強レベル (強) (弱) < 注意事項 > 210 • このレジスタに設定した割込みレベルが , CPU の割込みレベルマスクレジスタ (ILM) のマスクレベル値より弱い場合は , CPU 側で割込み要求がマスクされます。 • 周辺機能によって , 割込みレベルを設定する割込み制御レジスタ (ICR00 ∼ ICR47) が 異なります。周辺機能と割込みコントロールレジスタ (ICR00 ∼ ICR47) の対応につい ては , 「付録 C 割込みベクタ」を参照してください。 • IL4 ビットは "1" 固定で , IL3 ∼ IL0 のみ設定が可能です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 10 章 割込みコントローラ 10.4 MB91665 シリーズ 10.4 動作説明と設定手順例 割込みコントローラの動作について説明します。 10.4.1 割込みコントローラの動作説明 割込みコントローラの 3 つの動作について説明します。 • 割込みコントロールレジスタ (ICR00 ∼ ICR47) を使った割込みレベルの指定 • 割込み要求の優先度判定 • スリープモード / ストップモードからの復帰要求の生成 ■ 割込みレベルの指定 割込みコントロールレジスタ (ICR00 ∼ ICR47) を使った割込みレベルの設定手順を示 します。 1. 割込み要求を発生させたい周辺機能に対応する割込みベクタ番号の割込みコン トロールレジスタ (ICR00 ∼ ICR47) に割込みレベルを設定する。 割込みベクタ番号と割込み要求の対応については , 「付録 C 割込みベクタ」を 参照してください。 2. 割込み要求を発生させたい周辺機能側で , 割込み要求の発生を許可する。 3. 設定した周辺機能を起動する。 ■ 割込み要求の優先度判定 割込みコントローラは , 同時に発生している割込み要求の中から , 最も優先度の高い割 込み要求の割込みレベルと割込みベクタ番号を CPU へ送ります。 割込み要求の優先順位判定基準を , 判定の順に示します。 1. 割込みレベルが "30" 以下の割込み要求か。( レベル 31 は「割込み禁止」です。) 2. 割込みレベルの数値が最も小さい割込み要求か。 3. 割込みレベルが同じ場合は , その中で割込みベクタ番号が最も小さい割込み要 求か。 上記の判定基準にあてはまる割込み要求がなかった場合は , CPU に割込み要求がない ことを示す割込みレベル "31" (11111B) を出力します。 ■ スリープモードからの復帰要求の生成 割込みレベルが "31" 以外の割込み要求が発生すると , クロック制御部に対して , スリー プモードからの復帰要求を発生します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 211 第 10 章 割込みコントローラ 10.4 MB91665 シリーズ ■ ストップモードからの復帰要求の生成 外部割込み /USB ファンクションから , 割込みレベルが "31" 以外の割込み要求が発生 すると , クロック制御部に対して , ストップモードからの復帰要求を発生します。 ストップから復帰後 , 割込み優先判定回路は , クロックの供給が開始してから動作を再 開するので , 割込み優先判定回路の結果が出るまでは , CPU は命令を実行しています。 < 注意事項 > ストップモードからの復帰要因として使用しない割込みには , 対応する割込みコントロー ルレジスタ (ICR00 ∼ ICR47) で割込みレベルを "31" ( 割込み禁止 ) に設定してください。 212 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 10 章 割込みコントローラ 10.5 MB91665 シリーズ 10.5 使用上の注意 割込みコントローラを使用する際は , 次の点に注意してください。 ■ プログラムに関する注意 • スリープモード / ストップモードからの復帰要求を発生したくない割込み要求には , 対応する割込みコントロールレジスタ (ICR00 ∼ ICR47) で割込みレベルを "31" ( 割 込み禁止 ) に設定してください。 ■ 動作に関する注意 • 割込みコントロールレジスタ (ICR00 ∼ ICR47) に設定した割込みレベルが , CPU の 割込みレベルマスクレジスタ (ILM) のレベルマスク値より弱い場合は , CPU 側で割 込み要求がマスクされます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 213 第 10 章 割込みコントローラ 10.5 214 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 11 章 割込み要求一括 読出し機能 割込み要求一括読出し機能について説明します。 11.1 概要 11.2 構成 11.3 レジスタ 11.4 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 215 第 11 章 割込み要求一括読出し機能 11.1 MB91665 シリーズ 11.1 概要 割込み要求一括読出し機能は, 1つの割込みベクタ番号に割り当てられた複数の割込み要求を 一括で読み出す機能です。 FR80 ファミリ CPU のビットサーチ命令を使用することで , どの割込み要求が発生している のかを素早く確認できます。 この機能を使用すると , 1 つの割込みベクタ番号を兼用している割込み要求が発生して いるかどうかを一度で確認できます。 ただし , この機能で割込み要求フラグをクリアすることはできません。割込み要求フラ グは , 各周辺機能のレジスタでクリアしてください。 216 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 11 章 割込み要求一括読出し機能 11.2 MB91665 シリーズ 11.2 構成 割込み要求一括読出し機能の構成を示します。 ■ 割込み要求一括読出し機能のブロックダイヤグラム 割込み要求一括読出し機能のブロックダイヤグラムを図 11.2-1 に示します。 図 11.2-1 割込み要求一括読出し機能のブロックダイヤグラム 割込み要求 割込み要求 周 辺 バ ス 一括読出し 16 ビット レジスタ (IRPRxH, 各周辺機能から IRPRxL) ■ クロック クロック名 動作クロック CM71-10158-1 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED 217 第 11 章 割込み要求一括読出し機能 11.3 MB91665 シリーズ 11.3 レジスタ 割込み要求一括読出し機能で使用するレジスタの構成と機能について説明します。 ■ 割込み要求一括読出し機能のレジスタ一覧 割込み要求一括読出し機能のレジスタ一覧を表 11.3-1 に示します。 表 11.3-1 割込み要求一括読出し機能のレジスタ一覧 218 レジスタ略称 IRPR0H レジスタ名 割込み要求一括読出しレジスタ 0 上位 参照先 11.3.1 IRPR2L 割込み要求一括読出しレジスタ 2 下位 11.3.2 IRPR3H/ IRPR3L 割込み要求一括読出しレジスタ 3 上位 / 下位 11.3.3, 11.3.4 IRPR4H/ IRPR4L 割込み要求一括読出しレジスタ 4 上位 / 下位 11.3.5, 11.3.6 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 11 章 割込み要求一括読出し機能 11.3 MB91665 シリーズ 割込み要求一括読出し機能レジスタ 0 上位 (IRPR0H) 11.3.1 割込みベクタ番号 20 (10 進 ) は , 16 ビットリロードタイマ ch.0 ∼ ch.2 の割込み要求が割り 当てられています。このレジスタを読み出すと , どのチャネルで割込み要求が発生している のか確認できます。 割込み要求一括読出し機能レジスタ 0 上位 (IRPR0H) のビット構成を図 11.3-1 に示しま す。 図 11.3-1 割込み要求一括読出し機能レジスタ 0 上位 (IRPR0H) のビット構成 割込み要求一括読出し機能レジスタ 0 上位 (IRPR0H) bit 15 14 13 12 11 10 9 8 RTIR0 RTIR1 RTIR2 属性 R R R 未定義 R 未定義 R 未定義 R 未定義 R 未定義 R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ 割込み要求が発生したチャネルに対応するビットが "1" に変わります。 ビット番号 CM71-10158-1 ビット bit15 RTIR0 bit14 RTIR1 bit13 RTIR2 bit12 ∼ bit8 未定義 値 0 リロードタイマ ch.0 で割込み要求なし 説明 1 リロードタイマ ch.0 で割込み要求あり 0 リロードタイマ ch.1 で割込み要求なし 1 リロードタイマ ch.1 で割込み要求あり 0 リロードタイマ ch.2 で割込み要求なし 1 リロードタイマ ch.2 で割込み要求あり "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 219 第 11 章 割込み要求一括読出し機能 11.3 11.3.2 MB91665 シリーズ 割込み要求一括読出し機能レジスタ 2 下位 (IRPR2L) 割込みベクタ番号 41 (10 進 ) は , 次の周辺機能に兼用されています。 • メインタイマ • サブタイマ • 時計カウンタ このレジスタを読み出すと , 割込み要求が発生した周辺機能を確認できます。 割込み要求一括読出し機能レジスタ 2 下位 (IRPR2L) のビット構成を図 11.3-2 に示しま す。 図 11.3-2 割込み要求一括読出し機能レジスタ 2 下位 (IRPR2L) のビット構成 bit 7 6 5 4 3 2 1 0 MCIR SCIR TCIR 属性 R R R 未定義 R 未定義 R 未定義 R 未定義 R 未定義 R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ 割込み要求が発生すると , 発生した割込み要求に対応するビットが "1" に変わります。 ビット番号 bit7 bit6 220 ビット MCIR SCIR bit5 TCIR bit4 ∼ bit0 未定義 値 0 説明 メインタイマ割込み要求なし 1 メインタイマ割込み要求あり 0 サブタイマ割込み要求なし 1 サブタイマ割込み要求あり 0 時計カウンタ割込み要求なし 1 時計カウンタ割込み要求あり "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 11 章 割込み要求一括読出し機能 11.3 MB91665 シリーズ 割込み要求一括読出し機能レジスタ 3 上位 (IRPR3H) 11.3.3 割込みベクタ番号 44 (10 進 ) は , 32 ビットインプットキャプチャ ch.0 ∼ ch.3 に兼用されて います。このレジスタを読み出すと , 割込み要求が発生したチャネルを確認できます。 割込み要求一括読出し機能レジスタ 3 上位 (IRPR3H) のビット構成を図 11.3-3 に示しま す。 図 11.3-3 割込み要求一括読出し機能レジスタ 3 上位 (IRPR3H) のビット構成 bit 15 14 13 12 11 10 9 8 ICIR0 ICIR1 ICIR2 ICIR3 属性 R R R R 未定義 R 未定義 R 未定義 R 未定義 R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ 割込み要求が発生すると , 発生した割込み要求に対応するビットが "1" に変わります。 ビット番号 bit15 CM71-10158-1 ビット ICIR0 bit14 ICIR1 bit13 ICIR2 bit12 ICIR3 bit11 ∼ bit8 未定義 値 説明 0 32ビットインプットキャプチャ ch.0で割込み要求なし 1 32ビットインプットキャプチャ ch.0で割込み要求あり 0 32ビットインプットキャプチャ ch.1で割込み要求なし 1 32ビットインプットキャプチャ ch.1で割込み要求あり 0 32ビットインプットキャプチャ ch.2で割込み要求なし 1 32ビットインプットキャプチャ ch.2で割込み要求あり 0 32ビットインプットキャプチャ ch.3で割込み要求なし 1 32ビットインプットキャプチャ ch.3で割込み要求あり "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 221 第 11 章 割込み要求一括読出し機能 11.3 11.3.4 MB91665 シリーズ 割込み要求一括読出し機能レジスタ 3 下位 (IRPR3L) 割込みベクタ番号 37 (10 進 ) は , 次の周辺機能に兼用されています。 • UART/CSIO/I2C ch.7 の受信割込み要求 • 32 ビットインプットキャプチャ ch.4 ∼ ch.7 このレジスタを読み出すと , 割込み要求が発生した周辺機能を確認できます。 割込み要求一括読出し機能レジスタ 3 下位 (IRPR3L) のビット構成を図 11.3-4 に示しま す。 図 11.3-4 割込み要求一括読出し機能レジスタ 3 下位 (IRPR3L) のビット構成 bit 7 6 5 4 3 2 1 0 ICIR4 ICIR5 ICIR6 ICIR7 属性 R R R R 未定義 R 未定義 R 未定義 R 未定義 R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ 割込み要求が発生すると , 発生した割込み要求に対応するビットが "1" に変わります。 222 ビット番号 ビット bit7 ICIR4 bit6 ICIR5 bit5 ICIR6 bit4 ICIR7 bit3 ∼ bit0 未定義 値 説明 0 32 ビットインプットキャプチャ ch.4 で割込み要求なし 1 32 ビットインプットキャプチャ ch.4 で割込み要求あり 0 32 ビットインプットキャプチャ ch.5 で割込み要求なし 1 32 ビットインプットキャプチャ ch.5 で割込み要求あり 0 32 ビットインプットキャプチャ ch.6 で割込み要求なし 1 32 ビットインプットキャプチャ ch.6 で割込み要求あり 0 32 ビットインプットキャプチャ ch.7 で割込み要求なし 1 32 ビットインプットキャプチャ ch.7 で割込み要求あり "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 11 章 割込み要求一括読出し機能 11.3 MB91665 シリーズ 割込み要求一括読出し機能レジスタ 4 上位 (IRPR4H) 11.3.5 割込みベクタ番号 45 (10 進 ) は , 32 ビットアウトプットコンペア ch.0 ∼ ch.3 に兼用されて います。このレジスタを読み出すと , 割込み要求が発生したチャネルを確認できます。 割込み要求一括読出し機能レジスタ 4 上位 (IRPR4H) のビット構成を図 11.3-5 に示しま す。 図 11.3-5 割込み要求一括読出し機能レジスタ 4 上位 (IRPR4H) のビット構成 bit 15 14 13 12 11 10 9 8 OCIR0 OCIR1 OCIR2 OCIR3 属性 R R R R 未定義 R 未定義 R 未定義 R 未定義 R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ 割込み要求が発生すると , 発生した割込み要求に対応するビットが "1" に変わります。 ビット番号 bit15 CM71-10158-1 ビット OCIR0 bit14 OCIR1 bit13 OCIR2 bit12 OCIR3 bit11 ∼ bit8 未定義 値 説明 0 32 ビットアウトプットコンペア ch.0 で割込み要求なし 1 32 ビットアウトプットコンペア ch.0 で割込み要求あり 0 32 ビットアウトプットコンペア ch.1 で割込み要求なし 1 32 ビットアウトプットコンペア ch.1 で割込み要求あり 0 32 ビットアウトプットコンペア ch.2 で割込み要求なし 1 32 ビットアウトプットコンペア ch.2 で割込み要求あり 0 32 ビットアウトプットコンペア ch.3 で割込み要求なし 1 32 ビットアウトプットコンペア ch.3 で割込み要求あり "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 223 第 11 章 割込み要求一括読出し機能 11.3 11.3.6 MB91665 シリーズ 割込み要求一括読出し機能レジスタ 4 下位 (IRPR4L) 割込みベクタ番号 38 (10 進 ) は , 次の周辺機能に兼用されています。 • UART/CSIO/I2C ch.7 の送信 / 送信バスアイドル • I2C ch.7 のステータス割込み要求 • 32 ビットアウトプットコンペア ch.4 ∼ ch.7 このレジスタを読み出すと , 割込み要求が発生したチャネルや割込み要求の種類を確認でき ます。 割込み要求一括読出し機能レジスタ 4 下位 (IRPR4L) のビット構成を図 11.3-6 に示しま す。 図 11.3-6 割込み要求一括読出し機能レジスタ 4 下位 (IRPR4L) のビット構成 bit 7 6 5 4 3 2 1 0 OCIR4 OCIR5 OCIR6 OCIR7 属性 R R R R 未定義 R 未定義 R 未定義 R 未定義 R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ 割込み要求が発生すると , 発生した割込み要求に対応するビットが "1" に変わります。 224 ビット番号 ビット bit7 OCIR4 bit6 OCIR5 bit5 OCIR6 bit4 OCIR7 bit3 ∼ bit0 未定義 値 0 説明 32 ビットアウトプットコンペア ch.4 で割込み要求なし 1 32 ビットアウトプットコンペア ch.4 で割込み要求あり 0 32 ビットアウトプットコンペア ch.5 で割込み要求なし 1 32 ビットアウトプットコンペア ch.5 で割込み要求あり 0 32 ビットアウトプットコンペア ch.6 で割込み要求なし 1 32 ビットアウトプットコンペア ch.6 で割込み要求あり 0 32 ビットアウトプットコンペア ch.7 で割込み要求なし 1 32 ビットアウトプットコンペア ch.7 で割込み要求あり "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 11 章 割込み要求一括読出し機能 11.4 MB91665 シリーズ 11.4 使用上の注意 割込み要求一括読出し機能を使用する際は , 次の点に注意してください。 ■ 動作に関する注意 割込み要求一括読出しレジスタ (IRPRx) は , 書込みは無効です。割込み要求を取り下げ たい場合は , 各機能のレジスタにある割込み要求フラグビットをクリアしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 225 第 11 章 割込み要求一括読出し機能 11.4 226 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 12 章 遅延割込み 遅延割込みの機能と動作について説明します。 12.1 概要 12.2 構成 12.3 レジスタ 12.4 動作説明と設定手順例 12.5 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 227 第 12 章 遅延割込み 12.1 MB91665 シリーズ 12.1 概要 遅延割込みは , リアルタイム OS で使用するタスク切換え用の割込みを発生するものです。 ■ 概要 遅延割込みは , REALOS などのリアルタイム OS でのタスク切換え用の割込み要求を発 生するものです。遅延割込みを使用すると , ソフトウェアで CPU に対して割込み要求 を発生したり , 取り消したりすることができます。 228 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 12 章 遅延割込み 12.2 MB91665 シリーズ 12.2 構成 遅延割込みの構成を示します。 ■ 遅延割込みのブロックダイヤグラム 遅延割込みのブロックダイヤグラムを図 12.2-1 に示します。 図 12.2-1 遅延割込みのブロックダイヤグラム 周辺バス 遅延割込み制御 レジスタ (DICR) 割込み要求 • 遅延割込み制御レジスタ (DICR) 遅延割込みを制御するレジスタです。 ■ クロック クロック名 動作クロック CM71-10158-1 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED 229 第 12 章 遅延割込み 12.3 MB91665 シリーズ 12.3 レジスタ 遅延割込みで使用するレジスタの構成と機能について説明します。 ■ 遅延割込みのレジスタ一覧 遅延割込みのレジスタ一覧を表 12.3-1 に示します。 表 12.3-1 遅延割込みのレジスタ一覧 レジスタ略称 DICR 230 レジスタ名 遅延割込み制御レジスタ FUJITSU SEMICONDUCTOR LIMITED 参照先 12.3.1 CM71-10158-1 第 12 章 遅延割込み 12.3 MB91665 シリーズ 遅延割込み制御レジスタ (DICR) 12.3.1 遅延割込みを制御するレジスタです。 遅延割込み制御レジスタ (DICR) のビット構成を図 12.3-1 に示します。 図 12.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 231 第 12 章 遅延割込み 12.4 MB91665 シリーズ 12.4 動作説明と設定手順例 遅延割込みの動作と設定手順について説明します。 遅延割込みの動作説明 12.4.1 遅延割込みを使用すると , CPU に対してソフトウェアで , タスク切り換え用の割込み要 求を発生したり , 取り消したりできます。 遅延割込みが発生する条件を表 12.4-1 に示します。 表 12.4-1 割込み要求発生条件 割込み要求 遅延割込み要求 割込み要求の発生 遅延割込み制御レジスタ (DICR) の DLYI ビットに "1" を書き込 む 割込み要求許可 なし ( 常に許可 ) 割込み要求のクリア 遅延割込み制御レジスタ (DICR) の DLYI ビットに "0" を書き込 む < 注意事項 > 232 • 遅延割込みは , DMA 転送要求に使用できません。 • 割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してください。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントローラ」を 参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 12 章 遅延割込み 12.5 MB91665 シリーズ 12.5 使用上の注意 遅延割込みを使用する際は , 次の点に注意してください。 ■ プログラムに関する注意 • 遅延割込み制御ビットは , ほかの割込み要求フラグと同じです。割込みルーチンの 中でこのビットをクリアして , 合わせてタスクを切り換えてください。 • CM71-10158-1 遅延割込みは , DMA 転送要求に使用できません。 FUJITSU SEMICONDUCTOR LIMITED 233 第 12 章 遅延割込み 12.5 234 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 外部バスインタフェースの機能と動作について説 明します。 13.1 概要 13.2 構成 13.3 端子 13.4 レジスタ 13.5 プロトコル 13.6 タイミング設定 13.7 RDY 端子によるアクセスサイクルの延長 13.8 アクセスサイクル数 13.9 アドレス情報とアドレスアラインメント 13.10 データアラインメント 13.11 CS 領域設定手順 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 235 第 13 章 外部バス インタフェース 13.1 MB91665 シリーズ 13.1 概要 外部バスインタフェースは , 本デバイスと外部装置 ( メモリ・IO デバイスなど ) とを接続し てデータの入出力を行うバスインタフェースです。 MB91F669(64pin) と MB91F668(48pin) にて , 外部バスの端子仕様は異なります。 詳細は , 各品種の外部バス端子一覧にてご確認ください。 ■ 概要 外部バスインタフェースの特長を示します。 • 最大24ビット長 (32Mバイト空間:アドレスシフト時最大) のアドレス情報を出力で きます。 * MB91F669(64pin) マルチプレックスバス時のみ。 • バスタイプを次の中から選択できます。 - アドレス・データスプリットバス アクセス先のアドレス情報をアドレスバスにのみ出力します。 非同期メモリと接続できます。 - アドレス・データマルチプレックスバス アクセス先のアドレス情報をアドレスバスとデータバスの両方に出力します。 • 4 つのチップセレクト領域 (CS 領域 ) に個別に次の設定ができます。 * MB91F669(64pin) のみ 4 つのチップセレクト。 MB91F668(48pin) は 1 つのチップセレクトのみ。 - CS 領域のサイズ:64K バイト∼ 32M バイトの範囲で設定できます。 - CS 領域の位置:外部バス領域内の任意の位置に設定できます。 • 各 CS 領域に対応したチップセレクトを出力できます。 • 各 CS 領域に次の機能を設定できます。 - 動作の有効 / 無効 - データバス幅 (8 ビット /16 ビット ) * MB91F668(48pin) は 8 ビットのみ。 - 書込み許可 / 禁止 ( 禁止:読出し専用領域として使用 ) - バイトオーダリング ( ビッグエンディアン / リトルエンディアン ) * CS0 領域はビッグエンディアンのみ - アドレスタイプ ( 通常出力 / アドレスシフト出力 ) - バスタイプ ( アドレス・データスプリットバス / アドレス・データマルチプレック スバス ) • 各 CS 領域に次の期間 ( サイクル数 ) を設定できます。 リード / ライトアクセス共通 - チップセレクト遅延サイクル アドレスを出力してからチップセレクトを有効にするまでの期間 236 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.1 MB91665 シリーズ - アドレスストローブ出力サイクル アドレスストローブの有効期間 - アクセスサイクル レディ入力端子によるリード / ライトアクセスサイクルの延長 - アドレス出力サイクル データ出力端子からアドレス情報を出力する期間 ( マルチプレックスバスの場 合のみ ) リードアクセス時 - リードアクセスオートウェイト リードストローブの有効期間 - リードアクセスセットアップサイクル チップセレクトを出力してからリードストローブを有効にするまでの期間 - リードアクセスホールドサイクル リードストローブを無効にしてからチップセレクトを無効にするまでの期間 - リードアクセスアイドルサイクル リードアクセス後のアイドル期間 ライトアクセス時 - ライトアクセスオートウェイト ライトストローブの有効期間 - ライトアクセスセットアップサイクル チップセレクトを有効にしてからライトストローブを有効にするまでの期間 - ライトアクセスホールドサイクル ライトストローブを無効にしてからチップセレクトを無効にするまでの期間 - ライトリカバリサイクル ライトアクセス後のアイドル期間 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 237 第 13 章 外部バス インタフェース 13.1 MB91665 シリーズ 表 13.1-1 外バス端子機能表 端子名 D00 MB91F668 (48pin) MB91F669 (64pin) ○ ○ D01 ○ ○ D02 ○ ○ D03 ○ ○ D04 ○ ○ D05 ○ ○ D06 ○ ○ D07 ○ ○ D08 ○ ○ D09 ○ ○ D10 ○ ○ D11 ○ ○ D12 ○ ○ D13 ○ ○ D14 ○ ○ D15 ○ A00/A16 * ○ - ○ A01/A17 * - ○ A02/A18 * - ○ A03/A19 * - ○ A04/A20 * - ○ A05/A21 * - ○ A06/A22 * - ○ A07/A23 * - ○ CS0 ○ CS1 ○ - CS2 - ○ CS3 - ○ AS ○ ○ RD ○ ○ WR0 ○ - ○ WR1 RDY - ○ SYSCLK - ○ ○ ○ * : EXBS レジスタの MSS ビットによって , アドレス機能を変更できます。スプリッ トバス時には MSS=0 と設定することで , A00 ∼ A07 が選択され , マルチプレック スバス時には MSS=1 と設定することで , A16 ∼ A23 が選択されます。 238 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.2 MB91665 シリーズ 13.2 構成 外部バスインタフェースの構成を示します。 ■ 外部バスインタフェースのブロックダイヤグラム 外部バスインタフェースのブロックダイヤグラムを図 13.2-1 に示します。 図 13.2-1 外部バスインタフェースのブロックダイヤグラム オンチップバス アクセス受付部 オ ン チ ッ プ バ ス レ ジ ス タ 外バス制御 信号生成部 領域判定部 • IO セル オンチップバス制御部 外バス アクセス制御部 ライトデータバッファ 外バスデータ生成 バッファ リードデータ組立バッファ リードデータバッファ 外 部 バ ス オンチップバスアクセス受付部 オンチップバスから外部バスインタフェースへのアクセス要求を受け付けます。 • 領域判定部 アクセス先の CS 領域を判定します。 • オンチップバス制御部 オンチップバスを制御します。 • ライトデータバッファ ライトアクセス時に , 外部装置へ出力するデータを格納するバッファです。 • リードデータ組み立てバッファ リードアクセス時 , 外部装置が書き込んだデータが分割されて外部バスインタ フェースに入力されたときに , 分割されたデータを組み立てるバッファです。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 239 第 13 章 外部バス インタフェース 13.2 • MB91665 シリーズ 外バス制御信号生成部 アドレスストローブ , チップセレクト , リードストローブ / ライトストローブなどを 生成します。 • 外バスアクセス制御部 アドレスストローブ , チップセレクト , リードストローブ / ライトストローブなどの 出力期間や出力タイミングを制御します。 • 外バスデータ生成バッファ ライトアクセス時 , 外部装置へ出力するデータをバス幅に合わせて分割するバッ ファです。 • リードデータバッファ リードアクセス時に , 外部装置から書き込まれたデータがこのバッファに取り込ま れます。 ■ クロック 外部バスインタフェースで使用するクロックを表 13.2-1 に示します。 表 13.2-1 外部バスインタフェースで使用するクロック クロック名 動作クロック 内容 外部バスクロック (TCLK) 備考 内部動作クロック バスクロックとして, SYSCLK端子に外部バスクロック (TCLK) と同じ周波数のクロッ クを出力することができます。 < 注意事項 > 外部バス領域にアクセス中に外部バスクロック (TCLK) の分周比を変更しないでくださ い。分周比の変更については , 「第 5 章 クロック分周制御部」の「5.6 使用上の注意」を 参照してください。 240 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.3 MB91665 シリーズ 13.3 端子 外部バスインタフェースで使用する端子について説明します。 ■ 概要 • A23 ∼ A00 端子 外部バスインタフェースのアドレス出力端子です。アドレスバスとして使用され , アクセス先のアドレス情報を出力します。 この端子は兼用端子です。外部バスインタフェースの A23 ∼ A00 端子として使用 するには , 「2.4 端子の設定方法」を参照してください。 • D15 ∼ D00 端子 外部バスインタフェースのデータ入出力端子です。データバスとして使用されま す。 この端子は兼用端子です。外部バスインタフェースの D15 ∼ D00 端子として使用 するには , 「2.4 端子の設定方法」を参照してください。 • CS0 ∼ CS3 端子 外部バスインタフェースのチップセレクト出力端子です。 この端子から "L" レベルの信号が出力されている間に , 外部装置が外部バスインタ フェースからの要求を処理します。 この端子は兼用端子です。外部バスインタフェースの CS0 ∼ CS3 端子として使用 するには , 「2.4 端子の設定方法」を参照してください。MB91F668(48pin) では CS0 端子のみです。 • AS 端子 外部バスインタフェースのアドレスストローブ出力端子です。 この端子から "L" レベルの信号を出力することで , バスアクセスの開始を示すアド レスストローブとして機能します。 この端子は兼用端子です。外部バスインタフェースの AS 端子として使用するには , 「2.4 端子の設定方法」を参照してください。 • RD 端子 外部バスインタフェースのリードストローブ出力端子です。 この端子から "L" レベルの信号が出力されている間で , 外部装置が D15 ∼ D00 端子 からデータを送信します。 この端子は兼用端子です。外部バスインタフェースの RD 端子として使用するには , 「2.4 端子の設定方法」を参照してください。 • WR0, WR1 端子 外部バスインタフェースのライトストローブ出力端子です。バイト単位の書き込み を示します。 この端子から "L" レベルの信号が出力されている間に , 外部装置へ書込み処理が行 えます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 241 第 13 章 外部バス インタフェース 13.3 MB91665 シリーズ この端子は兼用端子です。外部バスインタフェースの WR0, WR1 端子として使用す るには , 「2.4 端子の設定方法」を参照してください。MB91F668(48pin) では WR0 端子のみです。 • RDY 端子 外部バスインタフェースのレディ入力端子です。この端子から "L" レベルの信号を 入力することで , アクセスサイクルを延長できます。 この端子は兼用端子です。外部バスインタフェースの RDY 端子として使用するに は , 「2.4 端子の設定方法」を参照してください。MB91F668(48pin) では RDY 端子 はありません。 • SYSCLK 端子 外部バスインタフェースのバスクロック出力端子です。 この端子は兼用端子です。外部バスインタフェースの SYSCLK 端子として使用する には , 「2.4 端子の設定方法」を参照してください。MB91F668(48pin) では SYSCLK 端子はありません。 242 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ 13.4 レジスタ 外部バスインタフェースで使用するレジスタの構成と機能について説明します。 ■ 外部バスインタフェースのレジスタ一覧 外部バスインタフェースのレジスタ一覧を表 13.4-1 に示します。 表 13.4-1 外部バスインタフェースのレジスタ一覧 CS 領域 * 0 1 2 3 レジスタ略称 レジスタ名 参照先 ASR0 CS0 領域設定レジスタ 13.4.1 ACR0 CS0 バス設定レジスタ 13.4.2 AWR0 CS0 ウェイトレジスタ 13.4.3 ASR1 CS1 領域設定レジスタ 13.4.1 ACR1 CS1 バス設定レジスタ 13.4.2 AWR1 CS1 ウェイトレジスタ 13.4.3 ASR2 CS2 領域設定レジスタ 13.4.1 ACR2 CS2 バス設定レジスタ 13.4.2 AWR2 CS2 ウェイトレジスタ 13.4.3 ASR3 CS3 領域設定レジスタ 13.4.1 ACR3 CS3 バス設定レジスタ 13.4.2 AWR3 CS3 ウェイトレジスタ 13.4.3 * : MB91F668(48pin) では CS0 のレジスタのみです。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 243 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ CS 領域設定レジスタ (ASR0 ∼ ASR3) 13.4.1 CS 領域 (CS0 ∼ CS3) の領域の設定を行うレジスタです。CS 領域 1 つに対し , このレジス タが 1 つ用意されています。 CS 領域設定レジスタ (ASR0 ∼ ASR3) のビット構成を図 13.4-1 に示します。 図 13.4-1 CS 領域設定レジスタ (ASR0 ∼ ASR3) のビット構成 bit 31 16 SADR31 ∼ SADR16 R/W 属性 初期値 (ASR0) 0 初期値 (ASR1 ∼ ASR3) bit 15 X 8 予約 R/W 属性 初期値 (ASR0) 0 初期値 (ASR1 ∼ ASR3) bit 0 7 6 5 4 3 2 1 0 ASZ3 ASZ2 ASZ1 ASZ0 LEDN CSEN R/W R/W R/W 予約 R/W WREN R/W R/W R/W R/W 初期値 (ASR0) 1 1 1 1 0 0 0 1 初期値 (ASR1 ∼ ASR3) X X X X 0 X X 0 属性 R/W:リード / ライト可能 X:不定 < 注意事項 > 244 • CS 領域が重ならないように設定してください。 • このレジスタを設定する場合は , 「13.11 CS 領域設定手順」を参照して設定してくだ さい。 • CS0 領域設定レジスタ (ASR0) と CS1 領域設定レジスタ∼ CS 3 領域設定レジスタ (ASR1 ∼ ASR3) で初期値が異なります。 • このレジスタに書込みを行う場合は , 必ずワードで書き込んでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit31 ∼ bit16]:SADR31 ∼ SADR16 ( スタートアドレス指定ビット ) CS 領域の開始アドレスを指定します。 このビットには , 32 ビットアドレスの上位 16 ビットを指定してください。 このビットに指定したアドレスから , ASZ3 ∼ ASZ0 ビットで指定したサイズを確保し て , CS 領域とします。 < 注意事項 > CS 領域のバウンダリは ASZ3 ∼ ASZ0 ビットで設定したサイズによって決まります。そ のため , ASZ3 ∼ ASZ0 ビットで設定したサイズによって , 実際のアドレスと比較される ビットが異なります。実際に比較されるビットについては , ASZ3 ∼ ASZ0 ビットを参照 してください。 [bit15 ∼ bit8]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit7 ∼ bit4]:ASZ3 ∼ ASZ0 ( 領域サイズビット ) CS 領域のサイズを設定します。 ここで設定したサイズによって , SADR31 ビット∼ SADR16 ビットのうち , 実際にアド レスと比較されるビットが決まります。 ASZ3 ASZ2 ASZ1 ASZ0 CS 領域のサイズ アドレスと比較されるビット 0 0 0 0 64K バイト SADR31 ∼ SADR16 ビット 0 0 0 1 128K バイト SADR31 ∼ SADR17 ビット 0 0 1 0 256K バイト SADR31 ∼ SADR18 ビット 0 0 1 1 512K バイト SADR31 ∼ SADR19 ビット 0 1 0 0 1M バイト SADR31 ∼ SADR20 ビット 0 1 0 1 2M バイト SADR31 ∼ SADR21 ビット 0 1 1 0 4M バイト SADR31 ∼ SADR22 ビット 0 1 1 1 8M バイト SADR31 ∼ SADR23 ビット 1 0 0 0 16M バイト SADR31 ∼ SADR24 ビット < 注意事項 > 表に示した以外の設定はしないでください。 [bit3]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 245 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit2]:WREN ( 書込み許可ビット ) 外部装置から CS 領域への書込みを許可 / 禁止します。 書込み値 0 説明 書込みを禁止します。 1 書込みを許可します。 < 注意事項 > 書込みを禁止した場合は , 内部バスから CS 領域に対して書込みが発生しても , その書込 みは無視され , 外部アクセスは行われません。 [bit1]:LEDN ( リトルエンディアン設定ビット ) CS領域のバイトオーダリングをビッグエンディアンまたはリトルエンディアンから選 択します。 CS0 領域はビッグエンディアンにのみ対応しているため , CS0 領域設定レジスタ (ASR0) では , このビットを未定義ビットとして扱います。 • CS0 領域設定レジスタ (ASR0) の場合 書込み時 無視されます。 読出し時 "0" が読み出されます。 • CS1 領域設定レジスタ∼ CS3 領域設定レジスタ (ASR1 ∼ ASR3) の場合 書込み値 説明 0 ビッグエンディアン 1 リトルエンディアン [bit0]:CSEN (CS 領域許可ビット ) CS 領域の有効 / 無効を設定します。 このビットで CS 領域を有効に設定すると , このレジスタと次のレジスタでの設定にし たがって CS 領域が動作を開始します。 • CS 領域設定レジスタ (ASR0 ∼ ASR3) • CS バス設定レジスタ (ACR0 ∼ ACR3) • CS ウェイトレジスタ (AWR0 ∼ AWR3) 書込み値 246 0 説明 CS 領域を無効にします。 1 CS 領域を有効にします。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ CS バス設定レジスタ (ACR0 ∼ ACR3) 13.4.2 CS 領域 (CS0 ∼ CS3) のバス設定を行うレジスタです。CS 領域 1 つに対し , このレジスタ が 1 つ用意されています。 CS バス設定レジスタ (ACR0 ∼ ACR3) のビット構成を図 13.4-2 に示します。 図 13.4-2 CS バス設定レジスタ (ACR0 ∼ ACR3) のビット構成 bit 31 8 予約 R/W 属性 初期値 (ACR0) 0 初期値 (ACR1 ∼ ACR3) bit 0 7 6 5 4 3 2 1 0 DBW1 DBW0 BSTY R/W 予約 R/W ADTY R/W 予約 R/W R/W R/W 予約 R/W 予約 R/W 初期値 (ACR0) 0 0 0 0 0 0 0 0 初期値 (ACR1 ∼ ACR3) X X 0 0 X X 0 X 属性 R/W:リード / ライト可能 X:不定 < 注意事項 > • このレジスタを設定する場合は , 「13.11 CS 領域設定手順」を参照して設定してくだ さい。 • CS0 バス設定レジスタ (ACR0) と CS1 バス設定レジスタ∼ CS3 バス設定レジスタ (ACR1 ∼ ACR3) で初期値が異なります。 • このレジスタに書込みを行う場合は , 必ずワードで書き込んでください。 [bit31 ∼ bit8]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 247 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit7, bit6]:DBW1, DBW0 ( データバス幅ビット ) データバス幅を設定します。 DBW1 DBW0 データバス幅 0 0 8 ビット 0 1 16 ビット * 1 0 設定禁止 1 1 設定禁止 * MB91F668(48pin) では設定禁止。 このビットで設定したデータバス幅によって , 使用するデータバスやライトストロー ブ出力端子が異なります。 データバス幅と使用する端子を表 13.4-2 に示します。 表 13.4-2 データバス幅と使用する端子 データバス幅 データバス ライトストローブ出力端子 8 ビット D15 ∼ D08 WR0 16 ビット D15 ∼ D00 WR0, WR1 [bit5, bit4]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit3]:ADTY ( アドレスタイプビット ) アクセス先のアドレス情報を出力する方法を , 次の中から設定します。 • 通常出力:アクセス先のアドレス情報をそのまま出力します。 • アドレスシフト出力:アクセス先のアドレス情報をビットシフトして , 出力します。 アドレス情報については , 「13.9 アドレス情報とアドレスアラインメント」を参照し てください。 書込み値 248 説明 0 通常出力 1 アドレスシフト出力 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit2]:BSTY ( バスタイプビット ) バスタイプを設定します。24 ビットのアドレス情報をアドレスバス (A23 ∼ A00 端子 ) からのみ出力するか , アドレスバス (A23 ∼ A00 端子 ) とデータバス (D15 ∼ D00 端子 ) の両方に出力するかを設定します。 • アドレス・データスプリットバス:24 ビットのアドレス情報をアドレスバス (A23 ∼ A00 端子 ) からのみ出力します。 • アドレス・データマルチプレックスバス:アクセス先のアドレス情報をアドレスバ ス (A23 ∼ A00 端子 ) とデータバス (D15 ∼ D00 端子 ) の両方に出力します。 書込み値 説明 0 アドレス・データスプリットバス 1 アドレス・データマルチプレックスバス MB91F669(64pin) では , EXBS レジスタの MSS ビットにて , 出力するアドレス端子を設 定します。 BSTY ビット =0, MSS ビット =0 時:A00 ∼ A07 が有効となります。 BSTY ビット =1, MSS ビット =1 時:A16 ∼ A23 が有効となります。 EXBS レジスタの詳細については , 「第 14 章 I/O ポート」を参照してください。 アドレス・データマルチプレックスバス設定時に , アドレス出力サイクルでアドレス情 報を出力する端子を表 13.4-3 に示します。 表 13.4-3 出力されるアドレス情報と使用する端子 BSTY 1 データバス幅 出力されるアドレス情報 アドレス情報を 出力する端子 8 ビット アドレス情報の bit7 ∼ bit0 D15 ∼ D08 端子 16 ビット アドレス情報の bit15 ∼ bit0 D15 ∼ D00 端子 [bit1]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit0]:予約ビット (ACR0) 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 (ACR1 ∼ ACR3) CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 初期値は不定です。 "0" 書込み後は "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 249 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ CS ウェイトレジスタ (AWR0 ∼ AWR3) 13.4.3 CS 領域のウェイトや信号の出力期間を設定するレジスタです。CS 領域 1 つに対し , このレ ジスタが 1 つ用意されています。 CS ウェイトレジスタ (AWR0 ∼ AWR3) のビット構成を図 13.4-3 に示します。 図 13.4-3 CS ウェイトレジスタ (AWR0 ∼ AWR3) のビット構成 bit 31 30 29 28 27 26 25 24 予約 R/W 予約 R/W 予約 R/W 予約 R/W RWT3 RWT2 RWT1 RWT0 R/W R/W R/W R/W 初期値 (AWR0) 0 0 0 0 1 1 1 1 初期値 (ACR1 ∼ ACR3) bit 0 0 0 0 X X X X 23 22 21 20 19 18 17 16 WWT3 WWT2 WWT1 WWT0 RIDL1 RIDL0 R/W R/W R/W R/W R/W R/W R/W R/W 初期値 (AWR0) 0 0 0 0 0 0 0 0 初期値 (ACR1 ∼ ACR3) bit X X X X X X X X 15 14 13 12 11 10 9 8 属性 属性 WRCV1 WRCV0 CSRD1 CSRD0 RDCS1 RDCS0 CSWR1 CSWR0 WRCS1 WRCS0 R/W R/W R/W R/W R/W R/W R/W R/W 初期値 (AWR0) 1 1 1 1 0 0 0 0 初期値 (ACR1 ∼ ACR3) bit X X X X X X X X 7 6 5 4 3 2 1 0 属性 ADCY1 ADCY0 ACS1 ACS0 ASCY R/W R/W R/W R/W 予約 R/W RDYE R/W R/W 予約 R/W 初期値 (AWR0) 0 0 0 0 0 0 0 0 初期値 (ACR1 ∼ ACR3) X X X X X 0 X 0 属性 R/W:リード / ライト可能 X:不定 < 注意事項 > 250 • このレジスタを設定する場合は , 「13.11 CS 領域設定手順」を参照して設定してくだ さい。 • CS0 ウェイトレジスタ (AWR0) と CS1 ウェイトレジスタ∼ CS3 ウェイトレジスタ (AWR1 ∼ AWR3) で初期値が異なります。 • このレジスタに書込みを行う場合は , 必ずワードで書き込んでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit31 ∼ bit28]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit27 ∼ bit24]:RWT3 ∼ RWT0 ( リードアクセスオートウェイトビット ) リードストローブの出力期間を設定します ( リードアクセスオートウェイト ) 。 リードストローブは最小で 1T (T: バスクロックの周期 ) 出力されます。 RWT3 RWT2 RWT1 RWT0 説明 0 0 0 0 0T 0 0 0 1 1T 0 0 1 0 2T 0 0 1 1 3T 0 1 0 0 4T 0 1 0 1 5T 0 1 1 0 6T 0 1 1 1 7T 1 0 0 0 8T 1 0 0 1 9T 1 0 1 0 10T 1 0 1 1 11T 1 1 0 0 12T 1 1 0 1 13T 1 1 1 0 14T 1 1 1 1 15T T: バスクロックの周期 [bit23 ∼ bit20]:WWT3 ∼ WWT0 ( ライトアクセスオートウェイトビット ) ライトストローブの出力期間を設定します ( ライトアクセスオートウェイト ) 。 ライトストローブは最小で 1T (T: バスクロックの周期 ) 出力されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 251 第 13 章 外部バス インタフェース 13.4 WWT3 MB91665 シリーズ WWT2 WWT1 WWT0 説明 0 0 0 0 0T 0 0 0 1 1T 0 0 1 0 2T 0 0 1 1 3T 0 1 0 0 4T 0 1 0 1 5T 0 1 1 0 6T 0 1 1 1 7T 1 0 0 0 8T 1 0 0 1 9T 1 0 1 0 10T 1 0 1 1 11T 1 1 0 0 12T 1 1 0 1 13T 1 1 1 0 14T 1 1 1 1 15T T: バスクロックの周期 [bit19, bit18]:RIDL1, RIDL0 ( リードアクセスアイドルサイクルビット ) リードアクセス後に挿入するアイドルサイクル (リードアクセスアイドルサイクル) を 設定します。 リードアクセスの次のアクセスが次のいずれかの場合 , このビットで設定した周期の アイドルサイクルがリードアクセス後に挿入されます。 • ライトアクセス • 別の CS 領域へのアクセス • アドレス・データマルチプレックスバスタイプに設定したCS領域に対するアクセス RIDL1 RIDL0 説明 0 0 0T 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 < 注意事項 > 252 • リードアクセスアイドルサイクル中は , すべてのチップセレクトが無効 (CS0 ∼ CS3 端子から "H" レベルを出力 ) になり , D15 ∼ D00 端子は Hi-Z になるため , リードアク セスアイドルサイクルが終了するまで , 次のアクセスは開始されません。 • CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットでバスタイプをアドレス・デー タスプリットバスに設定した (BSTY=0), 同一の CS 領域に連続してリードアクセスを 行う場合は , リードアクセスアイドルサイクルは挿入されません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit17, bit16]:WRCV1, WRCV0 ( ライトリカバリサイクルビット ) ライトアクセス後に挿入するアイドルサイクル (ライトリカバリサイクル) を設定しま す。 外部装置が本デバイスのデータを読み出した後 , このビットで設定した周期のアイド ルサイクルが挿入されます。 WRCV1 WRCV0 説明 0 0 0T 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 < 注意事項 > ライトリカバリサイクル中は , すべてのチップセレクトが無効 (CS0 ∼ CS3 端子から "H" レベルを出力 ) になり , ライトストローブも無効 (WR0, WR1 端子から "H" レベルを出力 ) なるため , 次のアクセスは開始されません。 [bit15, bit14]:CSRD1, CSRD0 ( リードアクセスセットアップサイクルビット ) チップセレクトが有効になってから , リードストローブを有効にする周期を設定しま す ( リードアクセスセットアップサイクル ) 。 CSRD1 CSRD0 説明 0 0 0T ( 同時 ) 0 1 1T 後 1 0 2T 後 1 1 3T 後 T: バスクロックの周期 < 注意事項 > CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・デー タマルチプレックスバスに設定 (BSTY=1) した場合は , プロトコルが正しく成立するよう に , 次の条件を満たす設定にしてください。 • ACS+CSRD ≧ 1 ACS:ACS1, ACS0 ビット CM71-10158-1 CSRD:CSRD1, CSRD0 ビット FUJITSU SEMICONDUCTOR LIMITED 253 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit13, bit12]:RDCS1, RDCS0 ( リードアクセスホールドサイクルビット ) リードストローブが無効になってからチップセレクトを無効にする周期を設定します ( リードアクセスホールドサイクル ) 。 RDCS1 RDCS0 説明 0 0 0T ( 同時 ) 0 1 1T 後 1 0 2T 後 1 1 3T 後 T: バスクロックの周期 [bit11, bit10]:CSWR1, CSWR0 ( ライトアクセスセットアップサイクルビット ) チップセレクトが有効になってからライトストローブを有効にする周期を設定します ( ライトアクセスセットアップサイクル ) 。 CSWR1 CSWR0 説明 0 0 0T ( 同時 ) 0 1 1T 後 1 0 2T 後 1 1 3T 後 T: バスクロックの周期 < 注意事項 > CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・デー タマルチプレックスバスに設定 (BSTY=1) した場合は , プロトコルが正しく成立するよう に , 次の条件を満たす設定にしてください。 • ACS+CSWR ≧ 1 ACS:ACS1, ACS0 ビット CSWR:CSWR1, CSWR0 ビット [bit9, bit8]:WRCS1, WRCS0 ( ライトアクセスホールドサイクルビット ) ライトストローブが無効になってからチップセレクトを無効にする周期を設定します ( ライトアクセスホールドサイクル ) 。 WRCS1 WRCS0 説明 0 0 0T ( 同時 ) 0 1 1T 後 1 0 2T 後 1 1 3T 後 T: バスクロックの周期 254 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit7, bit6]:ADCY1, ADCY0 ( アドレス出力延長サイクル数ビット ) バスタイプをアドレス・データマルチプレックスバスタイプ (BSTY=1) に設定した場 合に , D15 ∼ D00 端子からアドレスを出力する期間を設定します ( アドレス出力延長 サイクル数 ) 。 D15 ∼ D00 端子からアドレス情報を出力する期間 ( アドレス出力サイクル ) は , 最小で 1T (T: バスクロックの周期 ) です。 ADCY1 ADCY0 説明 0 0 0T 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 < 注意事項 > • CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・ データスプリットバスに設定 (BSTY=0) した場合は , このビットの設定は無視されま す。 • このビットを "00" 以外に設定する場合は , プロトコルが正しく成立するように , 次の 条件をすべて満たす設定にしてください。 - ADCY+1 ≦ ACS+CSRD ADCY:ADCY1, ADCY0 ビット ACS:ACS1, ACS0 ビット CSRD:CSRD1, CSRD0 ビット - ADCY+1 ≦ ACS+CSWR ADCY:ADCY1, ADCY0 ビット ACS:ACS1, ACS0 ビット CSWR:CSWR1, CSWR0 ビット • このビットで設定した周期よりASCY1, ASCY0ビットで設定した周期の方が大きい場 合は , ASCY1, ASCY0 ビットの設定が優先されます。 [bit5, bit4]:ACS1, ACS0 ( チップセレクト遅延サイクル数ビット ) アドレスストローブを出力してからチップセレクトを有効 (CS0 ∼ CS3 端子から "L" レ ベルを出力 ) にする周期を設定します ( チップセレクト遅延サイクル数 ) 。 ACS1 ACS0 説明 0 0 0T 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 255 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ < 注意事項 > CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・デー タマルチプレックスバスに設定 (BSTY=1) した場合は , プロトコルが正しく成立するよう に , 次の条件をすべて満たす設定にしてください。 • ACS+CSRD ≧ 1 ACS:ACS1, ACS0 ビット • CSRD:CSRD1, CSRD0 ビット ACS+CSWR ≧ 1 ACS:ACS1, ACS0 ビット CSWR:CSWR1, CSWR0 ビット [bit3]:ASCY ( アドレスストローブ出力延長サイクル数ビット ) アドレスストローブの出力期間を設定します ( アドレスストローブ出力延長サイクル 数)。 アドレスストローブは最小で 1T (T: バスクロックの周期 ) 出力されます。 書込み値 説明 0 0T 1 1T T: バスクロックの周期 < 注意事項 > このビットを "1" に設定する場合は , プロトコルが正しく成立するように , 次の条件をす べて満たす設定にしてください。 • CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・ データスプリットバスに設定 (BSTY=0) した場合 - ACS+CSRD+RWT+RDCS ≧ 1 ACS:ACS1, ACS0 ビット CSRD:CSRD1, CSRD0 ビット RWT:RWT3 ∼ RWT0 ビット RDCS:RDCS1, RDCS0 ビット - ACS+CSWR+WWT+WRCS ≧ 1 • ACS:ACS1, ACS0 ビット CSWR:CSWR1, CSWR0 ビット WWT:WWT3 ∼ WWT0 ビット WRCS:WRCS1, WRCS0 ビット CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・ データマルチプレックスバスに設定 (BSTY=1) した場合 - ACS+CSRD ≧ 2 ACS:ACS1, ACS0 ビット CSRD:CSRD1, CSRD0 ビット - ACS+CSWR ≧ 2 ACS:ACS1, ACS0 ビット 256 CSWR:CSWR1, CSWR0 ビット FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.4 MB91665 シリーズ [bit2]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit1]:RDYE (RDY 許可ビット ) RDY 端子によるオートウェイト期間の延長機能を有効にするかどうかを設定します。 書込み値 説明 0 無効 1 有効 < 注意事項 > この機能を有効にする場合は , RWT3 ∼ RWT0 ビットおよび WWT3 ∼ WWT0 ビットで , リードアクセス / ライトアクセスオートウェイト期間が "2" 以上になるように設定してく ださい。 詳しくは , 「13.7 RDY 端子によるアクセスサイクルの延長」を参照してください。 [bit0]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 257 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ 13.5 プロトコル 外部バスインタフェースの信号のプロトコルについて説明します。 13.5.1 アドレス・データスプリットバスのプロトコル アドレス・データスプリットバスのプロトコルについて説明します。 CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・デー タスプリットバスに設定 (BSTY=0) した場合のプロトコルについて説明します。 ■ リードプロトコル ● リード動作例 リードアクセス時の動作例を図 13.5-1 に示します。 図 13.5-1 リードアクセス時の動作例 0 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 1 2 3 4 5 6 7 A0 RDCS ACS RWT CSRD D0 CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-1 に示します。 表 13.5-1 各ビットの設定値 設定項目 258 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 01 リードアクセスオートウェイト RWT3 ∼ RWT0 0001 リードアクセスアイドルサイクル RIDL1, RIDL0 00 リードアクセスセットアップサイクル CSRD1, CSRD0 01 リードアクセスホールドサイクル RDCS1, RDCS0 01 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 最短リード動作 リードアクセス時の最短動作を図 13.5-2 に示します。 図 13.5-2 最短リードアクセス 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ A 最小バスサイクル :外部装置からの入力データ 最短リード動作の , CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-2 に示します。 表 13.5-2 各ビットの設定値 設定項目 CM71-10158-1 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 00 リードアクセスオートウェイト RWT3 ∼ RWT0 0000 リードアクセスアイドルサイクル RIDL1, RIDL0 00 リードアクセスセットアップサイクル CSRD1, CSRD0 00 リードアクセスホールドサイクル RDCS1, RDCS0 00 FUJITSU SEMICONDUCTOR LIMITED 259 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 信号説明 • SYSCLK 端子 バスクロックを出力します。MB91F668(48pin) では SYSCLK 端子はありません。 • AS 端子 アドレスストローブ ("L" レベルで有効 ) を出力します。アクセスの開始を示します。 • A23 ∼ A00 端子 アクセス先のアドレス情報を出力します。 • CS0 ∼ CS3 端子 チップセレクト ("L" レベルで有効 ) を出力します。アクセス先が対応した CS 領域 内のアドレスであることを示します。MB91F668(48pin) では , CS0 端子は存在しま せん。 • WR0, WR1 端子 "H" レベル ( 無効 ) を出力します。MB91F668(48pin) では WR0 端子のみです。 • RD 端子 リードストローブ ("L" レベルで有効 ) を出力します。リードアクセスを示します。 • D15 ∼ D00 端子 外部装置からデータを入力します。 ● アクセス手順 アドレス・データスプリットバスのリード動作は , 次の手順で行います。 1. AS 端子にアドレスストローブを有効にして , A23 ∼ A00 端子にアドレス情報を出 力します。 2. CS0 ∼ CS3 端子にチップセレクトを有効にします。 3. RD 端子にリードストローブを有効にします。 4. リードストローブ有効区間内の最期のバスクロックの立上がりエッジで , D15 ∼ D00 端子からリードデータが取り込まれます。 5. RD 端子のリードストローブを無効にします。 6. CS0 ∼ CS3 端子のチップセレクトを無効にします。 A23 ∼ A00 端子のアドレス情報は , リード動作が終了するまで出力されます。 各信号の出力期間 , 出力タイミングは CS ウェイトレジスタ (AWR0 ∼ AWR3) を設定 して変更することができます。「13.6 タイミング設定」を参照してください。 260 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ■ ライトプロトコル ● ライト動作例 ライトアクセス時の動作例を図 13.5-3 に示します。 図 13.5-3 ライトアクセス時の動作例 0 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 1 2 3 4 5 6 7 A0 WRCS ACS WWT CSWR D0 CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-3 に示します。 表 13.5-3 各ビットの設定値 設定項目 CM71-10158-1 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 01 ライトアクセスオートウェイト WWT3 ∼ WWT0 0001 ライトリカバリサイクル WRCV1, WRCV0 00 ライトアクセスセットアップサイクル CSWR1, CSWR0 01 ライトアクセスホールドサイクル WRCS1, WRCS0 01 FUJITSU SEMICONDUCTOR LIMITED 261 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 最短ライト動作 ライトアクセス時の最短動作を図 13.5-4 に示します。 図 13.5-4 最短ライト動作 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ A D 最小バスサイクル 最短ライト動作の , CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-4 に示します。 表 13.5-4 各ビットの設定値 262 設定項目 アドレスストローブ出力延長サイクル数 ビット ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 00 ライトアクセスオートウェイト WWT3 ∼ WWT0 0000 ライトリカバリサイクル WRCV1, WRCV0 00 ライトアクセスセットアップサイクル CSWR1, CSWR0 00 ライトアクセスホールドサイクル WRCS1, WRCS0 00 FUJITSU SEMICONDUCTOR LIMITED 設定値 CM71-10158-1 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 信号説明 • SYSCLK 端子 バスクロックを出力します。MB91F668(48pin) では SYSCLK 端子はありません。 • AS 端子 アドレスストローブ ("L" レベルで有効 ) を出力します。アクセスの開始を示します。 • A23 ∼ A00 端子 アクセス先のアドレス情報を出力します。 • CS0 ∼ CS3 端子 チップセレクト ("L" レベルで有効 ) を出力します。アクセス先が対応した CS 領域 内のアドレスであることを示します。MB91F668(48pin) では , CS0 端子は存在しま せん。 • WR0, WR1 端子 ライトストローブ ("L" レベルで有効 ) を出力します。MB91F668(48pin) では WR0 端子のみです。 • RD 端子 "H" レベル ( 無効 ) を出力します。 • D15 ∼ D00 端子 外部装置へデータを出力します。 ● アクセス手順 アドレス・データスプリットバスのライト動作は次の手順で行います。 1. AS 端子にアドレスストローブを有効にして , A23 ∼ A00 端子にアドレス情報を , D15 ∼ D00 端子に書込みデータを出力します。 2. CS0 ∼ CS3 端子にチップセレクトを有効にします。 3. WR0, WR1 端子にライトストローブを有効にします。 4. WR0, WR1 端子のライトストローブを無効にします。 5. CS0 ∼ CS3 端子のチップセレクトを無効にします。 A23 ∼ A00 端子のアドレス情報と , D15 ∼ D00 端子の書込みデータは , ライト動作が 終了するまで出力されます。 各信号の出力期間 , 出力タイミングは CS ウェイトレジスタ (AWR0 ∼ AWR3) を設定 して変更することができます。「13.6 タイミング設定」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 263 第 13 章 外部バス インタフェース 13.5 13.5.2 MB91665 シリーズ アドレス・データマルチプレックスバスの プロトコル アドレス・データマルチプレックスバスのプロトコルについて説明します。 CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビットで , バスタイプをアドレス・デー タマルチプレックスバスに設定 (BSTY=1) した場合のプロトコルについて説明しま す。 ■ リードプロトコル ● リード動作例 リードアクセス時の動作例を図 13.5-5 に示します。 図 13.5-5 リードアクセス時の動作例 0 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 1 2 3 4 5 6 7 RDCS ACS RWT CSRD A0 D0 CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-5 に示します。 表 13.5-5 各ビットの設定値 設定項目 264 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 01 リードアクセスオートウェイト RWT3 ∼ RWT0 0001 リードアクセスアイドルサイクル RIDL1, RIDL0 00 リードアクセスセットアップサイクル CSRD1, CSRD0 01 リードアクセスホールドサイクル RDCS1, RDCS0 01 アドレス出力延長サイクル数 ADCY1, ADCY0 00 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 最短リード動作 リードアクセス時の最短動作の一つを図 13.5-6 に示します。 図 13.5-6 最短リードアクセス (ACS1=0, ACS0=1) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 A ACS A 最小バスサイクル :外部装置からの入力データ 最短リード動作の , CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-6 に示します。 表 13.5-6 各ビットの設定値 設定項目 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 01 リードアクセスオートウェイト RWT3 ∼ RWT0 0000 リードアクセスアイドルサイクル RIDL1, RIDL0 00 リードアクセスセットアップサイクル CSRD1, CSRD0 00 リードアクセスホールドサイクル RDCS1, RDCS0 00 アドレス出力延長サイクル数 ADCY1, ADCY0 00 アドレス・データマルチプレックスバスでは , 最小バスサイクルとして 2T (T:バスク ロックの周期 ) 必要です。 チップセレクト遅延サイクル数かリードアクセスセットアッ プサイクルのどちらかを "1" 以上にする必要があります。 図 13.5-6, 表 13.5-6 では , チッ プセレクト遅延サイクル数 (ACS1, ACS0) を "01B" に設定しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 265 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 信号説明 • SYSCLK 端子 バスクロックを出力します。MB91F668(48pin) では SYSCLK 端子はありません。 • AS 端子 アドレスストローブ ("L" レベルで有効 ) を出力します。アクセスの開始を示します。 • A23 ∼ A00 端子 アクセス先のアドレス情報を出力します。 • CS0 ∼ CS3 端子 チップセレクト ("L" レベルで有効 ) を出力します。アクセス先が対応した CS 領域 内のアドレスであることを示します。MB91F668(48pin) では , CS0 端子は存在しま せん。 • WR0, WR1 端子 "H" レベル ( 無効 ) を出力します。MB91F668(48pin) では WR0 端子のみです。 • RD 端子 リードストローブ ("L" レベルで有効 ) を出力します。リードアクセスを示します。 • D15 ∼ D00 端子 アドレス情報を出力した後に , 外部装置からデータを入力します。 ● アクセス手順 アドレス・データマルチプレックスバスのリード動作は次の手順で行います。 1. AS 端子にアドレスストローブを有効にして , A23 ∼ A00 端子と , D15 ∼ D00 端子 にアドレス情報を出力します。 2. CS0 ∼ CS3 端子にチップセレクトを有効にします。 3. RD 端子にリードストローブを有効にします。 4. リードストローブ有効区間内の最期のバスクロックの立上がりエッジで , D15 ∼ D00 端子からリードデータが取り込まれます。 5. RD 端子のリードストローブを無効にします。 6. CS0 ∼ CS3 端子のチップセレクトを無効にします。 D15 ∼ D00 端子と A15 ∼ A00 端子のアドレス情報は同じです。D15 ∼ D00 端子はア ドレス情報を出力した後にハイインピーダンスになります。A23 ∼ A00 端子のアドレ ス情報は , リード動作が終了するまで出力されます。 各信号の出力期間 , 出力タイミングを CS ウェイトレジスタ (AWR0 ∼ AWR3) を設定 して変更することができます。「13.6 タイミング設定」を参照してください。 266 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ■ ライトプロトコル ● ライト動作例 ライトアクセス時の動作例を図 13.5-7 に示します。 図 13.5-7 ライトアクセス時の動作例 0 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 1 2 3 4 5 6 7 WRCS ACS WWT CSWR A0 D0 CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-7 に示します。 表 13.5-7 各ビットの設定値 設定項目 CM71-10158-1 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 01 ライトアクセスオートウェイト WWT3 ∼ WWT0 0001 ライトリカバリサイクル WRCV1, WRCV0 00 ライトアクセスセットアップサイクル CSWR1, CSWR0 01 ライトアクセスホールドサイクル WRCS1, WRCS0 01 アドレス出力延長サイクル数 ADCY1, ADCY0 00 FUJITSU SEMICONDUCTOR LIMITED 267 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 最短ライト動作 ライトアクセス時の最短動作の一つを図 13.5-8 に示します。 図 13.5-8 最短ライトアクセス (ACS1=0, ACS0=1) 2 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 アドレス / データ A ACS A D 最小バスサイクル :外部装置からの入力データ 最短ライト動作の , CS ウェイトレジスタ (AWR0 ∼ AWR3) の各ビットの設定値を表 13.5-8 に示します。 表 13.5-8 各ビットの設定値 設定項目 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 0 チップセレクト遅延サイクル数 ACS1, ACS0 01 ライトアクセスオートウェイト WWT3 ∼ WWT0 0000 ライトリカバリサイクル WRCV1, WRCV0 00 ライトアクセスセットアップサイクル CSWR1, CSWR0 00 ライトアクセスホールドサイクル WRCS1, WRCS0 00 アドレス出力延長サイクル数 ADCY1, ADCY0 00 アドレス・データマルチプレックスバスでは , 最小バスサイクルとして 2T (T:バスク ロックの周期 ) 必要です。 チップセレクト遅延サイクル数かライトアクセスセットアッ プサイクルのどちらかを "1" 以上にする必要があります。 図 13.5-8, 表 13.5-8 では , チッ プセレクト遅延サイクル数 (ACS1, ACS0) を "01B" に設定しています。 268 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.5 MB91665 シリーズ ● 信号説明 • SYSCLK 端子 バスクロックを出力します。MB91F668(48pin) では SYSCLK 端子はありません。 • AS 端子 アドレスストローブ ("L" レベルで有効 ) を出力します。アクセスの開始を示します。 • A23 ∼ A00 端子 アクセス先のアドレス情報を出力します。 • CS0 ∼ CS3 端子 チップセレクト ("L" レベルで有効 ) を出力します。アクセス先が対応した CS 領域 内のアドレスであることを示します。MB91F668(48pin) では , CS0 端子は存在しま せん。 • WR0, WR1 端子 ライトストローブ ("L" レベルで有効 ) を出力します。ライトアクセスを示します。 MB91F668(48pin) では WR0 端子のみです。 • RD 端子 "H" レベル ( 無効 ) を出力します。 • D15 ∼ D00 端子 アドレス情報を出力した後に , 外部装置からデータを入力します。 ● アクセス手順 アドレス・データマルチプレックスバスのライト動作は次の手順で行います。 1. AS 端子にアドレスストローブを有効にして , A23 ∼ A00 端子と D15 ∼ D00 端子に アドレス情報を出力します。 2. D15 ∼ D00 端子に書込みデータを出力します。 3. CS0 ∼ CS3 端子にチップセレクトを有効にします。 4. WR 端子にライトストローブを有効にします。 5. WR 端子のライトストローブを無効にします。 6. CS0 ∼ CS3 端子のチップセレクトを無効にします。 D15 ∼ D00 端子と A15 ∼ A00 端子のアドレス情報は同じです。A23 ∼ A00 端子のア ドレス情報は , ライト動作が終了するまで出力されます。 D15 ∼ D00 端子の書込みデータは , ライト動作が終了するまで出力されます。 各信号の出力期間 , 出力タイミングを CS ウェイトレジスタ (AWR0 ∼ AWR3) を設定 して変更することができます。「13.6 タイミング設定」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 269 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ 13.6 タイミング設定 外部バスインタフェースのタイミング設定について説明します。様々な外部装置を接続する ために , 信号線の出力期間と出力タイミングを設定することができます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) のビットを設定することで , 次のタイミングを 設定することができます。 ・ リードアクセスオートウェイト ・ ライトアクセスオートウェイト ・ リードアクセスアイドルサイクル ・ ライトリカバリサイクル ・ リードアクセスセットアップサイクル ・ リードアクセスホールドサイクル ・ ライトアクセスセットアップサイクル ・ ライトアクセスホールドサイクル ・ チップセレクト遅延サイクル ・ アドレス出力延長サイクル ・ アドレスストローブ出力延長サイクル < 注意事項 > 本項では , タイミング設定により変化するタイミングを理解しやすくするため , 各期間を 最小の値に設定したものを基本プロトコルとして説明します。 初期値とは設定が異なりますのでご注意ください。 270 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ 13.6.1 リードアクセスオートウェイト リードアクセスのオートウェイトサイクル数の設定です。リードアクセスオートウェイトに より , リードストローブの有効期間が延長されます。 リードストローブの有効期間は延長なしの最短で 1T (T: バスクロックの周期 ) です。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の RWT3 ∼ RWT0 ビットで , 延長する期間を 0T ∼ 15T (T: バスクロックの周期 ) の範囲で設定できます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の RWT3 ∼ RWT0 の設定値とリードストロー ブの出力期間を表 13.6-1 に示します。 表 13.6-1 RWT3 ∼ RWT0 の設定値とリードストローブの出力期間 RWT3 RWT2 RWT1 RWT0 延長期間 0 0 0 1 0T リードストローブ 出力期間 1T 0 0 0 1 1T 2T 0 0 1 0 2T 3T 0 0 1 1 3T 4T 0 1 0 0 4T 5T 0 1 0 1 5T 6T 0 1 1 0 6T 7T 0 1 1 1 7T 8T 1 0 0 0 8T 9T 1 0 0 1 9T 10T 1 0 1 0 10T 11T 1 0 1 1 11T 12T 1 1 0 0 12T 13T 1 1 0 1 13T 14T 1 1 1 0 14T 15T 1 1 1 1 15T 16T T: バスクロックの周期 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 271 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス リードアクセスのオートウェイトサイクル数を "1" に設定した例を図 13.6-1 に示しま す。 図 13.6-1 リードアクセスオートウェイトの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 A RWT :外部装置からの入力データ 図 13.6-1 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-2 に示します。 表 13.6-2 各ビットの設定値 設定項目 リードアクセスオートウェイト 272 ビット RWT3 ∼ RWT0 FUJITSU SEMICONDUCTOR LIMITED 設定値 0001 CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス リードアクセスオートウェイトサイクルを "1" に設定した例を図 13.6-2 に示します。 図 13.6-2 リードアクセスオートウェイトの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 3 A ACS RWT A :外部装置からの入力データ 図 13.6-2 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-3 に示します。 表 13.6-3 各ビットの設定値 設定項目 ビット 設定値 リードアクセスオートウェイト RWT3 ∼ RWT0 0001 チップセレクト遅延サイクル数 ACS1, ACS0 01 図 13.6-2, 表 13.6-3では, アドレス•データマルチプレックスバスのプロトコルの制約条 件により , チップセレクト遅延サイクル数を 1T (T: バスクロックの周期 ) に設定してい ます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 273 第 13 章 外部バス インタフェース 13.6 13.6.2 MB91665 シリーズ ライトアクセスオートウェイト ライトアクセスのオートウェイトサイクル数の設定です。ライトアクセスオートウェイトサ イクルにより , ライトストローブの有効期間が延長されます。 ライトストローブの有効期間は延長なしの最短で 1T (T: バスクロックの周期 ) です。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の WWT3 ∼ WWT0 ビットで , 延長する期間を 0T ∼ 15T (T: バスクロックの周期 ) に設定できます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の WWT3 ∼ WWT0 の設定値とライトストロー ブの出力期間を表 13.6-4 に示します。 表 13.6-4 WWT3 ∼ WWT0 の設定値とライトストローブの出力期間 WWT3 WWT2 WWT1 WWT0 延長期間 出力期間 ( 合計 ) 0 0 0 1 0T 1T 0 0 0 1 1T 2T 0 0 1 0 2T 3T 0 0 1 1 3T 4T 0 1 0 0 4T 5T 0 1 0 1 5T 6T 0 1 1 0 6T 7T 0 1 1 1 7T 8T 1 0 0 0 8T 9T 1 0 0 1 9T 10T 1 0 1 0 10T 11T 1 0 1 1 11T 12T 1 1 0 0 12T 13T 1 1 0 1 13T 14T 1 1 1 0 14T 15T 1 1 1 1 15T 16T T: バスクロックの周期 274 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス ライトアクセスオートウェイトサイクルを "1" に設定した例を図 13.6-3 に示します。 図 13.6-3 ライトアクセスオートウェイトの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 A WWT D 図 13.6-3 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-5 に示します。 表 13.6-5 各ビットの設定値 設定項目 ライトアクセスオートウェイト CM71-10158-1 ビット WWT3 ∼ WWT0 FUJITSU SEMICONDUCTOR LIMITED 設定値 0001 275 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス ライトアクセスオートウェイトサイクルを "1" に設定した例を図 13.6-4 に示します。 図 13.6-4 ライトアクセスオートウェイトの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 3 A ACS WWT A D 図 13.6-4 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-6 に示します。 表 13.6-6 各ビットの設定値 設定項目 チップセレクト遅延サイクル数 ビット ACS1, ACS0 01 設定値 ライトアクセスオートウェイト WWT3 ∼ WWT0 0001 図 13.6-4では, アドレス•データマルチプレックスバスのプロトコルの制約条件により , チップセレクト遅延サイクル数を 1T (T: バスクロックの周期 ) に設定しています。 276 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ リードアクセスアイドルサイクル 13.6.3 リードアクセスのアイドルサイクル数の設定です。リードアクセスアイドルサイクルを 1 以 上に設定すると , リードアクセス終了後にアイドルサイクルが挿入されます。 リードアクセスアイドルサイクルでは , すべてのチップセレクトは無効になり , D15 ∼ D00 端子は Hi-Z になります。リードアクセスアイドルサイクルを挿入することにより , 出力オフタイムが長い外部装置からのリードデータと , それに続くアクセスに関係す るデータがバス上で衝突することを防ぎます。 リードアクセスアイドルサイクルは , リードアクセスに連続して次のいずれかのアク セスが行われる場合に , リードアクセス終了後に挿入されます。 • ライトアクセス • 別の CS 領域へのアクセス • アドレス・データマルチプレックスバスタイプに設定されたCS領域に対するアクセ ス CS ウェイトレジスタ (AWR0 ∼ AWR3) の RIDL1, RIDL0 ビットで , リードアクセスア イドルサイクルの期間を 0T ∼ 3T (T: バスクロックの周期 ) に設定できます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の RIDL1, RIDL0 ビットの設定値とリードアク セスアイドルサイクル数を表 13.6-7 に示します。 表 13.6-7 RIDL1, RIDL0 ビットとリードアクセスアイドルサイクル数 RIDL1 RIDL0 アイドルサイクル数 0 0 0T ( リードアクセスアイドルなし ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 < 注意事項 > アドレス・データスプリットバスの同一の CS 領域に , リードアクセスが連続して行われ た場合は , リードアクセスアイドルサイクルは挿入されません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 277 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス リードアクセスアイドルサイクルを "1" に設定した例を図 13.6-5 に示します。 図 13.6-5 リードアクセスアイドルサイクルの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 A RIDL :外部装置からの入力データ 図 13.6-5 での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定した ビット ) を表 13.6-8 に示します。 表 13.6-8 各ビットの設定値 設定項目 リードアクセスアイドルサイクル 278 ビット RIDL1, RIDL0 FUJITSU SEMICONDUCTOR LIMITED 設定値 01 CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス リードアクセスのアイドルサイクル数を "1" に設定した例を図 13.6-6 に示します。 図 13.6-6 リードアクセスアイドルサイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 3 A ACS RIDL A :外部装置からの入力データ 図 13.6-6 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-9 に示します。 表 13.6-9 各ビットの設定値 設定項目 チップセレクト遅延サイクル数 ビット ACS1, ACS0 設定値 01 リードアクセスアイドルサイクル RIDL1, RIDL0 01 図 13.6-6では, アドレス•データマルチプレックスバスのプロトコルの制約条件により , チップセレクト遅延サイクル数を 1T (T: バスクロックの周期 ) に設定しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 279 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ライトリカバリサイクル 13.6.4 ライトアクセスのリカバリサイクル数の設定です。ライトリカバリサイクルを 1 以上に設定 すると , ライトアクセス終了後にリカバリサイクルが挿入されます。 ライトリカバリサイクルでは , すべてのチップセレクトとライトストローブが無効に なり , D15 ∼ D00 端子は Hi-Z になります。ライトアクセス後に , 次にアクセスする外 部装置がアクセス間に制限がある装置の場合にライトリカバリサイクルを挿入しま す。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の WRCV1, WRCV0 ビットで , ライトリカバリ サイクルの期間を 0T ∼ 3T (T: バスクロックの周期 ) に設定できます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の WRCV1, WRCV0 ビットの設定値とライト リカバリサイクル数を表 13.6-10 に示します。 表 13.6-10 WRCV1, WRCV0 ビットとライトリカバリサイクル数 WRCV1 WRCV0 ライトリカバリサイクル数 0 0 0T ( ライトリカバリなし ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 < 注意事項 > ライトリカバリサイクルの期間を 0T (T: バスクロックの周期 ) 以外に設定した場合は , ラ イトアクセスの後に必ずライトリカバリサイクルが挿入されます。 280 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス ライトリカバリサイクルを 1T (T: バスクロックの周期 ) に設定した例を図 13.6-7 に示 します。 図 13.6-7 ライトリカバリサイクルの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 A WRCV D 図 13.6-7 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-11 に示します。 表 13.6-11 各ビットの設定値 設定項目 ライトリカバリサイクル CM71-10158-1 ビット WRCV1, WRCV0 FUJITSU SEMICONDUCTOR LIMITED 設定値 01 281 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス ライトリカバリサイクルを 1T (T: バスクロックの周期 ) に設定した例を図 13.6-8 に示 します。 図 13.6-8 ライトリカバリサイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 3 A ACS A WRCV D 図 13.6-8 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-12 に示します。 表 13.6-12 各ビットの設定値 チップセレクト遅延サイクル数 設定項目 ビット ACS1, ACS0 01 設定値 ライトリカバリサイクル WRCV1, WRCV0 01 図 13.6-8では, アドレス•データマルチプレックスバスのプロトコルの制約条件により , チップセレクト遅延サイクル数を 1T (T: バスクロックの周期 ) に設定しています。 282 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ 13.6.5 リードアクセスセットアップサイクル リードアクセスのセットアップサイクル数の設定です。セットアップサイクルによりチップ セレクトを有効にしてから , リードストローブを有効にするまでの期間が延長されます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の CSRD1, CSRD0 ビットで , チップセレクト からリードストローブを有効にする期間を 0T ∼ 3T (T: バスクロックの周期 ) に設定で きます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の CSRD1, CSRD0 ビットの設定値と遅延サイ クル数を表 13.6-13 に示します。 表 13.6-13 CSRD1, CSRD0 ビットと遅延サイクル数 CSRD1 CSRD0 遅延サイクル数 0 0 0T ( チップセレクトと同時に有効 ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 ■ アドレス・データスプリットバス リードアクセスセットアップサイクルを 1T (T: バスクロックの周期 ) に設定した例を 図 13.6-9 に示します。 図 13.6-9 リードアクセスセットアップサイクルの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 A CSRD :外部装置からの入力データ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 283 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ 図 13.6-9 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定し たビット ) を表 13.6-14 に示します。 表 13.6-14 各ビットの設定値 設定項目 ビット CSRD1, CSRD0 リードアクセスセットアップサイクル 設定値 01 ■ アドレス・データマルチプレックスバス リードアクセスセットアップサイクルを 1T (T: バスクロックの周期 ) に設定した例を 図 13.6-10 に示します。 図 13.6-10 リードアクセスセットアップサイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 3 A CSRD A :外部装置からの入力データ 図 13.6-10 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-15 に示します。 表 13.6-15 各ビットの設定値 設定項目 リードアクセスセットアップサイクル 284 ビット CSRD1, CSRD0 FUJITSU SEMICONDUCTOR LIMITED 設定値 01 CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ < 注意事項 > バスタイプがアドレス・データマルチプレックスバスの場合 (BSTY=1) は , プロトコルが 正しく成立するように , CS ウェイトレジスタ (AWR0 ∼ AWR3) で次の条件を満たす設定 にしてください。 • ACS+CSRD ≧ 1 ACS:ACS1, ACS0 ビット 13.6.6 CSRD:CSRD1, CSRD0 ビット リードアクセスホールドサイクル リードアクセスのホールドサイクル数の設定です。ホールドサイクルによりチップセレクト を無効にしてから , リードストローブを無効にするまでの期間が延長されます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の RDCS1, RDCS0 ビットで , リードストロー ブからチップセレクトを無効にする期間を 0T ∼ 3T (T: バスクロックの周期 ) に設定で きます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の RDCS1, RDCS0 ビットの設定値と遅延サイ クル数を表 13.6-16 に示します。 表 13.6-16 RDCS1, RDCS0 ビットと遅延サイクル数 RDCS1 RDCS0 遅延サイクル数 0 0 0T ( リードストローブと同時に無効 ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 285 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス リードアクセスホールドサイクルを 1T (T: バスクロックの周期 ) に設定した例を図 13.6-11 に示します。 図 13.6-11 リードアクセスホールドサイクルの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 A RDCS :外部装置からの入力データ 図 13.6-11 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-17 に示します。 表 13.6-17 各ビットの設定値 設定項目 リードアクセスホールドサイクル 286 ビット RDCS1, RDCS0 FUJITSU SEMICONDUCTOR LIMITED 設定値 01 CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス リードアクセスホールドサイクルを 1T (T: バスクロックの周期 ) に設定した例を図 13.6-12 に示します。 図 13.6-12 リードアクセスホールドサイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 3 A ACS RDCS A :外部装置からの入力データ 図 13.6-12 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-18 に示します。 表 13.6-18 各ビットの設定値 設定項目 チップセレクト遅延サイクル数 ビット ACS1, ACS0 設定値 01 リードアクセスホールドサイクル RDCS1, RDCS0 01 図 13.6-12 では , アドレス • データマルチプレックスバスのプロトコルの制約条件によ り , チップセレクト遅延サイクル数を 1T (T: バスクロックの周期 ) に設定しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 287 第 13 章 外部バス インタフェース 13.6 13.6.7 MB91665 シリーズ ライトアクセスセットアップサイクル ライトアクセスのセットアップサイクル数の設定です。セットアップサイクルによりチップ セレクトを有効にしてから , ライトストローブを有効にするまでの期間が延長されます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の CSWR1, CSWR0 ビットで , チップセレクト からライトストローブを有効にする期間を 0T ∼ 3T (T: バスクロックの周期 ) に設定で きます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の CSWR1, CSWR0 ビットの設定値と遅延サイ クル数を表 13.6-19 に示します。 表 13.6-19 CSWR1, CSWR0 ビットと遅延サイクル数 CSWR1 CSWR0 遅延サイクル数 0 0 0T ( チップセレクトと同時に有効 ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 ■ アドレス・データスプリットバス ライトアクセスセットアップサイクルを 1T (T: バスクロックの周期 ) に設定した例を 図 13.6-13 に示します。 図 13.6-13 ライトアクセスセットアップサイクルの設定例 ( アドレス・データスプリットバス ) 1 288 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 A CSWR D FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ 図 13.6-13 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-20 に示します。 表 13.6-20 各ビットの設定値 設定項目 ビット CSWR1, CSWR0 ライトアクセスセットアップサイクル 設定値 01 ■ アドレス・データマルチプレックスバス ライトアクセスセットアップサイクルを 1T (T: バスクロックの周期 ) に設定した例を 図 13.6-14 に示します。 図 13.6-14 ライトアクセスセットアップサイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 3 A CSWR A D 図 13.6-13 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を , 表 13.6-21 に示します。 表 13.6-21 各ビットの設定値 設定項目 ライトアクセスセットアップサイクル ビット CSWR1, CSWR0 設定値 01 < 注意事項 > バスタイプがアドレス・データマルチプレックスバスの場合 (BSTY=1) は , プロトコルが 正しく成立するように , CS ウェイトレジスタ (AWR0 ∼ AWR3) で次の条件を満たす設定 にしてください。 • ACS+CSWR ≧ 1 ACS:ACS1, ACS0 ビット CM71-10158-1 CSWR:CSWR1, CSWR0 ビット FUJITSU SEMICONDUCTOR LIMITED 289 第 13 章 外部バス インタフェース 13.6 13.6.8 MB91665 シリーズ ライトアクセスホールドサイクル ライトアクセスのホールドサイクル数の設定です。ホールドサイクルによりチップセレクト を無効にしてから , ライトストローブを無効にするまでの期間が延長されます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の WRCS1, WRCS0 ビットで , ライトストロー ブからチップセレクトを無効にする期間を 0T ∼ 3T (T: バスクロックの周期 ) に設定で きます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の WRCS1, WRCS0 ビットの設定値とライトア クセスホールドサイクル数を表 13.6-22 に示します。 表 13.6-22 WRCS1, WRCS0 ビットと遅延サイクル数 WRCS1 WRCS0 ライトアクセスホールドサイクル数 0 0 0T ( ライトストローブと同時に無効 ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 ■ アドレス・データスプリットバス ライトアクセスホールドサイクルを 1T (T: バスクロックの周期 ) に設定した例を図 13.6-15 に示します。 図 13.6-15 ライトアクセスホールドサイクルの設定例 ( アドレス・データスプリットバス ) 1 290 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 A WRCS D FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ 図 13.6-15 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-23 に示します。 表 13.6-23 各ビットの設定値 設定項目 ビット WRCS1, WRCS0 ライトアクセスホールドサイクル 設定値 01 ■ アドレス・データマルチプレックスバス ライトアクセスホールドサイクルを 1T (T: バスクロックの周期 ) に設定した例を図 13.6-16 に示します。 図 13.6-16 ライトアクセスホールドサイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 データ 2 3 A ACS WRCS A D 図 13.6-16 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-24 に示します。 表 13.6-24 各ビットの設定値 設定項目 チップセレクト遅延サイクル数 ビット ACS1, ACS0 01 設定値 ライトアクセスホールドサイクル WRCS1, WRCS0 01 図 13.6-16 では , アドレス • データマルチプレックスバスのプロトコルの制約条件によ り , チップセレクト遅延サイクル数を 1T (T: バスクロックの周期 ) に設定しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 291 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ チップセレクト遅延サイクル 13.6.9 チップセレクト遅延サイクル数の設定です。アドレスストローブを有効にしてから , チップ セレクトを有効にするまでの期間を設定します。 チップセレクトの出力に対して , アドレスが一定のセットアップ時間を必要とする場 合や , 連続して同一 CS 領域にアクセスした場合にチップセレクトのエッジを必要とす るときに使用します。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の ACS1, ACS0 ビットで , アドレスストローブ からチップセレクトを有効するタイミングを 0T ∼ 3T (T: バスクロックの周期 ) 遅延さ せることができます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の ACS1, ACS0 ビットの設定値と遅延サイクル 数を表 13.6-25 に示します。 表 13.6-25 ACS1, ACS0 ビットと遅延サイクル数 ACS1 ACS0 遅延サイクル数 0 0 0T ( アドレスストローブの出力と同時に出力 ) 0 1 1T 1 0 2T 1 1 3T T: バスクロックの周期 < 注意事項 > バスタイプがアドレス・データマルチプレックスバスの場合 (BSTY=1) は , プロトコルが 正しく成立するように , CS ウェイトレジスタ (AWR0 ∼ AWR3) で次の条件をすべて満た す設定にしてください。 • ACS+CSRD ≧ 1 ACS:ACS1, ACS0 ビット • ACS+CSWR ≧ 1 ACS:ACS1, ACS0 ビット 292 CSRD:CSRD1, CSRD0 ビット CSWR:CSWR1, CSWR0 ビット FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス チップセレクトを 1T (T: バスクロックの周期 ) 遅延させた例を図 13.6-17 に示します。 図 13.6-17 チップセレクト遅延サイクルの設定例 ( アドレス・データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 3 A ACS :外部装置からの入力データ 図 13.6-17 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-26 に示します。 表 13.6-26 各ビットの設定値 設定項目 チップセレクト遅延サイクル数 CM71-10158-1 ビット ACS1, ACS0 FUJITSU SEMICONDUCTOR LIMITED 設定値 01 293 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス チップセレクトを 1T (T: バスクロックの周期 ) 遅延させた例を図 13.6-18 に示します。 図 13.6-18 チップセレクト遅延サイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 A ACS A D 図 13.6-18 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-27 に示します。 表 13.6-27 各ビットの設定値 設定項目 チップセレクト遅延サイクル数 294 ビット ACS1, ACS0 FUJITSU SEMICONDUCTOR LIMITED 設定値 01 CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ アドレス出力延長サイクル 13.6.10 アドレス・データマルチプレックスバスのとき (BSTY=1) のアドレス出力延長サイクルの設 定です。D15 ∼ D00 端子にアドレス情報を出力する期間を設定します。 D15 ∼ D00 端子からアドレスを出力する期間 ( アドレス出力サイクル ) は , 最小で 1T (T: バスクロック ) の周期 ) です。CS ウェイトレジスタ (AWR0 ∼ AWR3) の ADCY1, ADCY0 ビットで , アドレス出力延長サイクル数を 0T ∼ 3T (T: バスクロックの周期 ) に 設定できます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の ADCY1, ADCY0 ビットの設定値とアドレス 出力サイクルを表 13.6-28 に示します。 表 13.6-28 ADCY1, ADCY0 ビットと延長サイクル ADCY1 ADCY0 延長期間 アドレス出力サイクル ( 合計 ) 0 0 0T ( 遅延なし ) 1T 0 1 1T 2T 1 0 2T 3T 1 1 3T 4T T: バスクロックの周期 < 注意事項 > アドレス出力延長サイクルは , アドレスストローブ出力延長サイクルより同じか長くなる ように設定してください。アドレス出力延長サイクルがアドレスストローブ出力延長サイ クルより短くなるような設定の場合には , アドレス出力延長サイクルとしてアドレススト ローブ出力延長サイクルが使用されます。 • ADCY ≧ ASCY • if (ADCY<ASCY) then ADCY =ASCY ADCY:ADCY1, ADCY0 ビット ASCY:ASCY1, ASCY0 ビット CS ウェイトレジスタ (AWR0 ∼ AWR3) の ADCY1, ADCY0 ビットでアドレス出力サイク ルを変更しても , ほかの信号の出力期間や出力タイミングは変更されません。 そのため, アドレス出力サイクルを変更する場合は,プロトコルが正しく成立するように , 次の条件をすべて満たすように , CS ウェイトレジスタ (AWR0 ∼ AWR3) を設定してくだ さい。 • ADCY+1 ≦ ACS+CSRD ADCY:ADCY1, ADCY0 ビット ACS:ACS1, ACS0 ビット CSRD:CSRD1, CSRD0 ビット • ADCY+1 ≦ ACS+CSWR ADCY:ADCY1, ADCY0 ビット ACS:ACS1, ACS0 ビット CSWR:CSWR1, CSWR0 ビット CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 295 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス アドレス出力サイクルを 1T (T: バスクロックの周期 ) 延長した例を図 13.6-19 に示しま す。 図 13.6-19 アドレス出力延長サイクルの設定例 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 3 A ACS CSRD A ADCY :外部装置からの入力データ 図 13.6-19 の例での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定 したビット ) を表 13.6-29 に示します。 表 13.6-29 各ビットの設定値 アドレス出力延長サイクル数ビット 設定項目 ビット ADCY1, ADCY0 01 設定値 チップセレクト遅延サイクル数 ACS1, ACS0 01 リードアクセスセットアップサイクル CSRD1, CSRD0 01 表 13.6-29 では , アドレス • データマルチプレックスバスのプロトコルの制約条件の ADCY+1 ≦ ACS+CSRD により , チップセレクト遅延サイクル数を 1T (T: バスクロック の周期 ), リードアクセスセットアップサイクルを 1T (T: バスクロックの周期 ) に設定 しています。 296 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ アドレスストローブ出力延長サイクル 13.6.11 アドレスストローブ出力延長サイクルの設定です。アドレスストローブを有効にする期間を 設定します。 アドレスストローブの出力期間は , 最小で 1T (T: バスクロックの周期 ) です。アドレス ストローブの出力期間は , CS ウェイトレジスタ (AWR0 ∼ AWR3) の ASCY ビットで 0T ∼ 1T (T: バスクロックの周期 ) まで延長できます。 CS ウェイトレジスタ (AWR0 ∼ AWR3) の ASCY ビットの設定値と , アドレスストロー ブの出力期間を表 13.6-30 に示します。 表 13.6-30 ASCY ビットとアドレスストローブの出力周期 ASCY 延長周期 合計出力期間 0 0T ( 延長しない ) 1T 1 1T 2T T: バスクロックの周期 < 注意事項 > アドレスストローブの出力期間を延長する場合は , プロトコルが正しく成立するように , CS ウェイトレジスタ (AWR0 ∼ AWR3) で次の条件を満たす設定にしてください。 • バスタイプがアドレス・データスプリットバスの場合 (BSTY=0) - ACS+CSRD+RWT+RDCS ≧ 1 ACS:ACS1, ACS0 ビット CSRD:CSRD1, CSRD0 ビット RWT:RWT3 ∼ RWT0 ビット RDCS:RDCS1, RDCS0 ビット - ACS+CSWR+WWT+WRCS ≧ 1 • ACS:ACS1, ACS0 ビット CSWR:CSWR1, CSWR0 ビット WWT:WWT3 ∼ WWT0 ビット WRCS:WRCS1, WRCS0 ビット バスタイプがアドレス・データマルチプレックスバスの場合 (BSTY=1) - ACS+CSRD ≧ 2 - ADCY+1 ≦ ACS+CSRD ACS:ACS1, ACS0 ビット CSRD:CSRD1, CSRD0 ビット - ACS+CSWR ≧ 2 - ADCY+1 ≦ ACS+CSWR ACS:ACS1, ACS0 ビット CM71-10158-1 CSWR:CSWR1, CSWR0 ビット FUJITSU SEMICONDUCTOR LIMITED 297 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データスプリットバス アドレスストローブ出力延長サイクルを 1T (T: バスクロックの周期 ) 延長した例を図 13.6-20 に示します。 図 13.6-20 アドレスストローブ出力延長サイクルの設定例 ( アドレス • データスプリットバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD リードストローブ 端子 信号 D15 ∼ D00 データ 2 3 ASCY A CSRD :外部装置からの入力データ 図 13.6-20 での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定した ビット ) を表 13.6-31 に示します。 表 13.6-31 各ビットの設定値 設定項目 アドレスストローブ出力延長サイクル数 ビット 設定値 ASCY 1 リードアクセスセットアップサイクル数 CSRD1, CSRD0 01 表 13.6-31 では , プロトコルの制約条件により , リードアクセスセットアップサイクル を 1T (T: バスクロックの周期 ) に設定しています。 298 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.6 MB91665 シリーズ ■ アドレス・データマルチプレックスバス アドレスストローブ出力延長サイクルを 1T (T: バスクロックの周期 ) 延長した例を図 13.6-21 に示します。 図 13.6-21 アドレスストローブ出力延長サイクルの設定例 ( アドレス・データマルチプレックスバス ) 1 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 端子 信号 A23 ∼ A00 アドレス情報 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 WR0, WR1 ライトストローブ 端子 信号 D15 ∼ D00 アドレス / データ 2 3 ASCY A ACS A ADCY D 図 13.6-21 での CS ウェイトレジスタ (AWR0 ∼ AWR3) の設定値 ("0" 以外に設定した ビット ) を表 13.6-32 に示します。 表 13.6-32 各ビットの設定値 設定項目 ビット 設定値 アドレスストローブ出力延長サイクル数 ASCY 1 チップセレクト遅延サイクル数 ACS1, ACS0 10 アドレス出力延長サイクル数 ADCY1, ADCY0 01 表 13.6-32 では , アドレス • データマルチプレックスバスのプロトコルの制約条件によ り , チップセレクト遅延サイクルを 2T (T: バスクロックの周期 ) に , アドレス出力延長 サイクル数を 1T (T: バスクロックの周期 ) に設定しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 299 第 13 章 外部バス インタフェース 13.7 MB91665 シリーズ 13.7 RDY 端子によるアクセスサイクルの延長 外部バスインタフェースの RDY 端子によるアクセスサイクルの延長について説明します。 RDY 端子から "L" レベルの信号を入力すると , リードストローブ / ライトストローブ の有効期間を延長できます。 RDY 端子から "H" レベルの信号を入力すると , 次のサイクルでリードストローブ / ラ イトストローブを無効にし , リードアクセスサイクル , ライトアクセスサイクルを終了 します。 RDY 端子でのアクセスサイクルの延長機能を利用する場合は , CS ウェイトレジスタ (AWR0 ∼ AWR3) の RDYE ビットに "1" を書き込みます。 < 注意事項 > この機能を有効にする場合は , CS ウェイトレジスタ (AWR0 ∼ AWR3) の RWT3 ∼ RWT0 ビットおよび WWT3 ∼ WWT0 ビットで , リードアクセスオートウェイト / ライトアクセ スオートウェイトの期間が "2" 以上になるように設定してください。 300 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.7 MB91665 シリーズ RDY 端子によるアクセスサイクルの延長例を図 13.7-1 に示します。 図 13.7-1 RDY 端子によるアクセスサイクルの延長例 0 端子 SYSCLK バスクロック 端子 信号 AS アドレスストローブ 1 2 3 4 5 6 7 8 9 10 オートウェイトサイクルを 2 サイクルに設定した基本例 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD, リードストローブ 端子 信号 WR0, WR1, ライトストローブ オートウェイトサイクル RDY を利用して上の基本例に対し , ウェイトサイクルを 3 サイクル 延長した例 端子 信号 RDY ウェイトサイクル延長 端子 信号 CS0 ∼ CS3 チップセレクト 端子 信号 RD, リードストローブ 端子 信号 WR0, WR1, ライトストローブ オートウェイトサイクル RDY による延長サイクル 図 13.7-1 でのリードアクセスオートウェイトレジスタ (RWT0 ∼ RWT3) およびライト アクセスオートウェイトレジスタ (WWT0 ∼ WWT3) の設定値を表 13.7-1 に示します。 表 13.7-1 各ビットの設定値 CM71-10158-1 設定項目 ビット リードアクセスオートウェイト RWT3 ∼ RWT0 設定値 0010 ライトアクセスオートウェイト WWT3 ∼ WWT0 0010 FUJITSU SEMICONDUCTOR LIMITED 301 第 13 章 外部バス インタフェース 13.7 MB91665 シリーズ < 注意事項 > 302 • オートウェイト期間を延長しないときは , RDY 端子から "H" レベルの信号を入力して ください。 • アドレスストローブの出力 (AS 端子から "L" レベルを出力 ) およびチップセレクトの 出力 (CS0 ∼ CS3 端子から "L" レベルを出力 ) を確認してから , RDY 端子から "L" レ ベルの信号の入力を開始してください。 • RDY 端子から "L" レベルの信号の入力は , オートウェイト期間の終了までに開始して ください。 • 必要な延長サイクルが終了したら , RDY 端子から "H" レベルの信号を入力してくださ い。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.8 MB91665 シリーズ 13.8 アクセスサイクル数 外部バスインタフェースの 1 回のバスアクセスに必要なサイクル数について説明します。 ■ アドレス・データスプリットバス リードアクセスおよびライトアクセスのサイクル数は , 次の式で求められます。 • リードアクセス時 アドレス / データ出力 (1T) +ACS (0 ∼ 3T) +CSRD (0 ∼ 3T) +RWT (0 ∼ 15T) +RDCS (0 ∼ 3T) = 最小 1T ∼最大 25T • ACS :アドレス出力延長サイクル数 CSRD :リードアクセスセットアップサイクル数 RWT :リードアクセスオートウェイト期間 RDCS :リードアクセスホールドサイクル数 T : バスクロックの周期 ライトアクセス時 アドレス/データ出力 (1T) +ACS (0∼3T) +CSWR (0∼3T) +WWT (0∼15T) +WRCS (0 ∼ 3T) = 最小 1T ∼最大 25T ACS :アドレス出力延長サイクル数 CSWR :ライトアクセスセットアップサイクル数 WWT : ライトアクセスオートウェイト期間 WRCS :ライトアクセスホールドサイクル数 T : バスクロックの周期 ■ アドレス・データマルチプレックスバス リードアクセスおよびライトアクセスのサイクル数は , 次の式で求められます。 • リードアクセス時 アドレス出力 (1T) +ACS (0 ∼ 3T) +CSRD (0 ∼ 3T) + データ出力 (1T) +RWT (0 ∼ 15T) +RDCS (0 ∼ 3T) = 最小 2T ∼最大 26T CM71-10158-1 ACS :アドレス出力延長サイクル数 CSRD :リードアクセスセットアップサイクル数 RWT : リードアクセスオートウェイト期間 RDCS :リードアクセスホールドサイクル数 T : バスクロックの周期 FUJITSU SEMICONDUCTOR LIMITED 303 第 13 章 外部バス インタフェース 13.8 • MB91665 シリーズ ライトアクセス時 アドレス出力 (1T) +ACS (0 ∼ 3T) +CSWR (0 ∼ 3T) + データ出力 (1T) +WWT (0 ∼ 15T) +WRCS (0 ∼ 3T) = 最小 2T ∼最大 26T 304 ACS :アドレス出力延長サイクル数 CSWR :ライトアクセスセットアップサイクル数 WWT : ライトアクセスオートウェイト期間 WRCS :ライトアクセスホールドサイクル数 T : バスクロックの周期 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.9 MB91665 シリーズ 13.9 アドレス情報とアドレスアラインメント 外部バスインタフェースのアドレス情報とアドレスアラインメントについて説明します。 13.9.1 アドレス情報 外部バスインタフェースのバスタイプとアドレスタイプについて説明します。 アドレス情報が出力される端子は , 次の設定の組み合わせによって異なります。 • バスタイプ (CS バス設定レジスタ (ACR0 ∼ ACR3) の BSTY ビット ) • アドレスタイプ (CS バス設定レジスタ (ACR0 ∼ ACR3) の ADTY ビット ) • データバス幅 (CS バス設定レジスタ (ACR0 ∼ ACR3) の DBW1, DBW0 ビット ) CS バス設定レジスタ (ACR0 ∼ ACR3) の設定値とアドレス情報を出力する端子の対応 を表 13.9-1 に示します。 表 13.9-1 CS バス設定レジスタ (ACR0 ∼ ACR3) の設定値とアドレス情報を 出力する端子の対応 アドレス タイプ (ADTY) 0 バスタイプ バス幅 (DBW1, DBW0) (BSTY) A23 ∼ A16 D15 ∼ D08 D07 ∼ D00 端子 端子 A07 ∼ A00 ( アドレス出 ( アドレス出 端子 * 力サイクル ) 力サイクル ) 0 bit7 ∼ bit0 00 (8 ビット ) − − 01 (16 ビット ) 1 1 0 1 00 (8 ビット ) bit23 ∼ bit16 bit7 ∼ bit0 − 01 (16 ビット ) bit23 ∼ bit16 bit15 ∼ bit8 bit7 ∼ bit0 00 (8 ビット ) bit7 ∼ bit0 − − 01 (16 ビット ) bit8 ∼ bit1 − − 00 (8 ビット ) bit23 ∼ bit16 bit7 ∼ bit0 − 01 (16 ビット ) bit24 ∼ bit17 bit16 ∼ bit9 bit8 ∼ bit1 * MB91F669では I/O ポート制御部の外バスアドレス選択レジスタ(EXBS) の MSSビッ トで選択します。 MB91F668 にはアドレス端子はありません。 ADTY:0= 通常出力 , 1= アドレスシフト出力 BSTY:0=アドレス・データスプリットバス, 1=アドレス・データマルチプレックスバス CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 305 第 13 章 外部バス インタフェース 13.9 13.9.2 MB91665 シリーズ アドレスアラインメント アドレスアラインメントについて説明します。 外部バスインタフェースは , アクセス先アドレスのミスアラインエラーを検出しませ ん。したがって , ワードアクセス , ハーフワードアクセスの場合には , 次のように強制 的なアラインメントが施されます。 • ワードアクセスの場合 (32 ビットアクセス ) プログラムで指定したアドレスの最下位 2 ビットにかかわらず , 出力するアドレス の下位 2 ビットはすべて "00" となります。 • ハーフワードアクセスの場合 (16 ビットアクセス ) プログラムで指定したアドレスの最下位 2 ビットが "00", "01" の場合は , 出力する アドレスの下位 2 ビットは "00" となり , "10", "11" の場合は , 出力するアドレスの最 下位 2 ビットは "10" となります。 306 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ 13.10 データアラインメント 外部バスインタフェースのデータアラインメントについて説明します。 ■ エンディアンについて 外部バスインタフェースでは , CS0 領域を除いた CS 領域に , バイトオーダリングを設 定できます。 バイトオーダリングは CS 領域設定レジスタ (ASR0 ∼ ASR3) の LEDN ビットで , ビッ グエンディアン (LEDN=0) / リトルエンディアン (LEDN=1) の中から設定します。 ビッグエンディアンとリトルエンディアンではデータの格納方法が異なります。 "01234567H" を格納する場合 • ビッグエンディアン 1 バイト目に "01", 2 バイト目に "23", 3 バイト目に "45", 4 バイト目に "67" を格納し ます。 ビッグエンディアン設定時のアクセスについては , 「13.10.1 ビッグエンディアン」 を参照してください。 • リトルエンディアン 1 バイト目に "67", 2 バイト目に "45", 3 バイト目に "23", 4 バイト目に "01" を格納し ます。 データバスのバイト位置をバス幅に応じてスワップさせて接続します。 リトルエンディアン設定時のアクセスについては , 「13.10.2 リトルエンディアン」 を参照してください。 ビッグエンディアンのデータフォーマットを図 13.10-1 に , リトルエンディアンのデー タフォーマットを図 13.10-2 に示します。 図 13.10-1 ビッグエンディアンのデータフォーマット メモリ 01 31 0 01 アドレス +0 アドレス 23 45 67 +1 +2 +3 レジスタバス 23 ハーフワードアクセス 45 67 01 アドレス +0 23 45 67 +1 +2 +3 バイトアクセス 01 CM71-10158-1 23 45 FUJITSU SEMICONDUCTOR LIMITED 67 307 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ワードデータまたはハーフワードデータをアドレス空間に配置するときに , 上位側の バイトが下位アドレス側 , 下位側のバイトが上位アドレス側の順番に並びます。 図 13.10-2 リトルエンディアンのデータフォーマット メモリ 31 0 01 67 アドレス +3 アドレス 23 45 67 +2 +1 +0 レジスタバス 45 ハーフワードアクセス 23 45 アドレス +1 01 67 01 23 +0 +3 +2 バイトアクセス 67 45 23 01 ワードデータまたはハーフワードデータをアドレス空間に配置するときに , 上位側の バイトが上位アドレス側 , 下位側のバイトが下位アドレス側の順番に並びます。 < 注意事項 > • CS0 領域はビッグエンディアンにのみ対応しています。CS0 領域をリトルエンディア ンに設定することはできません。 • 外部装置と接続する場合は , ビッグエンディアン領域とリトルエンディアン領域を物 理的に分けてください。 ■ 分割アクセスについて 外部バスインタフェースのアクセスサイズに対するデータアラインメントは , エン ディアンや データバス幅によって異なります。 データバス幅は , CS バス設定レジスタ (ACR0 ∼ ACR3) の DBW1, DBW0 ビットで , CS 領域ごとに 8 ビット /16 ビットを選択できます。 また, アクセスサイズがDBW1, DBW0ビットで設定したバス幅よりも大きい場合には , 1 つのアクセスが分割されて実行されます。アクセスサイズごとの分割アクセスの回数 を表 13.10-1 に示します。 表 13.10-1 分割アクセス回数 バス幅 アクセスサイズ バイト 308 ハーフワード ワード 8 ビット 1回 2回 4回 16 ビット 1回 1回 2回 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ビッグエンディアン 13.10.1 CS 領域設定レジスタ (ASR1 ∼ ASR3) の LEDN ビットを "0" に設定した場合は , その領域を ビッグエンディアンとして扱います。 ビッグエンディアンのアクセスと接続方法について説明します。 ■ ビッグエンディアンのアクセス ● 16 ビット外部バスインタフェースのアクセス ビッグエンディアン設定・データバス幅 16 ビット設定時の , アクセスサイズに対する データアラインメントと対応する制御信号を表 13.10-2 に示します。 なお , アクセスサイズがワードの場合は , 2 回に分割してアクセスされます。 表 13.10-2 16 ビット外部バスインタフェースのアクセス アクセス 出力端子 アドレス 下位 2 ビット 00 "00" 01 "00" 10 "10" 11 "11" ハ ー フ 0n ワード "00" データ bit15 ∼ bit8 データ bit7 ∼ bit0 ○ ○ 1n "10" データ bit15 ∼ bit8 データ bit7 ∼ bit0 ○ ○ nn 分割アクセス 1 回目:"00" データ bit31 ∼ bit24 データ bit23 ∼ bit16 ○ ○ 分割アクセス 2 回目:"10" データ bit15 ∼ 8 データ bit7 ∼ bit0 ○ ○ サイズ バイト ワード A01, A00 D15 ∼ D08 D07 ∼ D00 データ bit7 ∼ bit0 WR0 WR1 ○ データ bit7 ∼ bit0 データ bit7 ∼ bit0 ○ ○ データ bit7 ∼ bit0 ○ < 注意事項 > このアクセスは , CS バス設定レジスタ (ACR0 ∼ ACR3) の ADTY ビットが "0" ( シフトな し ) の場合の例です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 309 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ● 8 ビット外部バスインタフェースのアクセス ビッグエンディアン設定・データバス幅 8 ビット設定時の , アクセスサイズに対する データアラインメントと対応する制御信号を表 13.10-3 に示します。 なお , アクセスサイズがハーフワードの場合は 2 回に分割して , ワードの場合は 4 回に 分割してアクセスされます。 表 13.10-3 8 ビット外部バスインタフェースのアクセス アクセス サイズ バイト ハーフ ワード アドレス A01, A00 下位 2 ビット 00 "00" データ bit7 ∼ bit0 ○ 01 "01" データ bit7 ∼ bit0 ○ 10 "10" データ bit7 ∼ bit0 ○ 11 "11" データ bit7 ∼ bit0 ○ 0n 分割アクセス 1 回目:"00" データ bit15 ∼ bit8 ○ 分割アクセス 2 回目:"01" データ bit7 ∼ bit0 ○ 分割アクセス 1 回目:"10" データ bit15 ∼ bit8 ○ 分割アクセス 2 回目:"11" データ bit7 ∼ bit0 ○ 分割アクセス 1 回目:"00" データbit31∼bit24 ○ 分割アクセス 2 回目:"01" データbit23∼bit16 ○ 分割アクセス 3 回目:"10" データ bit15 ∼ bit8 ○ 分割アクセス 4 回目:"11" データ bit7 ∼ bit0 ○ 1n ワード 310 出力端子 nn D15 ∼ D08 FUJITSU SEMICONDUCTOR LIMITED D07 ∼ D00 WR0 WR1 CM71-10158-1 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ■ 非同期メモリとの接続方法 ビッグエンディアン設定領域での外部バス端子と非同期メモリとの接続例を示しま す。 ● 16 ビット外部バスインタフェースの接続例 CS3 領域は 16 ビットバス幅 , ビッグエンディアン設定領域とし , CS3 領域に 256K × 8 ビットの SRAM を 2 個接続した例です。 A18, A17, A16 端子 , WR0, WR1 端子 , D15 ∼ D00 端子を使用します。 上記の条件の接続例を図 13.10-3 に示します。 図 13.10-3 16 ビットバス幅の例 ( マルチプレックス時 ) (MB91F669(64pin)) LE 本 LSI OE AS D15 ∼ D00 D[17:0] Q[17:0] D15 ∼ D01 A18, A17, A16 A14 ∼ A00 A17, A16, A15 CS CS3 SRAM 256K×8ビット OE RD WE WR0 D15 ∼ D08 I/O7 ∼ I/O0 A17 ∼ A0 CS OE WR1 SRAM 256K×8ビット WE D07 ∼ D00 I/O7 ∼ I/O0 OE :出力許可 WE :書込み許可 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 311 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ● 8 ビット外部バスインタフェースの接続例 CS3 領域は 8 ビットバス幅 , ビッグエンディアン設定領域とし , CS3 領域に 256K × 8 ビットの SRAM を 1 個接続した例です。 A18, A17, A16 端子 , WR0, WR1 端子 , D15 ∼ D00 端子を使用します。 上記の条件の接続例を図 13.10-4 に示します。 図 13.10-4 8 ビットバス幅の例 ( マルチプレックス時 ) (MB91F669(64pin)) LE 本 LSI OE AS A17, A16, D15 ∼ D00 D[17:0] Q[17:0] A17 ∼ A00 A17, A16, D15 ∼ D00 CS3 CS RD OE WR0 WE D15 ∼ D08 SRAM 256K×8ビット I/O7 ∼ I/O0 OE :出力許可 WE :書込み許可 312 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ 13.10.2 リトルエンディアン CS 領域設定レジスタ (ASR1 ∼ ASR3) の LEDN ビットを "1" に設定した場合は , その領域は リトルエンディアンとして扱います。 リトルエンディアンのアクセスと接続方法について説明します。 ■ リトルエンディアンのアクセス ● 16 ビット外部バスインタフェースのアクセス リトルエンディアン設定・データバス幅 16 ビット設定時の , アクセスサイズに対する データアラインメントと対応する制御信号を表 13.10-4 に示します。 なお , アクセスサイズがワードの場合は , 2 回に分割してアクセスされます。 表 13.10-4 16 ビット外部バスインタフェースのアクセス アクセス サイズ バイト アドレス A00, A01 下位 2 ビット 00 "00" D15 ∼ D08 D07 ∼ D00 データ bit7 ∼ bit0 WR0 WR1 ○ 01 "01" 10 "10" 11 "11" ハーフ ワード 0n "00" データ bit7 ∼ bit0 データbit15∼bit8 ○ ○ 1n "10" データ bit7 ∼ bit0 データbit15∼bit8 ○ ○ ワード nn 分割アクセス 1 回目:"00" データ bit7 ∼ bit0 データbit15∼bit8 ○ ○ 分割アクセス 2 回目:"10" データ bit23 ∼ bit16 ○ 注) CM71-10158-1 出力端子 データ bit7 ∼ bit0 データ bit7 ∼ bit0 ○ ○ データ bit7 ∼ bit0 データ bit31 ∼ bit24 ○ ○ このアクセスは , CS バス設定レジスタ (ACR0 ∼ ACR3) の ADTY ビットが "0" ( シフトなし ) の場合の例です。 FUJITSU SEMICONDUCTOR LIMITED 313 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ● 8 ビット外部バスインタフェースのアクセス リトルエンディアン設定・データバス幅 8 ビット設定時の , アクセスサイズに対する データアラインメントと対応する制御信号を表 13.10-5 に示します。 なお , アクセスサイズがハーフワードの場合は 2 回に分割して , ワードの場合は 4 回に 分割してアクセスされます。 表 13.10-5 8 ビット外部バスインタフェースのアクセス アクセス サイズ バイト ハーフ ワード アドレス 下位 2 ビット 00 "00" データ bit7 ∼ bit0 ○ 01 "01" データ bit7 ∼ bit0 ○ 10 "10" データ bit7 ∼ bit0 ○ 11 "11" データ bit7 ∼ bit0 ○ 0n 分割アクセス 1 回目:"00" データ bit7 ∼ bit0 ○ 分割アクセス 2 回目:"01" データ bit15 ∼ bit8 ○ 分割アクセス 1 回目:"10" データ bit7 ∼ bit0 ○ 分割アクセス 2 回目:"11" データ bit15 ∼ bit8 ○ 分割アクセス 1 回目:"00" データ bit7 ∼ bit0 ○ 分割アクセス 2 回目:"01" データ bit15 ∼ bit8 ○ 分割アクセス 3 回目:"10" データbit23∼bit16 ○ 分割アクセス 4 回目:"11" データbit31∼bit24 ○ 1n ワード 314 出力端子 nn A00, A01 D15 ∼ D08 FUJITSU SEMICONDUCTOR LIMITED D07 ∼ D00 WR0 WR1 CM71-10158-1 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ■ リトルエンディアン外部装置との接続方法 リトルエンディアンの外部装置とのデータバス , バイトイネーブル信号の接続方法を 示します。 ● 16 ビット外部バスインタフェースの接続例 バス幅 16 ビットのリトルエンディアンの外部装置に接続する場合には , 図 13.10-5 に 示すようにデータバス幅をバイト単位でスワップさせて接続する必要があります。 図 13.10-5 データバス幅をバイト単位でスワップさせて接続する例 リトルエンディアン領域の外部装置 本 LSI 00 01 アドレス下位 2 ビット データバス端子 D15∼D08 D07∼D00 01 00 D15∼D08 D07∼D00 データバス端子 CS3 領域にリトルエンディアンの外部装置を接続した場合の例です。CS3 領域は 16 ビットバス幅 , リトルエンディアン設定領域とします。 上記の条件の接続例を図 13.10-6 に示します。 WR0, WR1 端子 , D15 ∼ D00 端子を使用します。 図 13.10-6 バス幅 16 ビット時のリトルエンディアンの外部装置とのデータバス接続方法 (MB91F669(64pin)) 本 LSI リトルエンディアン領域の外部装置 A07 ∼ A00 CS3 CS チップセレクト RD RD リードストローブ WR0 WR ライトストローブ D15 ∼ D08 WR1 D07 ∼ D00 CM71-10158-1 A07 ∼ A00 アドレスバス D07 ∼ D00 データバス (MSB) WR ライトストローブ D15 ∼ D08 データバス FUJITSU SEMICONDUCTOR LIMITED 315 第 13 章 外部バス インタフェース 13.10 MB91665 シリーズ ● 8 ビット外部バスインタフェースの接続例 接続例で使用するデータバスとバイトイネーブルのビット位置を図 13.10-7 に示しま す。 図 13.10-7 データバスとバイトイネーブルのビット位置 リトルエンディアン領域の外部装置 本 LSI 00 アドレス下位 2 ビット 00 D07∼D00 データバス端子 データバス端子 D15∼D08 CS3 領域にリトルエンディアンの外部装置を接続した場合の例を図 13.10-8 に示しま す。CS3 領域は 8 ビットバス幅 , リトルエンディアン設定領域とします。 上記の条件の接続例を図 13.10-8 に示します。 WR0 端子 , D15 ∼ D08 端子を使用します。 図 13.10-8 バス幅 8 ビット時のリトルエンディアンの外部装置とのデータバス接続方法 (MB91F669(64pin)) 本 LSI リトルエンディアンの外部装置 A07 ∼ A00 A07 ∼ A00 アドレスバス CS3 RD リードストローブ WR0 WR ライトストローブ D15 ∼ D08 316 CS チップセレクト RD D07 ∼ D00 データバス FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.11 MB91665 シリーズ 13.11 CS 領域設定手順 CS 領域の設定方法について説明します。 CS 領域は , 次の点に注意して設定してください。 • CS 領域の設定はリセット後の初期設定の中で行い , その後は変更しないでくださ い。 • ROM 内に配置する初期設定プログラムで CS 領域の変更・設定を行ってください。 < 注意事項 > CS 領域へのアクセス中に , 関係する CS 領域の設定を変更しないでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 317 第 13 章 外部バス インタフェース 13.11 MB91665 シリーズ ■ 設定手順 CS 領域設定手順例のフローを図 13.11-1 に示します。 図 13.11-1 CS 領域設定フロー CS 設定 CS0の設定を変更, または 0000 0000H ∼ 7FFF FFFFH 領域に 別の CS 領域を設けたい NO YES CS0を無効にする ASR0の CSEN ビットに"0" を書き込む ACR (n) に設定値を書き込む AWR (n) に設定値を書き込む CS 領域を有効にする ASR (n) に設定値を書き込む YES ほかの CS 領域を設定 NO ASR (n) を読み出す ASR (n) の読出し値と ASR (n) に 設定した値を比較する CS 設定完了 318 ASR (n) :ASR0 ∼ ASR3…CS 領域設定レジスタ ACR (n) :ACR0 ∼ ACR3…CS バス設定レジスタ AWR (n) :AWR0 ∼ AWR3…CS ウェイトレジスタ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.11 MB91665 シリーズ 1. CS 領域設定レジスタ (ASR0) にワードで "0000 0000H" を書き込む (CS0 領域を変更 する場合や 0000 0000H ∼ 7FFF FFFFH に別の CS 領域を割り当てる場合のみ ) 。 2. CS バス設定レジスタ (ACR0 ∼ ACR3) に設定値をワードで書き込む。 CS バス設定レジスタ (ACR0 ∼ ACR3) で次の設定を行います。 - データバス幅 - アドレスタイプ - バスタイプ 3. CS ウェイトレジスタ (AWR0 ∼ AWR3) に設定値をワードで書き込む。 4. CS 領域設定レジスタ (ASR0 ∼ ASR3) に設定値をワードで書き込む。 CS 領域設定レジスタ (ASR0 ∼ ASR3) で次の設定を行います。 - CS 領域 - 書込み許可 - バイトオーダリング (CS0 領域以外 ) - CS 領域の有効 / 無効 5. ほかの CS 領域を設定する場合は , 手順 2 ∼ 4 を繰り返して CS 領域を設定する。 6. CS 領域設定レジスタ (ASR0 ∼ ASR3) を読み出す。 7. 読出し値と CS 領域設定レジスタ (ASR0 ∼ ASR3) に設定した値を比較する。 CS 領域への設定が , 以降のアクセスに対して反映されることを確認するために , 最 後に設定したレジスタである CS 領域設定レジスタ (ASR0 ∼ ASR3) を読み出して , 設定値と読出し値が同じであることを確認してください。 CS 領域への設定が , 以降のアクセスに対して反映されることを待つために , 最後に設 定したレジスタである CS 領域設定レジスタ (ASR0 ∼ ASR3) を読み出して , 設定値と 読出し値を比較してください。読出しと比較はダミー処理です。比較結果に意味はあり ません。 < 注意事項 > • CS0 領域を変更する場合や 0000 0000H ∼ 7FFF FFFFH に別の CS 領域を割り当てる 場合は , はじめに CS0 領域設定レジスタ (ASR0) の CSEN ビットで CS0 領域を無効 (CSEN=0) にしてください。 • CS 領域設定レジスタ (ASR0 ∼ ASR3) 設定時の注意 - 各 CS 領域は重なり合わないように配置してください。CS 領域が重なっている場合 の動作は保証いたしません。 - 開始アドレスはアドレスの上位ビットを SADR31 ∼ SADR16 ビットに設定します。 ただし領域のサイズによって , あらかじめバウンダリが決められています。CS 領域 のサイズにしたがって , 有効な ASZ3 ∼ ASZ0 ビットを設定してください。無効な SADR31 ∼ SADR16 ビットには "0" を設定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 319 第 13 章 外部バス インタフェース 13.11 MB91665 シリーズ ■ CS 領域設定例 CS 領域設定レジスタ (ASR0 ∼ ASR3) の ASZ3 ∼ ASZ0 ビットと SADR31 ∼ SADR16 ビットの設定値と , 実際に割り当てられる CS 領域の例を示します。 • CS0 領域の設定 CS0 領域設定レジスタ (ASR0) :ASZ3 ∼ ASZ0=0010B CS0 領域設定レジスタ (ASR0) :SADR31 ∼ SADR16=002CH → 002C 0000H ∼ 002F FFFFH が CS0 領域になります。 • CS1 領域の設定 CS1 領域設定レジスタ (ASR1) :ASZ3 ∼ ASZ0=0000B CS1 領域設定レジスタ (ASR1) :SADR31 ∼ SADR16=0026H → 0026 0000 H ∼ 0026 FFFF H は CS1 領域になります。 • CS2 領域の設定 CS2 領域設定レジスタ (ASR2) :ASZ3 ∼ ASZ0=0100B CS2 領域設定レジスタ (ASR2) :SADR31 ∼ SADR16=0030H → 0030 0000H ∼ 003F FFFFH が CS2 領域になります。 • CS3 領域の設定 CS3 領域設定レジスタ (ASR3) :ASZ3 ∼ ASZ0=0010B CS3 領域設定レジスタ (ASR3) :SADR31 ∼ SADR16=0FFCH → 0FFC 0000H ∼ 0FFF FFFFH が CS3 領域になります。 < 注意事項 > 例えば , 0031 0000H から 1M バイトの空間を割り当てることはできません。 仮に以下の設定を行っても CS2 領域は 0030 0000H ∼ 003F FFFFH になります。 CS2 領域設定レジスタ (ASR2):ASZ3 ∼ ASZ0=0100B CS2 領域設定レジスタ (ASR2):SADR31 ∼ SADR16=0031H この設定の場合 , SADR31 ∼ SADR20 ビットが有効で SADR19 ∼ SADR16 ビットはアド レス比較対象にならないためです。 320 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 13 章 外部バス インタフェース 13.11 MB91665 シリーズ 上記の例の場合の CS 領域を図 13.11-2 に示します。 図 13.11-2 CS 領域例 初期状態 設定例 0000 0000H 0000 0000H 0026 0000H 0027 0000H CS1 領域 64 Kbyte CS0 領域 256 Kbyte CS2 領域 1 Mbyte CS3 領域 256 Kbyte 002C 0000H 0030 0000H CS0 領域 0040 0000H 0FFC 0000H 1000 0000H 7FFF FFFFH 7FFF FFFFH FFFF FFFFH FFFF FFFFH CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 321 第 13 章 外部バス インタフェース 13.11 322 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 14 章 I/O ポート I/O ポートの機能と動作について説明します。 14.1 概要 14.2 構成 14.3 端子 14.4 レジスタ 14.5 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 323 第 14 章 I/O ポート 14.1 MB91665 シリーズ 14.1 概要 本製品の端子を外部バスインタフェースや周辺機能で利用しないときは , I/O ポートとして使 用することができます。 ■ 概要 I/O ポートには , 次の特長があります。 • 端子ごとにI/Oポートを入力ポートとして利用するか, 出力ポートとして利用するか を設定できます。 • 端子ごとにI/Oポートとして利用するか, 周辺機能や外部バスインタフェースの端子 として利用するかを設定できます。 また , 各レジスタの設定により , 入出力モードを次の中から選択できます。 入出力モードを表 14.1-1 に示します。 表 14.1-1 入出力モード 入出力モード ポート入力モード ポート出力モード 周辺機能出力モード * PDR へのアクセス 読出し時 (RMW 系命令以外 ) 外部端子からのレベルが読み出され ます。 読出し時 (RMW 系命令 ) PDR の値を読み出します。 書込み時 書き込んだ値が PDR に格納されます。 読出し時 (RMW 系命令以外 ) PDR の値を読み出します。 読出し時 (RMW 系命令 ) PDR の値を読み出します。 書込み時 書き込んだ値がPDRに書き込まれ, 外 部端子へ出力されます。 読出し時 (RMW 系命令以外 ) 周辺機能からの出力レベル / PDR の値 が読み出されます。 読出し時 (RMW 系命令 ) PDR の値を読み出します。 書込み時 書き込んだ値が PDR に格納されます。 PDR: ポートデータレジスタ (PDR0 ∼ PDRK) RMW 系命令 : リードモディファイライト系命令 *: レジスタの設定により , 読み出される値が異なります。 • プルアップを端子ごとに設定できます。 • CPU がスタンバイモード ( ストップモード / 時計モード / メインタイマモード ) 中に , 端子に Hi-Z を設定すると , 入力は "0" に固定されます。ただし , 発生が許可されて いる外部割込み要求の入力は "0" に固定されず使用できます。 324 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.1 MB91665 シリーズ • 周辺機能を割り当てられる端子が複数ある場合に , どの端子に機能を割り当てるか を設定したり , 端子からの周辺機能出力を有効 / 無効にしたりできます。 ただし , 周辺機能の入出力が複数ある場合 , それぞれの入出力は同じグループの ポートに設定してください。 例 ) ch.1 マルチファンクションシリアルインタフェース設定例 シリアルデータ 出力 SOUT1 端子 (0 番ポート ) シリアルクロック 入出力 SCK1 端子 (0 番ポート ) SCK1_1 端子 (1 番ポート ) シリアルデータ 入力 有効ポート SIN1 端子 (0 番ポート ) 0 番ポート SIN1_1 端子 (1 番ポート ) 設定禁止 SIN1 端子 (0 番ポート ) SIN1_1 端子 (1 番ポート ) SOUT1_1 端子 (1 番ポート ) SCK1 端子 (0 番ポート ) SIN1 端子 (0 番ポート ) SIN1_1 端子 (1 番ポート ) SCK1_1 端子 (1 番ポート ) SIN1 端子 (0 番ポート ) SIN1_1 端子 (1 番ポート ) 1 番ポート < 注意事項 > 以下の端子は MB91V650 とポート機能の設定方法が異なり , 1 つの端子に対し最大で 3 つ の PFR レジスタを設定する必要があります。 設定値については , 「2.4 端子の設定方法」を参照してください。 P14 ∼ P17, P20 ∼ P27, P50 ∼ P57, P60, P61, P80, P81 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 325 第 14 章 I/O ポート 14.2 MB91665 シリーズ 14.2 構成 本製品には次の 3 種類の I/O ポートが内蔵されています。 • 通常の I/O ポート • アナログ入力兼用 I/O ポート • アナログ出力兼用 I/O ポート ■ 概要 本製品に内蔵されている 3 種類の I/O ポートについて説明します。 • 通常の I/O ポート 周辺機能の入出力機能と兼用されている基本的な構成のI/Oポートです。次のブロッ クで構成されています。 • - ポート機能レジスタ (PFR0 ∼ PFRH) - ポートデータ方向レジスタ (DDR0 ∼ DDRK) - 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) - プルアップ制御レジスタ (PCR0 ∼ PCR8) - ポートデータレジスタ (PDR0 ∼ PDRK) アナログ入力兼用 I/O ポート 10 ビット A/D コンバータのアナログ入力と兼用されている I/O ポートです。通常の I/O ポートのブロックとアナログ入力許可部で構成されています。 アナログ入力兼用ポートは P77 ∼ P70, P83 ∼ P80 になります。 • N-ch オープンドレイン制御 I/O ポート I/O ポート出力を N-ch オープンドレイン制御 (Low 出力のみ ) できる I/O ポートです。 - • オープンドレイン制御レジスタ (NDE0, NDE1) 外部バスアドレス選択機能 スプリットバス , マルチプレックスバス時にアドレス端子を切り換えます。 - 326 外部バスアドレス選択レジスタ (EXBS) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.2 MB91665 シリーズ ■ ブロックダイヤグラム ● 通常の I/O ポート 通常の I/O ポートのブロックダイヤグラムを図 14.2-1 に示します。 図 14.2-1 通常の I/O ポートのブロックダイヤグラム 外部バスインタフェース スレーブインタフェース 周辺機能 0 CMOS 入力選択 CMOS schmitt 1 DDR ポートデータ 方向制御 PFR 周 辺 バ ス Vcc EPFR R PCR PDR 端子 外部バス 制御出力 周辺機能出力 • 出力選択 ポートデータ方向レジスタ (DDR0 ∼ DDRK) 端子を汎用ポートとして使用するときは , 入出力方向を設定します。 外部バスインタフェースや周辺機能の端子として使用する場合は , ポートデータレ ジスタ (PDR0 ∼ PDRK) から , 何を読み出すかを設定します。 • ポート機能レジスタ (PFR0 ∼ PFRH) 端子の利用方法を選択するレジスタです。 • 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) 周辺機能を割り当てられる端子が複数ある場合に , どの端子に機能を割り当てるか を設定するレジスタです。また , 端子からの周辺機能出力を有効 / 無効にします。 • プルアップ制御レジスタ (PCR0 ∼ PCR8) プルアップを設定するレジスタです。各ポートに用意されているので端子ごとに , プルアップ抵抗を接続できます。 • ポートデータレジスタ (PDR0 ∼ PDRK) 出力データを格納するレジスタです。ポートのモードによって , 読み出される値や 書き込む値の意味が異なります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 327 第 14 章 I/O ポート 14.2 MB91665 シリーズ ● アナログ入力兼用 I/O ポート アナログ入力兼用 I/O ポートのブロックダイヤグラムを図 14.2-2 に示します。 図 14.2-2 アナログ入力兼用 I/O ポートのブロックダイヤグラム 周辺バス A/D 入力 CMOS schmitt 周辺機能 入力選択 0 1 アナログ 入力許可 DDR PFR ポートデータ 方向制御 Vcc EPFR R PCR PDR 端子 外部バス 制御出力 周辺機能出力 出力選択 通常の I/O ポートの構成ブロックとアナログ入力許可部で構成されています。 A/D チャネルイネーブルレジスタ (ADCHE) で入力を許可した端子からのアナログ 入力を有効にします。 < 注意事項 > 328 • アナログ入力兼用ポートは P77 ∼ P70, P83 ∼ P80 です。 • MD1, MD0 端子でシリアル書込みモードを選択した場合 (MD1, MD0= 01), P75 (AN5 端子 ) のみデジタル入力可 , アナログ入力不可となります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.2 MB91665 シリーズ ■ クロック I/O ポートで使用するクロックを表 14.2-1 に示します。 表 14.2-1 I/O ポートで使用するクロック クロック名 動作クロック CM71-10158-1 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED 329 第 14 章 I/O ポート 14.3 MB91665 シリーズ 14.3 端子 I/O ポートで使用する端子について説明します。 ■ 概要 同じ番号に分類されたポートは , 同時に読出し / 書込みが可能です。 330 • P00 ∼ P07 ( ポート 0) • P10 ∼ P17 ( ポート 1) • P20 ∼ P27 ( ポート 2) • P50 ∼ P57 ( ポート 5) • P60, P61 ( ポート 6) • P70 ∼ P77 ( ポート 7) • P80 ∼ P83 ( ポート 8) • PH2, PH3 ( ポート H) • PK0, PK1 ( ポート K) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ 14.4 レジスタ I/O ポートで使用するレジスタの構成と機能について説明します。 ■ I/O ポートのレジスタ一覧 I/O ポートのレジスタ一覧を表 14.4-1 に示します。 表 14.4-1 I/O ポートのレジスタ一覧 ( 1 / 2 ) ポート 共通 0 1 2 3 4 5 6 CM71-10158-1 EPFR0 ∼ EPFR35 レジスタ略称 拡張ポート機能レジスタ 0 ∼ 35 レジスタ名 参照先 14.4.3 ADCHE A/D チャネルイネーブルレジスタ 14.4.6 NDE0 N-chオープンドレイン制御レジスタ0 14.4.7 NDE1 N-chオープンドレイン制御レジスタ1 14.4.7 EXBS 外部バスアドレス選択レジスタ 14.4.8 FRID FR 識別情報レジスタ 14.4.9 DDR0 ポートデータ方向レジスタ 0 14.4.1 PFR0 ポート機能レジスタ 0 14.4.2 PCR0 プルアップ制御レジスタ 0 14.4.5 PDR0 ポートデータレジスタ 0 14.4.4 DDR1 ポートデータ方向レジスタ 1 14.4.1 PFR1 ポート機能レジスタ 1 14.4.2 PCR1 プルアップ制御レジスタ 1 14.4.5 PDR1 ポートデータレジスタ 1 14.4.4 DDR2 ポートデータ方向レジスタ 2 14.4.1 PFR2 ポート機能レジスタ 2 14.4.2 PDR2 ポートデータレジスタ 2 14.4.4 DDR3 ポートデータ方向レジスタ 3 14.4.1 PFR3 ポート機能レジスタ 3 14.4.2 DDR4 ポートデータ方向レジスタ 4 14.4.1 PFR4 ポート機能レジスタ 4 14.4.2 DDR5 ポートデータ方向レジスタ 5 14.4.1 PFR5 ポート機能レジスタ 5 14.4.2 PCR5 プルアップ制御レジスタ 5 14.4.5 PDR5 ポートデータレジスタ 5 14.4.4 DDR6 ポートデータ方向レジスタ 6 14.4.1 PFR6 ポート機能レジスタ 6 14.4.2 PCR6 プルアップ制御レジスタ 6 14.4.5 PDR6 ポートデータレジスタ 6 14.4.4 FUJITSU SEMICONDUCTOR LIMITED 331 第 14 章 I/O ポート 14.4 MB91665 シリーズ 表 14.4-1 I/O ポートのレジスタ一覧 ( 2 / 2 ) ポート レジスタ略称 7 DDR7 8 A G H K 332 レジスタ名 ポートデータ方向レジスタ 7 参照先 14.4.1 PFR7 ポート機能レジスタ 7 14.4.2 PCR7 プルアップ制御レジスタ 7 14.4.5 PDR7 ポートデータレジスタ 7 14.4.4 DDR8 ポートデータ方向レジスタ 8 14.4.1 PFR8 ポート機能レジスタ 8 14.4.2 PCR8 プルアップ制御レジスタ 8 14.4.5 PDR8 ポートデータレジスタ 8 14.4.4 DDRA ポートデータ方向レジスタ A 14.4.1 PFRA ポート機能レジスタ A 14.4.2 DDRG ポートデータ方向レジスタ G 14.4.1 PFRG ポート機能レジスタ G 14.4.2 DDRH ポートデータ方向レジスタ H 14.4.1 PFRH ポート機能レジスタ H 14.4.2 PDRH ポートデータレジスタ H 14.4.4 DDRK ポートデータ方向レジスタ K 14.4.1 PDRK ポートデータレジスタ K 14.4.4 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ ポートデータ方向レジスタ (DDR0 ∼ DDRK) 14.4.1 端子を汎用ポートとして使用するときに , 入出力方向を設定するレジスタです。 外部バスインタフェースや周辺機能の端子として使用する場合は , ポートデータレジスタ (PDR0 ∼ PDRK) から , 何を読み出すかを設定します。 このビットの設定と , ポート機能レジスタ (PFR0 ∼ PFRH) の設定によりポートデータ レジスタ (PDR0 ∼ PDRK) からの読出し値 / 書込み値の意味が異なります。 ポートデータ方向レジスタ (DDR0 ∼ DDRK) のビット構成を図 14.4-1 に示します。 図 14.4-1 ポートデータ方向レジスタ (DDR0 ∼ DDRK) のビット構成 bit 7 6 5 4 3 2 1 0 DDR0 DDR07 DDR06 DDR05 DDR04 DDR03 DDR02 DDR01 DDR00 0000 0000 R/W DDR1 DDR17 DDR16 DDR15 DDR14 DDR13 DDR12 DDR11 DDR10 0000 0000 R/W DDR2 DDR27 DDR26 DDR25 DDR24 DDR23 DDR22 DDR21 DDR20 0000 0000 R/W 初期値 属性 DDR3 DDR37 DDR36 DDR35 DDR34 予約 DDR32 DDR31 DDR30 0000 0000 R/W DDR4 DDR47 DDR46 DDR45 DDR44 DDR43 DDR42 DDR41 DDR40 0000 0000 R/W DDR5 DDR57 DDR56 DDR55 DDR54 DDR53 DDR52 DDR51 DDR50 0000 0000 R/W DDR6 予約 予約 予約 予約 予約 予約 DDR61 DDR60 0000 0000 R/W DDR7 DDR77 DDR76 DDR75 DDR74 DDR73 DDR72 DDR71 DDR70 0000 0000 R/W DDR81 DDR80 0000 0000 R/W R/W DDR8 予約 予約 予約 予約 DDR83 DDR82 DDRA DDRA7 DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRG 0000 0000 予約 予約 DDRG7 DDRG6 DDRG5 DDRG4 DDRG3 DDRG2 DDRG1 DDRG0 0000 0000 DDRH 未定義 未定義 未定義 未定義 DDRH3 DDRH2 DDRH1 DDRH0 XXXX 0000 DDRK 未定義 未定義 未定義 未定義 予約 予約 DDRK1 DDRK0 XXXX 0000 R/W R/W R/W R/W:リード / ライト可能 X:不定 < 注意事項 > 予約ビットは必ず "0" を書き込んでください。 ポートの入出力方向を設定します。 書込み値 CM71-10158-1 説明 0 入力方向 1 出力方向 FUJITSU SEMICONDUCTOR LIMITED 333 第 14 章 I/O ポート 14.4 MB91665 シリーズ このビットの設定と , ポート機能レジスタ (PFR0 ∼ PFRH) の設定によりポートデータ レジスタ (PDR0 ∼ PDRK) からの読出し値 / 書込み値の意味が異なります。 レジスタ設定とポートデータレジスタ (PDR0 ∼ PDRK) からの読出し値 / 書込み値の関 係を表 14.4-2 に示します。 表 14.4-2 レジスタ設定とポートデータレジスタ (PDR0 ∼ PDRK) からの読出し値 / 書込み値の関係 モード DDR PFR ポート入力 0 モード ポート出力 1 モード 0 周辺機能 * 出力モード 1 * 0 0 1 1 PDR 読出し時 外部端子からの出力レベルが読み出 (RMW 系命令以外 ) されます。 読出し時 (RMW 系命令 ) PDR レジスタの値を読み出します。 書込み時 書き込んだ値が PDR レジスタに格納 されます。 読出し時 PDR レジスタの値を読み出します。 (RMW 系命令以外 ) 読出し時 (RMW 系命令 ) PDR レジスタの値を読み出します。 書込み時 書き込んだ値が PDR レジスタに書き 込まれ , 外部端子へ出力されます。 読出し時 周辺機能からの出力レベルが読み出 (RMW 系命令以外 ) されます。 読出し時 (RMW 系命令 ) PDR レジスタの値を読み出します。 書込み時 書き込んだ値が PDR レジスタに格納 されます。 読出し時 PDR レジスタの値を読み出します。 (RMW 系命令以外 ) 読出し時 (RMW 系命令 ) PDR レジスタの値を読み出します。 書込み時 書き込んだ値が PDR レジスタに格納 されます。 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) で , 該当端子に周辺機能の出力端子 の機能を割り当て , さらに端子からの出力を有効にする必要があります。 DDR:ポートデータ方向レジスタ (DDR0 ∼ DDRK) PFR:ポート機能レジスタ (PFR0 ∼ PFRH) PDR :ポートデータレジスタ (PDR0 ∼ PDRK) RMW 系命令:リードモディファイライト系命令 334 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • 周辺機能への入力は , 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の該当ビットで , 割り当てた端子に常に接続されています。周辺機能への入力は , ポート入力モードで 行ってください。 ただし , 10 ビット A/D コンバータからの入力を許可している場合は , 入力は "0" に , ポートからの出力は Hi-Z に固定されます。 また , MD1, MD0 端子でシリアル書込みモードを選択した場合 (MD1, MD0= 01), P75 (AN5 端子 ) のみデジタル入力可 , アナログ入力不可となります。 • 本デバイスをリセットすると , このレジスタの設定は初期値 (00H) に戻り , すべての ポートの入出力方向が入力になります。 • PK0, PK1 を低速発振端子として使用する場合は必ず , ポートデータ方向レジスタ K (DDRK) でポートの入出力方向を入力 (DDRK0=0, DDRK1=0) に設定してください。 ( ポートの入出力方向が出力に設定されているときに , PK0, PK1 を低速発振端子と使 用すると , 低速発振不許可時に端子から PDR の値が出力されます。) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 335 第 14 章 I/O ポート 14.4 MB91665 シリーズ ポート機能レジスタ (PFR0 ∼ PFRH) 14.4.2 端子の利用方法を選択するレジスタです。 このビットの設定と , ポートデータ方向レジスタ (DDR0 ∼ DDRK) の設定によりポー トデータレジスタ (PDR0 ∼ PDRK) からの読出し値 / 書込み値の意味が異なります。 詳細については , 「14.4.1 ポートデータ方向レジスタ (DDR0 ∼ DDRK)」を参照してく ださい。 ポート機能レジスタ (PFR0 ∼ PFRH) のビット構成を図 14.4-2 に示します。 図 14.4-2 ポート機能レジスタ (PFR0 ∼ PFRH) のビット構成 bit 7 6 5 4 3 2 1 0 PFR0 初期値 PFR07 PFR06 PFR05 PFR04 PFR03 PFR02 PFR01 PFR00 0000 0000 属性 R/W PFR1 PFR17 PFR16 PFR15 PFR14 PFR13 PFR12 PFR11 PFR10 0000 0000 R/W PFR2 PFR27 PFR26 PFR25 PFR24 PFR23 PFR22 PFR21 PFR20 0000 0000 R/W PFR3 PFR37 PFR36 PFR35 PFR34 R/W PFR4 予約 PFR32 PFR31 PFR30 0000 0000 PFR47 PFR46 PFR45 PFR44 PFR43 PFR42 PFR41 PFR40 0000 0000 PFR5 PFR57 PFR56 PFR55 PFR54 PFR53 PFR52 PFR51 PFR50 0000 0000 R/W PFR6 予約 予約 未定義 予約 予約 未定義 PFR61 未定義 00X0 0X0X PFR77 PFR76 PFR75 PFR74 PFR73 PFR72 PFR71 PFR70 0000 0000 R/W PFR7 PFR8 予約 予約 予約 予約 PFR83 PFRA PFRA7 PFRA6 未定義 PFRA4 PFRA3 PFRG 未定義 PFRG6 PFRG5 PFRG4 未定義 PFRH 未定義 未定義 未定義 未定義 未定義 R/W R/W PFR82 PFR81 PFR80 0000 0000 R/W PFRA2 予約 予約 PFRG2 PFRG1 PFRG0 X000 X000 R/W PFRH2 未定義 PFRH0 XXXX X0X0 R/W 00X0 0000 R/W R/W:リード / ライト可能 X:不定 < 注意事項 > 予約ビットは必ず "0" を書き込んでください。 336 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ 端子ごとに汎用ポートとして使用するか , 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) で指定した周辺機能の端子として使用するかを設定します。 書込み値 説明 0 汎用ポート 1 周辺機能 このレジスタのビットと拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の対応ビットの 設定によって , 端子の機能や入出力を次のように設定できます。 PFR EPFR 対応端子の 機能 周辺 周辺機能への ポート 外バス 外バス 機能 入力 出力 端子の 端子の 出力 入力 からの 出力 0 0 ポート * 無効 有効 DDR で 無効 設定 有効 1 周辺機能の出 力端子の機能 を割り当て & 出力を有効に 設定 周辺機能の出 力端子の機能 を割り当てな い or 出力を無 効に設定 周辺機能の 有効 出力端子 有効 無効 無効 有効 外バス端子 無効 (外バス兼用 端子 ) 有効 無効 有効 有効 ポート(外バ 無効 ス兼用端子 以外 ) 有効 DDR で − 設定 − PFR:ポート機能レジスタ (PFR0 ∼ PFRH) の対応ビット EPFR:拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の対応ビット * 以下のポートに関しては , ポートとして使用するには 2 つ∼ 3 つの PFR を設定する 必要があります。 P14 ∼ P17 : PFR14 ∼ PFR17, PFR34 ∼ PFR37 P20, P21 : PFR20, PFR21, PFR40, PFR41, PFRA3, PFRA4 P22, P23 : PFR22, PFR23, PFR42, PFR43, PFRG0, PFRG1 P24 ∼ P27 : PFR24 ∼ PFR27, PFR44 ∼ PFR47 P50 : PFR50, PFRA2 P51 ∼ P53 : PFR51 ∼ PFR53, PFRG4 ∼ PFRG6 P54 ∼ P56 : PFR54 ∼ PFR56, PFR30 ∼ PFR32 P57 : PFR57, PFRA7 CM71-10158-1 P60, P61 : PFR60, PFR61, PFRG2, PFRH0 P80, P81 : PFR80, PFR81, PFRA6 FUJITSU SEMICONDUCTOR LIMITED 337 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • 本デバイスをリセットすると , このレジスタの設定が初期値 (00H) に戻り , すべての ポートが入力になります。 • このレジスタで, 端子を汎用ポートとして使用するに設定した場合は, 拡張ポート機能 レジスタ (EPFR0 ∼ EPFR35) で端子に周辺機能を割り当てても , 端子は汎用ポートと して使用されます。 • A/D チャネルイネーブルレジスタ (ADCHE) で , アナログ入力を許可した場合は , この レジスタの設定にかかわらず , ポートやほかの機能からの入力は "0" に固定されます。 • 外部バスインタフェースの端子機能を有効にするには次の設定を行ってください。 1. 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の対応ビットですべての周辺機能か らの出力を無効に設定 2. このレジスタの対応ビットに "1" を書き込んで , 端子の機能を周辺機能に設定 • 周辺機能への入力は , 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の該当ビットによ り割り当てた端子に常に接続されています。周辺機能への入力は , ポート入力モード で行ってください。 ただし , 10 ビット A/D コンバータからの入力を許可している場合は , 入力は "0" に , ポートからの出力は Hi-Z に固定されます。 338 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) 14.4.3 1 つの機能に対して , その機能を割り当てられる端子が複数ある場合に , どの端子に機能を割 り当てるかを設定するレジスタです。また , 端子からの出力を有効 / 無効にします。 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) のビット構成を図 14.4-3 に示します。 図 14.4-3 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) のビット構成 bit 6 5 4 3 2 1 0 未定義 未定義 OUT1E2 OUT1E1 OUT1E0 OUT0E2 OUT0E1 OUT0E0 初期値 XX00 0000 EPFR1 未定義 未定義 OUT3E2 OUT3E1 OUT3E0 OUT2E2 OUT2E1 OUT2E0 XX00 0000 EPFR2 未定義 未定義 OUT5E2 OUT5E1 OUT5E0 OUT4E2 OUT4E1 OUT4E0 XX00 0000 EPFR3 未定義 IN3E1 未定義 IN3E0 OUT7E2 OUT7E1 OUT7E0 OUT6E2 OUT6E1 OUT6E0 XX00 0000 IN2E1 IN2E0 IN1E1 IN1E0 IN0E1 IN0E0 0000 0000 EPFR0 EPFR4 7 EPFR5 IN7E1 IN7E0 IN6E1 IN6E0 IN5E1 IN5E0 IN4E1 IN4E0 0000 0000 EPFR6 SOUT0E2 SOUT0E1 SOUT0E0 SCK0E2 SCK0E1 SCK0E0 SIN0E1 SIN0E0 0000 0000 EPFR7 未定義 未定義 未定義 SOUT1E1 SOUT1E0 SCK1E1 SCK1E0 SIN1E XXX0 0000 未定義 SOUT2E1 SOUT2E0 SCK2E1 SCK2E0 SIN2E XXX0 0000 EPFR8 未定義 未定義 EPFR9 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR10 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR11 予約 予約 予約 予約 SOUT6E0 予約 SCK6E1 予約 SCK6E0 予約 SIN6E XXX0 0000 0000 0000 EPFR12 未定義 未定義 未定義 予約 SOUT6E1 EPFR13 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR14 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR15 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR16 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR17 予約 予約 予約 予約 0000 0000 予約 予約 予約 予約 UDIN1E0 予約 予約 予約 UDIN1E1 予約 EPFR18 0000 0000 EPFR19 未定義 未定義 未定義 TIOA1E0 予約 XAE TIOB1E TIOA0E1 TIOA0E0 TIOB0E XX00 0000 予約 ADTRG0E2 ADTRG0E1 ADTRG0E0 XXXX 0001 EPFR20 未定義 未定義 未定義 TIOA1E1 EPFR21 未定義 未定義 TIOA3E1 TIOA3E0 TIOB3E TIOA2E1 TIOA2E0 TIOB2E XX00 0000 EPFR22 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR23 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR24 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR25 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR26 予約 予約 予約 予約 予約 予約 予約 予約 0000 0000 EPFR27 予約 INT6E 予約 INT5E 予約 INT4E 予約 INT3E 予約 INT2E 予約 INT1E 予約 INT0E 0000 0000 EPFR28 予約 INT7E EPFR29 予約 予約 予約 予約 未定義 未定義 INT23E1 未定義 INT23E0 未定義 INT22E1 予約 INT18E 予約 INT17E 予約 INT16E 0000 0000 EPFR30 予約 INT19E INT22E0 INT21E1 INT21E0 INT20E X000 0000 予約 TMI0E XX00 0000 EPFR31 未定義 EPFR32 予約 予約 EPFR33 未定義 予約 TMO1E1 予約 TMO1E0 予約 TMI1E 予約 TMO0E1 予約 TMO0E0 EPFR34 未定義 未定義 TMO2E1 TMO2E0 TMI2E FRCK1E1 FRCK1E0 FRCK0E1 EPFR35 予約 予約 予約 予約 予約 予約 予約 0000 0000 XXXX 0000 0000 0000 FRCK0E0 X000 0000 予約 0000 0000 属性:すべて R/W ( リード / ライト可能 ) X:不定 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 339 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • 予約ビットは必ず "0" を書き込んでください。 • ポート機能レジスタ (PFR0 ∼ PFRH) で , 汎用ポートに設定した端子は , このレジスタ の設定にかかわらず , 汎用 I/O ポートとして扱われます。 • A/D チャネルイネーブルレジスタ (ADCHE) で , アナログ入力を許可した場合は , この レジスタやポート機能レジスタ (PFR0 ∼ PFRH) の設定にかかわらず , ポートからの 入力は "0" に固定されます。 • 1 つの端子を複数の周辺機能の出力端子として使用することはできません。また , 同一 の出力機能を複数の端子に割り当てることもできません。 • 1 つの端子を複数の周辺機能の入力端子として使用することができます。ただし , 同一 の入力機能を複数の端子に割り当てることはできません。 • 1 つの端子に複数の機能が割り当てられた場合の優先順位は次のようになります。 1. X0A/X1A 2. マルチファンクションシリアルインタフェース 3. ベースタイマ 4. 16 ビットリロードタイマ 5. 32 ビットアウトプットコンペア • 周辺機能への入力は , 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の該当ビットで , 割り当てた端子に常に接続されています。周辺機能への入力は , ポート入力モードで 行ってください。 ただし , 10 ビット A/D コンバータからの入力 , または 8 ビット D/A コンバータからの 出力を許可している場合は , 入力は "0" に固定されます。 • このレジスタで周辺機能出力を割り当てる端子を変更する場合は , 次の設定を行って から端子を変更してください。 - 変更前割り当て端子と変更後割り当て端子をポート入力モードに設定 - 割り当てを行う周辺機能を無効にする • このレジスタで周辺機能入力を割り当てる端子を変更する場合は , 割り当てを行う周 辺機能を無効にしてから , 端子を変更してください。 ● 拡張ポート機能レジスタ 0 (EPFR0) ∼拡張ポート機能レジスタ 3 (EPFR3) [bit5 ∼ bit0]:OUTxE2 ∼ OUTxE0 ( アウトプットコンペア出力端子選択ビット ) 32 ビットアウトプットコンペアの出力端子は , チャネルごとにそれぞれ 2 つ用意され ています。 32 ビットアウトプットコンペアの ch.0 ∼ ch.7 で使用する端子をそれぞれ選択します。 OUT0E2 ∼ OUT0E0 ビットが ch.0 に , OUT1E2 ∼ OUT1E0 ビットが ch.1 に •••OUT7E2 ∼ OUT7E0 ビットが ch.7 に対応しています。 340 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ OUTxE2 0 OUTxE1 0 1 1 0 1 OUTxE0 ポート番号 端子名 0 − 出力無効 1 0 番ポート OUTx 端子 0 1 番ポート OUTx_1 端子 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 < 注意事項 > • このビットで出力を無効にした場合は , これらの端子をほかの機能の出力端子として 利用できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス ● 拡張ポート機能レジスタ 4 (EPFR4) ∼拡張ポート機能レジスタ 5 (EPFR5) [bit7 ∼ bit0]:INxE1, INxE0 ( インプットキャプチャ入力端子選択ビット ) 32 ビットインプットキャプチャの入力端子は , チャネルごとにそれぞれ 2 つ用意され ています (ch.0 ∼ ch.3 のみ )。 32 ビットインプットキャプチャの ch.0 ∼ ch.7 で使用する端子をそれぞれ選択します。 IN0E1, IN0E0 ビットが ch.0 に , IN1E1, IN1E0 ビットが ch.1 に •••IN7E1, IN7E0 ビットが ch.7 に対応しています。 INxE1 0 1 INxE0 ポート番号 端子名 0 0 番ポート INx 端子 1 1 番ポート INx_1 端子 0 − − 設定禁止 1 設定禁止 ● 拡張ポート機能レジスタ 6 (EPFR6) [bit7 ∼ bit5]:SOUT0E2 ∼ SOUT0E0 ( シリアルインタフェース ch.0 シリアルデー タ端子選択ビット ) マルチファンクションシリアルインタフェース ch.0 のシリアルデータ出力機能を割り 当てる端子を SOUT0, SOUT0_1 の中から 1 つ選択します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 341 第 14 章 I/O ポート 14.4 MB91665 シリーズ SOUT0E2 0 SOUT0E1 0 1 1 0 1 SOUT0E0 ポート番号 端子名 0 − 出力無効 ( 入力:SOUT0 端子 (0 番ポート ) ) 1 0 番ポート SOUT0 端子 0 1 番ポート SOUT0_1 端子 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 < 注意事項 > • このビットで出力を無効にした場合は , この端子をほかの機能の出力端子として利用 できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 次のビットで選択する端子は同じポート番号に割り当ててください。 - SOUT0E2 ∼ SOUT0E0 ( シリアルデータ出力端子 ) - SCK0E2 ∼ SCK0E0 ( シリアルクロック入出力端子 ) - SIN0E1, SIN0E0 ( シリアルデータ入力端子 ) • 342 シリアルデータ端子は周辺機能の設定により , 入力端子として機能します。周辺機能 の入力は選択端子に常に接続されており, このビットを"000"に設定したときはSOUT0 端子 (0 番ポート ) が入力に接続されています。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ [bit4 ∼ bit2]:SCK0E2 ∼ SCK0E0 ( シリアルインタフェース ch.0 シリアルクロッ ク端子選択ビット ) マルチファンクションシリアルインタフェース ch.0 のシリアルクロック入出力機能を 割り当てる端子を SCK0, SCK0_1 の中から 1 つ選択します。 SCK0E2 0 SCK0E1 0 1 1 0 1 SCK0E0 ポート番号 端子名 0 − 出力無効 ( 入力:SCK0 端子 (0 番ポート ) ) 1 0 番ポート SCK0 端子 0 1 番ポート SCK0_1 端子 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 < 注意事項 > • このビットで出力を無効にした場合は , これらの端子をほかの機能の出力端子として 利用できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 次のビットで選択する端子は同じポート番号に割り当ててください。 - SOUT0E2 ∼ SOUT0E0 ( シリアルデータ出力端子 ) - SCK0E2 ∼ SCK0E0 ( シリアルクロック入出力端子 ) - SIN0E1, SIN0E0 ( シリアルデータ入力端子 ) • 周辺機能の入力は選択端子に常に接続されており , このビットを "000" に設定したとき は SCK0 端子 (0 番ポート ) が入力に接続されています。 [bit1, bit0]:SIN0E1, SIN0E0 ( シリアルインタフェース ch.0 シリアルデータ入力選 択ビット ) マルチファンクションシリアルインタフェース ch.0 のシリアルデータ入力機能を割り 当てる端子を SIN0, SIN0_1 の中から 1 つ選択します。 SIN0E1 0 1 CM71-10158-1 SIN0E0 ポート番号 端子名 0 0 番ポート SIN0 端子 1 1 番ポート SIN0_1 端子 0 − 設定禁止 1 − 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 343 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • 次のビットで選択する端子は同じポート番号に割り当ててください。 - SOUT0E2 ∼ SOUT0E0 ( シリアルデータ出力端子 ) - SCK0E2 ∼ SCK0E0 ( シリアルクロック入出力端子 ) - SIN0E1, SIN0E0 ( シリアルデータ入力端子 ) ● 拡張ポート機能レジスタ 7 (EPFR7) , 拡張ポート機能レジスタ 8 (EPFR8) [bit4, bit3]:SOUTxE1, SOUTxE0 ( シリアルインタフェース ch.1,2 シリアルデータ 端子選択ビット ) マルチファンクションシリアルインタフェース ch.1, ch2 のシリアルデータ出力端子は , チャネルごとにそれぞれ 2 つ用意されています。 シリアルデータ出力機能を割り当てる端子をチャネルごとに選択します。SOUT1E1, SOUT1E0 ビットが ch.1 に , SOUT2E1, SOUT2E0 ビットが ch.2 に対応しています。 SOUTxE1 SOUTxE0 ポート番号 端子名 0 0 − 出力無効 ( 入力:SOUTx 端子 (0 番ポート ) ) 0 1 0 番ポート SOUTx 端子 1 0 1 番ポート SOUTx_1 端子 1 1 − 設定禁止 < 注意事項 > • このビットで出力を無効にした場合は , この端子をほかの機能の出力端子として利用 できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート • - 外バス兼用端子:外部バス 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - SOUTxE1, SOUTxE0 ( シリアルデータ出力端子 ) - SCKxE1, SCKxE0 ( シリアルクロック入出力端子 ) - SINxE ( シリアルデータ入力端子 ) • 344 シリアルデータ端子は周辺機能の設定により , 入力端子として機能します。周辺機能 の入力は選択端子に常に接続されており , このビットが "00" に設定されているときは SOUTx 端子 (0 番ポート ) が入力に接続されています。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ [bit2, bit1]:SCKxE1, SCKxE0 ( シリアルインタフェース ch.1, 2 シリアルクロック 端子選択ビット ) マルチファンクションシリアルインタフェース ch.1, ch.2 のシリアルクロック入出力端 子は , チャネルごとにそれぞれ 2 つ用意されています。 シ リ ア ル ク ロ ッ ク 入 出 力 機 能 を 割 り 当 て る 端 子 を チ ャ ネ ル ご と に 選 択 し ま す。 SCK1E1, SCK1E0 ビットが ch.1 に , SCK2E1, SCK2E0 ビットが ch.2 に対応しています。 SCKxE1 SCKxE0 ポート番号 端子名 0 0 − 出力無効 ( 入力:SCKx 端子 (0 番ポート ) ) 0 1 0 番ポート SCKx 端子 1 0 1 番ポート SCKx_1 端子 1 1 − 設定禁止 < 注意事項 > • • このビットで出力を無効にした場合は , この端子をほかの機能の出力端子として利用 できます。 このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - SOUTxE1, SOUTxE0 ( シリアルデータ出力端子 ) - SCKxE1, SCKxE0 ( シリアルクロック入出力端子 ) - SINxE ( シリアルデータ入力端子 ) • シリアルクロックの入力は選択端子に常に接続されており , このビットが "00" に設定 されているときは SCKx 端子 (0 番ポート ) が入力に接続されています。 [bit0]:SINxE ( シリアルインタフェース ch.1, 2 シリアルデータ入力選択ビット ) マルチファンクションシリアルインタフェースch.1, ch.2のシリアルデータ入力端子は, チャネルごとにそれぞれ 2 つ用意されています。 シリアルデータ入力機能を割り当てる端子をチャネルごとに選択します。SIN1E ビッ トが ch.1 に , SIN2E ビットが ch.2 に対応しています。 SINxE CM71-10158-1 ポート番号 端子名 0 0 番ポート SINx 端子 1 1 番ポート SINx_1 端子 FUJITSU SEMICONDUCTOR LIMITED 345 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - SOUT0E2 ∼ SOUT0E0 ( シリアルデータ出力端子 ) - SCK0E2 ∼ SCK0E0 ( シリアルクロック入出力端子 ) - SIN0E1, SIN0E0 ( シリアルデータ入力端子 ) ● 拡張ポート機能レジスタ 12 (EPFR12) [bit4, bit3]:SOUTxE1, SOUTxE0 ( シリアルインタフェース ch.6 シリアルデータ端 子選択ビット ) マルチファンクションシリアルインタフェース ch.6 のシリアルデータ出力端子を有効 にするかどうかを選択します。SOUT6E1, SOUT6E0 ビットが ch.6 に対応しています。 SOUTxE1 0 SOUTxE0 ポート番号 端子名 0 − 出力無効 ( 入力:SOUTx 端子 (0 番ポート ) ) 0 1 1 0 − 設定禁止 1 1 − 設定禁止 0 番ポート SOUTx 端子 < 注意事項 > • • このビットで出力を無効にした場合は , この端子をほかの機能の出力端子として利用 できます。 このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 346 シリアルデータ端子は周辺機能の設定により , 入力端子として機能します。周辺機能 の入力は選択端子に常に接続されており , このビットが "00" に設定されているときは SOUTx 端子 (0 番ポート ) が入力に接続されています。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ [bit2, bit1]:SCKxE1, SCKxE0 ( シリアルインタフェース ch.6 シリアルクロック端 子選択ビット ) マルチファンクションシリアルインタフェース ch.6 のシリアルクロック入出力端子を 有効にするかどうかを選択します。SCK6E1, SCK6E0 ビットが ch.6 に対応しています。 SCKxE1 SCKxE0 ポート番号 端子名 0 0 − 出力無効 ( 入力:SCKx 端子 (0 番ポート ) ) 0 1 0 番ポート 1 0 − 設定禁止 1 1 − 設定禁止 SCKx 端子 < 注意事項 > • このビットで出力を無効にした場合は , この端子をほかの機能の出力端子として利用 できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • シリアルクロックの入力は選択端子に常に接続されており , このビットが "00" に設定 されているときは SCKx 端子 (0 番ポート ) が入力に接続されています。 [bit0]: SINxE ( シリアルインタフェース ch.6 シリアルデータ入力選択ビット ) マルチファンクションシリアルインタフェース ch.6 のシリアルデータ入力端子を割り 当てる端子を選択します。このビットには必ず "0" を設定してください。 SINxE ポート番号 端子名 0 0 番ポート SINx 端子 1 − 設定禁止 ● 拡張ポート機能レジスタ 18 (EPFR18) [bit3, bit2]:UDIN1E1, UDIN1E0 ( アップダウンカウンタ入力端子選択ビット ) 16 ビットアップダウンカウンタの ch.1 で使用する端子は , 2 つ用意されています。 ch.1 の 16 ビットアップダウンカウンタで使用する端子を選択します。 UDINxE1 CM71-10158-1 UDINxE0 ポート番号 端子名 0 0 0 番ポート AIN1/BIN1/ZIN1 端子 0 1 1 番ポート AIN1_1/BIN1_1/ZIN1_1 端子 1 0 − 設定禁止 1 1 − 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 347 第 14 章 I/O ポート 14.4 MB91665 シリーズ ● 拡張ポート機能レジスタ 19 (EPFR19) [bit3 ∼ bit1]:ADTRG0E2 ∼ ADTRG0E0 (A/D 変換起動トリガ端子選択ビット ) 10 ビット A/D コンバータの外部トリガ入力端子を割り当てる端子を選択します。 ADTRG0E2 0 ADTRG0E1 0 1 1 0 1 ADTRG0E0 ポート番号 端子名 0 0 番ポート ADTRG0 端子 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 [bit0]:XAE ( クロック発振入出力端子許可ビット ) 低速クロック発振機能を有効にする場合にポート入力を遮断します。低速クロック発 振機能を有効にする場合必ず , XAE=1 に設定してください。 書込み値 説明 0 ポート入力を有効にします。 1 ポート入力を無効にします。 < 注意事項 > • このビットで低速発振機能を無効にした場合は , これらの端子を次のように利用でき ます。 - 汎用ポート 348 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ ● 拡張ポート機能レジスタ 20 (EPFR20) ∼拡張ポート機能レジスタ 21 (EPFR21) [bit5, bit4, bit2, bit1]:TIOAxE1, TIOAxE0 ( ベースタイマ ch.0 ∼ ch.3 端子選択 ビット ) ベースタイマの ch.0 ∼ ch.3 の出力端子は , チャネルごとにそれぞれ 2 つずつ用意され ています。 ベースタイマ ch.0 ∼ ch.3 で使用する端子をチャネルごとに選択します。TIOA0E1, TIOA0E0 ビットが ch.0 に , TIOA1E1, TIOA1E0 ビットが ch.1 に •••TIOA3E1, TIOA3E0 ビットが ch.3 に対応しています。 TIOAxE1 TIOAxE0 ポート番号 端子名 0 0 − 出力無効 ( 奇数チャネル入力:TIOAx 端子 (0 番ポート ) ) 0 1 0 番ポート TIOAx 端子 1 0 1 番ポート TIOAx_1 端子 1 1 − 設定禁止 < 注意事項 > • このビットで出力を無効にした場合は , これらの端子をほかの機能の出力端子として 利用できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - TIOAxE1, TIOAxE0 ( ベースタイマ出力端子 ) - TIOBxE ( ベースタイマ入力端子 ) • 奇数チャネルのベースタイマ出力端子 (TIOAx 端子 ) は周辺機能の設定により , 入力端 子として機能します。周辺機能の入力は選択端子に常に接続されています。このビッ トが"00"に設定されているときはTIOAx端子 (0番ポート) が入力に接続されています。 [bit3, bit0]:TIOBxE ( ベースタイマ ch.0 ∼ ch.3 端子入力選択ビット ) ベースタイマの ch.0 ∼ ch.3 の入力端子は , チャネルごとにそれぞれ 2 つずつ用意され ています。 ベースタイマ ch.0 ∼ ch.3 で使用する端子をチャネルごとに選択します。TIOB0E ビッ トが ch.0 に , TIOB1E ビットが ch.1 に •••TIOB3E ビットが ch.3 に対応しています。 TIOBxE CM71-10158-1 ポート番号 端子名 0 0 番ポート TIOBx 端子 1 1 番ポート TIOBx_1 端子 FUJITSU SEMICONDUCTOR LIMITED 349 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - TIOAxE1, TIOAxE0 ( ベースタイマ出力端子 ) - TIOBxE ( ベースタイマ入力端子 ) ● 拡張ポート機能レジスタ 28 (EPFR28) [bit7 ∼ bit4]:INT7E ∼ INT4E ( 外部割込み要求端子許可ビット ) 外部割込み要求の ch.4 ∼ ch.7 の入力端子を有効にするかどうかをチャネルごとに選択 します。 INT7Eビットがch.7に, INT6Eビットがch.6に•••INT4Eビットがch.4に対応しています。 INTxE ポート番号 端子名 0 0 番ポート INTx 端子 1 − 設定禁止 [bit3, bit2]:INT3E, INT2E ( 外部割込み要求端子許可ビット ) 外部割込み要求の ch.2, ch.3 の入力端子は , チャネルごとにそれぞれ 2 つずつ用意され ています。 外部割込み要求の ch.2, ch.3 で使用する端子をチャネルごとに選択します。INT2E ビッ トが ch.2 に , INT3E ビットが ch.3 に対応しています。 INTxE ポート番号 端子名 0 0 番ポート INTx 端子 1 1 番ポート INTx_1 端子 [bit1, bit0]:INT1E, INT0E ( 外部割込み要求端子許可ビット ) 設定禁止です。 ● 拡張ポート機能レジスタ 30 (EPFR30) [bit3 ∼ bit0]:INT19E ∼ INT16E ( 外部割込み要求端子許可ビット ) 外部割込み要求の ch.16 ∼ ch.19 の入力端子を有効にするかどうかをチャネルごとに選 択します。 INT16E ビットが ch.16 に , INT17E ビットが ch.17 に •••INT19E ビットが ch.19 に対応し ています。 INTxE 350 ポート番号 端子名 0 0 番ポート INTx 端子 1 − 設定禁止 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ ● 拡張ポート機能レジスタ 31 (EPFR31) [bit6 ∼ bit1]:INT23E1, INT23E0 ∼ INT21E1, INT21E0 ( 外部割込み要求端子許可 ビット ) 外部割込み要求の ch.21 ∼ ch.23 の入力端子を有効にするかどうかをチャネルごとに選 択します。 INT21E1, INT21E0 ビットが ch.21 に , INT22E1, INT22E0 ビットが ch.22 に , INT23E1, INT23E0 ビットが ch.23 に対応しています。 INTxE1 INTxE0 ポート番号 端子名 0 0 0 番ポート INTx 端子 0 1 − 設定禁止 1 0 − 設定禁止 1 1 − 設定禁止 [bit0]:INT20E ( 外部割込み要求端子許可ビット ) 外部割込み要求の ch.20 の入力端子を有効にするかどうかを選択します。 INT20E 0 ポート番号 0 番ポート 1 − 端子名 INT20 端子 設定禁止 ● 拡張ポート機能レジスタ 33 (EPFR33) [bit5, bit4, bit2, bit1]:TMOxE1, TMOxE0 ( リロードタイマ ch.0 ∼ 1 出力端子選択 ビット ) 16 ビットリロードタイマの ch.0, ch.1 の出力端子は , チャネルごとにそれぞれ 2 つずつ 用意されています。 16 ビットリロードタイマの ch.0, ch.1 で使用する端子をそれぞれ選択します。TMO0E1, TMO0E0 ビットが ch.0 に TMO1E1, TMO1E0 ビットが ch.1 に対応しています。 TMOxE1 0 1 CM71-10158-1 TMOxE0 ポート番号 端子名 0 − 出力無効 1 0 番ポート TMOx 端子 0 1 番ポート TMOx_1 端子 1 − 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 351 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • このビットで出力を無効にした場合は , これらの端子をほかの機能の出力端子として 利用できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - TMOxE1, TMOxE0 (16 ビットリロードタイマ出力端子 ) - TMIxE (16 ビットリロードタイマ入力端子 ) [bit3, bit0]:TMIxE ( リロードタイマ ch.0, ch.1 入力端子選択ビット ) 16 ビットリロードタイマの ch.0, ch.1 の入力端子は , チャネルごとにそれぞれ 2 つずつ 用意されています。 16 ビットリロードタイマの ch.0, ch.1 で使用する端子をそれぞれ選択します。TMI0E ビットが ch.0 に TMI1E ビットが ch.1 に対応しています。 TMIxE ポート番号 端子名 0 0 番ポート TMIx 端子 1 1 番ポート TMIx_1 端子 < 注意事項 > • 同じチャネルで使用する端子 (次のビットで選択する端子) は同じポート番号に割り当 ててください。 - TMOxE1, TMOxE0 (16 ビットリロードタイマ出力端子 ) - TMIxE (16 ビットリロードタイマ入力端子 ) ● 拡張ポート機能レジスタ 34 (EPFR34) [bit6, bit5]:TMO2E1, TMO2E0 ( リロードタイマ ch.2 出力端子選択ビット ) 16 ビットリロードタイマの ch.2 の出力端子は 2 つ用意されています。 16 ビットリロードタイマの ch.2 で使用する端子を選択します。 TMO2E1 0 1 352 TMO2E0 ポート番号 端子名 0 − 出力無効 1 0 番ポート TMO2 端子 0 1 番ポート TMO2_1 端子 1 − 設定禁止 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ < 注意事項 > • このビットで出力を無効にした場合は , これらの端子をほかの機能の出力端子として 利用できます。 • このビットで出力を無効にし, ほかの機能の出力端子としても利用しない場合は, これ らの端子を次のように利用できます。 - 外バス兼用端子以外 :汎用ポート - 外バス兼用端子:外部バス • 次のビットで選択する端子は同じポート番号に割り当ててください。 - TMO2E1, TMO2E0 (16 ビットリロードタイマ出力端子 ) - TMI2E (16 ビットリロードタイマ入出力端子 ) [bit4]:TMI2E ( リロードタイマ ch.2 入力端子選択ビット ) 16 ビットリロードタイマの ch.2 の入力端子は 2 つ用意されています。 16 ビットリロードタイマの ch.2 で使用する端子を選択します。 TMI2E ポート番号 端子名 0 0 番ポート TMIx 端子 1 1 番ポート TMIx_1 端子 < 注意事項 > • 次のビットで選択する端子は同じポート番号に割り当ててください。 - TMO2E1, TMO2E0 (16 ビットリロードタイマ出力端子 ) - TMI2E (16 ビットリロードタイマ入出力端子 ) [bit3 ∼ bit0]:FRCKxE1, FRCKxE0 ( フリーランタイマ ch.0, ch.1 入力端子選択 ビット ) 32 ビットフリーランタイマの ch.0, ch.1 の入力端子を有効にするかどうかをチャネルご とに選択します。 FRCKxE1 0 1 CM71-10158-1 FRCKxE0 ポート番号 端子名 0 0 番ポート FRCKx 端子 1 − 設定禁止 0 − 設定禁止 1 − 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 353 第 14 章 I/O ポート 14.4 MB91665 シリーズ ポートデータレジスタ (PDR0 ∼ PDRK) 14.4.4 入出力データを格納するレジスタです。 このレジスタから読み出す値や書き込む値は , ポートデータ方向レジスタ (DDR0 ∼ DDRK) とポート機能レジスタ (PFR0 ∼ PFRH) の設定によって異なります。読出し値 や書込み値については , 「14.4.1 ポートデータ方向レジスタ (DDR0 ∼ DDRK)」を参照 してください。 ポートデータレジスタ (PDR0 ∼ PDRK) のビット構成を図 14.4-4 に示します。 図 14.4-4 ポートデータレジスタ (PDR0 ∼ PDRK) のビット構成 7 6 5 4 3 2 1 PDR0 bit PDR07 PDR06 PDR05 PDR04 PDR03 PDR02 PDR01 0 初期値 PDR00 XXXX XXXX 属性 R/W PDR1 PDR17 PDR16 PDR15 PDR14 PDR13 PDR12 PDR11 PDR10 XXXX XXXX R/W PDR2 PDR27 PDR26 PDR25 PDR24 PDR23 PDR22 PDR21 PDR20 XXXX XXXX R/W PDR5 PDR57 PDR56 PDR55 PDR54 PDR53 PDR52 PDR51 PDR50 XXXX XXXX R/W PDR60 XXXX XXXX R/W PDR6 PDR7 予約 PDR77 予約 PDR76 予約 PDR75 予約 PDR74 予約 PDR73 予約 PDR72 PDR61 PDR71 PDR70 XXXX XXXX R/W PDR82 PDR81 PDR80 XXXX XXXX R/W 予約 PDRK1 XXXX XXXX 予約 PDRK0 XXXX XXXX R/W PDR8 予約 予約 予約 予約 PDR83 PDRH 未定義 未定義 未定義 未定義 PDRH3 PDRH2 PDRK 未定義 未定義 未定義 未定義 予約 予約 R/W R/W:リード / ライト可能 X:不定 < 注意事項 > • リードモディファイライト系命令で, このレジスタを読み出すと, 次のレジスタの設定 にかかわらず , このレジスタの値が読み出されます。 - ポートデータ方向レジスタ (DDR0 ∼ DDRK) - ポート機能レジスタ (PFR0 ∼ PFRH) • 354 本デバイスをリセットしても , このレジスタの値は初期化されません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ プルアップ制御レジスタ (PCR0 ∼ PCR8) 14.4.5 プルアップを設定するレジスタです。プルアップを設定できる端子に対し , 1 つずつビットが 用意されているので , 対応する端子に "1" を書き込むことで , 端子ごとにプルアップを設定す ることができます。 プルアップ制御レジスタ (PCR0 ∼ PCR8) のビット構成を図 14.4-5 に示します。 図 14.4-5 プルアップ制御レジスタ (PCR0 ∼ PCR8) のビット構成 bit 7 6 5 4 3 2 1 0 PCR0 PCR07 予約 PCR14 予約 PCR01 予約 PCR17 予約 PCR15 PCR03 PCR1 予約 PCR16 PCR13 PCR5 PCR57 PCR56 PCR55 PCR54 PCR53 予約 PCR52 PCR6 PCR7 予約 PCR77 PCR8 予約 PCR76 予約 予約 PCR75 予約 予約 初期値 0000 0000 属性 R/W 予約 PCR51 0000 0000 予約 PCR50 0000 0000 R/W PCR61 PCR60 0000 0000 R/W R/W 予約 PCR74 予約 PCR73 予約 PCR72 PCR71 PCR70 0000 0000 R/W 予約 PCR83 PCR82 PCR81 PCR80 0000 0000 R/W R/W:リード / ライト可能 X:不定 ビットごとに , 割り当てられた端子にプルアップを設定するかどうかを設定します。 プルアップを設定すると , 端子にプルアップ抵抗が接続されます。 書込み値 0 説明 プルアップを設定しません。 1 プルアップを設定します。 < 注意事項 > • 次の場合は , このレジスタの設定にかかわらずプルアップは設定されません。 - ポート出力時 ( 周辺機能出力時 ) - ストップモード時 (Hi-Z 選択時 ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 355 第 14 章 I/O ポート 14.4 MB91665 シリーズ A/D チャネルイネーブルレジスタ (ADCHE) 14.4.6 AN0 ∼ AN11 端子からアナログ信号を入力するかどうかを設定するレジスタです。 A/D アナログ入力を設定できる端子に対し , 1 つずつビットが用意されているので , 対応する 端子に "1" を書き込むことで , 端子ごとに A/D アナログ入力を許可にすることができます。 A/D チャネルイネーブルレジスタ (ADCHE) のビット構成を図 14.4-6 に示します。 図 14.4-6 A/D チャネルイネーブルレジスタ (ADCHE) のビット構成 bit 31 24 23 12 11 0 予約 ADE23 ∼ ADE18 予約 ADE11 ∼ ADE0 R/W R/W R/W R/W -------- 111111 ------ 1111 1111 1111 属性 初期値 18 17 R/W:リード / ライト可能 [bit23 ∼ bit18, bit11 ∼ bit0]:ADE23 ∼ ADE18, ADE11 ∼ ADE0 ( アナログ入力許可ビット ) ビットに対応する端子からのアナログ信号入力を許可 / 禁止します。 書込み値 説明 0 アナログ信号の入力を禁止します。 1 アナログ信号の入力を許可します。 ADE11 ビットが ch.11, ADE10 ビットが ch.10•••ADE1 ビットが ch.1, ADE0 ビットが ch.0 に対応します。 ADE23 ∼ ADE18 は , リロードタイマ入出力の 1 番ポート (TMIx_1, TMOx_1) を使用す る場合に , 0 を設定します。 < 注意事項 > 356 • AN0 ∼ AN11 端子を 10 ビット A/D コンバータのアナログ信号入力端子として利用す る場合は , 必ずチャネルに対応するビットに "1" を書き込んでください。 • このレジスタで , アナログ入力を許可すると , ポート機能レジスタ (PFR0 ∼ PFRH) や 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) の設定にかかわらず , ポートおよび周辺 機能からの入力は "0" に , 出力は Hi-Z に固定されます。 • MB91F668(48pin) は , AN10 端子 , AN11 端子は存在しません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ N-ch オープンドレイン制御レジスタ (NDE0, NDE1) 14.4.7 N-ch オープンドレイン制御レジスタです。N-ch オープンドレイン制御設定できる端子 (P00, P02, P04, P06, P10, P12, P20, P21, P22, P24, P25,P26,P27) に対し , 対応する端子に "1" を 書き込む事で , 端子ごとに N-ch オープンドレイン制御設定することができます。 N-ch オープンドレイン制御レジスタ (NDE0, NDE1) のビット構成を図 14.4-7 に示しま す。 図 14.4-7 N-ch オープンドレイン制御レジスタ (NDE0, NDE1) のビット構成 bit NDE0 NDE1 7 6 5 4 ― 2 1 0 P22NDE P21NDE P20NDE 00000000 属性 R/W P12NDE P10NDE P06NDE P04NDE P02NDE P00NDE 00000000 R/W P27NDE P26NDE P25NDE P24NDE ― 3 ― 初期値 R/W:リード / ライト可能 ビットごとに割り当てられた端子に N-ch オープンドレイン制御を設定するかどうか設 定します。 設定値 * 説明 0 CMOS 出力 1 N-ch オープンドレイン出力 * : 汎用ポート出力時 , 周辺機能出力時の双方において , 本設定は有効です。 < 注意事項 > • MB91V650 では , 本レジスタは存在しません。CMOS 出力固定となります。 • P05 , P11, P23 は 5V 耐圧端子ですが , 周辺機能は入力端子であるため , オープンドレ イン制御には対応していません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 357 第 14 章 I/O ポート 14.4 MB91665 シリーズ 表 14.4-3 オープンドレイン制御対応 I/O ポート 設定ビット MB91F668(48pin) MB91F669(64pin) P00NDE ○ ○ P02/D02/TIOA1/ SCK0_1/IN2 P02NDE ○ ○ P04/D04/TIOA2/ SOUT1/IN4 P04NDE ○ ○ P06/D06/TIOA3/SCK1/ IN6 P06NDE ○ ○ P10/D08/SOUT2/INT0 P10NDE ○ ○ P12/D10/SCK2/INT2 P12NDE ○ ○ P20/A00/TMO1_1/A16 P20NDE ― ○ P21/A01/TMO2_1/A17 P21NDE ― ○ P22/A02/TIOA0_1/ SCK2_1/A18 P22NDE ― ○ P24/A04/OUT0/A20 P24NDE ― ○ P25/A05/OUT1/A21 P25NDE ― ○ P26/A06/OUT2/A22 P26NDE ― ○ P27/A07/OUT3/A23 P27NDE ― ○ 端子名 P00/D00/TIOA0/ SOUT0_1/IN0 358 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.4 MB91665 シリーズ 外部バスアドレス選択レジスタ (EXBS) 14.4.8 PFR2 レジスタにて , 外部バスアドレスを選択した場合 , 外部バスアドレスを A00 ∼ A07 ( ス プリットバス ) として使用するか , A16 ∼ A23 ( マルチプレックスバス ) として使用するか選 択するレジスタです。 外部バスアドレス選択レジスタ (EXBS) のビット構成を図 14.4-8 に示します。 図 14.4-8 外部バスアドレス選択レジスタ (EXBS) のビット構成 bit EXBS 7 6 5 4 3 2 1 0 ― ― ― ― ― ― ― MSS 端子名 初期値 -------0 属性 R/W アドレス・データ スプリットバス (MSS=0 時 *) アドレス・データ マルチプレックスバス (MSS=1 時 *) P20/A00/TMO1_1/A16 A00 A16 P21/A01/TMO2_1/A17 A01 A17 P22/A02/TIOA0_1/SCK2_1/A18 A02 A18 P23/A03/TIOB0_1/A19 A03 A19 P24/A04/OUT0/A20 A04 A20 P25/A05/OUT1/A21 A05 A21 P26/A06/OUT2/A22 A06 A22 P27/A07/OUT3/A23 A07 A23 * : MSS ビットは , EPFR レジスタにて外バス機能を選択した場合に有効。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 359 第 14 章 I/O ポート 14.4 MB91665 シリーズ FR 識別情報レジスタ (FRID) 14.4.9 ソフトウェアにて , 品種を判別するレジスタです。 FR 識別情報レジスタ (FRID) のビット構成を図 14.4-9 に示します。 図 14.4-9 FR 識別情報レジスタ (FRID) のビット構成 bit31 0 FRID 初期値 * 属性 R R:リードオンリ *:初期値は次のとおりです。 Bit31 ∼ Bit29 Bit28 Bit27 ∼ Bit16 Bit15 ∼ Bit0 予約ビット MASK:0 FLASH:1 品種型格 予約ビット MB91F669(64pin) 100 1 0110 0110 1001 (669H) XXXXXXXXXXXXXXXX MB91F668(48pin) 100 1 0110 0110 1000 (668H) XXXXXXXXXXXXXXXX 品種名 ※ MB91V650 は 8650020FH となります。 < 注意事項 > 360 • 評価品はエミュレータモード時のみ書き込み可能です。 • • このレジスタはワードでアクセスしてください。 ツールリセット (TRSTX) で初期化されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 14 章 I/O ポート 14.5 MB91665 シリーズ 14.5 使用上の注意 I/O ポートを使用する際は次の点に注意してください。 • 各レジスタの優先順位は次のようになります。 1. A/D チャネルイネーブルレジスタ (ADCHE) 2. ポート機能レジスタ (PFR0 ∼ PFRH) 3. 拡張ポート機能レジスタ (EPFR0 ∼ EPFR35) 設定が矛盾すると , 優先順位の高い設定が反映されます。 • A/D チャネルイネーブルレジスタ (ADCHE) でアナログ入力を許可すると , ポートか らの入力は "0" に , ポートからの出力は Hi-Z に固定されます。 • 1 つの端子に複数の機能が割り当てられた場合の優先順位は次のようになります。 1. X0A/X1A 2. マルチファンクションシリアルインタフェース 3. ベースタイマ 4. 16 ビットリロードタイマ 5. 32 ビットアウトプットコンペア CM71-10158-1 • 1 つの端子を複数の周辺機能の出力端子として使用することはできません。また , 同 一の出力機能を複数の端子に割り当てることもできません。 • 1 つの端子を複数の周辺機能の入力端子として使用することができます。ただし , 同 一の入力機能を複数の端子に割り当てることはできません。 • スタンバイモード ( ストップモード / 時計モード / メインタイマモード) 中に , 端子に Hi-Z を設定すると , 入力は "0" に固定されます。ただし , 発生が許可されている外 部割込み要求の入力は "0" に固定されず使用できます。 • 周辺機能出力を割り当てる端子を変更するには , 該当端子の ( 変更前割り当て端子 と変更後割り当て端子 ) をポート入力モードかつ , 割り当てを行う周辺機能を無効 にして行ってください。 • 周辺機能入力を割り当てる端子を変更するには , 割り当てを行う周辺機能を無効に して行ってください。 • PK0, PK1 を低速発振端子として使用する場合は , ポートデータ方向レジスタ K (DDRK) で , ポートの入出力方向を入力 (DDRK0=0, DDRK1=0) に設定してくださ い。 FUJITSU SEMICONDUCTOR LIMITED 361 第 14 章 I/O ポート 14.5 • MB91665 シリーズ 周辺機能を割り当てられる端子が複数ある場合に , どの端子に機能を割り当てるか を設定したり , 端子からの周辺機能出力を有効 / 無効にしたりできます。 ただし , 周辺機能の入出力が複数ある場合 , それぞれの入出力は同じグループの ポートに設定してください。 例 ) ch.1 マルチファンクションシリアルインタフェース設定例 シリアルデータ 出力 SOUT1 端子 (0 番ポート ) シリアルクロック 入出力 SCK1 端子 (0 番ポート ) SCK1_1 端子 (1 番ポート ) シリアルデータ 入力 有効ポート SIN1 端子 (0 番ポート ) 0 番ポート SIN1_1 端子 (1 番ポート ) 設定禁止 SIN1 端子 (0 番ポート ) SIN1_1 端子 (1 番ポート ) SOUT1_1 端子 (1 番ポート ) SCK1 端子 (0 番ポート ) SIN1 端子 (0 番ポート ) SIN1_1 端子 (1 番ポート ) SCK1_1 端子 (1 番ポート ) SIN1 端子 (0 番ポート ) SIN1_1 端子 (1 番ポート ) 362 FUJITSU SEMICONDUCTOR LIMITED 1 番ポート CM71-10158-1 第 15 章 外部割込み制御部 外部割込み制御部の機能と動作について説明しま す。 15.1 概要 15.2 構成 15.3 端子 15.4 レジスタ 15.5 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 363 第 15 章 外部割込み制御部 15.1 MB91665 シリーズ 15.1 概要 外部割込み制御部は , 外部割込み信号のエッジ / レベルを検出し , 外部割込み要求を制御しま す。 本製品は , 外部割込み信号の入力端子を 16 本内蔵しています。 ■ 概要 外部割込み制御部は , 外部割込み信号から , あらかじめ設定したエッジ / レベルを検出 すると , 外部割込みを要求します。 検出するエッジ / レベルは , 次の 4 種類から選択できます。 • "H" レベル • "L" レベル • 立上りエッジ • 立下りエッジ また, 外部割込み要求はスリープモードとスタンバイモード (時計モードまたはストッ プモード ) からの復帰にも利用できます。 364 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.2 MB91665 シリーズ 15.2 構成 外部割込み制御部の構成を示します。 ■ 外部割込み制御部のブロックダイヤグラム 外部割込み制御部のブロックダイヤグラムを図 15.2-1 に示します。 図 15.2-1 外部割込み制御部のブロックダイヤグラム 周辺バス 16 8 8 7 6 5 4 3 2 1 外部割込み要求レベル 設定レジスタ (ELVR0, ELVR2) 外部割込み要因レジスタ (EIRR0, EIRR2) 割込み許可レジスタ (ENIR0, ENIR2) 0 7 6 5 4 3 2 1 0 15 14 1 0 エッジ / レベル検出回路 8 16 INT0 ∼ INT7, INT16 ∼ INT23 割込み要求 16 • 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) INT0 ∼ INT7, INT16 ∼ INT23 端子に入力された信号が , 外部割込み要求であるかど うかを判断するためのエッジ / レベルを設定するレジスタです。 • 外部割込み要因レジスタ (EIRR0, EIRR2) 割込み要因 ( どの端子から外部割込み要求が発生したか) を保持するレジスタです。 • 割込み許可レジスタ (ENIR0, ENIR2) 外部割込み要求の許可 / 禁止を設定するレジスタです。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 365 第 15 章 外部割込み制御部 15.2 • MB91665 シリーズ エッジ / レベル検出回路 INT0 ∼ INT7, INT16 ∼ INT23 端子に入力された信号のエッジ / レベルを検出する回 路です。 ■ クロック 外部割込み制御部で使用するクロックを表 15.2-1 に示します。 表 15.2-1 外部割込み制御部で使用するクロック クロック名 動作クロック 366 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.3 MB91665 シリーズ 15.3 端子 外部割込み制御部で使用する端子について説明します。 ■ 概要 外部割込み制御部には , 次の端子があります。 • INT0 ∼ INT7, INT16 ∼ INT23 端子 外部割込信号入力端子です。 この端子は兼用端子です。外部割込み制御部の INT0 ∼ INT7, INT16 ∼ INT23 端子 として使用するには「2.4 端子の設定方法」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 367 第 15 章 外部割込み制御部 15.4 MB91665 シリーズ 15.4 レジスタ 外部割込み制御部で使用するレジスタの構成と機能について説明します。 ■ 外部割込み制御部のレジスタ一覧 外部割込み制御部のレジスタ一覧を表 15.4-1 に示します。 表 15.4-1 外部割込み制御部のレジスタ一覧 チャネル 共通 368 レジスタ略称 レジスタ名 ELVR0 外部割込み要求レベル設定レジスタ 0 参照先 15.4.1 EIRR0 外部割込み要因レジスタ 0 15.4.2 ENIR0 割込み許可レジスタ 0 15.4.3 ELVR2 外部割込み要求レベル設定レジスタ 2 15.4.1 EIRR2 外部割込み要因レジスタ 2 15.4.2 ENIR2 割込み許可レジスタ 2 15.4.3 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.4 MB91665 シリーズ 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) 15.4.1 外部割込み要求を検出するためのエッジ / レベルを設定するレジスタです。 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) のビット構成を図 15.4-1 に示し ます。 図 15.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 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 初期値 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 属性 初期値 LB23 ∼ LB0, LA23 ∼ LA0 ( 検出条件選択ビット ) 外部割込み要求として検出する信号のエッジ / レベルを選択します。このビットで選 択したエッジ / レベルを検出すると , 外部割込み要求として認識されます。 LB0 ∼ LB23 ビットおよび LA0 ∼ LA23 ビットは , それぞれ INT0 ∼ INT7, INT16 ∼ INT23 端子に対応しています。例えば , INT0 端子は LB0 ビットと LA0 ビットで設定し ます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 369 第 15 章 外部割込み制御部 15.4 LB23 ∼ LB0 MB91665 シリーズ LA23 ∼ LA0 説明 0 0 "L" レベル検出 0 1 "H" レベル検出 1 0 立上りエッジ検出 1 1 立下りエッジ検出 スタンバイモードからの復帰に外部割込み要求を利用するときは ,「15.5.2 スタンバイ モードからの復帰」を参照してください。 < 注意事項 > • このビットで設定したエッジ / レベルを検出するには , 最小 3T (T:周辺クロック (PCLK) の周期 ) のパルス幅が必要です。このパルス幅に満たない信号が入力された場 合は , 正しく動作しないことがあります。 • 検出条件を "L" レベル検出 /"H" レベル検出に設定しているときは , 外部割込み要求が 取り下げられても, 割込み要因が外部割込み要因レジスタ (EIRR0, EIRR2) に保持され ます。そのため , 外部割込み要求は割込みコントローラに出力されたままになります。 割込みコントローラへの外部割込み要求を取り下げるには , 外部割込み要因レジスタ (EIRR0, EIRR2) の対応するビットを "0" にクリアしてください。 ただし , INT0 ∼ INT7, INT16 ∼ INT23 端子から有効レベルが入力されている間は , 外 部割込み要因レジスタ (EIRR0, EIRR2) をクリアしても, 外部割込みが要求されたまま になります。 割込み要因の保持および , 割込み要因のクリア時の動作図は , 「15.5 動作説明と設定 手順例」の「■ 外部割込み要求の取下げ」を参照してください。 • このビットを書き換えて検出条件を変更すると , 誤った割込み要因が発生する場合が あります。誤った割込み要因の発生を避けるため , 検出条件を変更したら , 次の操作を 行ってください。 1. 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) を読み出す 2. 外部割込み要因レジスタ (EIRR0, EIRR2) に "0" を書き込み , 割込み要因をクリアす る 370 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.4 MB91665 シリーズ 外部割込み要因レジスタ (EIRR0, EIRR2) 15.4.2 外部割込み要求の割込み要因 (どの端子から外部割込み要求が発生したか) を保持するレジス タです。 外部割込み要因レジスタ (EIRR0, EIRR2) のビット構成を図 15.4-2 に示します。 図 15.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 初期値 外部割込み要因レジスタ 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:リード / ライト可能 ER23 ∼ ER16, ER7 ∼ ER0 ( 外部割込み要求フラグビット ) 外部割込み要求が検出されたことを示します。 ER0 ∼ ER7, ER16 ∼ ER23 ビットは , それぞれ INT0 ∼ INT7, INT16 ∼ INT23 端子に対 応しています。例えば , ER0 ビットは INT0 端子 , ER23 ビットは INT23 端子から外部 割込み要求を検出します。 割込み許可レジスタ (ENIR0, ENIR2) の EN0 ∼ EN7, EN16 ∼ EN23 ビットが "1" に設定 されているときに , このビットが "1" になると , 外部割込み要求が発生します。 ER23 ∼ ER16, ER7 ∼ ER0 読出し時 書込み時 0 外部割込み要求は検出されていま 割込み要因がクリアされます。 せん。 1 外部割込み要求が検出されました。 無視されます。 < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) で , 検出条件を , "L" レベル検出 /"H" レベル検出に設定しているときに , このビットをクリアしても , INT0 ∼ INT7, INT16 ∼ INT23 端子から有効レベルが入力されていると , このビットは再び "1" に変わ ります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 371 第 15 章 外部割込み制御部 15.4 15.4.3 MB91665 シリーズ 割込み許可レジスタ (ENIR0, ENIR2) 外部割込み要求を許可 / 禁止するレジスタです。 割込み許可レジスタ (ENIR0, ENIR2) のビット構成を図 15.4-3 に示します。 図 15.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 割込み許可レジスタ 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 ∼ EN16, EN7 ∼ EN0 ( 割込み許可ビット ) 外部割込みを許可 / 禁止します。 EN0 ∼ EN7, EN16 ∼ EN23 ビットは , 外部割込み要因レジスタ (EIRR0, EIRR2) の各ビッ トに対応しています。 書込み値 372 説明 0 外部割込み要求の発生を禁止します。 割込み要因を保持するだけで , 外部割込み要求を出力しません。 1 外部割込み要求の発生を許可します。 外部割込み要求を出力します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.5 MB91665 シリーズ 15.5 動作説明と設定手順例 外部割込み制御部の動作と設定手順例について説明します。 15.5.1 外部割込み制御部の動作 ■ 概要 外部割込み制御部は , 外部信号入力端子に入力された信号から , あらかじめ設定した エッジ / レベルを検出すると , 割込みが許可されているときに , 外部割込み要求を出力 します。 検出するエッジ / レベルは , 次の 4 種類から選択できます。 - "H" レベル - "L" レベル - 立上りエッジ (スタンバイモードからの復帰時のみ, INT0∼INT7端子は"L"レベ ル , INT16 ∼ INT23 端子は立上りエッジを検出 ) - 立下りエッジ (スタンバイモードからの復帰時のみ, INT0∼INT7端子は"H"レベ ル , INT16 ∼ INT23 端子は立下りエッジを検出 ) 他の周辺機器から割込み要求が同時に発生した場合は , 割込みコントローラ内で優先 順位が決められます。外部割込み要求の優先順位が高い場合は外部割込みが発生しま す。 外部割込み制御部の動作を図 15.5-1 に示します。 図 15.5-1 外部割込み制御部の動作 外部割込み制御部 ELVR 周辺機能からの 割込み要求 割込み要求 レベル ICRyy EIRR ENIR CPU 割込みコントローラ 比較器 ICRxx 比較器 ILM 割込み要因 ICR :割込みコントロールレジスタ (ICR00 ∼ ICR47) ILM :割込みレベルマスクレジスタ (ILM) ELVR:外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) EIRR :外部割込み要因レジスタ (EIRR0, EIRR2) ENIR :割込み許可レジスタ (ENIR0, ENIR2) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 373 第 15 章 外部割込み制御部 15.5 MB91665 シリーズ ■ 設定手順 外部割込みは , 次の手順で設定してください。 1. 割込み許可レジスタ (ENIR0, ENIR2) で外部割込みを禁止する 2. 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) で検出条件 ( 有効エッジ / レ ベル ) を変更する 3. 外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) を読み出す 4. 外部割込み要因レジスタ (EIRR0, EIRR2) で割込み要因をクリアする 5. 割込み許可レジスタ (ENIR0, ENIR2) で外部割込みを許可する < 注意事項 > • • 外部割込み制御部を設定するときは, 事前に割込み許可レジスタ (ENIR0, ENIR2) で外 部割込みを禁止してください。 外部割込み要求の出力を許可するときは , 事前に外部割込み要因レジスタ (EIRR0, EIRR2) で割込み要因をクリアしてください。 ■ 制御動作 外部割込み制御部は , 次の順序で割込みコントローラへ外部割込みを要求します。 1. INT0 ∼ INT7, INT16 ∼ INT23 端子に入力された信号が , 外部割込み要求レベル設定 レジスタ (ELVR0, ELVR2) で設定したエッジ / レベルを検出する 2. 割込み許可レジスタ(ENIR0, ENIR2)で外部割込みが許可されているかどうかチェッ クする 3. 外部割込みが許可されている場合は , 割込みコントローラへ外部割込み要求を出力 する ■ 外部割込み要求の取下げ 外部割込みの検出条件を "L" レベル検出 /"H" レベル検出に設定しているときは , 外部 割込みを取り下げても , 割込み要因が外部割込み要因レジスタ (EIRR0, EIRR2) に保持 されます。そのため , 外部割込みは割込みコントローラに出力されたままになります。 割込みコントローラへの外部割込み要求を取り下げるには , 外部割込み要因レジスタ (EIRR0, EIRR2) の対応するビットを "0" にクリアしてください。これによって割込み 要因がクリアされ , 外部割込み要求が取り下げられます。 ただし , INT0 ∼ INT7, INT16 ∼ INT23 端子から有効レベルが入力されている間は , 外 部割込み要因レジスタ (EIRR0, EIRR2) をクリアしても , 外部割込みは割込みコント ローラへ出力されたままになります。 374 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.5 MB91665 シリーズ 割込み要因の保持については図 15.5-2 に , 割込み要因のクリアについては図 15.5-3 に 示します。 図 15.5-2 割込み要因の保持 外部割込み要求の入力 エッジ / レベル検出 外部割込み要因レジスタ (EIRR0, EIRR2) ゲート 割込みコントローラ 外部割込み要求を取り下げても 割込み要因を保持し続ける 図 15.5-3 割込み要因のクリア INT 入力 "H" レベル検出設定時 (ELVR の LBx ビット , LAx ビット =01) "H" レベル 割込み要求出力 EIRR への "0" 書込みで 取り下げられる ELVR:外部割込み要求レベル設定レジスタ (ELVR0, ELVR2) EIRR:外部割込み要因レジスタ (EIRR0, EIRR2) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 375 第 15 章 外部割込み制御部 15.5 15.5.2 MB91665 シリーズ スタンバイモードからの復帰 ■ 概要 スタンバイモード ( 時計モードまたはストップモード ) からの復帰に , 外部割込み要求 を利用できます。スタンバイモード時に , INT0 ∼ INT7, INT16 ∼ INT23 端子に最初に 入力された信号は非同期で入力され , スタンバイモードからの復帰に利用できます。 ■ 設定 スタンバイモードに移行する前に , 割込み許可レジスタ (ENIR0, ENIR2) で INT0 ∼ INT7, INT16 ∼ INT23 端子を次のように設定してください。 - スタンバイモードからの復帰に利用する端子:割込み要求の出力許可 - スタンバイモードからの復帰に利用しない端子:割込み要求の出力禁止 ■ 復帰動作 スタンバイモード時に , INT0 ∼ INT7, INT16 ∼ INT23 端子に入力された信号で有効レ ベルを検出すると , スタンバイモードから復帰します。 外部割込み要求の検出条件とスタンバイモードからの復帰レベルの対応を表 15.5-1 に 示します。 表 15.5-1 外部割込み要求の検出条件とスタンバイモードからの復帰レベル 検出条件 LB23 ∼ LB0 LA23 ∼ LA0 スタンバイモードからの復帰 レベル "L" レベル検出 0 0 "L" レベル検出 "H" レベル検出 0 1 "H" レベル検出 立上りエッジ検出 1 0 INT0 ∼INT7端子は "L"レベル , INT16 ∼ INT23 端子は立上り エッジを検出 立下りエッジ検出 1 1 INT0∼INT7端子は"H"レベル, INT16 ∼ INT23 端子は立下り エッジを検出 スタンバイモードからの復帰後 , 発振安定待ち時間が経過するまでは , 他の外部割込み 要求を認識できません。スタンバイモードから復帰した後に , 外部割込み要求を出力す る場合は , 発振安定待ち時間が経過してから , 外部割込み要求の信号を入力してくださ い。 376 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 15 章 外部割込み制御部 15.5 MB91665 シリーズ INT0 端子と INT1 端子を例とした , スタンバイモードからの復帰動作を図 15.5-4 に示 します。 図 15.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 ビット STANDBY :スタンバイモード RUN :動作中 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 377 第 15 章 外部割込み制御部 15.5 15.5.3 MB91665 シリーズ スリープモードからの復帰 ■ 概要 スリープモードからの復帰に , 外部割込み要求を利用できます。 ■ 設定 スリープモードに移行する前に , 割込み許可レジスタ (ENIR0, ENIR2) で INT0 ∼ INT7, INT16 ∼ INT23 端子を次のように設定してください。 - スリープモードからの復帰に利用する端子:割込み要求の出力許可 - スリープモードからの復帰に利用しない端子:割込み要求の出力禁止 ■ 復帰動作 スリープモード時に , INT0 ∼ INT7, INT16 ∼ INT23 端子に設定したエッジ / レベルが 入力されるとスリープモードから復帰します。 378 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 16 章 ウォッチドッグ タイマ ウォッチドッグタイマの機能と動作について説明 します。 16.1 概要 16.2 構成 16.3 レジスタ 16.4 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 379 第 16 章 ウォッチドッグタイマ 16.1 MB91665 シリーズ 16.1 概要 ウォッチドッグタイマは , ソフトウェアが暴走などの異常動作をしていないかどうかを監視 するタイマです。 ■ 概要 ウォッチドッグタイマは , 事前に設定した周期が経過する前にウォッチドッグタイマ がクリアされなければ , ソフトウェアの暴走が発生したと判断し , CPU に対してリセッ ト要求を出力します。このリセット要求をウォッチドッグリセット要求とよびます。 ウォッチドッグタイマの動作時は , 事前に設定した周期が経過する前にタイマを定期 的にクリアし続ける必要があります。ソフトウェアの暴走などの異常動作が発生して , 定期的なクリアが行われないとウォッチドッグタイマはオーバフローし , ウォッチ ドッグリセット要求を出力します。 • CPU のプログラム動作中に周期をカウントし , CPU 停止中 ( スリープモード / ストッ プモード / 時計モード ) はカウントを停止します。 • スタンバイモード (時計モード/ストップモード) への移行を検出して, CPUに対して ウォッチドッグリセット要求を出力できます。 • ウォッチドッグタイマ0クリアレジスタ (WDTCPR0) に不正な値が書き込まれると , CPU に対してウォッチドッグリセット要求を出力します。 • ウォッチドッグタイマ周期は , 周辺クロック (PCLK) × (29 ∼ 224) の中から選択でき ます。 380 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 16 章 ウォッチドッグタイマ 16.2 MB91665 シリーズ 16.2 構成 ウォッチドッグタイマの構成を示します。 ■ ウォッチドッグタイマのブロックダイヤグラム ウォッチドッグタイマのブロックダイヤグラムを図 16.2-1 に示します。 図 16.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 381 第 16 章 ウォッチドッグタイマ 16.2 MB91665 シリーズ ■ クロック ウォッチドッグタイマで使用するクロックを表 16.2-1 に示します。 表 16.2-1 ウォッチドッグタイマで使用するクロック クロック名 動作クロック 382 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 16 章 ウォッチドッグタイマ 16.3 MB91665 シリーズ 16.3 レジスタ ウォッチドッグタイマで使用するレジスタの構成と機能について説明します。 ■ ウォッチドッグタイマのレジスタ一覧 ウォッチドッグタイマのレジスタ一覧を表 16.3-1 に示します。 表 16.3-1 ウォッチドッグタイマのレジスタ一覧 CM71-10158-1 レジスタ略称 WDTCR0 レジスタ名 ウォッチドッグタイマ 0 制御レジスタ 参照先 16.3.1 WDTCPR0 ウォッチドッグタイマ 0 クリアレジスタ 16.3.2 FUJITSU SEMICONDUCTOR LIMITED 383 第 16 章 ウォッチドッグタイマ 16.3 MB91665 シリーズ ウォッチドッグタイマ 0 制御レジスタ (WDTCR0) 16.3.1 ウォッチドッグタイマの動作を制御するレジスタです。 ウォッチドッグタイマ0制御レジスタ (WDTCR0) のビット構成を図 16.3-1に示します。 図 16.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]:予約ビット 384 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 16 章 ウォッチドッグタイマ 16.3 MB91665 シリーズ [bit6]:RSTP ( ストップモード検出リセット許可ビット ) ウォッチドッグタイマの動作時 , CPU の状態がスタンバイモード ( 時計モード / ストッ プモード ) になったとき, ウォッチドッグリセット要求の出力を許可するかどうかを設 定します。 書込み値 説明 0 ウォッチドッグリセット要求の出力を禁止します。 スタンバイモード ( 時計モード / ストップモード ) への移行を検出したと き , ウォッチドッグタイマは一時停止し , スタンバイモードから復帰す るまでカウントを行いません。 1 ウォッチドッグリセット要求の出力を許可します。 スタンバイモード ( 時計モード / ストップモード ) への移行を検出したと き , ウォッチドッグリセット要求を出力します。 < 注意事項 > • スタンバイモード ( 時計モード / ストップモード ) を使用するときは , このビットを "0" に設定してください。 • このレジスタは , ウォッチドッグタイマの起動前しか書き換えられません。そのため , このビットを "1" に設定すると , ウォッチドッグタイマの起動後は , スタンバイモード ( 時計モード / ストップモード ) を検出して , ウォッチドッグリセット要求が出力され るため , スタンバイモードが使用できなくなります。 [bit5, bit 4]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 385 第 16 章 ウォッチドッグタイマ 16.3 MB91665 シリーズ [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) の周期 386 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 16 章 ウォッチドッグタイマ 16.3 MB91665 シリーズ ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) 16.3.2 ウォッチドッグタイマを起動 , およびクリアするレジスタです。 ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) のビット構成を図 16.3-2 に示し ます。 図 16.3-2 ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) のビット構成 bit 7 0 CPAT7 ∼ CPAT0 R/W 属性 0 初期値 R/W:リード / ライト可能 [bit7 ∼ bit0]:CPAT7 ∼ CPAT0 ビット 本デバイスのリセット後 , このレジスタに任意の値を書き込むとウォッチドッグタイ マが起動します。 ウォッチドッグタイマを起動後は , ウォッチドッグリセット要求の出力を防ぐために タイマ周期が経過する前に , ウォッチドッグタイマをクリアしなければなりません。 ウォッチドッグタイマをクリアするには , このビットに前回書き込んだ値の反転値を 書き込みます。 ウォッチドッグタイマのクリアについては ,「16.4.1 ウォッチドッグタイマの動作」の 「■ ウォッチドッグタイマのクリア」を参照してください。 CPAT7 ∼ CPAT0 書込み時 読出し時 前 回 の 書 込 み 値 起動後のウォッチドッグタイマ "0" が読み出されます。 の反転値 がクリアされます。 前回の書込み値 その時点でウォッチドッグリ の反転値以外 セット要求を出力します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 387 第 16 章 ウォッチドッグタイマ 16.4 MB91665 シリーズ 16.4 動作説明と設定手順例 ウォッチドッグタイマの動作について説明します。また , 各動作状態を設定するための手順 例も示します。 ウォッチドッグタイマの動作 16.4.1 定期的にウォッチドッグタイマのクリアをするようにプログラムを作成しているのに , ウォッチドッグタイマがクリアされなかった場合は , 何らかの誤動作が発生したと判断し , ウォッチドッグタイマは CPU に対してウォッチドッグリセット要求を出力します。 ■ 概要 ウォッチドッグタイマ動作時は , 事前に設定した周期が経過する前にウォッチドッグ タイマがクリアされなければ , ソフトウェアの暴走が発生したと判断し , CPU に対して ウォッチドッグリセット要求を出力します。 ウォッチドッグタイマ 0 クリアレジスタ (WDTCPR0) に不正な値が書き込まれたとき や , CPU がスタンバイモード ( 時計モード / ストップモード ) に移行した場合もウォッ チドッグリセット要求を出力できます。 なお , CPU の停止中はウォッチドッグタイマもカウント動作を停止します。 ■ 設定 ウォッチドッグタイマを利用する場合は , ウォッチドッグタイマを起動する前に , ウォッチドッグタイマ 0 制御レジスタ (WDTCR0) で次の設定を行ってください。 • ウォッチドッグタイマがクリアされてから , ウォッチドッグリセット要求を出力す るまでの周期 (WT3 ∼ WT0 ビット ) • スタンバイモード ( 時計モード / ストップモード ) になったとき , ウォッチドッグリ セット要求の出力を許可するかどうか (RSTP) < 注意事項 > 388 • ウォッチドッグタイマは , CPU が動作している間だけカウントを行います。そのため , WT3 ∼ WT0 ビットは , プログラムステップ数とクロック分周の設定を基準に設定し てください。 • スタンバイモード ( 時計モード / ストップモード ) を使用するときは , RSTP ビットを "0" に設定してください。 • RSTP ビットを "1" に設定すると , ウォッチドッグタイマの起動後は , スタンバイモー ド ( 時計モード / ストップモード ) が使用できなくなります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 16 章 ウォッチドッグタイマ 16.4 MB91665 シリーズ ■ 動作 本デバイスのリセット後 , ウォッチドッグタイマ 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 389 第 16 章 ウォッチドッグタイマ 16.4 MB91665 シリーズ ■ ウォッチドッグリセット要求の出力 ウォッチドッグタイマは , 次のいずれかの場合に CPU に対してウォッチドッグリセッ ト要求を出力します。 • ウォッチドッグタイマ0制御レジスタ (WDTCR0) のWT3∼WT0ビットで設定した周 期が経過した場合 ( オーバフロー ) • ウォッチドッグタイマ0クリアレジスタ (WDTCPR0) のCPAT7∼CPAT0ビットに, 前 回書き込んだ値の反転値以外の値が書き込まれた場合 • CPU がスタンバイモード ( 時計モード / ストップモード ) に移行した場合 ( ウォッチ ドッグタイマ 0 制御レジスタ (WDTCR0) の RSTP ビットの設定により出力 ) ウォッチドッグリセット要求を出力した後の動作については , 「第 9 章 リセット」の 「9.5 動作説明」を参照してください。 390 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 時計カウンタの機能と動作について説明します。 17.1 概要 17.2 構成 17.3 レジスタ 17.4 割込み 17.5 動作説明と設定手順例 17.6 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 391 第 17 章 時計カウンタ 17.1 MB91665 シリーズ 17.1 概要 時計カウンタは , あらかじめ設定した値からカウントダウンを行い , 6 ビットダウンカウンタ がアンダフローすると割込み要求を発生させるタイマです。 125ms ∼ 64s の周期で割込み要求を発生できます。 本製品は時計カウンタを 1 チャネル内蔵しています。 ※サブクロック (SBCLK) 未使用時は , この機能を使用できません。 ■ 概要 • カウント用クロックを4種類から選択でき, 最小125ms, 最大64sの間隔で割込み要求 の発生間隔を設定できます。 カウント用クロックの種類とカウント周期の対応を表 17.1-1 に示します。 表 17.1-1 カウント用クロックとカウント周期の対応 カウント用クロックの周期 カウント周期 (FCL=32.768kHz の場合 ) 212/FCL 125ms 213/FCL 250ms 214/FCL 500ms 215/FCL 1s FCL: サブクロック (SBCLK) の周波数 • 6 ビットダウンカウンタでカウントする値を 0 ∼ 63 の範囲内で設定できます。 カウント周期が 1s のときに , カウントする値を "60" にすると 1 分ごとに割込み要 求が発生します。また , カウント周期が 1s のときに , カウントする値を "0" に設定 すると 64 秒ごとに割込み要求が発生します。 • 392 6 ビットダウンカウンタがアンダフローすると割込み要求を発生できます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 17.2 MB91665 シリーズ 17.2 構成 時計カウンタの構成を示します。 ■ 時計カウンタのブロックダイヤグラム 時計カウンタのブロックダイヤグラムを図 17.2-1 に示します。 図 17.2-1 時計カウンタのブロックダイヤグラム CTR5 CTR4 CTR3 CTR2 CTR1 CTR0 RLC5 RLC4 RLC3 RLC2 RLC1 RLC0 カウンタの値 リロード値 カウンタクリア 6 ビットダウン 周 辺 バ ス カウンタ アンダフロー カウント クロック選択 212/FCL 213/FCL 214/FCL サブ タイマから 215/FCL 割込み要求 割込み許可 WCEN WCOP CS1 CS0 WCIE WCIF FCL:サブクロックの周波数 • 6 ビットダウンカウンタ 時計カウンタの 6 ビットダウンカウンタです。時計カウンタリロードレジスタ (WCRL) に設定された値をリロードしてダウンカウントします。 • 時計カウンタリロードレジスタ (WCRL) 時計カウンタがカウントを開始する値を設定するレジスタです。ここに設定した値 から 6 ビットダウンカウンタがカウントダウンします。 • 時計カウンタリードレジスタ (WCRD) 6 ビットダウンカウンタの値を読み出すレジスタです。このレジスタを読み出すと カウントの値を確認できます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 393 第 17 章 時計カウンタ 17.2 • MB91665 シリーズ 時計カウンタ制御レジスタ (WCCR) 時計カウンタの動作を制御するレジスタです。 ■ クロック 時計カウンタで使用するクロックを表 17.2-1 に示します。 表 17.2-1 時計カウンタで使用するクロック クロック名 備考 動作クロック 周辺クロック (PCLK) − カウント用クロック サブタイマ出力 * 394 内容 サブタイマの周期 * サブタイマの周期は , サブタイマ制御レジスタ (STMCR) の STS2 ∼ STS0 ビット で設定します。 サブタイマについては,「第7章 サブタイマ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 17.3 MB91665 シリーズ 17.3 レジスタ 時計カウンタで使用するレジスタの構成と機能について説明します。 ■ 時計カウンタのレジスタ一覧 時計カウンタのレジスタ一覧を表 17.3-1 に示します。 表 17.3-1 時計カウンタのレジスタ一覧 CM71-10158-1 レジスタ略称 WCRL レジスタ名 時計カウンタリロードレジスタ 参照先 17.3.1 WCCR 時計カウンタ制御レジスタ 17.3.2 WCRD 時計カウンタリードレジスタ 17.3.3 FUJITSU SEMICONDUCTOR LIMITED 395 第 17 章 時計カウンタ 17.3 MB91665 シリーズ 時計カウンタリロードレジスタ (WCRL) 17.3.1 時計カウンタがカウントを開始する値を設定するレジスタです。ここに設定した値から6ビッ トダウンカウンタがカウントダウンします。 6 ビットダウンカウンタのリロード値を設定します。6 ビットダウンカウンタがアンダ フローすると , このレジスタの値が 6 ビットダウンカウンタにリロードされ , 再度カウ ントします。 時計カウンタリロードレジスタ (WCRL) のビット構成を図 17.3-1 に示します。 図 17.3-1 時計カウンタリロードレジスタ (WCRL) のビット構成 bit 7 6 5 4 3 2 1 0 未定義 未定義 RLC5 RLC4 RLC3 RLC2 RLC1 RLC0 − 0 − 0 R/W R/W R/W R/W R/W R/W 0 0 0 0 0 0 属性 初期値 R/W:リード / ライト可能 −:未定義 [bit7, bit6]:未定義ビット 書込み時 無視されます。 読出し時 "0" が読み出されます。 [bit5 ∼ bit0]:RLC5 ∼ RLC0 ( カウンタリロード値設定ビット ) 6 ビットダウンカウンタのリロード値を設定します。 6 ビットダウンカウンタは , リロード値から "1" までカウントダウンして "1" でアンダ フローします。このビットで "0" を設定すると , "63" ∼ "0" まで 64 カウントします。 < 注意事項 > 396 • 6 ビットダウンカウンタが動作中にこのビットを書き換えると , アンダフロー発生後 に , 変更後の値がリロードされます。 • アンダフロー割込み要求が発生すると同時にこのビットを書き換えると , 正しい値が リロードされません。必ず時計カウンタの停止中や割込み処理ルーチン内など , 割込 み要求が発生する前にこのビットを書き換えてください。 • リロード値が正しく設定されたかどうか , このレジスタを読み出して確認してくださ い。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 17.3 MB91665 シリーズ 時計カウンタ制御レジスタ (WCCR) 17.3.2 時計カウンタのカウント用クロックを選択したり , 割込み要求の発生を許可 / 禁止したりする レジスタです。また , 時計カウンタの動作もこのレジスタで許可 / 禁止します。 時計カウンタ制御レジスタ (WCCR) のビット構成を図 17.3-2 に示します。 図 17.3-2 時計カウンタ制御レジスタ (WCCR) のビット構成 bit 7 6 5 4 3 2 1 0 WCEN WCOP 未定義 未定義 CS1 CS0 WCIE WCIF R/W R R/W R/W R/W 0 0 − 0 R/W 0 0 0 0 属性 初期値 − 0 R/W:リード / ライト可能 R:リードオンリ −:未定義 [bit7]:WCEN ( 時計カウンタ動作許可ビット ) 時計カウンタの動作を許可 / 禁止します。 書込み値 説明 0 時計カウンタを禁止 / 停止します。6 ビットダウンカウンタの値は "000000B" にクリアされます。 1 時計カウンタの動作を許可 / 開始します。 < 注意事項 > • 時計カウンタのカウント用クロックはサブタイマからの出力を , 各レジスタの設定は 周辺クロック (PCLK) を利用しています。サブタイマと周辺クロック (PCLK) は非同期 のため , このビットに "1" を書き込んだタイミングによっては , カウント開始のタイミ ングに最大で 1T (T:カウント用クロックの周期 ) 分の誤差が発生する可能性がありま す。 • このビットに "1" を書き込んで時計カウンタの動作を開始する場合は , WCOP ビット で時計カウンタが停止中 (WCOP=0) であることを確認してから , 時計カウンタの動作 を開始してください。 [bit6]:WCOP ( 時計カウンタ動作状態フラグビット ) 時計カウンタの動作状態を示します。 読出し値 CM71-10158-1 説明 0 時計カウンタは停止中です。 1 時計カウンタは動作中です。 FUJITSU SEMICONDUCTOR LIMITED 397 第 17 章 時計カウンタ 17.3 MB91665 シリーズ [bit5, bit4]:未定義ビット 書込み時 無視されます。 読出し時 "0" が読み出されます。 [bit3, bit2]:CS1, CS0 ( カウント用クロック選択ビット ) 時計カウンタのカウント用クロックを設定します。 CS1 CS0 カウント用クロック 0 0 2 /FCL 0 1 213/FCL 1 0 214/FCL 1 1 215/FCL 12 FCL: サブクロック (SBCLK) の周波数 < 注意事項 > このビットは , 次の条件を満たしたときに書き換えてください。 • WCEN ビット =0 ( 時計カウンタの動作禁止 ) • WCOP ビット =0 ( 時計カウンタ停止中 ) [bit1]:WCIE ( 割込み要求許可ビット ) 6 ビットダウンカウンタがアンダフローしたとき (WCIF ビット =1) にアンダフロー割 込み要求を発生させるかどうかを設定します。 書込み値 説明 0 アンダフロー割込み要求の発生を禁止します。 1 アンダフロー割込み要求の発生を許可します。 [bit0]:WCIF ( 割込み要求フラグビット ) 6 ビットダウンカウンタがアンダフローしたことを示します。 このビットが "1" のときに , WCIE ビットに "1" が設定されていると割込み要求が発生 します。 WCIF 読出し時 書込み時 0 ダウンカウンタはアンダフローし このビットを "0" にクリアします。 ていません。 1 ダウンカウンタがアンダフローし 無視されます。 ました。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 398 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 17.3 MB91665 シリーズ 時計カウンタリードレジスタ (WCRD) 17.3.3 6 ビットダウンカウンタの値を読み出すレジスタです。 時計カウンタリードレジスタ (WCRD) のビット構成を図 17.3-3 に示します。 図 17.3-3 時計カウンタリードレジスタ (WCRD) のビット構成 bit 7 6 5 4 3 2 1 0 未定義 未定義 CTR5 CTR4 CTR3 CTR2 CTR1 CTR0 − 0 − 0 R R R R R R 0 0 0 0 0 0 属性 初期値 R:リードオンリ −:未定義 < 注意事項 > 6 ビットダウンカウンタが動作中にカウンタの値を読み出す場合は , このレジスタを 2 度 読み出して同じ値が読み出されることを確認してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 399 第 17 章 時計カウンタ 17.4 MB91665 シリーズ 17.4 割込み 6 ビットダウンカウンタの値が "000001B" になり 6 ビットダウンカウンタがアンダフローす るとアンダフロー割込み要求が発生します。 時計カウンタで使用できる割込みについて表 17.4-1 に示します。 表 17.4-1 時計カウンタの割込み 割込み要求 割込み要求フラグ 割込み要求許可 割込み要求のクリア アンダフロー割 WCCR の WCIF=1 WCCR の WCIE=1 WCCR の WCIF ビットに "0" 込み要求 を書き込む WCCR : 時計カウンタ制御レジスタ (WCCR) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 • • 400 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 17.5 MB91665 シリーズ 17.5 動作説明と設定手順例 時計カウンタの動作について説明します。また , 動作状態を設定するための手順例も示しま す。 17.5.1 時計カウンタの動作 時計カウンタは , 時計カウンタリロードレジスタ (WCRL) に設定された値からカウントダウ ンし , 6 ビットダウンカウンタがアンダフローすると割込み要求を発生させるタイマです。 次の手順で動作させてください。 1. 時計カウンタ制御レジスタ (WCCR) の CS1, CS0 ビットでカウント用クロックを選 択する 2. 時計カウンタリロードレジスタ (WCRL) の RLC5 ∼ RLC0 ビットにカウントする値 を設定する 3. 時計カウンタ制御レジスタ (WCCR) の WCEN ビットで時計カウンタの動作を許可 (WCEN=1) する カウントダウンを開始します。カウント用クロックの立上りエッジでカウントが行 われます。 4. 6 ビ ッ ト ダ ウ ン カ ウ ン タ が ア ン ダ フ ロ ー す る と , 時 計 カ ウ ン タ 制 御 レ ジ ス タ (WCCR) の WCIF ビットが "1" に変わる このとき , 時計カウンタ制御レジスタ (WCCR) の WCIE ビットでアンダフロー割込 み要求の発生が許可 (WCIE=1) されていると , アンダフロー割込み要求が発生しま す。 また , 時計カウンタリロードレジスタ (WCRL) の RLC5 ∼ RLC0 ビットに設定した 値が 6 ビットダウンカウンタにリロードされ , 再度カウントダウンします。 5. 時計カウンタの動作中に , 時計カウンタリロードレジスタ (WCRL) の RLC5 ∼ RLC0 ビットを書き換えると , 次のリロードタイミングで書き換えた値が更新される 6. 時計カウンタ制御レジスタ (WCCR) の WCIF ビットに "0" を書き込むと , アンダフ ロー割込み要求がクリアされる 7. 時計カウンタ制御レジスタ (WCCR) の WCEN ビットに "0" を書き込むと , 6 ビット ダウンカウンタの値が "000000B" にクリアされ , カウント動作が停止する CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 401 第 17 章 時計カウンタ 17.5 MB91665 シリーズ 時計カウンタの動作を図 17.5-1 に示します。 図 17.5-1 時計カウンタの動作 WCEN ビット ⑦ ③ カウント用クロック CS1, CS0 ビット ① RLC5 ∼ RLC0 ビット ② 7 9 ⑤ CTR5 ∼ CTR0 ビット 0 7 6 5 4 3 2 1 9 8 7 6 5 4 0 WCIF ビット ④ ⑥ < 注意事項 > • 時計カウンタのカウント用クロックはサブタイマからの出力を , 各レジスタの設定は 周辺クロック (PCLK) を利用しています。サブタイマと周辺クロック (PCLK) は非同期 のため , 時計カウンタ制御レジスタ (WCCR) の WCEN ビットに "1" を書き込んだタイ ミングによっては , カウント開始のタイミングで最大で 1T (T:カウント用クロックの 周期 ) 分の誤差が発生する可能性があります。 • サブクロック (SBCLK) が停止しているときは , サブタイマからのカウント用クロック も停止するため , 6 ビットダウンカウンタも停止します。サブクロック (SBCLK) が動 作 を 再 開 し て も 時 計 カ ウ ン タ は 正 し く 値 を カ ウ ン ト で き ま せ ん。サ ブ ク ロ ッ ク (SBCLK) が動作を再開したら, 必ず時計カウンタ制御レジスタ (WCCR) のWCENビッ トに "0" を書き込んで , カウンタの値を "000000B" にクリアしてから時計カウンタを利 • CPU が時計モードで動作しているときでも , サブタイマが動作している場合は , 時計 カウンタは動作し続けます。時計カウンタの割込み処理ルーチンで , CPU の時計モー ドを解除することもできます。 • 時計カウンタの動作中にサブタイマをクリアすると , 正しい値をカウントできなくな る場合があります。時計カウンタ制御レジスタ (WCCR) の WCEN ビットで時計カウ ンタを停止 (WCEN=0) してからサブタイマをクリアしてください。 • 時計カウンタ制御レジスタ (WCCR) の WCEN ビットに "0" を書き込んで , 時計カウン タ の 動 作 を 停 止 し た 後 に , WCEN ビ ッ ト で 時 計 カ ウ ン タ を 再 度 起 動 す る 場 合 (WCEN=1) は , 時計カウンタ制御レジスタ (WCCR) の WCOP ビットで時計カウンタ が停止中 (WCOP=0) であることを確認してから , 時計カウンタを再起動してくださ い。 用してください。 402 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 17 章 時計カウンタ 17.6 MB91665 シリーズ 17.6 使用上の注意 時計カウンタを使用する際は , 次の点に注意してください。 ■ 動作に関する注意 • 時計カウンタの動作中にサブタイマをクリアすると , 正しい値をカウントできなく なる場合があります。時計カウンタ制御レジスタ (WCCR) の WCEN ビットで時計 カウンタを停止 (WCEN=0) してからサブタイマをクリアしてください。 • 時計カウンタ制御レジスタ (WCCR) の WCEN ビットで時計カウンタを停止 (WCEN=0) した後に , WCEN ビットで時計カウンタを再度起動する (WCEN=1) 場合 は , 時計カウンタ制御レジスタ (WCCR) の WCOP ビットで時計カウンタが停止中 (WCOP=0) であることを , 確認してから時計カウンタを再起動してください。 • 時計カウンタはサブタイマの出力をカウント用クロックとして使用していますの で , 時計カウンタの動作中はサブタイマの設定を変更しないでください。 • 時計カウンタは"000001B"からのカウントダウンでアンダフローを発生します。時計 カウンタは , リロード値から "1" までカウントします。リロード値に "0" を設定し た場合は , 64 カウントします。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 403 第 17 章 時計カウンタ 17.6 404 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 32 ビットフリーランタイマの機能と動作について 説明します。 18.1 概要 18.2 構成 18.3 端子 18.4 レジスタ 18.5 割込み 18.6 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 405 第 18 章 32 ビット フリーランタイマ 18.1 MB91665 シリーズ 18.1 概要 32 ビットフリーランタイマは , あらかじめ設定した値までカウントアップするアップカウン タです。 設定した値までカウントすると, 値をクリアして再度カウントを始めたり, 割込み要求を発生 したりします。また , カウント値は 32 ビットアウトプットコンペアと 32 ビットインプット キャプチャで基準時間として使用されます。 本製品は 32 ビットフリーランタイマを 2 チャネル内蔵しています。 ■ 概要 32 ビットフリーランタイマは , コンペアタイマの一部です。コンペアタイマは , 次の 3 つの周辺機能で構成されています。 - 32 ビットフリーランタイマ (2 チャネル ) - 32 ビットアウトプットコンペア (8 チャネル ) 「第 20 章 32 ビット アウトプット コンペア」を参照してください。 - 32 ビットインプットキャプチャ (8 チャネル ) 「第 19 章 32 ビットインプットキャプチャ」を参照してください。 この章では , 32 ビットフリーランタイマについて説明します。 • カウント用クロック:次の中から選択できます。 - 内部クロック ( 周辺クロック ) 9 種類 ( 周辺クロック (PCLK) の 1 分周 , 2 分周 , 4 分周 , 8 分周 , 16 分周 , 32 分周 , 64 分周 , 128 分周 , 256 分周 ) から選択できます。 • 外部クロック 割込み要求:次の場合に割込み要求を発生できます。 32 ビットフリーランタイマのカウント値とあらかじめ設定した値が一致したとき ( コンペアクリア割込み ) • 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフ リーランタイマの値を 32 ビットアウトプットコンペアおよび 32 ビットインプット キャプチャで基準時間として使用するかを選択できます。 406 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.2 MB91665 シリーズ 18.2 構成 32 ビットフリーランタイマは , コンペアタイマの一部です。コンペアタイマおよび 32 ビッ トフリーランタイマのブロックダイヤグラムを示します。 ■ コンペアタイマのブロックダイヤグラム コンペアタイマは次のブロックで構成されています。 • 32 ビットフリーランタイマ • フリーランタイマセレクタ 32 ビットアウトプットコンペアおよび 32 ビットインプットキャプチャの基準時間 として使用する 32 ビットフリーランタイマを選択します。 CM71-10158-1 • 32 ビットインプットキャプチャ (8 チャネル ) • 32 ビットアウトプットコンペア (8 チャネル ) FUJITSU SEMICONDUCTOR LIMITED 407 第 18 章 32 ビット フリーランタイマ 18.2 MB91665 シリーズ コンペアタイマのブロックダイヤグラムを図 18.2-1 に示します。 図 18.2-1 コンペアタイマのブロックダイヤグラム FRCK0 端子 32 ビット フリーランタイマ ch.0 割込み要求 コンペアクリア ch.0 FRCK1 端子 * 32 ビット フリーランタイマ ch.1 タイマ 0 割込み要求 タイマ 1 コンペアクリア ch.1 フリーランタイマセレクタ 周辺バス タイマ 0 または タイマ 1 カウント値 割込み要求 割込み要求 32 ビット 割込み要求 インプット 割込み要求 キャプチャ ( × 4) IN0 ∼ IN3 カウント値 割込み要求 割込み要求 32 ビット 割込み要求 インプット 割込み要求 キャプチャ ( × 4) IN4 ∼ IN7 カウント値 割込み要求 割込み要求 割込み要求 32 ビット アウトプット 割込み要求 コンペア ( × 4) OUT0 ∼ OUT3 カウント値 割込み要求 割込み要求 割込み要求 32 ビット アウトプット 割込み要求 コンペア ( × 4) OUT4 ∼ OUT7 インプットキャプチャ ch.0 インプットキャプチャ ch.1 インプットキャプチャ ch.2 インプットキャプチャ ch.3 IN0 ∼ IN3 端子 インプットキャプチャ ch.4 インプットキャプチャ ch.5 インプットキャプチャ ch.6 インプットキャプチャ ch.7 IN4 ∼ IN7 端子 アウトプットコンペア ch.0 アウトプットコンペア ch.1 アウトプットコンペア ch.2 アウトプットコンペア ch.3 OUT0 ∼ OUT3 端子 アウトプットコンペア ch.4 アウトプットコンペア ch.5 アウトプットコンペア ch.6 アウトプットコンペア ch.7 OUT4 ∼ OUT7 端子 * MB91F668(48pin) には FRCK1 端子がありません。 408 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.2 MB91665 シリーズ ■ 32 ビットフリーランタイマのブロックダイヤグラム 32 ビットフリーランタイマのブロックダイヤグラムを図 18.2-2 に示します。 図 18.2-2 32 ビットフリーランタイマのブロックダイヤグラム 内部クロック (PCLK) TCCSL0 STOP SCLR CLK3 CLK2 CLK1 CLK0 プリスケーラ 外部クロック入力 (FRCK0) TCDT0 STOP CLR 選択回路 停止 32 ビットフリーランタイマ ch.0 CK フリーランタイマセレクタへ 比較回路 コンペアクリアレジスタ 0 (CPCLR0) 周辺バス フリーランタイマ 0 停止 ( フリーランタイマセレクタへ ) 割込み要求 ICLR ECKE ICRE TCCSH0 内部クロック (PCLK) TCCSL1 STOP SCLR CLK3 CLK2 CLK1 CLK0 プリスケーラ 外部クロック入力 (FRCK1) TCDT1 STOP CLR 選択回路 停止 32 ビットフリーランタイマ ch.1 CK フリーランタイマセレクタへ 比較回路 コンペアクリアレジスタ 1 (CPCLR1) フリーランタイマ 1 停止 ( フリーランタイマセレクタへ ) 割込み要求 ICLR ICRE ECKE TCCSH1 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 409 第 18 章 32 ビット フリーランタイマ 18.2 • MB91665 シリーズ 32 ビットフリーランタイマ コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定された値までカウントアップ します。 • タイマ状態制御レジスタ上位 / 下位 (TCCSH0/TCCSL0, TCCSH1/TCCSL1) 32 ビットフリーランタイマの動作を制御するレジスタです。 • コンペアクリアレジスタ (CPCLR0, CPCLR1) 32 ビットアップカウンタが , このレジスタに設定した値までカウントアップしま す。 • タイマデータレジスタ (TCDT0, TCDT1) カウントを開始する値を設定したり , 現在のカウント値を読み出したりするための レジスタです。 • プリスケーラ カウント用クロックに内部クロック ( 周辺クロック ) を選択した場合 , 周辺クロッ ク (PCLK) を分周します。 • 選択回路 カウント用クロックに , 内部クロック ( 周辺クロック ) と外部クロック (FRCK0, FRCK1) のどちらを使用するかを選択します。 • 比較回路 32 ビットフリーランタイマのカウント値とコンペアクリアレジスタ (CPCLR0, CPCLR1) で設定した値を比較する回路です。 ■ クロック 32 ビットフリーランタイマで使用するクロックを表 18.2-1 に示します。 表 18.2-1 32 ビットフリーランタイマで使用するクロック クロック名 内容 動作クロック 周辺クロック (PCLK) カウント用 クロック 内部クロック ( 周辺クロック ) 周辺クロック (PCLK) を分周して生 成 外部クロック 410 備考 − FRCK0, FRCK1 端子から入力 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.3 MB91665 シリーズ 18.3 端子 32 ビットフリーランタイマで使用する端子について説明します。 ■ 概要 • FRCK0, FRCK1 端子 32 ビットフリーランタイマの外部クロック入力端子です。この端子は兼用端子で す。 32 ビットフリーランタイマの FRCK0, FRCK1 端子として使用するには , 「2.4 端子 の設定方法」を参照してください。 ■ 端子とチャネルの対応 チャネルと端子の対応を表 18.3-1 に示します。 表 18.3-1 チャネルと端子の対応 チャネル 0 入力端子 FRCK0 1 FRCK1* * MB91F668(48pin) には FRCK1 がありません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 411 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ 18.4 レジスタ 32 ビットフリーランタイマで使用するレジスタの構成と機能について説明します。 ■ 32 ビットフリーランタイマのレジスタ一覧 32 ビットフリーランタイマのレジスタ一覧を表 18.4-1 に示します。 表 18.4-1 32 ビットフリーランタイマのレジスタ一覧 チャネル 共通 0 1 412 レジスタ略称 FRTSEL フリーランタイマ選択レジスタ レジスタ名 参照先 18.4.1 CPCLR0 コンペアクリアレジスタ 0 18.4.2 TCCSH0/TCCSL0 タイマ状態制御レジスタ上位 0/ 下位 0 18.4.4 TCDT0 タイマデータレジスタ 0 18.4.3 CPCLR1 コンペアクリアレジスタ 1 18.4.2 TCCSH1/TCCSL1 タイマ状態制御レジスタ上位 1/ 下位 1 18.4.4 TCDT1 18.4.3 タイマデータレジスタ 1 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ フリーランタイマ選択レジスタ (FRTSEL) 18.4.1 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルを 32 ビットアウトプッ トコンペアや32ビットインプットキャプチャの基準時間として使用するかを設定するレジス タです。 フリーランタイマ選択レジスタ (FRTSEL) のビット構成を図 18.4-1 に示します。 図 18.4-1 フリーランタイマ選択レジスタ (FRTSEL) のビット構成 bit 7 6 5 4 3 2 1 0 FRS0 未定義 未定義 未定義 未定義 未定義 未定義 FRS1 − X − X − X − X − X − X R/W R/W 0 0 属性 初期値 R/W:リード / ライト可能 −:未定義 X:不定 [bit7 ∼ bit2]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit1, bit0]:FRS1, FRS0 ( フリーランタイマ選択ビット ) 32ビットアウトプットコンペアおよび32ビットインプットキャプチャの基準時間とし て使用する 32 ビットフリーランタイマのチャネルを選択します。 説明 FRS1 0 0 フリーランタイ マのチャネル ch.0 0 1 ch.0 32 ビットアウトプットコンペア (ch.0 ∼ ch.3) 32 ビットインプットキャプチャ (ch.0 ∼ ch.3) ch.1 32 ビットアウトプットコンペア (ch.4 ∼ ch.7) 32 ビットインプットキャプチャ (ch.4 ∼ ch.7) ch.0 32 ビットアウトプットコンペア (ch.0 ∼ ch.7) ch.1 32 ビットインプットキャプチャ (ch.0 ∼ ch.7) 1 1 CM71-10158-1 FRS0 0 1 使用先 32 ビットアウトプットコンペア (ch.0 ∼ ch.7) 32 ビットインプットキャプチャ (ch.0 ∼ ch.7) 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 413 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ コンペアクリアレジスタ (CPCLR0, CPCLR1) 18.4.2 32 ビットフリーランタイマのコンペア値を設定するレジスタです。 32 ビットフリーランタイマが , このレジスタに設定した値までカウントアップし , 値が一致 すると , 32 ビットフリーランタイマのカウント値が "0000 0000H" にクリアされます。 コンペアクリアレジスタ (CPCLR0, CPCLR1) のビット構成を図 18.4-2 に示します。 図 18.4-2 コンペアクリアレジスタ (CPCLR0, CPCLR1) のビット構成 bit 31 0 CL31 ∼ CL0 R/W 属性 1 初期値 R/W:リード / ライト可能 < 注意事項 > • このレジスタは , 32 ビットフリーランタイマが停止しているときに書き換えてくださ い。 タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) の STOP ビットが "1" のとき , 32 ビットフリーランタイマは停止しています。 • 414 このレジスタは必ずワードでアクセスしてください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ タイマデータレジスタ (TCDT0, TCDT1) 18.4.3 32 ビットフリーランタイマがカウントを開始する値を設定したり , 現在のカウント値を読み 出したりするためのレジスタです。 タイマデータレジスタ (TCDT0, TCDT1) のビット構成を図 18.4-3 に示します。 図 18.4-3 タイマデータレジスタ (TCDT0, TCDT1) のビット構成 bit 31 0 T31 ∼ T0 R/W 属性 0 初期値 R/W:リード / ライト可能 このレジスタに書き込んだ値から , 32 ビットフリーランタイマがカウントアップを開 始します。また , このレジスタを読み出した場合は , 32 ビットフリーランタイマのカウ ント値が読み出されます。 < 注意事項 > • このレジスタは , フリーランタイマが停止しているときに書き換えてください。 タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) の STOP ビットが "1" のとき , 32 ビットフリーランタイマは停止しています。 • このレジスタは必ずワードでアクセスしてください。 • このレジスタは , 書込み値と読出し値が異なります。 • 32 ビットフリーランタイマのカウント値 ( このレジスタの値 ) は , 次のいずれかが発 生すると直ちに "0000 0000H" にクリアされます。 - 本デバイスがリセットされた - タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) の SCLR ビットに "1" が書き込ま れた - 32 ビットフリーランタイマのカウント値が , コンペアクリアレジスタ (CPCLR0, CPCLR1) の値と一致した CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 415 第 18 章 32 ビット フリーランタイマ 18.4 18.4.4 MB91665 シリーズ タイマ状態制御レジスタ上位 / 下位 (TCCSH0/TCCSL0, TCCSH1/TCCSL1) 32 ビットフリーランタイマの動作を制御するレジスタです。 タイマ状態制御レジスタ上位/下位 (TCCSH0/TCCSL0, TCCSH1/TCCSL1) のビット構成 を図 18.4-4 に示します。 図 18.4-4 タイマ状態制御レジスタ上位 / 下位 (TCCSH0/TCCSL0, TCCSH1/TCCSL1) のビット構成 タイマ状態制御レジスタ上位 (TCCSH0 TCCSH1) bit 属性 15 14 13 12 11 10 9 8 ECKE 未定義 未定義 未定義 未定義 未定義 ICLR ICRE R/W − X − X − X − X − X R/W R/W 0 0 0 初期値 タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) bit 属性 初期値 7 6 5 4 3 2 1 0 未定義 STOP 未定義 SCLR CLK3 CLK2 CLK1 CLK0 − X R/W − X R/W R/W R/W R/W R/W 0 0 0 0 0 1 R/W:リード / ライト可能 −:未定義 X:不定 416 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ [bit15]:ECKE ( クロック選択ビット ) 32 ビットフリーランタイマのカウント用クロックを選択します。 書込み値 説明 0 内部クロック ( 周辺クロック ) を選択します。 1 外部クロックを選択します。 内部クロック ( 周辺クロック ) は , 周辺クロック (PCLK) を分周して生成します。内部 クロック ( 周辺クロック ) を選択した場合は , CLK3 ∼ CLK0 ビットで周辺クロック (PCLK) の分周比を選択する必要があります。 外部クロックは FRCK0, FRCK1 端子から入力されます。外部クロックを選択した場合 は , FRCK0, FRCK1 端子から入力される信号の両エッジでカウントが行われます。 MB91F668(48pin) には FRCK1 端子がありません。 < 注意事項 > • このビットを変更すると , 直ちにカウント用クロックが変更されます。 • このビットは , 32 ビットフリーランタイマ , 32 ビットインプットキャプチャ , および 32 ビットアウトプットコンペアのすべてが停止しているときに書き換えてください。 [bit14 ∼ bit10]:予約ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit9]:ICLR ( コンペアクリア割込み要求フラグビット ) 32 ビットフリーランタイマのカウント値が , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致したことを示します。 このビットが "1" のときに , ICRE ビットに "1" が設定されていると , コンペアクリア割 込み要求が発生します。 ICLR 読出し時 書込み時 0 カウント値は一致していません。 このビットを "0" にクリアします。 1 カウント値が一致しました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 417 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ [bit8]:ICRE ( コンペアクリア割込み要求許可ビット ) 32 ビットフリーランタイマのカウント値が , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致したとき (ICLR ビット =1) にコンペアクリア割込み要求 を発生させるかどうかを設定します。 書込み値 説明 0 コンペアクリア割込み要求の発生を禁止します。 1 コンペアクリア割込み要求の発生を許可します。 [bit7]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit6]:STOP ( タイマ動作許可ビット ) 32 ビットフリーランタイマのカウント動作を許可 ( 開始 ) / 禁止 ( 停止 ) します。 書込み値 説明 0 カウント動作を許可 ( 開始 ) します。 1 カウント動作を禁止 ( 停止 ) します。 < 注意事項 > 32 ビットフリーランタイマを停止すると , 32 ビットアウトプットコンペアも停止します。 [bit5]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit4]:SCLR ( タイマクリアビット ) 32 ビットフリーランタイマのカウント値を "0000 0000H" にクリアします。 SCLR 書込み時 0 カウント値をクリアしません。 1 カウント値をクリアします。 読出し時 "0" が読み出されます。 < 注意事項 > このビットに "1" を書き込むと , 次のカウント用クロックのタイミングでカウント値がク リアされます。 418 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.4 MB91665 シリーズ [bit3 ∼ bit0]:CLK3 ∼ CLK0 ( クロック周波数選択ビット ) 32 ビットフリーランタイマのカウント用クロックに , 内部クロック ( 周辺クロック ) を 選択した場合は , 周辺クロック (PCLK) の分周比を選択します。 このビットで選択した分周比と周辺クロック (PCLK) の周波数によってカウントの周 期が決定します。 このビットへの書込み値と周辺クロック (PCLK) の関係で設定されるカウント周期例 を表 18.4-2 に示します。 表 18.4-2 書込み値とカウント周期例 CLK3 CLK2 CLK1 CLK0 PCLK の周波数 PCLK の 分周比 32MHz 16MHz 8MHz 4MHz 1MHz 0 0 0 0 1 分周 31.25ns 62.5ns 125ns 0.25μs 1μs 0 0 0 1 2 分周 62.5ns 125ns 0.25μs 0.5μs 2μs 0 0 1 0 4 分周 125ns 0.25μs 0.5μs 1μs 4μs 0 0 1 1 8 分周 0.25μs 0.5μs 1μs 2μs 8μs 0 1 0 0 16 分周 0.5μs 1μs 2μs 4μs 16μs 0 1 0 1 32 分周 1μs 2μs 4μs 8μs 32μs 0 1 1 0 64 分周 2μs 4μs 8μs 16μs 64μs 0 1 1 1 128 分周 4μs 8μs 16μs 32μs 128μs 1 0 0 0 256 分周 8μs 16μs 32μs 64μs 256μs PCLK:周辺クロック (PCLK) < 注意事項 > • 表 18.4-2 に示した以外の設定は使用しないでください。 • このビットを書き換えると , 直ちにカウント用クロックが変更されます。 • このビットは , 32 ビットフリーランタイマ , 32 ビットインプットキャプチャ , および 32 ビットアウトプットコンペアのすべてが停止しているときに書き換えてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 419 第 18 章 32 ビット フリーランタイマ 18.5 MB91665 シリーズ 18.5 割込み 32 ビットフリーランタイマのカウント値が , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致すると , 割込み要求が発生します ( コンペアクリア割込み要求 ) 。 32 ビットフリーランタイマで使用できる割込みについて表 18.5-1 に示します。 表 18.5-1 32 ビットフリーランタイマの割込み 割込み要求 割込み要求フラグ 割込み要求許可 割込み要求のクリア コンペアクリア TCCSH の ICLR=1 TCCSH の ICRE=1 TCCSH のICLR ビットに"0" 割込み要求 を書き込む TCCSH : タイマ状態制御レジスタ上位 (TCCSH0, TCCSH1) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 • • 420 - 割込み許可と同時に割込み要求をクリアする。 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.6 MB91665 シリーズ 18.6 動作説明と設定手順例 32 ビットフリーランタイマの動作について説明します。また , 動作状態を設定するための手 順例も示します。 ■ 概要 32 ビットフリーランタイマは , 内部クロック ( 周辺クロック ) または外部クロックをカ ウント用クロックとして , タイマデータレジスタ (TCDT0, TCDT1) に設定した値から , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値までカウントアップしま す。 • 内部クロック ( 周辺クロック ) 9 種類 ( 周辺クロック (PCLK) の 1 分周 , 2 分周 , 4 分周 , 8 分周 , 16 分周 , 32 分周 , 64 分周 , 128 分周 , 256 分周 ) から選択できます。 • 外部クロック 両エッジでカウントアップします。カウント開始のタイミングは , FRCK0, FRCK1 端子から入力される外部クロックの初期値によって異なります。 32 ビットフリーランタイマの値は , 32 ビットアウトプットコンペアおよび 32 ビットイ ンプットキャプチャの基準時間として使用されます。 ■ タイマクリア動作 32 ビットフリーランタイマのカウント値は , 次のいずれかの状態になると直ちにクリ アされます。 • コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致した場合 • タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) の SCLR ビットで 32 ビットフリー ランタイマのカウント値がクリア (SCLR=1) された場合 • 32 ビットフリーランタイマの停止中に , タイマデータレジスタ (TCDT0, TCDT1) に "0000 0000H" が書き込まれた場合 • 本デバイスがリセットされた場合 32 ビットフリーランタイマのカウント値が , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致した場合は , カウントタイミングに同期してクリアされ ます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 421 第 18 章 32 ビット フリーランタイマ 18.6 MB91665 シリーズ タイマクリア動作のタイミングを図 18.6-1 に示します。 図 18.6-1 タイマクリア動作のタイミング 周辺クロック (PCLK) コンペアクリアレジスタ (CPCLR0, CPCLR1) の値 N カウントのタイミング カウント値 18.6.1 0000H N 内部クロック ( 周辺クロック ) 選択時の動作 分周した周辺クロック (PCLK) をカウント用クロックとして使用します。 ■ カウント動作 タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) の STOP ビットで , 32 ビットフリー ランタイマの動作を許可 (STOP=0) すると , タイマデータレジスタ (TCDT0, TCDT1) に 設定した値から , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値までカウ ントを開始します。 ■ コンペアクリア動作 32 ビットフリーランタイマのカウント値が , コンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致すると , カウントのタイミングに同期してクリアされま す ( コンペアクリア ) 。 コンペアクリア後 , 再度カウントアップが開始されます。 コンペアクリア動作のタイミングを図 18.6-2 に示します。 図 18.6-2 コンペアクリア動作のタイミング カウント値 FFFF FFFFH BFFF FFFFH 7FFF FFFFH 3FFF FFFFH 0000 0000 H 時間 タイマ動作開始 比較結果一致 リセット コンペアクリア レジスタ (CPCLR0, CPCLR1) 422 BFFFH 7FFFH FUJITSU SEMICONDUCTOR LIMITED FFFFH CM71-10158-1 第 18 章 32 ビット フリーランタイマ 18.6 MB91665 シリーズ ■ 割込み処理動作 32 ビットフリーランタイマは , カウント値がコンペアクリアレジスタ (CPCLR0, CPCLR1) に設定した値と一致したときに , 割込み要求を発生できます。 タイマ状態制御レジスタ上位 (TCCSH0 TCCSH1) の ICLR ビットに "0" を書き込むと , 割込み要求をクリアできます。 割込み要求の発生タイミングを図 18.6-3 に示します。 図 18.6-3 割込み要求の発生タイミング N-1 カウント値 N 0 1 コンペアクリア割込み要求 18.6.2 外部クロック選択時の動作 FRCK0, FRCK1 端子から入力される外部クロックをカウント用クロックとして使用します。 ■ カウント動作 タイマ状態制御レジスタ下位 (TCCSL0, TCCSL1) の STOP ビットで 32 ビットフリーラ ンタイマの動作を許可 (STOP=0) しているときに , FRCK0, FRCK1 端子で有効エッジを 検出すると , タイマデータレジスタ (TCDT0, TCDT1) に設定した値から , コンペアクリ アレジスタ (CPCLR0, CPCLR1) に設定した値までカウントを開始します。 カウントのタイミングは , フリーランタイマの動作を許可した時点で , FRCK0, FRCK1 端子から入力されていた信号レベルによって異なります。 外部クロック選択時のカウントのタイミングを表 18.6-1 に示します。 表 18.6-1 外部クロック選択時のカウントのタイミング 動作許可時の 信号レベル CM71-10158-1 カウントのタイミング "H" レベル 立上りエッジでカウントを開始し , その後は両エッジでカウン トアップします。 "L" レベル 立下りエッジでカウントを開始し , その後は両エッジでカウン トアップします。 FUJITSU SEMICONDUCTOR LIMITED 423 第 18 章 32 ビット フリーランタイマ 18.6 MB91665 シリーズ 外部クロック選択時 (ECKE=1) のカウントのタイミングを図 18.6-4 に示します。 図 18.6-4 外部クロック選択時のカウントのタイミング 外部クロック入力 ECKE ビット カウント用クロック N カウント値 N+1 N+2 ■ コンペアクリア動作 内部クロック ( 周辺クロック ) 選択時と同様です。「18.6.1 内部クロック ( 周辺クロッ ク ) 選択時の動作」の「■ コンペアクリア動作」を参照してください。 ■ 割込み処理動作 内部クロック ( 周辺クロック ) 選択時と同様です。「18.6.1 内部クロック ( 周辺クロッ ク ) 選択時の動作」の「■ 割込み処理動作」を参照してください。 424 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 19 章 32 ビット インプット キャプチャ 32 ビットインプットキャプチャの機能と動作につ いて説明します。 19.1 概要 19.2 構成 19.3 端子 19.4 レジスタ 19.5 割込み 19.6 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 425 第 19 章 32 ビットインプットキャプチャ 19.1 MB91665 シリーズ 19.1 概要 32 ビットインプットキャプチャは , あらかじめ設定しておいた入力信号のエッジを検出する と , その時点での 32 ビットフリーランタイマの値を保存します。 本製品はインプットキャプチャを 8 チャネル内蔵しています。 ■ 概要 32 ビットインプットキャプチャは , コンペアタイマの一部です。コンペアタイマは , 次 の 3 つの機能で構成されています。 - 32 ビットフリーランタイマ (2 チャネル ) 「第 18 章 32 ビット フリーランタイマ」を参照してください。 - 32 ビットアウトプットコンペア (8 チャネル ) 「第 20 章 32 ビット アウトプット コンペア」を参照してください。 - 32 ビットインプットキャプチャ (8 チャネル ) この章では , 32 ビットインプットキャプチャについて説明します。 • • 32 ビットフリーランタイマの値を保存するトリガを次の 3 種類から選択できます。 - 立上りエッジ - 立下りエッジ - 両エッジ あらかじめ設定しておいた入力信号のエッジを検出したときに , 割込み要求を発生 できます。 • 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフ リーランタイマの値を 32 ビットインプットキャプチャで保存するかを選択できま す。 32 ビットフリーランタイマの選択方法については , 「第 18 章 32 ビット フリーラ ンタイマ」の「18.4.1 フリーランタイマ選択レジスタ (FRTSEL)」を参照してくだ さい。 426 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 19 章 32 ビットインプットキャプチャ 19.2 MB91665 シリーズ 19.2 構成 32 ビットインプットキャプチャの構成を示します。 ■ 32 ビットインプットキャプチャのブロックダイヤグラム 32 ビットインプットキャプチャのブロックダイヤグラムを図 19.2-1 に示します。 図 19.2-1 32 ビットインプットキャプチャのブロックダイヤグラム フリーランタイマセレクタから インプットキャプチャ データレジスタ 0 (IPCP0) エッジ検出 IN0 ICS01 ICP0 ICE0 EG10 EG00 割込み要求 0 インプットキャプチャ データレジスタ 1 (IPCP1) エッジ検出 IN1 ICS01 ICP1 ICE1 EG11 EG01 割込み要求 1 インプットキャプチャ データレジスタ 2 (IPCP2) エッジ検出 IN2 ICS23 ICP2 ICE2 EG12 EG02 割込み要求 2 インプットキャプチャ データレジスタ 3 (IPCP3) エッジ検出 IN3 ICS23 周 辺 バ ス ICP3 ICE3 EG13 EG03 割込み要求 3 インプットキャプチャ データレジスタ 4 (IPCP4) エッジ検出 IN4 ICS45 ICP4 ICE4 EG14 EG04 割込み要求 4 インプットキャプチャ データレジスタ 5 (IPCP5) エッジ検出 IN5 ICS45 ICP5 ICE5 EG15 EG05 割込み要求 5 インプットキャプチャ データレジスタ 6 (IPCP6) エッジ検出 IN6 ICS67 ICP6 ICE6 EG16 EG06 割込み要求 6 インプットキャプチャ データレジスタ 7 (IPCP7) エッジ検出 IN7 ICS67 ICP7 ICE7 EG17 EG07 割込み要求 7 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 427 第 19 章 32 ビットインプットキャプチャ 19.2 • MB91665 シリーズ インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) フリーランタイマの値が保存されるレジスタです。 • インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) 32 ビットインプットキャプチャの動作や状態を制御するレジスタです。 < 注意事項 > コンペアタイマのブロックダイヤグラムについては , 「第 18 章 32 ビット フリーランタ イマ」の「■ コンペアタイマのブロックダイヤグラム」を参照してください。 ■ クロック 32 ビットインプットキャプチャで使用するクロックを表 19.2-1 に示します。 表 19.2-1 32 ビットインプットキャプチャで使用するクロック クロック名 動作クロック 428 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 19 章 32 ビットインプットキャプチャ 19.3 MB91665 シリーズ 19.3 端子 32 ビットインプットキャプチャで使用する端子について説明します。 ■ 概要 • IN0 ∼ IN7 端子 32 ビットインプットキャプチャの入力端子です。この端子は兼用端子です。32 ビッ トインプットキャプチャの入力端子として使用するには ,「2.4 端子の設定方法」を 参照してください。 ■ 端子とチャネルの対応 チャネルと端子の対応を表 19.3-1 に示します。 表 19.3-1 チャネルと端子の対応 チャネル CM71-10158-1 0 入力端子 IN0 1 IN1 2 IN2 3 IN3 4 IN4 5 IN5 6 IN6 7 IN7 FUJITSU SEMICONDUCTOR LIMITED 429 第 19 章 32 ビットインプットキャプチャ 19.4 MB91665 シリーズ 19.4 レジスタ 32 ビットインプットキャプチャで使用するレジスタの構成と機能について説明します。 ■ 32 ビットインプットキャプチャのレジスタ一覧 32 ビットインプットキャプチャのレジスタ一覧を表 19.4-1 に示します。 表 19.4-1 32 ビットインプットキャプチャのレジスタ一覧 チャネル 0/1 共通 レジスタ略称 レジスタ名 FRTSEL フリーランタイマ選択レジスタ ICS01 インプットキャプチャ状態制御レジスタ 01 19.4.1 2/3 共通 ICS23 インプットキャプチャ状態制御レジスタ 23 19.4.1 4/5 共通 ICS45 インプットキャプチャ状態制御レジスタ 45 19.4.1 6/7 共通 ICS67 インプットキャプチャ状態制御レジスタ 67 19.4.1 0 IPCP0 インプットキャプチャデータレジスタ 0 19.4.2 1 IPCP1 インプットキャプチャデータレジスタ 1 19.4.2 2 IPCP2 インプットキャプチャデータレジスタ 2 19.4.2 3 IPCP3 インプットキャプチャデータレジスタ 3 19.4.2 4 IPCP4 インプットキャプチャデータレジスタ 4 19.4.2 5 IPCP5 インプットキャプチャデータレジスタ 5 19.4.2 6 IPCP6 インプットキャプチャデータレジスタ 6 19.4.2 7 IPCP7 インプットキャプチャデータレジスタ 7 19.4.2 共通 430 FUJITSU SEMICONDUCTOR LIMITED 参照先 18.4.1 CM71-10158-1 第 19 章 32 ビットインプットキャプチャ 19.4 MB91665 シリーズ インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) 19.4.1 32 ビットインプットキャプチャの動作や状態を制御するレジスタです。 インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) のビット構成を図 19.4-1 に 示します。 図 19.4-1 インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) のビット構成 bit 属性 7 6 5 4 3 2 1 0 ICPm ICPn ICEm ICEn EG1m EG0m EG1n EG0n 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, bit6]:ICPm, ICPn ( 割込み要求フラグビット ) IN0 ∼ IN7 端子に有効エッジが検出されたことを示します。このビットが "1" のとき に , ICEm, ICEn ビットが "1" に設定されているとエッジ検出割込み要求が発生します。 ICPm ビットが奇数チャネル , ICPn ビットが偶数チャネルに対応します。 ICPm, ICPn 読出し時 書込み時 0 有効エッジは検出されていません。 このビットを "0" にクリアします。 1 有効エッジが検出されました。 無視されます。 ICPm ビット , ICPn ビットとチャネルの対応を表 19.4-2 に示します。 表 19.4-2 ビットとチャネルの対応 インプットキャプチャ ICPm ビット 対応チャネル ICPn ビット 対応チャネル ステータスレジスタ ICS01 ICP1 ch.1 ICP0 ch.0 ICS23 ICP3 ch.3 ICP2 ch.2 ICS45 ICP5 ch.5 ICP4 ch.4 ICS67 ICP7 ch.7 ICP6 ch.6 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 431 第 19 章 32 ビットインプットキャプチャ 19.4 MB91665 シリーズ [bit5, bit4]:ICEm, ICEn ( 割込み要求許可ビット ) IN0 ∼ IN7 端子に有効エッジが検出されたとき (ICPm, ICPn=1) に , エッジ検出割込み要 求を発生させるかどうかを設定します。 ICEm ビットが奇数チャネル , ICEn ビットが偶数チャネルに対応します。 書込み値 説明 0 エッジ検出割込み要求の発生を禁止します。 1 エッジ検出割込み要求の発生を許可します。 ICEm ビット , ICEn ビットとチャネルの対応を表 19.4-3 に示します。 表 19.4-3 ビットとチャネルの対応 インプットキャプチャ ICEm ビット 対応チャネル ICEn ビット 対応チャネル ステータスレジスタ ICS01 ICE1 ch.1 ICE0 ch.0 ICS23 ICE3 ch.3 ICE2 ch.2 ICS45 ICE5 ch.5 ICE4 ch.4 ICS67 ICE7 ch.7 ICE6 ch.6 [bit3, bit2]:EG1m, EG0m ( エッジ選択ビット ) 奇数チャネルの 32 ビットインプットキャプチャの有効エッジを選択します。 ここで, 選択したエッジが検出されると, 32ビットフリーランタイマの値をインプット キャプチャデータレジスタ (IPCP0 ∼ IPCP7) に保存します。 EG1m EG0m 説明 0 0 非検出 ( インプットキャプチャ停止 ) 。 0 1 立上りエッジ 1 0 立下りエッジ 1 1 両エッジ EG1m ビット , EG0m ビットとチャネルの対応を表 19.4-4 に示します。 表 19.4-4 ビットとチャネルの対応 インプットキャプチャ ステータスレジスタ ICS01 EG11, EG01 ch.1 ICS23 EG13, EG03 ch.3 ICS45 EG15, EG05 ch.5 ICS67 EG17, EG07 ch.7 EG1m, EG0m ビット 対応チャネル < 注意事項 > このビットに "00" 以外の値を書き込むと , 有効エッジを選択すると同時に対応チャネルの 動作が許可されます。 432 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 19 章 32 ビットインプットキャプチャ 19.4 MB91665 シリーズ [bit1, bit0]:EG1n, EG0n ( エッジ選択ビット ) 偶数チャネルの 32 ビットインプットキャプチャの有効エッジを選択します。 ここで, 選択したエッジが検出されると, 32ビットフリーランタイマの値をインプット キャプチャデータレジスタ (IPCP0 ∼ IPCP7) に保存します。 EG1n EG0n 説明 0 0 非検出 ( インプットキャプチャ停止 ) 。 0 1 立上りエッジ 1 0 立下りエッジ 1 1 両エッジ EG1n ビット , EG0n ビットのビット名はチャネルごとに異なります。 ビットとチャネルの対応を表 19.4-5 に示します。 表 19.4-5 ビットとチャネルの対応 インプットキャプチャ ステータスレジスタ ICS01 EG10, EG00 ch.0 ICS23 EG12, EG02 ch.2 ICS45 EG14, EG04 ch.4 ICS67 EG16, EG06 ch.6 EG1n, EG0n ビット 対応チャネル < 注意事項 > このビットに "00" 以外の値を書き込むと , 有効エッジを選択すると同時に対応チャネルの 動作が許可されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 433 第 19 章 32 ビットインプットキャプチャ 19.4 MB91665 シリーズ インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) 19.4.2 32 ビットフリーランタイマの値を保存するレジスタです。IN0 ∼ IN7 端子からの入力信号に 有効エッジが検出されると, 32ビットフリーランタイマの値がこのレジスタに保存されます。 インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) のビット構成を図 19.4-2 に示 します。 図 19.4-2 インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) のビット構成 bit 31 0 CP31 ∼ CP0 属性 R 初期値 X R:リードオンリ X:不定 < 注意事項 > 434 • このレジスタは必ずワードで読み出してください。 • 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフリー ランタイマの値が , このレジスタに保存されるかは , フリーランタイマ選択レジスタ (FRTSEL) の設定によって異なります。詳しくは , 「第 18 章 32 ビット フリーランタ イマ」の「18.4.1 フリーランタイマ選択レジスタ (FRTSEL)」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 19 章 32 ビットインプットキャプチャ 19.5 MB91665 シリーズ 19.5 割込み IN0 ∼ IN7 端子からの入力信号に有効エッジが検出されると割込み要求が発生します ( エッジ 検出割込み要求 ) 。 32 ビットインプットキャプチャで使用できる割込みについて表 19.5-1 に示します。 表 19.5-1 32 ビットインプットキャプチャの割込み 割込み要求 エッジ検出 割込み要求 割込み要求フラグ 偶数チャネル : ICS の ICPn=1 奇数チャネル : ICS の ICPm=1 割込み要求許可 偶数チャネル : ICS の ICEn=1 奇数チャネル : ICS の ICEm=1 割込み要求のクリア 次のビットに "0" を書き込む 偶数チャネル : ICS の ICPn ビット 奇数チャネル : ICS の ICPm ビット ICS : インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 435 第 19 章 32 ビットインプットキャプチャ 19.6 MB91665 シリーズ 19.6 動作説明と設定手順例 32 ビットインプットキャプチャの動作について説明します。また , 動作状態を設定するため の手順例も示します。 19.6.1 32 ビットインプットキャプチャの動作説明 32 ビットインプットキャプチャは , あらかじめ設定しておいた入力信号のエッジを検出する と , その時点での 32 ビットフリーランタイマの値を保存します。 ■ 動作 インプットキャプチャ状態制御レジスタ (ICS01 ∼ ICS67) の次のビットで有効エッジ を選択すると , 32 ビットインプットキャプチャの動作が許可されます。 • 奇数チャネルの有効エッジ選択 / 動作許可:EG1m, EG0m • 偶数チャネルの有効エッジ選択 / 動作許可:EG1n, EG0n 32 ビットインプットキャプチャの動作が許可されているときに IN0 ∼ IN7 端子で有効 エッジを検出すると, その時点での32ビットフリーランタイマの値が, インプットキャ プチャデータレジスタ (IPCP0 ∼ IPCP7) に保存されます。このとき , 割込み要求の発生 が許可されているとエッジ検出割込み要求が発生します。 436 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 19 章 32 ビットインプットキャプチャ 19.6 MB91665 シリーズ 32 ビットインプットキャプチャの動作を図 19.6-1 に示します。 図 19.6-1 32 ビットインプットキャプチャの動作 ch.0 と ch.1 の場合 32 ビットフリーランタイマの値 FFFF FFFFH BFFF FFFFH 7FFF FFFFH 3FFF FFFFH 0000 0000H 時間 リセット IN0 端子 IN1 端子 IN 端子例 IPCP0 不定 IPCP1 不定 IPCP 例 不定 3FFFH 7FFFH BFFFH 3FFFH 割込み要求 0 割込み要求 1 割込み要求例 再度, 有効エッジにより割込み要求生成 IN0 端子 IN1 端子 IN 端子例 IPCP0 IPCP1 : 立上りエッジ : 立下りエッジ : 両エッジ :インプットキャプチャデータレジスタ 0 (IPCP0) :インプットキャプチャデータレジスタ 1 (IPCP1) ソフトウェアにより割込み要求クリア < 注意事項 > 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフリーラ ンタイマの値を保存するかは, フリーランタイマ選択レジスタ (FRTSEL) の設定によって 異なります。詳しくは , 「第 18 章 32 ビット フリーランタイマ」の「18.4.1 フリーラン タイマ選択レジスタ (FRTSEL)」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 437 第 19 章 32 ビットインプットキャプチャ 19.6 MB91665 シリーズ 有効エッジを検出すると内部クロック (周辺クロック) に同期化するためにキャプチャ 信号が生成されます。割込み要求の発生や , 32 ビットフリーランタイマの値の保存は このキャプチャ信号を元に行われます。キャプチャ信号のタイミング例を図 19.6-2 に 示します。 図 19.6-2 キャプチャ信号のタイミング例 内部クロック ( 周辺クロック ) 32 ビットフリーラン タイマの値 インプット キャプチャ入力 N N+1 有効エッジ キャプチャ信号 IPCP N+1 割込み要求 IPCP:インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) 438 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 32 ビットアウトプットコンペアの機能と動作につ いて説明します。 20.1 概要 20.2 構成 20.3 端子 20.4 レジスタ 20.5 割込み 20.6 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 439 第 20 章 32 ビット アウトプット コンペア 20.1 MB91665 シリーズ 20.1 概要 32 ビットアウトプットコンペアは , あらかじめ設定した値まで 32 ビットフリーランタイマ がカウントアップすると, 端子からの出力レベルを反転させたり, 割込み要求を発生させたり する機能です。 本製品は , 32 ビットアウトプットコンペアを 8 チャネル内蔵しています。 ■ 概要 32 ビットアウトプットコンペアは , コンペアタイマの一部です。コンペアタイマは , 次 の 3 つの機能で構成されています。 - 32 ビットフリーランタイマ (2 チャネル ) 「第 18 章 32 ビット フリーランタイマ」を参照してください。 - 32 ビットアウトプットコンペア (8 チャネル ) - 32 ビットインプットキャプチャ (8 チャネル ) 「第 19 章 32 ビットインプットキャプチャ」を参照してください。 この章では , 32 ビットアウトプットコンペアについて説明します。 • 32ビットアウトプットコンペアを1チャネルずつ独立で使用することも, 2チャネル を一対にして使用することもできます。 2 チャネルの 32 ビットアウトプットコンペアを一対にして使用すると , 一度に 2 チャネル分の比較動作を行えるため , CPU の負荷を軽減できます。 一対にして使用できるチャネルの組合せは次のとおりです。 • - ch.0 と ch.1 - ch.2 と ch.3 - ch.4 と ch.5 - ch.6 と ch.7 32 ビットアウトプットコンペア起動時の OUT0 ∼ OUT7 端子の出力レベルを設定で きます。 • 32 ビットフリーランタイマのカウント値とあらかじめ設定した値 ( コンペア値 ) が 一致すると , 割込み要求を発生できます。 • 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフ リーランタイマを 32 ビットアウトプットコンペアで使用するかを選択できます。 32 ビットフリーランタイマの選択方法については , 「第 18 章 32 ビット フリーラ ンタイマ」の「18.4.1 フリーランタイマ選択レジスタ (FRTSEL)」を参照してくだ さい。 440 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.2 MB91665 シリーズ 20.2 構成 32 ビットアウトプットコンペアの構成を示します。 ■ 32 ビットアウトプットコンペアのブロックダイヤグラム 32 ビットアウトプットコンペアのブロックダイヤグラムを図 20.2-1 に示します。 図 20.2-1 32 ビットアウトプットコンペアのブロックダイヤグラム フリーランタイマセレクタから OCCP0, OCCP2 出力 反転回路 比較回路 IOP1 OUT0, OUT2 端子 IOP0 IOE1 IOE0 割込み要求 0 OCCP1, OCCP3 割込み要求 1 比較回路 出力 反転回路 IOP0 IOE1 IOE0 周辺バス IOP1 OUT1, OUT3 端子 CMOD 割込み要求 2 OCCP4, OCCP6 割込み要求 3 出力 反転回路 比較回路 IOP1 OUT4, OUT6 端子 IOP0 IOE1 IOE0 割込み要求 4 OCCP5, OCCP7 割込み要求 5 比較回路 出力 反転回路 IOP1 IOP0 IOE1 IOE0 OUT5, OUT7 端子 CMOD 割込み要求 6 割込み要求 7 OCCP0 ∼ OCCP7:アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 441 第 20 章 32 ビット アウトプット コンペア 20.2 • MB91665 シリーズ アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) 32 ビットフリーランタイマのカウント値と比較するための値 ( コンペア値 ) を設定 するレジスタです。 • コンペア制御レジスタ 32 ビットアウトプットコンペアの動作を制御するレジスタです。次の 2 つのレジス タに分かれています。 • - コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) - コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) 比較回路 32 ビ ッ ト フ リ ー ラ ン タ イ マ の カ ウ ン ト 値 と ア ウ ト プ ッ ト コ ン ペ ア レ ジ ス タ (OCCP0 ∼ OCCP7) に設定したコンペア値を比較する回路です。 < 注意事項 > コンペアタイマのブロックダイヤグラムについては , 「第 18 章 32 ビット フリーランタ イマ」の「■ コンペアタイマのブロックダイヤグラム」を参照してください。 ■ クロック 32 ビットアウトプットコンペアで使用するクロックを表 20.2-1 に示します。 表 20.2-1 32 ビットアウトプットコンペアで使用するクロック クロック名 動作クロック 442 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.3 MB91665 シリーズ 20.3 端子 32 ビットアウトプットコンペアで使用する端子について説明します。 ■ 概要 • OUT0 ∼ OUT7 端子 32 ビットアウトプットコンペアの出力端子です。この端子は兼用端子です。 32 ビットアウトプットコンペアの OUT0 ∼ OUT7 端子として使用するには , 「2.4 端子の設定方法」を参照してください。 ■ 端子とチャネルの対応 チャネルと端子の対応を表 20.3-1 に示します。 表 20.3-1 チャネルと端子の対応 チャネル CM71-10158-1 0 出力端子 OUT0 1 OUT1 2 OUT2 3 OUT3 4 OUT4 5 OUT5 6 OUT6 7 OUT7 FUJITSU SEMICONDUCTOR LIMITED 443 第 20 章 32 ビット アウトプット コンペア 20.4 MB91665 シリーズ 20.4 レジスタ 32 ビットアウトプットコンペアで使用するレジスタの構成と機能について説明します。 ■ 32 ビットアウトプットコンペアのレジスタ一覧 32 ビットアウトプットコンペアのレジスタ一覧を表 20.4-1 に示します。 表 20.4-1 32 ビットアウトプットコンペアのレジスタ一覧 チャネル レジスタ略称 レジスタ名 FRTSEL フリーランタイマ選択レジスタ OCSH1 コンペア制御レジスタ上位 1 20.4.2 OCSL0 コンペア制御レジスタ下位 0 20.4.3 OCSH3 コンペア制御レジスタ上位 3 20.4.2 OCSL2 コンペア制御レジスタ下位 2 20.4.3 OCSH5 コンペア制御レジスタ上位 5 20.4.2 OCSL4 コンペア制御レジスタ下位 4 20.4.3 OCSH7 コンペア制御レジスタ上位 7 20.4.2 OCSL6 コンペア制御レジスタ下位 6 20.4.3 0 OCCP0 アウトプットコンペアレジスタ 0 20.4.1 1 OCCP1 アウトプットコンペアレジスタ 1 20.4.1 2 OCCP2 アウトプットコンペアレジスタ 2 20.4.1 3 OCCP3 アウトプットコンペアレジスタ 3 20.4.1 4 OCCP4 アウトプットコンペアレジスタ 4 20.4.1 5 OCCP5 アウトプットコンペアレジスタ 5 20.4.1 6 OCCP6 アウトプットコンペアレジスタ 6 20.4.1 7 OCCP7 アウトプットコンペアレジスタ 7 20.4.1 共通 0/1 共通 2/3 共通 4/5 共通 6/7 共通 444 FUJITSU SEMICONDUCTOR LIMITED 参照先 18.4.1 CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.4 MB91665 シリーズ アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) 20.4.1 32 ビットフリーランタイマのカウント値と比較するための値 ( コンペア値 ) を設定するレジ スタです。32 ビットフリーランタイマを動作させる前に , このレジスタにコンペア値を設定 してください。 アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のビット構成を図 20.4-1 に示しま す。 図 20.4-1 アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のビット構成 bit 31 0 OP31 ∼ OP0 R/W 属性 0 初期値 R/W:リード / ライト可能 < 注意事項 > • このレジスタは , 32 ビットフリーランタイマの動作中にも書き換えられます。 • このレジスタに書き込んだ値は , 直ちにコンペア値に反映されます。そのため , 32 ビッ トフリーランタイマの動作中にコンペア値を小さな値から大きな値へ書き換えると , 32 ビットフリーランタイマの 1 回のカウント中に 2 回の割込み要求が発生します。 これを避けるには , 32 ビットフリーランタイマの割込み処理を利用して , このレジス タを書き換えてください。 • このレジスタは必ずワード (32 ビット単位 ) でアクセスしてください。 • 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフリー ランタイマの値と, このレジスタに設定した値が比較されるかは, フリーランタイマ選 択レジスタ (FRTSEL) の設定によって異なります。詳しくは , 「第 18 章 32 ビット フ リーランタイマ」の「18.4.1 フリーランタイマ選択レジスタ (FRTSEL)」を参照して ください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 445 第 20 章 32 ビット アウトプット コンペア 20.4 20.4.2 MB91665 シリーズ コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) 32 ビットアウトプットコンペアを独立で使用するか , 対にして使用するかを設定するレジス タです。また , 32 ビットアウトプットコンペア起動時に OUT0 ∼ OUT7 端子から出力する信 号レベルも設定します。 コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) のビット構成を図 20.4-2 に示します。 図 20.4-2 コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) のビット構成 bit 属性 初期値 15 14 13 12 11 10 9 8 未定義 未定義 未定義 CMOD 未定義 未定義 OTD1 OTD0 − X R/W − X R/W R/W 0 0 − X − X 0 − X R/W:リード / ライト可能 −:未定義 X:不定 [bit15 ∼ bit13]:未定義ビット 446 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.4 MB91665 シリーズ [bit12]:CMOD ( 出力レベル反転モードビット ) 32 ビットアウトプットコンペアを独立で使用するか , 対にして使用するかを設定しま す。この設定により , 端子から出力する波形の反転モードが変わります。 書込み値 説明 0 32 ビットアウトプットコンペアを独立で使用します。 アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のコンペア値と 32 ビットフリーランタイマのカウント値が一致すると , 対応する端子から の出力レベルが反転します。 1 32 ビットアウトプットコンペアを対にして使用します。 アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のコンペア値と 32 ビットフリーランタイマの値が一致した場合の反転モードは次のよう になります。 偶数チャネルのアウトプットコンペアレジスタ (OCCP0, OCCP2, OCCP4, OCCP6) のコンペア値と一致したとき:次の端子からの出力レベ ルが反転します。 ・チャネルに対応する端子からの出力レベル ・対にして使用している奇数チャネルに対応する端子からの出力レベル 奇数チャネルのアウトプットコンペアレジスタ (OCCP1, OCCP3, OCCP5, OCCP7) のコンペア値と一致したとき:次の端子からの出力レベ ルが反転します。 ・チャネルに対応する端子からの出力レベル このビットに "1" を設定した場合の , OUT0 ∼ OUT7 端子の出力レベル反転タイミング を表 20.4-2 に示します。 表 20.4-2 出力レベル反転タイミング 32 ビットフリーランタイマの 値とコンペア値が一致したレジスタ CM71-10158-1 出力レベルが反転する端子 アウトプットコンペアレジスタ 0 (OCCP0) OUT0 端子 , OUT1 端子 アウトプットコンペアレジスタ 1 (OCCP1) OUT1 端子 アウトプットコンペアレジスタ 2 (OCCP2) OUT2 端子 , OUT3 端子 アウトプットコンペアレジスタ 3 (OCCP3) OUT3 端子 アウトプットコンペアレジスタ 4 (OCCP4) OUT4 端子 , OUT5 端子 アウトプットコンペアレジスタ 5 (OCCP5) OUT5 端子 アウトプットコンペアレジスタ 6 (OCCP6) OUT6 端子 , OUT7 端子 アウトプットコンペアレジスタ 7 (OCCP7) OUT7 端子 FUJITSU SEMICONDUCTOR LIMITED 447 第 20 章 32 ビット アウトプット コンペア 20.4 MB91665 シリーズ < 注意事項 > • このビットに "1" を設定しても , 偶数チャネルと奇数チャネルのコンペア値が同じ値の 場合は , 32 ビットアウトプットコンペアを 1 チャネルずつ独立で使用する場合と同じ 動作になります。 • 2 チャネルの 32 ビットアウトプットコンペアを一対にして使用する場合は , このビッ トに必ず "1" を書き込んでください。 [bit11, bit10]:予約ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit9]:OTD1 ( 出力レベルビット ) 奇数チャネルの 32 ビットアウトプットコンペア起動時に端子 (OUT1, OUT3, OUT5, OUT7) から出力する信号レベルを設定します。 OTD1 書込み時 0 "L" レベルが出力されます。 1 "H" レベルが出力されます。 読出し時 出力レベルが読み出されます。 < 注意事項 > 32 ビットアウトプットコンペアの動作中に , このビットを書き換えないでください。 [bit8]:OTD0 ( 出力レベルビット ) 偶数チャネルの 32 ビットアウトプットコンペア起動時に端子 (OUT0, OUT2, OUT4, OUT6) から出力する信号レベルを設定します。 OTD0 書込み時 0 "L" レベルが出力されます。 1 "H" レベルが出力されます。 読出し時 出力レベルが読み出されます。 < 注意事項 > 32 ビットアウトプットコンペアの動作中に , このビットを書き換えないでください。 448 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.4 MB91665 シリーズ コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) 20.4.3 32 ビットアウトプットコンペアの動作を許可 / 禁止したり , 割込み要求の制御をしたりする レジスタです。 コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) のビット構成を図 20.4-3 に示します。 図 20.4-3 コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) のビット構成 bit 属性 7 6 5 4 IOP1 IOP0 IOE1 IOE0 R/W R/W R/W R/W 0 0 0 0 初期値 3 2 1 0 未定義 未定義 CST1 CST0 − X − X R/W R/W 0 0 R/W:リード / ライト可能 −:未定義 X:不定 [bit7]:IOP1 ( 奇数チャネル比較結果一致割込み要求フラグビット ) 奇数チャネルのアウトプットコンペアレジスタ (OCCP1, OCCP3, OCCP5, OCCP7) のコ ンペア値と 32 ビットフリーランタイマのカウント値の比較結果が一致したことを示し ます。 このビットが "1" のときに , IOE1 ビットに "1" が設定されていると , 比較結果一致割込 み要求が発生します。 IOP1 読出し時 書込み時 0 比較結果が一致しません。 このビットを"0"にクリアします。 1 比較結果が一致しました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 [bit6]:IOP0 ( 偶数チャネル比較結果一致割込み要求フラグビット ) 偶数チャネルのアウトプットコンペアレジスタ (OCCP0, OCCP2, OCCP4, OCCP6) のコ ンペア値と 32 ビットフリーランタイマのカウント値の比較結果が一致したことを示し ます。 このビットが "1" のときに , IOE0 ビットに "1" が設定されていると , 比較結果一致割込 み要求が発生します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 449 第 20 章 32 ビット アウトプット コンペア 20.4 IOP0 MB91665 シリーズ 読出し時 書込み時 0 比較結果が一致しません。 このビットを"0"にクリアします。 1 比較結果が一致しました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 [bit5]:IOE1 ( 奇数チャネル比較結果一致割込み許可ビット ) 奇数チャネルのアウトプットコンペアレジスタ (OCCP1, OCCP3, OCCP5, OCCP7) の値 と 32 ビットフリーランタイマのカウント値との比較結果が一致したとき (IOP1=1) に , 比較結果一致割込み要求を発生させるかどうかを設定します。 書込み値 説明 0 比較結果一致割込み要求の発生を禁止します。 1 比較結果一致割込み要求の発生を許可します。 [bit4]:IOE0 ( 偶数チャネル比較結果一致割込み許可ビット ) 偶数チャネルのアウトプットコンペアレジスタ (OCCP0, OCCP2, OCCP4, OCCP6) の値 と 32 ビットフリーランタイマのカウント値との比較結果が一致したとき (IOP0=1) に , 比較結果一致割込み要求を発生させるかどうかを設定します。 書込み値 説明 0 比較結果一致割込み要求の発生を禁止します。 1 比較結果一致割込み要求の発生を許可します。 [bit3, bit2]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit1]:CST1 ( 奇数チャネル比較動作許可ビット ) 32ビットフリーランタイマのカウント値との奇数チャネルの32ビットアウトプットコ ンペアの比較動作を許可 / 禁止します。 書込み値 説明 0 比較動作を禁止します。 1 比較動作を許可します。 < 注意事項 > 32 ビットフリーランタイマが停止すると , 32 ビットアウトプットコンペアの比較動作も 停止します。 450 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.4 MB91665 シリーズ [bit0]:CST0 ( 偶数チャネル比較動作許可ビット ) 32 ビットフリーランタイマのカウント値と , 偶数チャネルの 32 ビットアウトプットコ ンペアの比較動作を許可 / 禁止します。 書込み値 説明 0 比較動作を禁止します。 1 比較動作を許可します。 < 注意事項 > 32 ビットフリーランタイマが停止すると , 32 ビットアウトプットコンペアの比較動作も 停止します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 451 第 20 章 32 ビット アウトプット コンペア 20.5 MB91665 シリーズ 20.5 割込み 32 ビットフリーランタイマのカウント値が , アウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) に設定した値 ( コンペア値 ) と一致すると , 割込み要求が発生します ( 比較結果一致 割込み要求 ) 。 32 ビットアウトプットコンペアで使用できる割込みについて表 20.5-1 に示します。 表 20.5-1 32 ビットアウトプットコンペアの割込み 割込み要求 比較結果一致 割込み要求 割込み要求フラグ 偶数チャネル : OCSL の IOP0=1 奇数チャネル : OCSL の IOP1=1 割込み要求許可 偶数チャネル : OCSL の IOE0=1 奇数チャネル : OCSL の IOE1=1 割込み要求のクリア 次のビットに "0" を書き込む 偶数チャネル : OCSL の IOP0 ビット 奇数チャネル : OCSL の IOP1 ビット OCSL : コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 452 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.6 MB91665 シリーズ 20.6 動作説明と設定手順例 32 ビットアウトプットコンペアの動作について説明します。また , 動作状態を設定するため の手順例も示します。 ■ 概要 32 ビットアウトプットコンペアを 1 チャネルずつ独立で使用する場合と , 2 チャネルの 32 ビットアウトプットコンペアを一対にして使用する場合があります。 独立で使用する場合の動作 20.6.1 32 ビットアウトプットコンペアを 1 チャネルずつ独立で使用する場合の動作について説明し ます。 ■ 概要 コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) の CMOD ビットを "0" に 設定すると , 32 ビットアウトプットコンペアが 1 チャネルずつ独立で動作します。 32 ビットフリーランタイマのカウント値がアウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のコンペア値と一致すると, チャネルに対応した端子の出力レベルが反転しま す。 < 注意事項 > 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフリーラ ンタイマの値がアウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) の値と比較されるか は, フリーランタイマ選択レジスタ (FRTSEL) の設定によって異なります。詳しくは ,「第 18章 32ビット フリーランタイマ」の 「18.4.1 フリーランタイマ選択レジスタ (FRTSEL)」 を参照してください。 ■ 動作 次のビットに "1" を書き込むと , 32 ビットアウトプットコンペアの動作が許可されま す。 • 偶数チャネルの動作許可:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の CST0 ビット • 奇数チャネルの動作許可:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の CST1 ビット 32 ビットアウトプットコンペアの動作が許可されているときに , 32 ビットフリーラン タイマのカウント値がアウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のコンペア 値と一致すると , 次のビットが "1" に変わります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 453 第 20 章 32 ビット アウトプット コンペア 20.6 MB91665 シリーズ 偶数チャネル:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の IOP0 • ビット 奇数チャネル:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の IOP1 • ビット このとき , 割込み要求の発生が許可されていると比較結果一致割込み要求が発生しま す。 また , OUT0 ∼ OUT7 端子からの出力レベルが反転します。 独立で使用する場合の動作を図 20.6-1 に示します。 図 20.6-1 独立で使用する場合の動作 ch.0 と ch.1 を個別に使用した場合 カウント値 FFFF FFFFH BFFF FFFFH 7FFF FFFFH 3FFF FFFFH 0000 0000 H 時間 リセット OCCP0 BFFFH OCCP1 7FFFH OUT0 端子 OUT1 端子 割込み要求クリア 割込み要求クリア 割込み要求クリア ch.0 での割込み 割込み要求クリア 割込み要求クリア 割込み要求クリア ch.1 での割込み OCCP0:アウトプットコンペアレジスタ 0 (OCCP0) OCCP1:アウトプットコンペアレジスタ 1 (OCCP1) 比較結果一致割込み要求や端子の出力レベルの変化は , 比較結果一致が検出されてか ら発生します。 比較結果一致割込み要求の発生 / 端子の出力レベルの変化を図 20.6-2 に示します。 図 20.6-2 比較結果一致割込み要求の発生 / 端子の出力レベルの変化 周辺クロック (PCLK) フリーランタイマの カウント値 N−1 アウトプットコンペア レジスタ (OCCP0 ∼ OCCP7) N N−1 N N 比較結果一致出力トリガ 出力レベル 454 割込み FUJITSU SEMICONDUCTOR LIMITED 割込み CM71-10158-1 第 20 章 32 ビット アウトプット コンペア 20.6 MB91665 シリーズ < 注意事項 > 32 ビットアウトプットコンペアを 1 チャネルずつ独立で使用する場合は , コンペア制御 レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) の CMOD ビットに必ず "0" を書き込ん でください。 20.6.2 一対にして使用する場合の動作 偶数チャネルと奇数チャネルの32ビットアウトプットコンペアを一対にして使用する場合の 動作について説明します。 ■ 概要 コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) の CMOD ビットを "1" に 設定すると , 2 チャネルの 32 ビットアウトプットコンペアが一対で動作します。 偶数チャネルと奇数チャネルの 32 ビットアウトプットコンペアを一対にして使用する ことにより , 1 回の割込みで 2 チャネル分のコンペア値を更新できます。 一対にして使用できる偶数チャネルと奇数チャネルの組合せは次のとおりです。 • ch.0 と ch.1 • ch.2 と ch.3 • ch.4 と ch.5 • ch.6 と ch.7 ■ 動作 次のビットに "1" を書き込むと , 32 ビットアウトプットコンペアの動作が許可されま す。 • 偶数チャネルの動作許可:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の CST0 ビット • 奇数チャネルの動作許可:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の CST1 ビット 32 ビットアウトプットコンペアの動作が許可されているときに , 32 ビットフリーラン タイマのカウント値がアウトプットコンペアレジスタ (OCCP0 ∼ OCCP7) のコンペア 値と一致すると , 次のビットが "1" に変わります。 • 偶数チャネル:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の IOP0 ビット • 奇数チャネル:コンペア制御レジスタ下位 (OCSL0, OCSL2, OCSL4, OCSL6) の IOP1 ビット このとき , 割込み要求が許可されていると比較結果一致割込み要求が発生します。 また , OUT0 ∼ OUT7 端子からの出力レベルが反転します。出力レベルが反転する端子 は, 32ビットフリーランタイマのカウント値が, どのチャネルのアウトプットコンペア レジスタ (OCCP0 ∼ OCCP7) のコンペア値と一致したかで異なります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 455 第 20 章 32 ビット アウトプット コンペア 20.6 MB91665 シリーズ コンペア値が設定されているチャネルと出力レベルが反転する端子の対応を表 20.6-1 に示します。 表 20.6-1 コンペア値が設定されているチャネルと出力レベルが反転する端子の対応 32 ビットフリーランタイマの 値とコンペア値が一致したレジスタ 出力レベルが反転する端子 アウトプットコンペアレジスタ 0 (OCCP0) OUT0 端子 , OUT1 端子 アウトプットコンペアレジスタ 1 (OCCP1) OUT1 端子 アウトプットコンペアレジスタ 2 (OCCP2) OUT2 端子 , OUT3 端子 アウトプットコンペアレジスタ 3 (OCCP3) OUT3 端子 アウトプットコンペアレジスタ 4 (OCCP4) OUT4 端子 , OUT5 端子 アウトプットコンペアレジスタ 5 (OCCP5) OUT5 端子 アウトプットコンペアレジスタ 6 (OCCP6) OUT6 端子 , OUT7 端子 アウトプットコンペアレジスタ 7 (OCCP7) OUT7 端子 偶数チャネルと奇数チャネルを一対にして使用する場合の動作を図 20.6-3 に示しま す。 図 20.6-3 偶数チャネルと奇数チャネルを一対にして使用する場合の動作 ch.0 と ch.1 を一対にして使用した場合 カウント値 FFFF FFFFH BFFF FFFFH 7FFF FFFFH 3FFF FFFFH 0000 0000 H 時間 リセット OCCP0 BFFFH OCCP1 7FFFH OUT0 端子 ch.0 に対応 OUT1 端子 ch.0 と ch.1 に対応 割込み要求クリア 割込み要求クリア 割込み要求クリア ch.0 での割込み 割込み要求クリア 割込み要求クリア 割込み要求クリア ch.1 での割込み OCCP0:アウトプットコンペアレジスタ 0 (OCCP0) OCCP1:アウトプットコンペアレジスタ 1 (OCCP1) 比較結果一致割込み要求や端子の出力レベルの変化は , 比較結果一致が検出されてか ら発生します。 比較結果一致割込み要求の発生 / 端子の出力レベルの変化については ,「20.6.1 独立で 使用する場合の動作」を参照してください。 456 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 20 章 32 ビット アウトプット コンペア 20.6 < 注意事項 > • 偶数チャネルと奇数チャネルの32ビットアウトプットコンペアを一対にして使用する 場合は , コンペア制御レジスタ上位 (OCSH1, OCSH3, OCSH5, OCSH7) の CMOD ビットに必ず "1" を書き込んでください。 • 2 チャネルある 32 ビットフリーランタイマの内 , どちらのチャネルの 32 ビットフリー ランタイマの値がアウトプットコンペアレジスタ (OCCP0∼OCCP7) の値と比較され るかは , フリーランタイマ選択レジスタ (FRTSEL) の設定によって異なります。詳し くは , 「第 18 章 32 ビット フリーランタイマ」の「18.4.1 フリーランタイマ選択レ ジスタ (FRTSEL)」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 457 第 20 章 32 ビット アウトプット コンペア 20.6 458 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 21 章 16 ビットリロード タイマ 16 ビットリロードタイマの機能と動作について説 明します。 21.1 概要 21.2 構成 21.3 端子 21.4 レジスタ 21.5 割込み 21.6 動作説明と設定手順例 21.7 使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 459 第 21 章 16 ビットリロードタイマ 21.1 MB91665 シリーズ 21.1 概要 16 ビットリロードタイマは , あらかじめ設定した値からカウントダウンするダウンカウンタ です。このタイマは , 内部クロック ( 周辺クロック ) と同期してカウントダウンするインター バルタイマとして使用できるほか , 外部イベントをカウントするイベントカウンタとしても 使用できます。 本製品は , 16 ビットリロードタイマを 3 チャネル内蔵しています。 ■ 概要 • タイマモード:インターバルタイマモードまたはイベントカウンタモードとして使 用できます。 - インターバルタイマモード 内部クロック ( 周辺クロック ) に同期してカウントダウンします。内部クロック ( 周辺クロック ) は , 6 種類 ( 周辺クロック (PCLK) の 2 分周 , 4 分周 , 8 分周 , 16 分周 , 32 分周 , 64 分周 ) から選択します。 - イベントカウンタモード 外部クロックのエッジ ( 立下りエッジ / 立上りエッジ / 両エッジ ) を検出してカ ウントします。 また , ch.0 の出力を ch.1 で , ch.1 の出力を ch.2 でカウントするカスケードモード も利用できます。 • • 動作モード:次の 4 種類から選択できます。 - シングルモード : タイマカウンタ - デュアルモード : PPG (Programmable Pulse Generator) - コンペアモード : PWM (Pulse Width Modulator) - キャプチャモード : PWC (Pulse Width Counter) 入力端子機能:インターバルタイマモード時は , 入力端子の機能をトリガ入力機能 / ゲート入力機能の中から選択できます。 - トリガ入力機能 入力端子から有効エッジ ( 立下りエッジ / 立上りエッジ / 両エッジ ) を検出する と , カウントを開始します。 - ゲート入力機能 入力端子から有効レベルが入力されている間だけカウント動作を続けます。 • 割込み要求 ダウンカウンタがアンダフローしたときに割込み要求 (UF ビット ) を発生できます ( すべてのモード時 )。 再トリガ発生した際にキャプチャ割込み (EF ビット ) を発生できます ( キャプチャ モード時のみ )。 コンペア一致した際にコンペア割込み (EF ビット ) を発生できます ( イベントカウ ンタモードのコンペアモード時のみ )。 460 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.2 MB91665 シリーズ 21.2 構成 16 ビットリロードタイマの構成を示します。 ■ 16 ビットリロードタイマのブロックダイヤグラム 16 ビットリロードタイマのブロックダイヤグラムを図 21.2-1 に示します。 図 21.2-1 16 ビットリロードタイマのブロックダイヤグラム 周 辺 バ ス リード/ライト可能 モード制御 リロードセレクタ リード/ライト 可能 TMRLRA バッファ TMRLRB リードオンリ MOD1 リロード RELD キャプチャモード リード/ライト 可能 MOD0 INTE TMR アンダフロー UF 割込み要求 コンペアモード カウント 比較器 比較結果 EF ワンショット終了 キャプチャ OUTL 周辺クロック (PCLK) カウント制御 カウント許可 トリガ トリガ 出力 FF TMO端子 CNTE TRG ゲート CSL2 CSL1 クロック選択回路 選択 プリスケーラ TMI端子 周辺クロック (PCLK) GATE エッジ 制御 周辺クロック (PCLK) 入力 + 同期化 FF CSL0 ゲート 制御 TRGM1 選択 TRGM0 TMCSR ビット順不同 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 461 第 21 章 16 ビットリロードタイマ 21.2 • MB91665 シリーズ コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) 16 ビットリロードタイマの動作を制御するレジスタです。 • 16ビットタイマリロードレジスタA/B (TMRLRA0∼TMRLRA2/TMRLRB0∼TMRLRB2) リロード値を設定するレジスタです。 • 16 ビットタイマレジスタ (TMR0 ∼ TMR2) ダウンカウンタとして動作します。このレジスタを読み出すとダウンカウンタの値 が読み出せます。 • プリスケーラ インターバルタイマモードを選択した場合 , 周辺クロック (PCLK) を分周します。 • クロック選択回路 カウント用クロックを選択します。 • エッジ制御部 TMI0 ∼ TMI2 端子をトリガ入力端子として使用するときに , 信号の検出エッジを制 御します。 • ゲート制御部 TMI0 ∼ TMI2 端子をゲート入力端子として使用するときに , 端子から入力される信 号レベルを制御します。 • カウント制御部 16 ビットリロードタイマのカウントを制御します。 ■ クロック 16 ビットリロードタイマで使用するクロックを表 21.2-1 に示します。 表 21.2-1 16 ビットリロードタイマで使用するクロック クロック名 動作クロック 内容 周辺クロック (PCLK) 備考 − カウント用クロック 内部クロック ( 周辺クロッ 周辺クロック (PCLK) を分周して ク) 生成 外部クロック 462 TMI0 ∼ TMI2 端子から入力 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.3 MB91665 シリーズ 21.3 端子 16 ビットリロードタイマで使用する端子について説明します。 ■ 概要 16 ビットリロードタイマには次の 2 種類の端子があります。 • TMO0 ∼ TMO2 端子 16 ビットリロードタイマの波形出力端子です。 この端子は兼用端子です。16 ビットリロードタイマの波形出力端子として使用する には「2.4 端子の設定方法」を参照してください。 • TMI0 ∼ TMI2 端子 16 ビットリロードタイマの入力端子です。設定によってカウント用クロック , トリ ガ , ゲートを入力します。 この端子は兼用端子です。16 ビットリロードタイマの入力端子として使用するには 「2.4 端子の設定方法」を参照してください。 ■ 端子とチャネルの対応 チャネルと端子の対応を表 21.3-1 に示します。 表 21.3-1 チャネルと端子の対応 チャネル CM71-10158-1 波形出力端子 入力端子 0 TMO0 TMI0 1 TMO1 TMI1 2 TMO2 TMI2 FUJITSU SEMICONDUCTOR LIMITED 463 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ 21.4 レジスタ 16 ビットリロードタイマで使用するレジスタの構成と機能について説明します。 ■ 16 ビットリロードタイマのレジスタ一覧 16 ビットリロードタイマのレジスタ一覧を表 21.4-1 に示します。 表 21.4-1 16 ビットリロードタイマのレジスタ一覧 チャネル 0 1 2 464 レジスタ略称 TMCSR0 コントロールステータスレジスタ 0 レジスタ名 参照先 21.4.1 TMRLRA0 16 ビットタイマリロードレジスタ A0 21.4.2 TMRLRB0 16 ビットタイマリロードレジスタ B0 21.4.2 TMR0 16 ビットタイマレジスタ 0 21.4.3 TMCSR1 コントロールステータスレジスタ 1 21.4.1 TMRLRA1 16 ビットタイマリロードレジスタ A1 21.4.2 TMRLRB1 16 ビットタイマリロードレジスタ B1 21.4.2 TMR1 16 ビットタイマレジスタ 1 21.4.3 TMCSR2 コントロールステータスレジスタ 2 21.4.1 TMRLRA2 16 ビットタイマリロードレジスタ A2 21.4.2 TMRLRB2 16 ビットタイマリロードレジスタ B2 21.4.2 TMR2 16 ビットタイマレジスタ 2 21.4.3 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) 21.4.1 16 ビットリロードタイマの動作を制御するレジスタです。 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) のビット構成を図 21.4-1 に示 します。 図 21.4-1 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) のビット構成 bit 属性 15 14 13 12 11 10 9 8 MOD1 MOD0 TRGM1 TRGM0 CSL2 CSL1 CSL0 GATE 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 EF 未定義 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 属性 R/W 初期値 0 R/W:リード / ライト可能 −:未定義 X:不定 [bit15, bit14]:MOD1, MOD0 ( モード選択ビット ) タイマの動作モードを以下のように選択します。 MOD1 0 1 MOD0 動作モード 0 シングルモード ( タイマカウンタ ) 1 デュアルモード (PPG) 0 コンペアモード (PWM) 1 キャプチャモード (PWC) 各モードの詳細動作は , 「21.6 動作説明と設定手順例」を参照してください。 [bit13, bit12]:TRGM1, TRGM0 ( 入力端子動作選択ビット ) 16 ビットリロードタイマの TMI0 ∼ TMI2 端子の動作を選択します。16 ビットリロー ドタイマをインターバルタイマモードで使用している場合と , イベントカウンタモー ドで使用している場合でこのビットの意味が異なります。 • インターバルタイマモードの場合 (CSL2 ∼ CSL0=000 ∼ 101) - TMI0 ∼ TMI2 端子にトリガ入力機能を選択 (GATE =0) 有効エッジを選択します。 TMI0 ∼ TMI2 端子から入力される信号に , このビットで設定したエッジが検出 されると , ダウンカウンタがカウントダウンを開始します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 465 第 21 章 16 ビットリロードタイマ 21.4 - MB91665 シリーズ TMI0 ∼ TMI2 端子にゲート機能を選択 (GATE =1) 有効レベルを選択します。 TMI0 ∼ TMI2 端子からこのビットで設定したレベルの信号が入力されている間 のみダウンカウンタがカウントダウンします。 TRGM1 TRGM0 トリガ入力選択時 * (GATE =0) ゲート機能選択時 (GATE =1) 0 0 エッジ検出禁止 "L" レベル 0 1 立上りエッジ "H" レベル 1 0 立下りエッジ "L" レベル 1 1 両エッジ "H" レベル * : TRG ビットに "1" を書き込んだ場合は , このビットの設定にかかわらず , ダウンカ ウンタがカウントダウンを開始します。 • イベントカウンタモードの場合 (CSL2 ∼ CSL0=110, 111) 有効エッジを選択します。 TMI0 ∼ TMI2 端子から入力される信号に , このビットで設定したエッジが検出され ると , ダウンカウンタがカウントダウンします。 TRGM1 TRGM0 説明 0 0 設定禁止 0 1 立上りエッジ 1 0 立下りエッジ 1 1 両エッジ < 注意事項 > CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き換え てください。 ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値にかか わらず書き換えられます。 466 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ [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 イ ベ ン ト カ ウ カスケードモード * ンタモード 外部クロック * : カスケードモードを選択した場合の動作については , 「21.6.3 カスケードモード時 の動作」を参照してください。 < 注意事項 > • CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き 換えてください。 ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値に かかわらず書き換えられます。 • 2チャネルの16ビットリロードタイマをカスケード接続して使用する場合は, このビッ トの設定を次のようにしてください。 - 小さい番号のチャネル:インターバルタイマモードまたは外部クロックを選択 - 大きい番号のチャネル:カスケードモードを設定 • このビットでイベントカウンタモードを設定した場合は , GATE ビットの設定は無視 されます。 [bit8]:GATE ( ゲート入力許可ビット ) タイマモードをインターバルタイマモードに設定したときに TMI0 ∼ TMI2 端子に割り 当てる機能を選択します。 • トリガ入力機能:TMI0∼TMI2端子から有効エッジが入力されると, カウントダウン を開始します。 • ゲート機能:TMI0∼TMI2端子から有効レベルが入力されている間だけ, カウントダ ウンします。 書込み値 CM71-10158-1 説明 0 トリガ入力機能 1 ゲート機能 FUJITSU SEMICONDUCTOR LIMITED 467 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ < 注意事項 > • CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き 換えてください。 ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値に かかわらず書き換えられます。 • CSL2 ∼ CSL0 ビットでイベントカウンタモードを選択 (CSL2 ∼ CSL0=110/111) した 場合は , このビットの設定は無視されます。 [bit 7]:EF( 拡張割込みフラグ ) イベントカウントモードのコンペアモード (PWM) 時にコンペア一致割込み , または , キャプチャモード (PWC) 時にキャプチャ入力割込みが発生したことを示すフラグで す。 セット要因 イベントカウンタモードのコン TMR = TMRLRB からのカウント ペアモード (PWM) 時 * ダウン キャプチャモード (PWC) 時 クリア要因 キャプチャ入力 ( 再トリガ ) 本ビットへの "0" 書込み , または , リセット * インターバルタイマモード時にコンペア一致割込みは発生しません。 このビットへの "1" 書込みは無効です。 コンペアモードでは , カウントクロックに同期して , セット・クリアを行います。 リードモディファイライト系命令における読出し値は , 常に "1" となります。 [bit6]:未定義ビット 468 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ [bit5]:OUTL ( 出力極性指定ビット ) 16 ビットリロードタイマ起動時に , TMO0 ∼ TMO2 端子から出力する信号レベルを指 定します。 書込み値 説明 0 通常極性 ("L" レベル ) 1 反転極性 ("H" レベル ) < 注意事項 > CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き換え てください。 ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値にかか わらず書き換えられます。 [bit4]:RELD ( リロード動作許可ビット ) 16 ビットリロードタイマの動作モードを次のいずれかから選択します。 • ワンショットモード ダウンカウンタがアンダフローすると , 次に起動トリガが入力されるまでカウント 動作を停止するモードです。 • リロードモード ダウンカウンタがアンダフローすると , 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をダウンカウンタにリロードしてカウント動作を続 けるモードです。 書込み値 説明 0 ワンショットモード * 1 リロードモード * ただし, デュアルワンショット機能ではTMRLRAのアンダフローと同時にTMRLRB のリロードを行い , カウントを継続します。その後 , TMRLRB のアンダフローと同 時にカウント動作を停止します。 < 注意事項 > CNTE ビットでダウンカウンタの動作を停止 (CNTE=0) してから , このビットを書き換え てください。 ただし , このビットと CNTE ビットを同時に書き換える場合は , CNTE ビットの値にかか わらず書き換えられます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 469 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ [bit3]:INTE ( 割込み要求許可ビット ) ダウンカウンタがアンダフローしたとき (UFビット=1) に, アンダフロー割込み要求を 発生させるかどうかを設定します。 書込み値 説明 0 アンダフロー (UF) 割込み要求 , 拡張 (EF) 割込み要求の 発生を禁止します。 1 アンダフロー (UF) 割込み要求 , 拡張 (EF) 割込み要求の 発生を許可します。 [bit2]:UF ( アンダフロー割込み要求フラグビット ) ダウンカウンタがアンダフローしたことを示します。 このビットが "1" のときに INTE ビットに "1" が設定されていると , アンダフロー割込 み要求が発生します。 UF 読出し時 書込み時 0 ダウンカウンタはアンダフローしてい このビットを"0"にクリアします。 ません。 1 ダウンカウンタがアンダフローしまし 無視されます。 た。 [bit1]:CNTE ( カウント動作許可ビット ) ダウンカウンタの動作を許可 / 停止します。 書込み値 説明 0 カウント動作を停止します。 1 カウント動作を許可します ( 起動トリガ待ち ) 。 < 注意事項 > ダウンカウンタの動作中に , このビットに "0" を書き込むとダウンカウンタは停止します。 470 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ [bit0]:TRG ( ソフトウェアトリガビット ) 16 ビットリロードタイマをソフトウェアで起動します。このビットに "1" を書き込む と , ダウンカウンタは 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) の値をロードして , カウント動作を開始します。 TRG 書込み時 0 無視されます。 1 16 ビットリロードタイマを起動します。 読出し時 "0" が読み出されます。 < 注意事項 > • • CM71-10158-1 CNTE ビットが "0" のときにこのビットに "1" を書き込んでも , ダウンカウンタは動作 しません。 16ビットリロードタイマの動作が許可 (CNTE=1) されているときに, このビットに"1" を書き込むと, TRGM1, TRGM0ビットの設定にかかわらずダウンカウンタが動作を開 始します。 FUJITSU SEMICONDUCTOR LIMITED 471 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ 16 ビットタイマリロードレジスタ A/B (TMRLRA0 ∼ TMRLRA2/ TMRLRB0 ∼ TMRLRB2) 21.4.2 ダウンカウンタの初期値を設定するレジスタです。 リロードモード時はアンダフローが発生すると , このレジスタの値がダウンカウンタにリ ロードされます。 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) , 16 ビットタイマリロー ドレジスタ B (TMRLRB0 ∼ TMRLRB2) のビット構成を図 21.4-2 に示します。 図 21.4-2 16 ビットタイマリロードレジスタ A (TMRLRA0 ∼ TMRLRA2) , 16 ビットタイマリロードレジスタ B (TMRLRB0 ∼ TMRLRB2) のビット構成 bit 15 0 D15 ∼ D0 R/W 属性 X 初期値 R/W:リード / ライト可能 X:不定 TMRLRB0,1,2 は TMCSR レジスタの bit15, bit14:MOD1, MOD0 の設定により以下のよ うに使用されます。 モード MOD1 MOD1 シングルモード ( タイマカウンタ ) 0 0 リロードカウンタ値 使用しません デュアルモード (PPG) 0 1 L 幅 (OUTL=0 時 ) カウンタ値 H 幅 (OUTL=0 時 ) カウンタ値 コンペアモード (PWM)*2 1 0 周期カウンタ値 *1 H 幅 (OUTL=0 時 ) カウンタ値 *1 キャプチャモード (PWC) 1 1 リロードカウンタ値 再トリガ入力時の TMR 値を格納 TMRLRA の機能 TMRLRB の機能 *1 TMRLRA > TMRLRB 条件のとき。 472 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ *2 コンペアモード時のH幅・L幅はTMRLRA, TMRLRBの値によって, 以下となります。 - TMRLRB < TMRLRA のとき (OUTL=0) TMRLRA+1 の周期 , TMRLRB の "H" 幅 TMRLRA+1 TMRLRB (OUTL=1) TMRLRA+1 の周期 , TMRLRB の "L" 幅 TMRLRA+1 - TMRLRB = 0 TMRLRB のとき (OUTL=0)"L" 出力固定 (OUTL=1)"H" 出力固定 - TMRLRB > TMRLRA のとき (OUTL=0)"H" 出力固定 (OUTL=1)"L" 出力固定 - TMRLRB = TMRLRA のとき (OUTL=0) 1サイクルの"L"出力, TMRLRB の"H"幅 (OUTL=1) 1サイクルの"H"出力, TMRLRB の"L"幅 このレジスタへの書込み / 読出しは , 必ず 16 ビットデータ転送命令で行ってください。 カウンタ値として使用の際は , 0000H を書込んだときは 1 カウント , FFFFH を書込んだ ときは 65,536 カウントするとアンダフローを発生します。 < 注意事項 > このレジスタは必ずハーフワードでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 473 第 21 章 16 ビットリロードタイマ 21.4 MB91665 シリーズ 16 ビットタイマレジスタ (TMR0 ∼ TMR2) 21.4.3 このレジスタを読み出すとダウンカウンタの値が読み出せます。 16 ビットタイマレジスタ (TMR0 ∼ TMR2) のビット構成を図 21.4-3 に示します。 図 21.4-3 16 ビットタイマレジスタ (TMR0 ∼ TMR2) のビット構成 bit 15 0 D15 ∼ D0 属性 R 初期値 X R:リードオンリ X:不定 < 注意事項 > このレジスタは必ずハーフワードで読み出してください。 474 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.5 MB91665 シリーズ 21.5 割込み ダウンカウンタがアンダフローすると , アンダフロー割込み要求が発生します。 ■ 概要 16 ビットリロードタイマで使用できる割込みについて表 21.5-1 に示します。 表 21.5-1 16 ビットリロードタイマの割込み 割込み要求 割込み要求フラグ 割込み要求許可 割込み要求のクリア アンダフロー割 TMCSR の UF=1 込み要求 TMCSR の INTE=1 TMCSR の UF ビットに "0" を書き込む 拡張割込み要求 TMCSR の EF=1 TMCSR の INTE=1 TMCSR の EF ビットに "0" を書き込む TMCSR : コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 • • CM71-10158-1 - 割込み許可と同時に割込み要求をクリアする。 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED 475 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 21.6 動作説明と設定手順例 16 ビットリロードタイマの動作について説明します。また , 各動作状態を設定するための手 順例も示します。 ■ 概要 16 ビットリロードタイマは , あらかじめ設定した値からカウントダウンするダウンカ ウンタです。コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットでタイマモードを次の中から選択できます。 • インターバルタイマモード (CSL2 ∼ CSL0=000 ∼ 101) 周辺クロック (PCLK) を分周したカウント用クロックで動作します。 • イベントカウンタモード (CSL2 ∼ CSL0=110, 111) TMI0 ∼ TMI2 端子から有効エッジが入力されるたびにカウントするモードです。 また , ch.0 の出力を ch.1 で ch.1 の出力を ch.2 でカウントするカスケードモードも使 用できます。 ■ TMO0 ∼ TMO2 端子から出力される信号レベルの設定方法 TMO0 ∼ TMO2 端子から出力される信号レベルはコントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の OUTL ビットの設定によって異なります。 476 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ OUTL ビットと出力波形の対応を図 21.6-1 に示します。 図 21.6-1 コンペアモード (PWM) 以外の TMO 出力 OUTL 初期値 トリガ モード シングルモード (タイマカウンタ) ワンショット時 0 シングルモード (タイマカウンタ) リロード時 0 デュアルモード (PPG) ワンショット時 0 デュアルモード (PPG) リロード時 0 カウント中 UF A UF UF トリガ待ち状態 1 A A A B A B A 1 トリガ待ち状態 1 A 1 ※ キャプチャモード時にタイマ出力許可した場合 , タイマ出力波形はシングルモード と同様です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 477 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 下図の CMP( 比較一致 ) は , TMRLRB = TMR からダウンカウントが発生したタイミン グを表します。 図 21.6-2 コンペアモード (PWM) の TMO 出力 モード OUTL 初期値 トリガ カウント中 コンペアモード(PWM) ワンショット時 (TMRLRB < TMRLRA) 0 コンペアモード(PWM) ワンショット時 (TMRLRB = TMRLRA) 0 コンペアモード(PWM) リロード時 (TMRLRB < TMRLRA) 0 コンペアモード(PWM) リロード時 (TMRLRB = TMRLRA) 0 CMP カウント中 UF A CMP トリガ待ち状態 1 A 1カウント トリガ待ち状態 1 A 1 A モード 1カウント 1 OUTL 初期値 トリガ カウント中 Hクリップ コンペアモード(PWM) ワンショット時 (TMRLRB > TMRLRA) 0 コンペアモード(PWM) ワンショット時 (TMRLRB = 0) 0 コンペアモード(PWM) リロード時 (TMRLRB > TMRLRA) 0 コンペアモード(PWM) リロード時 (TMRLRB = 0) 0 UF A カウント中 トリガ待ち状態 1 Lクリップ A トリガ待ち状態 1 Hクリップ 478 1カウント A 1 Lクリップ A 1 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 21.6.1 インターバルタイマモード時の動作 16 ビットリロードタイマを内部クロック ( 周辺クロック ) に同期してカウントするインター バルタイマモードで使用する場合の動作について説明します。 カウント用クロックは , 周辺クロック (PCLK) を分周して生成されます。 ■ 設定 16 ビットリロードタイマをインターバルタイマモードで使用する場合に必要な設定に ついて説明します。 ● インターバルタイマモードの設定 16 ビットリロードタイマをインターバルタイマモードで使用する場合は , コントロー ルステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットを次のいずれか に設定し , 周辺クロック (PCLK) の分周比を選択します。 CSL2 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) ● カウンタの動作選択 カウンタのアンダフローが発生したときの動作をモード選択ビット (TMCSR レジスタ の bit15, bit14:MOD1, MOD0) と , リ ロ ー ド 動 作 許 可 ビ ッ ト (TMCSR レ ジ ス タ の bit4:RELD) で選択します。 各モードでの動作詳細は動作の項を参照してください。 MOD1 MOD0 0 モード 0 1 1 アンダフロー発生時の動作 0( ワンショット ) カウントを FFFFH で停止 シングルモード ( タイマカウンタ ) 1( リロード ) TMRLRA をリロード 0 1 RELD デュアルモード (PPG) コンペアモード (PWM) 0( ワンショット ) ① TMRLRB をリロード ② カウントを FFFFH で停止 * 1( リロード ) TMRLRA と TMRLRB を交互に リロード 0( ワンショット ) カウントを FFFFH で停止 1( リロード ) TMRLRA をリロード キャプチャモード 0( ワンショット ) カウントを FFFFH で停止 (PWC) 1( リロード ) TMRLRA をリロード * 詳細は , 「● デュアルモード (PPG) ワンショット動作」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 479 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 本タイマで実現できる機能の代表的なタイマ出力波形を以下に示します。 図 21.6-3 各モードの TMO 出力波形 (OUTL=0 時 ) シングルモード(タイマカウンタ) ワンショット TMO出力 起動トリガ シングルモード(タイマカウンタ) リロード TMO出力 アンダフロー コンペア一致 TMRLRAからダウンカウント (パルス幅 TMRLRA+1) TMRLRBからダウンカウント (パルス幅 TMRLRB+1) デュアルモード(PPG) ワンショット 割込み発生可能(UFビットセット) TMO出力 パルス幅の計算方法 パルス幅 =T×(L+1) T カウント用クロックの周期 デュアルモード(PPG) リロード L 16ビットタイマリロードレジスタA/B (TMRLRA,TMRLRB) TMO出力 コンペアモード(PWM) リロード TMO出力 TMRLRA > TMRLRB 時 PWC モードはキャプチャ入力・カウンタ値・キャプチャレジスタの値を示します。 図 21.6-4 キャプチャモード (PWC) 時の動作 キャプチャモード(PWC) リロード 起動トリガ キャプチャ入力 (TMI有効エッジ) TMI入力 アンダフロー カウンタ値 TMRLRA… CNT_a リロード TMRLRA TMRLRBレジスタ TMRLRA… CNT_b …… リロード 0 CNT_a TMRLRAからダウンカウント リロード TMRLRA … 割込み発生可能(UFビットセット) 割込み発生可能(EFビットセット) CNT_b ※立上りエッジを有効エッジに指定した時 480 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● TMI0 ∼ TMI2 端子機能の設定 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の TRGM1, TRGM0 ビットと GATE ビットで , TMI0 ∼ TMI2 端子の機能を次の中から選択できます。 各ビットの組み合わせを表 21.6-1 に示します。 表 21.6-1 各ビットの組み合わせ TRGM1, TRGM0 GATE 端子の機能 00 0 TMI0 ∼ TMI2 端子は機能しません。 01 0 TMI0 ∼ TMI2 端子はトリガ入力機能として動作します。 有効エッジは立上りエッジです。 10 0 TMI0 ∼ TMI2 端子はトリガ入力機能として動作します。 有効エッジは立下りエッジです。 11 0 TMI0 ∼ TMI2 端子はトリガ入力機能として動作します。 有効エッジは両エッジです。 00/10 1 TMI0 ∼ TMI2 端子はゲート入力機能として動作します。 有効レベルは "L" レベルです。 01/11 1 TMI0 ∼ TMI2 端子はゲート入力機能として動作します。 有効レベルは "H" レベルです。 ■ 起動 TMCSR レジスタの bit1:CNTE ビットに "1" を書き込むとカウンタは起動トリガ待ち状 態になります。 • TMI 入力がトリガ入力機能時 起動トリガ待ち状態中に TMCSR レジスタの bit0:TRG ビットへの "1" 書込み , また は TMI 入力による外部トリガが入力されると , プリスケーラのクリアが発生し , タ イマはリロードレジスタ TMRLRA から値をロードしてダウンカウント動作を行い ます。 TMI 入力は , 2 × T (T は周辺クロック (PCLK) 周期 ) 以上のパルスを入力してくだ さい。 タイマの起動について , 下図に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 481 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-5 タイマの起動 ( トリガ入力機能・立上りエッジトリガ選択時 ) 周辺クロック(PCLK) CNTE(レジスタ) TMI端子 TMI端子の 有効エッジ プリスケーラクリア プリスケーラクロック データロード カウンタ値 • TMRLRA -1 -1 -1 TMI 入力がゲート入力機能時 起動トリガ待ち状態中に TMCSR レジスタの bit0:TRG ビットへ "1" 書込みを行うと , プリスケーラのクリアが発生し , タイマはリロードレジスタ TMRLRA から値をロー ドし , 有効入力極性待ち状態になります。有効入力極性待ち状態で TMI 入力から有 効な極性のゲート入力があると , タイマはダウンカウント動作を行います。 TMI 入力は , 2 × T (T は周辺クロック (PCLK) 周期 ) 以上のパルスを入力してくだ さい。 図 21.6-6 タイマの起動 ( ゲート入力機能時 ) 周辺クロック(PCLK) CNTE(レジスタ) TRG (レジスタ) プリスケーラクリア プリスケーラクロック データロード TMI端子 カウンタ値 482 TMRLRA FUJITSU SEMICONDUCTOR LIMITED -1 -1 CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ■ 動作 ● 再トリガ タイマのカウント中にトリガが発生した場合のことを再トリガと呼びます。その際 , 以 下の動作を行います。 1. タイマ出力 (TMO) 許可のとき , TMO 出力を初期化 2. リロードレジスタ TMRLRA の値をカウンタにロード 3. プリスケーラのクリア 4. カウント継続 • TMI 入力がトリガ入力機能時 図 21.6-7 再トリガ時の動作 (TMI はトリガ入力・立上りエッジトリガ時・ワンショット出力 ) カウントクロック TMI端子 TTRG端子の 有効エッジ 再トリガ TRG(レジスタ) トリガ CNTE(レジスタ) プリスケーラ クリア カウント値 -1 TMRLRA -1 TMRLRA -1 -1 -1 TMO端子 (OUTL=0の時) • TMI 入力がゲート入力機能時 図 21.6-8 再トリガ時の動作 (TMI はゲート入力・H レベル時カウント・ワンショット出力 ) カウントクロック TMI端子 CNTE(レジスタ) プリスケーラ クリア カウント値 TRG(レジスタ) TMRLRA -1 -1 -1 TMRLRA -1 -1 -1 再トリガ TMO端子 (OUTL=0の時) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 483 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ キャプチャモード時のみ , 再トリガ発生によりカウント中の値を TMRLRB に転送し , TMCSR レジスタの EF ビットをセットします。 ● アンダフロー / リロード タイマが 0000H からダウンカウントする時をアンダフローとしています。アンダフ ローが発生すると , TMCSR レジスタの bit2:UF ビットがセットされます。 タイマは " リロードレジスタの設定値+ 1" カウントでアンダフローを発生します。 ● 割込み要求発生 TMCSR レジスタの bit3:INTE ビットが "1" のときに , bit2:UF ビット /bit7:EF ビット がセットされると割込み要求が発生します。 インターバルタイマモードでは , 以下の条件のときに UF ビット /EF ビットがセッ トされます。 UF ビットがセット:カウンタのアンダフローが発生したとき EF ビットがセット:キャプチャモード (PWC) 時にキャプチャ入力が発生したと き 割込み要求発生例を以下に示します。 図 21.6-9 UF 割込み要求出力動作 (TMCSR レジスタの bit4:RELD=1・bit3:INTE=1) カウントクロック カウンタ値 0001H 0000H TMRLRA -1 -1 -1 アンダフロー UFビット 割込み要求 ● レジスタ書込みとタイマ動作の同時動作 ユーザの操作によるレジスタ書込みとタイマ動作が同時に発生したときの実行動 作について下表に示します。 ユーザの操作 タイマ動作 実行する動作 UF ビットへの UF ビットのセット "0" 書込みによるクリア UF ビットのセット ("0" 書込みは無効となる ) EF ビットへの EF ビットのセット "0" 書込みによるクリア EF ビットのセット ("0" 書込みは無効となる ) リロードレジスタへの リ ト リ ガ に よ る タ イ マ の 旧データのリロード 書き込み ロード ( 書換えた値は次の リロード時にリロード ) 以下 , 各設定の詳細動作について説明します。 484 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● シングルモード ( タイマカウンタ ) ワンショット動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=00, bit4:RELD=0 のとき , タイマはアンダ フローの発生により FFFFH で停止するシングルモード ( タイマカウンタ ) ワンショッ ト動作を行います。 シングルモード ( タイマカウンタ ) ワンショット設定時にアンダフローが発生したとき は , 以下の動作を行います。 - TMCSR レジスタの UF ビットをセット - 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 - FFFFH でカウント停止 - タイマ出力許可のとき , TMO 出力を初期化 - タイマはトリガ待ち状態 シングルモード ( タイマカウンタ ) ワンショット動作では TMRLRA はリロード時のカ ウンタの初期値になります。TMRLRB は使用しません。 図 21.6-10 アンダフロー動作詳細 ( トリガ入力・立上りエッジトリガ選択時 ) カウントクロック TMI端子 TMI端子の 有効エッジ カウンタ値 0001H 0000H FFFFH TMRLRA -1 -1 アンダフロー UFビット TMO端子 (OUTL=0の時) リロード 起動トリガ待ち カウント動作 図 21.6-11 シングルモード ( タイマカウンタ ) ワンショット動作 (GATE=0: トリガ入力・立上りエッジトリガ選択時 ) アンダフロー TMO端子 (OUTL=0の時) CNTE(レジスタ) TMI端子 TMI端子の 有効エッジ 起動トリガ待ち カウント動作 TMRLRA+1 カウント CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 485 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-12 シングルモード ( タイマカウンタ ) ワンショット動作 (GATE=1: ゲート入力 , TRGM:H 入力期間カウント ) アンダフロー TMO端子 (OUTL=0の時) CNTE(レジスタ) TMI端子 TRG(レジスタ) 起動トリガ待ち 有効ゲート入力待ち カウント動作 TMRLRB+1 カウント TMRLRB+1 カウント ● シングルモード ( タイマカウンタ ) リロード動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=00, bit4:RELD=1 のとき , シングルモード ( タイマカウンタ ) リロード動作を行います。 シングルモード ( タイマカウンタ ) リロード動作は , トリガ入力により TMRLRA から 値をタイマへロードして , ダウンカウント動作を始めます。アンダフローが発生する と , 再び TMRLRA から値をリロードしてダウンカウント動作を継続します。TMRLRA の値はタイマがリロードする時間を表します。TMRLRB レジスタは使用しません。 シングルモード ( タイマカウンタ ) リロード設定時に , アンダフローが発生したときは 以下の動作を行います。 486 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRA レジスタをカウンタにロード • タイマ出力許可のとき , TMO 出力を反転 • ダウンカウント継続 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-13 シングルモード ( タイマカウンタ ) リロード動作 (GATE=0:トリガ入力 ) タイマがリロード したレジスタ TMRLRA TMRLRA TMRLRA TMRLRA+1 カウント TMRLRA+1 カウント TMRLRA TMRLRA TMRLRA TMRLRA アンダフロー UFビット ··· TMO端子 ··· TMRLRA+1 カウント ··· TMRLRA+1 カウント ··· TMRLRA+1 カウント ··· TMRLRA+1 カウント ··· TMRLRA+1 カウント (OUTL=0の時) CNTE(レジスタ) データロード TRG(レジスタ) 起動トリガ待ち カウント動作 図 21.6-14 シングルモード ( タイマカウンタ ) リロード動作 (GATE=1: ゲート入力 , TRGM:H 入力期間カウント ) タイマがロード したレジスタ TMRLRA TMRLRA TMRLRA TMRLRA TMRLRA TMRLRA アンダフロー UFビット TMO端子 ··· TMRLRA+1 カウント TMRLRA+1 カウント ··· ··· TMRLRA+1 カウント TMRLRA+1 カウント ··· ··· TMRLRA+1 カウント TMRLRA+1 カウント (OUTL=0の時) TMI端子 CNTE(レジスタ) データロード TRG(レジスタ) 起動トリガ待ち 有効ゲート入力待ち カウント動作 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 487 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● デュアルモード (PPG) ワンショット動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=01, bit4:RELD=0 のとき , タイマはデュア ルモード (PPG) ワンショット動作を行います。 デュアルモード (PPG) ワンショット動作では , TMRLRA → TMRLRB の順に 1 回ずつ 値をカウンタへロードして , それぞれダウンカウントを行い , 2 回目のアンダフローに よりカウントを停止します。 bit6:OUTL=0 のとき , TMRLRA の値はタイマの起動 (TMO 出力は "L" レベル ) から TMO 出力が H へトグルするまでの時間 , TMRLRB の値は TMO 出力の "H" 幅の時間を示し ます。 下図のようなパルスを生成します (PPG のような動作を行います ) 。 H幅=TMRLRB トリガ TMO端子 Delay = TMRLRA 1 回目のアンダフロー (UF-A) が発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRB をカウンタにロード • TMO 出力を反転 • TMRLRB からダウンカウント開始 2 回目のアンダフロー (UF-B) が発生したときは以下の動作を行います。 488 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • FFFFH でカウント停止 • TMO 出力を初期化 • タイマは起動トリガ待ち状態へ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-15 デュアルモード (PPG) ワンショット動作 ( トリガ入力・立上りエッジトリガ選択時 ) カウントクロック ··· ··· アンダフロー ··· UF-A UFビット ··· UF-B ··· UF-A ··· CNTE(レジスタ) TMI端子 TMI端子の 有効エッジ TMO端子 (OUTL=0の時) 起動トリガ待ち タイマがリロード したレジスタ カウンタ値 TMRLRA + 1 カウント TMRLRB + 1 カウント TMRLRA A:TMRLRA B:TMRLRB A -1 · · · 起動トリガ待ち TMRLRB 0 B -1 -1 -1 -1 · · · 0 FFFFH TMRLRA + 1 カウント TMRLRB + 1 カウント TMRLRA TMRLRB A -1 · · · 0 B -1 -1 図 21.6-16 デュアルモード (PPG) ワンショット動作 ( ゲート入力 ) カウントクロック ··· ··· ··· アンダフロー UF-A UFビット UF-B ··· UF-A ··· CNTE(レジスタ) TRG(レジスタ) TMI端子 TMO端子 (OUTL=1) 起動トリガ待ち タイマがリロード したレジスタ カウンタ値 CM71-10158-1 TMRLRA + 1 カウント TMRLRA A:TMRLRA B:TMRLRB A -1 · · · TMRLRB + 1 カウント 起動トリガ待ち TMRLRB 0 B -1 -1 -1 -1 · · · 0 TMRLRA + 1 カウント TMRLRA FFFFH FUJITSU SEMICONDUCTOR LIMITED A -1 · · · TMRLRB + 1 カウント TMRLRB 0 B -1 489 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● デュアルモード (PPG) リロード動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=01, bit4: RELD=1 のとき , タイマはデュア ルモード (PPG) リロード動作を行います。 デュアルモード (PPG) リロード動作では , TMRLRA をカウンタへロードして , ダウン カウントを行い , アンダフローが発生すると , TMRLRB をカウンタへロードして , ダウ ンカウントを行いアンダフローが発生すると , TMRLRA をカウンタへロードしてダウ ンカウント・・・のように TMRLRA と TMRLRB を交互にロードしカウントを行う機 能です。 bit5:OUTL=0 のとき , TMRLRA の値はタイマの起動 (TMO 出力は L レベル ) から TMO 出力が "H" へトグルするまでの時間 , TMRLRB の値は TMO 出力の "H" 幅の時間を示 します。 TMRLRA から値をロードした後のダウンカウントでアンダフロー (UF-A) が発生した ときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRB をカウンタにロード • TMO 出力を反転 • TMRLRB からダウンカウント開始 TMRLRB から値をロードした後のダウンカウントでアンダフロー (UF-B) が発生した ときは以下の動作を行います。 490 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRA をカウンタにロード • TMO 出力を反転 • TMRLRA からダウンカウント開始 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-17 デュアルモード (PPG) リロード動作 (GATE=0: トリガ入力 ) タイマがリロード したレジスタ A:TMRLRA B:TMRLRB A B アンダフロー UF-A UFビット ··· A B A UF-B A B UF-B UF-A ··· B UF-B UF-A ··· A ··· ··· ··· UF-A ··· TMO端子 (OUTL=0の時) CNTE(レジスタ) データロード TRG(レジスタ) 起動トリガ待ち TMRLRAからカウント TMRLRBからカウント 図 21.6-18 デュアルモード (PPG) リロード動作 (GATE=1: ゲート入力 , "H" 入力期間カウント ) タイマがリロード したレジスタ アンダフロー UFビット A:TMRLRA B:TMRLRB A B A B A B UF-B UF-A ··· UF-B UF-A ··· A UF-A ··· ··· TMO端子 (OUTL=0の時) TMI端子 CNTE(レジスタ) データロード TRG(レジスタ) 起動トリガ待ち 有効ゲート入力待ち TMRLRAからカウント TMRLRBからカウント CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 491 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● コンペアモード (PWM) ワンショット動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=10, bit4:RELD=0 のとき , ダウンカウント ごとにカウンタ値 (TMR) と TMRLRB レジスタの値を比較するコンペアモード (PWM) ワンショット動作を行います。トリガを受け付け後 , TMRLRA レジスタの値のロード を行い , ダウンカウントを始めます。比較一致 (TMR = TMRLRB) からダウンカウント すると , TMO 出力を反転させます。アンダフローが発生すると , カウント動作を停止・ TMO 出力を初期化し , 起動トリガ待ち状態になります。 TMRLRA の値はタイマの起動から停止するまでの時間 , TMRLRB の値は , TMO 出力の H 幅が出力され始めるカウンタ値を示します。OUTL=0 のとき , TMR < TMRLRB のと きに TMO 出力は "H" レベルとなります。 PWM として使用できます。 トリガ 入力 TMRLRB = H幅 TMO端子 TMRLRA = 周期 ダウンカウント開始時から TMR = TMRLRB となるまで (TMR ≧ TMRLRB のとき ) は 以下の動作を行います。 • タイマはカウント継続 TMR = TMRLRB からダウンカウントが発生したときは以下の動作を行います。 • タイマはカウント継続 ( インターバルタイマモードでのコンペア動作時は , TMCSR レジスタの bit7:EF ビッ トはセットされません。) アンダフローが発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • タイマは FFFFH で停止 • タイマは起動トリガ待ち状態 コンペア機能の動作は TMRLRA と TMRLRB の設定関係により変わります。 492 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ • TMRLRB < TMRLRA を設定 上記レジスタ関係のとき , タイマへのロードを行ってから TMR = TMRLRB になる まで , TMO 出力は "L" レベルとなります。比較一致 (TMR = TMRLRB) からダウン カウントすると , TMO 出力を反転させて , アンダフローが発生するまで "H" レベル となります。アンダフローが発生すると , TMO 出力は初期化されます。アンダフ ローによりタイマはカウント動作を停止して起動トリガ待ち状態になります (OUTL=0 のとき )。 図 21.6-19 コンペアモード (PWM) ワンショット動作 (TMRLRB < TMRLRA) カウントクロック アンダフロー UFビット リロード TMO端子 TMRLRA + 1 カウント TMRLRB カウント (OUTL=0の時) 起動トリガ 起動トリガ待ち 比較一致 からカウント タイマがリロード したレジスタ • TMRLRA TMRLRA TMRLRB > TMRLRA を設定 上記レジスタ関係のとき , タイマへのロードを行うと , 既に TMR < TMRLRB となっ ているので , TMO 出力は , 起動トリガが発生してからアンダフローが発生するまで "H" レベルとなります。アンダフローの発生によりタイマは起動トリガ待ち状態と なり , TMO 出力は "L" レベルとなります (OUTL=0 のとき )。 図 21.6-20 コンペアモード (PWM) ワンショット動作 (TMRLRB > TMRLRA) カウントクロック タイマがリロード したレジスタ アンダフロー TMO端子 (OUTL=0の時) 起動トリガ CM71-10158-1 TMRLRA TMRLRA TMRLRA+1 TMRLRA+1 起動トリガ待ち FUJITSU SEMICONDUCTOR LIMITED 起動トリガ待ち 493 第 21 章 16 ビットリロードタイマ 21.6 • MB91665 シリーズ TMRLRB = TMRLRA を設定 上記レジスタ関係のとき , タイマへのロード後 , 1 カウントすると TMR < TMRLRB となるので , TMO 出力は , ダウンカウント 1 カウント分 "L" レベルを出力し , アン ダフローが発生するまで "H" レベルを出力します。アンダフローの発生によりタイ マは起動トリガ待ち状態となり , TMO 出力は "L" レベルとなります (OUTL=0 のと き )。 図 21.6-21 コンペアモード (PWM) ワンショット動作 (TMRLRB = TMRLRA) タイマがリロード したレジスタ TMRLRA TMRLRA カウントクロック ··· ··· アンダフロー TMO端子 1カウント (OUTL=0の時) 1カウント TMRLRA+1 TMRLRA+1 起動トリガ待ち 起動トリガ • 起動トリガ待ち TMRLRB = 0 を設定 上記レジスタ関係のとき , TMR < TMRLRB となることはないので , ダウンカウント 開始時からアンダフローが発生するまで TMO 出力は "L" レベルとなります。アン ダフロー発生後も "L" レベルのままです (OUTL=0 のとき )。 図 21.6-22 コンペアモード (PWM) ワンショット動作 (TMRLRB=0) カウントクロック ··· タイマがリロード したレジスタ TMRLRA ··· TMRLRA アンダフロー TMO端子 (OUTL=0の時) H L 起動トリガ待ち TMRLRA+1 起動トリガ待ち TMRLRA+1 起動トリガ待ち 起動トリガ 494 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● コンペアモード (PWM) リロード動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=10, bit4: RELD=1 のとき , タイマはダウン カウントごとにカウンタ値 (TMR) と TMRLRB の値を比較し , 比較一致 (TMR = TMRLRB) からダウンカウントすると TMO 出力を反転します。アンダフローが発生す ると , 再び TMRLRA から値をロードしダウンカウント動作を行うコンペアモード (PWM) リロード動作を行います。カウンタへのロードは TMRLRA から行います。 TMRLRA の値はタイマが起動してからリロードするまでのカウンタ周期 , TMRLRB の 値は , TMO 出力が "L" レベル出力から "H" レベル出力へ反転した後の "H" レベル幅を 示します。 TMR + 1 = TMRLRB のとき , TMO 出力は反転し , "H" レベルとなります (OUTL=0 のと き )。 PWM として使用できます。 H幅 = TMRLRB TMO端子 周期 = TMRLRA ダウンカウント開始時から TMR = TMRLRB となるまで (TMR ≧ TMRLRB のとき ) は 以下の動作を行います。 • カウント継続 TMR = TMRLRB からダウンカウントとなったときは以下の動作を行います。 • カウント継続 ( インターバルタイマモードでのコンペア動作時は , TMCSR レジスタの bit7:EF ビッ トはセットされません。) アンダフローが発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRA から値をリロード • タイマはカウント継続 コンペア機能の動作は TMRLRA と TMRLRB の設定関係により変わります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 495 第 21 章 16 ビットリロードタイマ 21.6 • MB91665 シリーズ TMRLRB < TMRLRA を設定 上記レジスタ関係のとき , タイマへのロードを行ってから TMR = TMRLRB の関係 になるまで , TMO 出力は , "L" レベルとなります。比較一致 (TMR = TMRLRB) から ダウンカウントしたとき , TMO 出力を反転させ , アンダフローが発生するまで "H" レベルとなります。アンダフローが発生すると , TMO 出力は初期化されます。アン ダフローにより , タイマは TMRLRA からリロードを行い , カウント動作を継続しま す (OUTL=0 のとき )。 図 21.6-23 コンペアモード (PWM) リロード動作 (TMRLRB < TMRLRA) トリガ入力 カウントクロック ··· ··· ··· ··· ··· ··· アンダフロー UFビット ··· ··· ··· リロード TMO端子 TMRLRA + 1 カウント (OUTL=0の時) TMRLRB カウント TMRLRA + 1 カウント TMRLRB カウント TMRLRA + 1 カウント TMRLRB カウント 比較一致から ダウンカウント ··· EFビット タイマがリロード したレジスタ • TMRLRA ··· ··· TMRLRA TMRLRA TMRLRB > TMRLRA を設定 上記レジスタ関係のとき , 常に TMR < TMRLRB なので , TMO 出力は , 起動トリガ が発生してからアンダフローが発生するまで "H" レベルとなります。アンダフロー が発生しても TMO 出力は "H" レベルを継続します。また , アンダフローによりタ イマは TMRLRA からロードを行い , カウント動作を継続します (OUTL=0 のとき )。 図 21.6-24 コンペアモード (PWM) リロード動作 (TMRLRB > TMRLRA) トリガ入力 カウントクロック ··· タイマがリロード したレジスタ TMRLRA ··· TMRLRA ··· TMRLRA アンダフロー UFビット ··· ··· TMO端子 (OUTL=0の時) TMRLRA+1 TMRLRA+1 TMRLRA+1 起動トリガ 496 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ • TMRLRB = TMRLRA を設定 上記レジスタ関係のとき , タイマへのロード後 , 1 カウントすると TMR < TMRLRB となるので , TMO 出力は , ダウンカウント 1 カウント分 "L" レベルを出力し , アン ダフローが発生するまで "H" レベルを出力します。 アンダフローの発生によりタイマは TMRLRA からロードを行い , カウント動作を 継続します。TMO 出力は "L" レベルとなります (OUTL=0 のとき )。 図 21.6-25 コンペアモード (PWM) リロード動作 (TMRLRB = TMRLRA) トリガ入力 タイマがリロード したレジスタ TMRLRA TMRLRA カウントクロック ··· ··· TMRLRA ··· アンダフロー UFビット ··· TMO端子 1カウント (OUTL=0の時) 1カウント TMRLRB 1カウント ··· TMRLRB 1カウント TMRLRB TMRLRA+1 TMRLRA+1 TMRLRA+1 ··· ··· ··· 比較一致から ダウンカウント EFビット L 起動トリガ • TMRLRB = 0 を設定 上記レジスタ関係のとき , タイマへのロード後 , TMR < TMRLRB となることはない ので , ダウンカウント開始時からアンダフローが発生するまで TMO 出力は "L" レ ベルとなります。アンダフローが発生後も "L" レベルのままです。 図 21.6-26 コンペアモード (PWM) リロード動作 (TMRLRB = 0) トリガ入力 カウントクロック ··· タイマがリロード したレジスタ TMRLRA ··· TMRLRA ··· TMRLRA アンダフロー UFビット TMO端子 (OUTL=0の時) ··· H L TMRLRA+1 TMRLRA+1 ··· TMRLRA+1 起動トリガ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 497 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● キャプチャモード (PWC) 動作 TMCSR レジスタの bit15, bit14:MOD1,MOD0=11 のとき , タイマはキャプチャ動作を行 います。 再トリガが発生したとき , その時点の TMR の値を TMRLRB レジスタにキャプチャし , TMCSR レジスタの bit7:EF をセットします。 TMI 入力をゲート入力として使用 (TMCSR レジスタの bit8:GATE=1 のとき ) している ときは , TMCSR レジスタの bit0:TRG によって再トリガを発生させてください。 図 21.6-27 キャプチャ機能 (RELD=1) TMI端子 トリガ入力 TMI端子 再トリガ カ TMRLRA ウ ン タ 値 0 TMRLRBへ キャプチャ UF割込み & リロード(TMRLRAから) EF割込み & キャプチャ(TMRLRBへ) & リロード(TMRLRAから) このモード以外では , 再トリガ発生時にキャプチャは行いません。EF 割込みも発生し ません。 タイマの動作 /TMO 出力は , シングルモード ( タイマカウンタ ) ワンショット機能・シ ングルモード ( タイマカウンタ ) リロード機能と同じです。 498 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 21.6.2 イベントカウンタモード時の動作 16 ビットリロードタイマをイベントカウンタとして使用する場合の動作について説明しま す。この節では , 外部イベントをカウントする場合の動作について説明します。 ■ 概要 イベントカウンタモードでは TMI0 ∼ TMI2 端子に入力された外部イベントをカウント します。TMI0 ∼ TMI2 端子から有効エッジが入力されるたびに , カウントダウンを行 います。 カスケードモードについては ,「21.6.3 カスケードモード時の動作」を参照してくださ い。 ■ 設定 ● イベントカウンタモードの設定 16 ビットリロードタイマをイベントカウンタモードで使用する場合は , コントロール ステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットを次のように設定 します。 CSL2 1 CSL1 1 CSL0 1 モード カウント用クロック イベントカウンタモード 外部クロック ● 動作モードの設定 カウンタのアンダフローが発生したときの動作をリロード動作許可ビット (TMCSR レ ジスタの bit4:RELD) と , モード選択ビット (TMCSR レジスタの bit15, bit14:MOD1, MOD0) で選択します。 各モードでの動作詳細は動作の項を参照してください。 MOD1 MOD0 RELD モード アンダフロー発生時の動作 0 シングルモード 0( ワンショット ) カウントを FFFFH で停止 ( タイマカウンタ ) 1( リロード ) TMRLRA をリロード 0 1 デュアルモード (PPG) 0( ワンショット ) 1( リロード ) ① TMRLRB をリロード ② カウントを FFFFH で停止 * TMRLRA と TMRLRB を交互に リロード 0 コンペアモード 0( ワンショット ) カウントを FFFFH で停止 (PWM) 1( リロード ) TMRLRA をリロード 1 キャプチャモード 0( ワンショット ) カウントを FFFFH で停止 (PWC) 1( リロード ) TMRLRA をリロード 1 * 詳細は , 「● デュアルモード (PPG) ワンショット動作」を参照してください。 TMO0 ∼ TMO2 の出力波形は , 図 21.6-1 を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 499 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ● 有効エッジの設定 16 ビットリロードタイマは TMI0 ∼ TMI2 端子に有効エッジが入力されるたびに , カウ ントダウンを行います。 有効エッジはコントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の TRGM1, TRGM0 ビットで次の中から選択できます。 TRGM1, TRGM0 端子の機能 00 TMI0 ∼ TMI2 端子は機能しません。 01 立上りエッジ 10 立下りエッジ 11 両エッジ ■ 起動 TMCSR レジスタの bit1:CNTE ビットに "1" を書き込むとカウンタは起動トリガ待ち状 態になります。 起動トリガ待ち状態中に TMCSR レジスタの bit0:TRG ビットに "1" を書き込むと , TMRLRA からデータをロードして , カウンタ値は TMRLRA となります。その後 , TMI 端子に有効な入力があればダウンカウントを行います。 ■ 動作 ● カウント動作 TMI 端子から有効エッジが入力されるとカウンタはダウンカウントを行います。 以下に TMCSR レジスタの bit13, bit12:TRGM1, TRGM0 ビットの各設定によるカウンタ の動作を示します。 図 21.6-28 立上りエッジカウント (TRGM1, TRGM0=01) の動作 (RELD=1, OUTL=0) 周辺クロック(PCLK) TMI端子 TMI端子の 有効エッジ カウント値 TMRLRA -1 -1 -1 TRG(レジスタ) 図 21.6-29 立下りエッジカウント (TRGM1, TRGM0=10) の動作 (RELD=1, OUTL=0) 周辺クロック(PCLK) TMI端子 TMI端子の 有効エッジ カウント値 TMRLRA -1 -1 -1 TRG(レジスタ) 500 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-30 両エッジカウント (TRGM1, TRGM0=11) の動作 (RELD=1, OUTL=0) 周辺クロック(PCLK) TMI端子 TMI端子の 有効エッジ カウント値 TMRLRA -1 -1 -1 -1 -1 -1 TRG(レジスタ) ● 再トリガ カウンタの動作中に TMCSR レジスタの bit0:TRG ビットによるトリガが発生した場合 , 以下の動作を行います。 • カウンタ出力 (TMO) 許可のとき , TMO 出力を初期化 • TMRLRA の値をカウンタにロード • カウンタ動作継続 ● アンダフロー / リロード カウンタの値が 0000H からダウンカウントするときをアンダフローとしています。ア ンダフローが発生すると TMCSR レジスタの bit2:UF ビットがセットされます。 bit4:RELD ビットが "1" のときはカウンタへのリロードが発生します。 カウンタは " リロードレジスタの設定値+ 1" カウントでアンダフローを発生します。 ● 割込み要求発生 TMCSR レジスタの bit3:INTE ビットが "1" のときに , bit2:UF ビット /bit7:EF ビットが セットされると割込み要求が発生します。 イベントカウンタモードでは , 以下の条件のときに UF ビット /EF ビットがセットされ ます。 UF ビットのセット: カウンタのアンダフローが発生したとき EF ビットのセット: 1. コンペアモードで , TMR = TMRLRB からダウンカウントが 発生したとき 2. キャプチャモード (PWC) で , ソフトウェアトリガの入力 アンダフロー発生による割込み要求発生例を以下に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 501 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-31 割込み要求出力動作 (TMCSR レジスタの bit4:RELD=1・bit3:INTE=1) イベント入力 カウンタ値 0002H 0001H 0000 H TMRLRA -1 -1 -1 -1 アンダフロー UFビット 割込み要求 ● レジスタ書込みとタイマ動作の同時動作 ユーザの操作によるレジスタ書込みとタイマ動作が同時に発生したときの実行動作に ついて下表に示します。 ユーザの操作 タイマ動作 実行する動作 UF ビットへの "0" 書込みに UF ビットのセット よるクリア UF ビットのセット ("0" 書込みは無効となる ) EF ビットへの "0" 書込みに EF ビットのセット よるクリア EF ビットのセット ("0" 書込みは無効となる ) リロードレジスタへの書込 リトリガによるタイ 旧データのリロード み マのロード ( 書き換えた値は次のリロード時 にリロード ) 各設定時の動作について説明します。 ● シングルモード ( タイマカウンタ ) ワンショット動作 TMCSR レジスタの bit15, bit14:MOD1, MOD0=00, bit4:RELD=0 のとき , アンダフローの 発生によりカウンタが FFFFH で停止するシングルモード ( タイマカウンタ ) ワンショッ ト動作を行います。 シングルモード ( タイマカウンタ ) ワンショット動作時にアンダフローが発生したとき は以下の動作を行います。 502 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • FFFFH でカウント停止 • カウンタ出力 (TMO) 許可のとき , TMO 出力を初期化 • カウンタは起動トリガ待ち状態 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-32 シングルモード ( タイマカウンタ ) ワンショット動作 ( 詳細 ) ( 立上りエッジカウント ) 周辺クロック(PCLK) TMI端子 TMI端子の 有効エッジ カウンタ値 0001H 0000 H -1 TMRLRA FFFFH -1 アンダフロー UF(レジスタ) TRG(レジスタ) 起動トリガ待ち データロード 図 21.6-33 シングルモード ( タイマカウンタ ) ワンショット動作 ( 両エッジカウント ) アンダフロー UFビット … TMO端子 (OUTL=0の時) TMO端子 (OUTL=1の時) … TMI端子 … … TMI端子の 有効エッジ TRG(レジスタ) リロード カウンタ値 TMRLRA -1 … FFFFH TMRLRA -1 0000 H … FFFFH 0000 H ● シングルモード ( タイマカウンタ ) リロード動作 TMCSR レジスタの bit15, bit14:MOD1, MOD0=00, bit4:RELD=1 のとき , シングルモード ( タイマカウンタ ) リロード動作を行います。 シングルモード ( タイマカウンタ ) リロード動作は , トリガ入力によって TMRLRA の 値をカウンタへロードして , TMI 端子から有効エッジ入力があるとダウンカウントを 行います。アンダフローが発生すると , 再び TMRLRA の値をリロードしてダウンカウ ント動作を継続します。 この機能では , TMRLRB は使用しません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 503 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ シングルモード ( タイマカウンタ ) リロード設定時に , アンダフローが発生したときは 以下の動作を行います。 • TMCSR レジスタの UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRA の値をカウンタにロード • カウンタ出力 (TMO) 許可のとき , TMO 出力を反転 • イベント入力発生でダウンカウント継続 図 21.6-34 シングルモード ( タイマカウンタ ) リロード動作 ( 両エッジカウント ) タイマがリロード したレジスタ TMRLRA TMRLRA TMRLRA TMRLRA TMRLRA アンダフロー UFビット TMO端子 (OUTL=0の時) TMI端子 TMI端子の 有効エッジ TRG(レジスタ) データロード カウンタ値 A:TMRLRA A -1 A -1 A -1 0000 H A 0000 H A -1 0000 H ● デュアルモード (PPG) ワンショット動作 TMCSR レジスタの bit15, bit14:MOD1, MOD0=01, bit4: RELD=0 のとき , カウンタはデュ アルモード (PPG) ワンショット動作を行います。 デュアルモード (PPG) ワンショット動作では , 起動トリガにより TMRLRA からカウン タへデータロードを行い , TMI 入力から有効エッジ入力があるとダウンカウントしま す。アンダフローが発生すると , TMRLRB からカウンタへロードして , ダウンカウン トを行い , TMRLRB のロードによるカウント値からのダウンカウントによるアンダフ ローが発生すると , カウンタは起動トリガ待ち状態になります。 TMRLRA の値は , カウンタの起動 (bit5:OUTL=0 のとき TMO は "L" レベル ) から TMO 出力が "H" レベルへトグルするまでの時間 , TMRLRB の値は "H" レベルを出力してい る時間です。 1 回目のアンダフロー (UF-A) が発生したときは以下の動作を行います。 504 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRB をカウンタにロード • カウンタ出力許可のとき , TMO 出力を反転 • TMRLRB からダウンカウント開始 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 2 回目のアンダフロー (UF-B) が発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • FFFFH でカウント停止 • カウンタ出力許可のとき , TMO 出力を初期化 • カウンタは起動トリガ待ち状態へ 図 21.6-35 デュアルモード (PPG) ワンショット動作 ( 両エッジカウント ) TMI端子 TMI端子の 有効エッジ アンダフロー UF-B UF-A UFビット 起動トリガ 起動トリガ待ち 起動トリガ待ち TMO端子 (OUTL=0の時) TMRLRB + 1 カウント TMRLRA + 1 カウント タイマがリロード したレジスタ カウンタ値 TMRLRA A:TMRLRA B:TMRLRB TMRLRA -1 TMRLRA + 1 カウント TMRLRA TMRLRB 1 0 TMRLRB -1 1 0 FFFFH TMRLRA ● デュアルモード (PPG) リロード動作 TMCSR レ ジ ス タ の bit15, bit14:MOD1, MOD0=01, bit4:RELD=1 の と き , TMRLRA/ TMRLRB から交互にリロードを行うデュアルモード (PPG) リロード動作を行います。 起動トリガ入力により TMRLRA から値をカウンタへロードし , TMI 端子の有効エッジ 入力によりダウンカウント動作を行います。TMRLRA からのダウンカウントによるア ンダフローが発生 (UF-A) すると TMRLRB の値をカウンタへロードし , ダウンカウン ト動作を継続します。TMRLRB からのダウンカウントによるアンダフローが発生 (UF-B) すると , TMRLRA から値をカウンタへロードします。アンダフローが発生する度に , TMRLRA/TMRLRB 交互にカウンタへのロードを行います。 デュアルモード (PPG) リロード動作設定時にアンダフローが発生した場合は以下の動 作を行います。 上記説明の UF-A が発生したときは以下の動作を行います。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 505 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRB の値をカウンタにロード • イベント入力により TMRLRB の値からダウンカウント開始 上記説明の UF-B が発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRA の値をカウンタにロード • イベント入力により TMRLRA の値からダウンカウント開始 図 21.6-36 デュアルモード (PPG) リロード動作 ( 両エッジカウント ) タイマがリロード したレジスタ A:TMRLRA B:TMRLRB B A アンダフロー UF-A B A UF-B A UF-A UF-B UFビット TMO端子 (OUTL=0の時) TMI端子 TMI端子の 有効エッジ TRG(レジスタ) データロード カウンタ値 A:TMRLRA B:TMRLRB A B -1 -1 A 0000 H -1 B 0000 H A -1 0000 H ● コンペアモード (PWM) ワンショット動作 TMCSR レジスタの bit15, bit14:MOD1, MOD0=10, bit4: RELD=0 のとき , ダウンカウント を行いながらカウンタ値 (TMR) と TMRLRB の値を比較するコンペアモード (PWM) ワ ンショット動作を行います。起動トリガにより TMRLRA から値をロードし , TMI 端子 の有効エッジが入力されるとダウンカウントします。比較一致 (TMR = TMRLRB) から ダウンカウントすると , EF ビットをセットし , TMO 出力が反転します。アンダフロー が発生すると , カウント動作を停止して起動トリガ待ち状態になります。 TMRLRA の値はカウンタの起動からアンダフローが発生するまでのカウント数を示 し , TMRLRB の値は , そのカウント中で "H" レベルが出力され始めるカウンタ値を示 します。 TMCSR レジスタの bit5:OUTL=0 設定時 , TMR ≧ TMRLRB のときに TMO は "L" レベ ルを出力します。TMR < TMRLRB のときに TMO は "H" レベルを出力します。 イベントカウンタモードでのコンペア動作時は , TMR + 1 = TMRLRB になると TMCSR レジスタの bit7:EF ビットがセットされます。そのとき TMCSR レジスタの bit3:INTE ビットが "1" ならば EF 割込みを発生します。 506 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ ダウンカウント開始時から TMR ≧ TMRLRB の間は以下の動作を行います。 • カウンタはカウント継続 ( 有効エッジ入力待ち ) TMR = TMRLRB からダウンカウントが発生したときは以下の動作を行います。 • TMCSR レジスタの bit7:EF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • カウンタはカウント継続 ( 有効エッジ入力待ち ) アンダフローが発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • FFFFH でカウント停止 • カウンタは起動トリガ待ち状態 コンペア機能の動作は TMRLRA と TMRLRB の設定関係により変わります。 • TMRLRB < TMRLRA 上記レジスタ関係のとき , カウンタへのロードを行ってから比較一致まで (TMR ≧ TMRLRB), TMO 出力は OUTL =0 のとき , "L" レベルとなります。比較一致 (TMR = TMRLRB) からダウンカウントが発生したとき , TMO 出力は反転し , アンダフロー が発生するまで "H" レベルとなります。また , EF ビットもセットされます。アンダ フローが発生すると , TMO 出力は初期化されます。アンダフローによりカウント動 作を停止して起動トリガ待ち状態になります。 図 21.6-37 コンペアモード (PWM) ワンショット動作 (TMRLRB < TMRLRA)( 両エッジカウント ) TMI端子 ··· TMI端子の 有効エッジ ··· ··· ··· ··· ··· ··· ··· アンダフロー ··· UFビット リロード TMO端子 (OUTL=0の時) TMRLRB カウント TMRLRA + 1 カウント 起動トリガ待ち TMRLRB カウント TMRLRA + 1 カウント 起動トリガ待ち 起動トリガ 起動トリガ待ち 比較一致から ダウンカウント EFビット タイマがリロード したレジスタ CM71-10158-1 ··· TMRLRA ··· TMRLRA FUJITSU SEMICONDUCTOR LIMITED 507 第 21 章 16 ビットリロードタイマ 21.6 • MB91665 シリーズ TMRLRB > TMRLRA 上記レジスタ関係のとき , 既に TMR < TMRLRB なので TMO 出力は OUTL=0 のと き , 起動トリガにより有効イベント入力待ちになってからアンダフローが発生する まで "H" レベルとなります。アンダフローの発生により "L" レベルとなります。 図 21.6-38 コンペアモード (PWM) ワンショット動作 (TMRLRB > TMRLRA)( 両エッジカウント ) タイマがリロード したレジスタ TMRLRA ··· TMI端子 TMI端子の 有効エッジ アンダフロー ··· ··· L ··· ··· ··· UFビット EFビット TMRLRA ··· ··· ··· ··· TMO端子 (OUTL=0の時) TMRLRA+1 起動トリガ 起動トリガ待ち • TMRLRA+1 起動トリガ待ち 起動トリガ待ち TMRLRB = TMRLRA 上記レジスタ関係のとき , カウンタが 1 カウントすると TMR < TMRLRB となるの で , TMO 出力は OUTL=0 のとき , ダウンカウント 1 カウント分 "L" レベルを出力 し , アンダフローが発生するまで "H" レベルを出力します。また , EF フラグもセッ トします。アンダフローの発生により TMO 出力は "L" レベルとなります。 図 21.6-39 コンペアモード (PWM) ワンショット動作 (TMRLRB = TMRLRA)( 両エッジカウント ) タイマがリロード したレジスタ TMI端子 TMRLRA TMRLRA ··· ··· TMI端子の 有効エッジ アンダフロー UFビット ··· EFビット TMO端子 (OUTL=0の時) ··· 1カウント 1カウント TMRLRA+1 TMRLRA+1 起動トリガ 508 起動トリガ待ち 起動トリガ待ち FUJITSU SEMICONDUCTOR LIMITED 起動トリガ待ち CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ • TMRLRB = 0 上記レジスタ関係のとき , TMR < TMRLRB となることはないので , ダウンカウント 開始時からアンダフローが発生するまで , TMO 出力は "L" レベルとなります。アン ダフローの発生後も "L" レベルとなります。 図 21.6-40 コンペアモード (PWM) ワンショット動作 (TMRLRB =0)( 両エッジカウント ) タイマがリロード したレジスタ TMRLRA TMI端子 TMRLRA ··· ··· TMI端子の 有効エッジ アンダフロー ··· UFビット EFビット ··· H L TMO端子 H (OUTL=0の時) L TMRLRA+1 起動トリガ待ち TMRLRA+1 起動トリガ待ち 起動トリガ ● コンペアモード (PWM) リロード動作 TMCSR レジスタの bit15, bit14:MOD1, MOD0=10, bit4: RELD=1 のとき , カウンタは起動 トリガにより TMRLRA から値をロードし , TMI 端子の有効エッジ入力ごとにダウンカ ウントします。カウントごとにカウンタ値 (TMR) と TMRLRB の値を比較し , 比較一致 (TMR =TMRLRB) からダウンカウントが発生すると EF ビットをセットして , TMO 出 力を反転します。アンダフローが発生すると , 再び TMRLRA から値をロードしダウン カウント動作を行います。 TMRLRA の値はカウンタがダウンカウンタを行うための初期値となり , TMRLRB の値 は , TMO 出力許可のとき , カウント中に "H" 幅が出力され始めるカウンタ値を示しま す。TMR < TMRLRB のときに TMO は "H" レベルを出力します (OUTL=0 のとき )。 ダウンカウント開始時から TMR ≧ TMRLRB の間は以下の動作を行います。 • カウント継続 ( 有効エッジ入力待ち ) TMR = TMRLRB からダウンカウントが発生したときは以下の動作を行います。 CM71-10158-1 • TMCSR レジスタの bit7:EF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • カウント継続 ( 有効エッジ入力待ち ) FUJITSU SEMICONDUCTOR LIMITED 509 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ アンダフローが発生したときは以下の動作を行います。 • TMCSR レジスタの bit2:UF ビットをセット • 割込み許可 (TMCSR レジスタの bit3:INTE=1) のとき , 割込み発生 • TMRLRA から値をリロード • カウント継続 ( 有効エッジ入力待ち ) コンペア機能の動作は TMRLRA と TMRLRB の設定関係により変わります。 • TMRLRB < TMRLRA を設定 上記レジスタ関係のとき , カウンタへのロードを行ってから比較一致 (TMR = TMRLRB) するまで , TMO 出力は OUTL=0 のとき , "L" レベルとなります。比較一 致からダウンカウントが発生したとき , TMO 出力は反転し , アンダフローが発生す るまで "H" レベルとなります。また , EF ビットもセットされます。アンダフローが 発生すると , TMO 出力は初期化され "L" レベルとなります。アンダフローにより , タイマは TMRLRA からリロードを行い , カウント動作を継続します。 図 21.6-41 コンペアモード (PWM) リロード動作 (TMRLRB < TMRLRA)( 両エッジカウント ) TMI端子 ··· ··· ··· ··· ··· ··· TMI端子の 有効エッジ ··· ··· ··· ··· ··· ··· アンダフロー ··· UFビット ··· リロード TMO端子 (OUTL=0の時) TMRLRB カウント TMRLRA + 1 カウント TMRLRB カウント TMRLRA + 1 カウント TMRLRB カウント TMRLRA + 1 カウント 比較一致から ダウンカウント ··· EFビット タイマがリロード したレジスタ TMRLRA • ··· TMRLRA ··· TMRLRA TMRLRB > TMRLRA を設定 上記レジスタ関係のとき , TMRLRA からカウンタへロードを行うと , 既に TMR < TMRLRB となっているので , TMO 出力は OUTL=0 のとき , ダウンカウント開始か らアンダフローの発生まで "H" レベルとなります。アンダフローの発生によりカウ ンタは TMRLRA からロードを行い , カウント動作を継続します。TMO 出力は "H" レベルを継続します。このレジスタ関係のとき , EF ビットはセットしません。 510 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 図 21.6-42 コンペアモード (PWM) リロード動作 (TMRLRB > TMRLRA)( 両エッジカウント ) TMI端子 TMI端子の 有効エッジ タイマがリロード したレジスタ ··· ··· ··· ··· ··· ··· TMRLRA TMRLRA TMRLRA アンダフロー ··· UFビット ··· TMO端子 (OUTL=0の時) TMRLRA+1 TMRLRA+1 TMRLRA+1 EFビット L 起動トリガ • TMRLRB = TMRLRA を設定 上記レジスタ関係のとき, カウンタへのロード後, 1カウントするとTMR < TMRLRB になるので , TMO 出力は OUTL=0 のとき , ダウンカウント 1 カウント分 "L" レベル を出力し , アンダフローが発生するまで "H" レベルを出力します。また , EF ビット もセットされます。アンダフローの発生によりカウンタは TMRLRA からロードを 行い , カウント動作を継続します。TMO 出力は "L" レベルとなります。 図 21.6-43 コンペアモード (PWM) リロード動作 (TMRLRB = TMRLRA)( 両エッジカウント ) タイマがリロード したレジスタ TMRLRA TMRLRA TMRLRA TMI端子 ··· ··· ··· TMI端子の 有効エッジ ··· ··· ··· アンダフロー UFビット TMO端子 (OUTL=0の時) ··· 1カウント 1カウント TMRLRA+1 TMRLRB 1カウント TMRLRA+1 TMRLRB ··· ··· TMRLRA+1 TMRLRB 比較一致から ダウンカウント EFビット 起動トリガ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 511 第 21 章 16 ビットリロードタイマ 21.6 • MB91665 シリーズ TMRLRB = 0 を設定 上記レジスタ関係のとき , カウンタへのロード後 , TMR < TMRLRB になることはな いので , ダウンカウント開始時からアンダフローが発生するまで TMO 出力は "L" レ ベルとなります。アンダフローが発生後も "L" レベルのままです。 図 21.6-44 コンペアモード (PWM) リロード動作 (TMRLRB=0)( 両エッジカウント ) TMI端子 ··· ··· ··· TMI端子の 有効エッジ ··· ··· ··· タイマがリロード したレジスタ TMRLRA TMRLRA TMRLRA アンダフロー ··· UFビット TMO端子 H TMRLRA+1 (OUTL=0の時) L TMRLRA+1 ··· TMRLRA+1 起動トリガ ● キャプチャモード (PWC) 動作 TMCSR レジスタの bit15, bit14:MOD1, MOD0=11 のとき , 再トリガが発生したときのカ ウンタ値をキャプチャするキャプチャ動作を行います。 イベントカウンタモード時にキャプチャ入力を使用するときは , TMCSR レジスタの bit0:TRG への "1" 書込みによってキャプチャを行ってください。 カウント動作中に再トリガが発生したとき , その時点の TMR の値を TMRLRB レジス タにキャプチャし , TMCSR レジスタの bit7:EF をセットします。リロード・ワンショッ トどちらのモード選択中でも動作します。 アンダフロー時の動作は , 「● シングルモード ( タイマカウンタ ) ワンショット動作」 または , 「● シングルモード ( タイマカウンタ ) リロード動作」を参照してください。 図 21.6-45 キャプチャ動作 TMI端子再トリガ入力 TMI端子入力 カウンタ値 TMRLRA アンダフロー 0 アンダフロー TMRLRBへ TMRをキャプチャ EF割込み UF割込み & & リロード(TMRLRA) キャプチャ(TMRLRB) & リロード(TMRLRA) 512 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ 21.6.3 カスケードモード時の動作 カスケードモードを使用すると , 16 ビットリロードタイマの ch.0 からの出力を ch.1 で , ch.1 からの出力を ch.2 でカウントできます。カスケードモード時の動作を説明します。 ■ 動作 コントロールステータスレジスタ (TMCSR0 ∼ TMCSR2) の CSL2 ∼ CSL0 ビットでカ スケードモードを選択 (CSL2 ∼ CSL0=110) すると , 次のような動作になります。 • ch.1 をカスケードモードで接続した場合 ch.0 からの出力をカウントします。ch.1 をカスケードモードで使用した場合の入出 力を図 21.6-46 に示します。 図 21.6-46 ch.1 をカスケードモードで使用した場合の入出力 TMI0 端子 ch.0 TMO0 端子 TMI1 端子 ch.1 TMO1 端子 • ch.2 をカスケードモードで接続した場合 ch.1 からの出力をカウントします。ch.2 をカスケードモードで使用した場合の入出 力を図 21.6-47 に示します。 図 21.6-47 ch.2 をカスケードモードで使用した場合の入出力 TMI1 端子 ch.1 TMO1 端子 TMI2 端子 ch.2 TMO2 端子 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 513 第 21 章 16 ビットリロードタイマ 21.6 MB91665 シリーズ < 注意事項 > カスケードモードを使用する場合は , コントロールステータスレジスタ (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) 514 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 21 章 16 ビットリロードタイマ 21.7 MB91665 シリーズ 21.7 使用上の注意 16 ビットリロードタイマを使用する際は , 次の点に注意してください。 ■ 割込みに関する注意 • アンダフロー割込み要求フラグのクリアと, アンダフロー割込み要求フラグが"1"に 変わるタイミングが重なった場合は , アンダフロー割込み要求フラグのクリア動作 は無視され , アンダフロー割込み要求フラグは "1" のままになります。 ■ 同時起動の場合の動作 16 ビットリロードタイマの動作を決定するイベントが同時に発生した場合 , 動作状態 を決定する優先順位は次のとおりです。 1. レジスタの読込み 2. トリガ入力 3. アンダフロー 4. カウント用クロック入力 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 515 第 21 章 16 ビットリロードタイマ 21.7 516 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 ベースタイマの入出力選択機能について説明しま す。 22.1 概要 22.2 構成 22.3 端子 22.4 レジスタ 22.5 入出力モード CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 517 第 22 章 ベースタイマ 入出力選択機能 22.1 MB91665 シリーズ 22.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:タイマ起動モード 偶数チャネルで奇数チャネルの起動を制御するモードです。奇数チャネルは , 偶数 チャネルからの出力信号の立上りエッジで起動します。 518 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ • 第 22 章 ベースタイマ 入出力選択機能 22.1 入出力モード 8 :他チャネルトリガ共有タイマ起動 / 停止モード ほかのチャネルからの外部信号を外部起動トリガにして , 起動するモードです。 このモードは ch.0 および ch.1 には設定できません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 519 第 22 章 ベースタイマ 入出力選択機能 22.2 MB91665 シリーズ 22.2 構成 ベースタイマ入出力選択機能は次のブロックで構成されています。 ■ ベースタイマ入出力選択機能のブロックダイヤグラム ベースタイマ入出力選択機能のブロックダイヤグラムを図 22.2-1 に示します。 図 22.2-1 ベースタイマ入出力選択機能のブロックダイヤグラム レジスタ部 TIOB3 ベースタイマ ch.3 周 辺 バ ス 入出力 選択部 ベースタイマ ch.2 TIOA3 TIOB2 TIOA2 TIOB1 ベースタイマ ch.1 TIOA1 ベースタイマ ch.0 TIOB0 TIOA0 • 入出力選択部 ベースタイマの入出力モードをチャネルごとに選択する回路です。 • ベースタイマ (ch.0 ∼ ch.3) ベースタイマの ch.0 ∼ ch.3 です。 520 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.3 MB91665 シリーズ 22.3 端子 ベースタイマ入出力選択機能で入出力モードを設定する端子について説明します。 ■ 概要 ベースタイマには , チャネルごとに 2 種類の外部端子と 5 種類の内部信号があります。 外部端子と内部信号を接続することで, ベースタイマへ接続先に対応した信号 ( 外部ク ロック (ECK 信号 ) / 外部起動トリガ (TGIN 信号 ) / 波形 (TIN 信号 ) ) を入出力します。 外部端子と内部信号は , ベースタイマの入出力モードを設定することで接続されます。 使用する端子と入出力する信号は入出力モードによって異なります。 ● 外部端子 • TIOA0 ∼ TIOA3 端子 ベースタイマの波形 (TOUT 信号 ) を出力する , あるいは , 外部起動トリガ (TGIN 信 号 ) を入力する端子です。 この端子は兼用端子です。ベースタイマの TIOA0 ∼ TIOA3 端子として使用するに は「2.4 端子の設定方法」を参照してください。 • TIOB0 ∼ TIOB3 端子 外部起動トリガ (TGIN 信号 ) / 外部クロック (ECK 信号 ) / 他チャネルの波形 (TIN 信 号 ) を入力する端子です。 この端子は兼用端子です。ベースタイマの TIOB0 ∼ TIOB3 端子として使用するに は「2.4 端子の設定方法」を参照してください。 ● 内部信号 上記の外部端子と接続する , あるいは , ほかのチャネルからの出力信号を入力すること でベースタイマへ信号を入出力します。 • TOUT 信号 ベースタイマの出力波形です。(16/32 ビット PWC タイマでは使用しません。) • ECK 信号 ベースタイマの外部クロックです。(16/32 ビット PWC タイマでは使用しません。) カウント用クロックに外部クロックを選択した場合に入力します。 • TGIN 信号 ベースタイマの外部起動トリガです。(16/32ビットPWCタイマでは使用しません。 ) 外部起動トリガの有効エッジを選択すると , この信号のエッジを検出してベースタ イマが起動します。 • TIN 信号 測定する波形です。(16/32 ビット PWC タイマでのみ使用します。) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 521 第 22 章 ベースタイマ 入出力選択機能 22.3 • MB91665 シリーズ DTRG 信号 ベースタイマは , この信号の立下りエッジで動作を停止します。 • COUT 信号 他のチャネルへの出力信号です。 • CIN 信号 他のチャネルから入力される信号です。 ● 外部端子と内部信号の接続 外部端子と内部信号は , ベースタイマの入出力モードを設定することで接続されます。 入出力モードと端子接続の対応を表 22.3-1 に示します。 表 22.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 *1 522 : 周辺クロック (PCLK) で同期化 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.4 MB91665 シリーズ 22.4 レジスタ ベースタイマ入出力選択機能で使用するレジスタの構成と機能について説明します。 ■ ベースタイマ入出力選択機能のレジスタ一覧 ベースタイマ入出力選択機能のレジスタ一覧を表 22.4-1 に示します。 表 22.4-1 ベースタイマ入出力選択機能のレジスタ一覧 チャネル CM71-10158-1 共通 レジスタ略称 BTSSSR レジスタ名 同時ソフト起動レジスタ 参照先 22.4.2 0 ∼ 3 共通 BTSEL0123 入出力選択レジスタ 0123 22.4.1 FUJITSU SEMICONDUCTOR LIMITED 523 第 22 章 ベースタイマ 入出力選択機能 22.4 MB91665 シリーズ 入出力選択レジスタ 0123 (BTSEL0123) 22.4.1 ベースタイマの ch.0 ∼ ch.3 の入出力モードを設定するレジスタです。 入出力選択レジスタ 0123 (BTSEL0123) のビット構成を図 22.4-1 に示します。 図 22.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 524 説明 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-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.4 MB91665 シリーズ < 注意事項 > 上記以外は設定禁止です。 [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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 525 第 22 章 ベースタイマ 入出力選択機能 22.4 MB91665 シリーズ 同時ソフト起動レジスタ (BTSSSR) 22.4.2 ベースタイマをソフトウェアで同時に起動するレジスタです。 "1" を書き込んだビットに対応する , 複数のチャネルを最大 16 チャネルまで同時に起動でき ます。 同時ソフト起動レジスタ (BTSSSR) のビット構成を図 22.4-2 に示します。 図 22.4-2 同時ソフト起動レジスタ (BTSSSR) のビット構成 bit 属性 初期値 bit 属性 初期値 15 14 13 12 11 10 9 8 予約 W 予約 W 予約 W 予約 W 予約 W 予約 W 予約 W 予約 W X X X X X X X X 7 6 5 4 3 2 1 0 予約 W 予約 W 予約 W 予約 W SSSR3 SSSR2 SSSR1 SSSR0 W W W W X X X X X X X X W:ライトオンリ X:不定 < 注意事項 > • 次のモード以外に設定しているときに , 本レジスタに書込みを行わないでください。 - 入出力モード 5 ( 同時ソフト起動モード ) - 入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) ( 偶数チャネルのみ ) • このレジスタを利用して起動するチャネルは , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビ ッ ト で ト リ ガ 入 力 エ ッ ジ を 立 上 り エ ッ ジ (EGS1, EGS0=01) に設定してください。 [bit15 ∼ bit4]:予約ビット 0 を書き込んでください。 526 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.4 MB91665 シリーズ [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) ・"6" ( ソフト起動タイマ起動 / 停止モード ) (SEL01_3 ∼ SEL01_0) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 527 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 22.5 入出力モード 入出力選択レジスタ (BTSEL0123) で設定した入出力モードによって, 外部端子の働きやベー スタイマの起動 / 停止タイミングなどが異なります。 入出力モード 0 (16 ビットタイマ標準モード ) 22.5.1 ベースタイマの各チャネルを個別に利用するモードです。 このモードに設定した場合に使用する外部端子を表 22.5-1 に示します。 表 22.5-1 使用する外部端子 偶数チャネル 奇数チャネル 入力端子 1本 1本 出力端子 1本 1本 使用する外部端子の接続先と入出力信号について表 22.5-2 に示します。 表 22.5-2 外部端子の接続先と入出力信号 外部端子 TIOA0 ∼ TIOA3 TIOB0 ∼ TIOB3 入出力 接続先 ( 内部信号 ) 入出力信号 TOUT 出力 入力 ECK/TGIN/TIN ベースタイマの波形を出力 * 入力した信号を次のいずれか として使用 ・外部クロック (ECK 信号 ) ・外部起動トリガ (TGIN 信号 ) ・測定する波形 (TIN 信号 ) * : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の設定によって異なります。 入出力モード 0 (16 ビットタイマ標準モード ) のブロックダイヤグラムを ch.0 を例に とって図 22.5-1 に示します。 図 22.5-1 入出力モード 0 (16 ビットタイマ標準モード ) のブロックダイヤグラム ベースタイマ ch.n+1 ベースタイマ ch.n 528 ECK TGIN TIN TOUT TIOBn+1 ECK TGIN TIN TOUT TIOBn FUJITSU SEMICONDUCTOR LIMITED TIOAn+1 TIOAn CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 0 の接続を表 22.5-3 に示します。 表 22.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 22.5.2 入出力モード 1 ( タイマフルモード ) 偶数チャネルの信号をすべて外部端子に個別に割り当てて使用するモードです。 このモードに設定した場合に使用する外部端子を表 22.5-4 に示します。 表 22.5-4 使用する外部端子 偶数チャネル 入力端子 3本 出力端子 1本 使用する外部端子の接続先と入出力信号について表 22.5-5 に示します。 表 22.5-5 外部端子の接続先と入出力信号 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOBn 入力 偶数チャネルの ECK 偶数チャネルに外部クロック (ECK 信 号 ) を入力 TIOAn+1 入力 偶数チャネルの TGIN 偶数チャネルに外部起動トリガ (TGIN 信号 ) を入力 TIOBn+1 入力 偶数チャネルの TIN 偶数チャネルに測定する波形 (TIN 信 号 ) を入力 n=0, 2 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 529 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 1 ( タイマフルモード ) のブロックダイヤグラムを図 22.5-2 に示します。 図 22.5-2 入出力モード 1 ( タイマフルモード ) のブロックダイヤグラム例 TIOBn+1 ベースタイマ ch.n+1 TIOAn+1 (32 ビットモード動作時 ) ベースタイマ ch.n TIOBn ECK TGIN TIN TOUT TIOAn 入出力モード 1 の接続を表 22.5-6 に示します。 表 22.5-6 入出力モード 1 の接続 接続元 接続先 ch.n の TOUT 信号 TIOAn 端子から出力 TIOBn 端子からの入力信号 ECK 信号として ch.n に入力 TIOAn+1 端子からの入力信号 TGIN 信号として ch.n に入力 TIOBn+1 端子からの入力信号 TIN 信号として ch.n に入力 n=0, 2 < 注意事項 > このモードに設定した場合は , ポート機能レジスタ (PFR) で奇数チャネルに対応する TIOAn 端子 (TIOA1, TIOA3) をポート入力モードに設定してください。端子の設定につい ては , 「2.4 端子の設定方法」を参照してください。 530 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 2 ( 外部トリガ共有モード ) 22.5.3 ベースタイマの入力信号 (ECK/TGIN/TIN) を 2 チャネルで共有するモードです。 このモードに設定した場合に使用する外部端子を表 22.5-7 に示します。 表 22.5-7 使用する外部端子 偶数チャネル 奇数チャネル 入力端子 1 本 (2 チャネルで共有 ) 出力端子 1本 1本 使用する外部端子の接続先と入出力信号について表 22.5-8 に示します。 表 22.5-8 外部端子の接続先と入出力信号 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 TIOBn 入力 偶数 / 奇数チャネルの 偶数 / 奇数両方のチャネルに入力 ( 周辺 クロック (PCLK) で同期化 ) し , 次のい ECK/TGIN/TIN* ずれかとして使用 ・外部クロック (ECK 信号 ) ・外部起動トリガ (TGIN 信号 ) ・測定する波形 (TIN 信号 ) TIOBn+1 − − 使用しない n=0, 2 * : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の設定によって異なります。 入出力モード 2 ( 外部トリガ共有モード ) のブロックダイヤグラムを図 22.5-3 に示しま す。 図 22.5-3 入出力モード 2 ( 外部トリガ共有モード ) のブロックダイヤグラム ベースタイマ ch.n+1 ベースタイマ ch.n CM71-10158-1 ECK TGIN TIN TOUT COUT ECK TGIN TIN TOUT FUJITSU SEMICONDUCTOR LIMITED TIOBn+1 TIOAn+1 TIOBn TIOAn 531 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 2 の接続を表 22.5-9 に示します。 表 22.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 < 注意事項 > このモードに設定したチャネルの上位 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) を入力できます。) 22.5.4 入出力モード 3 ( 他チャネルトリガ共有モード ) 2 チャネル下位側のチャネルの COUT 信号を CIN 信号として入力し , ECK/TGIN/TIN 信号と して使用するモードです。 このモードに設定した場合に使用する外部端子を表 22.5-10 に示します。 表 22.5-10 使用する外部端子 偶数チャネル 入力端子 使用しない 出力端子 1本 奇数チャネル 1本 使用する外部端子の接続先と入出力信号について表 22.5-11 に示します。 表 22.5-11 外部端子の接続先と入出力信号 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 − 使用しない TIOBn, TIOBn+1 − n=2 532 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 3 ( 他チャネルトリガ共有モード ) のブロックダイヤグラムを図 22.5-4 に 示します。 図 22.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 の接続を表 22.5-12 に示します。 表 22.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 * : 他のチャネルの 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 533 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 4 ( タイマ起動 / 停止モード ) 時の動作 22.5.5 偶数チャネルで奇数チャネルの起動 / 停止を制御できるモードです。 奇数チャネルは, 偶数チャネルの出力波形 (TOUT信号) の立上りエッジで起動し, 立下りエッ ジで停止します。 このモードに設定した場合に使用する外部端子を表 22.5-13 に示します。 表 22.5-13 使用する外部端子 偶数チャネル 奇数チャネル 入力端子 1本 使用しない 出力端子 1本 1本 端子の機能について表 22.5-14 に示します。 表 22.5-14 端子の機能 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 TIOBn 入力 偶数チャネルの ECK/TGIN/ 偶数チャネルに入力し , 次のいず れかとして使用 TIN* ・外部クロック (ECK 信号 ) ・外部起動トリガ (TGIN 信号 ) ・測定する波形 (TIN 信号 ) TIOBn+1 − − 使用しない n=0, 2 * : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の設定によって異なります。 入出力モード 4 ( タイマ起動 / 停止モード ) のブロックダイヤグラムを図 22.5-5 に示し ます。 図 22.5-5 入出力モード 4 ( タイマ起動 / 停止モード ) のブロックダイヤグラム COUT ベースタイマ ch.n+1 ベースタイマ ch.n 534 DTRG ECK TGIN TIN TOUT ECK TGIN TIN TOUT FUJITSU SEMICONDUCTOR LIMITED TIOBn+1 TIOAn+1 TIOBn TIOAn CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 4 の接続を表 22.5-15 に示します。 表 22.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 < 注意事項 > • ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットで奇数チャネ ルのトリガ入力エッジを立上りエッジ (EGS1, EGS0=01) に設定してください。 • 奇数チャネルは , DTRG 信号で立下りエッジが検出されると動作を停止します。 入出力モード 4 ( タイマ起動 / 停止モード ) 設定時の動作を ch.0 と ch.1 を PWM タイマ として使用する場合の設定を例にとって図 22.5-6 に示します。 レジスタ (ch.0) 設定値 レジスタ (ch.1) 設定値 ベースタイマ 0 周期設定レジス 0010H タ (BT0PCSR) ベースタイマ 1 周期設定レジス 0002H タ (BT1PCSR) ベースタイマ 0 デューティ設定 0009H レジスタ (BT0PDUT) ベースタイマ 1 デューティ設定 0001H レジスタ (BT1PDUT) ベースタイマ 0 タイマ制御レジ 0013H スタ (BT0TMCR) ベースタイマ 1 タイマ制御レジ 0112H スタ (BT1TMCR) 図 22.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED ch.1 は停止時の タイマ値を保持 ch.1 停止 535 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 5 ( 同時ソフト起動モード ) 時の動作 22.5.6 同時ソフト起動レジスタ (BTSSSR) で複数のチャネルを同時に起動できるモードです。 同時ソフト起動レジスタ (BTSSSR) で"1"を書き込んだビットに対応するチャネルがす べて同時に起動します。 このモードに設定した場合に使用する外部端子を表 22.5-16 に示します。 表 22.5-16 使用する外部端子 偶数チャネル 入力端子 使用しない 出力端子 1本 奇数チャネル 1本 使用する外部端子の接続先と入出力信号について表 22.5-17 に示します。 表 22.5-17 外部端子の接続先と入出力信号 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 TIOBn, TIOBn+1 − − 使用しない n=0, 2 入出力モード 5 ( 同時ソフト起動モード ) のブロックダイヤグラムを図 22.5-7 に示しま す。 図 22.5-7 入出力モード 5 ( 同時ソフト起動モード ) のブロックダイヤグラム ソフト起動信号 (SSSRn+1 ビット ) ベースタイマ ch.n+1 ECK TGIN TIN TOUT TIOBn+1 ECK TGIN TIN TOUT TIOBn ソフト起動信号 (SSSRn ビット ) ベースタイマ ch.n 536 FUJITSU SEMICONDUCTOR LIMITED TIOAn+1 TIOAn CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 5 の接続を表 22.5-18 に示します。 表 22.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 BTSSSR : 同時ソフト起動レジスタ (BTSSSR) 同時ソフト起動レジスタ (BTSSSR) で "1" を書き込むと , 書き込んだビットに対応する チャネルに立上りエッジが入力 (ECK/TGIN/TIN 信号 ) されます。 < 注意事項 > ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットでトリガ入力エッ ジを立上りエッジ (EGS1, EGS0=01) に設定してください。 22.5.7 入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) 時の動作 偶数チャネルで奇数チャネルの起動 / 停止を制御できるモードです。 偶数チャネルは , 同時ソフト起動レジスタ (BTSSSR) に "1" を書き込んで起動します。 奇数チャネルは , 偶数チャネルの出力波形 (TOUT 信号 ) で立上りエッジを検出すると起動し , 立下りエッジを検出すると停止します。 このモードに設定した場合に使用する外部端子を表 22.5-19 に示します。 表 22.5-19 使用する外部端子 入力端子 偶数チャネル 使用しない 出力端子 1本 奇数チャネル 1本 使用する外部端子の接続先と入出力信号について表 22.5-20 に示します。 表 22.5-20 外部端子の接続先と入出力信号 端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 TIOBn, TIOBn+1 − − 使用しない n=0, 2 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 537 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 6 ( ソフト起動タイマ起動 / 停止モード ) のブロックダイヤグラムを図 22.5-8 に示します。 図 22.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 の接続を表 22.5-21 に示します。 表 22.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 BTSSSR : 同時ソフト起動レジスタ (BTSSSR) 同時ソフト起動レジスタ (BTSSSR) で起動したい偶数チャネルに対応するビットに "1" を書き込むと , 対応チャネルに立上りエッジが入力 (ECK, TGIN, TIN 信号 ) されます。 ch.n の起動 / 停止タイミングは入出力モード 4 と同じです。 < 注意事項 > 538 • ベースタイマ x タイマ制御レジスタ (BTxTMCR) の EGS1, EGS0 ビットでトリガ入力 エッジを立上りエッジ (EGS1, EGS0=01) に設定してください。 • 奇数チャネルは , DTRG 信号で立下りエッジが検出されると動作を停止します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 7 ( タイマ起動モード ) 時の動作 22.5.8 偶数チャネルの出力波形 (TOUT 信号 ) を奇数チャネルの入力信号 (ECK/TGIN/TIN 信号 ) とし て使用するモードです。 このモードに設定した場合に使用する外部端子を表 22.5-22 に示します。 表 22.5-22 使用する外部端子 偶数チャネル 奇数チャネル 入力端子 1本 使用しない 出力端子 1本 1本 使用する外部端子の接続先と入出力信号について表 22.5-23 に示します。 表 22.5-23 外部端子の接続先と入出力信号 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 TIOBn 入力 偶数チャネルの ECK/TGIN/ 偶数チャネルに入力し , 次のいず れかとして使用 TIN* ・外部クロック (ECK 信号 ) ・外部起動トリガ (TGIN 信号 ) ・測定する波形 (TIN 信号 ) TIOBn+1 − − 使用しない n=0, 2 * : 入力信号の使用方法 (ECK/TGIN/TIN 信号 ) は , ベースタイマ x タイマ制御レジスタ (BTxTMCR) の設定によって異なります。 入出力モード7 (タイマ起動モード) 時のブロックダイヤグラムを図 22.5-9に示します。 図 22.5-9 入出力モード 7 ( タイマ起動モード ) 時のブロックダイヤグラム COUT ベースタイマ ch.n+1 ベースタイマ ch.n CM71-10158-1 ECK TGIN TIN TOUT TIOBn+1 ECK TGIN TIN TOUT TIOBn FUJITSU SEMICONDUCTOR LIMITED TIOAn+1 TIOAn 539 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 7 の接続を表 22.5-24 に示します。 表 22.5-24 入出力モード 7 の接続 接続元 ch.n の TOUT 信号 接続先 ・TIOAn 端子から出力 ・TIN/TGIN/ECK 信号として ch.n+1 に入力 ・COUT 信号として他のチャネルに出力 TIOBn 端子からの入力信号 TIN/TGIN/ECK 信号として ch.n に入力 ch.n+1 の TOUT 信号 TIOAn+1 端子から出力 n=0, 2 ch.n の起動タイミングは入出力モード 4 と同じです。 22.5.9 入出力モード 8 ( 他チャネルトリガ共有タイマ起動 / 停止モード ) 時の動作 2 チャネル下位側のチャネルの COUT 信号を CIN 信号として入力し , 外部起動トリガ (TGIN 信号 ) として使用するモードです。 このモードに設定した場合に使用する外部端子を表 22.5-25 に示します。 表 22.5-25 使用する外部端子 偶数チャネル 入力端子 使用しない 出力端子 1本 奇数チャネル 1本 使用する外部端子の接続先と入出力信号について表 22.5-26 に示します。 表 22.5-26 外部端子の接続先と入出力信号 外部端子 入出力 接続先 ( 内部信号 ) 入出力信号 TIOAn 出力 偶数チャネルの TOUT 偶数チャネルの波形を出力 TIOAn+1 出力 奇数チャネルの TOUT 奇数チャネルの波形を出力 TIOBn, TIOBn+1 − − 使用しない n=2 540 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ 入出力モード 8 ( 他チャネルトリガ共有タイマ起動 / 停止モード ) のブロックダイヤグ ラムを図 22.5-10 に示します。 図 22.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 の接続を表 22.5-27 に示します。 表 22.5-27 入出力モード 8 の接続 接続元 接続先 ch.n の TOUT 信号 TIOAn 端子から出力 CIN 信号 * ・TIN/TGIN/ECK 信号および DTRG 信号として ch.n と ch.n+1 に入力 ・COUT 信号として他のチャネルに出力 n=2 * : 他のチャネルの 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 541 第 22 章 ベースタイマ 入出力選択機能 22.5 MB91665 シリーズ < 注意事項 > • このモードに設定したチャネルは , 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) した場合を除き ます。 • 542 奇数チャネルは , DTRG 信号で立下りエッジが検出されると動作を停止します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ ベースタイマの概要 , レジスタの構成 / 機能 , およ び動作について説明します。 23.1 ベースタイマの概要 23.2 ベースタイマのブロックダイヤグラム 23.3 ベースタイマのレジスタ 23.4 ベースタイマの動作 23.5 32 ビットモード動作 23.6 ベースタイマの使用上の注意 23.7 ベースタイマ割込み 23.8 ベースタイマの機能別説明 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 543 第 23 章 ベースタイマ 23.1 23.1 MB91665 シリーズ ベースタイマの概要 ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により , 16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/ 32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。設 定可能な各種タイマ機能の概要を以下に示します。本シリーズは 16ch 搭載していま す。 ■ モード設定と各種タイマ機能の関係 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 種類 ( 立上りエッジ , 立下りエッジ , 両 エッジ検出 ) から選択できます。 544 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.1 MB91665 シリーズ ■ 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 545 第 23 章 ベースタイマ 23.2 MB91665 シリーズ ベースタイマのブロックダイヤグラム 23.2 ベースタイマの各モード別にブロックダイヤグラムを示します。 ■ 16 ビット PWM タイマのブロックダイヤグラム 図 23.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 タイマのブロックダイヤグラム 図 23.2-2 16 ビット PPG タイマのブロックダイヤグラム BTxPRLL 16 CKS 3 BTxPRLH 20 PCLK 27 28 ベースタイマ 入出力選択部から OSEL PPG (TOUT ECK EGS ベースタイマ 入出力選択部へ PMSK 2 UDIE STRG CTEN MDSE CTEN TGIN ベースタイマ 入出力選択部から BTxPRLL BTxPRLH BTxTMR 546 TGIE xL xH x BTxPRLL) BTxPRLH) BTxTMR FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.2 MB91665 シリーズ ■ 16/32 ビットリロードタイマ (ch.1, ch.0) のブロックダイヤグラム 図 23.2-3 16/32 ビットリロードタイマ (ch.1, ch.0) のブロックダイヤグラム 16ビットモード OSEL T32=0 BTxPCSR (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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 547 第 23 章 ベースタイマ 23.2 MB91665 シリーズ ( 続き ) 32ビットモード ch.1 BT1PCSR 16 BT1TMR) T32=0 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 548 1 1 0 0 BT1PCSR BT1TMR BT0PCSR BT0TMR FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.2 MB91665 シリーズ <注意事項> • 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間のみで可能です。これ以外の 組合せにおける 32 ビット動作はできません。 • 本機能は同時起動をサポートしています。詳細は「第 22 章 ベースタイマ 入出力選択 機能」を参照してください。 ■ 16/32 ビット PWC タイマ (ch.1, ch.0) のブロックダイヤグラム 図 23.2-4 16/32 ビット PWC タイマ (ch.1, ch.0) のブロックダイヤグラム 16ビットモード BTxDTBF CKS T32=0 3 16 20 PCLK 27 28 MDSE MDSE T32 EGS 3 OVIE CTEN TIN ベースタイマ 入出力選択部から CTEN EDIE BTxDTBF x BTxDTBF ( 続く ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 549 第 23 章 ベースタイマ 23.2 MB91665 シリーズ ( 続き ) 32ビットモード ch.1 BT1DTBF 16 (BT1TMR) 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 との間のみで可能です。これ以外の 組合せにおける 32 ビット動作はできません。 • 本機能は同時起動をサポートしています。詳細は「第 22 章 ベースタイマ 入出力選択 機能」を参照してください。 550 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.3 MB91665 シリーズ 23.3 ベースタイマのレジスタ ベースタイマのレジスタ一覧と各モード別のビット構成を示します。 ■ ベースタイマのレジスタ一覧 表 23.3-1 16 ビット PWM タイマのレジスタ一覧 チャネル レジスタ略称 レジスタ名 BTSSSR 共通 同時ソフト起動レジスタ 0 ∼ 3 共通 BTSEL0123 入出力選択レジスタ 0123 22.4.1 0 1 2 3 CM71-10158-1 参照先 22.4.2 BT0TMCR ベースタイマ 0 タイマ制御レジスタ 23.8.1.1 BT0STC ベースタイマ 0 ステータス制御レジスタ 23.8.1.1 BT0PCSR ベースタイマ 0 周期設定レジスタ 23.8.1.2 BT0PDUT ベースタイマ 0 デューティ設定レジスタ 23.8.1.3 BT0TMR ベースタイマ 0 タイマレジスタ 23.8.1.4 BT1TMCR ベースタイマ 1 タイマ制御レジスタ 23.8.1.1 BT1STC ベースタイマ 1 ステータス制御レジスタ 23.8.1.1 BT1PCSR ベースタイマ 1 周期設定レジスタ 23.8.1.2 BT1PDUT ベースタイマ 1 デューティ設定レジスタ 23.8.1.3 BT1TMR ベースタイマ 1 タイマレジスタ 23.8.1.4 BT2TMCR ベースタイマ 2 タイマ制御レジスタ 23.8.1.1 BT2STC ベースタイマ 2 ステータス制御レジスタ 23.8.1.1 BT2PCSR ベースタイマ 2 周期設定レジスタ 23.8.1.2 BT2PDUT ベースタイマ 2 デューティ設定レジスタ 23.8.1.3 BT2TMR ベースタイマ 2 タイマレジスタ 23.8.1.4 BT3TMCR ベースタイマ 3 タイマ制御レジスタ 23.8.1.1 BT3STC ベースタイマ 3 ステータス制御レジスタ 23.8.1.1 BT3PCSR ベースタイマ 3 周期設定レジスタ 23.8.1.2 BT3PDUT ベースタイマ 3 デューティ設定レジスタ 23.8.1.3 BT3TMR ベースタイマ 3 タイマレジスタ 23.8.1.4 FUJITSU SEMICONDUCTOR LIMITED 551 第 23 章 ベースタイマ 23.3 MB91665 シリーズ 表 23.3-2 16 ビット PPG タイマのレジスタ一覧 チャネル レジスタ略称 レジスタ名 BTSSSR 共通 同時ソフト起動レジスタ BTSEL0123 0 ∼ 3 共通 入出力選択レジスタ 0123 22.4.1 0 1 2 3 552 参照先 22.4.2 BT0TMCR ベースタイマ 0 タイマ制御レジスタ 23.8.2.1 BT0STC ベースタイマ 0 ステータス制御レジスタ 23.8.2.1 BT0PRLL ベースタイマ 0L 幅設定リロードレジスタ 23.8.2.2 BT0PRLH ベースタイマ 0H 幅設定リロードレジスタ 23.8.2.3 BT0TMR ベースタイマ 0 タイマレジスタ 23.8.2.4 BT1TMCR ベースタイマ 1 タイマ制御レジスタ 23.8.2.1 BT1STC ベースタイマ 1 ステータス制御レジスタ 23.8.2.1 BT1PRLL ベースタイマ 1L 幅設定リロードレジスタ 23.8.2.2 BT1PRLH ベースタイマ 1H 幅設定リロードレジスタ 23.8.2.3 BT1TMR ベースタイマ 1 タイマレジスタ 23.8.2.4 BT2TMCR ベースタイマ 2 タイマ制御レジスタ 23.8.2.1 BT2STC ベースタイマ 2 ステータス制御レジスタ 23.8.2.1 BT2PRLL ベースタイマ 2L 幅設定リロードレジスタ 23.8.2.2 BT2PRLH ベースタイマ 2H 幅設定リロードレジスタ 23.8.2.3 BT2TMR ベースタイマ 2 タイマレジスタ 23.8.2.4 BT3TMCR ベースタイマ 3 タイマ制御レジスタ 23.8.2.1 BT3STC ベースタイマ 3 ステータス制御レジスタ 23.8.2.1 BT3PRLL ベースタイマ 3L 幅設定リロードレジスタ 23.8.2.2 BT3PRLH ベースタイマ 3H 幅設定リロードレジスタ 23.8.2.3 BT3TMR ベースタイマ 3 タイマレジスタ 23.8.2.4 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.3 MB91665 シリーズ 表 23.3-3 16/32 ビットリロードタイマのレジスタ一覧 チャネル 0 ∼ 3 共通 レジスタ略称 レジスタ名 BTSSSR 同時ソフト起動レジスタ BTSEL0123 入出力選択レジスタ 0123 22.4.1 0 BT0TMCR ベースタイマ 0 タイマ制御レジスタ 23.8.3.1 BT0STC ベースタイマ 0 ステータス制御レジスタ 23.8.3.1 BT0PCSR ベースタイマ 0 周期設定レジスタ 23.8.3.2 BT0TMR ベースタイマ 0 タイマレジスタ 23.8.3.3 BT1TMCR ベースタイマ 1 タイマ制御レジスタ 23.8.3.1 BT1STC ベースタイマ 1 ステータス制御レジスタ 23.8.3.1 BT1PCSR ベースタイマ 1 周期設定レジスタ 23.8.3.2 BT1TMR ベースタイマ 1 タイマレジスタ 23.8.3.3 BT2TMCR ベースタイマ 2 タイマ制御レジスタ 23.8.3.1 BT2STC ベースタイマ 2 ステータス制御レジスタ 23.8.3.1 BT2PCSR ベースタイマ 2 周期設定レジスタ 23.8.3.2 BT2TMR ベースタイマ 2 タイマレジスタ 23.8.3.3 BT3TMCR ベースタイマ 3 タイマ制御レジスタ 23.8.3.1 BT3STC ベースタイマ 3 ステータス制御レジスタ 23.8.3.1 BT3PCSR ベースタイマ 3 周期設定レジスタ 23.8.3.2 BT3TMR ベースタイマ 3 タイマレジスタ 23.8.3.3 共通 1 2 3 参照先 22.4.2 表 23.3-4 16/32 ビット PWC タイマのレジスタ一覧 チャネル レジスタ略称 レジスタ名 BTSSSR 共通 同時ソフト起動レジスタ BTSEL0123 0 ∼ 3 共通 入出力選択レジスタ 0123 参照先 22.4.2 0 1 2 3 CM71-10158-1 22.4.1 BT0TMCR ベースタイマ 0 タイマ制御レジスタ 23.8.4.1 BT0STC ベースタイマ 0 ステータス制御レジスタ 23.8.4.1 BT0DTBF ベースタイマ 0 データバッファレジスタ 23.8.4.2 BT1TMCR ベースタイマ 1 タイマ制御レジスタ 23.8.4.1 BT1STC ベースタイマ 1 ステータス制御レジスタ 23.8.4.1 BT1DTBF ベースタイマ 1 データバッファレジスタ 23.8.4.2 BT2TMCR ベースタイマ 2 タイマ制御レジスタ 23.8.4.1 BT2STC ベースタイマ 2 ステータス制御レジスタ 23.8.4.1 BT2DTBF ベースタイマ 2 データバッファレジスタ 23.8.4.2 BT3TMCR ベースタイマ 3 タイマ制御レジスタ 23.8.4.1 BT3STC ベースタイマ 3 ステータス制御レジスタ 23.8.4.1 BT3DTBF ベースタイマ 3 データバッファレジスタ 23.8.4.2 FUJITSU SEMICONDUCTOR LIMITED 553 第 23 章 ベースタイマ 23.4 23.4 MB91665 シリーズ ベースタイマの動作 ベースタイマの動作について説明します。 ■ ベースタイマの動作 ● リセットモード このモードの設定時に , ベースタイマのマクロをリセットした状態 ( 各レジスタは初期 値 ) とします。別のタイマ機能や , 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" 出力のパルス出力になります。 554 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.4 MB91665 シリーズ ● 32 ビットリロードタイマ 基本動作は 16 ビットリロードタイマと同じですが , 偶数チャネルと奇数チャネルの 2 チャネル使用で 32 ビットリロードタイマとして動作します。その際 , 偶数チャネルは 下位 16 ビットタイマ動作となり , 奇数チャネルは上位 16 ビットタイマ動作となります が , 割込み制御 , 出力波形制御は偶数チャネルの設定に従います。周期を設定する場合 は , 先に上位レジスタ ( 奇数チャネル ) に書き込んだ後に下位レジスタ ( 偶数チャネル ) に書き込むようにします。 タイマ値を読み出す場合は , 先に下位レジスタ ( 偶数チャネル ) を読み出した後に上位 レジスタ ( 奇数チャネル ) を読み出すようにします。 <注意事項> • 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間のみで可能です。これ以外の 組合せにおける 32 ビット動作はできません。 • 本機能は同時起動をサポートしています。詳細は「第 22 章 ベースタイマ 入出力選択 機能」を参照してください。 ● 16 ビット PWC タイマ PWC タイマは , 設定した測定開始エッジの入力で 16 ビットアップカウンタを起動させ , 測定終了エッジの検出でカウンタを停止します。この間のカウント値がパルス幅とし てデータバッファレジスタに格納されます。 ● 32 ビット PWC タイマ 基本動作は 16 ビット PWC タイマと同じですが , 偶数チャネルと奇数チャネルの 2 チャ ネル使用で 32 ビット PWC タイマとして動作します。その際 , 偶数チャネルは下位 16 ビットカウント動作となり , 奇数チャネルは上位 16 ビットカウント動作となりますが , 割込み制御は偶数チャネルの設定に従います。測定値 , またはカウント値を読み出す場 合は , 先に下位レジスタ ( 偶数チャネル ) を読み出した後に上位レジスタ ( 奇数チャネ ル ) を読み出すようにします。 <注意事項> • 32 ビット動作は ch.0 と ch.1 との間 , ch.2 と ch.3 との間のみで可能です。これ以外の 組合せにおける 32 ビット動作はできません。 • 本機能は同時起動をサポートしています。詳細は「第 22 章 ベースタイマ 入出力選択 機能」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 555 第 23 章 ベースタイマ 23.5 23.5 MB91665 シリーズ 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 ビットモードでの設定を行います。 556 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.5 MB91665 シリーズ ■ 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 との間のみで可能です。これ以外の 組合せにおける 32 ビット動作はできません。 • 本機能は同時起動をサポートしています。詳細は「第 22 章 ベースタイマ 入出力選択 機能」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 557 第 23 章 ベースタイマ 23.6 23.6 MB91665 シリーズ ベースタイマの使用上の注意 ベースタイマの使用上の注意を以下に示します。 ■ 各タイマの使用上で共通する注意 ● プログラムによる設定上の注意 • 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" 幅設定をするようにします。 • ワンショットモードでカウント終了時に再起動を検出した場合はカウント値をリ ロードして再起動を開始します。 558 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.6 MB91665 シリーズ ■ PWC タイマの使用上の注意 ● プログラムによる設定上の注意 • カウント動作許可ビット (CTEN) に "1" 書込みでカウンタがクリアされますので , 起 動許可前にカウンタ中にあったデータは無効になります。 • システムリセット・リセットモードから PWC モードの設定 (FMD=100B) と測定開 始設定 (CTEN=1) を同時にした場合 , その直前の測定信号の状態によって動作する 場合があります。 • 連続測定モードにおいて , 再起動を設定したときに同時に測定開始エッジを検出し た場合は直ちにカウントを "0001H" から開始します。 • カウント動作を開始した後に再起動を行う場合は , そのタイミングによっては以下 に示すようなことが起こり得ます。 - パルス幅単発測定モード時 , 測定終了エッジと同時であった場合 再起動を行って測定開始エッジ待ち状態となりますが , 測定終了フラグ (EDIR) は セットされます。 - パルス幅連続測定モード時 , 測定終了エッジと同時であった場合 再起動を行って測定開始エッジ待ち状態となりますが , 測定終了フラグ (EDIR) は セットされ , その時点での測定結果は BTxDTBF に転送されます。 以上のように , 動作中の再起動時には , フラグの動作に注意して割込み制御などを行う ようにしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 559 第 23 章 ベースタイマ 23.7 23.7 MB91665 シリーズ ベースタイマ割込み ベースタイマの各機能での割込み要求ビット , 割込み許可ビットと割込み要因をまと めた一覧を示します。 ■ 機能ごとの割込み制御ビットと割込み要因 機能ごとの割込み制御ビットと割込み要因を表 23.7-1 に示します。 表 23.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 タイマ機能 560 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 23.8 ベースタイマの機能別説明 ベースタイマの各機能について説明します。 ■ ベースタイマの機能 ● PWM 機能 ● PPG 機能 ● リロードタイマ機能 ● PWC 機能 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 561 第 23 章 ベースタイマ 23.8 23.8.1 MB91665 シリーズ PWM 機能 ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により , 16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/ 32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。 PWM を設定したときのタイマ機能の説明を示します。 • PWM タイマ選択時のタイマ制御レジスタ (BTxTMCR) • PWM 周期設定レジスタ (BTxPCSR) • PWM デューティ設定レジスタ (BTxPDUT) • タイマレジスタ (BTxTMR) • 16 ビット PWM タイマ動作 • ワンショット動作 • 割込み要因とタイミングチャート • 出力波形 562 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ PWM タイマ選択時のタイマ制御レジスタ (BTxTMCR) 23.8.1.1 タイマ制御レジスタ (BTxTMCR) は , PWM タイマを制御します。PWM タイマ動作 中に書換え不可能なビットがありますので注意してください。 ■ タイマ制御レジスタ (BTxTMCR 上位バイト ) 図 23.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 :リード / ライト可能 :初期値 CM71-10158-1 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 563 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" 書込みと同時に変更するこ とは可能です。 564 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ タイマ制御レジスタ (BTxTMCR 下位バイト ) 図 23.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 :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 初期値: 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 設定禁止 565 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" です。 ( 注意事項 ) 566 CTEN ビットと STRG ビットに同時に "1" を書き込ん だ場合でも , ソフトウェアトリガが発生します。 EGS1, EGS0 の設定にかかわらず , STRG ビットに "1" を書き込むとソフトウェアトリガは有効になります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ ステータス制御レジスタ (BTxSTC) 図 23.8-3 ステータス制御レジスタ (BTxSTC) R/W ― 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 :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 UDIR アンダフロー割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 DTIR デューティ一致割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 TGIR トリガ割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 UDIE アンダフロー割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 DTIE デューティ一致割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 TGIE トリガ割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 FUJITSU SEMICONDUCTOR LIMITED 567 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" になります。 568 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ PWM 周期設定レジスタ (BTxPCSR) 23.8.1.2 PWM 周期設定レジスタ (BTxPCSR) は , 周期を設定するためのバッファ付きレジス タです。タイマレジスタへの転送は , 起動時とアンダフロー時に行われます。 ■ PWM 周期設定レジスタ (BTxPCSR) のビット構成 図 23.8-4 に , PWM 周期設定レジスタ (BTxPCSR) のビット構成を示します。 図 23.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 機 能の設定後に周期設定をしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 569 第 23 章 ベースタイマ 23.8 MB91665 シリーズ PWM デューティ設定レジスタ (BTxPDUT) 23.8.1.3 PWM デューティ設定レジスタ (BTxPDUT) はデューティを設定するためのバッファ 付きレジスタです。バッファからの転送は , アンダフローで行われます。 ■ PWM デューティ設定レジスタ (BTxPDUT) のビット構成 図 23.8-5 に , PWM デューティ設定レジスタ (BTxPDUT) のビット構成を示します。 図 23.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" を出力します。 BTxPSCR < BTxPDUT となるような値を設定しないでください。PWM 出力は不定と なります。 • BTxPDUT レジスタは 16 ビットデータでアクセスしてください。 • BTxPDUT レジスタは BTxTMCR レジスタの FMD2, FMD1, FMD0 ビットで PWM 機能 の設定後にデューティ設定してください。 570 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ タイマレジスタ (BTxTMR) 23.8.1.4 タイマレジスタ (BTxTMR) は , 16 ビットダウンカウンタの値を読み出すことができま す。 ■ タイマレジスタ (BTxTMR) のビット構成 図 23.8-6 に , PWM タイマレジスタ (BTxTMR) のビット構成を示します。 図 23.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 ビットデータでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 571 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 16 ビット PWM タイマ動作 23.8.1.5 PWM タイマ動作では , トリガの検出時より設定周期の波形を単発 , または連続して 出力することができます。 出力パルスの周期は , BTxPCSR 値を変えることにより制御することができます。 また , デューティ比は , BTxPDUT 値を変えることにより制御することができます。 BTxPCSR にデータを書き込んだ後は , 必ず BTxPDUT への書込みを行ってください。 ■ 連続動作 ● 再起動禁止の場合 (RTGEN=0) 図 23.8-7 PWM 動作のタイミングチャート ( 再起動禁止の場合 ) 立上りエッジ検出 トリガは無視されます トリガ m n o PWM 出力波形 ① ② ①= T(n+1) ms ②= T(m+1) ms T :カウントクロック周期 m:BTxPCSR 値 n :BTxPDUT 値 ● 再起動許可の場合 (RTGEN=1) 図 23.8-8 PWM 動作のタイミングチャート ( 再起動許可の場合 ) 立上りエッジ検出 トリガにより再起動 トリガ m n o ① PWM出力波形 ② ①= T(n+1) ms ②= T(m+1) ms 572 T :カウントクロック周期 m:BTxPCSR 値 n :BTxPDUT 値 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ワンショット動作 23.8.1.6 ワンショット動作では , トリガにより任意の幅の単一パルスを出力することができま す。再起動許可の場合は , 動作中にエッジを検出するとカウンタをリロードします。 ■ ワンショット動作 ● 再起動禁止の場合 (RTGEN=0) 図 23.8-9 ワンショット動作のタイミングチャート ( トリガ再起動禁止 ) 立上りエッジ検出 トリガは無視されます トリガ m n o PWM出力波形 ① ② ①= T(n+1) ms ②= T(m+1) ms T :カウントクロック周期 m:BTxPCSR 値 n :BTxPDUT 値 ● 再起動許可の場合 (RTGEN=1) 図 23.8-10 ワンショット動作のタイミングチャート ( トリガ再起動許可 ) 立上りエッジ検出 トリガにより再起動 トリガ m n o PWM出力波形 ① ② ①= T(n+1) ms ②= T(m+1) ms CM71-10158-1 T :カウントクロック周期 m:BTxPCSR 値 n :BTxPDUT 値 FUJITSU SEMICONDUCTOR LIMITED 573 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 割込み要因とタイミングチャート 23.8.1.7 割込み要因とタイミングチャートについて示します。 ■ 割込み要因とタイミングチャート (PWM 出力 : 通常極性 ) トリガが入力されてカウンタ値がロードされるまで , ソフトウェアトリガ時は T, 外部 トリガ時は 2T ∼ 3T (T: 周辺クロック (PCLK) サイクル ) を必要とします。 図 23.8-11 に , 周期設定値= 3, デューティ値= 1 の場合の割込み要因とタイミング チャートを示します。 図 23.8-11 PWM タイマの割込み要因とタイミングチャート トリガ 2T~3T(外部トリガ) ロード カウントクロック カウント値 XXXXH 0003H 0002H 0001H 0000H 0003H 0002H PWM出力波形 割込み 574 起動エッジ デューティ一致 アンダフロー TGIR DTIR UDIR FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 出力波形 23.8.1.8 PWM 出力について示します。 ■ PWM 出力オール "L" またはオール "H" の出力方法 図 23.8-12 に PWM 出力をオール "L" に , 図 23.8-13 にオール "H" にする出力方法を示し ます。 図 23.8-12 PWM 出力をオール "L" レベルにする例 アンダフロー割込み デューティ値 0002H 0001H 0000H XXXXH PWM出力波形 デューティ値を小さく していきます アンダフロー割込みでPMSKに “1”を設定します。設定した周期から オール“L”レベルの出力波形になります。 図 23.8-13 PWM 出力をオール "H" レベルにする例 デューティ一致割込み PWM出力波形 デューティ値を大きく していきます デューティ一致割込みでデューティ値を 周期設定値と同じにすると, 次の周期で オール“H”レベルの出力波形になります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 575 第 23 章 ベースタイマ 23.8 23.8.2 MB91665 シリーズ PPG 機能 ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により , 16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/ 32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。 PPG を設定したときのタイマ機能の説明を示します。 • PPG タイマ選択時のタイマ制御レジスタ (BTxTMCR) • "L" 幅設定リロードレジスタ (BTxPRLL) • "H" 幅設定リロードレジスタ (BTxPRLH) • タイマレジスタ (BTxTMR) • 16 ビット PPG タイマ動作 • 連続動作 • ワンショット動作 • 割込み要因とタイミングチャート 576 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ PPG タイマ選択時のタイマ制御レジスタ (BTxTMCR) 23.8.2.1 タイマ制御レジスタ (BTxTMCR) は , PPG タイマを制御します。PPG タイマ動作中 に書換え不可能なビットがありますので注意してください。 ■ タイマ制御レジスタ (BTxTMCR 上位バイト ) 図 23.8-14 タイマ制御レジスタ (BTxTMCR 上位バイト ) bit 15 bit 14 bit 13 bit 12 CKS0 RTGEN − CKS2 CKS1 − R/W R/W R/W bit 11 R/W bit 10 bit 9 bit 8 初期値: PMSK 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 外部クロック ( 両エッジイベント ) :リード / ライト可能 :初期値 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 577 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" 書込みと同時に変更することは 可能です。 578 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ タイマ制御レジスタ (BTxTMCR 下位バイト ) 図 23.8-15 タイマ制御レジスタ (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 :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 初期値: 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 設定禁止 579 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" です。 ( 注意事項 ) 580 CTEN ビットと STRG ビットに同時に "1" を書き込ん だ場合でも , ソフトウェアトリガが発生します。 EGS1, EGS0 の設定にかかわらず , STRG ビットに "1" を書き込むとソフトウェアトリガは有効になります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ ステータス制御レジスタ (BTxSTC) 図 23.8-16 ステータス制御レジスタ (BTxSTC) R/W ― 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 :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 初期値: 00000000B ( リセット時 ) UDIR アンダフロー割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 TGIR トリガ割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 UDIE アンダフロー割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 TGIE トリガ割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 FUJITSU SEMICONDUCTOR LIMITED 581 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" になります。 582 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ "L" 幅設定リロードレジスタ (BTxPRLL) 23.8.2.2 "L" 幅設定リロードレジスタ (BTxPRLL) は , PPG 出力波形の "L" 幅を設定するため のレジスタです。タイマレジスタへの転送は , 起動トリガ検出時か , "H" 幅カウント 終了時のアンダフローで行われます。 ■ "L" 幅設定リロードレジスタ (BTxPRLL) のビット構成 図 23.8-17 に , "L" 幅設定リロードレジスタ (BTxPRLL) のビット構成を示します。 図 23.8-17 "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" 幅設定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 583 第 23 章 ベースタイマ 23.8 MB91665 シリーズ "H" 幅設定リロードレジスタ (BTxPRLH) 23.8.2.3 "H" 幅設定リロードレジスタ (BTxPRLH) は PPG 出力波形の "H" 幅を設定するため のバッファ付きレジスタです。BTxPRLH からバッファレジスタへの転送は起動ト リガ検出時と "H" 幅カウント終了時のアンダフローで行われ , バッファレジスタか らタイマレジスタへの転送は "L" 幅カウント終了時のアンダフローで行われます。 ■ "H" 幅設定リロードレジスタ (BTxPRLH) のビット構成 図 23.8-18 に , "H" 幅設定リロードレジスタ (BTxPRLH) のビット構成を示します。 図 23.8-18 "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" 幅に設定してください。 584 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ タイマレジスタ (BTxTMR) 23.8.2.4 タイマレジスタ (BTxTMR) は , 16 ビットダウンカウンタの値を読み出すことができま す。 ■ タイマレジスタ (BTxTMR) のビット構成 図 23.8-19 に , PPG タイマレジスタ (BTxTMR) のビット構成を示します。 図 23.8-19 タイマレジスタ (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 ビットデータでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 585 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 16 ビット PPG タイマ動作 23.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 586 H0 L1 FUJITSU SEMICONDUCTOR LIMITED H2 CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 連続動作 23.8.2.6 連続動作では , 各割込み要因のセットタイミングで "L" 幅と "H" 幅を更新すること により , 任意のパルスを連続で出力することができます。再起動許可の場合は , 動作 中にエッジを検出するとカウンタをリロードします。 ■ 連続動作 ● 再起動禁止の場合 (RTGEN=0) 図 23.8-20 PPG 動作のタイミングチャート ( 再起動禁止の場合 ) 立上りエッジ検出 トリガは無視されます トリガ m n o PPG出力波形 ① ② 起動エッジ 割込み アンダフロー アンダフロー TGIR UDIR UDIR ①= T(m+1) ms ②= T(n+1) ms T :カウントクロック周期 m:BTxPRLL 値 n :BTxPRLH 値 ● 再起動許可の場合 (RTGEN=1) 図 23.8-21 PPG 動作のタイミングチャート ( 再起動許可の場合 ) 立上りエッジ検出 トリガにより再起動 トリガ m n o PPG出力波形 ② ①= T(m+1) ms ②= T(n+1) ms CM71-10158-1 ① T :カウントクロック周期 m:BTxPRLL 値 n :BTxPRLH 値 FUJITSU SEMICONDUCTOR LIMITED 587 第 23 章 ベースタイマ 23.8 23.8.2.7 MB91665 シリーズ ワンショット動作 ワンショット動作では , トリガにより任意の幅の単一パルスを出力することができま す。再起動許可の場合は , 動作中にエッジを検出するとカウンタをリロードします。 ■ ワンショット動作 ● 再起動禁止の場合 (RTGEN=0) 図 23.8-22 ワンショット動作のタイミングチャート ( トリガ再起動禁止 ) 立上りエッジ検出 トリガは無視されます トリガ m n o PPG出力波形 ① ② ①= T(m+1) ms ②= T(n+1) ms T :カウントクロック周期 m:BTxPRLL 値 n :BTxPRLH 値 ● 再起動許可の場合 (RTGEN=1) 図 23.8-23 ワンショット動作のタイミングチャート ( トリガ再起動許可 ) 立上りエッジ検出 トリガにより再起動 トリガ m n o PPG出力波形 ② ①= T(m+1) ms ②= T(n+1) ms 588 ① T :カウントクロック周期 m:BTxPRLL 値 n :BTxPRLH 値 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ リロード値とパルス幅の関係 16 ビット長のリロードレジスタに書かれた値を+ 1 した値に , カウントクロックの周 期を掛けた値が出力されるパルス幅となります。したがって , リロードレジスタ値が "0000H" のときはカウントクロック 1 周期のパルス幅になります。また , リロードレジ スタ値が "FFFFH" のときはカウントクロック 65536 周期のパルス幅になります。パル ス幅の計算式は以下のようになります。 PL = T × (L+1) PL :"L" パルスの幅 PH = T × (H+1) PH:"H" パルスの幅 T :カウントクロック周期 L :BTxPRLL 値 H :BTxPRLH 値 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 589 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 割込み要因とタイミングチャート 23.8.2.8 割込み要因とタイミングチャートについて示します。 ■ 割込み要因とタイミングチャート (PPG 出力 : 通常極性 ) トリガがかかってからカウンタ値がロードされるまで , ソフトウェアトリガ時は T, 外 部トリガ時は 2T ∼ 3T (T: 周辺クロック (PCLK) サイクル ) を必要とします。 割込み要因は PPG 起動トリガ検出時と , "H"レベル出力時のアンダフロー検出時にセッ トされます。 図 23.8-24 に , "L" 幅設定値= 1, "H" 幅設定値= 1 の場合の割込み要因とタイミング チャートを示します。 図 23.8-24 PPG タイマの割込み要因とタイミングチャート トリガ 2T~3T(外部トリガ) ロード カウントクロック カウント値 XXXXH 0001H 0000H 0001H 0000H 0001H 0000H PPG出力波形 割込み 起動エッジ TGIR 590 アンダフロー UDIR FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 23.8.3 リロードタイマ機能 ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により , 16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/ 32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。リ ロードタイマを設定したときのタイマ機能の説明を示します。 • リロードタイマ選択時のタイマ制御レジスタ (BTxTMCR) • 周期設定レジスタ (BTxPCSR) • タイマレジスタ (BTxTMR) • 16 ビットリロードタイマの動作 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 591 第 23 章 ベースタイマ 23.8 MB91665 シリーズ リロードタイマ選択時のタイマ制御レジスタ (BTxTMCR) 23.8.3.1 タイマ制御レジスタ (BTxTMCR) は , タイマの動作制御をします。 ■ タイマ制御レジスタ (BTxTMCR 上位バイト ) 図 23.8-25 タイマ制御レジスタ (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 ― 592 カウントクロック選択ビット 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-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" 書込みと同時に変更することは 可能です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 593 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ タイマ制御レジスタ (BTxTMCR 下位バイト ) 図 23.8-26 タイマ制御レジスタ (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 R/W 00000000B ( リセット時 ) R/W ソフトウェアトリガビット 0 無効 1 ソフトウェアによる起動開始 CTEN カウント動作許可ビット 0 停止 1 動作許可 MDSE モード選択ビット 0 リロードモード 1 ワンショットモード OSEL 出力極性指定ビット 0 通常極性 1 反転極性 FMD2 FMD1 FMD0 594 初期値: 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 設定禁止 T32 32 ビットタイマ選択ビット :リード / ライト可能 0 16 ビットタイマモード :初期値 1 32 ビットタイマモード FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.8-8 タイマ制御レジスタ (BTxTMCR 下位バイト ) (1 / 2) ビット名 機能 • 32 ビットタイマ機能を選択するビットです。 • FMD2, FMD1, FMD0 ビットに "011B" を設定して , リロードタイマ機 bit7 T32: 32 ビット タイマ選択 ビット 能を選択している場合 , T32 ビットを "1" に設定すると 32 ビットタ イマモードになります。 • 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN ビットへの "1" 書込みと同時に変更することは可能です (「23.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 CTEN: カウント動作 許可ビット CM71-10158-1 • ダウンカウンタの動作を許可するビットです。 • カウンタが動作許可状態 (CTEN ビットが "1") のときに "0" を書き込 むとカウンタは停止します。 FUJITSU SEMICONDUCTOR LIMITED 595 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.8-8 タイマ制御レジスタ (BTxTMCR 下位バイト ) (2 / 2) ビット名 機能 • CTEN ビットが "1" のときに STRG ビットに "1" を書き込むとソフト ウェアトリガが発生します。 bit0 STRG: ソフトウェア トリガビット ( 注意事項 ) • STRG ビットの読出し値は常に "0" です。 ( 注意事項 ) 596 CTEN ビットと STRG ビットに同時に "1" を書き込んだ 場合でも , ソフトウェアトリガが発生します。 EGS1, EGS0 の設定にかかわらず , STRG ビットに "1" を 書き込むとソフトウェアトリガは有効になります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ ステータス制御レジスタ (BTxSTC) 図 23.8-27 ステータス制御レジスタ (BTxSTC) R/W ― 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 :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 UDIR アンダフロー割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 TGIR トリガ割込み要求ビット 0 割込み要因のクリア 1 割込み要因の検出 UDIE アンダフロー割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 TGIE トリガ割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 FUJITSU SEMICONDUCTOR LIMITED 597 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" になります。 598 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 周期設定レジスタ (BTxPCSR) 23.8.3.2 周期設定レジスタ (BTxPCSR) は , カウントの初期値を保持するレジスタです。32 ビットモード時には偶数チャネルの場合は下位 16 ビットのカウント初期値となり , 奇数チャネルの場合は上位 16 ビットのカウント初期値となります。リセット時の初 期値は不定です。このレジスタへのアクセスは , 必ず 16 ビットデータ転送命令で 行ってください。 ■ 周期設定レジスタ (BTxPCSR) のビット構成 図 23.8-28 に , 周期設定レジスタ (BTxPCSR) のビット構成を示します。 図 23.8-28 周期設定レジスタ (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 ビットデータ ( 偶 数チャネルのデータ ) にアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 599 第 23 章 ベースタイマ 23.8 MB91665 シリーズ タイマレジスタ (BTxTMR) 23.8.3.3 タイマレジスタ (BTxTMR) は , タイマのカウント値を読み出すことができるレジスタ です。32 ビットモード時には偶数チャネルの場合は下位 16 ビットのカウント値とな り , 奇数チャネルの場合は上位 16 ビットのカウント値となります。初期値は不定で す。 このレジスタの読出しは , 必ず 16 ビットデータ転送命令で行ってください。 ■ タイマレジスタ (BTxTMR) のビット構成 図 23.8-29 に , タイマレジスタ (BTxTMR) のビット構成を示します。 図 23.8-29 タイマレジスタ (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ビットデータ (奇数チャネルのデータ) を読み出してください。 600 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 23.8.3.4 16 ビットリロードタイマの動作 リロードタイマ動作では , カウントクロックに同期して周期設定レジスタに設定す る値からカウントダウンを実行し , カウント値が "0" となったときにカウントを終 了するか , または周期設定を自動でロードしてカウントダウンを停止するまで継続 動作します。 ■ 内部クロック選択時のカウント動作 カウント許可と同時にカウント動作を開始したい場合は , タイマ制御レジスタの CTEN ビットと STRG ビットの両方に "1" を書き込んでください。STRG ビットによるトリガ 入力は , タイマが起動状態のとき (CNTE=1) は動作モードにかかわらず常に有効です。 カウント動作を許可し , ソフトウェアトリガまたは外部トリガでタイマを起動すると , 周期設定レジスタの値をカウンタにロードしてカウントダウンを開始します。 カウンタスタートのトリガがセットされてから周期設定レジスタのデータがカウンタ へロードされるまでに , 1T (T: 周辺クロック (PCLK) サイクル ) の時間がかかります。 図 23.8-30 に , ソフトウェアトリガによるカウンタの起動および動作を示します。 図 23.8-30 内部クロック選択時のカウント動作 ロード カウントクロック カウント値 XXXXH リロード値 -1 -1 CTEN(レジスタ) 1T STRG(レジスタ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 601 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ アンダフロー動作 カウンタの値が "0000H" から "FFFFH" になる場合をアンダフローとしています。した がって , 〔周期設定レジスタの設定値 +1〕カウントでアンダフローが発生します。 アンダフロー発生時に周期設定レジスタ (BTxPCSR) の内容をカウンタへロードして , タイマ制御レジスタ (BTxTMCR) の MDSE ビットが "0" のときはカウント動作を継続 します。MDSE ビットが "1" のときは , ロードしたカウンタ値のまま停止します。 アンダフローによりステータス制御レジスタ (BTxSTC) の UDIR ビットがセットされ , UDIE ビットが "1" のときに割込み要求を発生します。 図 23.8-31 に , アンダフロー動作のタイミングチャートを示します。 図 23.8-31 アンダフロー動作のタイミングチャート [MDSE=0] の場合 ロード カウントクロック カウント値 0000H リロード値 -1 -1 アンダフローセット UDIR [MDSE=1] の場合 ロード カウントクロック カウント値 0000H リロード値 アンダフローセット UDIR 602 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ 入力端子機能の動作 TGIN 端子はトリガ入力として使用することができます。TGIN 端子に有効エッジが入 力されると周期設定レジスタの内容をカウンタにロードしてカウント動作を開始しま す。トリガがかかってから , カウンタ値がロードされるまで , 2T ∼ 3T (T: 周辺クロッ ク (PCLK) サイクル ) を必要とします。 図 23.8-32 に , 有効エッジ指定を立上りエッジにした場合のトリガ入力動作を示します。 図 23.8-32 トリガ入力の動作 TGIN 2T~3T(外部トリガ) ロード カウントクロック カウント値 0000H リロード値 -1 -1 ■ 出力端子機能の動作 TOUT 出力端子は , リロードモード時はアンダフローにより反転するトグル出力とし て , ワンショットモード時はカウント中を示すパルス出力として機能します。出力極 性は , タイマ制御レジスタ (BTxTMCR) の OSEL ビットにより設定できます。OSEL=0 の場合 , トグル出力は初期値が "0" で , ワンショットパルス出力はカウント中 "1" を出 力します。OSEL=1 にすると出力波形は反転します。 図 23.8-33 に , 出力端子機能動作のタイミングチャートを示します。 図 23.8-33 出力端子機能動作のタイミングチャート [MDSE=0, OSEL=0] の場合 CTEN OSEL=1のときは反転 TOUT トリガ アンダフロー [MDSE=1, OSEL=0] の場合 CTEN OSEL=1のときは反転 TOUT トリガ アンダフロー トリガ起動待ち CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 603 第 23 章 ベースタイマ 23.8 23.8.4 MB91665 シリーズ PWC 機能 ベースタイマは , タイマ制御レジスタの FMD2, FMD1, FMD0 ビットの設定により , 16 ビット PWM タイマ , 16 ビット PPG タイマ , 16/32 ビットリロードタイマ , 16/ 32 ビット PWC タイマの中からタイマ機能を 1 つだけ選択することができます。 PWC を設定したときのタイマ機能の説明を示します。 • PWC タイマ選択時のタイマ制御レジスタ (BTxTMCR) • データバッファレジスタ (BTxDTBF) • PWC 動作 604 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ PWC タイマ選択時のタイマ制御レジスタ (BTxTMCR) 23.8.4.1 タイマ制御レジスタ (BTxTMCR) は , PWC タイマの動作を制御します。 ■ タイマ制御レジスタ (BTxTMCR 上位バイト ) 図 23.8-34 タイマ制御レジスタ (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 "H" パルス幅測定 ( ↑∼↓ ) 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 0 R/W ― :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 測定エッジ選択ビット 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 設定禁止 605 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.8-10 タイマ制御レジスタ (BTxTMCR 上位バイト ) ビット名 bit15 機能 • 読出し値は "0" です。 未定義ビット • このビットには "0" を書き込んでください。 • 16 ビットアップカウンタのカウントクロックを選択します。 bit14 ∼ bit12 CKS2, CKS1, CKS0: カウントクロック 選択ビット • カウントクロックの変更は設定を変えると直ちに反映します。 したがって, CKS2∼CKS0の変更はカウント停止状態 (CTEN=0) で行ってください。ただし , CTEN ビットへの "1" 書込みと同時 に変更することは可能です。 bit11 bit10 ∼ bit8 606 • 読出し値は "0" です。 未定義ビット EGS2, EGS1, EGS0: 測定エッジ選択 ビット • このビットには "0" を書き込んでください。 • 測定エッジの条件を設定します。 • EGS2, EGS1, EGS0 の変更はカウント停止状態 (CTEN=0) で 行ってください。ただし , CTEN ビットへの "1" 書込みと同時に 変更することは可能です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ タイマ制御レジスタ (BTxTMCR 下位バイト ) 図 23.8-35 タイマ制御レジスタ (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 ― :リード / ライト可能 :未定義ビット :初期値 CM71-10158-1 タイマ機能選択ビット 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 607 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.8-11 タイマ制御レジスタ (BTxTMCR 下位バイト ) ビット名 機能 • 32 ビットタイマ機能を選択するビットです。 bit7 T32: 32 ビット タイマ選択 ビット • FMD2, FMD1, FMD0 ビットに "100B" を設定して PWC 機能を選択 している場合に T32 ビットを "1" に設定すると , 32 ビット PWC モー ドになります。 • 変更はタイマ停止中 (CTEN=0) に行ってください。ただし , CTEN ビットへの "1" 書込みと同時に変更することは可能です (「23.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 608 • 読出し値は "0" です。 未定義ビット • このビットには "0" を書き込んでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ ステータス制御レジスタ (BTxSTC) 図 23.8-36 ステータス制御レジスタ (BTxSTC) R/W R ― bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 初期値: ERR EDIE ― OVIE ― EDIR ― OVIR 00000000B ( リセット時 ) R R/W R/W R/W R/W R R/W R/W :リード / ライト可能 :リードオンリ :未定義ビット :初期値 CM71-10158-1 OVIR オーバフロー割込み要求ビット 0 割込み要求のクリア 1 割込み要因の検出 EDIR 測定終了割込み要求ビット 0 測定結果 (BTxDTBF) をリード 1 割込み要因の検出 OVIE オーバフロー割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 EDIE 測定終了割込み要求許可ビット 0 割込み要求を禁止 1 割込み要求を許可 ERR エラーフラグビット 0 正常状態 1 リードしていない測定結果に次の測定結果が 上書きされた FUJITSU SEMICONDUCTOR LIMITED 609 第 23 章 ベースタイマ 23.8 MB91665 シリーズ 表 23.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" になります。 610 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ データバッファレジスタ (BTxDTBF) 23.8.4.2 データバッファレジスタ (BTxDTBF) は , PWC タイマの測定値またはカウント値を 読み出すことができるレジスタです。32 ビットモード時には偶数チャネルの場合は 下位 16 ビットの値となり , 奇数チャネルの場合は上位 16 ビットの値となります。 このレジスタの読出しは , 必ず 16 ビットデータ転送命令で行ってください。 ■ データバッファレジスタ (BTxDTBF) のビット構成 図 23.8-37 に , データバッファレジスタ (BTxDTBF) のビット構成を示します。 図 23.8-37 データバッファレジスタ (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 ビットデータでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 611 第 23 章 ベースタイマ 23.8 23.8.4.3 MB91665 シリーズ PWC 動作 PWC タイマには , パルス幅測定機能があり , 5 種類のカウントクロックを選択可能 で入力パルスの任意イベント間の時間・周期をカウンタで測定できます。以下に , パルス幅測定機能における基本機能 / 動作について示します。 ■ パルス幅測定機能 起動後 , カウンタを "0000H" にクリアし , 設定した測定開始エッジが入力されるまでカ ウント動作は行われません。測定開始エッジを検出すると "0001H" からカウントアッ プを開始し , 測定終了エッジを検出するとカウントを停止します。この間のカウント値 がパルス幅としてレジスタに保存されます。 測定終了時 , およびオーバフロー発生時に割込み要求を発生できます。 測定終了後は , 測定モードに応じて以下のように動作します。 • 単発測定モード時…動作を停止します。 • 連続測定モード時…カウンタ値をバッファレジスタに転送後 , 再度測定開始エッジ が入力されるまでカウントを停止します。 図 23.8-38 パルス幅測定動作 ( 単発測定モード / "H" 幅測定 ) PWC入力被測定パルス CTEN カウント値 FFFFH カウント クリア 0000H 起動開始 カウント ストップ (実線はカウント値) カウント 0001H スタート 時間 EDIRフラグセット(測定終了) 図 23.8-39 パルス幅測定動作 ( 連続測定モード / "H" 幅測定 ) PWC入力被測定パルス CTEN (実線はカウント値) オーバフロー BTxDTBF へデータ転送 カウント値 FFFFH BTxDTBF へデータ転送 カウント クリア 0000H 起動開始 カウント ストップ カウント ストップ カウント 0001H カウント 0001H スタート 再スタート カウント 継続 時間 EDIRフラグセット(測定終了) 612 OVIRフラグセット EDIRフラグセット FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ カウントクロックの選択 カウンタのカウントクロックは , 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) が選択されています。 ( 注意事項 ) カウントクロックの選択は , 必ずカウンタ起動前に行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 613 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ 動作モードの選択 各動作モード / 測定モードの選択は , 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" パルス幅測定−単発測定モードが選択されています。 動作モードの選択は , 必ずカウンタ起動前に行ってください。 614 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ パルス幅測定の起動と停止 各動作の起動 / 再起動 / 強制停止は , 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" に初期化されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 615 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ パルス幅測定動作詳細 ● 単発測定と連続測定 パルス幅測定には , 1 回のみの測定を行うモードと連続して測定を行うモードがありま す。各モードは BTxTMCR の MDSE ビットによって選択します (「23.8.4.3 PWC 動作 ■ 動作モードの選択」を参照 ) 。両モードにおける相違点は以下のとおりです。 単発測定モード: 1 回目の測定終了エッジが入力されるとカウンタのカウントは停止し , BTxSTC 中 の測定終了フラグ (EDIR) がセットされ , 以降の測定は行われません。ただし , 同時 に再起動された場合は測定開始待ち状態となります。 連続測定モード: 測定終了エッジが入力されるとカウンタのカウントは停止し , BTxSTC 中の測定終 了フラグ (EDIR) がセットされ , 再度測定開始エッジが入力されるまでカウントを停 止します。再度 , 測定開始エッジが入力されるとカウンタを "0001H" に初期化して 測定を開始します。測定終了時 , カウンタの測定結果は BTxDTBF に転送されます。 測定モードの選択 / 変更は , 必ずカウンタ停止中に行ってください。 ● 測定結果データ 単発測定モードと連続測定モードでは , 測定結果とカウンタ値の扱いおよび BTxDTBF の機能に違いがあります。両モードにおける測定結果の相違点は以下のとおりです。 単発測定モード: BTxDTBF を動作中に読み出すと測定中のカウント値が得られます。 BTxDTBF を測定終了後に読み出すと測定結果データが得られます。 連続測定モード: 測定終了時 , カウンタ内の測定結果は BTxDTBF に転送されます。 BTxDTBFを読み出すと直前の測定結果が得られ, 測定動作中も前回の測定結果を保 持しています。測定中のカウント値は読み出せません。 連続測定モードにて , 測定結果を読み出さない内に次の測定が終了してしまった場 合 , 前回の測定結果は新しい測定結果に消されてしまいます。この際 , BTxSTC 中 のエラーフラグ (ERR) がセットされます。エラーフラグ (ERR) は , BTxDTBF を読 み出すと自動的にクリアされます。 616 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ 測定モードとカウント動作 入力されたパルスのどこを測定するかによって, 測定モードは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" にクリアされた後 , 測定開始エッ ジが入力されるまではカウンタはカウント動作を行いません。測定開始エッジが入力 されると , 測定終了エッジが入力されるまでの間 , カウントクロックごとにアップカウ ントを続けます。 連続測定モードの場合で , 全エッジ間パルス幅測定や周期測定などを行った場合 , 終了 エッジが次の測定開始エッジとなります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 617 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ● パルス幅 / 周期算出方法 測定終了後 , BTxDTBF に得られた測定結果データからの被測定パルス幅 / 周期算出方 法は以下のように求められます。 TW :被測定パルス幅 / 周期 [ms] TW = n × t [ms] n :BTxDTBF 内の測定結果データ t :カウントクロックの周期 [ms] ● 割込み要求発生 2 つの割込み要求を発生することが可能です。 • カウンタのオーバフローによる割込み要求 測定中 , カウントアップによりオーバフローが発生するとオーバフローフラグ (OVIR) がセットされ , オーバフロー割込み要求が許可されていると割込み要求が発 生します。 • 測定終了による割込み要求 測定終了エッジを検出すると , BTxSTC 中の測定終了フラグ (EDIR) がセットされ , 測定終了割込み要求が許可されていると割込み要求が発生します。 測定終了フラグ (EDIR) は , 測定結果 BTxDTBF を読み出すと自動的にクリアされま す。 618 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 23 章 ベースタイマ 23.8 MB91665 シリーズ ■ パルス幅測定動作フロー 図 23.8-40 パルス幅測定動作フロー 各 種 設 定 PWC モード選択 カウントクロック選択 動作 / 測定モード選択 割込みフラグクリア 割込み許可 CTEN ビットにより起動 再起動 カウンタをクリア 連続測定モード 単発測定モード 測定開始エッジ検出 測定開始エッジ検出 カウント開始 カウント開始 アップカウント アップカウント オーバフローの発生 → OVIR フラグセット 測定終了エッジ検出 → EDIR フラグセット CM71-10158-1 オーバフローの発生 → OVIR フラグセット 測定終了エッジ検出 → EDIR フラグセット カウント停止 カウント停止 カウント値を BTxDTBF に転送 動作停止 FUJITSU SEMICONDUCTOR LIMITED 619 第 23 章 ベースタイマ 23.8 620 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウン カウンタ アップダウンカウンタの機能と動作について説明 します。 24.1 概要 24.2 構成 24.3 端子 24.4 レジスタ 24.5 割込み 24.6 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 621 第 24 章 アップダウンカウンタ 24.1 24.1 MB91665 シリーズ 概要 アップダウンカウンタは , 設定によってカウントアップ / ダウンするカウンタです。 16 ビットアップダウンカウンタの下位バイトのみを使用して , 8 ビットアップダウンカウン タとして使用することもできます。 8 ビットアップダウンカウンタ時は "00H" ∼ "FFH" の範囲で , 16 ビットアップダウンカウン タ時は "0000H" ∼ "FFFFH" の範囲でカウントできます。 本製品は , 16 ビットアップダウンカウンタを 4 チャネル内蔵しています。ただし , 8 ビット アップダウンカウンタとして使用できるのは下位バイトのみになるため , 8 ビット時も , 16 ビット時も使用できるチャネルは合計で 4 チャネルになります。 ■ 概要 • カウンタモード:8ビットアップダウンカウンタとして使用するか (8ビットモード), 16 ビットアップダウンカウンタとして使用するか (16 ビットモード ) を選択できま す。 • 動作モード:次の 3 モード (4 種類 ) から選択できます。 - タイマモード カウント用クロックに同期してカウントダウンします。 カウント用クロックは周辺クロック (PCLK) をプリスケーラで 2 分周 /8 分周し て生成された内部クロック ( 周辺クロック ) を使用します。 - アップダウンカウントモード 2 本の外部信号入力端子から入力される信号をカウントアップ / カウントダウン します。カウントするエッジを , 立上りエッジ , 立下りエッジ , 両エッジの中か ら選択できます。 - 位相差カウントモード 2 本の外部信号入力端子から入力される信号の位相差をカウントアップ / カウン トダウンします。 位相差カウントモードは , モーターなどのエンコーダのカウントに適していま す。エンコーダの A 相 , B 相 , Z 相の出力をそれぞれ入力することにより , 回転 角度や回転数などを高い精度で容易にカウントできます。 位相差カウントモードには 2 逓倍モードと 4 逓倍モードがあり , それぞれカウン ト方法が異なります。 622 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.1 MB91665 シリーズ アップダウンカウンタの動作モードを表 24.1-1 に示します。 表 24.1-1 アップダウンカウンタの動作モード 動作モード タイマモード カウントタイミング 内部クロック ( 周辺クロック ) アップダウンカウント 外部クロック モード 位相差カウントモード (2 逓倍 /4 逓倍 ) • カウント方向 カウントダウン カウントアップ / カウントダウン 外部信号入力端子から カウントアップ / カウントダウン の入力信号の位相 リロード / コンペアクリア機能:次の 3 種類から選択できます。 - コンペアクリア機能 設定した値とカウンタ値が一致した次のアップカウントタイミングでカウンタ をクリアします。 - リロード機能 アンダフローが発生すると , リロード値をロードしてカウントを続けます。 - リロードコンペアクリア機能 コンペアクリア機能とリロード機能を組み合わせて使用できます。 • カウント方向:直前のカウント方向 ( カウントアップ / カウントダウン ) を確認でき ます。 • CM71-10158-1 割込み要求:次の場合に割込み要求を発生できます。 - カウント方向が反転したとき - カウンタの値があらかじめ設定した値と一致したとき - オーバフローが発生したとき - アンダフロー ( リロード ) が発生したとき FUJITSU SEMICONDUCTOR LIMITED 623 第 24 章 アップダウンカウンタ 24.2 24.2 MB91665 シリーズ 構成 アップダウンカウンタの構成を示します。 ■ アップダウンカウンタのブロックダイヤグラム アップダウンカウンタのブロックダイヤグラムを ch.0 を例にとって図 24.2-1 に示しま す。 図 24.2-1 アップダウンカウンタのブロックダイヤグラム 周辺バス 8 ビット CGE1 ZIN1 端子 CGE0 CGSC 上位バイトへ M16E RCRL CTUT リロード制御 UCRE RLDE Carry エッジ / レベル検出 UDCC カウンタ クリア 8 ビット CES1 CES0 CMS1 CMS0 UDCRL CMPF UDFF AIN1 端子 BIN1 端子 カウント用 クロック選択 カウント用 クロック OVFF CSTR UDF1 UDIE UDF0 CDCF プリスケーラ CITE CLKS UFIE 割込み出力 RCRL :リロードコンペアレジスタ下位 (RCRL1) UDCRL :アップダウンカウントレジスタ下位 (UDCRL1) • リロードコンペアレジスタ (RCR1) アップダウンカウンタのリロード値およびコンペア値を設定するレジスタです。 次のように上位 8 ビットと下位 8 ビットに分かれています。 8 ビットモードで使用する場合は , 下位側を使用します。 • - リロードコンペアレジスタ上位 (RCRH1) - リロードコンペアレジスタ下位 (RCRL1) アップダウンカウントレジスタ (UDCR1) アップダウンカウンタのカウンタとして動作するレジスタです。 624 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.2 MB91665 シリーズ 次のように上位 8 ビットと下位 8 ビットに分かれています。 8 ビットモードで使用する場合は , 下位側を使用します。 • - アップダウンカウントレジスタ上位 (UDCRH1) - アップダウンカウントレジスタ下位 (UDCRL1) カウンタコントロールレジスタ (CCR1) アップダウンカウンタを制御するレジスタです。 • カウンタステータスレジスタ (CSR1) アップダウンカウンタの状態を確認したり , 割込み要求の制御をしたりするレジス タです。 • カウント用クロック選択回路 アップダウンカウンタのカウント用クロックを選択する回路です。 • プリスケーラ アップダウンカウンタをタイマモードで使用するときに , 周辺クロック (PCLK) の 分周比を選択します。 ■ クロック アップダウンカウンタで使用するクロックを表 24.2-1 に示します。 表 24.2-1 アップダウンカウンタで使用するクロック クロック名 動作クロック 内容 周辺クロック (PCLK) カウント用クロック 内部クロック ( 周辺クロック ) 備考 周辺クロック (PCLK) を分周 して生成 外部端子からの入力をカウント AIN1 端子 , BIN1 端子から入力 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 625 第 24 章 アップダウンカウンタ 24.3 24.3 MB91665 シリーズ 端子 アップダウンカウンタで使用する端子について説明します。 ■ 概要 アップダウンカウンタには , 次の 3 種類の端子があります。 • AIN1 端子 アップダウンカウンタの外部信号入力端子です。アップダウンカウントモード時 は , この端子で有効エッジが検出されるとカウントアップします。位相差カウント モード (2 逓倍 /4 逓倍 ) 時は , この端子と BIN1 端子の位相差をカウントします。 この端子は兼用端子です。アップダウンカウンタの AIN1 端子として使用するには , 「2.4 端子の設定方法」を参照してください。 • BIN1 端子 アップダウンカウンタの外部信号入力端子です。アップダウンカウントモード時は , この端子で有効エッジが検出されるとカウントダウンします。位相差カウントモー ド (2 逓倍 /4 逓倍 ) 時は , この端子と AIN1 端子の位相差をカウントします。 この端子は兼用端子です。アップダウンカウンタの BIN1 端子として使用するには , 「2.4 端子の設定方法」を参照してください。 • ZIN1 端子 アップダウンカウンタの外部信号入力端子です。カウンタのクリアまたはゲート入 力として使用します。 この端子は兼用端子です。アップダウンカウンタの ZIN1 端子として使用するには , 「2.4 端子の設定方法」を参照してください。 ■ 端子とチャネルの対応 チャネルと端子の対応を表 24.3-1 に示します。 表 24.3-1 チャネルと端子の対応 チャネル 1 626 AIN1 外部信号入力端子 BIN1 ZIN1 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ 24.4 レジスタ アップダウンカウンタで使用するレジスタの構成と機能について説明します。 ■ アップダウンカウンタのレジスタ一覧 アップダウンカウンタのレジスタ一覧を表 24.4-1 に示します。 表 24.4-1 アップダウンカウンタのレジスタ一覧 チャネル 1 CM71-10158-1 レジスタ略称 RCRL1 リロードコンペアレジスタ下位 1 レジスタ名 参照先 24.4.1 RCRH1 リロードコンペアレジスタ上位 1 24.4.1 UDCRL1 アップダウンカウントレジスタ下位 1 24.4.2 UDCRH1 アップダウンカウントレジスタ上位 1 24.4.2 CCR1 カウンタコントロールレジスタ 1 24.4.3 CSR1 カウンタステータスレジスタ 1 24.4.4 FUJITSU SEMICONDUCTOR LIMITED 627 第 24 章 アップダウンカウンタ 24.4 24.4.1 MB91665 シリーズ リロードコンペアレジスタ (RCR1) アップダウンカウンタのリロード値およびコンペア値を設定するレジスタです。 リロード値はカウントダウン時にカウントを開始する値 , コンペア値はカウントアップ時に カウントされた値と比較する値 ( ここまで数えるという値 ) です。リロード値とコンペア値は 同一です。 このレジスタは , 次のように上位バイトと下位バイトに分かれています。 • リロードコンペアレジスタ上位 (RCRH1) • リロードコンペアレジスタ下位 (RCRL1) 16 ビットモード時は , 両方の値が使用され , 8 ビットモード時は , 下位バイトの値が使 用されます。 このレジスタに書き込んだ値をアップダウンカウントレジスタ (UDCR1) に転送する ことで , アップダウンカウンタは , "0000H" (8 ビット時は "00H") ∼このレジスタに設定 した値の範囲でカウントを行います。 リロードコンペアレジスタ (RCR1) のビット構成を図 24.4-1 に示します。 図 24.4-1 リロードコンペアレジスタ (RCR1) のビット構成 リロードコンペアレジスタ上位 (RCRH1) bit 15 14 13 12 11 10 9 8 D15 D14 D13 D12 D11 D10 D9 D8 属性 W W W W W W W W 初期値 0 0 0 0 0 0 0 0 リロードコンペアレジスタ下位 (RCRL1) bit 7 6 5 4 3 2 1 0 D7 D6 D5 D4 D3 D2 D1 D0 属性 W W W W W W W W 初期値 0 0 0 0 0 0 0 0 W:ライトオンリ 628 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 24 章 アップダウンカウンタ 24.4 < 注意事項 > • カウンタコントロールレジスタ (CCR1) の CTUT ビットに "1" を書き込むと , このレジスタに設定した値をアップダウンカウントレジスタ (UDCR1) に転送できま す。ただし , カウンタコントロールレジスタ (CCR1) の CTUT ビットは , アップダウン カウンタの停止中に書き込んでください。 • カウンタコントロールレジスタ (CCR1) の M16E ビットで 16 ビットモードを設定した 場合 (M16E=1), このレジスタは必ずハーフワードで書き込んでください。 • カウンタコントロールレジスタ (CCR1) の M16E ビットで 8 ビットモードを設定した 場合 (M16E=0), 必ずリロードコンペアレジスタ下位 (RCRL1) にバイトで書き込んで ください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 629 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ アップダウンカウントレジスタ (UDCR1) 24.4.2 アップダウンカウンタのカウンタとして動作するレジスタです。このレジスタを読み出すと カウンタの値を確認できます。 このレジスタは , 次のように上位バイトと下位バイトに分かれています。 • アップダウンカウントレジスタ上位 (UDCRH1) • アップダウンカウントレジスタ下位 (UDCRL1) 8 ビットモード時は , 上位バイトの値は無効です。アップダウンカウントレジスタ下位 (UDCRL1) の値を読み出してください。 アップダウンカウントレジスタ (UDCR1) のビット構成を図 24.4-2 に示します。 図 24.4-2 アップダウンカウントレジスタ (UDCR1) のビット構成 アップダウンカウントレジスタ上位 (UDCRH1) bit 15 14 13 12 11 10 9 8 D15 D14 D13 D12 D11 D10 D9 D8 属性 R R R R R R R R 初期値 0 0 0 0 0 0 0 0 アップダウンカウントレジスタ下位 (UDCRL1) bit 7 6 5 4 3 2 1 0 D7 D6 D5 D4 D3 D2 D1 D0 属性 R R R R R R R R 初期値 0 0 0 0 0 0 0 0 R:リードオンリ < 注意事項 > • このレジスタは読出し専用です。このレジスタに値を設定する場合は , 次の手順でリ ロードコンペアレジスタ (RCR1) の値をこのレジスタに転送してください。 1. リロードコンペアレジスタ (RCR1) に値を書き込む 2. カウンタステータスレジスタ (CSR1) の CSTR ビットに "0" を書き込む 3. カウンタコントロールレジスタ (CCR1) の CTUT ビットに "1" を書き込む 630 • カウンタコントロールレジスタ (CCR1) の M16E ビットで 16 ビットモードを設定した 場合 (M16E=1), このレジスタは必ずハーフワードで読み出してください。 • カウンタコントロールレジスタ (CCR1) の M16E ビットで 8 ビットモードを設定した 場合 (M16E=0), アップダウンカウントレジスタ下位 (UDCRL1) の値を読み出してく ださい。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ カウンタコントロールレジスタ (CCR1) 24.4.3 アップダウンカウンタの動作を制御するレジスタです。 カウンタコントロールレジスタ (CCR1) のビット構成を図 24.4-3 に示します。 図 24.4-3 カウンタコントロールレジスタ (CCR1) のビット構成 bit 属性 15 14 13 12 11 10 9 8 M16E CDCF CFIE CLKS CMS1 CMS0 CES1 CES0 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 予約 R/W CTUT UCRE RLDE UDCC CGSC CGE1 CGE0 R/W R/W R/W R/W R/W R R 0 0 0 0 1 0 0 0 初期値 bit 属性 初期値 R/W:リード / ライト可能 R:リードオンリ [bit15]:M16E (16 ビットモード選択ビット ) アップダウンカウンタを 8 ビットで使用するか , 16 ビットで使用するかを選択します。 書込み値 CM71-10158-1 説明 0 8 ビットモード (1 チャネル ) で使用します。 1 16 ビットモード (1 チャネル ) で使用します。 FUJITSU SEMICONDUCTOR LIMITED 631 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ [bit14]:CDCF ( カウント方向転換フラグビット ) カウント方向が , カウントダウンからカウントアップ , またはカウントアップからカウ ントダウンに 1 回以上反転したことを示します。 このビットが "1" のときに CFIE ビットが "1" に設定されていると , カウント方向転換 割込み要求が発生します。 CDCF 読出し時 書込み時 0 カウント方向は反転していません。 このビットを "0" にクリアします。 1 カウント方向が 1 回以上反転しまし 無視されます。 た。 < 注意事項 > • カウンタのリセットが発生した場合 , カウント方向はカウントダウンに設定されます。 そのため , リセット直後にカウントアップが行われると , このビットが "1" に変わりま す。 • カウント方向が短期間で連続して変化した場合は, カウント方向が元に戻り, カウンタ ステータスレジスタ (CSR1) の UDF1, UDF0 ビットが変化しない場合があります。 [bit13]:CFIE ( カウント方向転換割込み許可ビット ) カウント方向が反転したとき (CDCF=1) に , カウント方向転換割込み要求を発生させ るかどうかを設定します。 0 書込み値 説明 カウント方向転換割込み要求の発生を禁止します。 1 カウント方向転換割込み要求の発生を許可します。 [bit12]:CLKS ( 内部クロック分周選択ビット ) タイマモード選択時に , このビットで設定した分周比で分周された周辺クロック (PCLK) をカウント用クロックとして使用します。 書込み値 説明 0 周辺クロック (PCLK) の 2 分周 1 周辺クロック (PCLK) の 8 分周 < 注意事項 > このビットは , CMS1, CMS0 ビットで動作モードをタイマモードに設定 (CMS1, CMS0=00) した場合のみ有効です。その他の動作モードを選択しているときは , この ビットの設定は無視されます。 632 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ [bit11, bit10]:CMS1, CMS0 ( 動作モード選択ビット ) アップダウンカウンタの動作モードを次の中から選択します。 • タイマモード カウント用クロックに同期してカウントダウンします。 • アップダウンカウントモード 2 本の外部信号入力端子からの入力信号をカウントアップ / カウントダウンします。 • 位相差カウントモード 2 本の外部信号入力端子の位相差をカウントアップ / カウントダウンします。位相 差カウントモードには 2 逓倍モードと 4 逓倍モードがあり , それぞれカウント方法 が異なります。 CMS1 CMS0 動作モード 0 0 タイマモード 0 1 アップダウンカウントモード 1 0 位相差カウントモード (2 逓倍 ) 1 1 位相差カウントモード (4 逓倍 ) [bit9, bit8]:CES1, CES0 ( カウント用クロックエッジ選択ビット ) AIN1 端子および BIN1 端子の検出エッジを選択します。 アップダウンカウントモード選択時に , このビットで選択したエッジが検出されるた びに , カウント動作が行われます。 CES1 CES0 検出エッジ 0 0 エッジ検出禁止 0 1 立下りエッジ 1 0 立上りエッジ 1 1 両エッジ < 注意事項 > このビットは , CMS1, CMS0 ビットで動作モードをアップダウンカウントモードに設定 (CMS1, CMS0=01) した場合のみ有効です。その他の動作モードを選択しているときは , このビットの設定は無視されます。 [bit7]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 633 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ [bit6]:CTUT ( カウンタライトビット ) リロードコンペアレジスタ (RCR1) に設定した値をアップダウンカウントレジスタ (UDCR1) に転送します。 CTUT 書込み時 0 無視されます。 1 値を転送します。 読出し時 "0" が読み出されます。 < 注意事項 > このビットに "1" を書き込んだ時点で , リロードコンペアレジスタ (RCR1) の値が転送さ れるため , カウンタステータスレジスタ (CSR1) の CSTR ビットが "1" のとき ( カウンタ の動作中 ) は , このビットを "1" に書き換えないでください。 [bit5]:UCRE ( カウンタクリア許可ビット ) コンペアによるカウンタのクリアを制御するビットです。 許可すると,カウンタ値がリロードコンペアレジスタ (RCR1) に設定した値と一致した 次のアップカウントタイミングでカウンタをクリアします。 書込み値 説明 0 コンペアクリア機能を禁止します。 1 コンペアクリア機能を許可します。 < 注意事項 > このビットで制御できるのは , コンペアクリア機能のみです。比較結果一致割込みに影響 しません。 次のクリア動作は , このビットでは制御できません。 • • 本デバイスがリセットされたことによるクリア ZIN1 端子からの有効エッジ入力によるクリア (CGSC ビット =0 のとき ) • UDCC ビットに "0" を書き込むことによるクリア ( ソフトウェアによるクリア ) [bit4]:RLDE ( リロード許可ビット ) リロード機能の使用を許可 / 禁止します。 リロード機能とは , カウントダウン時にカウンタがアンダフローすると , リロードコン ペアレジスタ (RCR1) に設定した値をカウンタにリロードして , カウントを続ける機能 です。 書込み値 634 説明 0 リロード機能の使用を禁止します。 1 リロード機能の使用を許可します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ [bit3]:UDCC ( カウンタクリアビット ) カウンタの値を "0000H" にクリアします。 UDCC 書込み時 0 クリアします。 1 無視されます。 読出し時 "1" が読み出されます。 [bit2]:CGSC ( カウンタクリア / ゲート選択ビット ) ZIN1 端子の機能を次の中から選択します。 カウンタクリア機能 • ZIN1 端子から有効エッジが入力されたときに , カウンタの値を "0000H" にクリアし ます。 ゲート機能 • ZIN1 端子から有効レベルが入力されている間だけ , カウンタが動作します。 書込み値 説明 0 カウンタクリア機能 1 ゲート機能 < 注意事項 > ZIN1 端子は , このビットと CGE1, CGE0 ビットの設定を組み合わせることで機能します。 必ず , CGE1, CGE0 ビットも設定してください。 [bit1, bit0]:CGE1, CGE0 ( エッジ / レベル選択ビット ) ZIN1 端子の有効エッジ / 有効レベルを選択します。CGSC ビット設定によって , この ビットの意味は異なります。 CGSC ビットでカウンタクリア機能を選択した場合 (CGSC=0) • 有効エッジを選択します。 このビットで選択したエッジが ZIN1 端子で検出されると , カウンタの値が "0000H" にクリアされます。 CGSC ビットでゲート機能を選択した場合 (CGSC=1) • 有効レベルを選択します。 このビットで選択したレベルが ZIN1 端子から入力されている間だけ , カウンタが 動作します。 CGE1 CM71-10158-1 CGE0 カウンタクリア機能選択時 (CGSC=0) ゲート機能選択時 (CGSC=1) 0 0 エッジ検出禁止 レベル検出禁止 (カウント禁止) 0 1 立下りエッジ "L" レベル 1 0 立上りエッジ "H" レベル 1 1 設定禁止 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 635 第 24 章 アップダウンカウンタ 24.4 24.4.4 MB91665 シリーズ カウンタステータスレジスタ (CSR1) アップダウンカウンタの状態を確認したり , 割込み要求を制御したりするレジスタです。 カウンタステータスレジスタ (CSR1) のビット構成を図 24.4-4 に示します。 図 24.4-4 カウンタステータスレジスタ (CSR1) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 CSTR CITE UDIE CMPF OVFF UDFF UDF1 UDF0 R/W R/W R/W R/W R/W R/W R R 0 0 0 0 0 0 0 0 R/W:リード / ライト可能 R:リードオンリ [bit7]:CSTR ( カウント起動ビット ) アップダウンカウンタを起動 / 停止します。 書込み値 説明 0 カウント動作を停止します。 1 アップダウンカウンタを起動します。 [bit6]:CITE ( 比較結果一致割込み許可ビット ) カウンタの値が , リロードコンペアレジスタ (RCR1) に設定した値と一致したとき (CMPF=1) に , 比較結果一致割込み要求を発生させるかどうかを設定します。 書込み値 説明 0 比較結果一致割込み要求の発生を禁止します。 1 比較結果一致割込み要求の発生を許可します。 [bit5]:UDIE ( オーバフロー / アンダフロー割込み許可ビット ) アップダウンカウンタがオーバフロー/ アンダフローしたとき (OVFF/UDFF=1) に , オー バフロー / アンダフロー割込み要求を発生させるかどうかを設定します。 書込み値 636 説明 0 オーバフロー / アンダフロー割込み要求の発生を禁止します。 1 オーバフロー / アンダフロー割込み要求の発生を許可します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ [bit4]:CMPF ( 比較結果一致検出フラグビット ) カウンタの値がリロードコンペアレジスタ (RCR1) に設定した値と一致したことを示 します。 このビットが "1" のときに CITE ビットが "1" に設定されていると , 比較結果一致割込 み要求が発生します。 CMPF 読出し時 書込み時 0 値は一致していません。 このビットを "0" にクリアします。 1 値が一致しました。 無視されます。 < 注意事項 > このビットは , 次の場合に "1" に変わります。 • • カウントアップで値が一致したとき リロードコンペアレジスタ (RCR1) の値をカウンタにリロードしたとき • アップダウンカウンタを起動したときに , 既に値が一致していたとき [bit3]:OVFF ( オーバフロー検出フラグビット ) アップダウンカウンタがオーバフローしたことを示します。 このビットが "1" のときに UDIE ビットが "1" に設定されていると , オーバフロー割込 み要求が発生します。 OVFF 読出し時 書込み時 0 オーバフローは発生していません。 このビットを "0" にクリアします。 1 オーバフローが発生しました。 無視されます。 オーバフローは , カウンタの値が "FFFFH" のときにカウントアップしようとすると発 生します。 [bit2]:UDFF ( アンダフロー検出フラグビット ) アップダウンカウンタがアンダフローしたことを示します。 このビットが "1" のときに UDIE ビットが "1" に設定されていると , アンダフロー割込 み要求が発生します。 UDFF 読出し時 書込み時 0 アンダフローは発生していません。 このビットを "0" にクリアします。 1 アンダフローが発生しました。 無視されます。 アンダフローは , カウンタの値が "0000H" のときに , カウントダウンしようとすると発 生します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 637 第 24 章 アップダウンカウンタ 24.4 MB91665 シリーズ [bit1, bit0]:UDF1, UDF0 ( アップダウンフラグビット ) 直前のカウント方向を示します。 このビットは , アップダウンカウンタがカウントするたびに更新されます。 UDF1 638 UDF0 説明 0 0 入力なし 0 1 カウントダウン 1 0 カウントアップ 1 1 カウントアップ / カウントダウン同時発生 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.5 MB91665 シリーズ 24.5 割込み 次のいずれかの場合に割込み要求が発生します。 • カウント方向が反転したとき ( カウント方向転換割込み要求 ) • カウンタの値がリロードコンペアレジスタ (RCR1) に設定した値と一致したとき ( 比較結 果一致割込み要求 ) • オーバフローが発生したとき ( オーバフロー割込み要求 ) • アンダフローが発生したとき ( アンダフロー割込み要求 ) アップダウンカウンタの動作モードによって , 発生する割込み要求は異なります。 動作モードと割込み要求の対応を表 24.5-1 に示します。 表 24.5-1 動作モードと割込み要求の対応 割込み要求 タイマモード アップ ダウン カウントモード 位相差カウント モード (2 逓倍 /4 逓倍 ) カウント方向転換割込み要求 × ○ ○ 比較結果一致割込み要求 ○ ○ ○ オーバフロー割込み要求 × ○ ○ アンダフロー割込み要求 ○ ○ ○ アップダウンカウンタで使用できる割込みについて表 24.5-2 に示します。 表 24.5-2 アップダウンカウンタの割込み 割込み要求 割込み要求 フラグ 割込み要求許可 割込み要求のクリア カウント方向転換割込 CCR の CDCF=1 CCR の CFIE=1 み要求 CCR の CDCF ビットに "0" を書き込む 比較結果一致割込み要 CSR の CMPF=1 CSR の CITE=1 求 CSR の CMPF ビットに "0" を書き込む オーバフロー割込み要 CSR の OVFF=1 求 CSR の UDIE=1 CSR の OVFF ビットに "0" を書き込む アンダフロー割込み要 CSR の UDFF=1 求 CSR の UDIE=1 CSR の UDFF ビットに "0" を書き込む CCR:カウンタコントロールレジスタ (CCR1) CSR:カウンタステータスレジスタ (CSR1) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 639 第 24 章 アップダウンカウンタ 24.5 MB91665 シリーズ < 注意事項 > • カウンタコントロールレジスタ (CCR1) の CMPF ビットは , カウントアップで値が一 致した場合に加え , リロードコンペアレジスタ (RCR1) の値がリロードされた場合や , アップダウンカウンタを起動時 , 既に値が一致していた場合も "1" に変わります。 • カウンタのクリアおよびリロードのタイミングについては , 「24.6 動作説明と設定手 順例」の「■ クリアイベント」および「■ リロードイベント」を参照してください。 • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 640 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ 動作説明と設定手順例 24.6 アップダウンカウンタの動作について説明します。また , 動作状態を設定するための手順例 も示します。 ■ 概要 ● カウンタモード アップダウンカウンタは , 設定によって 16 ビットアップダウンカウンタとして使用す ることも , 8 ビットアップダウンカウンタとして使用することもできます。 カウンタコントロールレジスタ (CCR1) の M16E ビットで設定してください。 • 8 ビットモード (M16E=0) アップダウンカウントレジスタ下位 (UDCRL1) のみを利用します。リロード値およ びコンペア値は, リロードコンペアレジスタ下位 (RCRL1) のみにバイトで書き込ん でください。 • 16 ビットモード (M16E=1) アップダウンカウントレジスタ (UDCR1) の上位バイトと下位バイトの両方を利用 します。リロード値およびコンペア値は , リロードコンペアレジスタ (RCR1) にハー フワードで書き込んでください。 ● 動作モード アップダウンカウンタの動作モードは , カウンタコントロールレジスタ (CCR1) の CMS1, CMS0 ビットで次の 3 モード (4 種類 ) から選択できます。 • タイマモード (CMS1, CMS0=00) あらかじめ設定した値からカウント用クロックに同期してカウントダウンする モードです。 カウント用クロックは , 周辺クロック (PCLK) をプリスケーラで 2 分周 /8 分周して 生成されます。 • アップダウンカウントモード (CMS1, CMS0=01) 外部信号入力端子から入力される信号をカウントアップ / カウントダウンするモー ドです。 • 位相差カウントモード (2 逓倍 ) (CMS1, CMS0=10) / 位相差カウントモード (4 逓倍 ) (CMS1, CMS0=11) 外部信号入力端子から入力される信号の位相差をカウントアップ / カウントダウン するモードです。エンコーダの A 相を AIN1 端子 , B 相を BIN1 端子 , Z 相を ZIN1 端子から入力することで , 回転角度や回転数のカウント , 回転方向の検出などを高 精度で行えるため , モーターなどのエンコーダのカウントに適しています。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 641 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ■ 利用できる機能 ● リロード / コンペアクリア機能 8/16 ビットアップダウンカウンタは , カウンタコントロールレジスタ (CCR1) の RLDE ビットと UCRE ビットでリロード機能およびコンペアクリア機能を許可 / 禁止できま す。 リロード機能 • カウントダウン時にアンダフローが発生すると , リロードコンペアレジスタ (RCR1) に設定した値をリロードして , 再度カウントダウンする機能です。動作につ いては ,「24.6.1 タイマモード時の動作」の「■ カウント動作」を参照してください。 コンペアクリア機能 • アップダウンカウンタの値がリロードコンペアレジスタ (RCR1) に設定した値と一 致 ( 比較結果一致 ) した状態で , さらにカウントアップが行われようとすると , アッ プダウンカウンタの値を "0000H" にクリアして , 再度カウントアップする機能です。 動作については , 「24.6.2 アップダウンカウントモード時の動作」の「■ カウント 動作」を参照してください。 この機能はタイマモードでは利用できません。 リロードコンペアクリア機能 • リロード機能とコンペアクリア機能を組み合わせて使用する機能です。"0000H" と リロードコンペアレジスタ (RCR1) に設定した値の間でカウントダウン / アップを 行うため , 任意幅でのカウントが可能です。 「24.6.2 アップダウンカウントモード時 の動作」の「■ カウント動作」を参照してください。 この機能はタイマモードでは利用できません。 リロード機能 / コンペアクリア機能の設定方法を表 24.6-1 に示します。 表 24.6-1 リロード機能 / コンペアクリア機能の設定方法 RLDE ビット UCRE ビット 説明 0 0 リロード機能 / コンペアクリア機能の禁止 0 1 リロード機能の禁止 コンペアクリア機能の許可 1 0 リロード機能の許可 コンペアクリア機能の禁止 1 1 リロード機能 / コンペアクリア機能の許可 ● ZIN1 端子の機能 カウンタコントロールレジスタ (CCR1) の CGSC ビットで ZIN1 端子の機能を次の中か ら選択できます。 • カウンタクリア機能 (CGSC=0) カウント動作中に ZIN1 端子から有効エッジが入力されると , カウンタの値を "0000H" にクリアします。 642 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ゲート機能 (CGSC=1) • ZIN1 端子から有効レベルが入力されている間だけ , カウンタが動作します。 カウンタクリア機能を選択した場合は有効エッジ , ゲート機能を選択した場合は有効 レベルをカウンタコントロールレジスタ (CCR1) のCGE1, CGE0ビットで選択してくだ さい。 CGE1 CGE0 カウンタクリア機能選択時 (CGSC=0) ゲート機能選択時 (CGSC=1) 0 0 エッジ検出禁止 レベル検出禁止 (カウント禁止) 0 1 立下りエッジ "L" レベル 1 0 立上りエッジ "H" レベル 1 1 設定禁止 設定禁止 ■ クリアイベント カウンタの値は , 次のいずれかの場合に "0000H" にクリアされます。 • 本デバイスがリセットされた • ZIN1 端子から有効エッジが入力された ( カウンタコントロールレジスタ (CCR1) の CGSC ビットで ZIN1 端子の機能をカウ ンタクリア機能 (CGSC=0) に設定している場合 ) • ソフトウェアによるクリア カウンタコントロールレジスタ (CCR1) の UDCC ビットに "0" が書き込まれた • コンペアクリア機能によるクリア カウンタの値が, リロードコンペアレジスタ (RCR1) に設定した値と一致し, さらに カウントアップが行われようとした (カウントダウンが行われた場合や, カウンタが停止した場合はクリアされません。) • オーバフロー発生によるクリア カウンタの値が "FFFFH" (8 ビットモード時は "FFH") になった後のカウントアップ / カウントダウンのタイミング カウンタの値が "0000H" にクリアされるタイミングは , アップダウンカウンタの動作状 態によって次のようになります。 • カウント動作中にクリアイベントが発生した場合 カウント用クロックに同期して , 値がクリアされます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 643 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ クリアイベント発生タイミングを図 24.6-1 に示します。 図 24.6-1 クリアイベント発生タイミング UDCR 0065H 0066H 0000H 0001H このクロックに同期する クリアイベント カウント用クロック UDCR: アップダウンカウントレジスタ (UDCR1) • カウント動作中にクリアイベントが発生し , 次のカウント用クロックが入力される 前にカウント動作を停止した場合 ( カウンタステータスレジスタ (CSR1) の CSTR ビット =0) アップダウンカウンタが停止した時点で , 値がクリアされます。 クリアイベント発生タイミングを図 24.6-2 に示します。 図 24.6-2 クリアイベント発生タイミング UDCR 0066H 0065H 0000H クリアイベント カウント用クロック 禁止 カウント許可 許可 UDCR: アップダウンカウントレジスタ (UDCR1) ■ リロードイベント アップダウンカウンタの値は , 次のいずれかの場合にリロードされます。 • カウンタコントロールレジスタ (CCR1) の CTUT ビットに "1" を書き込んだ場合 • リロード機能によって値がリロードされた場合 アップダウンカウンタの値がリロードされるタイミングは , アップダウンカウンタの 動作状態によって次のようになります。 • カウント動作中にリロードイベントが発生した場合 カウント用クロックに同期して , 値がリロードされます。 • カウント停止中にリロードイベントが発生した場合 リロードイベントが発生した時点で , 値がリロードされます。 644 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ < 注意事項 > • カウント動作中は , カウンタコントロールレジスタ (CCR1) の CTUT ビットに "1" を書 き込まないでください。 • リロードイベントとクリアイベントが同時に発生した場合は , クリアイベントが優先 されます。 タイマモード時の動作 24.6.1 タイマモード時の動作について説明します。 ■ 概要 リロードコンペアレジスタ (RCR1) に設定した値から , カウントダウンするモードで す。周辺クロック (PCLK) をプリスケーラで分周して , カウント用クロックとして使用 します。 カウンタがアンダフローしたときに , リロードコンペアレジスタ (RCR1) の値をリロー ドして , 再度カウントダウンするリロード機能を使用することもできます。 ■ カウント動作 ● 通常動作 1. リロードコンペアレジスタ (RCR1) にリロード値 / コンペア値を設定 2. カウンタコントロールレジスタ (CCR1) の CTUT ビットに "1" を書き込む 設定した値がアップダウンカウントレジスタ (UDCR1) に転送されます。 3. カウンタステータスレジスタ (CSR1) の CSTR ビットでアップダウンカウンタの動 作を許可 (CSTR=1) する リロードコンペアレジスタ (RCR1) の設定した値からカウントダウンを開始しま す。 カウンタがアンダフローすると , カウンタステータスレジスタ (CSR1) の UDFF ビット が "1" に変わります。このとき , カウンタステータスレジスタの UDIE ビットに "1" が 設定されていると , アンダフロー割込み要求が発生します。 なお , カウンタコントロールレジスタ (CCR1) の CGSC ビットで ZIN1 端子をゲート機 能 (CGSC=1) に設定した場合は , CGE1, CGE0 ビットで設定した有効レベルが ZIN1 端 子から入力されている間のみカウントします。 有効レベルの設定については , 「24.4.3 カウンタコントロールレジスタ (CCR1)」を参 照してください。 < 注意事項 > ZIN1 端子に必要な最低パルス幅は , 2T (T:周辺クロック (PCLK) の周期 ) です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 645 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ● リロード機能使用時の動作 カウントダウン時に , カウンタがアンダフローすると , カウンタステータスレジスタ (CSR1) の UDFF ビットが "1" に変わります。アンダフローが発生した次のカウントダ ウンタイミングで , リロードコンペアレジスタ (RCR1) の値がリロードされ , 再度カウ ントダウンを開始します。このとき , カウンタステータスレジスタ (CSR1) の UDIE ビッ トに "1" が設定されていると , アンダフロー割込み要求が発生します。 リロード機能使用時の動作を図 24.6-3 に示します。 図 24.6-3 リロード機能使用時の動作 (0FFFFH) FFH RCR リロード ( アンダフロー割 込み要求発生 ) リロード ( アンダフロー割 込み要求発生 ) 00H アンダフロー アンダフロー RCR: リロードコンペアレジスタ (RCR1) < 注意事項 > リロードコンペアレジスタ (RCR1) の値は , リロード値とコンペア値を兼ねています。そ のため , リロードコンペアレジスタ (RCR1) の値がリロードされると , カウンタステータ スレジスタ (CSR1) の CMPF ビットも "1" に変わります。 646 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ アップダウンカウントモード時の動作 24.6.2 アップダウンカウントモード時の動作について説明します。 ■ 概要 AIN1 端子および BIN1 端子から入力される外部信号をカウント用クロックとして , カ ウントアップ / カウントダウンするモードです。 AIN1端子から外部信号が入力されたときはカウントアップし, BIN1端子から外部信号 が入力されたときはカウントダウンします。 外部信号のどのエッジでカウントするかは , カウンタコントロールレジスタ (CCR1) の CES1, CES0 ビットで次の中から選択します。 • 立下りエッジ (CES1, CES0=01) • 立上りエッジ (CES1, CES0=10) • 両エッジ (CES1, CES0=11) また , アップダウンカウントモード時には , 次の 3 種類の機能を使用できます。 • リロード機能 • コンペアクリア機能 • リロードコンペアクリア機能 ■ カウント動作 ● 通常動作 カウンタが動作可能な状態で , AIN1 端子から有効エッジが入力されたときはカウント アップし , BIN1 端子から有効エッジが入力されたときはカウントダウンします。 カウントアップからカウントダウン , またはカウントダウンからカウントアップのよ うにカウント方向が反転すると , カウンタコントロールレジスタ (CCR1) の CDCF ビッ トが "1" に変わります。このとき , カウンタコントロールレジスタ (CCR1) の CFIE ビッ トに "1" が設定されていると , カウント方向転換割込み要求が発生します。 なお , カウンタコントロールレジスタ (CCR1) の CGSC ビットで ZIN1 端子をゲート機 能 (CGSC=1) に設定した場合は , CGE1, CGE0 ビットで設定した有効レベルが ZIN1 端 子から入力されている間のみカウントします。 有効レベルの設定については , 「24.4.3 カウンタコントロールレジスタ (CCR1)」を参 照してください。 < 注意事項 > AIN1 端子 , BIN1 端子 , ZIN1 端子に必要な最低パルス幅は , 2T (T:周辺クロック (PCLK) の周期 ) です。 ● リロード機能使用時の動作 タイマモード時の動作と同様です。 「24.6.1 タイマモード時の動作」の「■ カウント動 作」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 647 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ● コンペアクリア機能使用時の動作 アップダウンカウンタの値がリロードコンペアレジスタ (RCR1) に設定した値と一致 するとカウンタステータスレジスタ (CSR1) の CMPF ビットが "1" に変わります。この とき , カウンタステータスレジスタ (CSR1) の CITE ビットに "1" が設定されていると , 比較結果一致割込み要求が発生します。 この状態でさらにカウントアップが行われようとすると , アップダウンカウンタの値 を "0000H" にクリアして , 再度カウントアップを開始します。 コンペアクリア機能使用時の動作を図 24.6-4 に示します。 図 24.6-4 コンペアクリア機能使用時の動作 (0FFFFH) FFH RCR 比較結果一致 比較結果一致 00H カウンタクリア , ( 比較結果一致割込み 要求発生 ) カウンタクリア , ( 比較結果一致割込 み要求発生 ) RCR: リロードコンペアレジスタ (RCR1) < 注意事項 > コンペアクリア機能を使用した場合は , 次の条件を満たしたときに , アップダウンカウン タの値が "0000H" にクリアされます。 • アップダウンカウンタの値とリロードコンペアレジスタ (RCR1) に設定した値が一致 ( 比較結果一致 ) • さらに次のカウントアップが行われた ただし , 比較結果が一致しても , 次の場合はアップダウンカウンタの値はクリアされませ ん。 648 • 次の動作がカウントダウン • アップダウンカウンタが停止 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ● リロードコンペアクリア機能使用時の動作 カウントダウン時はリロード機能を , カウントアップ時はコンペアクリア機能を使用 します。 リロードコンペアクリア機能使用時の動作を図 24.6-5 に示します。 図 24.6-5 リロードコンペアクリア機能使用時の動作 FFH 比較結果一致 比較結果一致 リロード リロード リロード 比較結果一致 RCR 00H カウンタクリア アンダフロー カウンタクリア アンダフロー アンダフロー カウンタクリア RCR: リロードコンペアレジスタ (RCR1) ■ カウント方向の確認 このモードでは , カウントアップとカウントダウンの両方が行われます。そのため , カ ウント方向をカウンタステータスレジスタ (CSR1) の UDF1, UDF0 ビットで確認できま す。カウントが行われるたびに , このビットが書き換えられるため , 現在のカウント方 向を確認することができます。モーターの制御などで回転方向を知りたい場合などに 利用すると便利です。 UDF1, UDF0 ビットの示すカウント方向を表 24.6-2 に示します。 表 24.6-2 UDF1, UDF0 ビットとカウント方向の対応 UDF1 UDF0 カウント方向 0 0 入力なし 0 1 カウントダウン 1 0 カウントアップ 1 1 カウントアップ / カウントダウン同時発生 また , カウント方向が , カウントダウンからカウントアップ , またはカウントアップか らカウントダウンに 1 回以上反転すると , カウンタコントロールレジスタ (CCR1) の CDCF ビットが "1" に変わります。このとき , 方向転換割込み要求も発生させることが できるため , CDCF ビットと方向転換割込み要求の発生を利用して , カウント方向が反 転したかどうかを確認できます。 < 注意事項 > カウント方向の転換が短期間に連続発生した場合は , カウント方向が元に戻り , カウンタ ステータスレジスタ (CSR1) の UDF1, UDF0 ビットで示す方向が , CDCF ビットが "1" に 変わる前と同じ方向になる場合があります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 649 第 24 章 アップダウンカウンタ 24.6 24.6.3 MB91665 シリーズ 位相差カウントモード (2 逓倍 ) 時の動作 位相差カウントモード (2 逓倍 ) 時の動作について説明します。 ■ 概要 2 本の外部信号入力端子から入力される信号の位相差をカウントするモードです。エン コーダ出力の A 相と B 相の位相差をカウントするのに適しています。 BIN1 端子から立上りエッジ , 立下りエッジが検出されたときに , AIN1 端子の入力レベ ルを確認し , BIN1 端子と AIN1 端子の位相差をカウントアップ / カウントダウンしま す。A 相が B 相より進んでいる場合はカウントアップし , 遅れている場合はカウント ダウンします。 カウントアップするかカウントダウンするかは , BIN1 端子の検出エッジと AIN1 端子 の入力レベルによって異なります。 カウント方法を表 24.6-3 に示します。 表 24.6-3 カウント方法 BIN1 端子 立上りエッジ 立下りエッジ AIN1 端子 カウント方向 "H" レベル カウントアップ "L" レベル カウントダウン "H" レベル カウントダウン "L" レベル カウントアップ また , 位相差カウントモード (2 逓倍 ) 時は , 次の 3 種類の機能を使用できます。 650 • リロード機能 • コンペアクリア機能 • リロードコンペアクリア機能 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ■ カウント動作 ● 通常動作 カウンタが動作可能な状態で , BIN1 端子から立上りエッジ / 立下りエッジが入力され ると , AIN1 端子の入力レベルを検出し , カウントアップ / カウントダウンします。 位相差カウントモード (2 逓倍 ) 時の動作を図 24.6-6 に示します。 図 24.6-6 位相差カウントモード (2 逓倍 ) 時の動作 AIN1 端子 BIN1 端子 カウント値 0 +1 1 +1 2 +1 3 +1 4 +1 5 -1 4 +1 5 -1 4 -1 3 -1 2 -1 1 -1 0 なお , カウンタコントロールレジスタ (CCR1) の CGSC ビットで ZIN1 端子をゲート機 能 (CGSC=1) に設定した場合は , CGE1, CGE0 ビットで設定した有効レベルが ZIN1 端 子から入力されている間のみカウントします。 有効レベルの設定については , 「24.4.3 カウンタコントロールレジスタ (CCR1)」を参 照してください。 < 注意事項 > AIN1 端子 , BIN1 端子 , ZIN1 端子に必要な最低パルス幅は , 2T (T:周辺クロック (PCLK) の周期 ) です。 ● リロード機能使用時の動作 タイマモード時の動作と同様です。 「24.6.1 タイマモード時の動作」の「■ カウント動 作」を参照してください。 ● コンペアクリア機能使用時の動作 アップダウンカウントモード時の動作と同様です。 「24.6.2 アップダウンカウントモー ド時の動作」の「■ カウント動作」を参照してください。 ● リロードコンペアクリア機能使用時の動作 アップダウンカウントモード時の動作と同様です。 「24.6.2 アップダウンカウントモー ド時の動作」の「■ カウント動作」を参照してください。 ■ カウント方向の確認 アップダウンカウントモード時と同様です。 「24.6.2 アップダウンカウントモード時の 動作」の「■ カウント方向の確認」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 651 第 24 章 アップダウンカウンタ 24.6 24.6.4 MB91665 シリーズ 位相差カウントモード (4 逓倍 ) 時の動作 位相差カウントモード (4 逓倍 ) 時の動作について説明します。 ■ 概要 2 本の外部信号入力端子から入力される信号の位相差をカウントするモードです。エン コーダ出力の A 相と B 相の位相差をカウントするのに適しています。 AIN1 端子または BIN1 端子から立上りエッジ , 立下りエッジが検出されたときに , もう 一方の端子からの入力レベルを確認し, AIN1端子とBIN1端子の位相差をカウントアッ プ / カウントダウンします。 カウントアップするかカウントダウンするかは , 検出するエッジと入力レベルの組合 せによって異なります。 カウント方法を表 24.6-4 に示します。 表 24.6-4 カウント方法 エッジ検出端子 BIN1 端子 検出エッジ 立上りエッジ レベル確認端子 AIN1 端子 立下りエッジ AIN1 端子 立上りエッジ 立下りエッジ BIN1 端子 入力レベル カウント方向 "H" レベル カウントアップ "L" レベル カウントダウン "H" レベル カウントダウン "L" レベル カウントアップ "H" レベル カウントダウン "L" レベル カウントアップ "H" レベル カウントアップ "L" レベル カウントダウン また , 位相差カウントモード (4 逓倍 ) 時は , 次の 3 種類の機能を使用できます。 652 • リロード機能 • コンペアクリア機能 • リロードコンペアクリア機能 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 24 章 アップダウンカウンタ 24.6 MB91665 シリーズ ■ カウント動作 ● 通常動作 カウンタが動作可能な状態で , AIN1 端子または BIN1 端子から立上りエッジ / 立下り エッジが入力されると , もう一方の端子の入力レベルを検出し , カウントアップ / カウ ントダウンします。 位相差カウントモード (4 逓倍 ) 時の動作を図 24.6-7 に示します。 図 24.6-7 位相差カウントモード (4 逓倍 ) 時の動作 AIN1 端子 BIN1 端子 カウント値 0 +1+1 1 2 +1+1 3 4 +1+1 5 6 +1+1 7 8 +1+1 9 10 -1 9 +1 10 -1 9 -1-1 8 7 -1-1 6 5 -1-1 4 3 -1-1 2 1 なお , カウンタコントロールレジスタ (CCR1) の CGSC ビットで ZIN1 端子をゲート機 能 (CGSC=1) に設定した場合は , CGE1, CGE0 ビットで設定した有効レベルが ZIN1 端 子から入力されている間のみカウントします。 有効レベルの設定については , 「24.4.3 カウンタコントロールレジスタ (CCR1)」を参 照してください。 < 注意事項 > AIN1 端子 , BIN1 端子 , ZIN1 端子に必要な最低パルス幅は , 2T (T:周辺クロック (PCLK) の周期 ) です。 ● リロード機能使用時の動作 タイマモード時の動作と同様です。 「24.6.1 タイマモード時の動作」の「■ カウント動 作」を参照してください。 ● コンペアクリア機能使用時の動作 アップダウンカウントモード時の動作と同様です。 「24.6.2 アップダウンカウントモー ド時の動作」の「■ カウント動作」を参照してください。 ● リロードコンペアクリア機能使用時の動作 アップダウンカウントモード時の動作と同様です。 「24.6.2 アップダウンカウントモー ド時の動作」の「■ カウント動作」を参照してください。 ■ カウント方向の確認 アップダウンカウントモード時と同様です。 「24.6.2 アップダウンカウントモード時の 動作」の「■ カウント方向の確認」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 653 第 24 章 アップダウンカウンタ 24.6 654 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 25 章 10 ビット A/D コンバータ 10 ビット A/D コンバータの機能と動作について説 明します。 25.1 概要 25.2 構成 25.3 端子 25.4 レジスタ 25.5 割込み 25.6 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 655 第 25 章 10 ビット A/D コンバータ 25.1 MB91665 シリーズ 25.1 概要 10 ビット A/D コンバータは , アナログ信号を 10 ビットのデジタル信号に変換する装置です。 本製品は 10 ビット A/D コンバータを内蔵しており , 12 チャネル (MB91F669(64pin)), 10 チャ ネル (MB91F668(48pin)) のアナログ入力を割り振って変換できます。 ■ 概要 • 変換時間:1 チャネルあたり最小 1.2μs で変換できます (33MHz の周辺クロック (PCLK) ) • 比較変換方式:サンプル & ホールド回路付 RC 型逐次比較変換方式を採用していま す。 • 変換モード:次の 2 種類のモードを利用できます。 - A/D スキャン変換 24 チャネルから変換するチャネルを任意に選択し , 変換します。 選択したチャネルを 1 回だけ変換するシングル変換モードと , 選択したチャネル を繰り返して変換するリピート変換モードを利用できます。 - A/D 優先変換 優先度の高い A/D 変換の起動要因が発生すると , A/D スキャン変換を中断して 優先的に変換します。優先度は 2 レベル用意されています。 • 起動要因:A/D 変換のモードによって , 起動要因が異なります。 - A/D スキャン変換 ソフトウェアまたはベースタイマ ch.0 の TOUT 信号で立上りエッジを検出する と起動します。 - A/D 優先変換 ( 優先度 1) 外部トリガ入力端子から , 立下りエッジが入力されると起動します。 - A/D 優先変換 ( 優先度 2) ソフトウェアまたはベースタイマ ch.2 の TOUT 信号で立上りエッジを検出する と起動します。 • FIFO機能:A/Dスキャン変換用に16段, A/D優先変換用に4段のFIFOが用意されてい ます。 • 変換結果比較機能:A/D 変換の結果を比較できます。 • チャネル独立制御:チャネルごとにサンプリング時間を 2 種類から設定できます。 • 変換結果:A/D変換の結果を前詰め (MSB側) に格納するか後ろ詰め (LSB側) に格納 するかを選択できます。 656 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.1 MB91665 シリーズ • • CM71-10158-1 割込み要求:次の場合に割込み要求を発生できます。 - A/D スキャン変換時にあらかじめ設定した段数の FIFO にデータが格納された - A/D 優先変換時にあらかじめ設定した段数の FIFO にデータが格納された - FIFO のオーバランが発生した - 比較機能利用時に , 変換結果が割込み要求を発生する条件を満たした DMA 転送の起動:割込み要求の発生を利用して変換結果を DMA 転送できます。 FUJITSU SEMICONDUCTOR LIMITED 657 第 25 章 10 ビット A/D コンバータ 25.2 MB91665 シリーズ 25.2 構成 10 ビット A/D コンバータの構成を示します。 ■ 10 ビット A/D コンバータのブロックダイヤグラム 10 ビット A/D コンバータのブロックダイヤグラムを図 25.2-1 に示します。 図 25.2-1 10 ビット A/D コンバータのブロックダイヤグラム A/D 結果比較割込み要求 ベースタイマ ch.0 ベースタイマ ch.2 ADTRG0 端子 FIFO オーバラン割込み要求 スキャン変換割込み要求 優先変換割込み要求 チャネル & 状態 制御部 制御部 AN11 AN10 S/H M A/D コンバータ AN9 AN8 AN7 AN6 周 辺 バ ス P 比較器 X バッファ D/A コンバータ AN5 AN4 AN3 A/D スキャン変換用 FIFO 16 段 AN2 A/D 優先変換用 FIFO 4 段 AN1 AN0 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しません。) • A/D スキャン変換用 FIFO A/D スキャン変換用の FIFO です。16 段用意されています。 • A/D 優先変換用 FIFO A/D 優先変換用の FIFO です。4 段用意されています。 • 制御部 変換動作を制御します。 • チャネル & 状態制御部 10 ビット A/D コンバータのチャネルや状態を制御します。 • MPX ( アナログマルチプレクサ ) 複数のアナログ入力信号から変換するアナログ信号を選択 ( 切替え ) します。 658 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.2 MB91665 シリーズ ■ クロック 10 ビット A/D コンバータで使用するクロックを表 25.2-1 に示します。 表 25.2-1 10 ビット A/D コンバータで使用するクロック クロック名 動作クロック CM71-10158-1 内容 周辺クロック (PCLK) FUJITSU SEMICONDUCTOR LIMITED 659 第 25 章 10 ビット A/D コンバータ 25.3 MB91665 シリーズ 25.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(MB91F668(48pin) は AN0 ∼ AN9) 端子として使用するには「14.4.6 A/D チャネルイネーブルレジスタ (ADCHE)」を参照してください。 • ADTRG0 端子 10 ビット A/D コンバータの外部トリガ入力端子です。 この端子は兼用端子です。10 ビット A/D コンバータの ADTRG0 端子として使用す るには「2.4 端子の設定方法」を参照してください。 660 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.3 MB91665 シリーズ ■ 端子とチャネルの対応 チャネルと端子の対応を表 25.3-1 に示します。 表 25.3-1 チャネルと端子の対応 チャネル 0 アナログ電源入 基準電圧 力端子 入力端子 AVCC AVRH GND 端子 AVSS アナログ 入力端子 AN0 1 AN1 2 AN2 3 AN3 4 AN4 5 AN5 6 AN6 7 AN7 8 AN8 9 AN9 10 AN10 11 AN11 外部トリガ 入力端子 ADTRG0 - * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しません。) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 661 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ 25.4 レジスタ 10 ビット A/D コンバータで使用するレジスタの構成と機能について説明します。 ■ 10 ビット A/D コンバータのレジスタ一覧 10 ビット A/D コンバータのレジスタ一覧を表 25.4-1 に示します。 表 25.4-1 10 ビット A/D コンバータのレジスタ一覧 662 レジスタ略称 レジスタ名 ADCHE A/D チャネルイネーブルレジスタ 参照先 14.4.6 ADCR0 A/DC コントロールレジスタ 0 25.4.1 ADSR0 A/DC ステータスレジスタ 0 25.4.2 SCCR0 スキャン変換コントロールレジスタ 0 25.4.3 SFNS0 スキャン変換 FIFO 段数設定レジスタ 0 25.4.4 SCIS00 スキャン変換入力選択レジスタ 00 25.4.6 SCIS10 スキャン変換入力選択レジスタ 10 25.4.6 SCIS20 スキャン変換入力選択レジスタ 20 25.4.6 SCFD0 スキャン変換 FIFO データレジスタ 0 25.4.5 PCCR0 優先変換コントロールレジスタ 0 25.4.7 PFNS0 優先変換 FIFO 段数設定レジスタ 0 25.4.8 PCIS0 優先変換入力選択レジスタ 0 25.4.10 PCFD0 優先変換 FIFO データレジスタ 0 25.4.9 CMPD0 A/D 比較値設定レジスタ 0 25.4.11 CMPCR0 A/D 比較コントロールレジスタ 0 25.4.12 ADSS00 サンプリング時間選択レジスタ 00 25.4.14 ADSS10 サンプリング時間選択レジスタ 10 25.4.14 ADSS20 サンプリング時間選択レジスタ 20 25.4.14 ADST00 サンプリング時間設定レジスタ 00 25.4.13 ADST10 サンプリング時間設定レジスタ 10 25.4.13 ADCT0 コンペア時間設定レジスタ 0 25.4.15 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ A/DC コントロールレジスタ (ADCR0) 25.4.1 割込み要求を制御するレジスタです。 A/DC コントロールレジスタ (ADCR0) のビット構成を図 25.4-1 に示します。 図 25.4-1 A/DC コントロールレジスタ (ADCR0) のビット構成 bit 属性 7 6 5 4 3 2 1 0 SCIF PCIF CMPIF 未定義 SCIE PCIE CMPIE OVRIE R/W R/W R/W R/W R/W R/W R/W 0 0 0 − X 0 0 0 0 初期値 R/W:リード / ライト可能 −:未定義 X:不定 [bit7]:SCIF ( スキャン変換割込み要求フラグビット ) A/D スキャン変換の変換結果が , スキャン変換 FIFO 段数設定レジスタ (SFNS0) の SFS3 ∼ SFS0 ビットで設定した FIFO の段数まで格納されたことを示します。 このビットが "1" のときに SCIE ビットが "1" に設定されているとスキャン変換割込み 要求が発生します。 SCIF 読出し時 書込み時 0 変換結果は指定段数まで格納され このビットを "0" にクリアします。 ていません。 1 変換結果が指定段数まで格納され 無視されます。 ました。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 663 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit6]:PCIF ( 優先変換割込み要求フラグビット ) A/D 優先変換の変換結果が , 優先変換 FIFO 段数設定レジスタ (PFNS0) の PFS1, PFS0 ビットで設定した FIFO の段数まで格納されたことを示します。 このビットが "1" のときに PCIE ビットが "1" に設定されていると優先変換割込み要求 が発生します。 PCIF 読出し時 書込み時 0 変換結果は指定段数まで格納され このビットを "0" にクリアします。 ていません。 1 変換結果が指定段数まで格納され 無視されます。 ました。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 [bit5]:CMPIF ( 変換結果比較割込み要求フラグビット ) A/D 変換の変換結果比較機能利用時は , 変換結果が A/D 比較値設定レジスタ (CMPD0) と比較されます。 比較結果が , A/D 比較値設定レジスタ (CMPD0) および A/D 比較コントロールレジスタ (CMPCR0) に設定した条件を満たしたことを示します。 このビットが "1" のときに CMPIE ビットが "1" に設定されていると変換結果比較割込 み要求が発生します。 CMPIF 読出し時 書込み時 0 条件を満たしていません。 このビットを "0" にクリアします。 1 条件を満たしました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 [bit4]:未定義ビット 664 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit3]:SCIE ( スキャン変換割込み許可ビット ) A/D スキャン変換の変換結果が , スキャン変換 FIFO 段数設定レジスタ (SFNS0) の SFS3 ∼ SFS0 ビットで設定した FIFO の段数まで格納されたとき (SCIF ビット =1) に , スキャン変換割込み要求を発生させるかどうかを設定します。 書込み値 説明 0 スキャン変換割込み要求の発生を禁止します。 1 スキャン変換割込み要求の発生を許可します。 [bit2]:PCIE ( 優先変換割込み許可ビット ) A/D 優先変換の変換結果が , 優先変換 FIFO 段数設定レジスタ (PFNS0) の PFS1, PFS0 ビットで設定した FIFO の段数まで格納されたとき (PCIF ビット =1) に , 優先変換割込 み要求を発生させるかどうかを設定します。 書込み値 説明 0 優先変換割込み要求の発生を禁止します。 1 優先変換割込み要求の発生を許可します。 [bit1]:CMPIE ( 変換結果比較割込み許可ビット ) A/D 変換の変換結果比較機能利用時は , 変換結果が A/D 比較値設定レジスタ (CMPD0) と比較されます。 比較結果が A/D 比較コントロールレジスタ (CMPCR0) に設定した条件を満たしたとき (CMPIF ビット =1) に , 変換結果比較割込み要求を発生させるかどうかを設定します。 書込み値 説明 0 変換結果比較割込み要求の発生を禁止します。 1 変換結果比較割込み要求の発生を許可します。 [bit0]:OVRIE (FIFO オーバラン割込み許可ビット ) スキャン変換コントロールレジスタ (SCCR0) の SOVR ビットまたは優先変換コント ロールレジスタ (PCCR0) の POVR ビットが "1" に変わったときに , FIFO オーバラン割 込み要求を発生させるかどうかを設定します。 FIFO が満杯 ( フル ) 時に FIFO への書込みが行われようとすると , スキャン変換コント ロールレジスタ (SCCR0) の SOVR ビットまたは優先変換コントロールレジスタ (PCCR0) の POVR ビットが "1" に変わります。 書込み値 CM71-10158-1 説明 0 FIFO オーバラン割込み要求の発生を禁止します。 1 FIFO オーバラン割込み要求の発生を許可します。 FUJITSU SEMICONDUCTOR LIMITED 665 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ A/DC ステータスレジスタ (ADSR0) 25.4.2 A/D 変換の状態を示すレジスタです。 A/DC ステータスレジスタ (ADSR0) のビット構成を図 25.4-2 に示します。 図 25.4-2 A/DC ステータスレジスタ (ADSR0) のビット構成 bit 7 6 ADSTP FDAS 未定義 R/W R/W 0 0 − X 属性 初期値 5 4 3 2 1 0 未定義 未定義 PCNS PCS SCS − X − X R R R 0 0 0 R/W:リード / ライト可能 R:リードオンリ −:未定義 X:不定 [bit7]:ADSTP (A/D 変換強制停止ビット ) A/D 変換を強制停止します。 ADSTP 書込み時 0 無視されます。 1 A/D 変換を強制停止します。 読出し時 "0" が読み出されます。 < 注意事項 > • このビットに "1" を書き込むと , A/D 変換が A/D スキャン変換の場合も , A/D 優先変換 の場合も変換動作は停止します。 • このビットに "1" を書き込んで A/D 変換を強制停止すると , PCNS ビット , PCS ビッ ト , SCS ビットが "0" にクリアされます。ただし , 他のレジスタには影響しません。 [bit6]:FDAS (FIFO データ配置選択ビット ) スキャン変換 FIFO データレジスタ (SCFD0) および優先変換 FIFO データレジスタ (PCFD0) のビット配置を設定します。 • 前詰めに配置:変換結果を前詰めに配置します ( チャネル情報あり , 優先 A/D 起動要 因情報あり ( 優先変換のみ )) 。 • 後ろ詰めに配置:変換結果を LSB 側に 6 ビットシフトし , 後ろ詰めに配置します ( チャネル情報なし ,優先 A/D 起動要因情報なし ( 優先変換のみ )) 。 変換結果は bit9 ∼ bit0 に配置されます。 666 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ 書込み値 説明 0 変換結果を前詰めに配置します。 1 変換結果を後ろ詰めに配置します このビットとスキャン変換 FIFO データレジスタ (SCFD0) および優先変換 FIFO データ レジスタ (PCFD0) の関係を図 25.4-3 に示します。 図 25.4-3 スキャン変換 FIFO データレジスタ (SCFD0) / 優先変換 FIFO データレジスタ (PCFD0) と の関係 スキャン変換 FIFO データレジスタ (SCFD0) FDAS=0 の場合 bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 SD9 SD8 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0 0 SC4 SC3 SC2 SC1 SC0 FDAS=1 の場合 bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 SD9 SD8 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0 優先変換 FIFO データレジスタ (PCFD0) FDAS=0 の場合 bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 PD9 PD8 PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 RS PC4 PC3 PC2 PC1 PC0 FDAS=1 の場合 bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 PD9 PD8 PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 < 注意事項 > • このビットに "1" を書き込んで後ろ詰め配置を選択すると , 変換結果が LSB 側へ 6 ビッ トシフトするため , 変換したチャネルの情報 ( 図 25.4-3 の SC4 ビット∼ SC0 ビット / PC4 ∼ PC0 ビット ) が失われます。1 チャネルのみの変換など , 変換結果にチャネル 情報が必要ないときにのみ , 後ろ詰め配置を利用してください。 • A/D 優先変換時に , このビットに "1" を書き込んで後ろ詰め配置を選択すると , A/D 優 先変換の起動要因情報 ( 図 25.4-3 の RS ビット ) が失われます。優先度 1 または優先 度 2 どちらか一方の A/D 優先変換を利用する場合にのみ , 後ろ詰め配置を利用してく ださい。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 667 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit5 ∼ bit3]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit2]:PCNS ( 優先変換保留フラグビット ) 優先度 2 の A/D 優先変換が保留中であることを示します。 優先度 1 の A/D 優先変換中に優先度 2 の A/D 優先変換を起動した場合や , 優先度 2 の A/D優先変換中に優先度1のA/D優先変換を起動すると, このビットが"1"に変わります。 読出し値 説明 0 優先度 2 の A/D 優先変換は保留されていません。 1 優先度 2 の A/D 優先変換が保留されています。 [bit1]:PCS ( 優先変換ステータスフラグビット ) 優先度 1 または優先度 2 の A/D 優先変換中であることを示します。 読出し値 説明 0 A/D 優先変換は停止しています。 1 A/D 優先変換中です。 [bit0]:SCS ( スキャン変換ステータスフラグビット ) A/D スキャン変換中であることを示します。 読出し値 668 説明 0 A/D スキャン変換は停止しています。 1 A/D スキャン変換中です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ スキャン変換コントロールレジスタ (SCCR0) 25.4.3 A/D スキャン変換の動作を制御するレジスタです。 スキャン変換コントロールレジスタ (SCCR0) のビット構成を図 25.4-4 に示します。 図 25.4-4 スキャン変換コントロールレジスタ (SCCR0) のビット構成 bit 7 6 5 4 3 2 1 0 SEMP SFUL SOVR SFCLR 未定義 RPT SHEN SSTR 属性 R R R/W R/W R/W R/W R/W 初期値 1 0 0 0 − X 0 0 0 R/W:リード / ライト可能 R:リードオンリ −:未定義 X:不定 < 注意事項 > このレジスタはワードでアクセスしないでください。 スキャン変換 FIFO データレジスタ (SCFD0) は , SEMP ビットが "0" のときに読み出す必 要があります。 [bit7]:SEMP ( スキャン変換用 FIFO エンプティフラグビット ) A/D スキャン変換用の FIFO が空 ( エンプティ ) になったことを示します。 読出し値 説明 0 A/D スキャン変換用 FIFO にデータがあります。 1 A/D スキャン変換用 FIFO が空 ( エンプティ ) です。 スキャン変換 FIFO データレジスタ (SCFD0) にデータが格納されると , このビットは "0" にクリアされます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 669 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit6]:SFUL ( スキャン変換用 FIFO フルビット ) A/D スキャン変換用の FIFO が満杯 ( フル ) になったことを示します。 読出し値 説明 0 A/D スキャン変換用 FIFO に空きがあります。 1 A/D スキャン変換用 FIFO が満杯 ( フル ) です。 SFCLR ビットに "1" を書き込むか , スキャン変換 FIFO データレジスタ (SCFD0) を読み 出すと , このビットは "0" にクリアされます。 [bit5]:SOVR ( スキャン変換オーバランフラグビット ) A/D スキャン変換用の FIFO が満杯 ( フル ) 時に書込みが行われようとした ( オーバラ ンが発生した ) ことを示します。 このビットが "1" のときに A/DC コントロールレジスタ (ADCR0) の OVRIE ビットが "1" に設定されていると , FIFO オーバラン割込み要求が発生します。 SOVR 読出し時 書込み時 0 オーバランは発生していません。 このビットを "0" にクリアします。 1 オーバランが発生しました。 無視されます。 < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • FIFO 満杯 ( フル ) 時に , FIFO に対して書込みが行われても FIFO 内の変換データは上 書きされません。 [bit4]:SFCLR ( スキャン変換用 FIFO クリアビット ) A/D スキャン変換用の FIFO をクリアします。 SFCLR 書込み時 0 無視されます。 1 A/D スキャン変換用 FIFO をクリア します。 読出し時 "0" が読み出されます。 < 注意事項 > このビットに "1" を書き込むと , A/D スキャン変換用の FIFO は空 ( エンプティ) になりま す。そのため , SEMP ビットが "1" に変わります。 [bit3]:未定義ビット 670 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit2]:RPT ( スキャン変換リピートビット ) A/D スキャン変換のモードを設定します。 • シングル変換モード:スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) に設定し たチャネルを 1 回だけ変換するモードです。 • リピート変換モード:スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) に設定し たチャネルを繰り返し変換するモードです。 書込み値 説明 0 シングル変換モード 1 リピート変換モード < 注意事項 > • リピート変換モードで変換中にこのビットに "0" を書き込むと , スキャン変換入力選択 レジスタ (SCIS20 ∼ SCIS00) に設定したチャネルを変換後 , 変換動作が停止します。 • リピート変換モードを設定する場合は , A/DC ステータスレジスタ (ADSR0) の SCS ビットで A/D スキャン変換が停止 (SCS=0) していることを確認してから , このビット に "1" を書き込んでください。 ただし , リピート変換モードの設定と同時に SSTR ビットで A/D スキャン変換を開始 (SSTR=1) する場合は , このビットと同時に SSTR ビットも書き込めます。 [bit1]:SHEN ( スキャン変換タイマ起動許可ビット ) ベースタイマの ch.0 の TOUT 信号で立上りエッジを検出したときに A/D スキャン変換 を起動するかどうかを設定します。 書込み値 説明 0 ベースタイマ (ch.0) での A/D スキャン変換の起動を禁止します。 1 ベースタイマ (ch.0) での A/D スキャン変換の起動を許可します。 < 注意事項 > • SSTR ビットに "1" を書き込んだ場合は , このビットの設定にかかわらず A/D スキャン 変換が起動します。 • このビットに "1" を書き込んだ場合でも , ベースタイマ (ch.0) での起動のタイミングと 同時に SSTR ビットに "1" が書き込まれると , ソフトウェア起動が優先されベースタイ マでの起動は無視されます。 TOUT 信号については , 「第 23 章 ベースタイマ」を参照してください。 • CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 671 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit0]:SSTR ( スキャン変換スタートビット ) A/D スキャン変換をソフトウェアで起動します。 変換中に "1" を書き込むと , 変換動作を停止し , 再度変換を開始します。 SSTR 672 書込み時 0 無視されます。 1 A/D スキャン変換を起動 / 再起動し ます。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ スキャン変換 FIFO 段数設定レジスタ (SFNS0) 25.4.4 A/D スキャン変換時に , A/D スキャン変換用 FIFO のどの段数まで変換結果が格納されたら , スキャン変換割込み要求を発生させるかを設定するレジスタです。 スキャン変換 FIFO 段数設定レジスタ (SFNS0) のビット構成を図 25.4-5 に示します。 図 25.4-5 スキャン変換 FIFO 段数設定レジスタ (SFNS0) のビット構成 bit 7 6 5 4 3 2 1 0 未定義 未定義 未定義 未定義 SFS3 SFS2 SFS1 SFS0 − X − X − X − X R/W R/W R/W R/W 0 0 0 0 属性 初期値 R/W:リード / ライト可能 −:未定義 X:不定 < 注意事項 > このレジスタはワードでアクセスしないでください。 [bit7 ∼ bit4]:未定義ビット CM71-10158-1 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED 673 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit3 ∼ bit0]:SFS3 ∼ SFS0 ( スキャン変換 FIFO 段数設定ビット ) A/D スキャン変換時に , A/D スキャン変換用 FIFO のどの段数まで変換結果が格納され たら , スキャン変換割込み要求を発生させるかを設定します。 このビットで設定した段数まで FIFO にデータが格納されると , A/DC コントロールレ ジスタ (ADCR0) の SCIF ビットが "1" に変わります。 SFS3 674 SFS2 SFS1 SFS0 説明 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 段目 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ スキャン変換 FIFO データレジスタ (SCFD0) 25.4.5 A/D スキャン変換の変換結果を格納するレジスタです。16 段の FIFO で構成されています。 このレジスタから FIFO のデータを順番に読み出せます。 このレジスタは A/DC ステータスレジスタ (ADSR0) の FDAS ビットの設定によって , ビット 構成が異なります。 < 注意事項 > このレジスタは, 必ずスキャン変換コントロールレジスタ (SCCR0) のSEMPビットで A/D スキャン変換用 FIFO にデータがあることを確認してから (SEMP=0) 読み出して ください。 • A/D スキャン変換用 FIFO が空 ( エンプティ ) (SEMP=1) のときに , このレジスタを読 み出すと , 読み出したデータが有効なのか無効なのかを判断できません。詳しくは , 「25.6.3 FIFO の動作」の「■ A/D スキャン変換時の動作」を参照してください。 • このレジスタはワードでアクセスしないでください。 • このレジスタにバイトアクセスする場合は , 下位バイト (bit7 ∼ bit0) →上位バイト (bit15 ∼ bit8) の順番にアクセスしてください。上位バイトを読み出すと , FIFO のデー タがシフトします。 ■ 前詰め配置の場合 (FDAS=0) A/DC ステータスレジスタ (ADSR0) の FDAS ビットで前詰め配置 (FDAS=0) に設定し ている場合のスキャン変換 FIFO データレジスタ (SCFD0) のビット構成を図 25.4-6 に 示します。 図 25.4-6 スキャン変換 FIFO データレジスタ (SCFD0) のビット構成 bit 15 14 13 12 11 10 9 8 SD9 SD8 SD7 SD6 SD5 SD4 SD3 SD2 属性 R R R R R R R R 初期値 X X X X X X X X 7 6 5 4 3 2 1 0 SD1 SD0 未定義 SC4 SC3 SC2 SC1 SC0 属性 R R R R R R 初期値 X X − X R X X X X X bit R:リードオンリ −:未定義 X:不定 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 675 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit15 ∼ bit6]:SD9 ∼ SD0 (A/D スキャン変換結果ビット ) A/D スキャン変換の変換結果を格納します。 [bit5]:未定義ビット "0" が読み出されます。 [bit4 ∼ bit0]:SC4 ∼ SC0 ( 変換チャネルビット ) SD9 ∼ SD0 ビットのデータが , どのチャネルのアナログ入力を変換したものなのかを 示します。 SC4 SC3 SC2 SC1 SC0 説明 0 0 0 0 0 ch.0 (AN0 端子 ) 0 0 0 0 1 ch.1 (AN1 端子 ) 0 0 0 1 0 ch.2 (AN2 端子 ) 0 0 0 1 1 ch.3 (AN3 端子 ) 0 0 1 0 0 ch.4 (AN4 端子 ) 0 0 1 0 1 ch.5 (AN5 端子 ) 0 0 1 1 0 ch.6 (AN6 端子 ) 0 0 1 1 1 ch.7 (AN7 端子 ) 0 1 0 0 0 ch.8 (AN8 端子 ) 0 1 0 0 1 ch.9 (AN9 端子 ) 0 1 0 1 0 ch.10 (AN10 端子 ) 0 1 0 1 1 ch.11 (AN11 端子 ) 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 設定禁止 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため設定禁止です。) 676 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ ■ 後ろ詰め配置の場合 (FDAS=1) A/DC ステータスレジスタ (ADSR0) の FDAS ビットで後ろ詰め配置 (FDAS=1) に設定 している場合のスキャン変換 FIFO データレジスタ (SCFD0) のビット構成を図 25.4-7 に示します。 図 25.4-7 スキャン変換 FIFO データレジスタ (SCFD0) のビット構成 bit 15 14 13 12 11 10 9 8 SD8 未定義 未定義 未定義 未定義 未定義 未定義 SD9 − X − X − X − X − X − X R R X X 7 6 5 4 3 2 1 0 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0 属性 R R R R R R R R 初期値 X X X X X X X X 属性 初期値 bit R:リードオンリ −:未定義 X:不定 [bit15 ∼ bit10]:未定義ビット "0" が読み出されます。 [bit9 ∼ bit0]:SD9 ∼ SD0 (A/D スキャン変換結果ビット ) A/D スキャン変換の変換結果を格納します。 < 注意事項 > 後ろ詰め配置では , 変換したチャネルの情報は保存されていません。後ろ詰め配置は , 1 チャネルのみの変換など , 変換結果にチャネル情報が必要ないときに使用してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 677 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) 25.4.6 A/D スキャン変換をするチャネルを選択するレジスタです。 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) のビット構成を図 25.4-8 に示しま す。 図 25.4-8 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) のビット構成 スキャン変換入力選択レジスタ 20 (SCIS20) bit 属性 初期値 7 6 5 4 3 2 1 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 スキャン変換入力選択レジスタ 10 (SCIS10) bit 属性 初期値 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W AN11 AN10 AN9 AN8 R/W R/W R/W R/W 0 0 0 0 0 0 0 0 スキャン変換入力選択レジスタ 00 (SCIS00) bit 属性 初期値 7 6 5 4 3 2 1 0 AN7 AN6 AN5 AN4 AN3 AN2 AN1 AN0 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:リード / ライト可能 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため予約ビットです。) SCIS20 ∼ SCIS00 : AN11 ∼ AN0 ( アナログ入力選択ビット ) "1" を書き込んだビットに対応するチャネルが変換されます。 AN11 ビットが ch.11 (AN11 端子 ), AN10 ビットが ch.10 (AN10 端子 ) •••AN1 ビットが ch.1 (AN1 端子 ), AN0 ビットが ch.0 (AN0 端子 ) に対応します。 このレジスタで複数のチャネルを選択した場合は , 番号の若いチャネルから順番に変 換されます。例えば , AN3 ビット , AN5 ビット , AN10 ビット , AN11 ビットに "1" を書 き込むと次の順番で変換されます。 ch.3 → ch.5 → ch.10 → ch.11 < 注意事項 > 678 • このレジスタは A/D 変換が停止中に書き込んでください。 • 予約ビットは必ず "0" を書き込んでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ 優先変換コントロールレジスタ (PCCR0) 25.4.7 A/D 優先変換の動作を制御するレジスタです。また , 優先度のレベルを 2 レベルから設定で きます。 優先変換コントロールレジスタ (PCCR0) のビット構成を図 25.4-9 に示します。 図 25.4-9 優先変換コントロールレジスタ (PCCR0) のビット構成 bit 7 6 5 4 3 2 1 0 PEMP PFUL POVR PFCLR PEEN PHEN PSTR 属性 R R R/W R/W 予約 R/W R/W R/W R/W 初期値 1 0 0 0 0 0 0 0 R/W:リード / ライト可能 R:リードオンリ < 注意事項 > このレジスタはワードでアクセスしないでください。 優先変換 FIFO データレジスタ (PCFD0) は , SEMP ビットが "0" のときに読み出す必要が あります。 [bit7]:PEMP ( 優先変換用 FIFO エンプティフラグビット ) A/D 優先変換用の FIFO が空 ( エンプティ ) になったことを示します。 読出し値 説明 0 A/D 優先変換用 FIFO にデータがあります。 1 A/D 優先変換用 FIFO が空 ( エンプティ ) です。 優先変換 FIFO データレジスタ (PCFD0) にデータが格納されると , このビットは "0" に クリアされます。 [bit6]:PFUL ( 優先変換用 FIFO フルビット ) A/D 優先変換用の FIFO が満杯 ( フル ) になったことを示します。 読出し値 説明 0 A/D 優先変換用 FIFO に空きがあります。 1 A/D 優先変換用 FIFO が満杯 ( フル ) です。 PFCLR ビットに "1" を書き込むか優先変換 FIFO データレジスタ (PCFD0) を読み出す と , このビットは "0" にクリアされます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 679 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit5]:POVR ( 優先変換オーバランフラグビット ) A/D 優先変換用の FIFO が満杯 ( フル ) 時に書込みが行われようとした ( オーバランが 発生した ) ことを示します。 このビットが "1" のときに A/DC コントロールレジスタ (ADCR0) の OVRIE ビットが "1" に設定されていると , FIFO オーバラン割込み要求が発生します。 POVR 読出し時 書込み時 0 オーバランは発生していません。 このビットを "0" にクリアします。 1 オーバランが発生しました。 無視されます。 < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • FIFO 満杯 ( フル ) 時に , FIFO に対して書込みが行われても FIFO 内の変換データは上 書きされません。 [bit4]:PFCLR ( 優先変換用 FIFO クリアビット ) A/D 優先変換用の FIFO をクリアします。 PFCLR 書込み時 0 無視されます。 1 A/D 優先変換用 FIFO をクリアしま す。 読出し時 "0" が読み出されます。 < 注意事項 > このビットに "1" を書き込むと , A/D 優先変換用の FIFO は空 ( エンプティ ) になります。 そのため , PEMP ビットが "1" に変わります。 [bit3]:予約ビット 680 書込み時 必ず "0" を書き込んでください。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit2]:PEEN ( 優先変換外部起動許可ビット ) ADTRG0 端子から立下りエッジが検出されたときに , 優先度 1 の A/D 優先変換を起動 するかどうかを設定します。優先度 1> 優先度 2 となり , 優先度 1 が最優先になります。 書込み値 説明 0 優先度 1 の A/D 優先変換の起動を禁止します。 1 優先度 1 の A/D 優先変換の起動を許可します。 < 注意事項 > ADTRG0 端子として使用できる端子は , 本デバイスに 4 本用意されています。ADTRG0 端子として使用する端子を指定してください。 端子の設定方法は , 「第 14 章 I/O ポート」を参照してください。 [bit1]:PHEN ( 優先変換タイマ起動許可ビット ) ベースタイマの ch.2 の TOUT 信号で立上りエッジを検出したときに , 優先度 2 の A/D 優先変換を起動するかどうかを設定します。優先度 2< 優先度 1 になります。 書込み値 説明 0 優先度 2 の A/D 優先変換の起動を禁止します。 1 優先度 2 の A/D 優先変換の起動を許可します。 < 注意事項 > • PSTR ビットに "1" を書き込んだ場合は , このビットの設定にかかわらず優先度 2 の A/D 優先変換が起動します。 • TOUT 信号については , 「第 23 章 ベースタイマ」を参照してください。 [bit0]:PSTR ( 優先変換スタートビット ) 優先度 2 の A/D 優先変換をソフトウェアで起動します。優先度 2< 優先度 1 になります。 PSTR 書込み時 0 無視されます。 1 優先度 2 の A/D 優先変換を起動し ます。 読出し時 "0" が読み出されます。 < 注意事項 > A/D 変換中にこのビットに "1" を書き込んでも A/D 変換は再起動できません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 681 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ 優先変換 FIFO 段数設定レジスタ (PFNS0) 25.4.8 A/D 優先変換時に , A/D 優先変換用 FIFO のどの段数まで変換結果が格納されたら , 優先変換 割込み要求を発生させるかを設定するレジスタです。 優先変換 FIFO 段数設定レジスタ (PFNS0) のビット構成を図 25.4-10 に示します。 図 25.4-10 優先変換 FIFO 段数設定レジスタ (PFNS0) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 未定義 未定義 未定義 未定義 未定義 未定義 PFS1 PFS0 − X − X − X − X − X − X R/W R/W 0 0 R/W:リード / ライト可能 −:未定義 X:不定 < 注意事項 > このレジスタはワードでアクセスしないでください。 優先変換 FIFO データレジスタ (PCFD0) は , PEMP ビットが "0" のときに読み出す必要が あります。 [bit7 ∼ bit2]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit1, bit0]:PFS1, PFS0 ( 優先変換 FIFO 段数設定ビット ) A/D 優先変換時に , A/D 優先用 FIFO のどの段数まで変換結果が格納されたら , 優先変 換割込み要求を発生させるかを設定します。 このビットに設定した段数に変換結果が格納されると , A/DC コントロールレジスタ (ADCR0) の PCIF ビットが "1" に変わります。 PFS1 682 PFS0 説明 0 0 1 段目 0 1 2 段目 1 0 3 段目 1 1 4 段目 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ 優先変換 FIFO データレジスタ (PCFD0) 25.4.9 A/D 優先変換の変換結果を格納するレジスタです。4 段の FIFO で構成されています。このレ ジスタから FIFO のデータを順番に読み出せます。 このレジスタは A/DC ステータスレジスタ (ADSR0) の FDAS ビットの設定によって , ビット 構成が異なります。 < 注意事項 > このレジスタは , 必ず優先変換コントロールレジスタ (PCCR0) の PEMP ビットで A/ D 優先変換用 FIFO にデータがあることを確認してから (PEMP=0) 読み出してくださ い。 • A/D 優先変換用 FIFO が空 ( エンプティ ) (PEMP=1) のときに , このレジスタを読み出 すと , 読み出したデータが有効なのか無効なのかを判断できません。詳しくは ,「25.6.3 FIFO の動作」の「■ A/D 優先変換時の動作」を参照してください。 • このレジスタにはワードでアクセスしないでください。 • このレジスタにバイトアクセスする場合は , 下位バイト (bit7 ∼ bit0) →上位バイト (bit15 ∼ bit8) の順番にアクセスしてください。上位バイトを読み出すと , FIFO のデー タがシフトします。 ■ 前詰め配置の場合 (FDAS=0) A/DC ステータスレジスタ (ADSR0) の FDAS ビットで前詰め配置 (FDAS=0) に設定し ている場合の優先変換 FIFO データレジスタ (PCFD0) のビット構成を図 25.4-11 に示し ます。 図 25.4-11 優先変換 FIFO データレジスタ (PCFD0) のビット構成 bit 15 14 13 12 11 10 9 8 PD9 PD8 PD7 PD6 PD5 PD4 PD3 PD2 属性 R R R R R R R R 初期値 X X X X X X X X 7 6 5 4 3 2 1 0 PD1 PD0 RS PC4 PC3 PC2 PC1 PC0 属性 R R R R R R R R 初期値 X X X X X X X X bit R:リードオンリ X:不定 [bit15 ∼ bit6]:PD9 ∼ PD0 (A/D 優先変換結果ビット ) A/D 優先変換の変換結果を格納します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 683 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit5]:RS ( 優先 A/D 起動要因ビット ) PD9 ∼ PD0 ビットのデータが , 優先度 2 で変換されたデータなのか優先度 1 で変換さ れたデータなのか (A/D 優先変換の起動要因 ) を示します。 読出し値 説明 0 優先度 2 ( ソフトウェア / ベースタイマでの起動 ) 1 優先度 1 ( 外部トリガでの起動 ) < 注意事項 > 優先度 2 の A/D 優先変換の起動要因がソフトウェアなのかベースタイマなのかを区別す ることはできません。 684 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit4 ∼ bit0]:PC4 ∼ PC0 ( 変換チャネルビット ) PD9 ∼ PD0 ビットのデータが , どのチャネルのアナログ入力を変換したものなのかを 示します。 PC4 PC3 PC2 PC1 PC0 説明 0 0 0 0 0 ch.0 (AN0 端子 ) 0 0 0 0 1 ch.1 (AN1 端子 ) 0 0 0 1 0 ch.2 (AN2 端子 ) 0 0 0 1 1 ch.3 (AN3 端子 ) 0 0 1 0 0 ch.4 (AN4 端子 ) 0 0 1 0 1 ch.5 (AN5 端子 ) 0 0 1 1 0 ch.6 (AN6 端子 ) 0 0 1 1 1 ch.7 (AN7 端子 ) 0 1 0 0 0 ch.8 (AN8 端子 ) 0 1 0 0 1 ch.9 (AN9 端子 ) 0 1 0 1 0 ch.10 (AN10 端子 ) 0 1 0 1 1 ch.11 (AN11 端子 ) 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 設定禁止 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため設定禁止です。) < 注意事項 > 優先度 1 の A/D 優先変換は ch.0 ∼ ch.7 にのみ行えます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 685 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ ■ 後ろ詰め配置の場合 (FDAS=1) A/DC ステータスレジスタ (ADSR0) の FDAS ビットで後ろ詰め配置 (FDAS=1) に設定 している場合の優先変換 FIFO データレジスタ (PCFD0) のビット構成を図 25.4-12 に示 します。 図 25.4-12 優先変換 FIFO データレジスタ (PCFD0) のビット構成 bit 15 14 13 12 11 10 9 8 PD8 未定義 未定義 未定義 未定義 未定義 未定義 PD9 − X − X − X − X − X − X R R X X 7 6 5 4 3 2 1 0 PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 属性 R R R R R R R R 初期値 X X X X X X X X 属性 初期値 bit R:リードオンリ −:未定義 X:不定 [bit15 ∼ bit10]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit9 ∼ bit0]:PD9 ∼ PD0 (A/D 優先変換結果ビット ) A/D 優先変換の変換結果を格納します。 < 注意事項 > 後ろ詰め配置では , A/D 優先変換の起動要因 ( 優先度 ) と , 変換したチャネルの情報は保 存されません。後ろ詰め配置は , 優先度 1 または優先度 2 どちらか一方の A/D 優先変換を 利用し , 1 チャネルのみの変換など , 変換結果にチャネル情報が必要ない場合にのみ , 利 用してください。 686 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ 優先変換入力選択レジスタ (PCIS0) 25.4.10 A/D 優先変換をするチャネルを選択するレジスタです。 優先度 2 で変換を行うチャネルを 24 チャネルの中から , 優先度 1 で変換を行うチャネルを ch.0 ∼ ch.7 の中から , それぞれ 1 チャネル選択します。 優先変換入力選択レジスタ (PCIS0) のビット構成を図 25.4-13 に示します。 図 25.4-13 優先変換入力選択レジスタ (PCIS0) のビット構成 bit 属性 7 6 5 4 3 2 1 0 P2A4 P2A3 P2A2 P2A1 P2A0 P1A2 P1A1 P1A0 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:リード / ライト可能 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 687 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit7 ∼ bit3]:P2A4 ∼ P2A0 ( 優先度 2 アナログ入力選択ビット ) 優先度 2 の A/D 優先変換を行うチャネルを選択します。優先度 2< 優先度 1 になります。 P2A4 P2A3 P2A2 P2A1 P2A0 説明 0 0 0 0 0 ch.0 (AN0 端子 ) 0 0 0 0 1 ch.1 (AN1 端子 ) 0 0 0 1 0 ch.2 (AN2 端子 ) 0 0 0 1 1 ch.3 (AN3 端子 ) 0 0 1 0 0 ch.4 (AN4 端子 ) 0 0 1 0 1 ch.5 (AN5 端子 ) 0 0 1 1 0 ch.6 (AN6 端子 ) 0 0 1 1 1 ch.7 (AN7 端子 ) 0 1 0 0 0 ch.8 (AN8 端子 ) 0 1 0 0 1 ch.9 (AN9 端子 ) 0 1 0 1 0 ch.10 (AN10 端子 ) 0 1 0 1 1 ch.11 (AN11 端子 ) 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 設定禁止 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため設定禁止です。) 688 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ [bit2 ∼ bit0]:P1A2 ∼ P1A0 ( 優先度 1 アナログ入力選択ビット ) 優先度 1 の A/D 優先変換を行うチャネルを選択します。優先度 1 の A/D 優先変換は ch.0 ∼ ch.7 に対してのみ行えます。優先度 2< 優先度 1 になります。 P1A2 CM71-10158-1 P1A1 P1A0 説明 0 0 0 ch.0 (AN0 端子 ) 0 0 1 ch.1 (AN1 端子 ) 0 1 0 ch.2 (AN2 端子 ) 0 1 1 ch.3 (AN3 端子 ) 1 0 0 ch.4 (AN4 端子 ) 1 0 1 ch.5 (AN5 端子 ) 1 1 0 ch.6 (AN6 端子 ) 1 1 1 ch.7 (AN7 端子 ) FUJITSU SEMICONDUCTOR LIMITED 689 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ A/D 比較値設定レジスタ (CMPD0) 25.4.11 比較機能使用時に , A/D 変換の結果と比較する値を設定するレジスタです。変換結果の上位 8 ビットがこのレジスタに設定した値と比較されます。比較結果が A/D 比較コントロールレジ スタ (CMPCR0) に設定された条件を満たしていると , A/DC コントロールレジスタ (ADCR0) の CMPIF ビットが "1" に変わります。 A/D 比較値設定レジスタ (CMPD0) のビット構成を図 25.4-14 に示します。 図 25.4-14 A/D 比較値設定レジスタ (CMPD0) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 CMAD9 CMAD8 CMAD7 CMAD6 CMAD5 CMAD4 CMAD3 CMAD2 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:リード / ライト可能 < 注意事項 > このレジスタに設定した値と A/D 変換結果の上位 8 ビット (bit9 ∼ bit2) が比較されます。 A/D 変換結果の LSB 側 2 ビット (bit1, bit0) は比較されません。 690 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ A/D 比較コントロールレジスタ (CMPCR0) 25.4.12 比較機能を制御するレジスタです。比較機能使用時 , A/D 変換結果が A/D 比較値設定レジス タ (CMPD0) に設定した値と比較され, このレジスタに設定した条件を満たしていると, A/DC コントロールレジスタ (ADCR0) の CMPIF ビットが "1" に変わります。 A/D 比較コントロールレジスタ (CMPCR0) のビット構成を図 25.4-15 に示します。 図 25.4-15 A/D 比較コントロールレジスタ (CMPCR0) のビット構成 bit 属性 7 6 5 4 3 2 1 0 CMPEN CMD1 CMD0 CCH4 CCH3 CCH2 CCH1 CCH0 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]:CMPEN ( 比較機能動作許可ビット ) 比較機能を使用するかどうかを設定します。 書込み値 説明 0 比較機能を利用しません。 1 比較機能を利用します。 [bit6]:CMD1 ( 比較モード 1 ビット ) 変換割込み要求を発生させる条件を設定します。 書込み値 説明 0 A/D 変換結果が A/D 比較値設定レジスタ (CMPD0) に設定した値より小 さい場合に変換結果割込み要求を発生させます。 1 A/D 変換結果が A/D 比較値設定レジスタ (CMPD0) に設定した値と同じ か大きい場合に変換結果割込み要求を発生させます。 [bit5]:CMD0 ( 比較モード 0 ビット ) 比較対象を次のいずれかから選択します。 • CCH4 ∼ CCH0 ビットで設定したチャネルの変換結果と A/D 比較値設定レジスタ (CMPD0) に設定した値を比較 • すべてのチャネルの変換結果と A/D 比較値設定レジスタ (CMPD0) に設定した値を 比較 書込み値 CM71-10158-1 説明 0 CCH4 ∼ CCH0 ビットで設定したチャネルの変換結果を比較します。 1 すべてのチャネルの変換結果を比較します。 FUJITSU SEMICONDUCTOR LIMITED 691 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ < 注意事項 > このビットに "1" を書き込むと , CCH4 ∼ CCH0 ビットの設定は無効になります。 [bit4 ∼ bit0]:CCH4 ∼ CCH0 ( 比較対象アナログ入力チャネルビット ) CMD0 ビットが "0" のときに , A/D 比較値設定レジスタ (CMPD0) に設定した値と比較 するチャネルを設定します。 CCH4 CCH3 CCH2 CCH1 CCH0 説明 0 0 0 0 0 ch.0 (AN0 端子 ) 0 0 0 0 1 ch.1 (AN1 端子 ) 0 0 0 1 0 ch.2 (AN2 端子 ) 0 0 0 1 1 ch.3 (AN3 端子 ) 0 0 1 0 0 ch.4 (AN4 端子 ) 0 0 1 0 1 ch.5 (AN5 端子 ) 0 0 1 1 0 ch.6 (AN6 端子 ) 0 0 1 1 1 ch.7 (AN7 端子 ) 0 1 0 0 0 ch.8 (AN8 端子 ) 0 1 0 0 1 ch.9 (AN9 端子 ) 0 1 0 1 0 ch.10 (AN10 端子 ) 0 1 0 1 1 ch.11 (AN11 端子 ) 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 設定禁止 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため設定禁止です。) 692 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 25 章 10 ビット A/D コンバータ 25.4 < 注意事項 > CMD0ビットで, すべてのチャネルの変換結果を比較する (CMD0=1) 設定にしている場合 は , このビットの設定は無視されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 693 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ サンプリング時間設定レジスタ (ADST00, ADST10) 25.4.13 A/D 変換開始後 , 入力電圧がサンプル & ホールド回路でサンプリング ( 標本化 ) が開始され保 持されるまでの時間 ( サンプリング時間 ) を設定します。A/D 変換時間はサンプリング時間と コンペア時間で構成されています。 サンプリング時間を設定するため , このレジスタが 2 つ用意されています。それぞれのレジ スタにサンプリング時間を設定し , サンプリング時間選択レジスタ (ADSS20 ∼ ADSS00) で どちらのレジスタに設定したサンプリング時間を使用するかをチャネルごとに選択できま す。 サンプリング時間設定レジスタ (ADST00, ADST10) のビット構成を図 25.4-16に示しま す。 図 25.4-16 サンプリング時間設定レジスタ (ADST00, ADST10) のビット構成 サンプリング時間設定レジスタ 00 (ADST00) bit 15 14 13 12 11 10 9 8 STX01 STX00 ST05 ST04 ST03 ST02 ST01 ST00 R/W R/W R/W R/W R/W R/W R/W R/W 0 0 1 0 0 0 0 0 属性 初期値 サンプリング時間設定レジスタ 10 (ADST10) bit 7 6 5 4 3 2 1 0 STX11 STX10 ST15 ST14 ST13 ST12 ST11 ST10 R/W R/W R/W R/W R/W R/W R/W R/W 0 0 1 0 0 0 0 0 属性 初期値 R/W:リード / ライト可能 < 注意事項 > 694 • このレジスタは A/D 変換が停止中に書き込んでください。 • サンプリング時間については , 「25.6 動作説明と設定手順例」の「■ A/D 変換時間」 を参照してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ ● サンプリング時間設定レジスタ 00 (ADST00) 1 つ目のサンプリング時間を設定します。 [bit15, bit14]:STX01, STX00 ( サンプリング時間 N 倍設定ビット ) ST05 ∼ ST00 ビットで設定した値を N 倍します。 STX01 STX00 説明 0 0 設定値× 1 倍 0 1 設定値× 4 倍 1 0 設定値× 8 倍 1 1 設定値× 16 倍 [bit13 ∼ bit8]:ST05 ∼ ST00 ( サンプリング時間設定ビット ) サンプリング時間を決定するための値を設定します。 このビットに書き込んだ値から次の計算式でサンプリング時間が決定されます。 サンプリング時間 = 周辺クロック (PCLK) の周期× (ST+1) × STX ST:ST05 ∼ ST00 の設定値 STX:STX01, STX00 ビットでの設定倍数 例:ST05 ∼ ST00=9, STX01, STX00=01 (4 倍 ), 周辺クロック (PCLK) =20MHz (50ns) サンプリング時間 =50ns × (9+1) × 4=2μs < 注意事項 > • STX01, STX00 ビットを "00" ( 設定値× 1 倍 ) に設定した場合は , このビットが "3" 以 上になるように設定してください。 • サンプリング時間については , 「25.6 動作説明と設定手順例」の「■ A/D 変換時間」 を参照してください。 • サンプリング時間設定レジスタ 00 (ADST00) は電気的特性のサンプリング時間を満た すように設定してください。電気的特性については , 『データシート』を参照してく ださい。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 695 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ ● サンプリング時間設定レジスタ 10 (ADST10) 2 つ目のサンプリング時間を設定します。 [bit7, bit6]:STX11, STX10 ( サンプリング時間 N 倍設定ビット ) ST15 ∼ ST10 ビットで設定した値を N 倍します。 STX11 STX10 説明 0 0 設定値× 1 倍 0 1 設定値× 4 倍 1 0 設定値× 8 倍 1 1 設定値× 16 倍 [bit5 ∼ bit0]:ST15 ∼ ST10 ( サンプリング時間設定ビット ) サンプリング時間を決定するための値を設定します。 このビットに書き込んだ値から次の計算式でサンプリング時間が決定されます。 サンプリング時間 = 周辺クロック (PCLK) の周期× (ST+1) × STX ST:ST15 ∼ ST10 ビットの設定値 STX:STX11, STX10 ビットでの設定倍数 例:ST15 ∼ ST10=9, STX11, STX10=01 (4 倍 ), 周辺クロック (PCLK) =20MHz (50ns) サンプリング時間 =50ns × (9+1) × 4=2μs < 注意事項 > 696 • STX11, STX10 ビットを "00" ( 設定値× 1 倍 ) に設定した場合は , このビットが "3" 以 上になるように設定してください。 • サンプリング時間については , 「25.6 動作説明と設定手順例」の「■ A/D 変換時間」 を参照してください。 • サンプリング時間設定レジスタ 10 (ADST10) は電気的特性のサンプリング時間を満た すように設定してください。電気的特性については , 『データシート』を参照してく ださい。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ サンプリング時間選択レジスタ (ADSS20 ∼ ADSS00) 25.4.14 A/D サンプリング時間を選択するレジスタです。 サンプリング時間設定レジスタ 00 (ADST00) に設定したサンプリング時間を使用するか , サ ンプリング時間設定レジスタ 10 (ADST10) に設定したサンプリング時間を使用するかをチャ ネルごとに選択できます。 サンプリング時間選択レジスタ (ADSS20 ∼ ADSS00) のビット構成を図 25.4-17 に示し ます。 図 25.4-17 サンプリング時間選択レジスタ (ADSS20 ∼ ADSS00) のビット構成 サンプリング時間選択レジスタ 20 (ADSS20) bit 属性 7 6 5 4 3 2 1 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 1 0 初期値 サンプリング時間選択レジスタ 10 (ADSS10) bit 属性 7 6 5 4 3 2 予約 R/W 予約 R/W 予約 R/W 予約 R/W TS11 TS10 TS9 TS8 R/W R/W R/W R/W 0 0 0 0 0 0 0 0 初期値 サンプリング時間選択レジスタ 00 (ADSS00) bit 属性 7 6 5 4 3 2 1 0 TS7 TS6 TS5 TS4 TS3 TS2 TS1 TS0 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:リード / ライト可能 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため , TS10, TS11 は 予約ビットです。) < 注意事項 > • このレジスタは A/D 変換が停止中に書き込んでください。 • 予約ビットは必ず "0" を書き込んでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 697 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ ADSS10 ∼ ADSS00:TS11 ∼ TS0 ( サンプリング時間選択ビット ) サンプリング時間設定レジスタ 00 (ADST00) に設定したサンプリング時間を使用する か , サンプリング時間設定レジスタ 10 (ADST10) に設定したサンプリング時間を使用 するかをチャネルごとに設定します。 書込み値 説明 0 サンプリング時間設定レジスタ 00 (ADST00) に設定したサンプリング時 間を使用します。 1 サンプリング時間設定レジスタ 10 (ADST10) に設定したサンプリング時 間を使用します。 TS11 ビットが ch.11 (AN11 端子 ), TS10 ビットが ch.10 (AN10 端子 ) •••TS1 ビットが ch.1 (AN1 端子 ), TS0 ビットが ch.0 (AN0 端子 ) に対応します。 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しないため , TS10,TS11 は 予約ビットです。) 698 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.4 MB91665 シリーズ コンペア時間設定レジスタ (ADCT0) 25.4.15 A/D 変換時間のコンペア時間を設定するレジスタです。A/D 変換時間はサンプリング時間と コンペア時間で構成されています。 コンペア時間設定レジスタ (ADCT0) のビット構成を図 25.4-18 に示します。 図 25.4-18 コンペア時間設定レジスタ (ADCT0) のビット構成 bit 7 6 5 4 3 2 1 0 未定義 未定義 未定義 未定義 未定義 CT2 CT1 CT0 − X − X − X − X − X R/W R/W R/W 1 1 1 属性 初期値 R/W:リード / ライト可能 −:未定義 X:不定 < 注意事項 > このレジスタは A/D 変換が停止中に書き込んでください。 [bit7 ∼ bit3]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit2 ∼ bit0]:CT2 ∼ CT0 ( コンペア時間設定ビット ) コンペア時間を決定するための値を設定します。 このビットに書き込んだ値から次の計算式でコンペア時間が決定されます。 コンペア時間 ={ (CT+1) × 10+4} ×周辺クロック (PCLK) の周期 CT:このビット設定値 例:CT=1, 周辺クロック (PCLK) =20MHz (50ns) コンペア時間 ={ (1+1) × 10+4} × 50ns=1.2μs < 注意事項 > コンペア時間については , 「25.6 動作説明と設定手順例」の「■ A/D 変換時間」を参照 してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 699 第 25 章 10 ビット A/D コンバータ 25.5 MB91665 シリーズ 25.5 割込み 次の場合に割込み要求を発生できます。 • A/D スキャン変換時に設定した段数の FIFO にデータが格納された ( スキャン変換割込み 要求 ) • A/D 優先変換時に設定した段数の FIFO にデータが格納された ( 優先変換割込み要求 ) • FIFO が満杯 ( フル ) のときに , 次の変換結果を格納しようとした (FIFO オーバラン割込 み要求 ) • 比較機能利用時に , 変換結果が割込み要求を発生する条件を満たした ( 変換結果比較割込 み要求 ) ■ A/D スキャン変換時の割込み要求 A/D スキャン変換時の割込み要求について表 25.5-1 に示します。 表 25.5-1 A/D スキャン変換時の割込み要求 割込み要求 割込み要求フラグ 割込み要求許可 割込み要求のクリア スキャン変換割込み ADCR の SCIF=1 要求 ADCR の SCIE=1 ADCR の SCIF ビット に "0" を書き込む FIFO オーバラン割込 SCCR の SOVR=1 み要求 ADCR の OVRIE=1 SCCR の SOVR ビッ トに "0" を書き込む 変換結果比較割込み ADCR の CMPIF=1 ADCR の CMPIE=1 ADCR の CMPIF ビッ 要求 トに "0" を書き込む ADCR:A/DC コントロールレジスタ (ADCR0) SCCR:スキャン変換コントロールレジスタ (SCCR0) ■ A/D 優先変換時の割込み要求 A/D 優先変換時の割込み要求について表 25.5-2 に示します。 表 25.5-2 A/D 優先変換時の割込み要求 割込み要求 割込み要求フラグ 割込み要求許可 優先変換割込み要求 ADCR の PCIF=1 ADCR の PCIE=1 FIFO オーバラン割込 PCCR の POVR=1 み要求 割込み要求のクリア ADCR の PCIF ビット に "0" を書き込む ADCR の OVRIE=1 PCCR の POVR ビッ トに "0" を書き込む 変換結果比較割込み ADCR の CMPIF=1 ADCR の CMPIE=1 ADCR の CMPIF ビッ 要求 トに "0" を書き込む ADCR:A/DC コントロールレジスタ (ADCR0) PCCR:優先変換コントロールレジスタ (PCCR0) 700 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.5 MB91665 シリーズ < 注意事項 > • 割込み要求フラグが"1"のときに割込み要求の発生を許可すると割込みを許可した時点 で , 割込み要求が発生します。 割込み要求の発生を許可する場合は , 次のいずれかの処理を行ってください。 - 割込み要求の発生を許可する前に割込み要求をクリアする。 - 割込み許可と同時に割込み要求をクリアする。 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 ■ 割込みによる DMA 転送の起動 次の割込み要求の発生により DMA 転送を起動できます。 • スキャン変換割込み要求 • 優先変換割込み要求 DMA 転送については「25.6.4 DMA コントローラ (DMAC) の起動」を参照してくださ い。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 701 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ 25.6 動作説明と設定手順例 10 ビット A/D コンバータの動作について説明します。また , 動作状態を設定するための手順 例も示します。 ■ 概要 10 ビット A/D コンバータは A/D チャネルイネーブルレジスタ (ADCHE) の各ビットに 対応する端子からのアナログ信号入力を許可することで A/D 変換が可能になります。 A/D チャネルイネーブルレジスタ (ADCHE) については , 「第 14 章 I/O ポート」の 「14.4.6 A/D チャネルイネーブルレジスタ (ADCHE)」を参照してください。 10 ビット A/D コンバータには , 次の 2 種類の変換動作があります。 • A/D スキャン変換 変換するチャネルを任意に選択して変換します。 選択したチャネルを 1 回だけ変換するシングル変換モードと , 選択したチャネルを 繰り返して変換するリピート変換モードを利用できます。 • A/D 優先変換 優先度の高い A/D 変換の起動要因が発生すると , A/D スキャン変換を中断して優先 的に変換します。優先度 1 と優先度 2 の 2 レベルの優先度が用意されています。優 先度 1> 優先度 2 になります。 A/D スキャン変換と A/D 優先変換の違いを表 25.6-1 に示します。 表 25.6-1 A/D スキャン変換と A/D 優先変換の違い A/D スキャン変換 A/D 優先変換 優先度 1 優先度 2 対応チャネル 11 チャネルすべての中 ch.0 ∼ ch.7 の中から 11 チャネルの中から 1 チャネル指定 から最大で 11 チャネル 1 チャネル指定 まで任意に選択 変換起動要因 ソフトウェア ADTRG0 端子で立下 ベースタイマの ch.0 の りエッジを検出 TOUT信号で立上りエッ ジ検出 再起動 FIFO 可能 16 段 ソフトウェア ベースタイマの ch.2 の TOUT 信号で立上 りエッジ検出 不可能 4段 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しません。) 702 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ■ 優先順位と状態遷移 A/D 変換の優先順位を表 25.6-2 に示します。 表 25.6-2 A/D 変換の優先順位 優先順位 A/D 変換の種類 1 優先度 1 の A/D 優先変換 2 優先度 2 の A/D 優先変換 3 A/D スキャン変換 A/D 動作中に優先順位の異なる A/D 変換が起動された場合の動作は次のとおりです。 • A/D 変換中に優先順位の高い A/D 変換が起動した場合 実行中の A/D 変換動作を中断し , 優先順位の高い A/D 変換を行います。 優先順位の高い変換動作が終わると , 中断していた A/D 変換を再開します。 例:A/D スキャン変換中に A/D 優先変換の起動要因が発生 A/D スキャン変換を中断し , A/D 優先変換を開始します。A/D 優先変換が終了す ると , A/D スキャン変換を中断したチャネルから変換が開始されます。 例:優先度 2 の A/D 優先変換中に優先度 1 の A/D 優先変換の起動要因が発生 優先度 2 の A/D 優先変換を中断し , 優先度 1 の A/D 優先変換を開始します。優 先度 1 の A/D 優先変換が終了すると , 優先度 2 の A/D 優先変換が開始されます。 • A/D 変換中に優先順位の低い A/D 変換が起動した場合 優先順位の低いA/D変換の起動要因を保持し, 実行中のA/D変換動作を継続します。 実行中の A/D 変換が終了すると , 起動要因を保持していた A/D 変換が自動的に開始 されます。 例:優先度 1 の A/D 優先変換中に優先度 2 の A/D 優先変換の起動要因が発生 優先度 2 の起動要因を保持し , 優先度 1 の A/D 優先変換を継続します。 優先度 1 の A/D 優先変換が終了すると , 優先度 2 の A/D 優先変換が自動的に開 始されます。 例:優先度 1 の A/D 優先変換中に A/D スキャン変換の起動要因が発生 A/D スキャン変換の起動要因を保持し , 優先度 1 の A/D 優先変換を継続します。 優先度 1 の A/D 優先変換が終了すると , A/D スキャン優先変換が自動的に開始 されます。 例:優先度 2 の A/D 優先変換中に A/D スキャン変換の起動要因が発生 A/D スキャン変換の起動要因を保持し , 優先度 2 の A/D 優先変換を継続します。 優先度 2 の A/D 優先変換が終了すると , A/D スキャン優先変換が自動的に開始 されます。 • A/D 優先変換中に優先度が同じ A/D 変換が起動した場合 同一優先順位の起動要因は無視されます。( 再起動はかかりません。) 10 ビット A/D コンバータの状態遷移を図 25.6-1 に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 703 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ 図 25.6-1 10 ビット A/D コンバータの状態遷移 000 変換待機中 スキャン変換要求 001 優先変換要求 スキャン変換終了 優先変換終了 010 A/D 優先変換中 A/D スキャン変換中 優先変換要求 スキャン変換要求 011 優先変換終了 A/D 優先変換中 A/D スキャン変換保留あり 優先度 1 変換 終了 優先度 1 変換 終了 110 優先度変換 要求 111 優先変換 要求 優先度 1 変換中 優先度 2 変換保留あり スキャン変換要求 優先度 1 変換中 優先度 2 変換保留あり A/D スキャン変換保留あり 図 25.6-1 に示したように , 10 ビット A/D コンバータの状態は A/DC ステータスレジス タ (ADSR0) の PCNS ビット , PCS ビット , SCS ビットで確認できます。 ビットと動作状態の対応を表 25.6-3 に示します。 表 25.6-3 ビットと動作状態の対応 PCNS 704 PCS SCS 説明 0 0 0 変換待機中 0 0 1 A/D スキャン変換中 0 1 0 A/D 優先変換中 0 1 1 A/D 優先変換中 , A/D スキャン変換保留あり 1 1 0 優先度 1 の A/D 優先変換中 , 優先度 2 の変換保留あり 1 1 1 優先度 1 の A/D 優先変換中 , 優先度 2 とスキャン変換保 留あり FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ■ A/D 比較機能利用時の動作 A/D 比較機能とは , A/D 変換の変換結果の上位 8 ビット (bit9 ∼ bit2) を A/D 比較値設定 レジスタ (CMPD0) に設定した値と比較し , 比較結果が A/D 比較コントロールレジスタ (CMPCR0) で設定した条件を満たしていると , 変換結果比較割込み要求を発生させる 機能です。 変換動作を開始する前に , A/D 比較コントロールレジスタ (CMPCR0) の CMPEN ビッ トで比較機能の動作を許可 (CMPEN=1) してください。 比較動作は A/D 変換結果が FIFO に格納される前に行われますので , FIFO が満杯 ( フ ル ) の場合でも比較機能を利用できます。 比較機能については , 「25.4.11 A/D 比較値設定レジスタ (CMPD0)」および「25.4.12 A/D 比較コントロールレジスタ (CMPCR0)」を参照してください。 ■ A/D 変換時間 A/D 変換時間は , サンプリング時間とコンペア時間で構成されています。 A/D 変換時間を算出するにはサンプリング時間とコンペア時間を加算してください。 ● サンプリング時間 サンプリング時間設定レジスタ (ADST00, ADST10) でそれぞれのレジスタにサンプリ ング時間を設定します。 サンプリング時間選択レジスタ (ADSS20 ∼ ADSS00) で , チャネルごとに , どちらのレ ジスタに設定したサンプリング時間を利用するかを選択できるので , 異なった外部イ ンピーダンスのチャネルに対し個別にサンプリング時間を設定できます。 サンプリング時間の計算方法は次のとおりです。 サンプリング時間 = 周辺クロック (PCLK) の周期× (ST+1) × STX ST: サンプリング時間設定レジスタ (ADST00, ADST10) の ST05 ∼ ST00/ST15 ∼ ST10 ビットの設定値 STX:サンプリング時間設定レジスタ (ADST00, ADST10) の STX01, STX00/STX11, STX10 ビットでの設定倍数 < 注意事項 > • STX01, STX00ビットを"00" (設定値×1倍) に設定した場合は, ST05∼ST00/ST15 ∼ ST10 ビットが "3" 以上になるように設定してください。 • サンプリング時間設定レジスタ 00 (ADST00) は電気的特性のサンプリング時間を満た すように設定してください。電気的特性については , 『データシート』を参照してく ださい。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 705 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ サンプリング時間の設定例を表 25.6-4 と表 25.6-5 に示します。 表 25.6-4 サンプリング時間の設定例 (STX01, STX00/STX11, STX10 ビット =00 の場合 ) レジスタ値 (N) STx5 ∼ STx0 サンプリング時間 [μs] PCLK=30MHz PCLK=32MHz PCLK=33MHz 0 設定禁止 設定禁止 設定禁止 1 設定禁止 設定禁止 設定禁止 2 設定禁止 設定禁止 設定禁止 3 設定禁止 設定禁止 設定禁止 4 設定禁止 設定禁止 設定禁止 5 設定禁止 設定禁止 設定禁止 6 設定禁止 設定禁止 設定禁止 7 設定禁止 設定禁止 設定禁止 8 設定禁止 設定禁止 設定禁止 9 設定禁止 設定禁止 設定禁止 10 設定禁止 設定禁止 設定禁止 11 0.400 設定禁止 設定禁止 12 0.433 0.406 設定禁止 13 0.467 0.438 0.424 14 0.500 0.469 0.455 15 0.533 0.500 0.485 16 0.567 0.531 0.515 17 0.600 0.563 0.545 18 0.633 0.594 0.576 19 0.667 0.625 0.606 20 0.700 0.656 0.636 … … … … 36 1.233 1.156 1.121 37 1.267 1.188 1.152 38 1.300 1.219 1.182 … … … … 42 1.433 1.344 1.303 43 1.467 1.375 1.333 … … … … 52 1.767 1.656 1.606 53 1.800 1.688 1.636 … … … … 62 2.100 1.969 1.909 63 2.133 2.000 1.939 PCLK: 周辺クロック (PCLK) の周波数 706 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ 表 25.6-5 サンプリング時間の設定例 (STX01, STX00/STX11, STX10 ビット =10 の場合 ) レジスタ値 (N) STx5 ∼ STx0 サンプリング時間 [μs] PCLK=30MHz PCLK=32MHz PCLK=33MHz 0 設定禁止 設定禁止 設定禁止 1 0.533 0.500 0.485 2 0.800 0.750 0.727 3 1.067 1.000 0.970 4 1.333 1.250 1.212 5 1.600 1.500 1.455 6 1.867 1.750 1.697 7 2.133 2.000 1.939 8 2.400 2.250 2.182 9 2.667 2.500 2.424 10 2.933 2.750 2.667 11 3.200 3.000 2.909 12 3.467 3.250 3.152 13 3.733 3.500 3.394 14 4.000 3.750 3.636 15 4.267 4.000 3.879 16 4.533 4.250 4.121 17 4.800 4.500 4.364 18 5.067 4.750 4.606 19 5.333 5.000 4.848 20 5.600 5.250 5.091 … … … … 36 9.867 9.250 8.970 37 10.133 9.500 9.212 38 10.400 9.750 9.455 … … … … 42 11.467 10.750 10.424 43 11.733 11.000 10.667 … … … … 52 14.133 13.250 12.848 53 14.400 13.500 13.091 … … … … 62 16.800 15.750 15.273 63 17.067 16.000 15.515 PCLK: 周辺クロック (PCLK) の周波数 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 707 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ● コンペア時間 コンペア時間設定レジスタ (ADCT0) で設定されます。 コンペア時間の計算方法は , 次のとおりです。 コンペア時間 ={ (CT+1) × 10+4} ×周辺クロック (PCLK) の周期 CT:コンペア時間設定レジスタ (ADCT0) の CT2 ∼ CT0 ビットの設定値 コンペア時間の設定例を表 25.6-6 に示します。 表 25.6-6 コンペア時間の設定例 レジスタ値 (N) CT2 ∼ CT0 PCLK=30MHz コンペア時間 PCLK=32MHz PCLK=33MHz 1 設定禁止 0.80 μs 設定禁止 0.75 μs 設定禁止 0.73 μs 2 1.13 μs 1.06 μs 1.03 μs 3 1.47 μs 1.38 μs 1.33 μs 4 1.80 μs 1.69 μs 1.64 μs 5 2.13 μs 2.00 μs 1.94 μs 6 2.47 μs 2.31 μs 2.24 μs 7( 初期値 ) 2.80 μs 2.63 μs 2.55 μs 0 PCLK : 周辺クロック (PCLK) の周波数 * この表はコンペア時間のみを示します。 708 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ A/D スキャン変換時の動作 25.6.1 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で選択したチャネルを順番に変換しま す。 ■ 概要 A/D スキャン変換は , 次の 2 種類の変換モードがあります。 • シングル変換モード スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) に設定したチャネルを 1 回だけ 変換するモードです。 • リピート変換モード スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) に設定したチャネルを繰り返し 変換するモードです。 また , スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で 1 チャネルだけ選択した場 合と複数のチャネルを選択した場合とでも動作が異なります。 変換モードごとの変換順序を表 25.6-7 に示します。 表 25.6-7 変換モードと変換順序 変換モード 選択チャネル シングル変換モード ch.3 (SCCR の RPT=0) ch.3, ch.5, ch.10 リピート変換モード ch.3 (SCCR の RPT=1) ch.3, ch.5, ch.10 SCCR 変換順序 ch.3 →変換停止 ch.3 → ch.5 → ch.10 →変換停止 ch.3 → ch.3 → ch.3 → ch.3 ↑ ↓ ch.3 ← ch.3 ← ch.3 ← ch.3 ch.3 → ch.5 → ch.10 ↑ ↓ ch.10 ← ch.5 ← ch.3 スキャン変換コントロールレジスタ (SCCR0) < 注意事項 > 10 ビット A/D コンバータは , 初めに A/D チャネルイネーブルレジスタ (ADCHE) でアナ ログ信号入力を許可することで A/D 変換が可能になります。 A/D チャネルイネーブルレジスタ (ADCHE) については ,「第 14 章 I/O ポート」の「14.4.6 A/D チャネルイネーブルレジスタ (ADCHE)」を参照してください。 ■ シングル変換モード時の動作 スキャン変換コントロールレジスタ (SCCR0) の RPT ビットに "0" を書き込むと , シン グル変換モードが設定されます。 このモードでは , スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で設定したチャネ ルを 1 回だけ変換します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 709 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ● 起動 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で変換するチャネルを選択し , 10 ビット A/D コンバータを次のいずれかの方法で起動します。 • スキャン変換コントロールレジスタ (SCCR0) の SSTR ビットに "1" を書き込む • スキャン変換コントロールレジスタ (SCCR0) の SHEN ビットでタイマ起動を許可 (SHEN=1) し , ベースタイマの ch.0 の TOUT 信号で立上りエッジを入力する A/D スキャン変換中に , 上記の起動動作が行われると A/D スキャン変換を直ちに停止 / 初期化し , 再度 A/D スキャン変換が行われます ( 再起動動作 ) 。 ● 単一チャネル変換動作 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で変換するチャネルを 1 つだけ選 択します。 10 ビット A/D コンバータが起動すると , 選択したチャネルに対して変換動作を開始し , A/DC ステータスレジスタ (ADSR0) の SCS ビットが "1" に変わります。 選択したチャネルの変換が終了すると , 変換結果と変換したチャネルの情報を A/D ス キャン変換用 FIFO の 1 段目に格納し , 変換動作を停止します。このとき , A/DC ステー タスレジスタ (ADSR0) の SCS ビットが "0" にクリアされます。 FIFO に格納された変換結果は , スキャン変換 FIFO データレジスタ (SCFD0) から読み 出せます。 ● 複数チャネル変換動作 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で変換するチャネルを複数選択し ます。 10 ビット A/D コンバータが起動すると , 選択したチャネルの中で一番若い番号のチャ ネルから順番に変換動作を開始します。このとき , A/DC ステータスレジスタ (ADSR0) の SCS ビットが "1" に変わります。 1 チャネル変換が終わると , 変換結果と変換したチャネルの情報を A/D スキャン変換用 FIFO の 1 段目に格納し , 次のチャネルの変換を開始します。 ( スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で選択していないチャネルの変換 は行われません。) 変換するチャネルが変わるごとに変換結果と変換したチャネルの情報を保存する A/D スキャン変換用 FIFO の段数も 1 段ずつ変わります。 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で選択したチャネルをすべて変換 し終わると , 10 ビット A/D コンバータの動作を停止します。このとき , A/DC ステータ スレジスタ (ADSR0) の SCS ビットが "0" にクリアされます。 FIFO に格納された変換結果は , スキャン変換 FIFO データレジスタ (SCFD0) から順番 に読み出せます。読出しについては , 「25.6.3 FIFO の動作」の「■ A/D スキャン変換 時の動作」を参照してください。 710 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ■ リピート変換モード時の動作 スキャン変換コントロールレジスタ (SCCR0) のRPTビットに"1"を書き込むと, リピー ト変換モードが設定されます。 このモードでは , スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で設定したチャネ ルを繰り返し変換します。 シングル変換モード時と同様に , チャネルを選択し , 10 ビット A/D コンバータを起動 してください。 ● 単一チャネル変換動作 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で変換するチャネルを 1 つだけ選 択します。 10 ビット A/D コンバータが起動すると , 選択したチャネルに対して変換動作を開始し , A/DC ステータスレジスタ (ADSR0) の SCS ビットが "1" に変わります。 変換が終了すると , 変換結果と変換したチャネルの情報を A/D スキャン変換用 FIFO の 1 段目に格納し , 再度同じチャネルの変換を開始します。 変換を停止するには , スキャン変換コントロールレジスタ (SCCR0) の RPT ビットに "0" を書き込んでください。 FIFO に格納された変換結果は , スキャン変換 FIFO データレジスタ (SCFD0) から順番 に読み出せます。読出しについては , 「25.6.3 FIFO の動作」の「■ A/D スキャン変換 時の動作」を参照してください。 ● 複数チャネル変換動作 スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で変換するチャネルを複数選択し ます。 10 ビット A/D コンバータが起動すると , 選択したチャネルの中で一番若い番号のチャ ネルから順番に変換動作を開始します。このとき , A/DC ステータスレジスタ (ADSR0) の SCS ビットが "1" に変わります。 1 チャネル変換が終わると , 変換結果と変換したチャネルの情報を A/D スキャン変換用 FIFO の 1 段目に格納し , 次のチャネルの変換を開始します。 ( スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で選択していないチャネルの変換 は行われません。) 選択したチャネルをすべて変換し終わると, 再度一番若い番号のチャネルから2巡目の 変換動作を開始します。 変換を停止するには , スキャン変換コントロールレジスタ (SCCR0) の RPT ビットに "0" を書き込んでください。スキャン変換入力選択レジスタ (SCIS20 ∼ SCIS00) で選択し たチャネルをすべて変換し終わった時点で変換動作が停止します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 711 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ 複数チャネル変換時の停止タイミングを図 25.6-2 に示します。 図 25.6-2 複数チャネル変換時の停止タイミング RPT ビット SSTR ビット 変換チャネル 停止 ch.0 ch.4 ch.8 ch.10 ch.0 ch.4 ch.8 ch.10 停止 FIFO に格納された変換結果は , スキャン変換 FIFO データレジスタ (SCFD0) から順番 に読み出せます。読出しについては , 「25.6.3 FIFO の動作」の「■ A/D スキャン変換 時の動作」を参照してください。 A/D 優先変換時の動作 25.6.2 優先度の高い A/D 変換の起動要因が発生すると , A/D スキャン変換を中断して優先的に変換 します。優先度は 2 レベル用意されています。 ■ 概要 起動要因によって優先度を 2 レベルから設定できます。優先度 1 が優先度 2 より優先 されます。 設定できるチャネルは優先度によって異なります。 優先度とチャネルや起動要因の対応を表 25.6-8 に示します。 表 25.6-8 優先度とチャネルや起動要因の対応 優先度 1 優先度 2 優先順位 1 2 対応チャネル ch.0∼ch.7の中から1チャネル指定 11 チャネルの中から 1 チャネル指 定 起動要因 ADTRG0端子で立下りエッジを検 ソフトウェア ベースタイマの ch.2 の TOUT 信号 出 で立上りエッジ検出 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しません。) < 注意事項 > • 10 ビット A/D コンバータは , 初めに A/D チャネルイネーブルレジスタ (ADCHE) でア ナログ信号入力を許可することで A/D 変換が可能になります。 A/D チャネルイネーブルレジスタ (ADCHE) については , 「第 14 章 I/O ポート」の 「14.4.6 A/D チャネルイネーブルレジスタ (ADCHE)」を参照してください。 712 • A/D 優先変換は優先度にかかわらず , A/D 変換を再起動することはできません。 • A/D 優先変換で変換できるチャネルは 1 チャネルのみです。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ■ 優先度 1 の変換動作 最も優先度の高い変換動作です。優先度 1 の起動要因が発生すると A/D スキャン変換 や優先度 2 の A/D 優先変換が動作中でも , 変換動作を直ちに中止し , 優先度 1 の変換が 開始されます。 ● チャネル選択方法 優先変換入力選択レジスタ (PCIS0) の P1A2 ∼ P1A0 ビットで , ch.0 ∼ ch.7 の中から変 換するチャネルを 1 チャネルだけ選択します。 ● 変換動作 優先変換コントロールレジスタ (PCCR0) の PEEN ビットで外部起動を許可 (PEEN =1) した状態で , ADTRG0 端子で立下りエッジを検出すると , 優先度 1 の A/D 優先変換の 起動要因が発生します。 このとき , A/D スキャン変換や優先度 2 の A/D 優先変換が実行されていると , それらの 変換を直ちに中断し , 優先度 1 で指定したチャネルの変換が開始されます。また , A/DC ステータスレジスタ (ADSR0) の PCS ビットが "1" に変わります。 変換が終了すると , 変換結果と変換したチャネルの情報が A/D 優先変換用 FIFO に格納 され , A/DC ステータスレジスタ (ADSR0) の PCS ビットが "0" にクリアされます。ま た , 中断していた変換が再度開始されます。 FIFO に格納された A/D 優先変換の変換結果は , 優先変換 FIFO データレジスタ (PCFD0) から読み出せます。読出しについては , 「25.6.3 FIFO の動作」の「■ A/D 優先変換時 の動作」を参照してください。 また , 優先度 1 の A/D 優先変換実行中に , 他の優先度の起動要因が発生した場合の動作 については , 「25.6 動作説明と設定手順例」の「■ 優先順位と状態遷移」を参照して ください。 < 注意事項 > 優先度 1 の A/D 優先変換を実行中に , 同じレベル ( 優先度 1) の A/D 変換の起動要因が発 生した場合は , 実行中の変換動作を継続し , 後から発生した起動要因は無視されます。 ■ 優先度 2 の変換動作 2 番目に優先度の高い変換動作です。優先度 2 の起動要因が発生すると A/D スキャン 変換が動作中でも , 変換動作を直ちに中止し , 優先度 2 の変換が開始されます。 ● チャネル選択方法 優先変換入力選択レジスタ (PCIS0) の P2A4 ∼ P2A0 ビットで , すべてのチャネル (11 チャネル ) の中から変換するチャネルを 1 チャネルだけ選択します。 * MB91F669(64pin): AN0 ∼ AN11 MB91F668(48pin): AN0 ∼ AN9 (AN10,AN11 は存在しません。) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 713 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ● 変換動作 次のいずれかの方法で優先度 2 の起動要因を発生させます。 • • 優先変換コントロールレジスタ (PCCR0) の PSTR ビットに "1" を書き込む 優先変換コントロールレジスタ (PCCR0) の PHEN ビットでタイマ起動を許可 (PHEN=1) し , ベースタイマの ch.2 の TOUT 信号で立上りエッジ検出 起動要因が発生すると次のように優先度 2 の A/D 優先変換が起動し , A/DC ステータス レジスタ (ADSR0) の PCS ビットが "1" に変わります。 • 10 ビット A/D コンバータ未起動時:10 ビット A/D コンバータを起動し , 優先度 2 で指 定したチャネルの変換を開始します。 • A/D スキャン変換実行時:A/D スキャン変換を直ちに中断し , 優先度 2 で指定した チャネルの変換を開始します。 • 優先度1のA/D優先変換実行時:優先度2の起動要因を保持し, 優先度1のA/D優先変 換終了後に優先度 2 の A/D 優先変換を開始します。 優先度 2 の A/D 優先変換が終了すると , 変換結果と変換したチャネルの情報が A/D 優 先変換用 FIFO に格納され , A/DC ステータスレジスタ (ADSR0) の PCS ビットが "0" に クリアされます。また , 中断していた変換が再度開始されます。 FIFO に格納された A/D 優先変換の変換結果は , 優先変換 FIFO データレジスタ (PCFD0) から読み出せます。読出しについては , 「25.6.3 FIFO の動作」の「■ A/D 優先変換時 の動作」を参照してください。 また , 優先度 2 の A/D 優先変換実行中に , 他の優先度の起動要因が発生した場合の動作 については , 「25.6 動作説明と設定手順例」の「■ 優先順位と状態遷移」を参照して ください。 < 注意事項 > A/D 優先変換中は変換動作を再起動することはできません。優先度 2 の A/D 優先変換を実 行中に , 同じレベル ( 優先度 2) の A/D 変換の起動要因が発生した場合は , 実行中の変換動 作を継続し , 後から発生した起動要因は無視されます。 例:ソフトウェアで優先度 2 の A/D 優先変換を起動し , 変換動作中にベースタイマの ch.2 の TOUT 信号で立上りエッジを検出しても , 実行中の変換動作が継続されます。 714 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ 25.6.3 FIFO の動作 10 ビット A/D コンバータは , A/D スキャン変換用に 16 段 , A/D 優先変換用に 4 段の FIFO が 用意されています。あらかじめ , 設定した FIFO の段数にデータが格納されるとスキャン変換 割込み要求 / 優先変換割込み要求を発生させることができます。 FIFO の動作と割込み要求の発生について説明します。 ■ A/D スキャン変換時の動作 ● A/D 変換中の動作 リセット解除後は A/D スキャン変換用 FIFO にはデータがない ( エンプティ ) ため , ス キャン変換コントロールレジスタ (SCCR0) の SEMP ビットは "1" になっています。 A/D スキャン変換が開始され , 1 チャネル分の変換結果が FIFO の 1 段目に格納される と , SEMP ビットが "0" に変わります。 次のデータの変換が終了すると変換結果は FIFO の 2 段目に格納されます。以降 , 1 チャ ネル分の変換が終了するたびに , 変換結果が FIFO の次の段に格納されます。 16 段すべてに変換結果が書き込まれると , A/D スキャン変換用 FIFO が満杯 ( フル ) に なり, スキャン変換コントロールレジスタ (SCCR0) のSFULビットが"1"に変わります。 この状態で , さらに A/D スキャン変換が行われると , オーバランが発生しスキャン変換 コントロールレジスタ (SCCR0) の SOVR ビットが "1" に変わります。この場合 , 変換結果は FIFO には格納されず破棄されます。 ● 読出し動作 A/D スキャン変換用 FIFO に格納されたデータは , スキャン変換 FIFO データレジスタ (SCFD0) を読み出すことで順番に取り出すことができます。 ただし , スキャン変換 FIFO データレジスタ (SCFD0) は , 必ずスキャン変換コントロー ルレジスタ (SCCR0) の SEMP ビットで A/D スキャン変換用 FIFO にデータがあること を確認してから (SEMP=0) 読み出してください。 A/D スキャン変換用 FIFO が空 ( エンプティ ) (SEMP=1) の状態で読出しを行うと , ( 読出しの直前に変換結果がスキャン変換 FIFO データレジスタ (SCFD0) に格納される ことがあるため ) 読み出したデータが有効なのか無効なのかが判断できず, 有効なデー タを読み捨てる可能性があります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 715 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ SEMP ビットと読出しデータの関係を図 25.6-3 に示します。 図 25.6-3 SEMP ビットと読出しデータの関係 SEMP ビット 周辺バス SEMP ビット 読出し 有効 FIFO 段数 SCFD 読出し 直前の SEMP ビットの 読出し値が "0" なので , 有効データと判定可能 1 SEMP ビット 読出し 0 SCFD 読出し 1 直前の SEMP ビットの 読出し値が "1" なので , 有効 / 無効データの判定不可 0 新たな FIFO データを格納 SCFD:A/D スキャン変換 FIFO データレジスタ (SCFD0) < 注意事項 > • 次のレジスタはアドレスが並んで配置されていますが , これらのレジスタにワードで 一度にアクセスすると, スキャン変換コントロールレジスタ (SCCR0) のSEMPビット の状態にかかわらず , このレジスタを読み出してしまいます。これらのレジスタには ワードでアクセスしないでください。 - スキャン変換コントロールレジスタ (SCCR0) - スキャン変換 FIFO 段数設定レジスタ (SFNS0) - スキャン変換 FIFO データレジスタ (SCFD0) • スキャン変換 FIFO データレジスタ (SCFD0) はバイトアクセスできます。上位バイト (bit15 ∼ bit8) 読み出すと , FIFO のデータがシフトします。下位バイト (bit7 ∼ bit0) を 読み出しても FIFO のデータはシフトしません。 ● クリア動作 スキャン変換コントロールレジスタ (SCCR0) の SFCLR ビットに "1" を書き込むと , A/D スキャン変換用 FIFO がクリアされ , スキャン変換コントロールレジスタ (SCCR0) の SEMP ビットが "1" に変わります。 ● スキャン変換割込み要求 設定した FIFO の段数まで変換結果が格納されたとき (A/DC コントロールレジスタ (ADCR0) のSCIFビット=1) に, スキャン変換割込み要求が発生させることができます。 A/D スキャン変換割込み要求を発生させるには , 次の処理を行ってください。 • スキャン変換 FIFO 段数設定レジスタ (SFNS0) の SFS3 ∼ SFS0 ビットで , 割込み要求 を発生させる段数を設定 • A/DC コントロールレジスタ (ADCR0) の SCIE ビットでスキャン変換割込み要求の 発生を許可 (SCIE=1) 716 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ FIFO の動作を図 25.6-4 に示します。 図 25.6-4 FIFO の動作 有効 FIFO 段数 FIFO 段数設定 SFS3 ∼ SFS0=0101 (6 段 ) SFS3 ∼ SFS0=0011 (4 段 ) 割込み要求 クリア スキャン変換 割込み要求 割込み要求 クリア FIFO 読出し A/D 変換 停止 1 2 3 4 5 6 停止 1 2 3 4 5 6 停止 1 停止 変換モードごとに設定する段数と割込み要求の発生例を示します。スキャン変換 FIFO 段数設定レジスタ (SFNS0) の SFS3 ∼ SFS0 ビットで段数を設定してください。 • シングル変換モードで単一チャネル変換時 スキャン変換割込み要求を発生させる段数を 1 段に設定 (SFS3 ∼ SFS0=0000) する と , 変換終了時にスキャン変換割込み要求が発生します。2 段以上に設定 (SFS3 ∼ SFS0=0001 以上 ) すると , 設定したチャネルの変換が終了しても割込み要求は発生 しません。 • シングル変換モードで複数チャネル変換時 変換するチャネル数と同じ段数を設定すると , 変換終了時にスキャン変換割込み要 求が発生します。 例:3 チャネル変換後 , スキャン変換割込み要求を発生させるとき スキャン変換割込み要求を発生させる段数を 3 段に設定 (SFS3 ∼ SFS0=0010) また , 変換するチャネル数よりも少ない段数でスキャン変換割込み要求が発生する ように設定すると , A/D スキャン変換が終了する前に任意のタイミングでスキャン 変換割込み要求を発生できます。 • リピート変換モードで単一チャネル変換時 スキャン変換割込み要求を発生させる段数を 1 段に設定 (SFS3 ∼ SFS0=0000) する と , 1 巡目の変換終了時にスキャン変換割込み要求が発生します。 設定したチャネルを何度か変換してからスキャン変換割込み要求を発生させる場 合は , 変換回数と段数の設定を同じにしてください。 例:単一チャネルを 4 回変換後 , スキャン変換割込み要求を発生させるとき スキャン変換割込み要求を発生させる段数を 4 段に設定 (SFS3 ∼ SFS0=0011) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 717 第 25 章 10 ビット A/D コンバータ 25.6 • MB91665 シリーズ リピート変換モードで複数チャネル変換時 スキャン変換割込み要求の発生を次のように任意に選択できます。 例:リピート変換モードで 8 チャネル変換するとき - 1 巡目の変換終了後にスキャン変換割込み要求を発生させる スキャン変換割込み要求を発生させる段数を 8 段に設定 (SFS3 ∼ SFS0=0111) - 2 巡目の変換終了後に割込み要求を発生させる スキャン変換割込み要求を発生させる段数を 16 段 ( 変換するチャネルの 2 倍 ) に設定 (SFS3 ∼ SFS0=1111) < 注意事項 > スキャン変換割込み要求の発生時に FIFO 内のデータを DMA 転送することができます。 DMA 転送については ,「25.6.4 DMA コントローラ (DMAC) の起動」を参照してください。 ● FIFO オーバラン割込み要求 FIFO の 16 段すべてにデータが格納され , FIFO が満杯 ( フル ) になると , スキャン変換 コントロールレジスタ (SCCR0) の SFUL ビットが "1" に変わります。 A/DC コントロールレジスタ (ADCR0) の OVRIE ビットで FIFO オーバラン割込み要求 の発生が許可 (OVRIE =1) されていると , SFUL ビットが "1" のときに次の変換結果が FIFO に格納されようとすると , オーバラン割込み要求が発生します。 < 注意事項 > • FIFO が満杯 ( フル ) のときに , 次の変換結果を格納しようとしても , FIFO 内のデータ は書き換えられません。格納しようとした変換結果は破棄されます。 • スキャン変換コントロールレジスタ (SCCR0) の SFCLR ビットで FIFO をクリア (SFCLR=1) すると FIFO が空になり , スキャン変換コントロールレジスタ (SCCR0) の SEMP ビットが "1" に変わります。 ■ A/D 優先変換時の動作 ● A/D 変換中の動作 リセット解除後は A/D 優先変換用 FIFO にはデータがない ( エンプティ) ため , A /D 優 先変換制御レジスタ (PCCR0) の PEMP ビットは "1" になっています。 A/D 優先変換が開始され , 1 チャネル分の変換結果が FIFO の 1 段目に格納されると , PEMP ビットが "0" に変わります。 次の A/D 優先変換が終了すると変換結果は FIFO の 2 段目に格納されます。以降 , A/D 優先変換が終了するたびに , 変換結果が FIFO の次の段に格納されます。 4 段すべてに変換結果が書き込まれると , A/D 優先変換用 FIFO が満杯 ( フル ) になり , 優先変換コントロールレジスタ (PCCR0) の PFUL ビットが "1" に変わります。 この状態で , さらに A/D 優先変換が行われると , オーバランが発生し優先変換コント 718 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ロールレジスタ (PCCR0) の POVR ビットが "1" に変わります。この場合 , 変換結果は FIFO には格納されず破棄されます。 ● 読出し動作 A/D 優先変換用 FIFO に格納されたデータは , 優先変換 FIFO データレジスタ (PCFD0) を読み出すことで順番に取り出すことができます。 ただし , 優先変換 FIFO データレジスタ (PCFD0) は , 必ず優先変換コントロールレジス タ (PCCR0) の PEMP ビットで A/D 優先変換用 FIFO にデータがあることを確認してか ら (PEMP=0) 読み出してください。 A/D 優先変換用 FIFO が空 ( エンプティ ) (PEMP=1) の状態で読出しを行うと , ( 読出し の直前に変換結果が優先変換 FIFO データレジスタ (PCFD0) に格納されることがある ため) 読み出したデータが有効なのか無効なのかが判断できず , 有効なデータを読み捨 てる可能性があります。 PEMP ビットと読出しデータの関係を図 25.6-5 に示します。 図 25.6-5 PEMP ビットと読出しデータの関係 PEMP ビット 周辺バス 有効 FIFO 段数 PEMP ビット 読出し PCFD 読出し 直前の PEMP ビットの 読出し値が "0" なので , 有効データと判定可能 1 PEMP ビット 読出し 0 PCFD 読出し 1 直前の PEMP ビットの 読出し値が "1" なので , 有効 / 無効データの判定不可 0 新たな FIFO データを格納 PCFD:A/D 優先変換 FIFO データレジスタ (PCFD0) < 注意事項 > • 次のレジスタはアドレスが並んで配置されていますが , これらのレジスタにワードで 一度にアクセスすると, 優先変換コントロールレジスタ (PCCR0) のPEMPビットの状 態にかかわらず , このレジスタを読み出してしまいます。これらのレジスタにはワー ドでアクセスしないでください。 - 優先変換コントロールレジスタ (PCCR0) - 優先変換 FIFO 段数設定レジスタ (PFNS0) - 優先変換 FIFO データレジスタ (PCFD0) • CM71-10158-1 優先変換 FIFO データレジスタ (PCFD0) はバイトアクセスできます。上位バイト (bit15 ∼ bit8) 読み出すと , FIFO のデータがシフトします。下位バイト (bit7 ∼ bit0) を読み 出しても FIFO のデータはシフトしません。 FUJITSU SEMICONDUCTOR LIMITED 719 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ● クリア動作 優先変換コントロールレジスタ (PCCR0) の PFCLR ビットに "1" を書き込むと , A/D 優 先変換用 FIFO がクリアされ , A /D 優先変換制御レジスタ (PCCR0) の PEMP ビットが "1" に変わります。 ● 優先変換割込み要求 設定した FIFO の段数まで変換結果が格納されたとき (A/DC コントロールレジスタ (ADCR0) の PCIF ビット =1) に , 優先変換割込み要求が発生させることができます。 A/D 優先変換割込み要求を発生させるには , 次の処理を行ってください。 • 優先変換FIFO段数設定レジスタ (PFNS0) のPFS1, PFS0ビットで, 割込み要求を発生 させる段数を設定 • A/DC コントロールレジスタ (ADCR0) の PCIE ビットで優先変換割込み要求の発生 を許可 (PCIE=1) 優先変換割込み要求を発生させる段数を 1 段に設定 (PFS1, PFS0=00) すると , 変換終了 時に優先変換割込み要求が発生します。 < 注意事項 > • 優先割込み要求を発生させる段数を 2 段以上に設定 (PFS1, PFS0=01 以上 ) すると , A/ D 優先変換が終了しても , 優先変換割込み要求は発生しません。 • 優先変換割込み要求の発生時に FIFO 内のデータを DMA 転送することができます。 DMA 転送については , 「25.6.4 DMA コントローラ (DMAC) の起動」を参照してくだ さい。 ● FIFO オーバラン割込み要求 FIFO の 4 段すべてにデータが格納され , FIFO が満杯 ( フル ) になると , 優先変換コン トロールレジスタ (PCCR0) の PFUL ビットが "1" に変わります。 A/DC コントロールレジスタ (ADCR0) の OVRIE ビットで FIFO オーバラン割込み要求 の発生が許可 (OVRIE =1) されていると , PFUL ビットが "1" のときに次の変換結果が FIFO に格納されようとすると , オーバラン割込み要求が発生します。 < 注意事項 > 720 • FIFO が満杯 ( フル ) のときに , 次の変換結果を格納しようとしても , FIFO 内のデータ は書き換えられません。格納しようとした変換結果は破棄されます。 • 優先変換コントロールレジスタ (PCCR0) の PFCLR ビットで FIFO をクリア (PFCLR=1) すると FIFO が空になり , 優先変換コントロールレジスタ (PCCR0) の PEMP ビットが "1" に変わります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ DMA コントローラ (DMAC) の起動 25.6.4 10 ビット A/D コンバータのスキャン変換割込み要求と優先変換割込み要求の発生を利用し て , FIFO 内のデータを DMA 転送できます。 スキャン変換割込み要求 / 優先変換割込み要求を発生させる段数と DMA 転送させるバ イト数を同じに設定すると , A/D スキャン変換と連動して , FIFO のデータを DMA 転送 できます。DMA 転送させるバイト数の設定については , 「第 31 章 DMA コントローラ (DMAC)」を参照してください。 • シングル変換モード時 DMA 転送する場合 , DMA ブロックサイズと割込み発生 FIFO 段数を同じ値に設定 し , DMA 完了後に次の A/D 起動を行ってください。 • リピート変換モード時 DMA 転送する場合 , DMA のブロックサイズを 1, 割込み発生 FIFO 段数は 1 段に設 定してください。 DMA 転送動作を図 25.6-6 に示します。 図 25.6-6 DMA 転送動作 ( スキャン変換割込み要求の場合 ) 有効FIFO段数 ブロックサイズ6,転送回数1でブロック転送 ブロックサイズ8, 転送回数1でブロック転送 SFS3~SFS0=0111(8段) FIFO段数設定 SFS3~SFS0=0101(6段) DMACによる クリア スキャン変換割込み 要求 (DMA起動要求) DMACによる クリア FIFO読出し (DMA転送) A/D変換 停止 1 2 3 4 5 6 停止 1 2 3 4 5 6 7 8 停止 A/D起動 DMA正常終了 割込み < 注意事項 > DMA のブロックサイズと割込み発生 FIFO 段数は同じ値を設定してください。 また , すべての FIFO のデータを DMA 転送したあとに次の A/D 起動を行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 721 第 25 章 10 ビット A/D コンバータ 25.6 MB91665 シリーズ ただし , リピート変換モードなど繰り返し A/D 変換行っている場合 , 次の状態が発生す ると , 設定したバイト数分のデータを DMA 転送後も , スキャン変換割込み要求 / 優先 変換割込み要求を発生させる段数以上のデータがFIFO内に格納されている可能性があ ります。 • 変換結果を DMA 転送し終わる前に , 次のチャネルの A/D 変換が開始された ( 他の DMA 転送が起動され , 変換結果の DMA 転送が待機された場合など ) このため , 割込み要求を発生させる段数以上に , データが格納されている場合は , DMA コントローラ (DMAC) によるクリアは無視され , 再度 DMA 転送を行います。 DMA 再転送動作を図 25.6-7 に示します。 図 25.6-7 DMA 再転送動作 有効FIFO段数 ブロックサイズ1, 転送回数4でブロック転送 DMACによる クリアは無視 SFS3~SFS0=0000(1段) FIFO段数設定 スキャン変換割込み 要求 (DMA起動要求) DMACによる クリア DMA転送待機 FIFO読出し (DMA転送) A/D変換 停止 1 2 3 4 1 2 3 4 1 2 3 4 停止 A/D起動 RPTビット DMA正常終了 割込み < 注意事項 > DMA のブロックサイズを 1, 割込み発生 FIFO 段数を 1 段に設定してください。 722 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンク ションシリアル インタフェース マルチファンクションシリアルインタフェースの 機能と動作について説明します。 26.1 マルチファンクションシリアルインタフェースの特長 26.2 UART( 非同期シリアルインタフェース ) 26.3 UART( 非同期シリアルインタフェース ) の概要 26.4 UART( 非同期シリアルインタフェース ) のレジスタ 26.5 UART の割込み 26.6 UART の動作 26.7 専用ボーレートジェネレータ 26.8 動作モード 0 ( 非同期ノーマルモード ) 設定手順と プログ ラムフロー 26.9 動作モード 1 ( 非同期マルチプロセッサモード ) 設定手順 とプログラムフロー 26.10 UART モードの注意事項 26.11 CSIO( クロック同期シリアルインタフェース ) 26.12 CSIO( クロック同期シリアルインタフェース ) の概要 26.13 CSIO( クロック同期シリアルインタフェース ) の レジスタ 26.14 CSIO( クロック同期シリアルインタフェース ) の割込み 26.15 CSIO( クロック同期シリアルインタフェース ) の 動作 26.16 専用ボーレートジェネレータ 26.17 CSIO( クロック同期シリアルインタフェース ) 設定手順 とプログラムフロー 26.18 CSIO モードの注意事項 26.19 I2C インタフェース 26.20 I2C インタフェースの概要 26.21 I2C インタフェースのレジスタ 26.22 I2C インタフェースの割込み 26.23 専用ボーレートジェネレータ 26.24 I2C モードの注意事項 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 723 第 26 章 マルチファンクションシリアル インタフェース 26.1 26.1 MB91665 シリーズ マルチファンクションシリアルインタフェースの特長 マルチファンクションシリアルインタフェースには以下の特長があります。 ■ インタフェースモード マルチファンクションシリアルインタフェースは動作モードの設定により , 以下のイ ンタフェースモードを選択可能です。 • UART0 ( 非同期ノーマルシリアルインタフェース ) • UART1 ( 非同期マルチプロセッサシリアルインタフェース ) • CSIO ( クロック同期式シリアルインタフェース ) (SPI に対応可能 ) • I2C (I2C バスインタフェース ) ■ インタフェースモードの切換え 各シリアルインタフェースで通信を行う場合には , 表 26.1-1 のシリアルモードレジス タ (SMR) で動作モードを設定してから通信を開始します。 表 26.1-1 インタフェースモードの切換え MD2 MD1 MD0 0 0 0 UART0 ( 非同期ノーマルシリアルインタフェース ) 0 0 1 UART1 ( 非同期マルチプロセッサシリアルインタフェース ) 0 1 0 CSIO ( クロック同期式シリアルインタフェース ) (SPI に対応可能 ) 1 0 0 I2C (I2C バスインタフェース ) インタフェースモード ( 注意事項 ) 上記以外は設定禁止です。 <注意事項> • 1 つのシリアルインタフェースで送信あるいは受信動作中にモードの切換えを行った場合の送受 信に関する動作の保証はできません。 • 動作モードを変更すると , 同一チャネルの一部のレジスタは初期化されますので動作 モードは最初に設定してください。初期化されるレジスタについては , 各動作モードの シリアルモードレジスタ (SMR) の注意事項を参照してください。 ■ チャネル数 本製品はマルチファンクションシリアルインタフェースを 4 チャネル内蔵しています。 724 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.2 MB91665 シリーズ 26.2 UART( 非同期シリアルインタフェース ) マルチファンクションシリアルインタフェースの機能のうち , 動作モード 0, 1 でサ ポートしている UART 機能について説明します。 ● UART( 非同期シリアルインタフェース ) ● UART( 非同期シリアルインタフェース ) の概要 ● UART( 非同期シリアルインタフェース ) のレジスタ • シリアル制御レジスタ (SCR) • シリアルモードレジスタ (SMR) • シリアルステータスレジスタ (SSR) • 拡張通信制御レジスタ (ESCR) • 受信データレジスタ / 送信データレジスタ (RDR/TDR) • ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) ● UART の割込み • 受信割込み発生とフラグセットのタイミング • 送信割込み発生とフラグセットのタイミング ● UART の動作 ● 専用ボーレートジェネレータ ボーレート設定 ● 動作モード 0 ( 非同期ノーマルモード ) 設定手順と プログラムフロー ● 動作モード 1 ( 非同期マルチプロセッサモード ) 設定手順とプログラムフロー CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 725 第 26 章 マルチファンクションシリアル インタフェース 26.3 26.3 MB91665 シリーズ UART( 非同期シリアルインタフェース ) の概要 UART( 非同期シリアルインタフェース ) は , 外部装置と非同期通信 ( 調歩同期 ) をす るための汎用のシリアルデータ通信インタフェースです。双方向通信機能 ( ノーマ ルモード ) , マスタ / スレーブ型通信機能 ( マルチプロセッサモード : マスタ / スレー ブ両方サポート ) をサポートしています。 ■ UART( 非同期シリアルインタフェース ) の機能 機能 1 データ 2 シリアル入力 3 転送形式 4 ボーレート • 専用ボーレートジェネレータ (15 ビットリロードカウンタ構成 ) • 外部クロック入力をリロードカウンタで調節可能。 5 データ長 5 ビット ∼ 9 ビット ( ノーマルモード時 ), 7 ビット , 8 ビット ( マル チプロセッサモード時 ) 6 信号方式 NRZ (Non Return to Zero) , 反転 NRZ 7 スタートビット検出 8 受信エラー検出 全二重ダブルバッファ 3 回オーバサンプリングを行い , サンプリング値の多数決により受 信値を決定します。 非同期 • スタートビット立下りエッジに同期 (NRZ 方式の場合 ) • スタートビット立上りエッジに同期 ( 反転 NRZ 方式の場合 ) • フレーミングエラー • オーバランエラー • パリティエラー * • 受信割込み ( 受信完了 , フレーミングエラー , オーバランエラー , パリティ エラー *) • 送信割込み ( 送信データエンプティ , 送信バスアイドル ) • 送受信 DMA 転送サポート機能あり 9 割込み要求 10 マスタ / スレーブ型通信 機能 ( マルチプロセッサ モード ) 1 ( マスタ ) 対 n ( スレーブ ) 間の通信が可能 ( マスタとスレーブシステムの両方をサポート ) * : パリティエラーはノーマルモード時のみ。 726 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 26.4 UART( 非同期シリアルインタフェース ) のレジスタ UART( 非同期シリアルインタフェース ) のレジスタ一覧を示します。 ■ UART( 非同期シリアルインタフェース ) のレジスタ一覧 表 26.4-1 UART( 非同期シリアルインタフェース ) のレジスタ一覧 チャネル 0 1 2 6 CM71-10158-1 レジスタ略称 レジスタ名 SCR0 シリアル制御レジスタ 0 参照先 26.4.1 SMR0 シリアルモードレジスタ 0 26.4.2 ESCR0 拡張通信制御レジスタ 0 26.4.4 BGR0 ボーレートジェネレータレジスタ 0 26.4.6 SSR0 シリアルステータスレジスタ 0 26.4.3 RDR0 受信データレジスタ 0 26.4.5 TDR0 送信データレジスタ 0 26.4.5 SCR1 シリアル制御レジスタ 1 26.4.1 SMR1 シリアルモードレジスタ 1 26.4.2 ESCR1 拡張通信制御レジスタ 1 26.4.4 BGR1 ボーレートジェネレータレジスタ 1 26.4.6 SSR1 シリアルステータスレジスタ 1 26.4.3 RDR1 受信データレジスタ 1 26.4.5 TDR1 送信データレジスタ 1 26.4.5 SCR2 シリアル制御レジスタ 2 26.4.1 SMR2 シリアルモードレジスタ 2 26.4.2 ESCR2 拡張通信制御レジスタ 2 26.4.4 BGR2 ボーレートジェネレータレジスタ 2 26.4.6 SSR2 シリアルステータスレジスタ 2 26.4.3 RDR2 受信データレジスタ 2 26.4.5 TDR2 送信データレジスタ 2 26.4.5 SCR6 シリアル制御レジスタ 6 26.4.1 SMR6 シリアルモードレジスタ 6 26.4.2 ESCR6 拡張通信制御レジスタ 6 26.4.4 BGR6 ボーレートジェネレータレジスタ 6 26.4.6 SSR6 シリアルステータスレジスタ 6 26.4.3 RDR6 受信データレジスタ 6 26.4.5 TDR6 送信データレジスタ 6 26.4.5 FUJITSU SEMICONDUCTOR LIMITED 727 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 表 26.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 − − ■ 動作モード UART( 非同期シリアルインタフェース ) は , 2 つの異なるモードで動作します。シリア ルモードレジスタ (SMR) の MD2, MD1, MD0 によって決定されます。 表 26.4-3 UART( 非同期シリアルインタフェース ) の動作モード 動作モード MD2 MD1 MD0 種類 0 0 0 0 UART0 ( 非同期ノーマルモード ) 1 0 0 1 UART1 ( 非同期マルチプロセッサモード ) 728 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ シリアル制御レジスタ (SCR) 26.4.1 シリアル制御レジスタ (SCR) は , 送受信の許可 / 禁止 , 送受信割込みの許可 / 禁止 , 送信バスアイドル割込みの許可 / 禁止 , UART リセットをすることができます。 ■ シリアル制御レジスタ (SCR) 図 26.4-1 にシリアル制御レジスタ (SCR) のビット構成を , 表 26.4-4 に各ビットの機能 を示します。 図 26.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"をリード プログラマブルクリア :初期値 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 729 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 表 26.4-4 シリアル制御レジスタ (SCR) の各ビットの機能説明 (1 / 2) ビット名 機能 UART の内部状態を初期化するビットです。 "1" を設定した場合: • UART を直接リセット ( ソフトウェアリセット ) します。ただし , レジスタの設定は維持されます。その際 , 送受信状態のものは直ち に切断されます。 bit15 UPCL: プログラマブル クリアビット • ボーレートジェネレータは, BGR1/BGR0レジスタの設定値をリロー ドし , 再スタートします。 • すべての送受信割込み要因 (PE, FRE, ORE, RDRF, TDRE, TBI) は初 期化 (000011B) されます。 "0" を設定した場合:影響ありません。 リード時は , 常に "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 730 RXE: 受信許可ビット ( 注意事項 ) 受信動作許可 (RXE=1) にしても , スタートビットの立 下りエッジ (NRZ フォーマット (INV=0) の場合 ) が入 力されないと受信動作を開始しません ( 反転 NRZ フォーマット (INV=1) の場合は , 立上りエッジが入力 されるまで受信動作を開始しません )。 受信中に受信動作を禁止 (RXE=0) した場合には , 直ち に受信動作を停止します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 表 26.4-4 シリアル制御レジスタ (SCR) の各ビットの機能説明 (2 / 2) ビット名 機能 UART の送信動作を許可 / 禁止します。 • "0" に設定した場合:送信動作が禁止されます。 bit8 TXE: 送信許可ビット • "1" に設定した場合:送信動作が許可されます。 ( 注意事項 ) CM71-10158-1 送信中に送信動作を禁止 (TXE=0) した場合には , 直ち に送信動作を停止します。 FUJITSU SEMICONDUCTOR LIMITED 731 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ シリアルモードレジスタ (SMR) 26.4.2 シリアルモードレジスタ (SMR) は , 動作モードの設定 , 転送方向 , データ長 , ストッ プビット長の選択 , およびシリアルデータとシリアルクロックの端子への出力許可 / 禁止の設定を行います。 ■ シリアルモードレジスタ (SMR) 図 26.4-2 にシリアルモードレジスタ (SMR) のビット構成を , 表 26.4-5 に各ビットの機 能を示します。 図 26.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 :リード/ライト可能 :初期値 732 (注意事項) 本章では動作モード0,動作モード1のレジスタおよび動作に ついて説明します FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.4 表 26.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 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 733 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ <注意事項> 動作モードを変更すると , 同一チャネル内の以下のレジスタは初期化されますので動作 モードは最初に設定してください。 • シリアル制御レジスタ (SCR) • 拡張通信制御レジスタ (ESCR) ただし , 16 ビット書込みで SCR と SMR を同時に書き込んだとき , SCR には書き込んだ 内容が反映されます。 734 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ シリアルステータスレジスタ (SSR) 26.4.3 シリアルステータスレジスタ (SSR) は , 送受信の状態の確認 , 受信エラーフラグの 確認 , また , 受信エラーフラグをクリアします。 ■ シリアルステータスレジスタ (SSR) 図 26.4-3 にシリアルステータスレジスタ (SSR) のビット構成を , 表 26.4-6 に各ビット の機能を示します。 図 26.4-3 シリアルステータスレジスタ (SSR) のビット構成 bit15 bit14 bit13 REC - PE bit12 FRE R/W - R R bit11 bit10 bit9 bit8 ・・・・・・・・・・・・・・・・・・・・・ bit0 bit7 (ESCR) ORE RDRF TDRE TBI R R R 初期値 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)のクリア :初期値 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 735 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 表 26.4-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (1 / 2) ビット名 bit15 REC: 受信エラー フラグクリア ビット 機能 シリアルステータスレジスタ (SSR) の PE, FRE, ORE フラグをクリ アするビットです。 • "1" 書込みで , エラーフラグがクリアされます。 • "0" 書込みは , 影響しません。 リードした場合 , 常に "0" が読み出されます。 bit14 未定義ビット リードした場合 : 値は不定です。 ライトした場合 : 影響しません。 • ESCR:PEN=1 で受信時にパリティエラーが発生すると "1" にセッ bit13 PE: パリティエラー フラグビット ( 動作モード 0 のみ機能 ) トされ , シリアルステータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリアされます。 • PE ビットと SCR:RIE ビットが "1" の場合 , 受信割込み要求を出 力します。 • 本フラグがセットされた場合は , 受信データレジスタ (RDR) の データは無効です。 • 受信時にフレーミングエラーが発生すると "1" にセットされ , シ リアルステータスレジスタ (SSR) の REC ビットに "1" を書き込 bit12 FRE: フレーミング エラーフラグ ビット むとクリアされます。 • FRE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力し ます。 • 本フラグがセットされた場合は , 受信データレジスタ (RDR) の データは無効です。 • 受信時にオーバランが発生すると "1" にセットされ , シリアルス テータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリ bit11 ORE: オーバラン エラーフラグ ビット アされます。 • ORE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力し ます。 • 本フラグがセットされた場合は , 受信データレジスタ (RDR) の データは無効です。 • 受信データレジスタ (RDR) の状態を示すフラグです。 bit10 RDRF: 受信データ フルフラグ ビット • RDR に受信データがロードされると "1" にセットされ , 受信デー タレジスタ (RDR) を読み出すと "0" にクリアされます。 • RDRF ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力 します。 736 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.4 表 26.4-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (2 / 2) ビット名 機能 • 送信データレジスタ (TDR) の状態を示すフラグです。 • TDR に送信データを書き込むと "0" となり , TDR に有効なデー bit9 TDRE: 送信データ エンプティ フラグビット タが存在していることを示します。データが送信シフトレジスタ にロードされて送信が開始されると "1" になり , TDR に有効な データが存在していないことを示します。 • TDRE ビットと TIE ビットが "1" の場合 , 送信割込み要求を出力 します。 • シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットする と , TDRE ビットは "1" になります。 • UART が送信動作をしていないことを示すビットです。 • 送信データレジスタ (TDR) へ送信データを書き込んだ場合に本 ビットは "0" になります。 bit8 TBI: 送信バス アイドルフラグ ビット • 送信データレジスタがエンプティ (TDRE=1) で , 送信動作をして いない場合に本ビットは "1" になります。 • シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットする と TBI ビットは "1" になります。 • 本ビットが "1" で , 送信バスアイドル割込みが許可 (SCR:TBIE=1) されていると送信割込み要求を出力します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 737 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 拡張通信制御レジスタ (ESCR) 26.4.4 拡張通信制御レジスタ (ESCR) は , 送受信データ長の設定 , ストップビット長の選択 , パリティビットの許可 / 禁止 , パリティビットの選択 , シリアルデータフォーマットの 反転の設定ができます。 ■ 拡張通信制御レジスタ (ESCR) のビット構成 図 26.4-4 に拡張通信制御レジスタ (ESCR) のビット構成を , 表 26.4-7 に各ビットの機 能を示します。 図 26.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ビット 未定義ビット リード時,値は不定です。ライト時,影響しません。 738 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ 表 26.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 ビットに設定されます。 ( 注意事項 ) CM71-10158-1 上記以外の設定は禁止です。 動作モード 1 では , データ長を 7, 8 ビットに設定し てください。その他の設定は禁止です。 FUJITSU SEMICONDUCTOR LIMITED 739 第 26 章 マルチファンクションシリアル インタフェース 26.4 26.4.5 MB91665 シリーズ 受信データレジスタ / 送信データレジスタ (RDR/TDR) 受信データと送信データレジスタは同一アドレスに配置されています。読み出した 場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレジスタとし て機能します。 ■ 受信データレジスタ (RDR) 図 26.4-5 にシリアル受信レジスタ (RDR) のビット構成を示します。 図 26.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 初期値 - - - - - - - 0 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" にクリアされます。 740 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ • 受信エラーが発生 (SSR:PE, ORE, FRE のいずれかが "1") した場合 , 受信データレ ジスタ (RDR) のデータは無効となります。 • 動作モード 1 ( マルチプロセッサモード ) では , 7 ビット , 8 ビット長の動作となり , 受信した AD ビットは , D8 ビットに格納されます。 • 9 ビット長転送 , および動作モード 1 の場合 , RDR の読出しは 16 ビットアクセスで 行います。 ■ 送信データレジスタ (TDR) 図 26.4-6 に送信データレジスタのビット構成を示します。 図 26.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 初期値 - - - - - - - 1 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) は , 送信データが送信用シフトレジスタ へ転送されて送信が開始されると , "1" にセットされます。 • 送信データエンプティフラグ (SSR:TDRE) が "1" のとき , 送信データを書き込むこ とができます。送信割込みが許可されている場合には送信割込みが発生します。送 信データの書込みは , 送信割込みの発生によるか , 送信データエンプティフラグ (SSR:TDRE) が "1" の状態で行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 741 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ • 送信データエンプティフラグ (SSR:TDRE) が "0" のときは , 送信データを書き込む ことはできません。 • 動作モード 1 ( マルチプロセッサモード ) では , 7 ビット , 8 ビット長の動作となり , AD ビットの送信は , D8 ビットへの書込みにより行います。 • 9 ビット長転送 , および動作モード 1 の場合 , TDR への書込みは 16 ビットアクセス で行います。 <注意事項> 送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読出し専用のレジ スタです。送受信レジスタは同一アドレスに配置されているため , 書込み値と読出し値が 異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW) 系命令は 使用できません。 742 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) 26.4.6 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) は , シリアルクロックの分周 比を設定します。また , リロードカウンタのクロックソースとして外部クロックを 選択できます。 ■ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 図 26.4-7 にボーレートジェネレータレジスタ1, 0 (BGR1, BGR0)のビット構成を示しま す。 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 743 第 26 章 マルチファンクションシリアル インタフェース 26.4 MB91665 シリーズ <注意事項> • ボーレートジェネレータレジスタ 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) に設定してください。 744 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.5 MB91665 シリーズ 26.5 UART の割込み UART には , 送受信割込みがあります。次に示す要因で割込み要求を発生させるこ とができます。 • 受信データが受信データレジスタ (RDR) にセットされた場合 , または受信エラー が発生した場合 • 送信データが送信データレジスタ (TDR) から送信用シフトレジスタに転送され , 送信が開始された場合 • 送信バスアイドル ( 送信動作なし ) ■ UART の割込み UART の割込み制御ビットと割込み要因は表 26.5-1 のようになっています。 表 26.5-1 UART の割込み制御ビットと割込み要因 割込み の種類 割込み 動作モード 要求 フラグ フラグ レジスタ 0 1 ビット 割込み要因 RDRF SSR ○ ○ 1 バイト受信 ORE SSR ○ ○ オーバラン エラー 受信 割込み要因 許可ビット 割込み要求 フラグのクリア 受信データ (RDR) の読出し SCR:RIE FRE SSR ○ ○ フレーミング エラー PE SSR ○ × パリティエラー TDRE SSR ○ ○ 送信レジスタが SCR:TIE エンプティ TBI SSR ○ ○ 送信動作なし 送信 SCR:TBIE 受信エラーフラグクリアビッ ト (SSR:REC) への "1" 書込み 送信データ (TDR) への書込 み* 送信データ (TDR) への書込 み* * : TDRE ビットが "0" になってから TIE ビットを "1" にしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 745 第 26 章 マルチファンクションシリアル インタフェース 26.5 MB91665 シリーズ 受信割込み発生とフラグセットのタイミング 26.5.1 受信時の割込みとしては , 受信完了 (SSR:RDRF) および受信エラーの発生 (SSR: PE, ORE, FRE) があります。 ■ 受信割込み発生とフラグセットのタイミング 最初のストップビットが検出されることにより , 受信データが受信データレジスタ (RDR) に格納されます。受信が完了したとき (SSR:RDRF=1) または受信エラーが発生 (SSR:PE, ORE, FRE=1) すると各フラグがセットされます。そのとき , 受信割込みが許 可 (SSR:RIE=1) されていると受信割込みが発生します。 <注意事項> 受信エラーが発生した場合は , 受信データレジスタ (RDR) のデータは無効となります。 図 26.5-1 RDRF( 受信データフル ) フラグビットのセットタイミング 受信データ ST D0 D1 D5 D2 D6 D7 SP ST RDRF 受信割込み発生 図 26.5-2 FRE ( フレーミングエラー ) フラグビットのセットタイミング 受信データ ST D0 D1 D5 D2 D6 D7 SP ST RDRF FRE 受信割込み発生 (注意事項) ・最初のストップビットが”L”レベルのとき, フレーミングエラーが発生します。 ・フレーミングエラーが発生しても, RDRFは”1”にセットされデータは受信されますが, 受信データは無効です。 図 26.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), 次のデータが転送されるとオーバランエラーが発生します。 746 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.5 MB91665 シリーズ 送信割込み発生とフラグセットのタイミング 26.5.2 送信時の割込みとしては , 送信データが送信データレジスタ (TDR) から送信用シフ トレジスタに転送され (SSR:TDRE=1) て送信が開始された場合と送信動作をして いない場合 (SSR:TBI=1) に発生します。 ■ 送信割込み発生とフラグセットのタイミング ● 送信データエンプティフラグ (TDRE) のセットタイミング 送信データレジスタ (TDR) に書き込まれたデータが送信シフトレジスタに転送される と , 次のデータの書込みが可能な状態 (SSR:TDRE=1) になります。そのとき , 送信割込 みが許可 (SCR:TIE=1) されていると , 送信割込みが発生します。TDRE ビットはリード オンリビットなので , 送信データレジスタ (TDR) へのデータ書込みにより "0" にクリア されます。 図 26.5-4 送信データエンプティフラグ (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 ビットおよび送信割込み要求はクリアされます。 図 26.5-5 送信バスアイドルフラグ (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:ストップビット CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 747 第 26 章 マルチファンクションシリアル インタフェース 26.6 26.6 MB91665 シリーズ UART の動作 UART は , モード 0 の双方向シリアル非同期通信 , モード 1 のマスタ / スレーブマル チプロセッサ通信で動作します。 ■ UART の動作 ● 送受信データフォーマット • 送受信データは , 必ずスタートビットから始まり , 指定されたデータビット長の送 受信が行われ , 少なくとも 1 ビットのストップビットで終了します。 • データ転送方向 (LSB ファーストまたは MSB ファースト ) は , シリアルモードレジ スタ (SMR) の BDS ビットで決定されます。パリティありの場合 , パリティビットは 常に最終データビットと最初のストップビットの間に置かれます。 • 動作モード 0( 通常モード ) では , パリティはあり / なしの選択ができます。 • 動作モード 1( マルチプロセッサモード ) ではパリティは付加されず , AD ビットが 付加されます。 動作モード 0, 1 の送受信データフォーマットを図 26.6-1 に示します。 図 26.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 : データビット 748 データ7ビット FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.6 MB91665 シリーズ <注意事項> • 図 26.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) に送信データを書き込むことができま す。 • 送信データを送信データレジスタ (TDR) に書き込むと , 送信データエンプティフラ グビット (TDRE) は "0" になります。 • シリアル制御レジスタの送信動作許可ビット (SCR:TXE) を "1" に設定すると , 送 信データは送信シフトレジスタにロードされてスタートビットから順に送信が開 始されます。 • 送信が開始されると , 送信データエンプティフラグビット (TDRE) は再び "1" にセッ トされます。このとき , 送信割込みが許可 (SCR:TIE=1) されていると送信割込みが 発生します。割込み処理において , 次の送信データを送信データレジスタに書き込 むことができます。 <注意事項> 送信データエンプティフラグビット (SSR:TDRE) は初期値が "1" のため , 送信割込みが 許可 (SCR:TIE=1) されると直ちに送信割込みが発生します。 ● 受信動作 • 受信動作が許可 (SCR:RXE=1) されると受信動作を行います。 • スタートビットを検出すると , 拡張通信制御レジスタ (ESCR:PEN, P, L2, L1, L0), お よびシリアルモードレジスタ (SMR:BDS) に設定されているデータフォーマットに 従って 1 フレームデータの受信が行われます。 • 1 フレームの受信が完了すると , 受信データフルフラグビット (SSR:RDRF) が "1" にセットされます。このとき , 受信割込みが許可 (SCR:RIE=1) されている場合 , 受 信割込みが発生します。 • 受信データを読み出す際には , 1 フレームデータの受信完了後に受信データを読み 出し , シリアルステータスレジスタ (SSR) のエラーフラグの状態を確認してくださ い。受信エラーが発生している場合には , エラー処理を行ってください。 • 受信データの読出しで , 受信データフルフラグビット (SSR:RDRF) は "0" にクリア されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 749 第 26 章 マルチファンクションシリアル インタフェース 26.6 MB91665 シリーズ <注意事項> 受信データレジスタ (RDR) のデータは , 受信データレジスタフルフラグビット (SSR: RDRF) が "1" にセットされ , 受信エラーが発生しなかった場合 (SSR:PE, ORE, FRE=0) に有効となります。 ● クロック選択 • 内部クロック , または外部クロックを使用できます。 • 外部クロックを使用する場合は , BGR:EXT=1 に設定します。この場合 , 外部クロッ クがボーレートジェネレータで分周されます。 ● スタートビット検出 • 非同期モード時は , SIN 信号の立下りエッジによってスタートビットを認識します。 このため受信動作を許可 (SCR:RXE=1) しても , SIN 信号の立下りエッジが入力され ないと受信動作を開始しません。 • スタートビットの立下りエッジを検出すると , ボーレートジェネレータの受信リロー ドカウンタはリセットされ , 再リロードしカウントダウンを開始します。これに よって , 常にデータの中心でサンプリングします。 スタートビット データビット SIN SIN (サンプリング済み) リロードカウンタ リセット スタートビット 立下りエッジ検出 データサンプリング 受信サンプリング クロック 1ビットタイム ● ストップビット • 1 ビットから 4 ビット長を選択できます。 • 受信データフルフラグビット (SSR:RDRF) は , 最初のストップビットを検出すると "1" にセットされます。 ● エラー検出 • 動作モード 0 では , パリティエラー , オーバランエラー , フレームエラーを検出でき ます。 • 動作モード 1 では , オーバランエラー , フレームエラーを検出できます。パリティ エラーは検出できません。 750 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.6 MB91665 シリーズ ● パリティビット • パリティビットの付加は , 動作モード 0 の場合のみ設定できます。パリティ許可ビッ ト (ESCR:PEN) でパリティの有無を , パリティ選択ビット (ESCR:P) で偶数パリ ティ / 奇数パリティを設定できます。 • 動作モード 1 では , パリティを使用できません。 パリティ有効時の送受信データを図 26.6-2 に示します。 図 26.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 信号方式を図 26.6-3 に示します。 図 26.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 ファーストから選択できます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 751 第 26 章 マルチファンクションシリアル インタフェース 26.7 26.7 MB91665 シリーズ 専用ボーレートジェネレータ 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) 以上必要です。 752 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.7 MB91665 シリーズ ボーレート設定 26.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 以上を設定してください。ただし , ボーレートの誤差とリロード値の設 定によって正常にデータを受信できないことがあります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 753 第 26 章 マルチファンクションシリアル インタフェース 26.7 MB91665 シリーズ ■ 各周辺クロック (PCLK) 周波数に対するリロード値とボーレート 表 26.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 :ボーレート誤差 (%) 754 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.7 MB91665 シリーズ ■ 受信時の許容ボーレート範囲 受信の際に , 送信先のボーレートのずれがどの程度まで許容できるかを次に示します。 受信時のボーレート誤差は下記に示す算出式を使用して , 必ず許容誤差範囲内になる ように設定してください。 図 26.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) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 755 第 26 章 マルチファンクションシリアル インタフェース 26.7 MB91665 シリーズ 前述の最小 / 最大ボーレート値の算出式から , UART と送信先とのボーレートの許容誤 差を求めると次のようになります。 表 26.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 ビット ) • 受信リロードカウンタ 非同期モードでのスタートビット立下りエッジ検出 756 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.8 MB91665 シリーズ 26.8 動作モード 0 ( 非同期ノーマルモード ) 設定手順と プログラムフロー 動作モード 0 では , 非同期シリアル双方向通信をすることができます。 ■ CPU 間接続 動作モード 0( 通常モード ) では , 双方向通信を選択します。図 26.8-1 に示すように 2 つの CPU を相互に接続します。 図 26.8-1 UART 動作モード 0 の双方向通信の接続例 SOUT SOUT SIN SIN SCK SCK CPU –1 (マスタ) CPU –2 (スレーブ) ■ フローチャート 図 26.8-2 双方向通信フローチャートの例 (送信側) (受信側) スタート スタート 動作モード設定 (モード0に設定) TDRに1バイトデータ をセットして通信 動作モード設定 (送信側と合わす) データ送信 NO RDRF=1 YES NO RDRF=1 YES 受信データ読出しと 処理 CM71-10158-1 データ送信 受信データ読出しと 処理 (ANS) 1バイトデータ送信 FUJITSU SEMICONDUCTOR LIMITED 757 第 26 章 マルチファンクションシリアル インタフェース 26.9 26.9 MB91665 シリーズ 動作モード 1 ( 非同期マルチプロセッサモード ) 設定手順とプログラムフロー 動作モード 1( マルチプロセッサモード ) では , 複数 CPU のマスタ / スレーブ接続に よる通信が可能です。マスタ / スレーブとして使用できます。 ■ CPU 間接続 マスタ / スレーブ型通信では , 図 26.9-1 に示すように 2 本の共通通信ラインに 1 つのマ スタ CPU と複数のスレーブ CPU を接続して通信システムを構成します。UART はマ スタまたはスレーブのどちらでも使用できます。 図 26.9-1 UART のマスタ / スレーブ型通信の接続例 SOUT SIN マスタ CPU SOUT SIN SOUT スレーブ CPU #0 SIN スレーブ CPU #1 ■ 機能選択 マスタ / スレーブ型通信では , 表 26.9-1 に示すように動作モードとデータ転送方式を選 択してください。 表 26.9-1 マスタ / スレーブ型通信機能の選択 動作モード マスタ CPU アドレス 送受信 データ 送受信 モード 1 (AD ビット 送信 ) スレーブ CPU モード 1 (AD ビット 受信 ) データ AD = 1 + 7 ビットまたは 8 ビットアドレス AD = 0 + 7 ビットまたは 8 ビットデータ パリティ ストップ ビット ビット方向 なし 1 ビット ∼ 4 ビット LSB ファースト または , MSB ファースト <注意事項> 動作モード 1 では送受信データ (RDR/TDR) はハーフワードアクセスで行ってください。 758 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.9 MB91665 シリーズ ● 通信手順 通信は , マスタ CPU がアドレスデータを送信することによって始まります。アドレス データとは D8 ビットを "1" としたデータで , 通信先となるスレーブ CPU を選択しま す。各スレーブ CPU はプログラムでアドレスデータを判断し , 割り当てられたアドレ スと一致した場合にマスタ CPU との通信 ( 通常データ ) をします。 図 26.9-2 にマスタ / スレーブ型通信 ( マルチプロセッサモード ) のフローチャートを示 します。 ■ フローチャート 図 26.9-2 マスタ / スレーブ型通信フローチャートの例 (マスタ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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 759 第 26 章 マルチファンクションシリアル インタフェース 26.10 26.10 MB91665 シリーズ UART モードの注意事項 UART モードの注意事項を下記に示します。 • FIFO 付きチャネルで DMA 転送要求する場合 , FIFO は使用できません。FIFO 動作 禁止の設定としてください。 • DMA 転送要求する場合 , DMA のブロックサイズを 1 回に設定してください。 760 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.11 MB91665 シリーズ 26.11 CSIO( クロック同期シリアルインタフェース ) マルチファンクションシリアルインタフェースの機能のうち , 動作モード 2 でサ ポートしている CSIO 機能について説明します。 ● CSIO( クロック同期シリアルインタフェース ) ● CSIO( クロック同期シリアルインタフェース ) の概要 ● CSIO( クロック同期シリアルインタフェース ) の レジスタ • シリアル制御レジスタ (SCR) • シリアルモードレジスタ (SMR) • シリアルステータスレジスタ (SSR) • 拡張通信制御レジスタ (ESCR) • 受信データレジスタ / 送信データレジスタ (RDR/TDR) • ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) ● CSIO( クロック同期シリアルインタフェース ) の割込み • 受信割込み発生とフラグセットのタイミング • 送信割込み発生とフラグセットのタイミング ● CSIO( クロック同期シリアルインタフェース ) の 動作 ● 専用ボーレートジェネレータ ボーレート設定 ● CSIO( クロック同期シリアルインタフェース ) 設定手順とプログラムフロー CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 761 第 26 章 マルチファンクションシリアル インタフェース 26.12 26.12 MB91665 シリーズ CSIO( クロック同期シリアルインタフェース ) の概要 CSIO( クロック同期シリアルインタフェース ) は , 外部装置と同期通信をするための 汎用のシリアルデータ通信インタフェースです (SPI に対応します )。 ■ CSIO ( クロック同期シリアルインタフェース ) の機能 機能 1 データバッファ 2 転送形式 3 ボーレート 4 データ長 5 受信エラー検出 6 割込み要求 • 受信割込み ( 受信完了 , オーバランエラー ) • 送信割込み ( 送信データエンプティ , 送信バスアイドル ) • 送受信 DMA 転送サポート機能あり 7 同期モード マスタまたはスレーブ機能 8 端子アクセス 762 全二重ダブルバッファ • クロック同期 ( スタートビット / ストップビットなし ) • マスタ / スレーブ機能 • SPI に対応 ( マスタ / スレーブ両方サポート ) • 専用ボーレートジェネレータあり (15 ビットリロードカウンタから構成 , マスタ動作時 ) • 外部クロック入力可能 ( スレーブ動作時 ) 5 ビット∼ 9 ビットに可変可能 オーバランエラー シリアルデータ出力端子を "H" に設定可能 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 26.13 CSIO( クロック同期シリアルインタフェース ) の レジスタ CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧を示します。 ■ CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧 表 26.13-1 CSIO( クロック同期シリアルインタフェース ) のレジスタ一覧 チャネル 0 1 2 6 CM71-10158-1 レジスタ略称 レジスタ名 SCR0 シリアル制御レジスタ 0 参照先 26.13.1 SMR0 シリアルモードレジスタ 0 26.13.2 ESCR0 拡張通信制御レジスタ 0 26.13.4 BGR0 ボーレートジェネレータレジスタ 0 26.13.6 SSR0 シリアルステータスレジスタ 0 26.13.3 RDR0 受信データレジスタ 0 26.13.5 TDR0 送信データレジスタ 0 26.13.5 SCR1 シリアル制御レジスタ 1 26.13.1 SMR1 シリアルモードレジスタ 1 26.13.2 ESCR1 拡張通信制御レジスタ 1 26.13.4 BGR1 ボーレートジェネレータレジスタ 1 26.13.6 SSR1 シリアルステータスレジスタ 1 26.13.3 RDR1 受信データレジスタ 1 26.13.5 TDR1 送信データレジスタ 1 26.13.5 SCR2 シリアル制御レジスタ 2 26.13.1 SMR2 シリアルモードレジスタ 2 26.13.2 ESCR2 拡張通信制御レジスタ 2 26.13.4 BGR2 ボーレートジェネレータレジスタ 2 26.13.6 SSR2 シリアルステータスレジスタ 2 26.13.3 RDR2 受信データレジスタ 2 26.13.5 TDR2 送信データレジスタ 2 26.13.5 SCR6 シリアル制御レジスタ 6 26.13.1 SMR6 シリアルモードレジスタ 6 26.13.2 ESCR6 拡張通信制御レジスタ 6 26.13.4 BGR6 ボーレートジェネレータレジスタ 6 26.13.6 SSR6 シリアルステータスレジスタ 6 26.13.3 RDR6 受信データレジスタ 6 26.13.5 TDR6 送信データレジスタ 6 26.13.5 FUJITSU SEMICONDUCTOR LIMITED 763 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 表 26.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 − 764 ORE RDRF TDRE − − B14 B13 B12 B11 B10 B9 − FUJITSU SEMICONDUCTOR LIMITED bit3 bit2 bit1 bit0 SCKE SOE L2 L1 L0 D3 D2 D1 D0 B3 B2 B1 B0 SCINV BDS − CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ シリアル制御レジスタ (SCR) 26.13.1 シリアル制御レジスタ (SCR) は , 送受信割込みの許可 / 禁止 , 送信アイドル割込みの 許可 / 禁止 , 送受信動作の許可 / 禁止の設定を行います。また , SPI に接続するため の設定 , CSIO をリセットすることが可能です。 ■ シリアル制御レジスタ (SCR) 図 26.13-1 にシリアル制御レジスタ (SCR) のビット構成を , 表 26.13-3 に各ビットの機 能を示します。 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 765 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 表 26.13-3 シリアル制御レジスタ (SCR) の各ビットの機能説明 (1 / 2) ビット名 機能 CSIO の内部状態を初期化するビットです。 "1" を設定した場合: • CSIO を直接リセット ( ソフトウェアリセット ) します。ただし , レジスタの設定は保持されます。その際 , 送受信状態のものは直 ちに切断されます。 bit15 UPCL: プログラマブル クリアビット • ボーレートジェネレータは , BGR1/BGR0 レジスタの設定値をリ ロードし , 再スタートします。 • すべての送受信割込み要因 (TDRE, TBI, RDRF, ORE) は初期化 ("1100B") されます。 • "0" を設定した場合:動作に影響を及ぼしません。 • リード時は , 常に "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 TIE: 送信割込み 許可ビット TBIE: 送信バス アイドル 割込み許可 ビット • CPU への送信割込み要求出力を許可 / 禁止するビットです。 • TIE ビットと TDRE ビットが "1" の場合 , 送信割込み要求を出力 します。 • CPU への送信バスアイドル割込み要求出力を許可 / 禁止するビッ トです。 • TBIE ビットと TBI ビットが "1" のとき , 送信バスアイドル割込み 要求を出力します。 CSIO の受信動作を許可 / 禁止します。 "0" に設定した場合:データフレーム受信動作が禁止されます。 bit9 RXE: 受信許可ビット "1" に設定した場合:データフレーム受信動作が許可されます。 ( 注意事項 ) 766 受信中に受信動作を禁止 (RXE=0) した場合には , 直 ちに受信動作を停止します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.13 表 26.13-3 シリアル制御レジスタ (SCR) の各ビットの機能説明 (2 / 2) ビット名 機能 CSIO の送信動作を許可 / 禁止します。 "0" に設定した場合:データフレーム送信動作が禁止されます。 bit8 TXE: 送信許可ビット "1" に設定した場合:データフレーム送信動作が許可されます。 ( 注意事項 ) CM71-10158-1 送信中に送信動作を禁止 (TXE=0) した場合には , 直 ちに送信動作を停止します。 FUJITSU SEMICONDUCTOR LIMITED 767 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ シリアルモードレジスタ (SMR) 26.13.2 シリアルモードレジスタ (SMR) は , 動作モードの設定 , 転送方向 , シリアルクロッ クの反転 , およびシリアルデータとクロックの端子への出力許可 / 禁止の設定を行い ます。 ■ シリアルモードレジスタ (SMR) 図 26.13-2 にシリアルモードレジスタ (SMR) のビット構成を , 表 26.13-4 に各ビットの 機能を示します。 図 26.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のレジスタおよび動作について説明します。 768 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 表 26.13-4 シリアルモードレジスタ (SMR) の各ビットの機能説明 (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-10158-1 ファースト , BDS=0) 最上位ビット側から先に転送するか (MSB ファー スト , BDS=1) を選択するビットです。 ( 注意事項 ) 本ビットは , 送受信が禁止 (TXE=RXE=0) のときに設定 してください。 FUJITSU SEMICONDUCTOR LIMITED 769 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 表 26.13-4 シリアルモードレジスタ (SMR) の各ビットの機能説明 (2 / 2) ビット名 機能 bit1 SCKE: シリアル クロック出力 許可ビット シリアルクロックの入出力ポートを制御するビットです。 "0" に設定した場合: SCK"H" 出力 , または SCK 入力許可となります。SCK 入力とし て使う場合は汎用入出力ポートを入力ポートに設定してくださ い。 "1" に設定した場合:SCK 出力許可となります。 bit0 SOE: シリアル データ出力 許可ビット シリアルデータの出力を許可 / 禁止するビットです。 "0" に設定した場合:SOUT"H" 出力となります。 "1" に設定した場合:SOUT 出力許可となります。 <注意事項> 動作モードを変更すると , 同一チャネル内の以下のレジスタは初期化されますので動作 モードは最初に設定してください。 • シリアル制御レジスタ (SCR) • 拡張通信制御レジスタ (ESCR) ただし , 16 ビット書込みで SCR と SMR を同時に書き込んだとき , SCR には書き込んだ 内容が反映されます。 770 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ シリアルステータスレジスタ (SSR) 26.13.3 シリアルステータスレジスタ (SSR) は , 送受信状態の確認 , 受信エラーフラグの確 認 , また , 受信エラーフラグをクリアします。 ■ シリアルステータスレジスタ (SSR) 図 26.13-3 にシリアルステータスレジスタ (SSR) のビット構成を , 表 26.13-5 に各ビッ トの機能を示します。 図 26.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-10158-1 0 1 受信エラーフラグクリアビット 書込み時 読出し時 影響なし 常に"0"をリード 受信エラーフラグ (ORE)のクリア FUJITSU SEMICONDUCTOR LIMITED 771 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 表 26.13-5 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (1 / 2) ビット名 bit15 REC: 受信エラー フラグクリア ビット 機能 シリアルステータスレジスタ (SSR) の ORE フラグをクリアするビッ トです。 • "1" 書込みで , エラーフラグがクリアされます。 • "0" 書込みは , 影響しません。 リードした場合 , 常に "0" が読み出されます。 bit14 ∼ bit12 未定義ビット リードした場合 : 値は不定です。 ライトした場合 : 影響しません。 • 受信時にオーバランが発生すると "1" にセットされ , シリアルス テータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリアさ bit11 ORE: オーバラン エラーフラグ ビット れます。 • ORE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力しま す。 • 本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー タは無効です。 • 受信データレジスタ (RDR) の状態を示すフラグです。 bit10 RDRF: 受信データ フルフラグ ビット • RDR に受信データがロードされると "1" にセットされ , 受信データ レジスタ (RDR) を読み出すと "0" にクリアされます。 • RDRF ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力し ます。 • 送信データレジスタ (TDR) の状態を示すフラグです。 • TDR に送信データを書き込むと "0" となり , TDR に有効なデータが bit9 TDRE: 送信データ エンプティ フラグビット 存在していることを示します。データが送信シフトレジスタにロー ドされて送信が開始されると "1" になり , TDR に有効なデータが存 在していないことを示します。 • TDRE ビットと TIE ビットが "1" の場合 , 送信割込み要求を出力し ます。 • シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットすると , TDRE ビットは "1" になります。 772 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.13 表 26.13-5 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (2 / 2) ビット名 機能 • CSIO が送信動作をしていないことを示すビットです。 • 送信データレジスタ(TDR)へデータを書き込んだ場合に本ビットは "0" になります。 bit8 TBI: 送信バス アイドル フラグビット • 送信データレジスタ (TDR) がエンプティ (TDRE=1) で , 送信動作を していない場合に本ビットが "1" になります。 • シリアル制御レジスタ (SCR) の UPCL ビットに "1" をセットすると TDRE ビットは "1" になります。 • 本ビットが "1" で , 送信バスアイドル割込みが許可 (SCR:TBIE=1) さ れていると送信割込み要求を出力します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 773 第 26 章 マルチファンクションシリアル インタフェース 26.13 26.13.4 MB91665 シリーズ 拡張通信制御レジスタ (ESCR) 拡張通信制御レジスタ (ESCR) は , 送受信データ長の設定 , データ送受信ウェイト選 択 , シリアル出力を "H" 固定の設定ができます。 ■ 拡張通信制御レジスタ (ESCR) のビット構成 図 26.13-4 に拡張通信制御レジスタ (ESCR) のビット構成を , 表 26.13-6 に各ビットの 機能を示します。 図 26.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 774 L1 0 0 1 1 0 シリアル出力端子セットビット 書込み時 読出し時 影響なし 常に”0”をリード SOUT端子を ”H”にセット FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ 表 26.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-10158-1 上記の設定以外は禁止です。 FUJITSU SEMICONDUCTOR LIMITED 775 第 26 章 マルチファンクションシリアル インタフェース 26.13 26.13.5 MB91665 シリーズ 受信データレジスタ / 送信データレジスタ (RDR/TDR) 受信データと送信データレジスタは同一アドレスに配置されています。読み出した 場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレジスタと して機能します。 ■ 受信データレジスタ (RDR) 図 26.13-5 にシリアル受信レジスタ (RDR) のビット構成を示します。 図 26.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 初期値 - - - - - - - 0 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 ビットアクセスで行います。 776 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ ■ 送信データレジスタ (TDR) 図 26.13-6 に送信データレジスタのビット構成を示します。 図 26.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 初期値 - - - - - - - 1 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) は , 送信データが送信用シフトレジスタ へ転送されて送信が開始されると , "1" にセットされます。 • 送信データエンプティフラグ (SSR:TDRE) が "1" の場合は , 次の送信用データを書 き込むことができます。送信割込みが許可されている場合には送信割込みが発生し ます。次の送信データの書込みは , 送信割込みの発生によるか , 送信データエンプ ティフラグ (SSR:TDRE) が "1" の状態で行ってください。 • 送信データエンプティフラグ (SSR:TDRE) が "0" のときは , 送信データレジスタ (TDR) に送信データを書き込むことはできません。 • 9 ビット長転送の場合 , TDR への書込みは 16 ビットアクセスで行います。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 777 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ <注意事項> 送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読出し専用のレジ スタです。2 つのレジスタは同一アドレスに配置されているため , 書込み値と読出し値が 異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW) 系命令は 使用できません。 778 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) 26.13.6 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) は , シリアルクロックの分周 比を設定します。 ■ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 図 26.13-7 にボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成を示し ます。 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 779 第 26 章 マルチファンクションシリアル インタフェース 26.13 MB91665 シリーズ <注意事項> • ボーレートジェネレータレジスタ 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) を実行してください。 780 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.14 MB91665 シリーズ 26.14 CSIO( クロック同期シリアルインタフェース ) の割込み CSIO ( クロック同期シリアルインタフェース ) の割込みには受信割込みと送信割込 みがあり , 次に示す要因で割込み要求を発生させることができます。 • 受信データが受信データレジスタ (RDR) にセットされた場合 , または受信エラー が発生した場合 • 送信データが送信データレジスタ (TDR) から送信用シフトレジスタに転送され , 送信が開始された場合 • 送信バスアイドル ( 送信動作なし ) ■ CSIO の割込み CSIO の割込み制御ビットと割込み要因は表 26.14-1 のようになっています。 表 26.14-1 CSIO の割込み制御ビットと割込み要因 割込み 割込み 要求 フラグ の種類 フラグ レジスタ ビット RDRF 受信 SSR 割込み要因 割込み要因 許可ビット 1 バイト受信 受信データ (RDR) の読出し SCR:RIE ORE SSR オーバランエラー TDRE SSR 送信レジスタが エンプティ TBI SSR 送信動作なし 送信 割込み要求 フラグのクリア 受信エラーフラグクリアビット (SSR:REC) への "1" 書込み 送信データ (TDR) への書込み * SCR:TIE SCR:TBIE 送信データ (TDR) への書込み * * : TDRE ビットが "0" になってから TIE ビットを "1" にしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 781 第 26 章 マルチファンクションシリアル インタフェース 26.14 MB91665 シリーズ 受信割込み発生とフラグセットのタイミング 26.14.1 受信時の割込みとしては , 受信完了 (SSR:RDRF) および受信エラーの発生 (SSR: ORE) があります。 ■ 受信割込み発生とフラグセットのタイミング 最終データビットが検出されることにより , 受信データが受信データレジスタ (RDR) に格納されます。受信が完了したとき (SSR:RDRF=1) または受信エラーが発生 (SSR : ORE=1) すると各フラグがセットされます。そのとき , 受信割込みが許可 (SSR : RIE=1) されていると受信割込みが発生します。 <注意事項> 受信エラーが発生した場合は , 受信データレジスタ (RDR) のデータは無効となります。 図 26.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 図 26.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), 次のデータが転送されるとオーバランエラーが発生します。 782 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.14 MB91665 シリーズ 26.14.2 送信割込み発生とフラグセットのタイミング 送信時の割込みとしては , 送信データが送信データレジスタ (TDR) から送信用シフ トレジスタに転送され (SSR:TDRE=1) て送信が開始された場合と , 送信動作をし ていないとき (SSR:TBI=1) に発生します。 ■ 送信割込み発生とフラグセットのタイミング ● 送信データエンプティフラグ (TDRE) のセットタイミング 送信データレジスタ (TDR) に書き込まれたデータが送信シフトレジスタに転送される と , 次のデータの書込みが可能な状態 (SSR:TDRE=1) になります。そのとき , 送信割込 みが許可 (SCR:TIE=1) されていると送信割込みが発生します。TDRE ビットはリード オンリビットなので , 送信データレジスタ (TDR) へのデータ書込みにより "0" にクリア されます。 図 26.14-3 送信データエンプティフラグ (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 ビットおよび送信割込み要求はクリアされます。 図 26.14-4 送信バスアイドルフラグ (TBI) のセットタイミング SCK 送信データ D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 TBI TDRE TDRへの書込み CM71-10158-1 バスアイドルによる 送信割込みが発生 FUJITSU SEMICONDUCTOR LIMITED 783 第 26 章 マルチファンクションシリアル インタフェース 26.15 26.15 MB91665 シリーズ CSIO( クロック同期シリアルインタフェース ) の 動作 転送方式はクロック同期式となります。 ■ CSIO ( クロック同期シリアルインタフェース ) の動作 ■ ノーマル転送 (I) ● 特長 表 26.15-1 ノーマル転送 (I) の特長 項目 説明 1 シリアルクロック (SCK) のマークレベル "H" 2 送信データ出力タイミング SCK の立下りエッジ 3 受信データのサンプリング SCK の立上りエッジ 4 データ長 5 ビット∼ 9 ビット ● レジスタ設定 ノーマル転送 (I) に必要なレジスタの設定値を以下に示します。 表 26.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" を設定 *:ユーザが決める設定 784 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ <注意事項> 上記ビットの設定値 (1/0) は , マスタ動作 , スレーブ動作で異なります。以下のように設定 してください。 マスタ動作時 :SCR:MS=0, SMR:SCKE=1 スレーブ動作時:SCR:MS=1, SMR:SCKE=0 ● ノーマル転送 (I) タイミングチャート 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 785 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ • 受信動作 ① シリアルデータ出力禁止 (SMR:SOE=0), 送信動作許可 (SCR:TXE=1) および受信動 作許可 (SCR:RXE=1) にして TDR にダミーデータを書き込むと , シリアルクロッ ク出力 (SCK) の立上りエッジで受信データをサンプリングします。 ② 最後のビットを受信すると SSR:RDRF=1 となり , 受信割込み許可 (SCR:RIE=1) さ れていると受信割込み要求を出力します。このとき , 受信データ (RDR) を読み出 すことができます。 ③ 受信データ (RDR) を読み出すと , SSR:RDRF は "0" にクリアされます。 <注意事項> 受信動作のみを行う場合, シリアルクロック(SCK)を出力させるためにTDRにダミーデー タを書いてください。 • 送受信動作 ① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (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( マスタ時 ) 786 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.15 - 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) ● 特長 表 26.15-3 ノーマル転送 (II) の特長 1 2 3 4 CM71-10158-1 項目 説明 シリアルクロック (SCK) のマークレベル 送信データ出力タイミング 受信データのサンプリング データ長 "L" FUJITSU SEMICONDUCTOR LIMITED SCK の立上りエッジ SCK の立下りエッジ 5 ビット∼ 9 ビット 787 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ ● レジスタ設定 ノーマル転送 (II) に必要なレジスタの設定値を以下に示します。 表 26.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 788 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ ■ ノーマル転送 (II) タイミングチャート 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 789 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ <注意事項> 受信動作のみを行う場合, シリアルクロック(SCK)を出力させるためにTDRにダミーデー タを書いてください。 • 送受信動作 ① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (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( マスタ時 ) 790 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ (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) ● 特長 表 26.15-5 SPI 転送 (I) の特長 CM71-10158-1 項目 説明 1 シリアルクロック (SCK) のマークレベル "H" 2 送信データ出力タイミング SCK の立上りエッジ 3 受信データのサンプリング SCK の立下りエッジ 4 データ長 5 ビット∼ 9 ビット FUJITSU SEMICONDUCTOR LIMITED 791 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ ● レジスタ設定 SPI 転送 (I) に必要なレジスタの設定値を以下に示します。 表 26.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 792 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ ● SPI 転送 (I) タイミングチャート 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 793 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ <注意事項> 受信動作のみを行う場合, シリアルクロック(SCK)を出力させるためにTDRにダミーデー タを書いてください。 • 送受信動作 ① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (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( マスタ時 ) 794 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ (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) ● 特長 表 26.15-7 SPI 転送 (II) の特長 CM71-10158-1 項目 説明 1 シリアルクロック (SCK) のマークレベル "L" 2 送信データ出力タイミング SCK の立下りエッジ 3 受信データのサンプリング SCK の立上りエッジ 4 データ長 5 ビット∼ 9 ビット FUJITSU SEMICONDUCTOR LIMITED 795 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ ● レジスタ設定 SPI 転送 (II) に必要なレジスタの設定値を以下に示します。 表 26.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 796 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ ● SPI 転送 (II) タイミングチャート 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 797 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ <注意事項> 受信動作のみを行う場合, シリアルクロック(SCK)を出力させるためにTDRにダミーデー タを書いてください。 • 送受信動作 ① 送受信動作を同時に行う場合は , シリアルデータ出力許可 (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( マスタ時 ) 798 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.15 MB91665 シリーズ (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" にクリアされます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 799 第 26 章 マルチファンクションシリアル インタフェース 26.16 26.16 MB91665 シリーズ 専用ボーレートジェネレータ 専用ボーレートジェネレータは , マスタ動作時のみ機能します。 ■ CSIO( クロック同期シリアルインタフェース ) ボーレート選択 専用ボーレートジェネレータの設定は , マスタ動作時とスレーブ動作時では異なりま す。 ● マスタ動作時 専用ボーレートジェネレータで内部クロックを分周させてボーレートを選択します。 • 2 つの内部リロードカウンタがあり , それぞれ送受信シリアルクロックに対応して います。ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) で 15 ビットのリロー ド値を設定することにより , ボーレートを選択できます。 • リロードカウンタは設定された値で内部クロックを分周します。 ● スレーブ動作時 スレーブ動作時 (SCR:MS=1) は , 専用ボーレートジェネレータは機能しません ( クロック入力端子 SCK から入力された 外部クロックを直接使用します )。 800 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.16 MB91665 シリーズ ボーレート設定 26.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" 以上を設定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 801 第 26 章 マルチファンクションシリアル インタフェース 26.16 MB91665 シリーズ ■ 各周辺クロック (PCLK) 周波数に対するリロード値とボーレート 表 26.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 2221 < 0.01 2777 < 0.01 3332 < 0.01 4443 − 0.01 4800 1666 2082 − 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 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 レジスタの設定値 • ERR :ボーレート誤差 (%) ■ リロードカウンタの機能 リロードカウンタには送信リロードカウンタと受信リロードカウンタがあり , 専用 ボーレートジェネレータとして機能します。リロード値に対する 15 ビットレジスタか ら構成されており , 内部クロックより送受信クロックを生成します。 ■ カウントの開始 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むと , リ ロードカウンタはカウントを開始します。 802 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.16 ■ 再スタート リロードカウンタは下記の条件で再スタートします。 ● 送信 / 受信リロードカウンタ共通 プログラマブルリセット (SCR:UPCL ビット ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 803 第 26 章 マルチファンクションシリアル インタフェース 26.17 26.17 MB91665 シリーズ CSIO( クロック同期シリアルインタフェース ) 設定手順とプログラムフロー CSIO( クロック同期シリアルインタフェース ) では , シリアル双方向同期通信をする ことができます。 ■ CPU 間接続 CSIO( クロック同期シリアルインタフェース ) では , 双方向通信を選択します。図 26.171 に示すように 2 つの CPU を相互に接続します。 図 26.17-1 CSIO( クロック同期シリアルインタフェース ) の双方向通信の接続例 SOUT SOUT SIN SIN SCK SCK CPU –1 (マスタ) CPU –2 (スレーブ) ■ フローチャート 図 26.17-2 双方向通信フローチャートの例 (マスタ側) (スレーブ側) スタート スタート 動作モード設定 (モード2に設定) 動作モード設定 (送信側に合わせる) データ送信 TDRに1バイトデータ をセットして通信 NO RDRF=1 YES NO RDRF=1 YES 受信データ読出しと 処理 804 データ送信 (ANS) 受信データ読出しと 処理 1バイトデータ送信 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 26.18 第 26 章 マルチファンクションシリアル インタフェース 26.18 CSIO モードの注意事項 CSIO モードの注意事項を下記に示します。 • FIFO 付きチャネルで DMA 転送要求する場合 , FIFO は使用できません。FIFO 動作 禁止の設定としてください。 • DMA 転送要求する場合 , DMA のブロックサイズを 1 回に設定してください。 • マスタ受信およびスレーブ受信時には , データ受信用の DMA 転送と , ダミーデータ 送信用の DMA 転送が必要なため , DMA を 2 チャネル使用する必要があります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 805 第 26 章 マルチファンクションシリアル インタフェース 26.19 26.19 MB91665 シリーズ I2C インタフェース マルチファンクションシリアルインタフェースの機能のうち , 動作モード 4 でサ ポートしている I2C インタフェースについて説明します。 ● I2C インタフェース ● I2C インタフェースの概要 ● I2C インタフェースのレジスタ • I2C バス制御レジスタ (IBCR) • シリアルモードレジスタ (SMR) • I2C バスステータスレジスタ (IBSR) • シリアルステータスレジスタ (SSR) • 受信データレジスタ / 送信データレジスタ (RDR/TDR) • 7 ビットスレーブアドレスマスクレジスタ (ISMK) • 7 ビットスレーブアドレスレジスタ (ISBA) • ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) ● I2C インタフェースの割込み • I2C インタフェース通信の動作 • マスタモード • スレーブモード • バスエラー ● 専用ボーレートジェネレータ 806 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.20 MB91665 シリーズ 26.20 I2C インタフェースの概要 I2C インタフェースは IC 間バスをサポートし , I2C バス上のマスタ / スレーブデバイ スとして動作します。 ■ I2C インタフェースの機能 I2C インタフェースには , 以下の機能があります。 • マスタ / スレーブ送受信機能 • 調停機能 • クロック同期機能 • 転送方向検出機能 • 反復スタート条件の発生と検出機能 • バスエラー検出機能 • ゼネラルコールアドレッシング機能 • マスタおよびスレーブとしての 7 ビットアドレッシング • 転送およびバスエラー時に割込み発生可能 • 10 ビットアドレッシング機能は , プログラムで対応可能 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 807 第 26 章 マルチファンクションシリアル インタフェース 26.21 26.21 MB91665 シリーズ I2C インタフェースのレジスタ I2C インタフェースのレジスタ一覧を示します。 ■ I2C インタフェースのレジスタ一覧 表 26.21-1 I2C インタフェースのレジスタ一覧 (1 / 2) チャネル レジスタ略称 レジスタ名 2 0 IBCR0 I C バス制御レジスタ 0 1 2 808 参照先 26.21.1 SMR0 シリアルモードレジスタ 0 26.21.2 IBSR0 I2C バスステータスレジスタ 0 26.21.3 BGR0 ボーレートジェネレータレジスタ 0 26.21.8 SSR0 シリアルステータスレジスタ 0 26.21.4 RDR0 受信データレジスタ 0 26.21.5 TDR0 送信データレジスタ 0 26.21.5 ISMK0 7 ビットスレーブアドレスマスクレジスタ 0 26.21.6 ISBA0 7 ビットスレーブアドレスレジスタ 0 26.21.7 IBCR1 I C バス制御レジスタ 1 26.21.1 SMR1 シリアルモードレジスタ 1 26.21.2 IBSR1 I2C バスステータスレジスタ 1 26.21.3 BGR1 ボーレートジェネレータレジスタ 1 26.21.8 SSR1 シリアルステータスレジスタ 1 26.21.4 RDR1 受信データレジスタ 1 26.21.5 TDR1 送信データレジスタ 1 26.21.5 ISMK1 7 ビットスレーブアドレスマスクレジスタ 1 26.21.6 ISBA1 7 ビットスレーブアドレスレジスタ 1 26.21.7 IBCR2 I2C バス制御レジスタ 2 26.21.1 SMR2 シリアルモードレジスタ 2 26.21.2 2 IBSR2 I C バスステータスレジスタ 2 26.21.3 BGR2 ボーレートジェネレータレジスタ 2 26.21.8 SSR2 シリアルステータスレジスタ 2 26.21.4 RDR2 受信データレジスタ 2 26.21.5 TDR2 送信データレジスタ 2 26.21.5 ISMK2 7 ビットスレーブアドレスマスクレジスタ 2 26.21.6 ISBA2 7 ビットスレーブアドレスレジスタ 2 2 FUJITSU SEMICONDUCTOR LIMITED 26.21.7 CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-1 I2C インタフェースのレジスタ一覧 (2 / 2) チャネル 6 CM71-10158-1 レジスタ略称 レジスタ名 2 IBCR6 I C バス制御レジスタ 6 参照先 26.21.1 SMR6 シリアルモードレジスタ 6 26.21.2 IBSR6 I2C バスステータスレジスタ 6 26.21.3 BGR6 ボーレートジェネレータレジスタ 6 26.21.8 SSR6 シリアルステータスレジスタ 6 26.21.4 RDR6 受信データレジスタ 6 26.21.5 TDR6 送信データレジスタ 6 26.21.5 ISMK6 7 ビットスレーブアドレスマスクレジスタ 6 26.21.6 ISBA6 7 ビットスレーブアドレスレジスタ 6 FUJITSU SEMICONDUCTOR LIMITED 26.21.7 809 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.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 810 SA5 SA4 SA3 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 26.21.1 I2C バス制御レジスタ (IBCR) I2C バス制御レジスタ (IBCR) は , マスタ / スレーブモード選択 , 反復スタート条件の 発生 , アクノリッジ許可 , 割込み許可設定 , バスエラー検出 , 割込みフラグを表示し ます。 ■ I2C バス制御レジスタ (IBCR) 図 26.21-1 に I2C バス制御レジスタ (IBCR) のビット構成を , 表 26.21-3 に各ビットの機 能を示します。 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 811 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 (1 / 4) ビット名 機能 • 本ビットに "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" であることを指しま す。 ( 注意事項 ) 812 MSS ビットが "1" に設定されていて MSS ビットを "0" に変更す る場合 , MSS ビット =1, INT ビット =1 のときに行ってくださ い。ACT ビットが "1" のときに MSS ビットに "0" を書き込むと INT ビットも "0" にクリアされます。 マスタ動作中 , MSS ビットに "0" を書き込んでも ACT ビットが "1" の間は "1" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 (2 / 4) ビット名 機能 このビットは , 読出しと書込みで意味が異なります。 読出し 書込み 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 813 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 (3 / 4) ビット名 機能 • 本ビットに "1" を設定するとアクノリッジタイミングで "L" を出力します。 • ACT=1 のときに本ビットを変更する場合 , INT ビットが "1" のときに行って ACKE: ください。 bit13 アクノリッジ 許可 本ビットは以下の条件では無効となります。 ビット • 予約アドレス以外のアドレスフィールドに対するアクノリッジ(自動生成) • データ送信時 (RSA=0, TRX=1, FBT=0) • 本ビットはアクノリッジ前か後のどちらに割込み (INT=1) を発生させ , I2C バスをウェイトさせるかを選択するビットです。 WSEL: bit12 ウェイト 選択ビット • WSEL ビットは以下の条件では無効になります。 • 第一バイト * に対する割込み発生時 (INT=1) • 予約アドレス検出時 (FBT=1, RSA=1) *: 第一バイト:( 反復 ) スタート条件後のデータを指します。 CNDE: bit11 条件検出 割込み許可 ビット マスタモードまたはスレーブモード時 (ACT=1), ストップ条件または反復ス タート条件が検出された場合 , 割込みの発生を許可するビットです。IBSR レ ジスタの RSC または SPC ビットが "1" で本ビットが "1" のときに割込みが発 生します。 INTE: bit10 割込み許可 ビット マスタモードまたはスレーブモード時 , データ送受信およびバスエラーに対す る割込み (INT=1) を許可するビットです。 本ビットは I2C バス上でエラーを検出したことを示します。 BER ビットのセット条件: • 第一バイト * 転送中にスタート条件またはストップ条件を検出 • 第二バイト以降 , データの 2 ビット∼ 9( アクノリッジ ) ビット目で ( 反 復 ) スタート条件またはストップ条件を検出 bit9 BER: バスエラー 検出ビット BER ビットのリセット条件: • BER=1 のときに INT ビットへ "0" 書込みした場合 • I2C インタフェースの禁止 (EN=0) の場合 *: 第一バイト:( 反復 ) スタート条件後のデータを指します。 ( 注意事項 ) 割込みフラグ (INT ビット ) が "1" になったときにこのビットを 確認し , "1" になっていると正常に送受信ができていませんので 再送などの処理を行ってください。 814 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.21 表 26.21-3 I2C バス制御レジスタ (IBCR) の各ビットの機能説明 (4 / 4) ビット名 bit8 機能 本ビットはマスタモード , スレーブモード時 , データ送受信の 8 ビット , 9 ビット (ACK) 後 , もしくはバスエラー時にこのフラグを "1" にセットします。 バスエラー時以外は , INT ビットが "1" になると SCL を "L" にし , INT ビット が "0" になると SCL の "L" の状態を解除します。 INT ビットのセット条件: < 8 ビット目> • 第一バイトで予約アドレスを検出した場合 • WSEL が "1", 第二バイト以降でアービトレーションロストを検出した場 合 • WSEL が "1", マスタ動作中 , 第二バイト以降で TDRE ビットが "1" の場合 • WSELが"1", スレーブ動作中, 第二バイト以降でTDREビットが"1"の場合 • WSELが"1", スレーブ送信中, 第二バイト以降でTDREビットが"1"の場合 < 9 ビット目> • 第一バイトでアービトレーションロストを検出した場合 • ストップ条件出力設定 ( マスタ動作中の MSS ビットへの "0" 書込み ) 時 以外に NACK を受信した場合 • 第一バイトで予約アドレスを検出せずにマスタモードまたはスレーブ モードの送信方向 (TRX=1) で TDRE ビットが "1" の場合 • 第一バイトで予約アドレスを検出せずにマスタモードまたはスレーブ INT: モードの受信方向 (TRX=0) で TDRE ビットが "1" の場合 割込み • WSEL=0 設定時 , 第二バイト以降でアービトレーションロストを検出し フラグビット た場合 • WSEL=0 設定時 , マスタモード動作中に第二バイト以降で TDRE ビット が "1" の場合 • WSEL=0 設定時 , スレーブ送信中に第二バイト以降で TDRE ビットが "1" の場合 • WSEL=0 設定時 , スレーブ受信の場合。ただし , 予約アドレスを検出した 第一バイトでのスレーブ受信では9ビット目では割込みは発生しません。 <その他> バスエラー検出 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" が 読み出されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 815 第 26 章 マルチファンクションシリアル インタフェース 26.21 26.21.2 MB91665 シリーズ シリアルモードレジスタ (SMR) シリアルモードレジスタ (SMR) は , 動作モードの設定 , 送受信割込みの許可 / 禁止 の設定を行います。 ■ シリアルモードレジスタ (SMR) 図 26.21-2 にシリアルモードレジスタ (SMR) のビット構成を , 表 26.21-4 に各ビットの 機能を示します。 図 26.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のレジスタおよび動作について説明します。 816 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.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" を設定してください。 <注意事項> 動作モードを変更すると , 同一チャネル内の以下のレジスタが初期化されるので動作モー ドは最初に設定してください。 • I2C バス制御レジスタ (IBCR) • I2C バスステータスレジスタ (IBSR) ただし , 16 ビット書込みで IBCR と SMR を同時に書き込んだとき , IBCR には書き込ん だ内容が反映されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 817 第 26 章 マルチファンクションシリアル インタフェース 26.21 26.21.3 MB91665 シリーズ I2C バスステータスレジスタ (IBSR) I2C バスステータスレジスタ (IBSR) は , ファーストバイト , 予約アドレス , 反復ス タート , アクノリッジ , データ方向 , アービトレーションロスト , ストップ条件 , I2C バス状態を検出したことを示します。 ■ I2C バスステータスレジスタ (IBSR) 図 26.21-3 に I2C バスステータスレジスタ (IBSR) のビット構成を , 表 26.21-5 に各ビッ トの機能を示します。 図 26.21-3 I2C バスステータスレジスタ (IBSR) のビット構成 bit15 ・・・・・・・・・・・・・・・・・・・ (SSR) bit8 bit7 bit6 bit5 R R R 0 1 マスタ スレーブ :リード/ライト可能 R :リードオンリ :初期値 818 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 CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.21 表 26.21-5 I2C バスステータスレジスタ (IBSR) の各ビットの機能説明 (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 RSA: 予約アドレス 検出ビット CM71-10158-1 は "1" を示します。 RSA ビットのリセット条件 (RSA=0) • ( 反復 ) スタート条件検出 • ストップ条件検出 • I2C インタフェースの禁止 (EN ビット =0) • バスエラー検出 (BER ビット =1) 第一バイトで RSA ビットが "1" になると , その一バイトの 8 ビット目 の SCL の立下りで , 割込みフラグ (INT) を "1" にして SCL を "L" にし ます。このとき , 受信データを読み出し , スレーブとして動作させる 場合には ACKE を "1" に設定し , 割込みフラグ (INT) を "0" にクリアし ます。その後 , TRX ビットが "0" であれば , スレーブとしてデータを 受信します。途中でデータを受信させない場合には ACKE ビットを "0" にします。それ以降 , データを受信しません。 ( 注意事項 ) データ転送中に ACKE を "0" にした場合には , ストップ 条件または反復スタート条件を検出するまで ACKE を "1" にすることは禁止です。 予約アドレス検出による割込み時 , スレーブ送信を確認 した場合 , ACKE=0 にしてください。 FUJITSU SEMICONDUCTOR LIMITED 819 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-5 I2C バスステータスレジスタ (IBSR) の各ビットの機能説明 (2 / 3) ビット名 bit4 bit3 820 機能 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) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.21 表 26.21-5 I2C バスステータスレジスタ (IBSR) の各ビットの機能説明 (3 / 3) ビット名 bit2 bit1 bit0 機能 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) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 821 第 26 章 マルチファンクションシリアル インタフェース 26.21 26.21.4 MB91665 シリーズ シリアルステータスレジスタ (SSR) シリアルステータスレジスタ (SSR) は , 送受信状態の確認を行います。 ■ シリアルステータスレジスタ (SSR) 図 26.21-4 にシリアルステータスレジスタ (SSR) のビット構成を , 表 26.21-6 に各ビッ トの機能を示します。 図 26.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)のクリア :初期値 822 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (1 / 2) ビット名 bit15 REC: 受信エラー フラグクリア ビット 機能 シリアルステータスレジスタ (SSR) の ORE ビットをクリアするビッ トです。 • "1" 書込みで , ORE ビットがクリアされます。 • "0" 書込みは , 影響しません。 リードした場合 , 常に "0" が読み出されます。 bit14 bit13, bit12 TSET: 送信バッファ エンプティ フラグセット ビット 未定義ビット シリアルステータスレジスタ (SSR) の TDRE ビットをセットする ビットです。 • "1" 書込みで , TDRE ビットがセットされます。 • "0" 書込みは , 影響しません。 リードした場合 , 常に "0" が読み出されます。 リードした場合 : 値は不定です。 ライトした場合 : 影響しません。 • 受信時にオーバランが発生すると "1" にセットされ , シリアルス bit11 ORE: オーバラン エラー フラグビット テータスレジスタ (SSR) の REC ビットに "1" を書き込むとクリアさ れます。 • OREビットとRIEビットが"1"の場合, 受信割込み要求を出力します。 • 本フラグがセットされた場合 , 受信データレジスタ (RDR) は無効で す。 • 受信データレジスタ (RDR) の状態を示すフラグです。 • RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , 受信割 込み要求を出力します。 bit10 RDRF: 受信データ フルフラグ ビット • RDR に受信データがロードされると "1" にセットされ , 受信データ レジスタ (RDR) を読み出すと "0" にクリアされます。 • データの 8 ビット目の SCL 立下りタイミングでセットされます。 • NACK 応答でもセットされます。 ( 注意事項 ) NACK 応答: アクノリッジ期間 , I2C バスの SDA が "H" であること を指します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 823 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 表 26.21-6 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (2 / 2) ビット名 機能 • 送信データレジスタ (TDR) の状態を示すフラグです。 • TIE ビットと TDRE ビットが "1" の場合 , 送信割込み要求を出力し ます。 • TDR に送信データを書き込むと "0" となり , TDR に有効なデータが bit9 TDRE: 送信データ エンプティ フラグビット 存在していることを示します。データが送信シフトレジスタにロー ドされて送信が開始されると "1" となり , TDR に有効なデータが存 在していないことを示します。 • シリアルステータスレジスタ (SSR) の TSET ビットに "1" を書き込 むとセットされます。アービトレーションロスト , バスエラーなど を検出した場合 , TDRE ビットを "1" にセットしたいときに使用し ます。 bit8 824 未定義ビット リードした場合 : 値は不定です。 ライトした場合 : 影響しません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 26.21.5 受信データレジスタ / 送信データレジスタ (RDR/TDR) 受信データレジスタと送信データレジスタは同一アドレスに配置されています。読 み出した場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレ ジスタとして機能します。 ■ 受信データレジスタ (RDR) 図 26.21-5 にシリアル受信レジスタ (RDR) のビット構成を示します。 図 26.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" にクリアされます。 * : ( 反復 ) スタート条件後のデータを指します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 825 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ ■ 送信データレジスタ (TDR) 図 26.21-6 に送信データレジスタのビット構成を示します。 図 26.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" 受信 ) • データエンプティフラグ (SSR:TDRE) が "0" のときは送信データレジスタ (TDR) に 送信データを書き込むことはできません。 <注意事項> 送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読出し専用のレジ スタです。2 つのレジスタは同一アドレスに配置されているため , 書込み値と読出し値が 異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW) 系命令は 使用できません。 826 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 7 ビットスレーブアドレスマスクレジスタ (ISMK) 26.21.6 7 ビットスレーブアドレスマスクレジスタ (ISMK) は , スレーブアドレスの各ビット の比較をするか設定するレジスタです。 ■ 7 ビットスレーブアドレスマスクレジスタ (ISMK) 図 26.21-7 に 7 ビットスレーブアドレスレジスタ (ISMK) のビット構成を , 表 26.21-7 に 各ビットの機能を示します。 図 26.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インタフェース許可ビット 禁止 許可 :初期値 表 26.21-7 7 ビットスレーブマスクレジスタ (ISMK) の各ビットの機能説明 ビット名 bit15 bit14 ∼ bit8 機能 EN: I2C インタ フェース 許可ビット I2C インタフェースの動作を許可 / 禁止するビットです。 "0" に設定した場合:I2C インタフェースは動作禁止状態になります。 "1" に設定した場合:I2C インタフェースが動作可能となります。 ( 注意事項 ) IBSR レジスタの BER ビットが "1" にセットされても , 本ビットは "0" にクリアされません。 本ビットが "0" のときにボーレートジェネレータを設定 してください。 本ビットが "0" のときに 7 ビットスレーブアドレスおよ び 7 ビットスレーブマスクレジスタを設定してくださ い。 送信中に EN ビットを "0" にすると I2C バスの SDA/ SCL にパルスが発生することがあります。 SM6 ∼ SM0: スレーブ アドレス マスクビット 7 ビットスレーブアドレスと受信したアドレスに対し , 比較対象外に するかどうかを設定するビットです。 "1" を設定したビット:比較する "0" を設定したビット:一致したものとして処理する ( 注意事項 ) EN ビットが "0" のときに本レジスタを設定してくださ い。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 827 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ 7 ビットスレーブアドレスレジスタ (ISBA) 26.21.7 7 ビットスレーブアドレスレジスタ (ISBA) は , スレーブアドレスを設定するレジス タです。 ■ 7 ビットスレーブアドレスレジスタ (ISBA) 図 26.21-8 に 7 ビットスレーブアドレスレジスタ (ISBA) のビット構成を , 表 26.21-8 に 各ビットの機能を示します。 図 26.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 :リード/ライト可能 :初期値 表 26.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" のときに 設定してください。 828 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.21 MB91665 シリーズ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) 26.21.8 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) は , シリアルクロックの分周 比を設定します。 ■ ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成 図 26.21-9 にボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) のビット構成を示し ます。 図 26.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 (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の設定値が読み出す 初期値 -0000000B 00000000B 未定義ビット リード時,値は不定です。ライト時,影響しません ボーレートジェネレータレジスタはシリアルクロックの分周比を設定します。 BGR1 は上位ビット , BGR0 は下位ビットに対応し , カウントするリロード値の書込み , BGR1/BGR0 の設定値の読出しが可能です。 ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) にリロード値を書き込むとリロー ドカウンタはカウントを開始します。 <注意事項> • ボーレートジェネレータレジスタ 1, 0 (BGR1, BGR0) への書込みは , 16 ビットアクセ スで行ってください。 • ISMK レジスタの EN ビットが "0" のときにボーレートジェネレータレジスタの設定を 行ってください。 • マスタモード , スレーブモードに関係なくボーレートを設定してください。 • 動作モード 4(I2C モード ) では周辺クロック (PCLK) は 8 MHz 以上で使用し , 400kbps を超えるボーレートジェネレータの設定は禁止です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 829 第 26 章 マルチファンクションシリアル インタフェース 26.22 26.22 MB91665 シリーズ I2C インタフェースの割込み I2C インタフェースの割込みは , 次に示す要因で割込み要求を発生させることができ ます。 • 第一バイト送受信後 / データ送受信後 • ストップ条件 • 反復スタート条件 ■ I2C インタフェースの割込み I2C インタフェースの割込み制御ビットと割込み要因は表 26.22-1 のようになっていま す。 表 26.22-1 I2C インタフェースの割込み制御ビットと割込み要因 (1 / 2) 割込み の種類 割込み要求 フラグ フラグ レジスタ ビット 割込み要因 割込み要因 許可ビット 割込み要求 フラグのクリア 第一バイト送受信後 *1 データ送受信後 *1 割込みフラグビット (IBCR:INT) への "0" 書込み バスエラー検出 INT IBCR ステー タス SPC IBSR アービトレーションロ スト検出 IBCR:INTE 予約アドレス検出 割込みフラグビット (IBCR:INT) へ "0" 書込み ストップ条件 ストップ条件検出ビット (IBSR:SPC) への "0" 書込み IBCR:CNDE RSC IBSR RDRF SSR ORE 830 予約アドレス受信後 データ受信後 受信 SSR 反復スタート検出フラグビット (IBSR:RSC) への "0" 書込み 反復スタート条件 オーバーランエラー 受信データ (RDR) の読み出し SMR:RIE 受信エラーフラグビット (SSR:REC) への "1" 書込み FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 26 章 マルチファンクションシリアル インタフェース 26.22 表 26.22-1 I2C インタフェースの割込み制御ビットと割込み要因 (2 / 2) 割込み の種類 割込み要求 フラグ フラグ レジスタ ビット 割込み要因 割込み要因 許可ビット 割込み要求 フラグのクリア 送信レジスタが エンプティ 送信 TDRE SSR 送信バッファエンプ SMR:TIE 送信データ (TDR) への書込み *2 ティフラグセットビッ ト (SSR:TSET) への "1" 書込み *1 : 正常なデータを送受信できます。TDRE が "0" の場合 , 割込みは発生しません。これは DMA 転送 をサポートするためです。受信で DMA 転送を行う場合は , 1Byte 受信ごとに送信バッファに書込 みを行い TDRE を 0 にする必要があるため , DMA の別 ch で TDR にダミーライトを行ってくださ い。受信 / 送信 / ステータス割込みの割込みベクタが別々になっている I2C の ch.1 と ch.2 での DMA 転送を推奨します。 データ送受信時に INT フラグを発生させたい場合には , INT フラグがセットされるタイミングより 前に TDRE ビットが "1" である必要があります。 *2 : TDRE ビットが "0" になってから TIE ビットを "1" にしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 831 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ I2C インタフェース通信の動作 26.22.1 I2C インタフェースは , 2 本の双方向バスライン , シリアルデータライン (SDA) およ びシリアルクロックライン (SCL) を使用して通信を行います。 ■ I2C バススタート条件 I2C バスの起動条件を以下に示します。 図 26.22-1 スタート条件 SDA SCL スタート条件 ■ I2C バスストップ条件 I2C バスのストップ条件を以下に示します。 図 26.22-2 ストップ条件 SDA SCL ストップ条件 ■ I2C バス反復スタート条件 I2C バスの反復スタート条件を以下に示します。 図 26.22-3 反復スタート条件 SDA SCL ACK * * : ACK:アクノリッジ 832 反復スタート条件 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ マスタモード 26.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 バスは通信中であること を示します ( 図 26.22-4 を参照 )。 図 26.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 833 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ ■ スレーブアドレス出力 スタート条件を出力すると TDR レジスタに設定されたデータを bit7 からアドレスとし て出力します。bit0 はデータ方向ビット (R/W) として使用され , データ方向ビット (R/ W) が "0" のとき , データはライト方向 ( マスタ→スレーブ ) を示します。TDR レジス タへのアドレス設定は , MSS=1 または SCC=1 を書く前に行ってください。 アドレスおよびデータ方向の出力タイミングについて図 26.22-5 に示します。 図 26.22-5 アドレスおよびデータ方向 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レジスタにアドレスをセットしてください。 834 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ ■ 第一バイト送信によるアクノリッジ受信 データ方向ビット (R/W) を出力すると , I2C インタフェースはスレーブからのアクノ リッジを受信します。 表 26.22-2 アクノリッジ受信後の動作 (RSA ビット =0) アクノリッジ受信直後の動作 データ方向 ビット (R/W) 0 1 アクノリッジが ACK TDRE ビットが "1" の場合 , INT ビットを "1" にしてウェイト。TDRE ビットが "0" の場合 , INT ビットは "0" のままでウェイトなし アクノリッジが NACK INT ビットを "1" にしてウェイト • 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" にクリアされます。 図 26.22-6 アクノリッジ (RSA=0, ACK 応答の場合 ) Data INTビットにより"L" SCL SDA R/W ACK "0"ライト INTビット RACKビット FBTビット TDRレジスタへライト TDREビット CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 835 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ アドレスに対するウェイトは • RSA ビットが "0" の場合 , アクノリッジ受信後 • RSA ビットが "1" の場合 , アクノリッジ受信前 になります。WSEL の設定には依存しません。 図 26.22-7 アクノリッジ (RSA=0, NACK 応答の場合 ) INTビットにより"L" SCL SDA R/W NACK "0"ライト ストップ条件 INTビット MSSビット RACKビット FBTビット 図 26.22-8 アクノリッジ (RSA=1, ACK 応答の場合 ) INTビットにより"L" Data SCL SDA R/W ACK "0"ライト INTビット RACKビット FBTビット RSAビット RDRレジスタの読出し RDRFビット 836 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 図 26.22-9 アクノリッジ (RSA=1, NACK 応答の場合 ) INTビットにより"L" SCL SDA R/W NACK "0"ライト ストップ条件 INTビット MSSビット RACKビット FBTビット RSAビット RDRレジスタの読出し RDRFビット ■ マスタによるデータ送信 データ方向ビット (R/W) が "0" の場合 , データはマスタから送信します。1 バイト送信 ごとにスレーブから ACK または NACK の応答があります。 WSEL ビットの設定によってウェイトの発生する場所が以下のようになります。 表 26.22-3 マスタデータ送信時の WSEL ビット WSEL ビット 動作 0 第二バイト以降 , TDRE ビットが "1" またはアービトレーションロスト検出でアク ノリッジ後 , 割込みフラグ (INT) を "1", SCL を "L" にしてウェイト状態にします。 1 第二バイト以降 , TDRE ビットが "1" またはアービトレーションロスト検出でマス タが 1 バイトのデータを送信後 , 割込みフラグ (INT) を "1", SCL を "L" にしてウェ イト状態にします。 ただし , ストップ条件設定 (MSS=0, ACT=1) 時以外に NACK を受信した場合 , WSEL の 設定に依存せずにアクノリッジ後に割込みフラグ (INT) をセットします。 スレーブへデータを送信する場合の手順の一例を以下に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 837 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ ● 予約アドレス以外への送信の場合 ① スレーブアドレス ( データ方向ビットも含む ) を 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" を設定し , ストップ条件または反復ス タート条件を発生させます。 ● 予約アドレスへの送信の場合 ① スレーブアドレスとして予約アドレスを 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" を設定し , ストップ条件または反復ス タート条件を発生させます。 <注意事項> • 送受信中に IBCR レジスタを変更する場合 , 割込みフラグ (INT) が "1" のときに変更し てください。 • WSEL ビットを変更した場合 , 次のデータの割込みフラグ (INT) の発生条件に使用され ます。 • データ送信中で TDRE が "1" のときに TDR レジスタへ送信データを書き込み , ACK 応 答を検出すると割込みフラグ (INT) は "1" にならずにその書き込まれたデータが送信さ れます。 • データ受信中に TDRE が "1" のときに TDR レジスタへ送信データを書き込み , ACK 応 答した場合 , 割込みフラグ (INT) は "1" にならずに RDRF のみ "1" になります。 838 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 図 26.22-10 マスタの割込み 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" 図 26.22-11 マスタ送信の割込み 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 839 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 図 26.22-12 マスタ送信の割込み 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" 図 26.22-13 マスタ送信の割込み 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" 840 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 図 26.22-14 マスタ送信の割込み 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" 図 26.22-15 マスタの割込み 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 841 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ ■ マスタによるデータ受信 データ方向ビット (R/W) が "1" の場合 , スレーブから送信されたデータを受信します。 マスタは TDRE ビットが "1" であれば 1 バイト受信ごとにウェイトを発生 (INT=1, RDRF=1) し , WSEL ビットに従って IBCR レジスタの ACKE ビットの設定で ACK また は NACK 応答します。TDRE ビットが "0" であれば , IBCR レジスタの ACKE ビットの 設定で ACK 応答であればウェイトは発生せず (INT=0) に次のデータを受信し , NACK 応答であればウェイトが発生します (INT=1) 。 割込みによるウェイトは以下を参照してください。 表 26.22-4 マスタデータ受信時の WSEL ビット WSEL ビット 動作 0 第二バイト以降 , TDRE ビットが "1" でアクノリッジ後 , 割込みフラグ (INT) を "1", SCL を "L" にしてウェイト状態にします。 1 第二バイト以降 , TDRE ビットが "1" でマスタが 1 バイトのデータを受信後 , 割込 みフラグ (INT) を "1", SCL を "L" にしてウェイト状態にします。 スレーブからデータを受信する場合の手順の一例を以下に示します。 ① スレーブアドレス ( データ方向ビットも含む ) を TDR レジスタにセットし , MSS ビットに "1" を書きます。 ② スレーブアドレス送信後に ACK を受信し , 割込みフラグ (INT) が "1" になります。 ③ WSEL ビット更新とともに割込みフラグビット (INT) に "0" を書き込み , I2C バス のウェイトを解除します。 ④ 1 バイト受信後に WSEL=0 の場合にはアクノリッジ送信後 , WSEL=1 の場合には 1 バイト受信直後 , 割込みフラグを "1" にして I2C バスをウェイトします。所定 のデータ数を受信するまで②∼④を繰り返します。 ⑤ 最終データ受信後 , NACK を出力し , MSS ビットに "0" または SCC ビットに "1" を設定し , ストップ条件または反復スタート条件を発生させます。 <注意事項> • 7 ビットスレーブアドレスの検出を許可しているとき (ISBA:SAEN=1) に , マスタモー ド時に 7 ビットスレーブアドレスを指定することは禁止です。 • TDRE が "0" のとき , オーバランエラーが発生しても ACKE ビットの設定に従ってアク ノリッジを出力し , 次の処理を行います。 • 送受信中に IBCR レジスタを変更する場合 , 割込みフラグ (INT) が "1" のときに変更し てください。 • マスタ受信時 , TDR レジスタにダミーデータを書き込み , 割込みフラグ (INT) が "1" に なるタイミングで TDRE ビットが "0" の場合 , 割込みフラグ (INT) は "0" のままで次の データを受信します。 842 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 図 26.22-16 マスタ受信の割込み 1 (WSEL=0, RSA=0) S スレーブアドレス R ACK Data ACK △ Data ACK △ ① Data P or Sr NACK △ ② △▲ ③ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレス送信+方向ビット送信+アクノリッジ受信により割込み発生 INT=0 書込みにより割込みが"0"にクリア ② 1バイト受信+アクノリッジ送信により割込み発生 受信データを読み出した後, ACKE=0に設定し, INT=0書込み ③ 1バイト受信+アクノリッジ送信したことにより割込み発生 MSS=0またはMSS=1, SCC=1を設定 (注意事項) 割込みフラグ(INT)発生時, TDREビットは"1" 図 26.22-17 マスタ受信の割込み 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" ■ アービトレーションロスト マスタのデータがほかのマスタからのデータと衝突し , 送信したデータと異なるデー タを受信した場合 , アービトレーションロストと判断して 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 843 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ ■ マスタモードのウェイト BB ビットが "1" のときに MSS ビットに "1" を設定するとスレーブモードとして動作し ていなければ BB ビットが "1" の間 , マスタモードをウェイトし , BB ビットが "0" に なってからスタート条件を送信します。マスタモードがウェイト中かどうかは MSS ビットと ACT ビットで判断できます (MSS=1, ACT=0 であればウェイト状態 ) 。MSS ビットに "1" を設定後 , スレーブモードとして動作する場合 , AL ビットを "1", MSS ビッ トを "0", ACT ビットを "1" にします。 844 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 26.22.3 スレーブモード スレーブモードは ( 反復 ) スタート条件を検出し , ISBA レジスタと ISMK レジスタ との組合せと受信したアドレスが一致すると ACK 応答し , スレーブモードとして動 作します。 ■ スレーブアドレス一致検出 ( 反復 ) スタート条件を検出すると次のデータの 7 ビットをアドレスとして受信します。 ISMK レジスタで "1" がセットされているビットについて ISBA レジスタと受信アドレ スの各ビットを比較し , 一致した場合に ACK を出力します。 表 26.22-5 スレーブアドレスに対するアクノリッジ出力直後の動作 アクノリッジ直後の動作 データ 方向ビット (R/W) 0 1 アクノリッジが ACK アクノリッジが NACK TDRE ビットが "1" の場合 , INT ビットを "1" に してウェイト。TDRE ビットが "0" の場合 , INT ビットは "0" のままでウェイトなし INT ビットは "0" のままでウェイト なし • 予約アドレス検出 一バイト目で予約アドレス ("0000XXXXB" または "1111XXXXB") と一致した場合 , 8 ビット目のデータ受信後 , INT ビットを "1" にして I2C バスをウェイトします。こ のとき受信データを読み出し , スレーブとして動作させたい場合には ACKE を "1" に セットして INT ビットをクリアします。その後 , スレーブとして動作します。ACKE を "0" にした場合には , アクノリッジ出力後 , スレーブとして動作を行いません。 ■ データ方向ビット アドレス受信後 , データの送受信を決めるデータ方向ビットを受信します。このビット が "0" のときにマスタからの送信を示し , スレーブとしてはデータを受信します。 ■ スレーブによる受信 スレーブアドレスが一致しデータ方向ビットが "0" のとき , スレーブモードによる受信 を示します。スレーブモードによる受信の手順の一例は以下のようになります。 ① ACK 送信後 , 割込みフラグ (INT) を "1" にして I2C バスをウェイトします。MSS ビット , ACT ビットと FBT ビットでスレーブアドレス一致による割込みと判断 し , ACKE ビットに "1", 割込みフラグ (INT) に "0" を書いて I2C バスのウェイト を解除します ( 表 26.22-5 を参照 ) 。 ② 1 バイトのデータを受信後 , WSEL の設定に従って割込みフラグ (INT) を "1" に して I2C バスをウェイトします。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 845 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ ③ RDR レジスタから受信したデータを読み出し , ACKE ビットを設定後 , 割込みフ ラグ (INT) に "0" を書いて I2C バスのウェイトを解除します。 ④ ストップ条件または反復スタート条件を検出するまで② , ③を繰り返します。 図 26.22-18 スレーブ受信の割込み 1(WSEL=0, RSA=0) S スレーブアドレス W ACK Data ACK △ ① Data ACK △ ② Data NACK △ ② P or Sr △▲ ③ △:INTE=1による割込み ▲:CNDE=1による割込み ① スレーブアドレスが一致したのでACK出力し, 割込み発生 ACKE=1, INT=0書込み ② 1バイト受信+ACK応答により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み ③ 1バイト受信+NACK応答により割込み発生 受信データを受信バッファから読み出した後, INT=0書込み 図 26.22-19 スレーブ受信の割込み 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書込み 図 26.22-20 スレーブ受信の割込み 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書込み 846 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.22 MB91665 シリーズ 図 26.22-21 スレーブ受信の割込み 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" のとき , スレーブによる送信を示 します。WSEL の設定により , 1 バイト送信後またはアクノリッジ応答後に割込みフラ グ (INT) を "1" にしてウェイトを発生します ( 表 26.22-5 を参照 ) 。 RACK ビットによってマスタから出力されたアクノリッジを確認することができ , マ スタから NACK 応答時 , マスタが正しく受信できなかったか , データ受信の終了を示 します。WSEL=1 のときに NACK を検出した場合 , 割込みが発生してウェイトします。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 847 第 26 章 マルチファンクションシリアル インタフェース 26.22 26.22.4 MB91665 シリーズ バスエラー I2C バス上でデータの送受信中にストップ条件 , ( 反復 ) スタート条件を検出すると バスエラーとして取り扱います。 ■ バスエラー発生条件 バスエラーは以下の条件で BER ビットを "1" にします。 • 第一バイト転送中に ( 反復 ) スタート条件またはストップ条件を検出 • データの 2 ビット∼ 9( アクノリッジ ) ビット目で ( 反復 ) スタート条件またはストッ プ条件を検出 ■ バスエラー動作 送受信による割込みフラグ (INT) が "1" になったときに BER ビットを確認し , BER ビッ トが "1" の場合はエラー処理を行ってください。BER ビットは INT ビットに "0" を書 くことによってクリアされます。 バスエラーによって INT ビットは "1" にセットされますが , I2C バスの SCL を "L" にし てウェイト状態にはなりません。 848 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.23 MB91665 シリーズ 26.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" に設定するとリロードカウンタは停止します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 849 第 26 章 マルチファンクションシリアル インタフェース 26.23 MB91665 シリーズ ■ 各周辺クロック (PCLK) 周波数に対するリロード値とボーレート 表 26.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) にリロード値を書き込むと , リ ロードカウンタはカウントを開始します。 850 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 26 章 マルチファンクションシリアル インタフェース 26.24 MB91665 シリーズ 26.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 時 ) まで送信された場合 , 図 26.24-1 のように割込 みフラグ (INT) が”1”となります。DMA 転送中に割込みフラグ (INT) が”1”にな ると , ソフトで”0”クリアしない限り , DMA 転送が継続できません。( マスタ送信 , スレーブ送信 , マスタ受信 , スレーブ受信共 ) 図 26.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 ビット ) を可 能な限り小さい値にする。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 851 第 26 章 マルチファンクションシリアル インタフェース 26.24 MB91665 シリーズ • 送信データエンプティフラグ (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" ライト ) を行います。 852 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 27 章 USB クロック生成部 USB クロック生成部の機能と動作について説明し ます。 27.1 概要 27.2 構成 27.3 レジスタ 27.4 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 853 第 27 章 USB クロック生成部 27.1 MB91665 シリーズ 27.1 概要 USB クロックとは , USB デバイスを動作させるために使用するクロックの生成元になるク ロックです。 ■ 概要 USB クロック生成部は , 次の機能を持ちます。 • USB クロックの出力許可 / 停止の設定 • PLL マクロ発振クロックの分周 • USB クロックの選択 • スタンバイモード ( メインタイマモード , 時計モードまたはストップモード ) 時の USB クロックの停止 854 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 27 章 USB クロック生成部 27.2 MB91665 シリーズ 27.2 構成 USB クロック生成部の構成を示します。 ■ USB クロック生成部のブロックダイヤグラム USB クロック生成部のブロックダイヤグラムを図 27.2-1 に示します。 図 27.2-1 USB クロック生成部のブロックダイヤグラム メインクロック PLL マクロ発振クロック USB クロック PLL マクロ発振クロック分周器 ( 非分周 /2 分周 ) UPDS UCSEL UCEN スタンバイモード ( メインタイマモード , 時計モードまたはストップモード ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 855 第 27 章 USB クロック生成部 27.3 MB91665 シリーズ 27.3 レジスタ USB クロック生成部で使用するレジスタの構成と機能について説明します。 ■ USB クロック生成部のレジスタ一覧 USB クロック生成部のレジスタ一覧を表 27.3-1 に示します。 表 27.3-1 USB クロック生成部のレジスタ一覧 レジスタ略称 レジスタ名 UCCR USB クロック設定レジスタ 856 FUJITSU SEMICONDUCTOR LIMITED 参照先 27.3.1 CM71-10158-1 第 27 章 USB クロック生成部 27.3 MB91665 シリーズ USB クロック設定レジスタ (UCCR) 27.3.1 USB クロックを制御するレジスタです。 USB クロック設定レジスタ (UCCR) のビット構成を図 27.3-1 に示します。 図 27.3-1 USB クロック設定レジスタ (UCCR) のビット構成 bit 7 属性 6 5 4 3 2 1 0 UCSEL UCEN 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W UPDS R/W R/W R/W X X X X X 0 0 1 初期値 R/W:リード / ライト可能 X:不定値 [bit7 ∼ bit3]:予約ビット 書込み時 "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit2]:UPDS (PLL マクロ発振クロック分周選択ビット ) PLL マクロ発振クロックの非分周 / 分周を選択します。 書込み値 説明 0 非分周に設定します。 1 2 分周に設定します。 < 注意事項 > • USB クロックの出力が有効 (UCEN=1) のときは , このビットは書き換えできません。 • このビットは , UCEN ビットと同時に書き換えないでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 857 第 27 章 USB クロック生成部 27.3 MB91665 シリーズ [bit1]:UCSEL (USB クロック選択ビット ) USB クロックがメインクロックか PLL マクロ発振クロックかを選択します。 書込み値 説明 0 メインクロックです。 1 PLL マクロ発振クロックです。 < 注意事項 > • USB クロックの出力が有効 (UCEN=1) のときは , このビットは書き換えできません。 • このビットは , UCEN ビットと同時に書き換えないでください。 [bit0]:UCEN (USB クロック出力許可ビット ) USB クロック出力を制御します。 書込み値 説明 0 USB クロック出力を許可しません。 1 USB クロック出力を許可します。 < 注意事項 > このビットは , UPDS ビットまたは UCSEL ビットと同時に書き換えないでください。 858 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 27 章 USB クロック生成部 27.4 MB91665 シリーズ 27.4 動作説明と設定手順例 USB クロックの生成制御動作について説明します。また , 設定するための手順例も示します。 ■ 概要 USB クロックの生成制御部では , 次の操作が必要です。 • レジスタ設定 • メインクロック選択 • PLL マクロ発振クロック選択 ■ レジスタ設定 USBクロック出力を有効にするときは, 次の順番でUSBクロック設定レジスタ (UCCR) を設定してください。 1. USB クロック出力を無効 (UCEN=0) にする 2. UPDS ビット (PLL マクロ発振クロック分周選択ビット ) と UCSEL ビット (USB ク ロック選択ビット ) を設定する 3. USB クロック出力を有効 (UCEN=1) にする < 注意事項 > • 手順 1 と 2, 2 と 3 は , 同時に行わないでください。 • この設定は , USB 許可レジスタ (USBEN) の USBEN ビットが "0" のときに行ってくだ さい。 ■ メインクロック選択 UCSEL ビットに "0" を書き込むと , USB クロックにはメインクロックが選択されます。 メインクロックを選択するときは , メインクロックが 48MHz で発振しているときにし てください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 859 第 27 章 USB クロック生成部 27.4 MB91665 シリーズ ■ PLL マクロ発振クロック選択 UCSEL ビットに "1" を書き込むと , USB クロックには PLL マクロ発振クロックが選択 されます。PLL マクロ発振クロックを選択するときは , PLL マクロ発振クロックが 96MHz のときにしてください。PLL マクロ発振クロック =96MHz のときは , PLL マク ロ発振クロック 2 分周 (UPDS=1) に設定してください。これらの関係を表 27.4-1 に示 します。 表 27.4-1 USB クロック選択と UPDS/UCSEL ビットの関係 メインクロック 48MHz 使用時 UPDS UCSEL − 0 設定禁止 0 1 PLL マクロ発振クロック 96MHz 設定禁止 1 1 < 注意事項 > 860 • スタンバイモード (メインタイマモード,時計モードまたはストップモード) 時は, USB クロックは停止します。 • PLL マクロ発振クロックが 96MHz ∼ 100MHz のため UCSEL=1 かつ UPDS=0 は設定 禁止です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 28 章 DMA 転送要求 セレクタ DMA 転送要求セレクタの機能と動作について説明 します。 28.1 概要 28.2 構成 28.3 レジスタ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 861 第 28 章 DMA 転送要求 セレクタ 28.1 MB91665 シリーズ 28.1 概要 DMA 転送要求セレクタは DMA 転送要求として DREQ を使用する場合 , USB ファンクション / ホストからの DREQ を DMA コントローラ (DMAC) に伝えます。 ■ 概要 DMA 転送要求セレクタは , USB ファンクション / ホストからの DREQ を , DMA コント ローラ (DMAC) の該当するチャネルに伝えます。 862 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 28 章 DMA 転送要求 セレクタ 28.2 MB91665 シリーズ 28.2 構成 DMA 転送要求セレクタの構成を示します。 ■ DMA 転送要求セレクタのブロックダイヤグラム DMA 転送要求セレクタのブロックダイヤグラムを図 28.2-1 に示します。 図 28.2-1 DMA 転送要求セレクタのブロックダイヤグラム 予約 D M A C ch.0 E P 2S .D R Q D R E Q S E L0 予約 オンチップバス D M A C ch.1 E P 3S .D R Q D R E Q S E L1 予約 D M A C ch.2 予約 D R E Q S E L2 予約 D M A C ch.3 E P 1S .D R Q D R E Q S E L3 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 863 第 28 章 DMA 転送要求 セレクタ 28.3 MB91665 シリーズ 28.3 レジスタ DMA 転送要求セレクタで使用するレジスタの構成と機能について説明します。 ■ DMA 転送要求セレクタのレジスタ一覧 DMA 転送要求セレクタのレジスタ一覧を表 28.3-1 に示します。 表 28.3-1 DMA 転送要求セレクタのレジスタ一覧 レジスタ略称 レジスタ名 DREQSEL DREQ 選択レジスタ 864 FUJITSU SEMICONDUCTOR LIMITED 参照先 28.3.1 CM71-10158-1 第 28 章 DMA 転送要求 セレクタ 28.3 MB91665 シリーズ DREQ 選択レジスタ (DREQSEL) 28.3.1 DREQ を選択するレジスタです。 DREQ 選択レジスタ (DREQSEL) のビット構成を図 28.3-1 に示します。 図 28.3-1 DREQ 選択レジスタ (DREQSEL) のビット構成 bit 7 6 5 4 3 2 1 0 DREQSEL DREQSEL DREQSEL DREQSEL DREQSEL DREQSEL DREQSEL DREQSEL 7 6 5 4 3 2 1 0 属性 初期値 R/W R/W R/W R/W R/W R/W R/W R/W 0 0 1 1 1 0 1 1 R/W:リード / ライト可能 < 注意事項 > このレジスタは , 必ずバイトまたはハーフワードでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 865 第 28 章 DMA 転送要求 セレクタ 28.3 MB91665 シリーズ [bit7 ∼ bit0]:DREQSEL7 ∼ DREQSEL0 (DREQ 選択ビット ) DREQSEL7 ∼ DREQSEL0 のビット番号は , DMA コントローラ (DMAC) のチャネル番 号に対応します。チャネルごとに DREQ を設定します。 チャネル DREQ 選択ビット 0 DREQSEL0 1 DREQSEL1 2 DREQSEL2 3 DREQSEL3 4 DREQSEL4 5 DREQSEL5 6 DREQSEL6 7 DREQSEL7 書込み値 0 説明 予約 1 EP2S.DRQ (64 バイト ) ( インタラプト , バルク転送 ) 0 予約 1 EP3S.DRQ (64 バイト ) ( インタラプト , バルク転送 ) 0 予約 1 予約 0 予約 1 EP1S.DRQ (256 バイト ) ( インタラプト , バルク転送 ) 0 予約 1 予約 0 予約 1 予約 0 予約 1 予約 0 予約 1 予約 < 注意事項 > 予約値を書き込んだ場合は , "0" が出力されます。 866 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション USB ファンクションの機能と動作について説明し ます。 29.1 概要 29.2 構成 29.3 レジスタ 29.4 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 867 第 29 章 USB ファンクション 29.1 MB91665 シリーズ 29.1 概要 USB ファンクションは , USB (Universal Serial Bus) 通信プロトコルをサポートするインタ フェースです。転送スピードは Full Speed (12Mbps) に対応して動作します。 ■ 概要 USB ファンクションは USB 通信プロトコルに対応しています。基本的なプロトコル動 作 ( ハンドシェーク ) はハードウェアがサポートしているため , 通信データの処理だけ で USB 通信を実現できます。 USB ファンクションには , 次の特長があります。 • USB2.0 準拠 • Full Speed (12Mbps) をサポート • デバイスステータスは自動応答 • Bit Stripping, Bit Stuffing, CRC5, CRC16 の自動生成とチェック • データ同期ビットでトグルチェック • Get/SetDescriptor, SynchFrame コマンド以外のすべての標準コマンドに自動応答 (Get/SetDescriptor, SynchFrame コマンドは , クラス・ベンダーコマンドと同様の処理 が可能 ) • クラス・ベンダーコマンドはデータとして受信し , ファームによる応答が可能 • 最大 4 本のエンドポイントをサポート ( エンドポイント 0 はコントロール転送に固定 ) • 転送データバッファには , エンドポイントごとに 2 本のバッファを内蔵 ( エンドポイント 0 の場合は IN と OUT それぞれ専用に 1 本ずつ内蔵 ) • DMA による転送データの自動転送モードをサポート ( エンドポイント 0 のバッファ以外 ) < 注意事項 > 868 • USB ファンクションを使用する場合 , オンチップバスクロック (HCLK) は 13MHz 以上 で使用してください。 • USB2.0 準拠とするためには , USB 許可レジスタ (USBEN) の STALCLRCNT ビットを "1" に設定してください。MB91V650 では , STALCLRCNT ビットが存在しないため動 作を確認することはできません。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.1 MB91665 シリーズ ■ MB91V650 の制限事項について MB91V650 には , 表 29.1-1 のビットが存在しないため , 各ビットを "0" に設定したとき の機能となります。 表 29.1-1 MB91V650 機能制限一覧 レジスタ ビット名 機能 EP0 の STAL ビットクリア制御 STALCLRCNT ソフトクリア ="0" USB 許可 ハードクリア ="1" レジスタ エンドポイントのエンディアン選択 (USBEN) EPEDN リトルエンディアン ="0" ビックエンディアン ="1" UDC 制御 レジスタ (UDCC) STALCLREN CM71-10158-1 EP1 ∼ EP3 の STAL ビットクリア制御 ソフトクリア ="0" ハードクリア ="1" MB91F668/MB91F669 MB91V650 選択可能 ソフトクリア (STALCLRCNT=0) 選択可能 リトルエンディアン (EPEDN=0) 選択可能 ソフトクリア (STALCLREN=0) FUJITSU SEMICONDUCTOR LIMITED 869 第 29 章 USB ファンクション 29.2 MB91665 シリーズ 29.2 構成 USB ファンクションの構成を示します。 ■ USB ファンクションのブロックダイヤグラム USB ファンクションのブロックダイヤグラムを図 29.2-1 に示します。 図 29.2-1 USB ファンクションのブロックダイヤグラム オンチップバス エンドポイント 0 In バッファ エンドポイント 0 Out バッファ DMA 転送要求 割込み UDC インタ フェース USB クロック (48MHz) USB クロック生成部から UDC エンドポイント 1 バッファ エンドポイント 2 バッファ エンドポイント 3 バッファ UDP I/O UDM SUSP デバイスの ストップ信号 870 CPU インタフェース UDCC レジスタ UDCS レジスタ タイムスタンプ FUJITSU SEMICONDUCTOR LIMITED 割込み CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ 29.3 レジスタ USB ファンクションで使用するレジスタの構成と機能について説明します。 ■ USB ファンクションのレジスタ一覧 USB ファンクションのレジスタ一覧を表 29.3-1 に示します。 表 29.3-1 USB ファンクションのレジスタ一覧 CM71-10158-1 レジスタ略称 レジスタ名 UCCR USB クロック設定レジスタ USBSEL USB 選択レジスタ 参照先 27.3.1 USBEN USB 許可レジスタ 29.3.2 UDCC UDC 制御レジスタ 29.3.3 EP0C EP0 制御レジスタ 29.3.4 EP1C EP1 制御レジスタ 29.3.5 EP2C EP2 制御レジスタ 29.3.5 EP3C EP3 制御レジスタ 29.3.5 TMSP UDCS タイムスタンプレジスタ UDC ステータスレジスタ 29.3.6 29.3.7 UDCIE UDC 割込み許可レジスタ 29.3.8 EP0IS EP0I ステータスレジスタ 29.3.9 EP0OS EP0O ステータレジスタ 29.3.10 EP1S EP1 ステータスレジスタ 29.3.11 EP2S EP2 ステータスレジスタ 29.3.11 EP3S EP3 ステータスレジスタ 29.3.11 EP0DTH EP0 データレジスタ上位 29.3.12 EP0DTL EP0 データレジスタ下位 29.3.12 EP1DTH EP1 データレジスタ上位 29.3.12 EP1DTL EP1 データレジスタ下位 29.3.12 EP2DTH EP2 データレジスタ上位 29.3.12 EP2DTL EP2 データレジスタ下位 29.3.12 EP3DTH EP3 データレジスタ上位 29.3.12 EP3DTL EP3 データレジスタ下位 29.3.12 FUJITSU SEMICONDUCTOR LIMITED 29.3.1 871 第 29 章 USB ファンクション 29.3 MB91665 シリーズ ■ レジスタビット更新タイミングの UDCC.RST 依存性一覧 レジスタ UDCC.RST=1のときに更新しな UDCC いといけないレジスタビット EP0C PKS0 EP1C EPEN, TYPE, DIR, PKS1 EP2C EPEN, TYPE, DIR, PKS2 EP3C EPEN, TYPE, DIR, PKS3 UDCC.RST=1のときに初期化さ EP0IS れるレジスタビット EP0OS (UDCC.RST=0 のときに更新し EP1S てください。) EP2S BFINI, DRQI BFINI, DRQO, SPK BFINI, DRQ, SPK BFINI, DRQ, SPK EP3S BFINI, DRQ, SPK TMSP TMSP UDCS SUSP, SOF, BRST, WKUP, SETP, CONF UDCIE SUSPIE, SOFIE, BRSTIE, WKUPIE, CONFN, CONFIE UDCC.RST に影響されないレジ UDCC スタビット EP0C EP1C 872 ビット HCONX, RFBK, PWC RESUME, USTP STAL DMAE, NULE, STAL EP2C DMAE, NULE, STAL EP3C DMAE, NULE, STAL EP1DTH/L BFDT EP2DTH/L BFDT EP3DTH/L BFDT FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ USB 選択レジスタ (USBSEL) 29.3.1 USB を選択するレジスタです。 USB 選択レジスタ (USBSEL) のビット構成を図 29.3-1 に示します。 図 29.3-1 USB 選択レジスタ (USBSEL) のビット構成 bit 7 1 属性 初期値 0 予約 R/W USBSEL 0 0 R/W R/W:リード / ライト可能 < 注意事項 > このレジスタは必ず , バイトまたはハーフワードでアクセスしてください。 [bit7 ∼ bit1]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 常に "0" が読み出されます。 [bit0]:USBSEL (USB 選択ビット ) USB を選択します。 書込み値 CM71-10158-1 説明 0 USB ファンクション / ホストを使用します。 1 設定は禁止です。 FUJITSU SEMICONDUCTOR LIMITED 873 第 29 章 USB ファンクション 29.3 MB91665 シリーズ USB 許可レジスタ (USBEN) 29.3.2 USB の使用を許可するレジスタです。 USB 許可レジスタ (USBEN) のビット構成を図 29.3-2 に示します。 図 29.3-2 USB 許可レジスタ (USBEN) のビット構成 bit 7 3 属性 初期値 2 1 0 予約 R/W STALCLRCNT EPEDN USBEN R/W R/W R/W 0 0 0 0 R/W:リード / ライト可能 < 注意事項 > このレジスタは必ず , バイトでアクセスしてください。 [bit7 ∼ bit3]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 常に "0" が読み出されます。 [bit2]:STALCLRCNT (STAL ビットクリア制御ビット ) EP0 制御レジスタ (EP0C) の STAL ビットをクリアする方法を選択します。本ビットで ソフトクリアまたはハードクリアの選択をします。 また , 本ビットで UDC 制御レジスタ (UDCC) のビット 3 の機能が切り替わります。 書込み値 説明 0 EP0 制御レジスタ (EP0C) の STAL ビットをソフトでクリアします。 UDC 制御レジスタ (UDCC) の bit3 は予約ビットです。 1 EP0 制御レジスタ (EP0C) の STAL ビットはハードで自動的にクリ アされます。 UDC 制御レジスタ (UDCC) の bit3 は STALCLREN ビットとして使 用できます。 < 注意事項 > このビットの設定はUSB許可レジスタ(USBEN)でUSBの動作を禁止している(USBEN=0) 状態で行ってください。USBEN ビットのセットと同時でも構いません。 874 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit1]:EPEDN ( エンドポイントエンディアン選択ビット ) エンドポイントのエンディアンを選択するビットです。データの配置は「29.3.12 EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL)」 を参照してください。 書込み値 説明 0 リトルエンディアン 1 ビックエンディアン < 注意事項 > このビットの設定はUSB許可レジスタ(USBEN)でUSBの動作を禁止している(USBEN=0) 状態で行ってください。USBEN ビットのセットと同時でも構いません。 [bit0]:USBEN (USB 許可ビット ) USB ファンクション / ホストの使用を許可します。 書込み値 説明 0 USB ファンクション / ホストの使用を禁止します。 1 USB ファンクション / ホストの使用を許可します。 < 注意事項 > • USB ファンクション / ホストを使用するときは , 必ずこのビットに "1" を書き込んでか ら使用してください。 • MB91V650 では , EPEDN ビットと STALCLRCNT ビットは存在しません。EPEDN=0, STALCLRCNT=0 設定となります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 875 第 29 章 USB ファンクション 29.3 MB91665 シリーズ UDC 制御レジスタ (UDCC) 29.3.3 UDC コア回路を制御するレジスタです。 UDC 制御レジスタ (UDCC) のビット構成を図 29.3-3 に示します。 図 29.3-3 UDC 制御レジスタ (UDCC) のビット構成 bit 属性 初期値 7 6 5 4 3 RST RESUM HCONX USTP STALCLREN 2 1 0 PWC R/W 予約 R/W RFBK R/W R/W R/W R/W R/W R/W 1 0 1 0 0 0 0 0 R/W:リード / ライト可能 [bit7]:RST (function ReSeT ビット ) USB ファンクションにチップのシステムリセット相当の個別リセットをかけます。ホ ストとケーブルで接続しているときに , このビットで USB ファンクションにリセット をかけます。初期値は "1" でリセット状態なため , "0" 書込みで解除を行ってください。 書込み値 説明 0 USB ファンクションのリセットを解除します。 1 USB ファンクションをリセットします。 < 注意事項 > このビットは , タイムスタンプレジスタ (TMSP) , UDC ステータスレジスタ (UDCS) , UDC 割込み許可レジスタ (UDCIE) の該当ビットを同時に初期化します。また , 各ステー タスレジスタ (EP0IS, EO0OS, EP1S ∼ EP3S) の BFINI ビットも同時に初期化します。初 期設定の後 , このビットをクリアしてから (BFINI ビットはクリアされません ), 使用するエンドポイントの BFINI ビットをクリアしてください。 876 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit6]:RESUM (RESUMe set ビット ) リモートウェイクアップ許可状態 ( ホ ス ト か ら SET_FEATURE コ マ ン ド で DEVICE_REMOTE_WAKEUP ビットが設定されている ) で , かつサスペンド状態のと き , このビットに "1" を書き込むと , リジュームの開始となります。リジュームを解除 するときは , このビットに "0" を書き込んでください。 書込み値 説明 0 USB デバイスからのリジューム開始指示を解除します。 1 USB デバイスからリジュームの開始指示を出します。 < 注意事項 > このビットには, USBデバイスがサスペンド状態でリモートウェイクアップ許可状態のと きのみ , "1" を書き込んでください。 [bit5]:HCONX (Host CONnection ビット ) ホストまたは HUB との接続を認識させます。 書込み値 説明 0 ホストまたは HUB と接続します。 1 ホストまたは HUB を切断します。 < 注意事項 > • 外付けプルアップ抵抗が ON 状態で , ホストまたは HUB から接続を認識された場合で も , このビットが "1" の間は USB バスのバスリセット , コマンドは無視されます。 • このビットの書き換えは , UDC 制御レジスタ (UDCC) の bit7 の RST が "1" のときに 行ってください。 [bit4]:USTP (Udc SToP ビット ) USB 動作部のクロックを停止させます。USB を動作させない場合に , このビットに "1" を書き込んで USB 動作部のクロックを停止させると , 消費電力を低減できます。 書込み値 CM71-10158-1 説明 0 通常モードにします。 1 USB 動作部のクロックを停止させます。 FUJITSU SEMICONDUCTOR LIMITED 877 第 29 章 USB ファンクション 29.3 MB91665 シリーズ < 注意事項 > • ストップモード時は , ストップモード状態に入る前に , このビットに "1" を書き込んで ください。ストップモードを解除するときは , UDC ステータスレジスタ (UDCS) の SUSP ビットに "0" を書き込んでから , このビットに "0" を書き込んでください。 • ストップモードにしない場合は , このビットのセットは , RST ビットに "1" を書き込ん だ後 , リセットが確実にかかるように Full Speed 時には 3 サイクル後に行ってくださ い。このビットと RST ビットのクリアは , 同時でもかまいません。 [bit3]:STALCLREN ( エンドポイント 1 ∼ 3 STAL ビットクリア選択ビット ) Clear Feature コマンドによるエンドポイント 1 からエンドポイント 3 の STAL ビットの クリア方法を選択するビットです。エンドポイント 1 からエンドポイント 3 に対し , Clear Feature コマンドによって指定されたエンドポイントの EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の STAL ビットを "0" にハードで自動的にクリアするかどうかを設定 します。EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の STAL ビットをクリアする方法を ソフトかハードかを選択するビットです。 書込み値 説明 0 EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の STAL ビットをソフト でクリアします。 1 EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の STAL ビットはハード で自動的にクリアされます。 < 注意事項 > • STALCLREN ビットは ,UDC 制御レジスタ (UDCC) の RST=1 のときに設定して USB 動作中に書き換えないようにしてください。 • USB 許可レジスタ (USBEN) の STALCLRCNT が "1" の場合のみ , STALCLREN は有 効になります。 • USB 許可レジスタ (USBEN) の STALCLRCNT が "0" の場合 , 予約ビット ( 必ず "0" 書 込み ) となります。 • MB91V650 では , STALCLREN ビットは存在しません。STALCLREN=0 設定となりま す。 [bit2]:予約ビット 878 書込み時 "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit1]:RFBK (Rate Feed BacK mode ビット ) USB デバイスのインタラプト転送時のデータトグルモードを指定します。 書込み値 説明 0 交代データトグルモードを選択します。 転送が問題なく完了したときにデータ PID をトグルします。 1 データトグルモードを選択します。 無条件にデータ PID をトグルします。 < 注意事項 > このビットの書き換えは , UDC 制御レジスタ (UDCC) の bit7 の RST が "1" のときに行っ てください。 [bit0]:PWC (PoWer Control ビット ) USB ファンクションの動作電源モード ( 自己電源またはバス電源 ) を指定します。こ の情報は , 標準コマンド GetStatus に反映されます。 書込み値 説明 0 動作電源をバス電源にします。 1 動作電源を自己電源にします。 < 注意事項 > このビットの書き換えは , UDC 制御レジスタ (UDCC) の bit7 の RST が "1" のときに行っ てください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 879 第 29 章 USB ファンクション 29.3 29.3.4 MB91665 シリーズ EP0 制御レジスタ (EP0C) エンドポイント 0 を制御するレジスタです。 EP0 制御レジスタ (EP0C) のビット構成を図 29.3-4 に示します。 図 29.3-4 EP0 制御レジスタ (EP0C) のビット構成 bit 15 14 未定義 属性 初期値 bit 属性 初期値 13 未定義 − X − X 7 6 未定義 12 11 未定義 − X 予約 − X 10 9 8 予約 STAL 予約 − 0 R/W − 0 − 0 0 0 予約 PKS0 − 0 R/W 1000000 R/W:リードライト可能 −:未定義 X:不定値 [bit15 ∼ bit12]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit11, bit10]:予約ビット 書込み時 "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit9]:STAL (STALl ep0 set ビット ) エンドポイント 0 を STALL 状態 (STALL 応答 ) に指定します。USB 許可レジスタ (USBEN) の STALCLRCNT ビットの設定値により , STAL ビットのクリア方法が異なり ます。 • USB 許可レジスタ (USBEN) の STALCLRCNT ビットが "0" の場合 エンドポイント 0 への STALL 応答を行ったあと , エンドポイント 0 で SETUP パ ケットを受信しても , 本ビットは "0" にクリアされません。本ビットをクリアする にはソフトで行う必要があります。本ビットのクリアタイミングは「29.4.3 STALL 応答と解除」の「■ エンドポイント 0 の STALL 応答 / 解除について」を参照して ください。 880 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ 書込み値 説明 0 STALL 状態を解除します。 1 STALL 状態 (STALL 応答 ) をセットします。 • USB 許可レジスタ (USBEN) の STALCLRCNT ビットが "1" の場合 本ビットはハードでクリアされます。エンドポイント 0 への STALL 応答を行った あと , エンドポイント 0 で SETUP パケットを受信すると , "0" にクリアされます。 本ビットのクリアタイミングは「29.4.3 STALL 応答と解除」の「■ エンドポイン ト 0 の STALL 応答 / 解除について」を参照してください。 書込み値 説明 0 無視されます。 1 STALL 状態 (STALL 応答 ) をセットします。 < 注意事項 > • USB 許可レジスタ (USBEN) の STALCLREN ビットが "0" の場合 , このビットが "1" の 間は , ホストに対して STALL 応答を続けます。このビットに "0" を書き込んだ後 , 正 常な SETUP パケットを受信したときに STALL 状態から復帰します。 • STALCLRCNTビットの設定値により, リードモディファイライト系命令で読み出され る値が異なります。 - STALCLRCNT=0 の場合 , そのときの値が読み出されます。 - STALCLRCNT=1 の場合 , "0" が読み出されます。 • MB91V650 の場合 , STALCLRCNT ビットは存在しませんので , STALCLRCNT=0 時の 動作となります。 [bit8, bit7]:予約ビット 書込み時 "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit6 ∼ bit0]:PKS0 (PacKet Size ep0 set ビット ) 1 パケットの最大転送バイト数を指定します。エンドポイント 0 で指定できるパケット の最大転送バイトは , IN/OUT 共通で 64 バイトです。 "08H" を書き込むと 8 バイト , "40H" を書き込むと 64 バイトの転送バイトになります。 < 注意事項 > • このビットは , UDC 制御レジスタ (UDCC) の RST ビットと EP0I/O ステータスレジス タ (EP0I/OS) の BFINI ビットが共に "1" のときに設定してください。USB 動作中は , 書き換えないでください。 • このビットには , "40H" 以上または "00H" は書き込まないでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 881 第 29 章 USB ファンクション 29.3 29.3.5 MB91665 シリーズ EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) エンドポイント 1 ∼エンドポイント 3 を制御するレジスタです。 EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) のビット構成を図 29.3-5 に示します。 図 29.3-5 EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) のビット構成 EP1 制御レジスタ (EP1C) bit 属性 初期値 bit 15 14 13 12 11 10 9 8 EPEN TYPE DIR DMAE NULE STAL PKS1 R/W R/W R/W R/W R/W R/W R/W 0 11 0 0 0 0 1 7 0 PKS1 R/W 属性 00000000 初期値 EP2, EP3 制御レジスタ (EP2C, EP3C) bit 属性 初期値 bit 属性 初期値 15 14 13 12 11 10 9 8 EPEN TYPE DIR DMAE NULE STAL 予約 R/W R/W R/W R/W R/W R/W 0 11 0 0 0 0 − 0 7 6 0 予約 PKS2 ∼ PKS3 − 0 R/W 1000000 R/W:リードライト可能 −:未定義 882 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit15]:EPEN (EndPoint1 ∼ 3 ENable ビット ) エンドポイントを有効または無効にします。エンドポイントを有効にすると , USB ファ ンクションで使用するエンドポイントとしてホストから構成され , このレジスタの TYPE ビット , DIR ビット , PKS ビットが構成情報として有効になります。 書込み値 説明 0 エンドポイントを無効にします。 1 エンドポイントを有効にします。 < 注意事項 > このビットは , UDC 制御レジスタ (UDCC) の RST ビットと EP1 ∼ EP3 ステータスレジ スタ (EP1S ∼ EP3S) の BFINI ビットが共に "1" のときに設定してください。USB 動作中 は , 書き換えないでください。 [bit14, bit13]:TYPE (endpoint TYPE ビット ) エンドポイントがサポートする転送タイプを指定します。 書込み値 00 説明 指定を禁止します。 01 指定を禁止します。 10 バルク転送にします。 11 インタラプト転送にします。 < 注意事項 > このビットは , UDC 制御レジスタ (UDCC) の RST ビットと EP1 ∼ EP3 ステータスレジ スタ (EP1S ∼ EP3S) の BFINI ビットが共に "1" のときに設定してください。USB 動作中 は , 書き換えないでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 883 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit12]:DIR (endpoint DIRection ビット ) エンドポイントがサポートする転送方向を指定します。 書込み値 USB ファンクション動作モード時 ホスト動作モード時 (EP1 または EP2 のみ ) 0 OUT エンドポイントにします。 IN エンドポイントにします。 1 IN エンドポイントにします。 OUT エンドポイントにします。 < 注意事項 > このビットは , UDC 制御レジスタ (UDCC) の RST ビットと EP1 ∼ EP3 ステータスレジ スタ (EP1S ∼ EP3S) の BFINI ビットが共に "1" のときに設定してください。USB 動作中 は , 書き換えないでください。 [bit11]:DMAE (DMA Enable ビット ) 自動バッファ転送モードを設定または解除します。自動バッファ転送モードとは , 転送 データの送受信バッファへの書込み / 読出しに DMA を使用し , ホストからの IN/OUT データ要求に同期して送受信データを DMA に設定したデータ転送数まで自動で転送 するモードです。 書込み値 説明 0 自動バッファ転送モードを解除します。 1 自動バッファ転送モードに設定します。 < 注意事項 > このビットに "1" を書き込んで自動バッファ転送モードにしているときは , CPU から送受 信バッファへアクセスしないでください。また OUT 方向のデータ転送時には , DMA の転 送数は , このレジスタの PKS ビットに指定した数の倍数で設定してください。 884 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit10]:NULE (NULl Enable set ビット ) NULL 自動転送モードを設定または解除します。NULL 自動転送モードとは , 自動バッ ファ転送モードが設定されている (DMAE=1) 状態で , IN 方向のデータ転送要求がきた ときに , 最後のパケット転送の検出時に 0 バイトのデータを自動で送信するモードで す。 書込み値 説明 0 NULL 自動転送モードを解除します。 1 NULL 自動転送モードに設定します。 < 注意事項 > OUT方向のデータ転送時や自動バッファ転送モードの解除時には, このビットの値は通信 に影響しません。 [bit9]:STAL (STALl set ビット ) エンドポイントの STALL 状態 (STALL 応答 ) を設定または解除します。USB 許可レジ スタ (USBEN) の STALCLRCNT ビットと UDC 制御レジスタ (UDCC) の STALCLREN ビットの設定値により , STAL ビットのクリア方法が異なります。 • USB 許可レジスタ (USBEN) の STALCLRCNT ビットが "0" の場合 , または USB 許 可レジスタ (USBEN) の STALCLRCNT ビットが "1", かつ UDC 制御レジスタ (UDCC) の STALCLREN ビットが "0" の場合 本ビットは , Clear Feature コマンドによって , "0" にクリアされません。本ビットを クリアするにはソフトで行う必要があります。本ビットのクリアタイミングは 「29.4.3 STALL 応答と解除」の「■ エンドポイント 1 ∼エンドポイント 3 の STALL 応答 / 解除について」を参照してください。 書込み値 説明 0 STALL 状態を解除します。 1 STALL 状態 (STALL 応答 ) をセットします。 • USB 許可レジスタ (USBEN) の STALCLRCNT ビットが "1", かつ UDC 制御レジスタ (UDCC) の STALCLREN ビットが "1" の場合 本ビットはハードによってクリアされます。Clear Feature コマンドで指定されたエ ンドポイントに対し , "0" にクリアされます。本ビットのクリアタイミングは「29.4.3 STALL 応答と解除」の「■ エンドポイント 1 ∼エンドポイント 3 の STALL 応答 / 解除について」を参照してください。 書込み値 CM71-10158-1 説明 0 無視されます。 1 STALL 状態 (STALL 応答 ) をセットします。 FUJITSU SEMICONDUCTOR LIMITED 885 第 29 章 USB ファンクション 29.3 MB91665 シリーズ < 注意事項 > • UDC 制御レジスタ (UDCC) の STALCLREN ビットが "0" の場合 , このビットが "1" の 間は , ホストに対して STALL 応答を続けます。このビットに "0" を書き込んだ後に , ホストから ClearFeature コマンドが発行されると , STALL 状態から復帰します。 • STALCLRCNT ビットと STALCLREN ビットの設定値により , リードモディファイラ イト系命令で読み出される値が異なります。 - STALCLRCNT=1, STALCLREN=0 の場合 , そのときの値が読み出されます。 - STALCLRCNT=1, STALCLREN=1 の場合 , "0" が読み出されます。 • MB91V650 の場合 , STALCLRCNT ビット , STALCLREN ビットは存在しませんので , STALCLRCNT=0, STALCLREN=0 時の動作となります。 EP1C:[bit8 ∼ bit0]:PKS1 (PacKet Size ep1 set ビット ) EP2C, EP3C:[bit6 ∼ bit0]:PKS2 ∼ PKS3 (PacKet Size ep2 ∼ ep3 set ビット ) 1 パケットでの最大転送数を指定します。エンドポイント 1 ∼エンドポイント 3 に設定 できるパケットの最大転送数を次に示します。 エンドポイント 最大転送数 設定可能範囲 1 256 バイト ( 奇数設定可能 ) 001H ∼ 100H 2, 3 64 バイト ( 奇数設定可能 ) 01H ∼ 40H EP2C, EP3C:[bit8, bit7]:予約ビット 予約ビットです。 書込み時 "0" を書き込んでください。 読出し時 "0" が読み出されます。 < 注意事項 > • • このビットは , UDC 制御レジスタ (UDCC) の RST ビットと EP1 ∼ EP3 ステータスレ ジスタ (EP1S ∼ EP3S) の BFINI ビットが共に "1" のときに設定してください。USB 動作中は , 書き換えないでください。 このビットには , 最大転送数 ("100H" または "40H") 以上の値と "00" は書き込まないで ください。 886 • エンドポイント2∼エンドポイント3の場合は, bit8とbit7に"00"を書き込んでください。 • 自動バッファ転送モード (DMAE=1) を使用する場合は , 該当するエンドポイントで 0H ∼ 2H の設定はしないでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ タイムスタンプレジスタ (TMSP) 29.3.6 SOF パケット受信時のフレーム番号を表示するレジスタです。 タイムスタンプレジスタ (TMSP) のビット構成を図 29.3-6 に示します。 図 29.3-6 タイムスタンプレジスタ (TMSP) のビット構成 bit 15 14 13 12 11 10 8 未定義 未定義 未定義 未定義 未定義 TMSP − X − X − X − X − X R 属性 初期値 bit 7 000 0 TMSP R 属性 00000000 初期値 R/W:リード / ライト可能 R:リードオンリ −:未定義 X:不定値 [bit15 ∼ bit11]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit10 ∼ bit0]:TMSP (TiMe StamP ビット ) SOF パケット受信時のフレーム番号を示します。フレーム番号は , SOF パケットを受 信すると更新されます CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 887 第 29 章 USB ファンクション 29.3 MB91665 シリーズ UDC ステータスレジスタ (UDCS) 29.3.7 USB 通信上のバスの状態や , 特定のコマンド受信状態を示すレジスタです。SETP ビット以 外のビットは割込み要因になっています。対応する割込み許可ビットを有効にすると , CPU に割込み要求が発生します。 UDC ステータスレジスタ (UDCS) のビット構成を図 29.3-7 に示します。 図 29.3-7 UDC ステータスレジスタ (UDCS) のビット構成 bit 属性 7 初期値 6 5 4 3 2 1 0 未定義 未定義 SUSP SOF BRST WKUP SETP CONF − X − X R/W R/W R/W R/W R/W R/W 0 0 0 0 0 0 R/W:リード / ライト可能 −:未定義 X:不定値 [bit7, bit6]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit5]:SUSP (SUSPend ビット ) USB ファンクションがサスペンド状態に移行したかどうかを示します。このビットは 割込み要因です。 SUSP 読出し時 書込み時 0 サスペンドは未検出です。 割込み要因をクリアします。 1 サスペンド状態に移行しました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 888 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit4]:SOF (Start Of Freame ビット ) SOFパケットを受信したかどうかを示し, タイムスタンプレジスタ (TMSP) の値が更新 されます。このビットは割込み要因です。 SOF 読出し時 書込み時 0 SOF パケットは受信していません。 割込み要因をクリアします。 1 SOF パケットを受信しました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 [bit3]:BRST (Bus ReSeT ビット ) USB バスリセットを検出したかどうかを示します。このビットは割込み要因です。 BRST 読出し時 書込み時 0 USB バスリセットは未検出です。 1 USB バスリセットを検出しました。 無視されます。 割込み要因をクリアします。 < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • このビットで USB バスリセットを検出したときは , EP0I ステータスレジスタ (EP0IS) の BFINI ビットと , EP0O ステータスレジスタ (EP0OS) の BFINI ビット , および EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の BFINI ビットでバッファを初期化してく ださい。 [bit2]:WKUP (WaKe UP ビット ) USB ファンクションがサスペンド状態から復帰したかどうかを示します。復帰要因に は , UDC 制御レジスタ (UDCC) の RESUM ビットの "1" 書込みによるリモートウェイク アップと , ホストからの要求によるウェイクアップがありますが , このビットは , ホス トからの復帰要求時に自動的に設定されます。このビットは割込み要因です。 WKUP CM71-10158-1 読出し時 書込み時 0 ホストからの復帰要求 ( リジューム ) は 割込み要因をクリアします。 未検出です。 1 ホストからの復帰要求 ( リジューム ) を 無視されます。 検出しました。 FUJITSU SEMICONDUCTOR LIMITED 889 第 29 章 USB ファンクション 29.3 MB91665 シリーズ < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • ホストからの復帰要求を検出しても , UDC 制御レジスタ (UDCC) の RESUM ビットに "1" が書き込まれている場合は , このビットは設定されません。 [bit1]:SETP (SETuP ビット ) 受信したデータが USB コントロール転送のセットアップステージであるかどうかを示 します。 SETP 読出し時 書込み時 0 コ ン ト ロ ー ル 転 送 の セ ッ ト ア ッ プ ス 要因をクリアします。 テージは受信していません。 1 コ ン ト ロ ー ル 転 送 の セ ッ ト ア ッ プ ス 無視されます。 テージを受信しました。 < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • このビットは , 標準コマンドの自動応答時には設定されません。また , 割込み要因では ありません。 [bit0]:CONF (CONFigration ビット ) USB ファンクションがコンフィグレーション済みであるかどうかを示します。この ビットは USB コマンドの SetConfig を正常に受信したときに設定されます。このビッ トは割込み要因です。 CONF 読出し時 書込み時 0 SetConfig は未検出です。 割込み要因をクリアします。 1 SetConfig を検出しました。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 890 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ UDC 割込み許可レジスタ (UDCIE) 29.3.8 UDC ステータスレジスタ (UDCS) の割込み要因による割込みを , ビットごとに許可するレジ スタです (CONFN ビットは除きます ) 。 UDC 割込み許可レジスタ (UDCIE) のビット構成を図 29.3-8 に示します。 図 29.3-8 UDC 割込み許可レジスタ (UDCIE) のビット構成 bit 7 6 5 4 3 2 1 0 予約 予約 SUSPIE SOFIE BRSTIE WKUPIE CONFN CONFIE − 0 R/W R/W R/W R/W R R/W 0 0 0 0 0 0 属性 初期値 − 0 R/W:リード / ライト可能 R:リードオンリ −:未定義 [bit7, bit6]:予約ビット 書込み時 "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit5]:SUSPIE (SUSP Interrupt Enable ビット ) UDC ステータスレジスタ (UDCS) の SUSP ビットの割込み要因による割込みを許可し ます。 0 書込み値 説明 SUSP 要因の割込みを禁止します。 1 SUSP 要因の割込みを許可します。 [bit4]:SOFIE (SOF Interrupt Enable ビット ) UDC ステータスレジスタ (UDCS) の SOF ビットの割込み要因による割込みを許可しま す。 書込み値 CM71-10158-1 説明 0 SOF 要因の割込みを禁止します。 1 SOF 要因の割込みを許可します。 FUJITSU SEMICONDUCTOR LIMITED 891 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit3]:BRSTIE (BRST Interrupt Enable ビット ) UDC ステータスレジスタ (UDCS) の BRST ビットの割込み要因による割込みを許可し ます。 書込み値 説明 0 BRST 要因の割込みを禁止します。 1 BRST 要因の割込みを許可します。 [bit2]:WKUPIE (WKUP Interrupt Enable ビット ) UDC ステータスレジスタ (UDCS) の WKUP ビットの割込み要因による割込みを許可し ます。 書込み値 説明 0 WKUP 要因の割込みを禁止します。 1 WKUP 要因の割込みを許可します。 [bit1]:CONFN (CONFigration Number ビット ) コンフィグレーション番号を示します。UDCステータスレジスタ (UDCS) のCONFビッ トの割込み要因の設定時に更新されます。 読出し値 説明 0 コンフィグレーション番号 0 です。 1 コンフィグレーション番号 1 です。 [bit0]:CONFIE (CONF Interrupt Enable ビット ) UDC ステータスレジスタ (UDCS) の CONF ビットの割込み要因による割込みを許可し ます。 書込み値 892 説明 0 CONF 要因の割込みを禁止します。 1 CONF 要因の割込みを許可します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ EP0I ステータスレジスタ (EP0IS) 29.3.9 エンドポイント 0 の IN 方向転送に関するステータスを表示するレジスタです。 EP0I ステータスレジスタ (EP0IS) のビット構成を図 29.3-9 に示します。 図 29.3-9 EP0I ステータスレジスタ (EP0IS) のビット構成 bit 属性 15 14 BFINI DRQIIE R/W R/W 1 0 − X 7 6 未定義 − X 初期値 bit 属性 初期値 13 11 10 9 8 未定義 DRQI 未定義 未定義 − X − X R/W 1 − X − X 5 4 3 2 1 0 未定義 未定義 未定義 未定義 未定義 未定義 未定義 − X − X − X − X − X − X − X 未定義 12 未定義 R/W:リードライト可能 −:未定義 X:不定値 [bit15]:BFINI (BuFfer INItial ビット ) 転送データの送信バッファを初期化します。このビットは , UDC 制御レジスタ (UDCC) の RST ビットに "1" を書き込むと , 自動的に "1" に変わります。RST ビットが "1" の場 合は , RST ビットに "0" を書き込んでから , このビットに "0" を書き込んでください。 書込み値 説明 0 送信バッファの初期化を解除します。 1 送信バッファを初期化します。 < 注意事項 > このビットに "1" を書き込むと , 送信バッファと DRQI ビットが初期化されます。送信バッ ファを初期化するときは , 最初に DRQI ビットまたは EP0O ステータスレジスタ (EP0OS) の DRQO ビットに "1" が書き込まれてホストからのアクセスがないことを確認し , 必要に 応じて EP0 制御レジスタ (EP0C) の STAL ビットに "1" を書き込んでから行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 893 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit14]:DRQIIE (Data ReQuest In Interrupt Enable ビット ) DRQI ビットの割込み要因による割込みを許可します。 書込み値 0 説明 DRQI 要因の割込みを禁止します。 1 DRQI 要因の割込みを許可します。 [bit13 ∼ bit11]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit10]:DRQI (Data ReQuest In ビット ) エンドポイント 0 のホストからの IN パケット転送が正常に終了し , 送信バッファから データが読み出され , 次の送信データを書き込めるかどうかを示します。このビットは 割込み要因です。 DRQI 読出し時 書込み時 0 送信データを書き込めません。 割込み要因をクリアします。 1 送信データを書き込めます。 無視されます。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 送信バッファのデータ書込み処理が済んだら , このビットに "0" を書き込んでクリアして ください。ただし , このビットに "1" が書き込まれていない場合は , "0" は書き込まないで ください。 このビットが "1" の状態で IN パケット要求があった場合は , 自動でホストに NAK 応答し ます。 [bit9 ∼ bit0]:未定義ビット 894 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ EP0O ステータスレジスタ (EP0OS) 29.3.10 エンドポイント 0 の OUT 方向転送に関するステータスを表示するレジスタです。 EP0O ステータスレジスタ (EP0OS) のビット構成を図 29.3-10 に示します。 図 29.3-10 EP0O ステータスレジスタ (EP0OS) のビット構成 bit 属性 15 14 13 BFINI DRQOIE SPKIE R/W R/W R/W 1 0 0 7 6 初期値 bit 12 未定義 − X 11 10 9 8 未定義 DRQO SPK 予約 − X R/W R/W 0 0 − 0 0 予約 SIZE − 0 R 属性 初期値 X R/W:リードライト可能 R:リードオンリ −:未定義 X:不定値 [bit15]:BFINI (BuFfer INItial ビット ) 転送データの受信バッファを初期化します。このビットは , UDC 制御レジスタ (UDCC) の RST ビットに "1" を書き込むと , 自動的に "1" に変わります。RST ビットが "1" の場 合は , RST ビットに "0" を書き込んでから , このビットに "0" を書き込んでください。 書込み値 0 説明 受信バッファの初期化を解除します。 1 受信バッファを初期化します。 < 注意事項 > このビットに "1" を書き込むと , 受信バッファと DRQO ビットと SPK ビットを初期化し ます。受信バッファを初期化するときは , 最初に DRQO ビットまたは EP0I ステータスレ ジスタ (EP0IS) の DRQI ビットに "1" が書き込まれてホストからのアクセスがないことを 確認し , 必要に応じて EP0 制御レジスタ (EP0C) の STAL ビットに "1" を書き込んでから 行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 895 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit14]:DRQOIE (Data ReQuest Out Interrupt Enable ビット ) DRQO ビットの割込み要因による割込みを許可します。 書込み値 説明 0 DRQO 要因の割込みを禁止します。 1 DRQO 要因の割込みを許可します。 [bit13]:SPKIE (SPK Interrupt Enable ビット ) SPK ビットの割込み要因による割込みを許可します。 書込み値 説明 0 SPK 要因の割込みを禁止します。 1 SPK 要因の割込みを許可します。 [bit12, bit11]:未定義ビット 書込み時 無視されます。 読出し時 値は不定です。 [bit10]:DRQO (Data ReQuest Out ビット ) エンドポイント 0 のホストからの OUT パケット転送が正常に終了し , 受信バッファに データが書き込まれ , 受信データを読み出せるかどうかを示します。このビットは割込 み要因です。 DRQO 読出し時 書込み時 0 受信データは読み出せません。 割込み要因をクリアします。 1 受信データを読み出せます。 無視されます。 < 注意事項 > 896 • リードモディファイライト系命令では "1" が読み出されます。 • 受信バッファのデータを読み出したら , このビットに "0" を書き込んでクリアしてくだ さい。ただし , このビットに "1" が書き込まれていない場合は , "0" は書き込まないで ください。 • このビットが "1" のときは , 受信バッファは更新されません。"0" が書き込まれた時点 で更新が許可されます。 このビットが "1" の状態で OUT パケット要求があった場合は , 自動でホストに NAK 応答します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit9]:SPK (Short PaKet ビット ) ホストからの転送データが , 正常受信時に EP0 制御レジスタ (EP0C) の PKS ビットに指 定したマックスパケットに満たない場合 (0 バイトを含みます ) を示します。このビッ トは割込み要因です。 SPK 読出し時 書込み時 0 マックスパケット転送数分を受信 割込み要因をクリアします。 しました。 1 マックスパケット転送数未満を受 無視されます。 信しました。 < 注意事項 > リードモディファイライト系命令では "1" が読み出されます。 [bit8, bit7]:予約ビット 書込み時 無視されます。 読出し時 "0" が読み出されます。 [bit6 ∼ bit0]:SIZE (packet SIZE ビット ) エンドポイント 0 の OUT パケット転送終了後に受信バッファに書き込まれたデータバ イト数を示します。このビットは , EP0O ステータスレジスタ (EP0OS) の DRQO ビッ トの割込み要因が設定されたときに , 有効な値に更新されます。例えば 8 バイトのデー タが書き込まれた場合は "08H", 64 バイトのデータが書き込まれた場合は "40H" を示し ます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 897 第 29 章 USB ファンクション 29.3 29.3.11 MB91665 シリーズ EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) エンドポイント 1 ∼エンドポイント 3 に関するステータスを表示するレジスタです。 EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) のビット構成を図 29.3-11 に示します。 図 29.3-11 EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) のビット構成 EP1 ステータスレジスタ (EP1S) bit 属性 初期値 bit 15 14 13 12 11 10 9 8 BFINI DRQIE SPKIE 予約 BUSY DRQ SPK SIZE1 R/W R/W R/W R/W R/W R 1 0 0 − X R 0 0 0 X 7 0 SIZE1 属性 R 初期値 X EP2, EP3 ステータスレジスタ (EP2S, EP3S) bit 属性 初期値 bit 属性 初期値 15 14 13 12 11 10 9 8 BFINI DRQIE SPKIE 予約 BUSY DRQ SPK 予約 R/W R/W R/W R R/W R/W 1 0 0 − X 0 0 0 − 0 7 6 0 予約 SIZE2 ∼ SIZE3 − 0 R X R/W:リードライト可能 R:リードオンリ −:未定義 X:不定値 898 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit15]:BFINI (EndPoint1 ∼ EndPoint3 ENable ビット ) 転送データの送受信バッファを初期化します。このビットは , UDC 制御レジスタ (UDCC) の RST ビットに "1" を書き込むと , 自動的に "1" に変わります。RST ビットが "1" の場合は , RST ビットに "0" を書き込んでから , このビットに "0" を書き込んでく ださい。 書込み値 説明 0 送受信バッファの初期化を解除します。 1 送受信バッファを初期化します。 < 注意事項 > エンドポイント 1 ∼エンドポイント 3 の送受信バッファは , ダブルバッファ構成です。 このビットに "1" を書き込むと , ダブルバッファと DRQ ビット , SPK ビットを同時に初 期化します。送受信バッファを初期化するときは , DRQ ビットが "1" に変わり , BUSY ビットが "0" に変わってホストからのアクセスがないことを確認してから , 必要に応じて EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の STAL ビットに "1" を書き込んでから行っ てください。 [bit14]:DRQIE (Data ReQuest Interrupt Enable ビット ) DRQ ビットの割込み要因による割込みを許可します。 書込み値 説明 0 DRQ 要因の割込みを禁止します。 1 DRQ 要因の割込みを許可します。 < 注意事項 > 自動バッファ転送モードを使用する場合は , DMA の設定をして , 転送を許可してから , こ のビットに "1" を書き込んでください。 [bit13]:SPKIE (SPK Interrupt Enable ビット ) SPK ビットの割込み要因による割込みを許可します。 書込み値 説明 0 SPK 要因の割込みを禁止します。 1 SPK 要因の割込みを許可します。 [bit12]:予約ビット CM71-10158-1 書込み時 無視されます。 読出し時 値は不定です。 FUJITSU SEMICONDUCTOR LIMITED 899 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit11]:BUSY (BUSY flag ビット ) ホストから送受信バッファへの書込み中 , または読出し中であることを示します。この ビットは自動で書き換えられます。 読出し値 説明 0 ホストからのアクセスはありません。 1 ホストから書込み中または読出し中です。 < 注意事項 > このビットと DRQ ビットが "1" の場合は , ダブルバッファのうち , CPU または DMA アク セスしているバッファとは別のバッファが , ホストからアクセスされていることを意味し ます。通常このビットによる制御は必要ありませんが , 送受信バッファを BFINI ビットで 初期化する場合は , DRQ ビットが "1" でこのビットが "0" で , ホストからのアクセスがな いことを確認した後に , EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の該当する STAL ビッ トに "1" を書き込んでから行ってください。 [bit10]:DRQ (Data ReQuest ビット ) エンドポイント 1 ∼エンドポイント 3 のパケット転送が正常に終了し , データ処理が必 要であることを示します。このビットは割込み要因です。 DRQ 0 1 読出し時 書込み時 受送信バッファへのデータ書込みまた 割込み要因をクリアします。 は読出しができません。 パケット転送が正常に終了しました。 無視されます。 < 注意事項 > 900 • リードモディファイライト系命令では "1" が読み出されます。 • 自動バッファ転送モードを使用しない場合は , 送受信バッファへのデータの書込みま たは読出し処理が終了したら , このビットに "0" を書き込んでクリアしてください。こ のビットをクリアすると , アクセスバッファが切り換わります。DRQ ビットをクリア 後に , DRQ=0 が読み出せない場合があります。転送方向を IN 方向に設定している場 合 , このビットが "1" の状態でバッファ内のデータを書き込まないでクリアすると , 0 バイトのデータを設定したことになります。初期設定において EP1 ∼ EP3 制御レジ スタ (EP1C ∼ EP3C) の DIR ビットに "1" を書き込んだ場合 , 対応するエンドポイント の DRQ ビットも同時に "1" に変わります。また , このビットが "0" のときは , "0" を書 き込まないでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ [bit9]:SPK (Short PaKet ビット ) ホストからの転送データが , 正常受信時に EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の PKS ビットで指定したマックスパケット数に満たない場合 (0 バイトを含みます ) を示 します。このビットは割込み要因です。 SPK 読出し時 書込み時 0 マックスパケット転送数分を受信しま 割込み要因をクリアします。 した。 1 マックスパケット転送数未満を受信し 無視されます。 ました。 < 注意事項 > • リードモディファイライト系命令では "1" が読み出されます。 • IN 方向のデータ転送時には , このビットは変化しません。 [bit8, bit7]:EP2, EP3 予約ビット EP2, EP3 ステータスレジスタ (EP2S, EP3S) の場合は , 予約ビットです。 書込み時 無視されます。 読出し時 "0" が読み出されます。 [bit8 ∼ bit0]:SIZE1 (packet SIZE ビット ) [bit6 ∼ bit0]:SIZE2 ∼ SIZE 5 (packet SIZE ビット ) エンドポイント 1 ∼エンドポイント 3 の OUT パケット転送終了時に , 受信バッファに 書き込まれたデータバイト数を示します。このビットは , 該当する DRQ の割込み要因 の発生時に有効な値に更新されます。 エンドポイント 1 ∼エンドポイント 3 の最大転送数を次に示します。 エンドポイント 最大転送数 表示範囲 1 256 バイト 000H ∼ 100H 2, 3 64 バイト 00H ∼ 40H < 注意事項 > このビットは , OUT 方向転送時のホストからのバッファ書込みデータ数を示します。IN 方向時に読み出された値は , 意味をもちません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 901 第 29 章 USB ファンクション 29.3 MB91665 シリーズ EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/ EP0DTL ∼ EP3DTL) 29.3.12 エンドポイント 0 ∼エンドポイント 3 に関する転送データの送受信バッファへのリードアク セスレジスタおよびライトアクセスレジスタです。 EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL) のビット構成を 図 29.3-12 に示します。 図 29.3-12 EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL) のビット構成 (EP0DTH ∼ EP3DTH) bit 15 8 BFDT R/W 属性 X 初期値 (EP0DTL ∼ EP3DTL) bit 7 0 BFDT R/W 属性 X 初期値 R/W:リード / ライト可能 X:不定値 < 注意事項 > MB91V650 の場合 , EPEDN ビットは存在しませんので , EPEDN=0 時の動作となります。 [bit15 ∼ bit0]:BFDT (BuFfer DaTa ビット ) 各エンドポイント用の送受信バッファへのデータリードレジスタおよびデータライト レジスタです。 902 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ < 注意事項 > • EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL) は , USB 許可 レジスタ (USBEN) の EPEDN ビットの設定によりリトルエンディアンとビックエン ディアンを選択できます。 - EPEDN=0 の場合 リトルエンディアンです。本レジスタへのデータ格納順は下位 (EPxDTL) →上位 (EPxDTH) の順になります (x=0 ∼ 3)。 - EPEDN=1 の場合 ビックエンディアンです。本レジスタへのデータ格納順は上位 (EPxDTH) → 下位 (EPxDTL) の順になります (x=0 ∼ 3 )。 • EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL) への CPU ア クセスはバイト , ハーフワード共に可能です。 - バイトの場合 EPEDN=0 の場合 , 最初に下位 (EPxDTL) へのアクセスとし , 次は上位 (EPxDTH) へ のアクセスとして , 以後下位 (EPxDTL), 上位 (EPxDTH) を交互にアクセスしていっ てください。 EPEDN=1 の場合 , 最初に上位 (EPxDTH) へのアクセスとし , 次は下位 (EPxDTL) へ のアクセスとして , 以後上位 (EPxDTH), 下位 (EPxDTL) を交互にアクセスしていっ てください。 - ハーフワードの場合 EPEDN=0 の場合 , 転送データはエンディアン変換を行ってください。 EPEDN=1 の場合 , エンディアン変換は必要ありません。 • ビット操作命令による本レジスタへのアクセスは禁止です。 • MB91V650 の場合 , EPEDN ビットは存在しませんので , EPEDN=0 時の動作となりま す。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 903 第 29 章 USB ファンクション 29.3 MB91665 シリーズ ( 例 ) Get descriptor の SETUP 転送時 EPEDN=0 時 ( リトルエンディアン ) USBバス上の受信データ 00 H 09 H 00 H 00 H 02 H 00 H 06 H 80 H (8Byte目) (7Byte目) (6Byte目) (5Byte目) (4Byte目) (3Byte目) (2Byte目) (1Byte目) 読出し順 80 H (1Byte目) 06 H (2Byte目) 00 H MCU (3Byte目) 02 H (4Byte目) EP0DT EP0DTH USBバス上の受信データ 00 H EP0DTL (5Byte目) 00 H CPUでの Byteリード 06 H 80 H (2Byte目) (1Byte目) 02 H 00 H (7Byte目) (4Byte目) (3Byte目) 00 H 00 H 00 H (6Byte目) (5Byte目) 00 H 09 H (8Byte目) (7Byte目) bit 15 09 H (8Byte目) EP0DTH EP0DTL EP0DTH EP0DTL EP0DTH EP0DTL EP0DTH 読出し順 0 +0 (6Byte目) EP0DTL CPUでの Half word リード +1 06 H 80 H (2Byte目) (1Byte目) 02 H 00 H (4Byte目) (3Byte目) 00 H 00 H (6Byte目) (5Byte目) 00 H 09 H (8Byte目) (7Byte目) EP0DTH/EP0DTL EP0DTH/EP0DTL EP0DTH/EP0DTL EP0DTH/EP0DTL 0 bit 15 EPEDN=1 時 ( ビックエンディアン ) USBバス上の受信データ 00H 09H (8Byte目) (7Byte目) 00H (6Byte目) 00H (5Byte目) 02H (4Byte目) 06H 00H (2Byte目) (3Byte目) 80H (1Byte目) 読出し順 80H EP0DTH 06H EP0DTL (1Byte目) (2Byte目) 00H MCU (3Byte目) 02H (4Byte目) EP0DT EP0DTH EP0DTL 80H USBバス上の受信データ 06H (1Byte目) (2Byte目) 00H 02H (3Byte目) 00H 00H 00H (8Byte目) +1 CPUでの Half wordリード (1Byte目) 00H 06H EP0DTH/EP0DTL 02H EP0DTH/EP0DTL (2Byte目) (3Byte目) (4Byte目) 00H 00H (5Byte目) 09H (7Byte目) bit 15 904 EP0DTH EP0DTL 読出し順 80H (8Byte目) 0 +0 09H 00H (6Byte目) 09H bit 15 EP0DTL (7Byte目) (5Byte目) (7Byte目) EP0DTH 00H (6Byte目) (4Byte目) EP0DTL 00H (5Byte目) CPUでの Byteリード EP0DTH FUJITSU SEMICONDUCTOR LIMITED (6Byte目) 00H (8Byte目) EP0DTH/EP0DTL EP0DTH/EP0DTL 0 CM71-10158-1 第 29 章 USB ファンクション 29.3 MB91665 シリーズ ( 例 ) Get descriptor の IN 転送時 EPEDN=0 時 ( リトルエンディアン ) USBバス上の送信データ 09 H 02 H 10 H 00 H 01 H 01 H 00 H E0 H 32 H (1Byte目) (2Byte目) (3Byte目) (4Byte目) (5Byte目) (6Byte目) (7Byte目) (8Byte目) (9Byte目) 書込み順 09 H (1Byte目) 02 H (2Byte目) 10 H MCU (3Byte目) 00 H EP0DT (4Byte目) 01 H EP0DTH 09 H (2Byte目) (1Byte目) 00 H 10 H (4Byte目) (3Byte目) 01 H 01 H (6Byte目) (5Byte目) E0 H 00 H (8Byte目) (7Byte目) USBバス上の送信データ (5Byte目) EP0DTL 02 H 01 H CPUでの Byteライト (6Byte目) 00 H (7Byte目) E0 H (8Byte目) 32 H (9Byte目) 02 H (9Byte目) 0 +0 EP0DTL EP0DTH EP0DTL EP0DTH EP0DTL EP0DTH EP0DTL 書込み順 32 H bit 15 EP0DTL EP0DTH CPUでの Half word ライト +1 (2Byte目) 00 H 09 H EP0DTH/EP0DTL (1Byte目) (4Byte目) (3Byte目) 10 H EP0DTH/EP0DTL 01 H (6Byte目) 01 H (5Byte目) EP0DTH/EP0DTL E0 H 00 H EP0DTH/EP0DTL 32 H EP0DTL (8Byte目) (7Byte目) (9Byte目) 0 bit 15 EPEDN=1 時 ( ビックエンディアン ) USBバス上の送信データ 09H 02H 10H 00H 01H 01H 00H E0H 32H (1Byte目) (2Byte目) (3Byte目) (4Byte目) (5Byte目) (6Byte目) (7Byte目) (8Byte目) (9Byte目) MCU EP0DT EP0DTH 09H EP0DTL 02H (2Byte目) 02H EP0DTL 10H (3Byte目) EP0DTH 00H EP0DTL 00H 01H EP0DTH 01 EP0DTL (5Byte目) CPUでの Byteライト (3Byte目) (4Byte目) USBバス上の送信データ (1Byte目) EP0DTH (4Byte目) (1Byte目) (2Byte目) 10H 書込み順 09H (6Byte目) 00H EP0DTH E0H EP0DTL 32H EP0DTH (7Byte目) 01H 01H (8Byte目) 00H E0H (9Byte目) (5Byte目) (6Byte目) (7Byte目) (8Byte目) 32H 09H (9Byte目) 0 bit 15 +0 +1 CPUでの Half wordライト (1Byte目) 書込み順 (2Byte目) 02H EP0DTH/EP0DTL EP0DTH/EP0DTL 10H 00H (3Byte目) (4Byte目) 01H 01H (5Byte目) (6Byte目) EP0DTH/EP0DTL 00H E0H (7Byte目) (8Byte目) EP0DTH/EP0DTL 32H EP0DTH (9Byte目) bit 15 0 DMA 転送による EP0 ∼ EP3 データレジスタ (EP0DTH ∼ EP3DTH/EP0DTL ∼ EP3DTL) へのアクセスはハーフワードアクセスのみ対応しています。転送データはエンディアン変 換を行ってください (29.4.6 DMA 転送機能の「自動バッファ転送モード」を参照 )。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 905 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 29.4 動作説明と設定手順例 USB ファンクションの動作について説明します。また , 動作状態を設定するための手順例も 示します。 ■ 概要 USB ファンクションは , USB 通信プロトコルをサポートするホストコントローラと双 方向のパケット転送を行います。ホストと USB デバイスの接続と構成は , エニュメレー ションで実施され , そのあとにデバイスドライバを使用した各種の転送タイプで通信 が行われます。 < 注意事項 > USB ファンクションを使用するためには , USB 許可レジスタ (USBEN) で USB の動作を 禁止している (USBEN=0) 状態で , USB クロック生成部の設定を行い , USB クロック出力 を有効にします。エンドポイントエンディアンと STAL ビットクリア方法の設定を変更す る場合は , USB 許可レジスタ (USBEN) で USB の動作を禁止している (USBEN=0) 状態で EPEDN ビ ッ ト と STALCLRCNT ビ ッ ト を 設 定 し て く だ さ い。EPEDN ビ ッ ト と STALCLRCNT ビットの設定は USBEN ビットのセットと同時でも構いません。その後 , USB の動作を許可 (USBEN=1) してください。 USB ファンクションは USB プロトコルをサポートするホストコントローラと双方向のパ ケット転送を行います。ホストとデバイスの接続 , 構成はエニュメレーションにより実施 されます。そのあとにデバイスドライバを使用した各種の転送タイプでの通信が行われま す。 ここではエニュメレーションを例に , ホストと USB デバイスの USB 通信の動作につい て説明し , 全体の処理内容を理解するためのレジスタと USB パケットの動きを示しま す。 ● エニュメレーション処理 USB が動作するときに , 最初にホストと USB デバイスの接続を確立する処理です。 USB のバス上にどのようなデバイスが接続されているかを , ホストが USB コントロール転 送 (USB の転送タイプ ) を使って調査します (USB 仕様で規定されています ) 。これは 4 本あるエンドポイントのうちのエンドポイント 0 を使用します (USB 仕様です ) 。 エンドポイント 1 ∼エンドポイント 3 を使用するためには , USB バス上で以下の処理 を受信する必要があります。 ① USB バスリセット ② SET_Address によるアドレスセット ③ SET_Config による構成セット 906 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ USB ケーブル端子の接続例を図 29.4-1 に示します。 図 29.4-1 USB ケーブル端子の接続例 方向 動作概要 USB バス接続検出 ホスト ← USB デバイス USB バス上のプルアップをホストが検出する までは動作は行われません。 ディスクリプタ情報の 取得 ホスト ← USB デバイス ディスクリプタのデータをホストに返します。 デバイスアドレスの 設定 ホスト → USB デバイス ホストから任意のアドレスを割り当てられます。 ディスクリプタ情報の 取得 ( デバイス ) ホスト ← USB デバイス ディスクリプタのデータをホストに返します。 ディスクリプタ情報の 取得 ( 構成 ) ホスト ← USB デバイス ディスクリプタのデータをホストに返します。 構成の設定 ホスト → USB デバイス ホストから構成番号を割り当てられます。 • 接続検出 USB デバイスからホストに通知します。 ホストは USB バスの 2 本の信号線 (D+, D-) を監視し , どちらかの信号が "H" レベル になると , デバイスが接続されたと認識します。 USB デバイスを自己電源デバイスとして使用する場合の詳細な手順については , 「29.4.1 接続検出と切断検出」を参照してください。USB デバイスをバス電源デバ イスとして使用する場合は , 次の「レジスタ初期設定と動作開始手順」に沿って処 理してください。 • レジスタ初期設定と動作開始手順 USB ファンクションのレジスタ初期設定例を示します。 1. EP0制御レジスタ (EP0C) で, エンドポイント0を設定する (パケットサイズなど) 2. EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) で , エンドポイント 1 ∼エンドポイン ト 3 の EPEN ビット , DIR ビット , TYPE ビットなどを設定する 3. UDC 制御レジスタ (UDCC) の RST ビットをクリアする 4. EP0I ステータスレジスタ (EP0IS) , EP0O ステータスレジスタ (EP0OS) , EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の BFINI ビットをクリアする 5. UDC 制御レジスタ (UDCC) の HCONX ビットをクリアする CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 907 第 29 章 USB ファンクション 29.4 • MB91665 シリーズ USB バスリセット ホストから USB デバイスにバスリセットがかかると , USB デバイスコアが初期化 されますが , レジスタおよびバッファの状態は初期化されません。 USB デバイスでは次の順序で処理してください (USB 接続後の最初のバスリセット では処理の必要はありません )。 1. EP0I ステータスレジスタ (EP0IS) の BFINI ビットと , EP0O ステータスレジスタ (EP0OS) の BFINI ビット , および EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の BFINI ビットでバッファを初期化する。 2. ファームの制御をエニュメレーション前に戻す。 • ディスクリプタ情報の取得 ホストから USB デバイスに要求があると , データをホストに通知します。セット アップステージ , データステージ , ステータスステージの 3 つのステージに別れて 通信されます。 - セットアップステージ ホストから正常にパケットが受信されたかどうかを確認し , そのコマンドが何 かをデコードします。また次のデータステージで返すディスクリプタの情報を 送信バッファに用意します。 - データステージ ホストからデータが正常に送信されたかどうかを確認します。 - ステータスステージ ホストがデータなしパケットを転送して , 終了処理を行います。 908 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 接続検出と切断検出 29.4.1 USB ホストとの接続検出と切断検出について説明します 外部割込み端子を USB コネクタの VBUS 端子に接続してプルダウン抵抗を接続する と , USB ホストとの切断を検出できます。USB コネクタの D+, D-, VBUS との接続例を 図 29.4-2 に示します。 図 29.4-2 USB システム構成例 B コネクタ USB デバイス機器 本LSI USB ホスト VBUS (5V) VBUS 外部割込み 100kΩ 汎用ポート 10Ω 27Ω USB I/O USB I/O D+ 1.5kΩ (3.3V) 47pF 27Ω D- 47pF ■ 接続検出動作 接続検出時の動作を図 29.4-3 に示します。 図 29.4-3 接続検出時の動作 ホストと接続 外部割込み (VBUS) [ENx] 外部割込み許可 要因レベルの変更 [ERx] [LBx, LAx] [0, 1] [0, 0] [HCONX] 切断設定 汎用ポート ( プルアップ抵抗制 御用 ) CM71-10158-1 VBUS が安定する期間 切断 FUJITSU SEMICONDUCTOR LIMITED 接続許可 接続 909 第 29 章 USB ファンクション 29.4 MB91665 シリーズ USB デバイスは , 次の順序でホストとの接続を認識して処理します。 1. プルアップ抵抗制御用の汎用ポートを , プルアップ抵抗切断側に設定します。 2. VBUS に接続した外部割込みの要因レベルを "H" レベル検出に設定し , 割込みを許 可します。 3. 外部割込み端子の "H" レベル検出で USB ホストが接続されたことを認識し , VBUS が安定する期間を待ちます。 4. 外部割込みをいったん禁止にします。 外部割込み要因レベルを "L" レベル検出に書き換え , 割込み要因をクリアして再び 外部割込みを許可します。 5. 初期設定 (USB ファンクションレジスタを含む , すべての初期化 ) をします。 この節の「概要」の「レジスタ初期設定と動作開始手順」を参照してください。 6. UDC 制御レジスタ (UDCC) の HCONX ビットをクリア後 , プルアップ抵抗制御用の 汎用ポートを , プルアップ抵抗接続側に設定することで , D+ のプルアップ抵抗を接 続します。 プルアップ抵抗を制御していない場合でも , HCONX ビットをクリアしてください。 < 注意事項 > 外部割込み端子にノイズフィルタを外付けした場合は , 上記の VBUS 安定期間をプログラ ムで待つ必要はありません。 ■ 切断検出動作 切断検出時の動作を図 29.4-4 に示します。 図 29.4-4 切断検出時の動作 外部割込み (VBUS) ホストと切断 [ENx] 要因レベルの変 [ERx] [LBx, LAx] [0, 0] [0, 1] ストップモードからの復帰 [SUSP] [USTP] VBUS 安定期間または 発振安定待ち時間 [HCONX] 切断設定 汎用ポート ( プルアップ抵抗制 御用 ) 接続 切断 USB デバイスは , 次の順序でホストとの切断を認識して処理します。 1. VBUS に接続した外部割込み端子の "L" レベルを検出し , USB ホストが切断された ことを認識する 910 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 2. ストップモードからの復帰時に , 発振安定待ち時間後に UDC ステータスレジスタ (UDCS) の SUSP ビット , UDC 制御レジスタ (UDCC) の USTP ビットの順にクリア する ストップモード以外のときは , VBUS が安定する期間を待ちます。 3. いったん外部割込みを禁止する 外部割込み要因レベルを "H" レベル検出に書き換え , 外部割込み要因をクリアして 再び外部割込みを許可します。 4. UDC 制御レジスタ (UDCC) の HCONX ビットに "1" を書き込んだ後 , プルアップ抵 抗制御用の汎用ポートを , プルアップ抵抗切断側に設定することで , D+ のプルアッ プ抵抗を切断する プルアップ抵抗を制御していない場合でも , HCONX ビットに "1" を書き込んでく ださい。 < 注意事項 > 外部割込み端子にノイズフィルタを外付けした場合は , 上記の VBUS 安定期間をプログラ ムで待つ必要はありません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 911 第 29 章 USB ファンクション 29.4 29.4.2 MB91665 シリーズ コマンド応答時のレジスタ動作 基本となるレジスタの動作と制御による USB パケットの処理方法 ( アーキテクチャ ) につい て説明します CPU 割込みによるファームウェアの処理は , ハンドシェークごとに処理します。これ は , 各パケットのステージ単位に処理することと同じになります。 ■ リードコマンド応答時のレジスタ動作 GetDescripter, SynchFrame, クラスベンダーコマンドの場合の , リードコマンド応答時の レジスタ動作を図 29.4-5 に示します。 図 29.4-5 リードコマンド応答時のレジスタ動作 セットアップ ステージ ホスト SET UP DATA0 → USB デバイス USB デバイス ステータス ステージ データステージ IN ACK DATA0 ライト →ホスト ACK IN DATA0 ACK DATA1 OUT DATA1 ACK DATA1 ライト DRQIIE DRQI コマンド リード DRQOIE ソフト クリア DRQO ソフト クリア DATA1 リード SETP ①セットアップ 処理 • ②データステージ処理 ③コマンド 終了処理 セットアップ処理 セットアップステージの受信時に EP0O ステータスレジスタ (EP0OS) の DRQO ビッ トが "1" に変わります。DRQO ビットが "1" に変わった時点で , CPU 割込みに入り ます。UDC ステータスレジスタ (UDCS) の SETP ビットを確認し , "1" の場合は受信 バッファにあるコマンドを必要なだけ読み出して ( 必ずしも 8 バイトすべてを読み 出す必要はありません ) デコードし , 各種設定処理をし , SETP ビットと割込み要因 の DRQO ビットをクリアしてから戻ります。 • データステージ後処理 コマンドをデコードした結果 , データステージが IN 方向の場合 , EP1 ∼ EP3 ステー タスレジスタ (EP1S ∼ EP3S) の DRQIE ビットに "1" を書き込んで割込みを許可し ( 割込み要因の EP0I ステータスレジスタ (EP0IS) の DRQI ビットの初期値が "1" であ るため , DRQIE ビットに "1" を書き込むだけです ) , CPU 割込みで送信データを送 信バッファに転送します。転送終了後 , 割込み要因の DRQI ビットをクリアしてか ら戻ります。 912 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ < 注意事項 > この USB ファンクションは , USB2.0 で新たに追加されたコマンドには対応していないた め , GetDescripter コマンドに対して USB リビジョンは 1.1 で応答してください。 IN 方向のデータパケット処理が終了すると , DRQI ビットが "1" に変わります。DRQI ビットが "1" に変わった時点で CPU 割込みに入り , 次のデータパケットに備えて送 信データを送信バッファに転送します。転送終了後 , 割込み要因の DRQI ビットを クリアして戻ります。 • コマンド終了処理 OUT 方向のステータスステージが終了すると , EP0O ステータスレジスタ (EP0OS) の DRQO ビットが "1" に変わります。DRQO ビットが 1" に変わった時点で CPU 割 込みに入り , 受信データ数 0 を確認し , 次のセットアップステージに備えて割込み 要因の DRQO ビットをクリアして戻ります。 ■ ライトコマンド応答時のレジスタ動作 SetDescripter, クラスベンダーコマンドの場合の , ライトコマンド応答時のレジスタ動 作を図 29.4-6 に示します。 図 29.4-6 ライトコマンド応答時のレジスタ動作 ホスト → USB デバイス セットアップ ステージ ステータス ステージ データステージ SETUP DATA0 OUT DATA0 OUT DATA1 IN ACK USB デバイス →ホスト ACK ACK ACK DATA1 DRQIIE ソフト クリア DRQI DRQOIE コマンド リード DRQO DATA0 リード ソフト クリア DATA1 リード ソフト クリア SETP ①セットアップ処理 CM71-10158-1 ②データステージ処理 FUJITSU SEMICONDUCTOR LIMITED ③コマンド 終了処理 913 第 29 章 USB ファンクション 29.4 • MB91665 シリーズ セットアップ処理 セットアップステージの受信時に EP0O ステータスレジスタ (EP0OS) の DRQO ビッ トが "1" に変わります。DRQO ビットが "1" に変わった時点で , CPU 割込みに入り ます。UDC ステータスレジスタ (UDCS) の SETP ビットを確認し , "1" の場合は受信 バッファにあるコマンドを必要なだけ読み出して ( 必ずしも 8 バイトすべてを読み 出す必要はありません ) デコードし , 各種設定処理をします。 ステータスステージの0バイト応答に備え, 送信バッファにデータを書き込まずに , EP0I ステータスレジスタ (EP0IS) の DRQI ビット ( 割込み要因の DRQI は初期値 "1" のため ) に "0" を書き込んでクリアします。ステータスステージの正常終了確認用 に , EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の DRQIIE に "1" を書き込みま す。また , SETP ビットと割込み要因の DRQO ビットをクリアし , 割込みから復帰 します。 • データステージ後処理 OUT 方向のデータステージが終了すると , EP0O ステータスレジスタ (EP0OS) の DRQO ビットが "1" に変わります。DRQO ビットが "1" に変わった時点で , CPU 割 込みに入ります。まず , EP0O ステータスレジスタ (EP0OS) の SIZE ビットを確認し , 受信したデータ数だけ DMA を起動するか , CPU リードで受信バッファからデータ を読み出します。その後 , 割込み要因の DRQO ビットをクリアして割込みから復帰 します。 • コマンド終了処理 IN 方向のステータスステージが終了すると , EP0I ステータスレジスタ (EP0IS) の DRQI ビットは "1" に変わります。DRQI ビットが "1" に変わった時点で , CPU 割込 みに入り , ステータスステージが正常終了したことを確認できます。その後 , 割込 み要因の DRQI ビットをクリアして戻ります。 914 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 29.4.3 STALL 応答と解除 エンドポイント 0 の場合と , エンドポイント 1 ∼エンドポイント 3 の場合それぞれに対して STALL 応答と解除方法について説明します。 ■ エンドポイント 0 の STALL 応答 / 解除について エンドポイント 0 の STALL 応答 / 解除制御は , EP0 制御レジスタ (EP0C) の STAL ビッ トにて行います。 • STAL ビットのセットタイミング STALL 応答は , コントロール転送のセットアップステージである事を示す SETP ビット =1 検出 (DRQO ビット =1 割込み ) にてコマンドを解釈し , STALL 応答が必 要な場合に STAL ビットをセットします ( 図 29.4-7 参照 )。STAL ビットセット後に 割込み要因 (DRQO ビット ) をクリアしてください。 図 29.4-7 STAL ビットセットのタイミング アイドル期間 データステージ セットアップステージ トークン パケット データ パケット ハンドシェイク パケット トークン パケット データ パケット ハンドシェイク パケット DRQO ビット SETP ビット STAL ビット CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 915 第 29 章 USB ファンクション 29.4 MB91665 シリーズ STAL ビットのクリアタイミング • STALL 解除は , コントロール転送のセットアップステージであることを示す SETP ビット =1 検出 (DRQO ビット =1 割込み ) にて STAL ビットクリアします ( 図 29.48 参照 )。 図 29.4-8 STAL ビットクリアのタイミング (STALCLRCNT=0 時 ) アイドル期間 データステージ セットアップステージ トークン パケット DRQO SETP データ パケット ハンドシェイク パケット トークン パケット データ パケット ハンドシェイク パケット ビット ビット STAL ビット クリアタイミング STAL ビット アイドル時間+2.75 μ s 以内 STALL 応答解除 (STAL ビットクリア ) は , SETP ビット =1 (DRQO ビット =1 割込 み ) を検出してから , 次のデータステージのデータパケット送受信開始前に , STAL ビットクリアしてください。DRQO ビット =1 から , STAL ビットクリアまでの時間 は下記のとおりです ( 転送速度:Full Speed 12Mbps 時 )。下記時間内に STAL ビッ トがクリアされない場合 , データステージのハンドシェイクパケットにて STAL 応 答します。 DRQOビット=1検出からSTALビットクリアまでの時間: アイドル時間+2.75μs以内 ※アイドル期間が最小の 2 ビット転送時間である場合は約 2.9μs 以内となります。 STAL ビットクリアが , 上記時間内で対応できない場合には , USB ホスト側のドラ イバソフトでアイドル時間を長くする等の対応を行ってください。 < 注意事項 > MB91V650 の場合 , STALCLRCNT ビットは存在しませんので , STALCLRCNT=0 時の動 作となります。 916 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 図 29.4-9 STAL ビットのクリアタイミング (STALCLRCNT=1 時 ) アイドル期間 セットアップステージ トークン パケット データ パケット ハンドシェイク パケット データステージ トークン パケット データ パケット ハンドシェイク パケット DRQO ビット SETP ビット STAL ビット STALCLRCNT=1 時には , SETP ビット =1(DRQO ビット =1 割込み ) を検出すると STAL ビットは自動的に "0" にクリアされます。再度,STALL 応答する場合には,STAL ビッ トに "1" を設定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 917 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ エンドポイント 1 ∼エンドポイント 3 の STALL 応答 / 解除について エンドポイント 1 ∼エンドポイント 3 の STALL 応答 / 解除制御は , EP1 ∼ EP3 制御レ ジスタ (EP1C ∼ EP3C) の STAL ビットと内部状態ビットで行われます。 • ソフト処理にて STALL 応答したい場合 ソフト処理でSTALL 応答する場合の手順を図 29.4-10および図 29.4-11に示します。 STALL 応答する場合 , 該当するエンドポイントの STAL ビットをソフトでセットし ます。このとき , 内部状態ビットは変化しません。次に , ホストから STAL ビット がセットされているエンドポイントに対してトランザクションが発生したとき , ハードが自動的に該当エンドポイントの内部状態ビットをセットし , ホストに対し て STALL 応答します。一度 , 内部状態ビットがセットされた後は , STAL ビットを クリアしても , ホストから Clear Feature コマンドが発行されるまで , 内部状態ビッ トはセットされたままとなり , STALL 応答を継続します。また , USB 許可レジスタ (USBEN) の STALCLRCNT ビットに "0" が設定されている場合 , または USB 許可 レジスタ (USBEN) の STALCLRCNT ビットに "1" かつ UDC 制御レジスタ (UDCC) の STALCLREN ビットに "0" が設定されている場合 , Clear Feature コマンドで内部 状態ビットがクリアされても , STAL ビットがセットされている場合は , 該当する エンドポイントに対するトランザクションが発生するたびに内部状態ビットが セットされるため STALL 応答を継続します。したがって , STALL 応答を解除する ためには , STAL ビットをクリアし , さらに Clear Feature コマンドで内部状態ビッ トをクリアする必要があります。USB 許可レジスタ (USBEN) の STALCLRCNT ビッ トに "1", かつ UDC 制御レジスタ (UDCC) の STALCLREN ビットが "1" に設定され ている場合, Clear Featureコマンドで内部状態ビットがクリアされると同時にSTAL ビットもクリアされ , 次のトランザクションに対し , STALL 応答しません。 < 注意事項 > MB91V650 の場合 , STALCLRCNT ビット , STALCLREN ビットは存在しませんので , STALCLRCNT=0またはSTALCLRCNT=1かつUDCC.STALCLREN=0時の動作となります。 918 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 図 29.4-10 ソフト処理にて STALL 応答したい場合 (STAL ビットはソフトでクリア ) USBEN.STALCLRCNT=0 または USBEN.STALCLRCNT=1 かつ UDCC.STALCLREN=0 時 ホスト または ハブ ファンクション EPn (End Point n) ソフトウェア 内部状態ビット STAL ビット 0 0 内部状態ビット STALビット 0 1 STAL ビットを “1”にセット IN/OUT トークン データ( OUT の場合) 内部状態ビット STALビット 1 1 STAL ビットが“1”であるとき, STALL ハンドシェーク トランザクションが発生すると 内部状態ビットが “1” にセット される IN/OUT トークン データ( OUT の場合) EPn に対する トランザクション 内部状態ビットが “1”であると き, トランザクションに対する STALL 応答を継続する。 STALL ハンドシェーク 内部状態ビット IN/OUT トークン 1 STAL ビット 0 STAL ビットを “0”にクリア 内部状態ビットが “1”であると き, トランザクションに対する STALL 応答を継続する。 STAL ビットが“0”であっても STALL ハンドシェーク 内部状態ビットに影響しない。 データ( OUT の場合) Setup トークン EP0 に対する Clear Feature コマンド ( EPn を指定) データ ACK ハンドシェーク Clear Feature コマンド で EPn が指定されると, 内部状態ビットが“0”に クリアされる。 内部状態ビット 0 CM71-10158-1 STAL ビット 0 FUJITSU SEMICONDUCTOR LIMITED 919 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 図 29.4-11 ソフト処理にて STALL 応答したい場合 (STAL ビットはハードで自動的にクリア ) USBEN.STALCLRCNT=1 かつ UDCC.STALCLREN=1 時 ホストまたはHUB ファンクション EPn (End Point n) ソフトウェア 内部状態ビット STALビット 0 0 内部状態ビット STALビット 0 1 STALビットを "1"にセット IN/OUTトークン データ (OUTの場合) 内部状態ビット STALビット 1 1 STALビットが"1"であるとき, STALLハンドシェーク トランザクションが発生する と内部状態ビットが"1"に セットされる IN/OUTトークン データ (OUTの場合) EPnに対する トランザクション 内部状態ビットが"1"である とき, トランザクションに 対するSTALL応答を 継続する。 STALLハンドシェーク 内部状態ビット STALビット 1 1 IN/OUTトークン データ (OUTの場合) 内部状態ビットが"1"である とき, トランザクションに 対するSTALL応答を 継続する。 STALLハンドシェーク Setupトークン EP0に対する Clear Feature コマンド (EPnを指定) データ ACKハンドシェーク Clear Featureコマンドで EPnが指定されると, 内部状態ビットと STALビットが "0"にクリアされる。 内部状態ビット STALビット 0 920 0 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ • ハードが自動で STALL 応答する場合 ハードが自動で STALL 応答する場合の手順を図 29.4-12 に示します。Set Feature コ マンドで STALL 応答設定された場合 , STAL ビットに関係なく , ハードが自動的に 該当エンドポイントの内部状態ビットをセットし , STALL 応答します。一度 , 内部 状態ビットがセットされた後は , STAL ビットに関係なく , ホストから Clear Feature コマンドでクリアされるまで , 内部状態ビットは保持されます。Clear Feature コマ ンドで該当ビットがクリアされた後は , STAL ビットを参照するようになります。し たがって , STALL 応答を解除するには , Clear Feature コマンドで内部状態ビットを クリアする必要があります。 図 29.4-12 ハードが自動で STALL 応答する場合 ファンクション ホスト または ハブ EPn (End Point n) ソフトウェア 内部状態ビット STALビット 0 0 Setup トークン EP0 に対する Set Feature コマンド (EPn を指定) データ( OUT の場合) ACK ハンドシェーク Set Feature コマンドで EPn が指定された場合, 内部状態ビットが “1”に セットされる。 内部状態ビット STALビット 1 0 IN/OUT トークン データ( OUT の場合) EPn に対する トランザクション STALL ハンドシェーク 内部状態が“1”であるとき, トランザクションに対する STALL 応答を継続する。 STAL ビットが“0”であって も内部状態ビットに影響 しない。 Setup トークン EP0 に対する Clear Feature コマンド (EPn を指定) CM71-10158-1 データ ACK ハンドシェーク 内部状態ビット STALビット 0 0 Clear Feature コマンド で EPn が指定されると, 内部状態ビットが“0”に クリアされる。 FUJITSU SEMICONDUCTOR LIMITED 921 第 29 章 USB ファンクション 29.4 29.4.4 MB91665 シリーズ サスペンド機能 バス電源の構成では , サスペンド状態での USB デバイスの消費電力は 500μA 以下にする必 要があります。 USBデバイスがサスペンド状態に移行し, スタンバイモード (時計モードまたはストップモー ド ) に入るまでの動作について説明します。 USB デバイスコアがサスペンド状態を検出すると , UDC ステータスレジスタ (UDCS) の SUSP ビットが "1" に変わります。 サスペンド動作例を図 29.4-13 に示します。 図 29.4-13 サスペンド動作 1ms 1ms サスペンド状態 3ms ホスト →デバイス SOF SOF SOF SUSP リモートウェイクアップサポート の場合 2ms ソフトセット USTP STP • サスペンド処理 USB バス上に 3ms 以上動作がない場合 , USB ファンクションはサスペンドを検出 し , UDC ステータスレジスタ (UDCS) の SUSP ビットが "1" に変わり , 割込み要因 が設定されます。リモートウェイクアップをサポートするデバイスの場合は , ここ からさらに 2ms 待ち ( この時間内はリモートウェイクアップさせないためです ) , ス タンバイモード ( 時計モードまたはストップモード ) に設定します。 922 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 29.4.5 ウェイクアップ機能 USB プロトコルでは , 次の 2 つの手段で USB デバイスをサスペンド状態からウェイクアップ 状態にできます。 • USB デバイスからリモートウェイクアップ • ホストからウェイクアップ ここでは , これらの動作について説明します。 ■ リモートウェイクアップ動作 リモートウェイクアップ動作を図 29.4-14 に示します。 図 29.4-14 リモートウェイクアップ動作 サスペンド状態 ホスト 20ms 1ms 1ms RESUME SOF SOF →デバイス RESUME デバイス→ ホスト INT 端子 STP SUSP 10ms 発振安定時間 外部割込み ソフトクリア USTP RESUM RESUM ソフトセット・クリア USB デバイスでは , 次の順序で処理してください。 1. 外部割込みで USB デバイスをストップモードから復帰させる 2. UDC ステータスレジスタ (UDCS) の SUSP ビットに "0" を書き込んでクリアする 3. UDC 制御レジスタ (UDCC) の USTP ビットに "0" を書き込んでクリアする 4. UDC 制御レジスタ (UDCC) の RESUM ビットに "1" を書き込む 5. UDC 制御レジスタ (UDCC) の RESUM ビットに "0" を書き込んでクリアする CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 923 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ ホストからのウェイクアップ動作 ホストからのウェイクアップ動作を図 29.4-15 に示します。 図 29.4-15 ホスト からのウェイクアップ動作 サスペンド状態 ホスト 20ms 以上 RESUME →デバイス 発振安定時間 STP 1ms 1ms SOF SOF SUSP, USTP, WKUP フラグ ソフトクリア SUSP USTP WKUP USB デバイスでは , 次の順序で処理してください。 1. 発振安定時間が 10ms を超えないように設定する 2. UDC ステータスレジスタ (UDCS) の SUSP ビットに "0" を書き込んでクリアする 3. UDC 制御レジスタ (UDCC) の USTP ビットに "0" を書き込んでクリアする 4. 割込み要因である UDC ステータスレジスタ (UDCS) の WKUP ビットに "0" を書き 込んでクリアする 924 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 29.4.6 DMA 転送機能 USB ファンクションで通信するデータは , 送受信バッファと内蔵 RAM の間で DMA 転送でき ます。DMA 転送は , 次の 2 つのモードから選択できます。 • パケット転送モード • 自動バッファ転送モード ここでは , この 2 つの DMA 転送モードについて説明します。 ■ パケット転送モード 1 パケットずつ転送数を DMA に設定して転送し , 転送終了後に割込み要因をクリアす るモードです。このモードでは , エンドポイント 1 からエンドポイント 3 に対するバッ ファにアクセスできます。DMA を使用する前に , DREQ 選択レジスタ (DREQSEL) に より , DREQ の設定を行ってください。 ● OUT 方向の動作 ホストから USB デバイスへの OUT 方向でバッファをアクセスするタイミングを図 29.4-16 に示します。 図 29.4-16 OUT パケット転送 OUT パケット OUT パケット ホスト →デバイス OUT デバイス OUT DATA0 DATA1 ACK ACK →ホスト DRQ フラグ * CPU クリア DRQ フラグ * CPU クリア DMA 受信バッファリード (DATA0) DMA 受信バッファリード (DATA1) DMAE DRQIE DRQ SIZE DMA 動作許可ビット 0:DMA 動作禁止 1:DMA 動作許可 OUT 方向の転送では , USB デバイスは次の順序で処理してください。 1. DRQ フラグが "1" に変わって割込み処理に入ったら , 転送データ数を確認する 2. 転送データ数分の転送回数とブロックサイズに関するDMAのレジスタ設定を行い , DMA を許可して転送を開始する 3. 転送後 , 次のレジスタの該当するフラグ ( ビット ) をクリアする - EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の DRQ ビット - DMA コントローラ (DMAC) の DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の該当する割込み要因フラグ 割込み処理から復帰します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 925 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ● IN 方向の動作 USB デバイスからホストへの IN 方向でバッファをアクセスするタイミングを図 29.417 に示します。 図 29.4-17 IN パケット転送 IN パケット IN パケット ホスト →デバイス デバイス →ホスト IN DATA0 DRQ フラグ * CPU クリア IN ACK DRQ フラグ * CPU クリア ACK DATA1 DMAE DRQIE DRQ DMA 動作許可ビット 0:DMA 動作禁止 1:DMA 動作許可 DMA 送信バッファライト (DATA0) DMA 送信バッファライト (DATA1) IN 方向の転送では , USB デバイスは次の順序で処理してください。 1. DRQ フラグが "1" に変わって割込み処理に入ったら , 次の IN パケットで転送する 転送データ数分の転送回数とブロックサイズに関するDMAのレジスタ設定を行い , DMA を許可して転送を開始する 2. 転送後 , 次のレジスタの該当するフラグ ( ビット ) をクリアする - EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の DRQ ビット - DMA コントローラ (DMAC) の DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の該当する割込み要因フラグ 割込み処理から復帰します。 926 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ 自動バッファ転送モード 設定した転送データ数分を , 1 回の設定で転送するモードです。 本転送モードでは , 偶数バイトの転送が可能です。奇数バイトを転送する場合は , CPU 転送の処理が必要となります。DMA を使用する前に , DREQ 選択レジスタ (DREQSEL) により DREQ の設定を行ってください。 あらかじめ転送する総データ数を DMA に設定し , 転送許可ビットもセットしておきま す。自動バッファ転送モードが許可されていて (DMAE=1) , ホストからの転送後に DRQ フラグがセットされると , EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の PKS ビッ トに指定したデータ数を転送した後に , 自動で割込み要因がクリアされます。以後 , ホ ストからの転送後に同様の処理を , あらかじめ DMA に設定した転送データ数分まで繰 り返します。この間 CPU からの設定は必要なく , 1 回の設定で転送するのがこのモー ドです。次の転送を行う場合は , 最後のデータ転送後に CPU 割込みに入るので , そこ で DMA コントローラ (DMAC) の再設定を行い , DMA を許可して割込み処理から復帰 します。このモードでは DMAE=1 として使用するので , エンドポイント 1 ∼エンドポ イント 3 に対するバッファアクセスだけが有効です。 ● OUT 方向の動作 ホストから USB デバイスへの OUT 方向でバッファをアクセスするタイミングを図 29.4-18 に示します。 図 29.4-18 OUT 方向転送 ラスト OUT パケット OUT パケット ホスト →デバイス OUT デバイス →ホスト DATA0 OUT ACK DRQ フラグ * 自動クリア DATA1 ACK DRQ フラグ * 自動クリア DMAE DRQIE DRQ DATA0 DATA1 SIZE DMA 動作許可ビット 0:DMA 動作禁止 1:DMA 動作許可 DMA 受信バッファ PKS 分リード DMA 受信バッファ 残り数分リード USB デバイスでは , OUT 方向転送時 , 次の順序で処理してください。 1. 転送する総転送データ数分の転送回数とブロックサイズに関する DMA のレジスタ 設定を行い , DMA を許可して転送を開始する 2. EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の DMAE ビットに "1" を書き込んで自動 バッファ転送モードに設定し , EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の DRQIE ビットに "1" を書き込んで割込みを許可する CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 927 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 3. 転送後, DMAコントローラ(DMAC)のDMAチャネルステータスレジスタ (DCSR0 ∼ DCSR3) の該当する割込み要因フラグをクリアし, 必要に応じてDMA コントローラ (DMAC) を再設定する 割込み処理から復帰します。 奇数バイト分のデータ数を DMA 転送する場合 , 以下のいずれかの方法があります。 EPEDN=0 ( リトルエンディアン ) の場合 • - 最後のデータ転送のみ CPU 転送で行い , 下位バイト (EPxDTL) を読み出す。 - 全データ+ 1 バイトをまとめて DMA 転送してエンディアン変換後に最終データ を捨てる。 図 29.4-19 OUT 方向 奇数バイトの転送例 EPEDN=0 ( リトルエンディアン ) の場合 全データをDMA転送で行う場合 最終データをCPU転送で行う場合 15 0 22 H (2byte目) 11 H (1byte 目) 44 H (4byte目) 33 H (3byte 目) 66 H (6byte 目) 55 H (5byte 目) 88 H (8byte 目) 77 H (7byte 目) 不定 99 H (9byte 目) 15 エンディアン 変換 D M A転送 (読出し) 15 0 22 H (2byte 目) 22 H (2byte目) 11 H (1byte 目) 33 H (3byte 目) 44 H (4byte 目) 44 H (4byte目) 33 H (3byte 目) 55 H (5byte 目) 66 H (6byte 目) 66 H (6byte目) 55 H (5byte 目) 77 H (7byte 目) 88 H (8byte 目) 88 H (8byte目) 不定 E P xD T L のデータをC P U 転送 ( 読出し) E P xD T H /E P xD T L 15 0 11 H (1byte 目) 0 11 H (1byte 目) 22 H (2byte 目) 33 H (3byte 目) 44 H (4byte 目) 55 H (5byte 目) 66 H (6byte 目) 77 H (7byte 目) 77 H (7byte 目) 88 H (8byte 目) 99 H (9byte 目) 99 H (9byte 目) 不定 エンディアン 変換 D M A 転送 ( 読出し) E P xD T H /E P xD T L データは捨てる。 EPEDN=1 ( ビックエンディアン ) の場合 • - 最後のデータ転送のみ CPU 転送で行い , 上位バイト (EPxDTH) を読み出す。 - 全データ+ 1 バイトをまとめて DMA 転送して最終データを捨てる。 図 29.4-20 OUT 方向 奇数バイトの転送例 EPEDN=1( ビックエンディアン ) の場合 最終データをCPU転送で行う場合 15 全データをDMA転送で行う場合 15 0 0 15 15 0 0 11H 22H 11H 22H 11H 22H 11H 22H (1byte目) (2byte目) (1byte目) (2byte目) (1byte目) (2byte目) (1byte目) (2byte目) 33H 33H (3byte目) 44H (4byte目) 33H (3byte目) 44H (4byte目) 33H (3byte目) 44H (4byte目) (3byte目) 44H (4byte目) 55H (5byte目) 66H (6byte目) 55H (5byte目) 66H (6byte目) 55H (5byte目) 66H (6byte目) 55H (5byte目) 66H (6byte目) DMA転送 (読出し) DMA転送 (読出し) 77H 88H 77H 88H 77H 88H 77H 88H (7byte目) (8byte目) (7byte目) (8byte目) (7byte目) (8byte目) (7byte目) (8byte目) 99H (9byte目) 不定 EPxDTH/EPxDTL EPxDTLのデータをCPU転送 (読出し) 99H (9byte目) 不定 EPxDTH/EPxDTL 99H (9byte目) 不定 データは捨てる。 < 注意事項 > MB91V650 の場合 , EPEDN ビットは存在しませんので , EPEDN=0 時の動作となります。 928 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ● IN 方向の動作 USB デバイスからホスト への IN 方向でバッファをアクセスするタイミングを図 29.421 に示します。 図 29.4-21 IN 方向転送 ラストデータ データ ホスト →デバイス デバイス →ホスト IN IN ACK DRQフラグ DATA0 自動クリア DRQフラグ ACK DATA1 自動クリア DMAE DRQIE DRQ DATA1 DATA0 DMA動作許可ビット 0:DMA動作禁止 1:DMA動作許可 DMA送信バッファ 残り数分ライト DMA送信バッファ PKS分ライト USB デバイスでは , IN 方向転送の動作は OUT 方向転送の動作と同じです。 「OUT 方向 の動作」を参照して , 同じ順序で処理してください。 奇数バイト分のデータ数を DMA 転送する場合 , 最後のデータ転送のみ CPU 転送で , 下 位バイト (EPxDTL) に書き込みます。 EPEDN=0 の場合は下位バイト (EPxDTL) に , EPEDN=1 の場合は上位バイト (EPxDTH) に書込みを行ってください。 図 29.4-22 IN 方向 奇数バイトの転送例 EPEDN=0 ( リトルエンディアン ) の場合 最終データをCPU転送で行う場合 15 0 22H (2byte目) 11H (1byte目) 44H (4byte目) 33H (3byte目) 66H (6byte目) 55H (5byte目) 88H (8byte目) 77H (7byte目) 99H (9byte目) DMA転送 (書込み) EPxDTLにデータをCPU転送 (書込み) EPxDTH/EPxDTL CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 929 第 29 章 USB ファンクション 29.4 MB91665 シリーズ 図 29.4-23 IN 方向 奇数バイトの転送例 EPEDN=1 ( ビックエンディアン ) の場合 最終データをCPU転送で行う場合 15 0 11H (1byte目) 22H (2byte目) 33H (3byte目) 44H (4byte目) 55H (5byte目) 66H (6byte目) 77H (7byte目) 88H (8byte目) 99H (9byte目) DMA転送 (書込み) EPxDTHにデータをCPU転送 (書込み) EPxDTH/EPxDTL < 注意事項 > MB91V650 の場合 , EPEDN ビットは存在しませんので , EPEDN=0 時の動作となります。 930 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ NULL 転送機能 29.4.7 USB ファンクションから送信するデータがラストパケットでマックスパケット数のとき , 次 パケットの転送で 0 バイトの転送を自動送信する , NULL 転送モードについて説明します。 自動バッファ転送モードが設定されている状態 (EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の DMAE=1) で , IN 方向のデータ転送要求がきたときに , マックスパケット数の DMA 書込みが行われ , かつ最後のデータ書き込みで DMA カウントデータ数が 0 にな る場合 , ホストから IN 方向の最後のデータ転送要求がきたときに 0 バイトのデータ転 送を自動で設定し, 次のIN方向のデータ転送要求で0バイト送信するモードです。 DMA で最後のデータがバッファに書き込まれた後, ホストから0バイトのデータが読み出さ れるまで , DRQ の割込み要求フラグは設定されません。バッファをアクセスするタイ ミングを図 29.4-24 に示します。 図 29.4-24 NULL データ転送動作 ラスト前データ ラストデータ ホスト →デバイス デバイス →ホスト ACK IN IN ACK DRQフラグ 自動クリア DATA0 0バイトデータ IN DATA1 ACK DATA0 DMAE DRQIE DRQ ラストデータ DATA1 NULE DMA動作許可ビット 0:DMA動作禁止 1:DMA動作許可 DMA送信バッファ MAXパケットライト 割込み要因は セットされません < 注意事項 > NULL 転送機能は , USB デバイスからホストへの IN 転送時にのみ有効な機能です USB デバイスでは , 次の処理をしてください。 1. EP1 ∼ EP3 制御レジスタ (EP1C ∼ EP3C) の DMAE ビットに "1" を書き込む 自動バッファ転送モードに設定されます。 2. EP1 ∼ EP3 ステータスレジスタ (EP1S ∼ EP3S) の DRQIE ビットと NULE ビットに "1" を書き込む 割込みが許可され , NULL 自動転送モードに設定されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 931 第 29 章 USB ファンクション 29.4 29.4.8 MB91665 シリーズ ソフトウェア制御例 初期化 , バスリセット , CPU 転送 , パケット転送 (IN/OUT) , データ数自動転送 (IN/OUT) 時に おけるフローチャートを示します。 ■ 初期化 スタート USBクロック設定 USBEN.USBEN=1 D+プルアップ切断設定 UDCC.RST=1 UDCC.PWC設定 EP0C設定 //エンドポイント設定 //エンドポイント設定 EP1C~EP3C設定 UDCC.RST=0 EP0IS, EP0OS, EP1S~EP3S BFINI=0 VBUS検出 //バッファクリア NO //外割り検出 YES UDCC.HCONX=0 D+プルアップ接続設定 //デバイスの接続 エンド 932 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ バスリセット USB割込み UDCS.BRST=1? YES NO UDCS.BRST=0 EP0IS, EP0OS, EP1S~EP3S BFINI=1 //バッファクリア EP0IS, EP0OS, EP1S~EP3S BFINI=0 エンド CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 933 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ CPU 転送時の制御例 USB 割込み開始 OUT 方向 要因チェック IN 方向 FIFO へのデータ書込み処理 FIFO へのデータ読出し処理 ・ USB のデータリクエストビット (EPx ステータスレジスタ (EPxS) の DRQ:bit10) = 0 USB 割込みフラグクリア ・ USB の割込みコントロールレジスタ (ICR38) をダミーリード ダミーリード 割込み終了 934 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ パケット IN 転送時の制御例 【初期設定】 初期設定開始 DMAC の設定 USB の エンドポイントの設定 割込みレベルの設定 < 注意事項 > DMAC のブロックサイズ (DMA チャネルコントロールレジスタ (DCCR) の BLK[3:0]:bit3-0) は , 1 回に設定してください。 DMA 転送回数レジスタ (DTCR) で転送回数を設定してください。 ・EP 制御レジスタ (EPxC) の設定 < 注意事項 > USB の割込みレベルを最低 (0x1F=31) に設定してください。 ・EP ステータスレジスタ (EPxS) の DRQIE:bit14 = 1 USB の割込み許可 初期設定終了 【DMA 転送終了割込み】 DMA 転送終了 割込み開始 DMA 転送終了割込み フラグクリア しない 次の DMA 転送 ・DMA チャネルステータスレジスタ (DCSR) の NC:bit0 = 0 ・ 総転送データ数が USB の最大転送数 (EP 制御レジスタ (EPxC) の PKS) より大きい場合 する ・USB の割込みレベルと パケット転送で使用する 割込みレベルの設定 DMAC の割込みレベルの 関係を割込み前の状態に戻す。 ( 例 ) DMAC ch.0 の場合 ICR38 < ICR41 該当エンドポイントの USB 割込み禁止 次の DMA 転送の設定 < 注意事項 > DRQ の立上りエッジをみて DMA が起動するので , DRQ クリア より前に次の DMAC 設定しておく。 USB 割込みフラグクリア ・ USB のデータリクエストビット (EPx ステータスレジスタ (EPxS) の DRQ:bit10) = 0 + ・ USB の割込みコントロールレジスタ (ICR38) をダミーリード ダミーリード 割込み終了 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 935 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ パケット OUT 転送時の制御例 【初期設定】 初期設定開始 ・EP 制御レジスタ (EPxC) の設定 USB のエンドポイントの設定 ・EP ステータスレジスタ (EPxS) の DRQIE:bit14 = 1 USB の割込み許可 初期設定終了 【USB 割込み】 USB 割込み開始 ・EPx ステータスレジスタ (EPxS) の SIZE ビットより確認 受信データ数の確認 DMAC の設定 ソフトで DMAC を起動 NO DMA 転送終了 フラグ = 1 < 注意事項 > DMAC のブロックサイズ (DMA チャネルコントロールレジスタ (DCCR) の BLK[3:0]:bit3-0) は , 1 回に設定してください。 DMA 転送回数レジスタ (DTCR) で転送回数を設定してください。 < 注意事項 > ここで USB 割込みフラグ ( (EPx ステータスレジスタ (EPxS) の DRQ) を クリアして割込みから抜けると , エンドポイントの面が切換ってしまいますので , USB 割込みフラグはエンドポイントにアクセスした後にクリアしてください。 ・ソフトでポーリング処理 YES USB 割込みフラグクリア + ダミーリード ・USB のデータリクエストビット (EPx ステータスレジスタ (EPxS) の DRQ:bit10) = 0 ・USB の割込みコントロールレジスタ (ICR38) をダミーリード 割込み終了 936 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ データ数自動 IN 転送時の制御例 【初期設定】 初期設定開始 DMAC の設定 USB のエンドポイントの設定 割込みレベルの設定 < 注意事項 > DMAC のブロックサイズ (DMA チャネルコントロールレジスタ (DCCR) の BLK[3:0]:bit3-0) は , 1 回に設定してください。 DMA 転送回数レジスタ (DTCR) で総転送回数を設定してください。 DMA チャネルコントロールレジスタ (DCCRn) の ST:bit15=0。 DT:bit11=1 に設定してください。 ・EP 制御レジスタ (EPxC) の設定 EP 制御レジスタ (EPxC) の DMAE:bit11 = 1 < 注意事項 > USB の割込みレベルを最低 (0x1F=31) に設定してください。 ・EP ステータスレジスタ (EPxS) の DRQIE:bit14 = 1 USB の割込み許可 初期設定終了 【DMA 転送終了割込み】 DMA 転送終了割込み開始 DMA 転送終了割込み フラグクリア 割込みレベルの設定 ・DMA チャネルステータスレジスタ (DCSR) の NC:bit0 = 0 ・USB の割込みレベルとパケット転送で使用する DMAC の割込みレベルの関 係を割込み前の状態に戻す。 ( 例 ) DMAC ch.0 の場合 ICR38 < ICR41 割込み終了 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 937 第 29 章 USB ファンクション 29.4 MB91665 シリーズ ■ データ数自動 OUT 転送時の制御例 【初期設定】 初期設定開始 DMAC の設定 USB のエンドポイントの設定 割込みレベルの設定 < 注意事項 > DMAC のブロックサイズ (DMA チャネルコントロールレジスタ (DCCR) の BLK[3:0]:bit3-0) は , 1 回に設定してください。 DMA 転送回数レジスタ (DTCR) で総転送回数を設定してください。 DMA チャネルコントロールレジスタ (DCCRn) の ST:bit15=0。 DT:bit11=1 に設定してください。 ・EP 制御レジスタ (EPxC) の設定 EP 制御レジスタ (EPxC) の DMAE:bit11 = 1 < 注意事項 > USB の割込みレベルを最低 (0x1F=31) に設定してください。 ・EP ステータスレジスタ (EPxS) の DRQIE:bit14 = 1 USB の割込み許可 初期設定終了 【DMA 転送終了割込み】 DMA 転送終了割込み開始 DMA 転送終了割込み フラグクリア 割込みレベルの設定 ・DMA チャネルステータスレジスタ (DCSR) の NC:bit0 = 0 ・USB の割込みレベルとパケット転送で使用する DMAC の割込みレベルの 関 係を割込み前の状態に戻す。 ( 例 ) DMAC ch.0 の場合 ICR38 < ICR41 割込み終了 938 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト USB ホストの機能と動作について説明します。 30.1 概要 30.2 構成 30.3 レジスタ 30.4 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 939 第 30 章 USB ホスト 30.1 MB91665 シリーズ 30.1 概要 USB ホストは , 必要最低限のホスト動作を実現し , USB デバイスとデータ転送できる機能で す。 ■ 概要 USB ホストには次の特長があります。 • USB2.0 準拠 • Full Speed 転送の自動検出 / サポート • USB デバイスの接続 / 切断の自動検出 • USB バスへのリセット送出機能のサポート • IN/OUT/SETUP/SOF トークンのサポート • IN トークン時のハンドシェークパケットの自動送出 (STALL 以外 ) • OUT トークン時のハンドシェークパケットの自動検出 • 最大パケット長 256 バイトまでのサポート • 各種エラー (CRC エラー / トグルエラー / タイムアウトエラー ) のサポート • ウェイクアップ機能のサポート • 富士通オリジナルの USB ホスト機能です。動作モードを切り換えることで USB ファ ンクションとしても動作可能です。 <注意事項> USB ホストを使用する場合 , オンチップバスクロック (HCLK) は 13MHz 以上で使用して ください。 940 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.1 MB91665 シリーズ ● USB ホストの仕様概要 USB ホストの仕様概要を表 30.1-1 に示します。 表 30.1-1 USB ホストの仕様概要 ホスト HUB のサポート 転送 転送スピード ○* バルク転送 ○ コントロール転送 ○ インタラプト転送 ○ アイソクロナス転送 Low Speed ○ Full Speed × ○ PRE パケットのサポート × SOF パケットのサポート ○ エラー CRC エラー ○ トグルエラー ○ タイムアウト ○ 最大パケット<受信データ ○ USB デバイスの接続 / 切断の検出 ○ 転送スピードの検出 ○ ○ : サポート × : 未サポート * : Full Speed のみ対応し , HUB 1 段までサポート CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 941 第 30 章 USB ホスト 30.2 MB91665 シリーズ 30.2 構成 USB ホストは , 次のブロックで構成されています。 • CPU I/F • バッファ • UDC I/F • USB バスリセット制御部 • 受信制御部 • 送信制御部 • ホスト送信制御部 ■ USB ホストのブロックダイヤグラム USB ホストのブロックダイヤグラムを図 30.2-1 に示します。 図 30.2-1 USB ホストのブロックダイヤグラム オンチップバス DMA転送 要求 UDC エンドポイント1 バッファ UDC インタフェース USBクロック(48MHz) USBクロック生成部から UDP UDM I/O 割込み エンドポイント2 バッファ ホスト制御部 CPUインタフェース SUSP 942 FUJITSU SEMICONDUCTOR LIMITED UDCC HCNT0,1 HIRQ HERR HSTATE HFCOMP HRTIMER HADR HEOF HFRAME HTOKEN 割込み CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ 30.3 レジスタ USB ホストで使用するレジスタの構成と機能について説明します。 ■ USB ホストのレジスタ一覧 USB ホストのレジスタ一覧を表 30.3-1 に示します。 表 30.3-1 USB ホストのレジスタ一覧 CM71-10158-1 レジスタ略称 レジスタ名 UCCR USB クロック設定レジスタ 参照先 27.3.1 USBSEL USB 選択レジスタ 29.3.1 USBEN USB 許可レジスタ 29.3.2 UDCC UDC 制御レジスタ 29.3.3 EP1C EP1 制御レジスタ 29.3.5 EP2C EP2 制御レジスタ 29.3.5 EP1S EP1 ステータスレジスタ 29.3.11 EP2S EP2 ステータスレジスタ 29.3.11 EP1DTH EP1 データレジスタ上位 29.3.12 EP1DTL EP1 データレジスタ下位 29.3.12 EP2DTH EP2 データレジスタ上位 29.3.12 EP2DTL EP2 データレジスタ下位 29.3.12 HCNT0 ホストコントロールレジスタ 0 30.3.1 HCNT1 ホストコントロールレジスタ 1 30.3.1 HIRQ ホスト割込みレジスタ 30.3.2 HERR ホストエラーステータスレジスタ 30.3.3 HSTATE ホスト状態ステータスレジスタ 30.3.4 HFCOMP SOF 割込み FRAME 比較レジスタ 30.3.5 HRTIMER リトライタイマ設定レジスタ 30.3.6 HADR ホストアドレスレジスタ 30.3.7 HEOF EOF 設定レジスタ 30.3.8 HFRAME FRAME 設定レジスタ 30.3.9 HTOKEN ホストトークンエンドポイントレジスタ 30.3.10 FUJITSU SEMICONDUCTOR LIMITED 943 第 30 章 USB ホスト 30.3 MB91665 シリーズ ■ レジスタビット更新タイミングの UDCC.RST 依存性一覧 表 30.3-2 レジスタビット更新タイミングの UDCC.RST 依存性一覧 レジスタ UDCC.RST=1 のときに HCNT0 更新しないといけない HSTATE レジスタビット EP1C EP2C UDCC.RST=1 のときに HCNT0 初期化されるレジスタ HIRQ ビット (UDCC.RST=0 のときに HERR ( 全ビット ) 更新してください。) ビット HOST CLKSEL EPEN, TYPE, DIR, PKS1 EPEN, TYPE, DIR, PKS2 URST TCAN, RWKIRQ, URIRQ, CMPIRQ, CNNIRQ, DIRQ, SOFIRQ LSTSOF, RERR, TOUT, CRC, TGERR, STUFF, HS HSTATE SOFBUSY, SUSP HFRAME FRAME0, FRAME1 HTOKEN ( 全ビット ) TGGL, TKNEN, ENDPT EP1S EP2S UDCC.RST に影響され HCNT0 ないレジスタビット HCNT1 944 BFINI, DRQ, SPK BFINI, DRQ, SPK RWKIRE, URIRE, CMPIRE, CNNIRE, DIRE, SOFIRE SOFSTEP, CANSEL, RETRY HIRQ CNNIRQ, DIRQ HFCOMP HFRAMECOMP HSTATE TMODE, CSTAT HRTIMER0, HRTIMER1, HRTIMER2 RTIMER0, RTIMER1, RTIMER2 HADR Address HEOF EOF0, EOF1 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ ホストコントロールレジスタ 0,1 (HCNT) 30.3.1 ホストコントロールレジスタ 0,1 (HCNT) は , USB の動作モードおよび割込みの設定を指定 します。 ■ ホストコントロールレジスタ 0,1 (HCNT) 図 30.3-1 ホストコントロールレジスタ 0,1 (HCNT) のビット構成 ホストコントロールレジスタ 1 (HCNT1) bit 属性 初期値 UDCC RST ビット でのリセット可否 15 14 13 12 11 予約 (R/W) 予約 (R/W) 予約 (R/W) 予約 (R/W) 予約 (R/W) (0) (0) (0) (0) (×) (×) (×) 5 10 9 8 SOFSTEP CANCEL RETRY (R/W) (R/W) (R/W) (0) (0) (0) (1) (×) (×) (×) (×) (×) 4 3 2 1 0 × : リセット対象外 ○ : リセット対象 ホストコントロールレジスタ 0 (HCNT0) bit 属性 初期値 UDCC RST ビット でのリセット可否 7 6 RWKIRE URIRE DIRE SOFIRE URST HOST (R/W) (R/W) (R/W) (R/W) (R/W) (R/W) (R/W) (R/W) (0) (0) (0) (0) (0) (0) (0) (0) (×) (×) (×) (×) (×) (×) (○) (×) CMPIRE CNNIRE × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 [bit 15 ∼ bit 11] :予約ビット 予約ビットです。必ず "0" を設定してください。 [bit 10]:SOFSTEP (SOF STEP) SOF 割込み発生選択ビットです。 本ビットに"1"を設定した場合, SOFを実行するごとにSOFによる割込みフラグ (HIRQ. SOFIRQ) が "1" にセットされます。 本ビットに "0" を設定した場合 , SOF 割込み FRAME 比較レジスタ (HFCOMP) の設定 値と SOF の FRAME Number の下位 8 ビットとを比較し , 一致した場合 , SOF による割 込みフラグ (HIRQ.SOFIRQ) が "1" にセットされます。 書込み値 説明 0 HFCOMP の設定により割込み発生 1 CM71-10158-1 SOF を実行するごとに割込み発生 FUJITSU SEMICONDUCTOR LIMITED 945 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> • ホストトークンエンドポイントレジスタ (HTOKEN) によりSOFトークン (TKNEN="001B") を実行した場合 , 本ビットの設定に関係なく , SOF による割込みフラグ (HIRQ.SOFIRQ) は "1" になりません。 • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化され ません。 [bit 9]:CANCEL (token CANCEL enable) トークン中止許可ビットです。 本ビットに"1"を設定した場合, EOF領域 (EOF設定レジスタで領域設定) でホストトー クンエンドポイントレジスタ (HTOKEN) に実行するトークンが書き込まれるとその トークンの実行を中止します。本ビットに "0" を設定した場合 , 実行するトークンが書 き込まれても実行を中止しません。トークンの実行を中止したことはホスト割込みレ ジスタ (HIRQ) の TCAN ビットを読み出すことによってわかります。 書込み値 0 トークン継続 1 トークン中止 説明 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 8]:RETRY (RETRY enable) リトライ許可ビットです。 本ビットに "1" を設定した場合 , NAK および各種エラー (HERR.RERR=1, HERR.TOUT=1, HERR.CRC=1, HERR.TGERR=1, HERR.STUFF=1) が発生すると , そのトークンのリト ライを実行します。リトライはリトライタイマ設定レジスタ (HRTIMER) で設定された 時間だけ実行します。 書込み値 0 リトライしない 1 リトライする 説明 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 946 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ [bit 7]:RWKIRE (Remote WaKe up Interrupt Request Enable) リジューム割込み許可ビットです。 本ビットに "1" を設定した場合 , ホスト割込みレジスタ (HIRQ) の RWKIRQ ビットが "1" になると割込みが発生します。本ビットに "0" を設定した場合 , ホスト割込みレジ スタ (HIRQ) の RWIRQ ビットが "1" になっても割込みは発生しません。 書込み値 0 再起動後割込み禁止 1 再起動後割込み許可 説明 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 6]:URIRE (Usb bus Rest Interrupt Request Enable) バスリセット割込み許可ビットです。 本ビットに "1" を設定した場合 , ホスト割込みレジスタ (HIRQ) の URIRQ ビットが "1" になると割込みが発生します。本ビットに "0" を設定した場合 , ホスト割込みレジスタ (HIRQ) の URIRQ ビットが "1" になっても割込みは発生しません。 書込み値 0 USB バスリセット後割込み禁止 1 説明 USB バスリセット後割込み許可 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 5]:CMPIRE (CoMPletion Interrupt Request Enable) トークン完了割込み許可ビットです。 本ビットに "1" を設定した場合 , ホスト割込みレジスタ (HIRQ) の CMPIRQ ビットが "1" になると割込みが発生します。本ビットに "0" を設定した場合 , ホスト割込みレジ スタ (HIRQ) の CMPIRQ ビットが "1" になっても割込みは発生しません。 書込み値 0 完了時割込み禁止 1 完了時割込み許可 CM71-10158-1 説明 FUJITSU SEMICONDUCTOR LIMITED 947 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 4]:CNNIRE (CoNNection Interrupt Request Enable) Device 接続検出割込み許可ビットです。 本ビットに "1" を設定した場合 , ホスト割込みレジスタ (HIRQ) の CNNIRQ ビットが "1" になると割込みが発生します。本ビットに "0" を設定するとホスト割込みレジスタ (HIRQ) の CNNIRQ ビットが "1" になっても割込みは発生しません。 書込み値 0 デバイス接続時割込み禁止 1 デバイス接続時割込み許可 説明 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 3]:DIRE (Disconnection Interrupt Request Enable) Device 切断検出割込み許可ビットです。 本ビットに "1" を設定した場合 , ホスト割込みレジスタ (HIRQ) の DIRQ ビットが "1" になると割込みが発生します。本ビットに "0" を設定した場合 , ホスト割込みレジスタ (HIRQ) の DIRQ ビットが "1" になっても割込みが発生しません。 書込み値 0 デバイス切断時割込み禁止 1 デバイス切断時割込み許可 説明 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 2]:SOFIRE (Start Of Frame Interrupt Request Enable) SOF 割込み許可ビットです。 本ビットに "1" を設定した場合 , ホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "1" になると割込みが発生します。本ビットに "0" を設定した場合 , ホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "1" になっても割込みは発生しません。 948 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ 書込み値 0 SOF 送信時に割込み禁止 1 説明 SOF 送信時に割込み許可 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 [bit 1]:URST (Usb bus ReSeT) バスリセットビットです。 本ビットに "1" を設定するとバスリセットを実行します。バスリセット実行中 , 本ビッ トは "1" を示し , バスリセットが終了すると本ビットは "0" となります。本ビットに "0" を設定した場合には , 何も行いません。 書込み値 0 USB バス状態保持 1 説明 バスリセット <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" の状態で本ビットに "1" を 設定しても何も実行しません。 • ホスト状態ステータスレジスタ (HSTATE) の SUSP ビットが "1" またはトークン実行 中に本ビットに "1" を設定することは禁止です。 • 本ビットが "1" の間 , ホストコントロールレジスタ (HCNT0, HCNT1) への書込みは禁 止です。 [bit 0]:HOST (HOST mode) ホストモードビットです。 本ビットに "1" を設定するとホストとして動作します。本ビットに "0" を設定した場合 ファンクションとして動作します。 書込み値 0 ファンクションモード 1 ホストモード CM71-10158-1 説明 FUJITSU SEMICONDUCTOR LIMITED 949 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化され ません。 • 本ビットの変更は UDC 制御レジスタ (UDCC) の RST ビットが "1" のときに行ってく ださい。 • 本ビットによって動作モードを変更した場合 , すぐにその動作モードに切り換わりま せん。本ビットを読み出し , 動作モードが切り換わったことを確認してください。 • ホストモードからファンクションモードに変更する場合 , 以下の条件を満たしている ことを確認し , UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定してから変更し てください。 - ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビットが "0" である。 - ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットが "000B" であ る。 - ホスト状態ステータスレジスタ (HSTATE) の SUSP ビットが "0" である。 • ファンクションモードからホストモードに変更する場合 , UDC 制御レジスタ (UDCC) の HCONX ビットに "1" を設定して , かつプルアップ抵抗制御用の汎用ポートをプル アップ切断側に設定し , ホストまたは HUB を切断状態にして変更してください。 950 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ ホスト割込みレジスタ (HIRQ) 30.3.2 ホスト割込みレジスタ (HIRQ) は , USB ホストの割込み要求フラグを示します。TCAN ビッ トを除いてホストコントロールレジスタ (HCNT0, HCNT1) の割込み許可ビットの設定によ り割込みを発生させることができます。 ■ ホスト割込みレジスタ (HIRQ) 図 30.3-2 ホスト割込みレジスタ (HIRQ) のビット構成 ホスト割込みレジスタ (HIRQ) bit 属性 初期値 UDCC RST ビット でのリセット可否 7 6 TCAN (R/W) 予約 (R/W) (0) (○) 5 4 3 RWKIRQ URIRQ CMPIRQ 2 1 0 CNNIRQ DIRQ SOFIRQ (R/W) (R/W) (R/W) (R/W) (R/W) (R/W) (0) (0) (0) (0) (0) (0) (0) (○) (○) (○) (○) (×) (×) (○) × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 [bit 7]:TCAN (Token CANcel flag) トークン中止フラグです。 本ビットが "1" になるとホストコントロールレジスタ 1 (HCNT1) の CANCEL ビットに 従ってトークンの実行が中止されたことを示します。本ビットが "0" のときは , トーク ンの実行が中止されなかったことを示します。本ビットに "0" が書き込まれると本ビッ トは "0" になります。本ビットに "1" が書き込まれてもその書込みは無視されます。 TCAN 読出し時 書込み時 0 トークン中止なし。 本ビットをクリアします。 1 トークン中止あり。 無視されます。 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • 本ビットによる割込みは発生しません。したがって , 割込みで処理したい場合 , SOF に よる割込み処理の中でトークンが中止されたか確認してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 951 第 30 章 USB ホスト 30.3 MB91665 シリーズ [bit 6] :予約ビット 予約ビットです。必ず "0" を設定してください。 [bit 5]:RWKIRQ (Remote WaKe up Interrupt ReQuest) リモートウェークアップ終了フラグです。 本ビットが "1" になるとリモートウェークアップが終了したことを示します。本ビッ トが "0" の場合 , 何も意味を持ちません。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもその書込みは無視されます。 ホストコントロールレジスタ 0 (HCNT0) の RWKIRE ビットが "1" の場合 , 本ビットが "1" になると割込みが発生します。 RWKIRQ 読出し時 書込み時 0 再起動による割込み要求なし。 割込み要因をクリアします。 1 再起動による割込み要求あり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 [bit 4]:URIRQ (Usb bus Reset Interrupt ReQuest) バスリセット終了フラグです。 本ビットが "1" になると USB バスへのリセットが終了したことを示します。本ビット が "0" の場合 , 何も意味を持ちません。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもその書込みは無視されます。 ホストコントロールレジスタ 0 (HCNT0) の URIRE ビットが "1" の場合 , 本ビットが "1" になると割込みが発生します。 URIRQ 読出し時 書込み時 0 USB バスリセットによる割込み要求なし。 割込み要因をクリアします。 1 USB バスリセットによる割込み要求あり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 952 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ [bit 3]:CMPIRQ (CoMPletion Interrupt ReQuest) トークン完了フラグです。 本ビットが "1" になるとトークンが完了したことを示します。本ビットが "0" の場合 , 何も意味を持ちません。本ビットに "0" が書き込まれると本ビットは "0" になります。 本ビットに "1" が書き込まれてもその書込みは無視されます。 ホストコントロールレジスタ 0 (HCNT0) の CMPIRE ビットが "1" の場合 , 本ビットが "1" になると割込みが発生します。 CMPIRQ 読出し時 書込み時 0 トークン完了による割込み要求なし。 割込み要因をクリアします。 1 トークン完了による割込み要求あり。 無視されます。 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • ホスト割込みレジスタ (HIRQ) の TCAN ビットが "1" になっても本ビットは "1" になり ません。 [bit 2]:CNNIRQ (CoNNection Interrupt ReQuest) Device 接続検出フラグです。 本ビットが "1" になると Device の接続を検出したことを示します。本ビットが "0" の 場合 , 何も意味を持ちません。本ビットに "0" が書き込まれると本ビットは "0" になり ます。本ビットに "1" が書き込まれてもその書込みは無視されます。 ホストコントロールレジスタ 0 (HCNT0) の CNNIRE ビットが "1" の場合 , 本ビットが "1" になると割込みが発生します。 CNNIRQ 読出し時 書込み時 0 デバイス接続検出による割込み要求なし。 割込み要因をクリアします。 1 デバイス接続検出による割込み要求あり。 無視されます。 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • ファンクションモードでも Device の接続を検出します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 953 第 30 章 USB ホスト 30.3 MB91665 シリーズ [bit 1]:DIRQ (Disconnection Interrupt ReQuest) Device 切断検出フラグです。 本ビットが "1" になると Device の切断を検出したことを示します。本ビットが "0" の 場合 , 何も意味を持ちません。本ビットに "0" が書き込まれると本ビットは "0" になり ます。本ビットに "1" が書き込まれてもその書込みは無視されます。 ホストコントロールレジスタ 0 (HCNT0) の DIRE ビットが "1" の場合 , 本ビットが "1" になると割込みが発生します。 DIRQ 読出し時 書込み時 0 デバイス切断検出による割込み要求なし。 割込み要因をクリアします。 1 デバイス切断検出による割込み要求あり。 無視されます。 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • ファンクションモードでも Device の切断を検出します。 [bit 0]:SOFIRQ (Start Of Frame Interrupt ReQuest) SOF 開始フラグです。 本ビットが "1" になると SOF トークンの実行を開始したことを示します。本ビットが "0" の場合 , 何も意味を持ちません。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもその書込みは無視されます。 ホストコントロールレジスタ 0 (HCNT0) の SOFIRE ビットが "1" の場合 , 本ビットが "1" になると割込みが発生します。 SOFIRQ 読出し時 書込み時 0 SOF トークン開始による割込み要求なし。 割込み要因をクリアします。 1 SOF トークン開始による割込み要求あり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 954 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ ホストエラーステータスレジスタ (HERR) 30.3.3 ホストエラーステータスレジスタ (HERR) は,ホストモード時のデータ送信および受信中に エラーが発生したかどうかを示すレジスタです。 ■ ホストエラーステータスレジスタ (HERR) 図 30.3-3 ホストエラーステータスレジスタ (HERR) のビット構成 ホストエラーステータスレジスタ (HERR) bit 15 14 13 12 11 10 LSTSOF RERR TOUT CRC TGERR STUFF HS (R/W) (R/W) (R/W) (R/W) (R/W) (R/W) (R/W) (0) (0) (0) (0) (0) (0) (11) (○) (○) (○) (○) (○) (○) (○) 属性 初期値 UDCC RST ビット でのリセット可否 9 8 × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 [bit 15]:LSTSOF (LoST SOF) ロスト SOF フラグです。 本ビットが "1" になると , ホストモードで SOF トークンを実行しようとしたとき , 他の トークンを実行していて SOF トークンが実行できなかったことを示します。本ビット が "0" のときはロスト SOF エラーが検出されていないことを示します。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもその書 込みは無視されます。 LSTSOF 読出し時 書込み時 0 SOF 実行エラーなし。 本ビットをクリアします。 1 SOF 実行エラーあり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 [bit 14]:RERR (Receive Error) 受信エラーフラグです。 本ビットが "1" になると , ホストモード時 , 設定された最大パケット数より多いデータ が受信されたことを示します。受信エラーが検出された場合には , 本レジスタの TOUT ビットも "1" にセットされます。本ビットが "0" のときはエラーが発生していないこと を示します。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもその書込みは無視されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 955 第 30 章 USB ホスト 30.3 MB91665 シリーズ RERR 読出し時 書込み時 0 受信エラーなし。 本ビットをクリアします。 1 最大パケット受信エラー。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 [bit 13]:TOUT (Time OUT) タイムアウトエラーフラグです。 本ビットが "1" になると , ホストモード時 , トークンに対し , 所定時間内に Device から 応答がなかったことを示します。本ビットが "0" のとき , タイムアウトエラーが検出さ れていないことを示します。本ビットに "0" が書き込まれると本ビットは "0" になりま す。本ビットに "1" が書き込まれてもその書込みは無視されます。 TOUT 読出し時 書込み時 0 タイムアウトエラーなし。 本ビットをクリアします。 1 タイムアウトエラーあり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 [bit 12]:CRC (CRC error) CRC エラーフラグです。 本ビットが "1" になるとホストモード時 , CRC エラーが検出されたことを示します。本 ビットが "0" のとき , CRC エラーが検出されていないことを示します。CRC エラーが 発生した場合には , 本レジスタの TOUT ビットも "1" にセットされます。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもそ の書込みは無視されます。 CRC 読出し時 書込み時 0 CRC エラーなし。 本ビットをクリアします。 1 CRC エラーあり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 956 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ [bit 11]:TGERR (ToGgle ERRor) トグルエラーフラグです。 本ビットが "1" になると , ホストモード時 , 受信したトグルとの不一致を示します。本 ビットが "0" のとき , トグルエラーが検出されていないことを示します。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもそ の書込みは無視されます。 TGERR 読出し時 書込み時 0 トグルエラーなし。 本ビットをクリアします。 1 トグルエラーあり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 [bit 10]:STUFF (STUFFing error) スタッフィングエラーフラグです。 本ビットが "1" になるとビットスタッフィングでエラーが検出されたことを示します。 本ビットが "0" のとき , スタッフィングエラーが検出されていないことを示します。ス タッフィングエラーが検出された場合には , 本レジスタの TOUT ビット も "1" にセッ トされます。本ビットに "0" が書き込まれると本ビットは "0" になります。本ビットに "1" が書き込まれてもその書込みは無視されます。 STUFF 読出し時 書込み時 0 スタッフィングエラーなし。 本ビットをクリアします。 1 スタッフィングエラーあり。 無視されます。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 957 第 30 章 USB ホスト 30.3 MB91665 シリーズ [bit 9, bit 8]:HS (Hand Shake status) ハンドシェークステータスフラグです。 本フラグによって送受信のハンドシェーク状態を示します。 Error でハンドシェークが発生しない場合およびホストトークンエンドポイントレジス タ (HTOKEN) の TKNEN ビットでの SOF トークンを終了した場合には NULL を示しま す。 本ビットは送受信終了時に更新します。 表 30.3-3 ハンドシェーク bit9 bit8 0 0 ハンドシェーク ACK 0 1 NAK 1 0 STALL 1 1 NULL <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 958 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ ホスト状態ステータスレジスタ (HSTATE) 30.3.4 ホスト状態ステータスレジスタ (HSTATE) は , デバイスの接続,転送モード等の USB 回路の 状態を示すレジスタです。CLKSEL ビットは , ファンクションモードでも有効ですので注意 してください。 ■ ホスト状態ステータスレジスタ (HSTATE) 図 30.3-4 ホスト状態ステータスレジスタ (HSTATE) のビット構成 ホスト状態ステータスレジスタ (HSTATE) bit 7 予約 6 5 予約 4 3 1 0 SUSP TMODE CSTAT (R/W) (R/W) (R/W) (R) (R) (0) (1) (0) (0) (1) (0) (×) (×) (○) (○) (×) (×) 属性 (-) 予約 (R/W) 初期値 (X) UDCC RST ビット でのリセット可否 (-) CLKSEL SOFBUSY 2 × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 R:リードオンリ −:未定義 X :不定値 [bit 7, bit 6]:予約ビット 予約ビットです。リード時は不定です。ライト時は "0" または "1" どちらを書いても動 作に影響しません。 [bit 5] :予約ビット 予約ビットです。ライト時は必ず "0" を書いてください。リード時は "0" が読み出され ます。 [bit 4]:CLKSEL (CLocK SELect) USB 動作クロック選択ビットです。 書込み値 0 設定禁止 1 Full Speed 用 Clock CM71-10158-1 説明 FUJITSU SEMICONDUCTOR LIMITED 959 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化され ません。 • 本ビットの変更は UDC 制御レジスタ (UDCC) の RST ビットが "1" のときに行ってく ださい。 • 本ビットには必ず "1" を設定してください。"0" を設定することは禁止です。 • オンチップバスクロック (HCLK) は 13MHz 以上で使用してください。 [bit 3]:SOFBUSY (SOF BUSY) SOF ビジィフラグです。 本ビットは , ホストトークンエンドポイントレジスタ (HTOKEN) で SOF トークンを実 行すると本ビットが "1" になり , SOF Timer が動作中を示します。本ビットが "0" のと き , SOF Timer が停止中であることを示します。SOF Timer が動作中のとき , SOF Timer を停止させたい場合 , 本ビットに "0" を書くことによって停止します。本ビットに "1" が書き込まれてもその書込みは無視されます。 SOFBUSY 読出し時 書込み時 0 SOF タイマ停止。 SOF タイマを停止させます。 1 SOF タイマ動作中。 無視されます。 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • SOF Timer を停止させるために本ビットに "0" を書いてもすぐに SOF Timer は停止し ませんので本ビットを読み出すことによって停止したことを確認できます。 [bit 2]:SUSP (SUSPend) サスペンド設定ビットです。 本ビットに "1" を設定するとサスペンド状態になります。本ビットに "1" を設定した状 態で本ビットに "0" を設定する , または USB バスが k-state 状態になったことを検出す るとサスペンド状態が解除され , ホスト割込みレジスタ (HIRQ) の RWIRQ ビットは "1" になります。 表 30.3-4 Suspend 設定 SUSP 960 動作 "1" ライト Suspend "1" 状態で "0" ライト Resume その他 状態保持 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • USB が動作中 (USB バスへのリセット , データの送受信 , SOF Timer 動作中 ) , 本ビッ トに "1" を設定しないでください。 • サスペンド状態でも USB 用クロックを停止することは禁止です。 • 本ビットの設定を変更した場合 , すぐにその状態に変更されるわけではありませんの で本ビットを読み出すことによって変更されたことを確認できます。 [bit 1]:TMODE (Transmission MODE) 転送モードフラグです。 本ビットが "1" のとき , Full Speed Device が接続されたことを示し , 本ビットが "0" のと き , Low Speed Device が接続されたことを示します。ホスト状態ステータスレジスタ (HSTATE) の CSTAT ビットが "1" のとき有効です。 読出し値 説明 0 Low Speed ( 本シリーズは Low Speed には対応していません。) 1 Full Speed <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化され ません。 • オンチップバスクロック (HCLK) は 13MHz 以上で使用してください。 • 本シリーズは Low Speed には対応していません。 [bit 0]:CSTAT (Connect STATus) 接続状態フラグです。 本ビットが "1" のとき , Device が接続されていることを示し , 本ビットが "0" のとき , Device が切断されていることを示します。 読出し値 0 デバイス切断 1 デバイス接続 説明 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 961 第 30 章 USB ホスト 30.3 MB91665 シリーズ SOF 割込み FRAME 比較レジスタ (HFCOMP) 30.3.5 SOF 割込み FRAME 比較レジスタ (HFCOMP) は , SOF トークン時の FRAME Number の下 位 8 ビットと比較するデータを設定するレジスタです。ホストコントロールレジスタ 0 (HCNT0) の SOFSTEP ビットが "0" の場合 , 本レジスタと FRAME Number の下位 8 ビット とを比較し , 比較結果が一致した場合には , SOF 送信開始時にホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "1" になり , ホストコントロールレジスタ 0 (HCNT0) の SOFIRE ビット が "1" の場合 , 割込みが発生します。 ■ SOF 割込み FRAME 比較レジスタ (HFCOMP) 図 30.3-5 SOF 割込み FRAME 比較レジスタ (HFCOMP) のビット構成 SOF 割込み FRAME 比較レジスタ (HFCOMP) bit 15 14 13 12 11 10 9 8 FRAMECOMP (R/W) 属性 (00000000) 初期値 UDCC RST ビット でのリセット可否 (×) × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 [bit 15 ∼ bit 8]:FRAMECOMP FRAME 比較データです。 SOF トークン時の Frame Number の下位 8 ビットと比較するデータを設定します。 ホストコントロールレジスタ 0 (HCNT0) の SOFSTEP ビットが "0" の場合 , SOF トーク ン時 , SOF の Frame Number と本レジスタ値を比較し , 一致すればホスト割込みレジス タ (HIRQ) の SOFIRQ ビットに "1" がセットされます。 ホストコントロールレジスタ 0 (HCNT0) の SOFSTEP ビットが "0" の場合 , 本レジスタ の設定は無効です。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 962 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ リトライタイマ設定レジスタ (HRTIMER) 30.3.6 リトライタイマ設定レジスタ (HRTIMER) は,トークンのリトライ時間を設定するレジスタ です。 ■ リトライタイマ設定レジスタ (HRTIMER) 図 30.3-6 リトライタイマ設定レジスタ (HRTIMER) のビット構成 リトライタイマ設定レジスタ (HRTIMER) bit 7 (23) 6 (22) 5 (21) 4 (20) 3 (19) 2 (18) 1 (17) 予約 (-) 属性 0 (16) RTIMER2 (R/W) 初期値 (X) (00) UDCC RST ビット でのリセット可否 (-) (×) bit 15 14 13 12 11 10 9 × : リセット対象外 ○ : リセット対象 8 RTIMER1 (R/W) 属性 (00000000) 初期値 UDCC RST ビット でのリセット可否 (×) bit 7 6 5 4 × : リセット対象外 ○ : リセット対象 3 2 1 0 RTIMER0 (R/W) 属性 (00000000) 初期値 UDCC RST ビット でのリセット可否 (×) × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 −:未定義 X :不定値 [bit 23 ∼ bit 18] :予約ビット 予約ビットです。リード時は不定です。ライト時は "0" または "1" どちらを書いても動 作に影響しません。 [bit 17 ∼ bit 0]:RTIMER2 ∼ RTIMER0 リトライタイマ設定ビットです。 本レジスタにリトライする時間を設定します。ホストコントロールレジスタ (HCNT1) の RETRY ビットが "1" のとき , トークンが開始されるとリトライタイマが起動され , 1 ビットの転送クロック (Full Speed の場合 , 12MHz) によりタイマが -1 されます。リト ライタイマが 0 になった場合 , そのときのトークンを実行して終了します。 トークンのリトライが EOF 領域で発生した場合には SOF の実行が終了するまでリトラ イタイマは停止します。SOF の実行終了後 , 停止したタイマ値から開始します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 963 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 964 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ ホストアドレスレジスタ (HADR) 30.3.7 ホストアドレスレジスタ (HADR) は,トークンを送信する際のアドレスフィールドに使用さ れるレジスタです。 ■ ホストアドレスレジスタ (HADR) 図 30.3-7 ホストアドレスレジスタ (HADR) のビット構成 ホストアドレスレジスタ (HADR) bit 15 14 13 12 11 予約 (-) Address 初期値 (X) (0000000) UDCC RST ビット でのリセット可否 (-) (×) 属性 10 9 8 (R/W) × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 −:未定義 X:不定値 [bit 15]:予約ビット 予約ビットです。リード時は不定です。ライト時は "0" または "1" どちらを書いても動 作に影響しません。 [bit 14 ∼ bit 8]:Address アドレスビットです。 トークンのアドレスを設定します。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 965 第 30 章 USB ホスト 30.3 30.3.8 MB91665 シリーズ EOF 設定レジスタ (HEOF) EOF 設定レジスタ (HEOF) は , SOF トークン実行前のトークン禁止時間を設定するレジスタ です。SOF 用タイマと本レジスタのデータとを比較し , 本レジスタのデータより SOF タイマ が小さいときに IN トークン , OUT トークン , SETUP トークンのいずれか実行要求があった 場合 , SOF トークン実行後に要求トークンを実行します。これは , ハードウェアで生成する SOF トークンと他のトークンが同時に実行しないようにしています。本レジスタの時間単位 は 1 ビット転送時間です。 ■ EOF 設定レジスタ (HEOF) 図 30.3-8 EOF 設定レジスタ (HEOF) のビット構成 EOF 設定レジスタ (HEOF) bit 15 14 13 12 11 10 予約 (-) EOF1 初期値 (X) (000000) UDCC RST ビット でのリセット可否 (-) (×) 属性 bit 7 9 8 (R/W) 6 5 4 3 × : リセット対象外 ○ : リセット対象 2 1 0 EOF0 (R/W) 属性 (00000000) 初期値 UDCC RST ビット でのリセット可否 (×) × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 −:未定義 X:不定値 [bit 15, bit 14]:予約ビット 予約ビットです。リード時は不定です。ライト時は "0" または "1" どちらを書いても動 作に影響しません。 [bit 13 ∼ bit 0]:EOF1,EOF0 (End Of Frame) EOF ビットです。 SOF 実行前のトークン実行禁止時間を設定します。1 パケット長よりマージンを持っ て設定してください。単位は , 1 ビット転送時間です。 • 設定例 ) MAXPKT=64 バイト,Full Speed の場合, (Token_length + packet_length + header + CRC) × 7/6 + Turn_around_time = (34bit + 546bit) × 7/6 + 36bit = 712.7bit となり,"2C9H" を設定します。 966 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定しても初期化されませ ん。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 967 第 30 章 USB ホスト 30.3 MB91665 シリーズ FRAME 設定レジスタ (HFRAME) 30.3.9 FRAME 設定レジスタ (HFRAME) は , SOF トークン時の FRAME Number を設定するレジス タです。ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットに SOF 起動 をセットすると SOF タイマが起動され , その後 1ms ごとに自動的に SOF が送信されます。 SOF が終了するごとに FRAME 設定レジスタは自動的に +1 されます。 ■ FRAME 設定レジスタ (HFRAME) 図 30.3-9 FRAME 設定レジスタ (HFRAME) のビット構成 FRAME 設定レジスタ (HFRAME) bit 15 14 13 12 11 10 9 予約 (-) FRAME1 初期値 (X) (000) UDCC RST ビット でのリセット可否 (-) (○) 属性 bit 7 6 5 8 (R/W) 4 3 2 1 × : リセット対象外 ○ : リセット対象 0 FRAME0 (R/W) 属性 (00000000) 初期値 UDCC RST ビット でのリセット可否 (○) × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 −:未定義 [bit 15 ∼ bit 11] :予約ビット 予約ビットです。リード時は不定です。ライト時は "0" または "1" どちらを書いても動 作に影響しません。 [bit 10 ∼ bit 0]:FRAME1, FRAME0 フレーム設定ビットです。 SOF の Frame Number を設定します。 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットに SOF を設定す る前に本レジスタに Frame Number を設定してください。 • ホストステータスレジスタ (HSTATE) の SOFBUSY ビットが "1" および SOF トークン 実行中は本レジスタへの書込みは禁止です。 968 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.3 MB91665 シリーズ ホストトークンエンドポイントレジスタ (HTOKEN) 30.3.10 ホストトークンエンドポイントレジスタ (HTOKEN) は , トグル , エンドポイント , トークン を設定するレジスタです。 ■ ホストトークンエンドポイントレジスタ (HTOKEN) 図 30.3-10 ホストトークンエンドポイントレジスタ (HTOKEN) のビット構成 ホストトークンエンドポイントレジスタ (HTOKEN) bit 7 属性 6 5 4 3 2 1 TGGL TKNEN (R/W) (R/W) (R/W) (0) (000) (0000) (○) (○) (○) 初期値 UDCC RST ビット でのリセット可否 0 ENDPT × : リセット対象外 ○ : リセット対象 R/W:リードライト可能 [bit 7]:TGGL (ToGGLe) トグルビットです。 Data のトグルを設定します。送信時は本ビットに従ってトグルデータを送出し , 受信 時は受信したトグルデータと本ビットが示すトグルデータとを比較し , エラー検出に 使用します。 書込み値 0 DATA0 1 説明 DATA1 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットが "000B" のとき に設定してください。 [bit 6 ∼ bit 4]:TKNEN (ToKeN ENable) トークン許可ビットです。 本ビットの設定に従ってトークンを送出します。動作終了後 TKNEN ビットが "000B" になり , ホスト割込みレジスタ (HIRQ) の CMPIRQ ビットが "1" になります。ホストコ ントロールレジスタ 0 (HCNT0) の CMPIRE ビットが "1" に設定されていると , 割込み が発生します。 SOF トークン時 , TGGL ビット , ENDPT ビットの設定は無視されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 969 第 30 章 USB ホスト 30.3 MB91665 シリーズ 表 30.3-5 トークン設定 bit6 bit5 bit4 0 0 0 送出しない 0 0 1 SETUP を送出 0 1 0 IN を送出 0 1 1 OUT を送出 1 0 0 SOF を送出 1 0 1 Isochronous IN を送出 1 1 0 Isochronous OUT を送出 1 1 1 予約 ( 設定禁止 ) 動作 <注意事項> • 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 • PRE パケットはサポートしていません。 • ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビットが "1" のときに TKNEN ビットに "100B" を設定しないでください。 • 本ビットへの書込みはホストモードにしてから書込みを行ってください。 • トークンによる割込みフラグ (CMPIRQ) が "1" になった後 , 再度トークンを発行する場 合には USB 転送クロック (Full Speed 時:12MHz) で 3 サイクル以上待って本ビット に書き込んでください。 • 切断状態 (HSTATE の CSTAT="0") では , 本ビットに書き込んでもトークンは実行され ません。 [bit 3 ∼ bit 0]:ENDPT (ENDPoinT) エンドポイントビットです。 Device への送受信するエンドポイントを設定します。 <注意事項> 本ビットは UDC 制御レジスタ (UDCC) の RST ビットが "1" のとき , 初期値になります。 970 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ 30.4 動作説明と設定手順例 USB ホストの動作について説明します。また , 動作状態を設定するための手順例も示します。 30.4.1 USB デバイスの接続 外部の USB デバイスが接続されたことをソフトウェアで検出する方法について説明します。 ■ ホスト機能の設定 USB ホストを動作させるためには , USB 許可レジスタ (USBEN) で USB の動作を禁止 (USBEN=0) した状態で , USB クロック生成部の設定で USB クロック出力を有効にした 後に , USB の動作を許可 (USBEN=1) してください。 その後にホストとして動作させるために , ホストコントロールレジスタ 0 (HCNT0) の HOST ビットに "1" を書き込みます。 ■ 外部 USB デバイスが非接続 / 接続の状態 外部 USB デバイスが接続されていないときは , プルダウン抵抗で UDP/UDM 端子は "L" レベルになっています。 このとき, ホスト状態ステータスレジスタ (HSTATE) のCSTAT ビットは "0", TMODE ビットは不定となります。外部 USB デバイスが接続されると , ホスト状態ステータスレジスタ (HSTATE) の CSTAT ビットは "1" に変わります。 ■ 外部 USB デバイスの接続検出 外部 USB デバイスが接続されたことを検出すると , ホスト割込みレジスタ (HIRQ) の CNNIRQ ビットが "1" に変わり , ホストコントロールレジスタ 0 (HCNT0) の CNNIRE ビットに "1" が設定されていると , デバイス接続割込み要求が発生します。この割込み 要求をクリアする場合は , ホスト割込みレジスタ (HIRQ) の CNNIRQ ビットに "0" を書 き込んでください。割込みではなくポーリングで USB デバイスの接続を検出する場合 は , ホストコントロールレジスタ 0 (HCNT0) の CNNIRE ビットに "0" を書き込み , ホス ト割込みレジスタ (HIRQ) の CNNIRQ が "1" に変わることを確認するプログラムを作成 してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 971 第 30 章 USB ホスト 30.4 MB91665 シリーズ ■ 相手先 USB デバイスの転送速度の取得とクロック選択 接続が検出された後 , 相手先 USB デバイスの転送可能速度を取得するには , ホスト状 態ステータスレジスタ (HSTATE) の TMODE ビットの値を参照します。転送速度とホ スト状態ステータスレジスタ (HSTATE) の TMODE ビットの関係を表 30.4-1 に示しま す。 表 30.4-1 接続先の転送速度と TMODE の関係 TMODE 接続先の転送速度 Full Speed 1 Low Speed 0 < 注意事項 > 本シリーズは Low Speed には対応していません。 外部 USB デバイスの転送速度を取得した後 , UDC 制御レジスタ (UDCC) の RST ビッ ト が "1" の とき は , 取得 し た転 送速 度に 従っ てホ ス ト状 態ス テー タス レジ ス タ (HSTATE) の CLKSEL ビットを更新してください。 Full Speed デバイスの接続検出タイミング例を図 30.4-1 に示します。 図 30.4-1 Full Speed デバイスの接続検出タイミング例 (HCNT0 の HOST ビット ="0") デバイス接続 UDP 端子 UDM 端子 2.5μs 以上 HSTATE の CSTAT ビット HSTATE の TMODE ビット 不定 HIRQ の CNNIRQ ビット "0" HCNT0 の HOST ビット < 注意事項 > 972 • 外部USBデバイスが接続されてから2.5μs後に, ホスト状態ステータスレジスタ (HSTATE) の CSTAT ビットは "1" に変わります。 • ホスト状態ステータスレジスタ (HSTATE) の TMODE ビットと CSTAT ビットは , ホ ストコントロールレジスタ 0 (HCNT0) の HOST ビットの値にかかわらず更新され , ホ スト割込みレジスタ (HIRQ) の CNNIRQ ビット , DIRQ ビットは条件が成立すれば "1" になります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ 30.4.2 USB バスのリセット ホストモード時の USB バスをリセットする方法について説明します。 ■ USB バスのリセット ホストモード時 , ホストコントロールレジスタ 0 (HCNT0) の URST ビットに "1" を書き 込むと , 10ms 以上の SE0 が送出され , USB バスがリセットされます。USB バスのリ セットが完了すると , ホストコントロールレジスタ 0 (HCNT0) の URST ビットは "0" に 変わり , ホスト割込みレジスタ (HIRQ) の URIRQ ビットが "1" に変わります。そのと き , ホストコントロールレジスタ 0 (HCNT0) の URIRE ビットが "1" に設定されている と割込みが発生します。割込み要求をクリアする場合は , ホスト割込みレジスタ (HIRQ) の URIRQ ビットに "0" を書き込んでください。 USB バスをリセットするときは , 次の点に注意してください。 1. USBバスをリセットする前に, ホスト状態ステータスレジスタ (HSTATE) のCSTAT ビットが "1" になっていて , USB デバイスが接続されていることを確認します。 2. USB バスのリセットを実行すると , ホスト状態ステータスレジスタ (HSTATE) の CSTAT ビットは "0" に変わり , 切断状態になります。このとき , ホスト割込みレジ スタ (HIRQ) の DIRQ ビットは "1" に変わりません。 3. USBバスのリセットの終了後, ホスト状態ステータスレジスタ(HSTATE)のCLKSEL ビットと TMODE ビットを比較します。不一致の場合は , 一致するように CLKSEL ビットを更新してください。更新するときは , UDC 制御レジスタ (UDCC) の RST ビットが "1" のときに実施してください。 4. USB バスのリセットが終了後 , ホスト割込みレジスタ (HIRQ) の CNNIRQ ビットま たはホスト状態ステータスレジスタ (HSTATE) の CSTAT ビットで USB デバイスが 接続されていることを確認してからトークンを実行してください。 USB デバイスへのリセットタイミング例を図 30.4-2 に示します。 図 30.4-2 USB デバイスへのリセットタイミング例 10ms 以上 UDP 端子 UDM 端子 HCNT0 の URST ビット HSTATE の CSTAT ビット HIRQ の URIRQ ビット HIRQ の CNNIRQ ビット HCNT URST ビット への "1" 書込み CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 2.5μs 以上 973 第 30 章 USB ホスト 30.4 MB91665 シリーズ < 注意事項 > USB バスのリセット終了後 , USB デバイスの接続が検出されないと , トークンは発行で きません。 974 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ 30.4.3 トークンパケット トークンパケットを設定する方法について説明します。 各種レジスタ (HADR, EP1C, EP2C, HFRAME, HEOF) に変更がない場合には , 設定は不要で す。 ■ トークンパケットの設定方法 ホストモード時 , 送受信のバッファとしてエンドポイント 1 とエンドポイント 2 のバッ ファを使用します。IN トークン , OUT トークン , SETUP トークンのいずれかを実行す る場合 , 目的のアドレスをホストアドレスレジスタ (HADR) に設定し , 1 パケットの最 大バイト数と , 転送方向を EP1 制御レジスタ (EP1C) または EP2 制御レジスタ (EP2C) の PKS ビットと DIR ビットに設定します。 EP1 制御レジスタ (EP1C) の DIR ビットが "1" の場合は , エンドポイント 1 のバッファ が OUT 方向のバッファとして使用され , エンドポイント 2 のバッファが IN 方向のバッ ファとして使用されます。このとき , EP2 制御レジスタ (EP2C) の DIR ビットに "0" を 書き込んでください。 EP1 制御レジスタ (EP1C) の DIR ビットが "0" のときは , エンドポイント 1 のバッファ が IN 方向のバッファとして使用され , エンドポイント 2 のバッファが OUT 方向のバッ ファとして使用されます。このとき , EP2 制御レジスタ (EP2C) の DIR ビットに "1" を 書き込んでください。 トークンを実行する場合 , 以下の手順で設定します。 1. EP1 制御レジスタ (EP1C) と EP2 制御レジスタ (EP2C) の DIR ビットと PKS ビット を設定します。 2. 使用するエンドポイント n (n は 1 または 2) が OUT 方向であれば , 送信データをエ ンドポイント n (n は 1 または 2) のバッファに送信データを書き込み , EPn ステータ スレジスタ (EPnS:n は 1 または 2) の DRQ ビットに "0" を設定します。IN 方向で あれば , EPn ステータスレジスタ (EPnS:n は 1 または 2) の DRQ ビットを読み出 し , "0" であることを確認します。 3. ホストトークンエンドポイントレジスタ (HTOKEN) に目的のエンドポイント, トー クンおよびトグルデータを設定します。 USB 回路は , その設定されたトークンに従って Sync, トークン , アドレス , エンドポイ ント , CRC5, EOP の順でトークンパケットを送出します (Sync, CRC5, EOP は自動で送 出されます ) 。1 パケット終了後 , ホスト割込みレジスタ (HIRQ) の CMPIRQ ビットが "1" に変わり , ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN が "000B" になります。そのとき , ホストコントロールレジスタ 0 (HCNT0) の CMPIRE ビットが "1" であれば , 割込みが発生します。割込み要求をクリアするには , ホスト割込みレジ スタ (HIRQ) の CMPIRQ ビットに "0" を書き込んでください。 IN/OUT/SETUP トークン実行までのレジスタ設定例を図 30.4-3 に示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 975 第 30 章 USB ホスト 30.4 MB91665 シリーズ 図 30.4-3 IN/OUT/SETUP トークン実行までのレジスタ設定例 HADR に書込み EP1C または EP2C に書込み ( 変更が必要な場合 ) ( 変更が必要な場合 ) HTOKEN に書込み レジスタライト信号 エンドポイント 1/ エンドポイント 2 のバッファ状態を確認 SOF トークンの場合 , EOF 設定レジスタ (HEOF) と FRAME 設定レジスタ (HFRAME) に EOF 時間とフレーム番号を書き込み , ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットに SOF トークンのコードを書き込むと , Sync, SOF トーク ン , フレーム番号 , CRC5 および EOP が送出され , ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビットが "1" に変わり , FRAME 設定レジスタ (HFRAME) が 1 加算されます。このとき , ホスト割込みレジスタ (HIRQ) の CMPIRQ も "1" に変わり , ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットが "000B" にクリ アされます。そのとき , ホストコントロールレジスタ 0 (HCNT0) の CMPIRE ビットが "1" であれば , 割込みが発生します。その後 , 自動的に発生する SOF の場合は , CMPIRQ による割込み要求は発生しません。トークン完了の割込み要求をクリアするには , ホス ト割込みレジスタ (HIRQ) の CMPIRQ に "0" を書き込んでください。 ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビットが "1" の間は , SOF は 1ms ごとに自動的に送出されます。ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビットが "0" に変わる条件 (SOF の停止条件 ) を次に示します。 • ホスト状態レジスタ (HSTATE) の SOFBUSY ビットへの "0" の書込み • USB バスのリセット ( ホストコントロールレジスタ 0 (HCNT0) の URST ビットへの "1" の書込み ) • ホスト状態ステータスレジスタ (HSTATE) の SUSP ビットへの "1" の書込み • USB デバイスの切断 (HSTATE の CSTAT ビットが "0" の場合 ) ホストモードからファンクションモードへ切り換える場合は , ホスト状態ステータス レジスタ (HSTATE) の SOFBUSY ビットに "0" を書き込み , ホスト状態ステータスレジ スタ (HSTATE) の SOFBUSY ビットが "0" に変わったことと , ホストトークンエンドポ イントレジスタ (HTOKEN) の TKNEN ビットが "000B" になっていることおよび , ホス ト状態ステータスレジスタ (HSTATE) の SUSP ビットが "0" になっていることを確認し , UDC 制御レジスタ (UDCC) の RST ビットに "1" を設定してから切り換えてください。 ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビットを再び "1" に変えるに は , SOF トークンをもう 1 度実行してください。 EOF 設定レジスタ (HEOF) は , SOF と他のトークンの同時実行を防止します。EOF 設 定 時 間 か ら SOF 開 始 時 間 ま で の 間 に ホ ス ト ト ー ク ン エ ン ド ポ イ ン ト レ ジ ス タ (HTOKEN) の TKNEN ビットに書き込んだ場合 , 設定したトークンはウェイトされ SOF 実行後にウェイトしているトークンが実行されます。EOF 設定レジスタ (HEOF) の時 間単位は 1 ビット時間で , 例えば EOF 設定レジスタ (HEOF) の End Of Frame ビットに "10H" を書き込んだ場合 , Full Speed モードで 16×1/12MHz=1333.3ns になります。設定 した EOF 設定時間が 1 パケット時間より短い場合 , 他のトークン実行中に SOF 実行が 976 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ 重なることがあります。この場合 , ホストエラーステータスレジスタ (HERR) の LSTSOF ビットが "1" に変わり , SOF は実行されません。ホストエラーステータスレジ スタ (HERR) の LSTSOF が "1" に変わった場合は , EOF 設定レジスタ (HEOF) のデータ を大きくしてください (「30.3.8 EOF 設定レジスタ (HEOF)」を参照 ) 。 SOF タイミングを図 30.4-4 に示します。 図 30.4-4 SOF タイミング SOF 開始 SOF 開始 EOF 設定時間 EOF 設定時間 1ms EOF>1 パケット時間 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 977 第 30 章 USB ホスト 30.4 30.4.4 MB91665 シリーズ データパケット データパケットを実行する方法について説明します。 データパケットは , トークンパケット送出後に次の手順で実行します。 • 送信の場合 1. Sync を自動送出する 2. ホストトークンエンドポイントレジスタ (HTOKEN) の TGGL ビットが "0" の場 合は DATA0, TGGL ビットが "1" の場合は DATA1 を送出する 3. EP1 制御レジスタ (EP1C) の DIR ビットが "1" の場合はエンドポイント 1 のバッ ファ, DIR ビットが "0" の場合はエンドポイント 2 のバッファを選択し , 送信デー タをすべて送出する 4. CRC 16 ビットを送出する 5. EOP 2 ビットを送出する 6. J State 1 ビットを送出する • 受信の場合 1. Sync を受信する 2. トグルデータを受信し , ホストトークンエンドポイントレジスタ (HTOKEN) の TGGL ビットと比較する 3. トグルデータと TGGL ビットが一致した場合 , EP1 制御レジスタ (EP1C) の DIR ビットが "1" であればエンドポイント 2 のバッファ , DIR ビットが "0" であれば エンドポイント 1 のバッファを選択し , 受信データを振り分けていく 4. EOF の受信時に , CRC 16 ビットを検査する ホストコントロールレジスタ 0 (HCNT0) の HOST ビットが "1" のときは , EP1 制御レジ スタ (EP1C) の DIR ビットと EP2 制御レジスタ (EP2C) の DIR ビットには , 反転させた データを書き込んでください。例えば EP1 制御レジスタ (EP1C) の DIR ビットが "0" の ときは , EP2 制御レジスタ (EP2C) の DIR ビットには "1" を書き込みます。 30.4.5 ハンドシェークパケットの動作 送受信相手に自分の状態を通知する , ハンドシェークパケットの動作について説明します。 ハンドシェークパケットは , データ受信側が正常に受信できる状態にあるかを判断し て , 受信側が ACK, NAK, STALL のいずれかを送出します。USB 回路がハンドシェー クパケットを受信した場合は , 受信したハンドシェークパケットの種類がホストエ ラーステータスレジスタ (HERR) の HS ビットに書き込まれます。ハンドシェークパ ケットを送信した場合は , 送信したハンドシェークパケットの種類がホストエラース テータスレジスタ (HERR) の HS ビットに書き込まれます。 978 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ リトライ機能 30.4.6 パケット終了時 , NAK エラーや CRC エラーなどのエラーが発生し , ホストコントロールレジ スタ 1 (HCNT1) の RETRY ビットが "1" の場合 , リトライタイマレジスタ (HRTIMER) に設定 された時間だけ , リトライを続けます。 このリトライ機能の動作について説明します。 STALL またはデバイスの切断以外のエラー ( ホストエラーステータスレジスタ (HERR) の HS ビットが "01B", RERR ビットが "1", TOUT ビットが "1", CRC ビットが "1", STUFF ビットが "1") が発生した場合 , ホストコントロールレジスタ 1 (HCNT1) の RETRY ビットが "1" であれば , そのトークンはリトライされます。リトライの終了条 件を次に示します。 • ホストコントロールレジスタ 1 (HCNT1) の RETRY ビットに "0" を書き込む • リトライタイマの 0 を検出 • SOF によりホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "1" となる。 • ACK を検出 • デバイスが切断されたことを検出 リトライタイマはトークン開始時に起動され , 1 ビットの転送クロックでカウントダウ ンされますが , EOF 領域内でリトライが発生した場合は , カウントは停止します。ホス ト割込みレジスタ (HIRQ) の SOFIRQ ビットが "0" で SOF トークンが終了した場合は , 停止したタイマ値からリスタートされます。リトライタイマが "0" に変わり , パケット が終了した時点でパケットは終了し , ホスト割込みレジスタ (HIRQ) の CMPIRQ ビット に "1" がセットされます。 ホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "0" のときのリトライタイマ動作を 図 30.4-5 に示します。 図 30.4-5 リトライタイマ動作 ( ホスト割込みレジスタ (HIRQ) の SOFIRQ=0) Token 開始 EOF SOF Retry Token 実行 Timer Count Down Timer Stop Timer Restart Retry 発生 リトライが終了すると , その終了パケットの終了情報が各レジスタに書き込まれます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 979 第 30 章 USB ホスト 30.4 30.4.7 MB91665 シリーズ SOF 割込み SOF 割込みの動作について説明します。 ホストコントロールレジスタ 1 (HCNT1) の SOFSTEP ビットが "0" の場合 , SOF 割込み FRAME 比較レジスタ (HFCOMP) と , SOF トークンのフレーム番号の下位 8 ビットが 比較され, 一致するとSOFを送出するときに, ホスト割込みレジスタ (HIRQ) のSOFIRQ ビットが "1" にセットされます。 ホストコントロールレジスタ 1 (HCNT1) の SOFSTEP ビットが "1" の場合 , SOF を送出 するごとにホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "1" にセットされます。 ホストコントロールレジスタ 0 (HCNT0) の SOFIRE ビットが "1" のときに , ホスト割込 みレジスタ (HIRQ) の SOFIRQ ビットが "1" になると割込みが発生します。ホストトー クンエンドポイントレジスタ (HTOKEN) による SOF 実行では , ホスト割込みレジスタ (HIRQ) の SOFIRQ ビットは "1" になりません。 SOF 割込み動作例を図 30.4-6, 図 30.4-7 に示します。 図 30.4-6 SOF 割込み動作例 ( ホストコントロールレジスタ 1 (HCNT1) の SOFSTEP=1 の場合 ) SOF 送信 次 SOF 送信 HIRQ の SOFIRQ ビット ソフトクリア ソフトクリア 図 30.4-7 SOF 割込み動作例 ( ホストコントロールレジスタ 1 (HCNT1) の SOFSTEP=0 の場合 ) SOF 送信 次 SOF 送信 (010) h HFRAME (011) h (011) h HFCOMP HIRQ の SOFIRQ ビット HFRAME 下位 8 ビットと HFCOMP が一致 ホストコントロールレジスタ 1 (HCNT1) の CANCEL ビットに "1" を書き込むと , EOF 領域内でホストトークンエンドポイントレジスタ (HTOKEN) に SOF トークン以外の トークンを設定して , 次の SOF でホスト割込みレジスタ (HIRQ) の SOFIRQ ビットが "1" に変わる場合 , そのトークンは実行されずにホストトークンエンドポイントレジス タ (HTOKEN) の TKNEN ビットは "000B" にクリアされます。このとき , ホスト割込み レジスタ (HIRQ) の CMPIRQ ビットは "1" に変わりません。トークンがキャンセルされ たことは , SOFIRQ ビットが "1" に変わったときにホスト割込みレジスタ (HIRQ) の TCAN ビットでわかります。再度トークンを実行したい場合は , ホスト割込みレジスタ 980 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ (HIRQ) の TCAN ビットに "0" を書き込み , ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットに実行させたいトークンを書き込んでください。 ホストコントロールレジスタ 1 (HCNT1) の CANCEL ビットに "0" を書き込んだ場合は , SOF 送信後 , ホストトークンエンドポイントレジスタ (HTOKEN) に設定されたトーク ンが実行されます。 トークンキャンセル動作例を図 30.4-8, トークン動作例を図 30.4-9 に示します。 図 30.4-8 トークンキャンセル動作例 ( ホストコントロールレジスタ 1 (HCNT1) の CANCEL=1 の場合 ) IN トークンライト EOF 領域 SOF 実行 HIRQ の SOFIRQ ビット HTOKEN の TKNEN ビット (000) b (010) b (000) b "0" HIRQ の CMPIRQ ビット HIRQ の TCAN ビット 図 30.4-9 トークン動作例 ( ホストコントロールレジスタ 1 (HCNT1) の CANCEL =0 の場合 ) IN トークンライト EOF 領域 SOF 実行 IN トークン実行 HIRQ の SOFIRQ ビット HTOKEN の TKNEN ビット (000) b (010) b (000) b HIRQ の CMPIRQ ビット CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 981 第 30 章 USB ホスト 30.4 30.4.8 MB91665 シリーズ エラーステータス USB ホストは各種エラー情報をサポートしています。 ここではエラーステータスについて説明します。 ■ Stuffing Error 6 ビットが連続して "1" の場合は , "0" を 1 ビット挿入することになっていますが , 7 ビッ ト連続して "1" を検出すると Stuffing Error となり , ホストエラーステータスレジスタ (HERR) の STUFF ビットが "1" に変わります。STUFF ビットをクリアするには , STUFF ビットに "0" を書き込んでください。STUFF ビットをクリアしないで次のトークンを 実行した場合は , 次のトークンの終了時に更新されます。 ■ Toggle Error IN トークン時 , データパケットのトグルデータとホストトークンエンドポイントレジ スタ (HTOKEN) の TGGL ビットを比較し , 一致しなかった場合は Toggle Error となり , ホストエラーレジスタ (HERR) の TGERR ビットが "1" に変わります。TGERR ビット をクリアするには , ホストエラーレジスタ (HERR) の TGERR ビットに "0" を書き込ん でください。TGERR ビットをクリアしないで次のトークンを実行した場合は , 次の トークンの終了時に更新されます。 ■ CRC Error IN トークン時 , 受信したデータパケットのデータと CRC を CRC の多項式 G (X)=X16+X15 +X2+1 で計算し , 剰余が "800dH" でなければ CRC error が発生したこと になり , ホストエラーレジスタ (HERR) の CRC ビットが "1" に変わります。CRC ビッ トをクリアするには , ホストエラーレジスタ (HERR) の CRC ビットに "0" を書き込ん でください。CRC ビットをクリアせずに次のトークンを実行した場合は , 次のトーク ンの終了時に更新されます。 ■ Time Out Error 所定時間内にデータパケットやハンドシェークが入力されなかった場合や , 受信デー タ中に SE0 が検出された場合 , Stuffing Error が検出された場合は , ホストエラーステー タスレジスタ (HERR) の TOUT ビットが "1" に変わります。TOUT ビットをクリアする には , ホストエラーレジスタ (HERR) の TOUT ビットに "0" を書き込んでください。 TOUTビットをクリアせずに次のトークンを実行した場合は, 次のトークンの終了時に 更新されます。 ■ Receive Error 受信バッファとして EP1 が使用されている場合は EP1 制御レジスタ (EP1C) の PKS ビッ トの数値が , EP2 が使用されている場合は EP2 制御レジスタ (EP2C) の PKS ビットの数 値が , 受信パケットサイズとなります。その受信パケットサイズよりも多くのデータを 受信した場合 , ホストエラーステータスレジスタ (HERR) の RERR ビットが "1" に変わ ります。RERR ビットをクリアするには , ホストエラーレジスタ (HERR) の RERR ビッ トに "0" を書き込んでください。RERR ビットをクリアせずに次のトークンを実行した 場合は , 次のトークンの終了時に更新されます。 982 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ パケット終了 30.4.9 パケット終了時の動作について説明します。 USB ホストで 1 パケット終了すると , ホスト割込みレジスタ (HIRQ) の CMPIRQ ビッ トが "1" に変わります。そのとき , ホストコントロールレジスタ 0 (HCNT0) の CMPIRE ビットが "1" のときに割込み要求が発生します。 1 パケット終了すると以下のタイミングで割込みフラグが発生します。 ホストトークンエンドポイントレジスタ (HTOKEN) のTKNENビットが"001B", "010B", または "011B" (SETUP トークン , IN トークン , または OUT トークン ) のときのパケッ ト終了タイミング例を図 30.4-10 に示します。 図 30.4-10 ホスト割込みレジスタ (HIRQ) の CMPIRQ ビットセットタイミング例 1 HTOKEN の TKNEN ビットに書込み トークンパケット J-ST Sync TKN ADR ENDPT CRC5 EOP データパケット J-ST Sync TGGL DATA CRC16 ハンドシェークパケット EOP J-ST Sync ACK EOP J-ST CMPIRQ ビット (HIRQ) J-ST:J State TKN:トークン ADR:アドレス ENDPT:エンドポイント TGGL:トグル ホストトークンエンドポイントレジスタ (HTOKEN) の TKNEN ビットが "100B" (SOF トークン ) のときのパケット終了タイミング例を図 30.4-11 に示します。 図 30.4-11 ホスト割込みレジスタ (HIRQ) の CMPIRQ ビットセットタイミング例 2 HTOKEN の TKNEN ビットに書込み J-ST Sync TKN FRAME CRC5 EOP J-ST CMPIRQ ビット (HIRQ) J-ST:J State TKN:トークン FRAME:フレーム番号 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 983 第 30 章 USB ホスト 30.4 30.4.10 MB91665 シリーズ サスペンド・リジューム USB ホストではサスペンドとリジュームをサポートしています。 サスペンドとリジュームの動作について説明します。 ■ サスペンド動作 ホスト状態ステータスレジスタ (HSTATE) の SUSP ビットに "1" を書き込むと , USB バ スがハイインピーダンス状態になり , クロックが必要ない回路ブロックは停止し , USB 回路はサスペンド状態になります。サスペンド状態になると , ホスト状態ステータスレ ジスタ (HSTATE) の SUSP ビットは "1" に変わります。 USB バスのリセット中 , ホスト状態ステータスレジスタ (HSTATE) の SOFBUSY ビッ トが "1" のとき , データの送受信中はサスペンドに設定しないでください。また , サス ペンド中に USB へ供給しているクロックを停止させないでください。クロックを停止 させる動作には , 次の動作があります。 • ストップモードまたは時計モードへの遷移 • USB クロック設定レジスタ (UCCR) の UCEN ビットに "0" を書き込む ■ リジューム動作 次のいずれかの条件が成立したときに , サスペンド状態からリジュームの動作が開始 されます。 1. ホスト状態ステータスレジスタ (HSTATE) の SUSP ビットに "0" の書込み 2. UDP/UDM 端子が K State になったことを検出 3. デバイスが切断されたことを検出 4. デバイスが接続されたことを検出 ホスト割込みレジスタ (HIRQ) の RWKIRQ ビットが "1" に変わると , トークンの発行が 可能になります。 条件 1, 2, 3, 4 によるリジューム動作を図 30.4-12, 図 30.4-13, 図 30.4-14, 図 30.4-15 に示 します。 図 30.4-12 レジスタによるリジューム動作 (Full Speed モード時 ) HSTATE の SUSP ビットが "1" のとき , HSTATE の SUSP ビットに "0" 書込み UDP 端子 UDM 端子 20ms * 1.33ms * 1bit 時間 HIRQ の RWKIRQ ビット : USB ホストからの出力 : Pull-Up, Pull-Down 抵抗によるドライブ *:数値は保証するものではありません。 984 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ 図 30.4-13 UDP/UDM 端子が K State を検出したことによる リジューム動作 (Full Speed モード ) UDP 端子 UDM 端子 20ms * 1.33ms * 1bit 時間 HIRQ の RWIRQ ビット : USB ホストからの出力 : デバイスからの出力 : Pull-Up, Pull-Down 抵抗によるドライブ *:数値は保証するものではありません。 図 30.4-14 デバイス切断によるリジューム動作 切断 UDP 端子 UDM 端子 HIRQ の RWKIRQ ビット (RWKIRE=1) HIRQ の DIRQ ビット (DIRE=1) 割込み発生 HSTATE の CSTAT ビット 2.5μs 以上 : Pull-Up, Pull-Down 抵抗によるドライブ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 985 第 30 章 USB ホスト 30.4 MB91665 シリーズ 図 30.4-15 デバイス接続によるリジューム動作 接続 UDP 端子 UDM 端子 HIRQ の RWKIRQ ビット (RWKIRE=1) HIRQ の CNNIRQ ビット (CNNIRE=1) 割込み発生 HSTATE の CSTAT ビット 2.5μs 以上 : Pull-Up, Pull-Down 抵抗によるドライブ 986 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ 30.4.11 USB デバイスの切断 USB デバイスの切断動作について説明します。 UDP/UDM 端子がともに 2.5μs 以上 "L" レベルになると , USB デバイスが切断されたと 判断され , ホスト状態ステータスレジスタ (HSTATE) の CSTAT ビットが "0" に変わり , ホスト割込みレジスタ (HIRQ) の DIRQ ビットは "1" に変わります。そのとき , ホスト コントロールレジスタ 0 (HCNT0) の DIRE ビットが "1" であれば , 割込みが発生しま す。 この割込み要求をクリアしたい場合は, ホスト割込みレジスタ (HIRQ) のDIRQビッ トに "0" を書き込んでください。 USB バスのリセットを実行すると , USB デバイスが切断されたと判断され , ホスト状 態レジスタ (HSTATE) の CSTAT ビットは "0" に変わりますが , ホスト割込みレジスタ (HIRQ) の DIRQ ビットは "1" に変わりません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 987 第 30 章 USB ホスト 30.4 30.4.12 MB91665 シリーズ USB ホストの各トークンフローチャート USB ホストの各トークンのフローチャートは以下のとおりです。 ■ 初期化 , デバイス検出 スタート USBクロック設定 USBEN.USBEN=1 // USB動作許可 UDCC.RST=1 //ホストモード設定 HCNT0.HOST=1 EP1C 設定 EP2C 設定 HIRQ.CNNIRQ=1? NO //デバイスの接続 YES HSTATE.TMODE=1? NO YES // Full Speed検出 HSTATE.CLKSEL=1 HSTATE.CLKSEL=設定値? // Low Speed検出 エラー処理 ( 非サポート) NO YES UDCC.RST=0 HCNT0.URST=1 HIRQ.URIRQ=1? //バスリセット NO YES HIRQ.CNNIRQ=1? NO YES UDCC.RST=1 HSTATE.TMODE=1? NO YES // Full Speed検出 HSTATE.CLKSEL=1 HSTATE.CLKSEL=設定値? // Low Speed 検出 エラー処理 ( 非サポート) NO YES エンド 988 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ ■ IN, OUT, SETUP トークン INトークン HADR 設定 EP1C 設定 // 転送方向選択,パケットサイズ設定 EP2C 設定 // 転送方向選択,パケットサイズ設定 EP1S.BFINI=0 EP2S.BFINI=0 HTOKEN 設定 HIRQ.CMPIRQ=1? // トグル,エンドポイント,IN 設定 NO YES HERR.LSTSOF=1? YES NO HERR.TOUT=1? YES NO HERR.TGERR=1? YES NO HERR.HS=00? NO YES 受信データ読出し(EPnDT) EPnS.DRQ=0 エラー処理 // n=1 or 2 // n=1 or 2 EP1S.BFINI=1 EP2S.BFINI=1 エンド CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 989 第 30 章 USB ホスト 30.4 MB91665 シリーズ OUTトークン HADR 設定 EP1C 設定 // 転送方向選択,パケットサイズ設定 EP2C 設定 // 転送方向選択,パケットサイズ設定 EP1S.BFINI=0 EP2S.BFINI=0 エニュメレーション? NO 送信データ書込み(EPnDT) // Null Frame YES // n=1 or 2 EPnS.DRQ=0 // n=1 or 2 HTOKEN 設定 // トグル,エンドポイント,OUT 設定 HIRQ.CMPIRQ=1? NO YES HERR.LSTSOF=1? YES NO HERR.TOUT=1? YES NO HERR.HS=00? NO YES EP1S.BFINI=1 EP2S.BFINI=1 エンド 990 エラー処理 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 30 章 USB ホスト 30.4 MB91665 シリーズ Setupトークン HADR 設定 EP1C 設定 // 転送方向選択,パケットサイズ設定 EP2C 設定 // 転送方向選択,パケットサイズ設定 EP1S.BFINI=0 EP2S.BFINI=0 エニュメレーション? // Null Frame YES NO Setupデータ書込み(EPnDT) // n=1 or 2 EPnS.DRQ=0 // n=1 or 2 HTOKEN 設定 HIRQ.CMPIRQ=1? // トグル,エンドポイント, OUT設定 NO YES HERR.LSTSOF=1? YES NO HERR.TOUT=1? YES NO HERR.HS=00? NO YES EP1S.BFINI=1 EP2S.BFINI=1 エンド CM71-10158-1 エラー処理 FUJITSU SEMICONDUCTOR LIMITED 991 第 30 章 USB ホスト 30.4 MB91665 シリーズ ■ SOF トークン SOFトークン HFRAME 設定 HEOF 設定 HTOKEN 設定 HIRQ.CMPIRQ=1? // SOF設定(TGGL, ENDPT は無視) NO YES HERR.LSTSOF=1? NO YES エラー処理 エンド 992 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMAコントローラ (DMAC) DMA コントローラ (DMAC) の機能と動作について 説明します。 31.1 概要 31.2 構成 31.3 レジスタ 31.4 割込み 31.5 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 993 第 31 章 DMA コントローラ (DMAC) 31.1 MB91665 シリーズ 31.1 概要 DMA コントローラ (DMAC) は , DMA (Direct Memory Access) 転送を行います。CPU を介さ ずにデータを高速で転送できるため , システム性能を高めることができます。 本製品は DMA コントローラ (DMAC) を 4 チャネル内蔵しています。 ■ 概要 DMA コントローラ (DMAC) の特長について説明します。 • アドレス空間:32 ビットのアドレス空間 (4G バイト ) • 転送モード:次の 3 種類から選択できます。 - ブロック転送 転送要求が発生するとデータを 1 ブロック転送するモードです。1 ブロックの データを転送後 , 再度転送要求を検出すると , 次のデータを 1 ブロック転送しま す。これを設定した転送回数繰り返すモードです。 - バースト転送 1 度 , 転送要求が発生するとすべてのデータを転送するまで , 1 ブロックずつ連 続で転送するモードです。 - デマンド転送 1 度 , 転送要求が発生すると , 転送要求が取り下げられるか転送が終了するまで 連続でデータを転送するモードです。また , データ転送が終了したときに転送回 数をリロードする設定になっている場合は , 転送要求が取り下げられるまで転 送をし続けます。 • データサイズ:転送するデータのサイズ ( 幅 ) を次の 3 種類から選択できます。 - 8 ビット - 16 ビット - 32 ビット • ブロックサイズ:1 ∼ 16 の範囲で設定できます。 • 転送回数:1 ∼ 65535 回の範囲で設定できます。 • アドレス更新:設定したデータサイズ (8ビット/16ビット/32ビット) のデータを転送 するたびに転送元 / 転送先のアドレスを更新できます。更新方法を次の 3 種類から 選択できます。 994 - アドレス増加 - アドレス減少 - 更新しない ( 転送元 / 転送先のアドレスを固定する ) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.1 MB91665 シリーズ • リロード機能:設定した転送回数のデータを転送し終わったときに次の情報をリ ロードするかどうかを設定できます。 • - 転送元のアドレス - 転送先のアドレス - 転送回数 転送要求:次の 4 種類の方法で発生できます - ソフトウェアで転送要求を発生 - 周辺機能の割込み要求の発生を検出して転送要求を発生 - オンチップバス IP ( スレーブインタフェース , USB ホスト , USB ファンクション ) の割込み要求の発生を検出して転送要求を発生 転送モードによって , 転送要求を発生させる要因 ( 転送要求元 ) が異なります。 転送モードと転送要求元の対応を表 31.1-1 に示します。 表 31.1-1 転送モードと転送要求元の対応 転送要求元 ブロック転送 バースト転送 デマンド転送 ソフトウェア ○ ○ × 周辺機能の割込み要求 ○ ○ × オンチップバス USB ホスト IP USB ファンクション ○ × ○ ○ × ○ • 優先順位:複数の転送要求が発生したときの優先順位を次の 2 種類から選択できま す。 - 固定 チャネルの若い番号が優先されます。 ch.0> ch.1> ch.2> ch.3 の順番 - ラウンドロビン 次のように転送を開始したチャネルの優先順位が一番低くなり , そのチャネル より下位にあったチャネルの優先順位が繰り上がります。 例 ) ch.0 → ch.1 の順に転送を行った場合 初期状態:ch.0 > ch.1> ch.2> ch.3 ch.0 転送後:ch.1> ch.2> ch.3> ch.0 ch.1 転送後:ch.2> ch.3> ch.0 > ch.1 • CM71-10158-1 割込み要求:次の場合に割込み要求を発生できます。 - DMA 転送の正常終了時 - DMA 転送の異常終了時 - 転送停止要求の発生時 FUJITSU SEMICONDUCTOR LIMITED 995 第 31 章 DMA コントローラ (DMAC) 31.1 MB91665 シリーズ ■ 用語の定義 DMA コントローラ (DMAC) で使用する各用語を図 31.1-1 に示します。 図 31.1-1 DMA コントローラ (DMAC) の各用語 1転送単位 SA(R) DA(W) SA(R) DA(W) ブロックサイズ(1~16) 1ブロック 1ブロック 1ブロック 転送回数(1~65535) [1 転送単位 ] 転送元アドレス (SA:Source Address) 読出し (R:Read) と転送先アドレス (DA:Destination Address) 書込み (W:Write) の 1 つの最小転送のこと。 [ ブロックサイズ ] DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) のブロックサイズビット (bit3 ∼ bit0:BLK3 ∼ BLK0) で設定する ,「1 転送単位」の転送回数のこと。 [1 ブロック ] 「1 転送単位」× 「ブロックサイズ」のこと。 [ 転送回数 ] DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) で設定する ,「1 ブロック」の転送回数のこと。 996 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.2 MB91665 シリーズ 31.2 構成 DMA コントローラ (DMAC) の構成を示します。 ■ DMA コントローラ (DMAC) のブロックダイヤグラム DMA コントローラ (DMAC) のブロックダイヤグラムを図 31.2-1 に示します。 DMA コントローラ (DMAC) は図 31.2-1 内の DMA コントローラ (DMAC) と記載され ている部分になります。 図 31.2-1 DMA コントローラ (DMAC) のブロックダイヤグラム フラッシュ メモリ / マスク ROM CPU RAM オンチップ バス IP オンチップバス 周辺バス ブリッジ DMAC マスタインタフェース 外部バス I/F DMAC スレーブ インタフェース 周辺 I/O 割込み要求 レジスタ レジスタ 制御 優先順位判定 転送要求 受付 DMA 転送要求 DMA 転送停止要求 周辺バス エンジン・ 転送先読出し 転送先書込み 割込み コントローラ データ バッファ 周辺機能の割込み要求による転送要求 , 転送停止要求 オンチップバス IP からの転送要求 , 転送停止要求 転送承認 / 転送終了 転送承認 最終転送 DMA コントローラ (DMAC) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 997 第 31 章 DMA コントローラ (DMAC) 31.2 • MB91665 シリーズ エンジン・転送先読出し / 転送先書込み部 DMA転送の転送先からデータを読み出したり, 転送先にデータを書き込んだりしま す。 • 優先順位判定回路 DMA 転送を行うチャネルの優先順位を判定する回路です。 • 転送要求受付部 DMA 転送要求を受け付けます。 • 転送受付 / 転送終了部 転送受付や転送終了を出力します。 ■ クロック DMA コントローラ (DMAC) で使用するクロックを表 31.2-1 に示します。 表 31.2-1 DMA コントローラ (DMAC) で使用するクロック クロック名 動作クロック 998 内容 オンチップバスクロック (HCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ 31.3 レジスタ DMA コントローラ (DMAC) で使用するレジスタの構成と機能について説明します。 ■ レジスタ一覧 DMA コントローラ (DMAC) のレジスタ一覧を表 31.3-1 に示します。 表 31.3-1 DMA コントローラ (DMAC) のレジスタ一覧 チャネル 共通 0 1 2 3 CM71-10158-1 レジスタ略称 レジスタ名 DMACR DMA コントロールレジスタ 参照先 31.3.1 DILVR DMA 転送抑止割込みレベルレジスタ 31.3.7 DCCR0 DMA チャネルコントロールレジスタ 0 31.3.5 DCSR0 DMA チャネルステータスレジスタ 0 31.3.6 DTCR0 DMA 転送回数レジスタ 0 31.3.4 DSAR0 DMA 転送元アドレスレジスタ 0 31.3.2 DDAR0 DMA 転送先アドレスレジスタ 0 31.3.3 DCCR1 DMA チャネルコントロールレジスタ 1 31.3.5 DCSR1 DMA チャネルステータスレジスタ 1 31.3.6 DTCR1 DMA 転送回数レジスタ 1 31.3.4 DSAR1 DMA 転送元アドレスレジスタ 1 31.3.2 DDAR1 DMA 転送先アドレスレジスタ 1 31.3.3 DCCR2 DMA チャネルコントロールレジスタ 2 31.3.5 DCSR2 DMA チャネルステータスレジスタ 2 31.3.6 DTCR2 DMA 転送回数レジスタ 2 31.3.4 DSAR2 DMA 転送元アドレスレジスタ 2 31.3.2 DDAR2 DMA 転送先アドレスレジスタ 2 31.3.3 DCCR3 DMA チャネルコントロールレジスタ 3 31.3.5 DCSR3 DMA チャネルステータスレジスタ 3 31.3.6 DTCR3 DMA 転送回数レジスタ 3 31.3.4 DSAR3 DMA 転送元アドレスレジスタ 3 31.3.2 DDAR3 DMA 転送先アドレスレジスタ 3 31.3.3 FUJITSU SEMICONDUCTOR LIMITED 999 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA コントロールレジスタ (DMACR) 31.3.1 DMA コントローラ (DMAC) 全体を制御するレジスタです。 DMA コントロールレジスタ (DMACR) のビット構成を図 31.3-1 に示します。 図 31.3-1 DMA コントロールレジスタ (DMACR) のビット構成 bit 属性 初期値 bit 属性 初期値 bit 属性 初期値 bit 属性 初期値 31 30 29 28 27 26 25 24 DME R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 0 0 0 0 23 22 21 20 19 18 17 16 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 0 0 0 0 15 14 13 12 11 10 9 8 AT 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 予約 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:リード / ライト可能 < 注意事項 > このレジスタへは必ずワードアクセスしてください。 [bit31]:DME (DMA 動作許可ビット ) DMA コントローラ (DMAC) 全体の動作を禁止 / 許可します。 書込み値 1000 説明 0 DMA コントローラ (DMAC) 全体の動作を禁止します。 1 DMA コントローラ (DMAC) 全体の動作を許可します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ < 注意事項 > • このビットに "0" を書き込んで DMA コントローラ (DMAC) 全体の動作を禁止した場合 は , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットでチャネ ル動作を許可 (CE=1) しても DMA 転送は行われません。 • DMA 転送中にこのビットに "0" が書き込まれると , 転送中のデータを 1 ブロック転送 後 , 転送を停止します。 [bit30 ∼ bit16]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit15]:AT ( 優先順位設定ビット ) 複数の転送要求が発生したときの優先順位を次のいずれかに設定します。 • 固定:チャネルの若い番号が優先されます。 • ラウンドロビン:1 ブロックのデータを転送するたびに優先順位の判定を行います。 転送を開始したチャネルの優先順位が一番低くなり , そのチャネルより下位にあっ たチャネルの優先順位が繰り上がります。 例 ) ch.0 → ch.1 の順に転送を行った場合 初期状態:ch.0 > ch.1> ch.2> ch.3 ch.0 転送後:ch.1> ch.2> ch.3> ch.0 ch.1 転送後:ch.2> ch.3> ch.0 > ch.1 書込み値 説明 0 固定 1 ラウンドロビン < 注意事項 > DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の BLK3 ∼ BLK0 ビットで設定 したブロックを転送するたびに , このビットで設定した優先順位の判定が行われます。 デマンド転送で転送中は優先順位の判定は行われません。 [bit14 ∼ bit0]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 1001 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) 31.3.2 転送元のアドレスを設定するレジスタです。チャネルごとにこのレジスタが用意されていま す。 DMA転送元アドレスレジスタ (DSAR0∼DSAR3) のビット構成を図 31.3-2に示します。 図 31.3-2 DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) のビット構成 bit 31 0 D31 ∼ D0 R/W 属性 X 初期値 R/W:リード / ライト可能 X:不定 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の SAC1, SAC0 ビットで , 転 送元アドレスを更新する設定 (SAC1, SAC0=00 または 01) にしておくと , TS1, TS0 ビッ トで設定したサイズの DMA 転送が 1 回終了するたびに , このレジスタの値 ( アドレス ) が更新されます。 また , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定したブロック数分のデータ転 送が終了すると , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の SAR ビッ トの設定によって , このレジスタの値は次のようになります。 • SAR=0:転送終了後 , このレジスタの値が最後にアクセスしたアドレスの次のアド レスになります。 • SAR=1:転送終了後 , このレジスタの値が転送前に書き込んだ値に戻ります。 < 注意事項 > このレジスタへは必ずワードでアクセスしてください。 1002 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) 31.3.3 転送先のアドレスを設定するレジスタです。チャネルごとにこのレジスタが用意されていま す。 DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) のビット構成を図 31.3-3 に示しま す。 図 31.3-3 DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) のビット構成 bit 31 0 D31 ∼ D0 R/W 属性 X 初期値 R/W:リード / ライト可能 X:不定 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の DAC1, DAC0 ビットで , 転 送先アドレスを更新する設定 (DAC1, DAC0=00 または 01) にしておくと , TS1, TS0 ビッ トで設定したサイズの DMA 転送が 1 回終了するたびに , このレジスタの値 ( アドレス ) が更新されます。 また , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定したブロック数分のデータ転 送が終了すると , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の DAR ビッ トの設定によって , このレジスタの値は次のようになります。 • DAR=0:転送終了後 , このレジスタの値が最後にアクセスしたアドレスの次のアド レスになります。 • DAR=1:転送終了後 , このレジスタの値が転送前に書き込んだ値に戻ります。 < 注意事項 > このレジスタへは必ずワードでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1003 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) 31.3.4 全部で何ブロックのデータを転送するかを 1 回∼ 65535 回の範囲で設定するレジスタです。 また , この値を読み出すと , 残り何ブロックのデータを転送するかを知ることができます。 チャネルごとにこのレジスタが用意されています。 1 ブロック転送するたびにこのレジスタの値が 1 つ減り , このレジスタの値が "0" にな ると転送が終了します。 DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) のビット構成を図 31.3-4 に示します。 図 31.3-4 DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) のビット構成 bit 15 0 D15 ∼ D0 R/W 属性 0 初期値 R/W:リード / ライト可能 このレジスタに設定したブロック数分のデータ転送が終了すると , DMA チャネルコン トロールレジスタ (DCCR0 ∼ DCCR3) の TCR ビットの設定によって , このレジスタの 値は次のようになります。 • TCR=0:転送終了後 , このレジスタの値は "0" になります。 • TCR=1:転送終了後 , このレジスタの値が転送前に書き込んだ値に戻ります。 < 注意事項 > 1004 • このレジスタの値を "0" に設定すると , 転送は行われません。 • このレジスタへは必ずハーフワードでアクセスしてください。 • DMA 転送が中断された場合や , 転送が異常終了した場合は , このレジスタは残りの転 送回数を示します。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) 31.3.5 DMA コントローラ (DMAC) のチャネルを制御するレジスタです。チャネルごとにこのレジス タが用意されています。 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) のビット構成を図 31.3-5 に 示します。 図 31.3-5 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) のビット構成 bit 属性 31 30 29 28 27 26 25 24 CE 予約 R/W 予約 R/W 予約 R/W AIE SIE NIE R/W 予約 R/W R/W R/W R/W 0 0 0 0 0 0 0 0 23 22 21 20 19 18 17 16 予約 R/W 予約 R/W RS1 RS0 予約 R/W TM0 R/W 予約 R/W TM1 R/W R/W R/W 0 0 0 0 0 0 0 0 初期値 bit 属性 初期値 bit 属性 15 14 13 12 11 10 9 8 ST SAR SAC1 SAC0 DT DAR DAC1 DAC0 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 TCR TS1 TS0 BLK3 BLK2 BLK1 BLK0 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1005 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit31]:CE ( チャネル動作許可ビット ) チャネルの動作を禁止 / 許可します。 書込み値 0 説明 チャネルの動作を禁止します。 1 チャネルの動作を許可します。 RS1, RS0 ビットで DMA 転送の要求元をソフトウェアに設定 (RS1, RS0=00) していると きに , このビットに "1" を書き込むと , DMA 転送を開始します。転送が終了すると , こ のビットは自動的に "0" にクリアされます。 RS1, RS0 ビットを "00" 以外に設定している場合は , このビットに "1" を書き込むとチャ ネル動作の許可のみが行われます。 この場合は , RS1, RS0 ビットで設定した転送要求を検出すると転送が開始されます。ま た , TCR ビットの設定によって , このビットの値が次のようになります。 • TCR=0:転送終了後 , "0" にクリアされます。 • TCR=1:転送終了後も "0" にクリアされません。 < 注意事項 > DMA 転送中にこのビットに "0" が書き込まれると , 転送中のデータを 1 ブロック転送後 , 転送を停止します。 その場合 , 再びこのビットに "1" が書き込まれ , 転送要求が検出されるまで転送は再開さ れません。 [bit30 ∼ bit27]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit26]:AIE ( 異常終了割込み許可ビット ) チャネルの異常終了割込みを許可している時 (AIE=1) にこのレジスタに設定禁止の値 を設定すると異常終了割込み要求を出力します。 ただし , 異常終了を示すフラグビット (DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の AC ビット ) はここでの設定によらず "1" に変わります。 このレジスタに設定した値が次のいずれかに当てはまると DMA 転送が異常終了した とみなされます。 • TM1, TM0 ビット =10 ( 設定禁止 ) • SAC1, SAC0 ビット =10 ( 設定禁止 ) • DAC1, DAC0 ビット =10 ( 設定禁止 ) • TS1, TS0 ビット =11 ( 設定禁止 ) • RS1, RS0ビット=00かつ, TM1, TM0ビット=11 (転送要求元:ソフトウェア, 転送モー ド:デマンド転送 ) 1006 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ 書込み値 説明 0 異常終了割込み要求の発生を禁止します。 1 異常終了割込み要求の発生を許可します。 < 注意事項 > • AIE=0 のとき , AIE=1 書込みと同時にレジスタに設定禁止の値を設定すると , AIE=1, DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の AC=1 となりますが異常終 了割込み要求は発生しません。 • 異常終了割込み要求発生時に AIE=0 にしても割込み要求はクリアされません。AC=0 を書き込んで割込み要求をクリアしてください。 • 割込み要求クリア時の注意事項 割込み要求発生時は , 対応するチャネルのステータスレジスタ (DCSRx) を確認してく ださい。複数のステータスフラグ (DCSRx.AC/SP/NC) が 1 となっている場合 , 割込み 要求のクリア時に注意が必要です。 割込み要求をクリアする場合 , ステータスレジスタのいずれかのフラグ (DCSR.AC/ SP/NC) が 1 のままだと割込み要求はクリアされません。複数のステータスフラグが 1 となっている場合は , 割込み許可 / 禁止ビット (DCCR.AIE/SIE/NIE) の設定によらず , AC/SP/NCの3bit すべてのフラグをクリアすることで割込み要求をクリアしてください。 [bit25]:SIE ( 転送中断割込み許可ビット ) チャネルの転送中断割込みを許可しているとき(SIE=1)に転送停止要求によって転送中 断すると割込み要求を出力します。 ただし , 転送停止要求による転送中断を示すフラグビット (DMA チャネルステータス レジスタ (DCSR0 ∼ DCSR3) の SP ビット ) は , 転送停止要求が発生すると , ここでの 設定によらず "1" に変わります。 書込み値 説明 0 転送中断割込み要求の発生を禁止します。 1 転送中断割込み要求の発生を許可します。 < 注意事項 > • 転送中断割込み要求発生時に SIE=0 にしても割込み要求はクリアされません。SP=0 を書き込んで割込み要求をクリアしてください。 • 割込み要求クリア時の注意事項 割込み要求発生時は , 対応するチャネルのステータスレジスタ (DCSRx) を確認してく ださい。複数のステータスフラグ (DCSRx.AC/SP/NC) が 1 となっている場合 , 割込み 要求のクリア時に注意が必要です。 割込み要求をクリアする場合 , ステータスレジスタのいずれかのフラグ (DCSR.AC/ SP/NC) が 1 のままだと割込み要求はクリアされません。複数のステータスフラグが 1 となっている場合は , 割込み許可 / 禁止ビット (DCCR.AIE/SIE/NIE) の設定によらず , AC/SP/NCの3bit すべてのフラグをクリアすることで割込み要求をクリアしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1007 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit24]:NIE ( 正常終了割込み許可ビット ) チャネルの正常終了割込みを許可しているとき (NIE=1) に DMA 転送が正常終了すると 割込み要求を出力します。 ただし , 正常終了を示すフラグビット (DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の NC ビット ) は , DMA 転送が正常終了すると , ここでの設定によらず "1" に 変わります。 次のいずれかの場合に , DMA 転送が正常終了したとみなされます。 • DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した転送回数分 , 転送を終了した とき • DMA転送回数レジスタ (DTCR0∼DTCR3) の値が"0"のときにCEビットでチャネル 動作を許可 (CE=1) したとき 0 書込み値 説明 正常終了割込み要求の発生を禁止します。 1 正常終了割込み要求の発生を許可します。 < 注意事項 > • 正常終了割込み要求発生時に NIE=0 にしても割込み要求はクリアされません。NC=0 を書き込んで割込み要求をクリアしてください。 • 割込み要求クリア時の注意事項 割込み要求発生時は , 対応するチャネルのステータスレジスタ (DCSRx) を確認してく ださい。複数のステータスフラグ (DCSRx.AC/SP/NC) が 1 となっている場合 , 割込み 要求のクリア時に注意が必要です。 割込み要求をクリアする場合 , ステータスレジスタのいずれかのフラグ (DCSR.AC/ SP/NC) が 1 のままだと割込み要求はクリアされません。複数のステータスフラグが 1 となっている場合は , 割込み許可 / 禁止ビット (DCCR.AIE/SIE/NIE) の設定によらず , AC/SP/NCの3bit すべてのフラグをクリアすることで割込み要求をクリアしてください。 [bit23, bit22]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit21, bit20]:RS1, RS0 ( 転送要求元ビット ) 転送要求を発生させる要因 ( 転送要求元 ) を次の 4 種類から設定します。 • ソフトウェアで転送要求を発生 • 周辺機能で発生した割込み要求を検出して転送要求を発生 • オンチップバス IP (USB ホスト , USBファンクション ) で発生した割込み要求を検出 して転送要求を発生 1008 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ RS1 RS0 説明 0 0 ソフトウェア 0 1 周辺機能の割込み要求 1 0 設定禁止 1 1 オンチップバス IP < 注意事項 > • TM1, TM0 ビットで転送モードをデマンド転送に設定 (TM1, TM0=11) した場合は , 転 送要求元には , オンチップバス IP のみ設定できます。 • 転送要求元に周辺機能の割込み要求を設定した場合は , 次のレジスタの設定が必要に なります。 - IO 転送要求設定レジスタ (IORR0 ∼ IORR3) - ペリフェラルによる DMA 転送要求のクリア選択レジスタ (ICSELx) 「第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能」の各レジスタを参 照してください。 • 転送要求元にオンチップバス IP を設定した場合は , オンチップバス IP の DMA 転送に 関する設定が必要になります。USB ホストの場合は「第 30 章 USB ホスト」, USB ファンクションの場合は「第 29 章 USB ファンクション」を参照してください。 [bit19, bit18]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit17, bit16]:TM1, TM0 ( 転送モードビット ) 転送モードを次の 3 種類から設定します。 • ブロック転送 転送要求が発生するとデータを 1 ブロック転送します。1 ブロックのデータを転送 後 , 再度転送要求を検出すると , 次のデータを 1 ブロック転送します。これを設定 した転送回数繰り返すモードです。 • バースト転送 1 度 , 転送要求が発生するとすべてのデータを転送するまで , 1 ブロックずつ連続で データを転送するモードです。 • デマンド転送 1 度 , 転送要求が発生すると , 転送要求が取り下げられるか転送が終了するまで連続 でデータを転送するモードです。また , データ転送が終了したときに転送回数をリ ロードする設定になっている場合は , 転送要求が取り下げられるまで転送をし続け ます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1009 第 31 章 DMA コントローラ (DMAC) 31.3 TM1 TM0 MB91665 シリーズ 説明 0 0 ブロック転送 0 1 バースト転送 1 0 設定禁止 1 1 デマンド転送 < 注意事項 > デマンド転送に設定した場合は , ST ビットまたは DT ビットを "1" にする必要があります。 [bit15]:ST ( 転送元タイプビット ) 転送元の読出しサイクルで,転送要求受付信号や転送終了信号を出力するかどうかを設 定します。 書込み値 説明 0 出力しない 1 出力する 転送要求元に周辺機能の割込み要求を設定し , かつその周辺を転送元に設定した場合 , このビットを "1" に設定することで , 転送要求受付信号が出力され , 転送要求をクリア することができます。 < 注意事項 > • TM1, TM0 ビットで転送モードをデマンド転送 (TM1, TM0=11) に設定した場合は , このビット /DT ビットの両方または一方を "1" にしてください。 • USB ファンクション , USB ホストで DMA 転送を行う場合 , 転送元タイプにかかわら ず必ず ST ビットに "0" を設定してください。 [bit14]:SAR ( 転送元アドレスリロードビット ) DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した回数のデータ転送が終了したと きに , DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) の値を転送前の値に戻すかど うかを設定します ( 転送元アドレスのリロードを許可 / 禁止 ) 。 書込み値 1010 説明 0 リロードを禁止します。 転送終了後 , DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) の値は最 後にアクセスしたアドレスの次のアドレスになります。 1 リロードを許可します。 転送終了後 , DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) の値が , 転送前に書き込んだ値に戻ります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit13, bit12]:SAC1, SAC0 ( 転送元アドレスカウントビット ) TS1, TS0 ビットで設定したサイズのデータ転送が終了するたびに DMA 転送元アドレ スレジスタ (DSAR0 ∼ DSAR3) の値を更新するかどうかを次の 3 種類から設定します。 SAC1 SAC0 説明 0 0 アドレス増加 0 1 アドレス減少 1 0 設定禁止 1 1 アドレス固定 アドレス増加 / アドレス減少を設定した場合は , TS1, TS0 ビットで設定した転送サイズ によって , 増加 / 減少値が異なります。 転送サイズとアドレスの増加 / 減少値の対応を表 31.3-2 に示します。 表 31.3-2 転送サイズとアドレスの増加 / 減少値の対応 転送サイズ 増加 / 減少値 8 ビット 1 16 ビット 2 32 ビット 4 [bit11]:DT ( 転送先タイプビット ) 転送先への書込みサイクルで,転送要求受付信号や転送終了信号を出力するかどうかを 設定します。 書込み値 説明 0 出力しない 1 出力する 転送要求元に周辺機能の割込み要求を設定し , かつその周辺を転送先に設定した場合 , このビットを "1" に設定することで , 転送要求受付信号が出力され , 転送要求をクリア することができます。 < 注意事項 > • TM1, TM0 ビットで転送モードをデマンド転送 (TM1, TM0=11) に設定した場合は , このビット /ST ビットの両方または一方を "1" にしてください。 • USB ファンクション , USB ホストで DMA 転送を行う場合 , 転送先タイプにかかわら ず必ず DT ビットに "1" を設定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1011 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit10]:DAR ( 転送先アドレスリロードビット ) DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した回数のデータ転送が終了したと きに , DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) の値を転送前の値に戻すかど うかを設定します ( 転送元アドレスのリロードを許可 / 禁止 ) 。 書込み値 説明 0 リロードを禁止します。 転送終了後 , DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) の値は 最後にアクセスしたアドレスの次のアドレスになります。 1 リロードを許可します。 転送終了後 , DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) の値が , 転送前に書き込んだ値に戻ります。 [bit9, bit8]:DAC1, DAC0 ( 転送先アドレスカウントビット ) TS1, TS0 ビットで設定したサイズのデータ転送が終了するたびに DMA 転送先アドレ スレジスタ (DDAR0 ∼ DDAR3) の値を更新するかどうかを次の 3 種類から設定します。 DAC1 DAC0 説明 0 0 アドレス増加 0 1 アドレス減少 1 0 設定禁止 1 1 アドレス固定 アドレス増加 / アドレス減少を設定した場合は , TS1, TS0 ビットで設定した転送サイズ によって , 増加 / 減少値が異なります。 転送サイズとアドレスの増加 / 減少値の対応を表 31.3-3 に示します。 表 31.3-3 転送サイズとアドレスの増加 / 減少値の対応 転送サイズ 増加 / 減少値 8 ビット 1 16 ビット 2 32 ビット 4 [bit7]:TCR ( 転送回数リロードビット ) DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した回数のデータ転送が終了したと きに , 設定した転送回数を DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) にリロードする かどうかを設定します ( 転送回数のリロードを許可 / 禁止 ) 。 書込み値 1012 説明 0 リロードを禁止します。 転送終了後 , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) の値が "0" にク リアされます。 1 リロードを許可します。 転送終了後 , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) の値が転送前に 書き込んだ値に戻ります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ < 注意事項 > • このビットに "1" かつ RS1, RS0 ビットで転送要求元をソフトウェア以外に設定してい るときは , 転送が終了しても , CE ビットは "0" にクリアされず転送要求待ち状態にな ります。 • このビットに "0" を書き込んだ場合は , 転送要求元にかかわらず , 転送が終了すると CE ビットは自動的に "0" にクリアされます。 • このビットに "1" を書き込んでリロードを許可すると , デマンド転送では転送要求が出 力されている間は , 設定回数分転送が終了したかどうかにかかわらず連続して転送が 行われます。 [bit6]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit5, bit4]:TS1, TS0 ( 転送サイズビット ) 1 回で転送するデータのサイズ ( 幅 ) を次の 3 種類から設定します。 TS1 CM71-10158-1 TS0 説明 0 0 8 ビット 0 1 16 ビット 1 0 32 ビット 1 1 設定禁止 FUJITSU SEMICONDUCTOR LIMITED 1013 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit3 ∼ bit0]:BLK3~BLK0 ( ブロックサイズビット ) 1 ブロック内の 1 転送単位の回数 ( サイズ ) を設定します。 1014 BLK3 BLK2 BLK1 BLK0 説明 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 回 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) 31.3.6 DMA コントローラ (DMAC) の状態を示すレジスタです。チャネルごとにこのレジスタが用意 されています。 DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) のビット構成を図 31.3-6 に示し ます。 図 31.3-6 DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) のビット構成 bit 15 14 13 12 11 10 9 8 CA 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 属性 R 予約 R/W 初期値 0 0 0 0 0 0 0 0 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W AC SP NC R/W R/W R/W 0 0 0 0 0 0 0 0 bit 属性 初期値 R/W:リード / ライト可能 R:リードオンリ < 注意事項 > このレジスタへは必ずハーフワードでアクセスしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1015 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit15]:CA ( チャネルアクティブビット ) チャネルの動作状態を示します。 読出し値 説明 0 チャネルは動作していません。 1 チャネルが動作中です。 < 注意事項 > • DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を書き込 むと , このビットが "1" に変わります。 • 次のいずれかの場合に , このビットが "0" に変わります。 - 転送が終了した - DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "0" が書き 込まれた [bit14 ∼ bit3]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit2]:AC ( 異常終了状態フラグビット ) DMA 転送が異常終了したことを示します。 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の値が , 次のいずれかに当て はまると DMA 転送が異常終了したとみなされます。 • TM1, TM0 ビット =10 ( 設定禁止 ) • SAC1, SAC0 ビット =10 ( 設定禁止 ) • DAC1, DAC0 ビット =10 ( 設定禁止 ) • TS1, TS0 ビット =11 ( 設定禁止 ) • RS1, RS0ビット=00かつ, TM1, TM0ビット=11 (転送要求元:ソフトウェア, 転送モー ド:デマンド転送 ) このビットが "1" のときに , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の AIE ビットに "1" が設定されていると異常終了割込み要求が発生します。 AC 1016 読出し時 書込み時 0 異常終了は検出されていません。 このビットを "0" にクリアします。 1 異常終了が検出されました。 無視されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ < 注意事項 > このビットは自動的にクリアされません。DMA 転送の動作を許可する前に , このビット に "0" を書き込んで , 異常終了割込み要求フラグをクリアしてください。 DMA 転送中にこのビットをクリアする場合 , このビットが "1" になっていることを確認 してから "0" を書き込んでクリアしてください。 [bit1]:SP ( 転送中断状態フラグビット ) 転送要求元から転送停止要求があり転送を中断したことを示します。 このビットが "1" のときに , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の SIE ビットに "1" が設定されていると転送中断割込み要求が発生します。 SP 読出し時 書込み時 0 転送は中断されていません。 このビットを "0" にクリアします。 1 転送が中断されました。 無視されます。 < 注意事項 > このビットは自動的にクリアされません。DMA 転送の動作を許可する前に , このビット に "0" を書き込んで , 転送中断割込み要求フラグをクリアしてください。 DMA 転送中にこのビットをクリアする場合 , このビットが "1" になっていることを確認 してから "0" を書き込んでクリアしてください。 [bit0]:NC ( 正常終了状態フラグビット ) DMA 転送が正常に終了したことを示します。 次のいずれかの場合に , DMA 転送が正常終了したとみなされます。 • DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した転送回数分 , 転送を終了した とき • DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) の値が "0" のときに , DMA チャネルコン トロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットでチャネル動作を許可 (CE=1) し たとき このビットが "1" のときに , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の NIE ビットに "1" が設定されていると正常終了割込み要求が発生します。 NC CM71-10158-1 読出し時 書込み時 0 転送の正常終了は検出されていま このビットを "0" にクリアします。 せん。 1 転送の正常終了が検出されました。 無視されます。 FUJITSU SEMICONDUCTOR LIMITED 1017 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ < 注意事項 > このビットは自動的にクリアされません。DMA 転送の動作を許可する前に , このビット に "0" を書き込んで , 正常終了割込み要求フラグをクリアしてください。 DMA 転送中にこのビットをクリアする場合 , このビットが "1" になっていることを確認 してから "0" を書き込んでクリアしてください。 1018 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ DMA 転送抑止割込みレベルレジスタ (DILVR) 31.3.7 周辺機能で割込み要求が発生したときにDMA転送を抑止するかどうかを設定するレジスタで す。 DMA 転送抑止割込みレベルレジスタ (DILVR) のビット構成を図 31.3-7 に示します。 図 31.3-7 DMA 転送抑止割込みレベルレジスタ (DILVR) のビット構成 bit 属性 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W LVL4 LVL3 LVL2 LVL1 LVL0 R R/W R/W R/W R/W 0 0 0 1 1 1 1 1 初期値 R/W:リード / ライト可能 R :リードオンリ < 注意事項 > このレジスタへは必ずバイトアクセスしてください。 [bit7 ∼ bit5]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 1019 第 31 章 DMA コントローラ (DMAC) 31.3 MB91665 シリーズ [bit4 ∼ bit0]:LVL4 ∼ LVL0 (DMA 抑止割込みレベルビット ) DMA 転送を抑止する割込みレベルを設定します。このビットに設定した割込みレベル より高いレベルの割込み要求が周辺機能から発生すると DMA 転送が抑止されます。 LVL4 LVL3 LVL2 LVL1 LVL0 DMA 転送を抑止する割込み要求レベル 1 0 0 0 0 DMA 転送は抑止されません。 1 0 0 0 1 "11H" より高いレベルの割込み要求 1 0 0 1 0 "12H" より高いレベルの割込み要求 1 0 0 1 1 "13H" より高いレベルの割込み要求 1 0 1 0 0 "14H" より高いレベルの割込み要求 1 0 1 0 1 "15H" より高いレベルの割込み要求 1 0 1 1 0 "16H" より高いレベルの割込み要求 1 0 1 1 1 "17H" より高いレベルの割込み要求 1 1 0 0 0 "18H" より高いレベルの割込み要求 1 1 0 0 1 "19H" より高いレベルの割込み要求 1 1 0 1 0 "1AH" より高いレベルの割込み要求 1 1 0 1 1 "1BH" より高いレベルの割込み要求 1 1 1 0 0 "1CH" より高いレベルの割込み要求 1 1 1 0 1 "1DH" より高いレベルの割込み要求 1 1 1 1 0 "1EH" より高いレベルの割込み要求 1 1 1 1 1 すべての割込み要求 < 注意事項 > LVL4 ビットは "1" 固定で , LVL3 ∼ LVL0 のみ設定が可能です。 1020 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.4 MB91665 シリーズ 31.4 割込み 次のいずれかの状態になると割込み要求が発生します。 • DMA 転送が正常終了したとき ( 正常終了割込み要求 ) • DMA 転送が異常終了したとき ( 異常終了割込み要求 ) • 転送停止要求が発生し DMA 転送が中断したとき ( 転送中断割込み要求 ) DMA コントローラ (DMAC) で使用できる割込みについて表 31.4-1 に示します。 表 31.4-1 DMA コントローラ (DMAC) の割込み 割込み要求 割込み要求フラグ 割込み要求許可 割込みのクリア 正常終了割込み要求 DCSR の NC=1 DCCR の NIE=1 DCSR の NC ビットに "0" を書き込む 異常終了割込み要求 DCSR の AC=1 DCCR の AIE=1 DCSR の AC ビットに "0" を書き込む 転送中断割込み要求 DCSR の SP=1 DCCR の SIE=1 DCSR の SP ビットに "0" を書き込む DCSR:DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) DCCR:DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) < 注意事項 > • 割込み要求フラグは, 割込み要求の発生を禁止してからクリアするか, 割込み処理ルー チン内でクリアしてください。 • 各割込み要求の割込みベクタ番号については , 「付録 C 割込みベクタ」を参照してく ださい。 • 割込みベクタ番号に対応する割込みレベルは , 割込みコントロールレジスタ (ICR00 ∼ ICR47) で設定します。割込みレベルの設定については , 「第 10 章 割込みコントロー ラ」を参照してください。 • DMA コントローラの割込み要求発生時に割込み許可ビット (AIE,SIE,NIE) を "0" にし ても割込み要求はクリアされません。割込み要求フラグ (AC,SP,NC) に "0" を書き込ん で割込み要求をクリアしてください。 • 割込み要求クリア時の注意事項 割込み要求発生時は , 対応するチャネルのステータスレジスタ (DCSRx) を確認してく ださい。複数のステータスフラグ (DCSRx.AC/SP/NC) が 1 となっている場合 , 割込み 要求のクリア時に注意が必要です。 割込み要求をクリアする場合 , ステータスレジスタのいずれかのフラグ (DCSR.AC/ SP/NC) が 1 のままだと割込み要求はクリアされません。複数のステータスフラグが 1 となっている場合は , 割込み許可 / 禁止ビット (DCCR.AIE/SIE/NIE) の設定によらず , AC/SP/NCの3bit すべてのフラグをクリアすることで割込み要求をクリアしてください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1021 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ 31.5 動作説明と設定手順例 DMA コントローラ (DMAC) の動作について説明します。また , 各転送モードを設定するため の設定手順例も示します。 31.5.1 転送設定 DMA コントローラ (DMAC) を使用するのに必要な設定について説明します。 ■ 概要 DMA 転送を利用する場合は , DMA コントローラ (DMAC) 全体に対する設定と , 使用 するチャネルに対する設定が必要です。 また , DMA 転送の転送要求元を周辺機能の割込み要求にする場合は , 割込みベクタ番 号の選択や , 各周辺機能での設定も必要です。詳しくは「第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能」を参照してください。 設定する順番は次のようになります。 1. DMA コントローラ (DMAC) 全体に対する設定 「■ DMA コントローラ (DMAC) 全体に対する設定」を参照してください。 2. 使用するチャネルの DMA コントローラに対する設定 「■ チャネルに対する設定」を参照してください。 1022 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ ■ DMA コントローラ (DMAC) 全体に対する設定 DMA コントローラ (DMAC) を使用する場合 , DMA コントローラ (DMAC) 全体に対す る設定と , 使用するチャネルに対する設定が必要になります。 ここでは , DMA コントローラ (DMAC) 全体に対して必要な設定について説明します。 • DMAコントロールレジスタ (DMACR) のDMEビットでDMAコントローラ (DMAC) の動作の許可 動作禁止:DME=0 動作許可:DME=1 • DMA コントロールレジスタ (DMACR) の AT ビット優先順位の設定 固定:AT=0 ラウンドロビン:AT=1 • DMA転送抑止割込みレベルレジスタ (DILVR) のLVL4∼LVL0ビットでDMA転送を 抑止する割込みレベルを設定 詳細については , 各レジスタの説明を参照してください。 < 注意事項 > DMA 転送要求の発生要因を周辺機能で発生した割込み要求にする場合は , DMA コント ローラ (DMAC) の設定をする前に , 割込みベクタ番号を選択してください。 割込みベクタ番号の選択については , 「第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能」の「32.3.1 IO 転送要求設定レジスタ (IORR0 ∼ IORR3)」を参照して ください。 ■ チャネルに対する設定 ここでは , 使用するチャネルに対して必要な設定について説明します。 DMA コントローラ (DMAC) 全体に対する設定が終了したら , チャネルに対する設定を 行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1023 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ チャネルに対する設定手順例を図 31.5-1 に示します。 図 31.5-1 設定手順例 設定開始 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットを クリアする (CE = 0) DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) を初期状態に クリアする DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) に転送開始時の転送元 アドレスを設定する DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) に転送開始時の転送先 アドレスを設定する DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に転送回数を設定する DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の各ビットを 設定する 設定終了 1. チャネルの動作を禁止する DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビット =0 1024 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ 2. チャネルの状態を示すフラグを初期化する DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の AC ビット /SP ビット /NC ビット =0 3. 転送元アドレスを設定する DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) の D31 ∼ D0 ビット 4. 転送先アドレスを設定する DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) の D31 ∼ D0 ビット 5. 転送回数を 1 回∼ 65535 回の範囲で設定する DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) の D15 ∼ D0 ビット =1 以上 6. その他の設定 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の各ビットを設定 7. DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を書き 込む チャネルの動作が許可されます。 転送要求元をソフトウェアにしている場合は , チャネルの動作許可と同時に転送が 開始されます。 < 注意事項 > レジスタの設定方法については , 各レジスタの説明を参照してください。 31.5.2 転送動作 DMA コントローラ (DMAC) の転送動作について説明します。 ■ 転送モード DMA コントローラ (DMAC) は , 次の 3 種類の転送モードがあります。 • ブロック転送 転送要求が発生するとデータを 1 ブロック転送するモードです。1 ブロックのデー タを転送後 , 再度転送要求を検出すると , 次のデータを 1 ブロック転送します。こ れを設定した転送回数繰り返すモードです。 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TS1, TS0 ビットで設定 した転送サイズのデータを BLK3 ∼ BLK0 ビットで設定した回数分 , 1 回ずつ転送 します。 • バースト転送 1 度 , 転送要求が発生するとすべてのデータを転送するまで , 1 ブロックずつ連続で 転送するモードです。 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TS1, TS0 ビットで設定 した転送サイズのデータを BLK3 ∼ BLK0 ビットで設定した回数分ずつ , DMA 転送 回数レジスタ (DTCR0 ∼ DTCR3) に設定した回数連続して転送します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1025 第 31 章 DMA コントローラ (DMAC) 31.5 • MB91665 シリーズ デマンド転送 1 度 , 転送要求が発生すると , 転送要求が取り下げられるか転送が終了するまで連続 でデータを転送するモードです。また , データ転送が終了したときに転送回数をリ ロードする設定になっている場合は , 転送要求が取り下げられるまで転送をし続け ます。 デマンド転送では ST/DT の両方またはどちらか一方を "1" にする必要があります。 転送モードによって , 転送要求を発生させる要因が異なります。 転送モードと転送要求元の対応を表 31.5-1 に示します。 表 31.5-1 転送モードと転送要求元の対応 転送要求元 ブロック転送 バースト転送 デマンド転送 ソフトウェア ○ ○ × 周辺機能の割込み要求 ○ ○ × オンチップバス USB ホスト ○ IP USB ファンクション ○ × ○ × ○ ■ 転送要求の検出 DMA 転送要求を検出することにより , 転送動作が開始されます。 転送要求の検出動作は , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の RS1, RS0 ビットで設定した転送要求元によって異なります。 • 転送要求元がソフトウェアの場合 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を書き 込むと , チャネルの優先順位を判定し , 転送が開始されます。 • 転送要求元がソフトウェア以外の場合 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を書き 込むと , チャネルの動作が許可されます。 その状態で , 転送要求を検出すると , チャネルの優先順位を判定し , 転送が開始され ます。 1026 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ < 注意事項 > • 転送要求元に周辺機能の割込み要求を設定した場合は , 割込みベクタの選択が必要に なります。 「第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能」 の 「32.3.1 IO 転送要求設定レジスタ (IORR0 ∼ IORR3)」を参照してください。 • 転送要求元に周辺機能の割込み要求を設定した場合は , 周辺機能で割込み要求が発生 した時点での割込みレベルマスクレジスタ (ILM) と割込みコントロールレジスタ (ICR00 ∼ ICR47) の値が次のようになるように設定してください。 ILM ≦ ICR • 転送要求元にオンチップバス IP を設定した場合は , オンチップバス IP の DMA 転送に 関する設定が必要になります。USB ホストの場合は「第 30 章 USB ホスト」, USB ファンクションの場合は「第 29 章 USB ファンクション」を参照してください。 転送要求元と転送要求の検出条件を表 31.5-2 に示します。 表 31.5-2 転送要求元と転送要求の検出条件 転送要求元 ブロック 転送時 バースト 転送時 デマンド転送時 ソフトウェア DCCR の CE ビットに "1" − を書き込む 割込み要求 エッジ検出 − オンチップバス USB ホスト IP USB ファンク ション エッジ検出 − 1 回目:エッジ検出 2 回目以降:レベル検出 DCCR:DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) < 注意事項 > 周辺機能の割込み要求はエッジ検出のため割込み要求発生中にCE=0を1にしても転送開 始はしません。CE=1 設定後に周辺機能の割込み許可などを行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1027 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ ■ 動作 転送要求を検出すると , 次のように転送が行われます。 1. DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) に設定したアドレスからデータ を読み出す DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TS1, TS0 ビットで設定 したビット幅のデータが読み出されます。 2. DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) に設定したアドレスにデータを 書き込む 外部メモリと外部 I/O 間の転送動作例を図 31.5-2 に示します。 図 31.5-2 転送動作例 SYSCLK AS CS0 ∼ CS3 RD WR0, WR1 A23 ∼ A00 D15 ∼ D00 転送先アドレス 転送元アドレス データ 入力 データ出力 転送元読出し 転送先書込み < 注意事項 > 図 31.5-2 内の次の端子についての詳細は , 「第 13 章 外部バス インタフェース」を参照 してください。 ・CS0 ∼ CS3 端子 ・RD 端子 ・AS 端子 ・WR0, WR1 端子 1028 ・A23 ∼ A00 端子 ・D15 ∼ D00 端子 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ ■ 優先順位 DMA 転送要求が複数発生すると , DMA コントロールレジスタ (DMACR) の AT ビット の設定にしたがって , 優先順位の高いチャネルから転送が行われます。 優先順位の判定は , 1 ブロック転送するごとに行われます。また , 転送終了時にも優先 順位の判定が行われます。 < 注意事項 > デマンド転送で転送中は優先順位の判定は行われません。 優先順位の決定方法は次のいずれかになります。 • 固定:チャネルの若い番号が優先されます。 転送例 1 として次の条件での転送例を図 31.5-3 に示します。 転送要求:ch.0, ch.1, ch.3 で同時発生 転送モード:すべてチャネルがバースト転送モード 転送回数:すべてのチャネルが 3 図 31.5-3 転送例 1 ch.0, ch.1, ch.3 に 転送要求発生 ch.0 ch.1 ch.3 1 ブロックの 区切り ch.0 の 転送終了 ch.1 の 転送終了 ch.3 の 転送終了 1. 転送要求が ch.0, ch.1, ch.3 で同時に発生します。 2. ch.0 の転送が開始されます。 3. ch.0 のデータを 3 ブロック転送し終わると , ch.1 の転送が開始されます。 4. ch.1 のデータを 3 ブロック転送し終わると , ch.3 の転送が開始されます。 転送例 2 として次の条件での転送例を図 31.5-4 に示します。 転送要求: ・ch.1, ch.3 で同時発生 ・ch.1 の転送中に ch.0 で発生 転送モード:すべてチャネルがバースト転送モード 転送回数:すべてのチャネルが 3 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1029 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ 図 31.5-4 転送例 2 ch.1, ch.3 に転送要求発生 ch.0 に転送要求発生 ch.0 ch.1 ch.3 1 ブロックの 区切り ch.1 の転送終了 ch.0 の転送終了 ch.3 の転送終了 1. 転送要求が ch.1, ch.3 で同時に発生します。 2. ch.1 の転送が開始されます。 3. ch.1 の転送中に ch.0 で転送要求が発生します。 4. ch.1 の転送が中断され , ch.0 の転送が開始されます。 5. ch.0 のデータを 3 ブロック転送し終わると , ch.1 の転送が開始されます。 6. ch.1 のデータを 3 ブロック転送し終わると , ch.3 の転送が開始されます。 1030 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ • ラウンドロビン:転送を開始したチャネルの優先順位が一番低くなり , そのチャネ ルより下位にあったチャネルの優先順位が 1 つずつ繰り上がります。 次の条件での転送例を図 31.5-5 に示します。 転送要求:ch.0, ch.1, ch.3 で同時発生 転送モード:すべてチャネルがバースト転送モード 転送回数:すべてのチャネルが 3 図 31.5-5 転送例 ch.0 の転送終了 ch.1 の転送終了 ch.3 の転送終了 ch.0, ch.1, ch.3 に 転送要求発生 ch.0 ch.1 ch.3 ブロック (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 各ブロックでのチャネル優先順位 (1) ch.0 > ch.1 > ch.2 > ch.3 (2) ch.1 > ch.2 > ch.3 > ch.0 (3) ch.2 > ch.3 > ch.0 > ch.1 (4) ch.2 > ch.0 > ch.1 > ch.3 (5) ch.2 > ch.1 > ch.3 > ch.0 (6) ch.2 > ch.3 > ch.0 > ch.1 (7) ch.2 > ch.0 > ch.1 > ch.3 (8) ch.2 > ch.1 > ch.3 > ch.0 (9) ch.2 > ch.3 > ch.0 > ch.1 (10) ch.2 > ch.0 > ch.1 > ch.3 1. 転送要求が ch.0, ch.1, ch.3 で同時に発生します。 2. ch.0 のデータを 1 ブロック転送します。 3. ch.0 のデータを 1 ブロック転送後 , ch.1 のデータを 1 ブロック転送します。 4. ch.1 のデータを 1 ブロック転送後 , ch.3 のデータを 1 ブロック転送します。 5. ch.3 のデータを 1 ブロック転送後 , ch.0 のデータの 2 ブロック目を転送します。 6. ch.0のデータの2ブロック目を転送後, ch.1のデータの2ブロック目を転送します。 7. ch.1のデータの2ブロック目を転送後, ch.3のデータの2ブロック目を転送します。 8. ch.3のデータの2ブロック目を転送後, ch.0のデータの3ブロック目を転送します。 ch.0 の転送が終了します。 9. ch.0のデータの3ブロック目を転送後, ch.1のデータの3ブロック目を転送します。 ch.1 の転送が終了します。 10. ch.1のデータの3ブロック目を転送後, ch.3のデータの3ブロック目を転送します。 ch.3 の転送が終了します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1031 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ ■ 転送アドレス更新動作 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TS1, TS0 ビットで設定し たサイズのデータを転送するたびに , 転送元アドレスと転送先アドレスを増加 / 減少さ せることができます。 アドレスの更新は , 次のレジスタで設定できます。 • 転送元アドレス:DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の SAC1, SAC0 ビット • 転送先アドレス:DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の DAC1, DAC0 ビット また , 増加 / 減少幅は , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TS1, TS0 ビットで設定したサイズによって異なります。 1032 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ 各ビットの設定値と増加 / 減少幅の対応を表 31.5-3 に示します。 表 31.5-3 各ビットの設定値と増加 / 減少幅 転送元アドレス (SAC1, SAC0) 00 ( 増加 ) 転送先アドレス (DAC1, DAC0) 00 ( 増加 ) 01 ( 減少 ) 11 ( 固定 ) 01 ( 減少 ) 00 ( 増加 ) 01 ( 減少 ) 11 ( 固定 ) 11 ( 固定 ) 00 ( 増加 ) 01 ( 減少 ) 11 ( 固定 ) 転送サイズ (TS1, TS0) 転送元 アドレス 増減幅 転送先 アドレス 増減幅 00 (8 ビット ) 1 増加 1 増加 01 (16 ビット ) 2 増加 2 増加 10 (32 ビット ) 4 増加 4 増加 00 (8 ビット ) 1 増加 1 減少 01 (16 ビット ) 2 増加 2 減少 10 (32 ビット ) 4 増加 4 減少 00 (8 ビット ) 1 増加 増減なし 01 (16 ビット ) 2 増加 増減なし 10 (32 ビット ) 4 増加 増減なし 00 (8 ビット ) 1 減少 1 増加 01 (16 ビット ) 2 減少 2 増加 10 (32 ビット ) 4 減少 4 増加 00 (8 ビット ) 1 減少 1 減少 01 (16 ビット ) 2 減少 2 減少 10 (32 ビット ) 4 減少 4 減少 00 (8 ビット ) 1 減少 増減なし 01 (16 ビット ) 2 減少 増減なし 10 (32 ビット ) 4 減少 増減なし 00 (8 ビット ) 増減なし 1 増加 01 (16 ビット ) 増減なし 2 増加 10 (32 ビット ) 増減なし 4 増加 00 (8 ビット ) 増減なし 1 減少 01 (16 ビット ) 増減なし 2 減少 10 (32 ビット ) 増減なし 4 減少 00 (8 ビット ) 増減なし 増減なし 01 (16 ビット ) 増減なし 増減なし 10 (32 ビット ) 増減なし 増減なし ■ 転送要求受付 / 転送終了信号の出力 ● 出力タイミング DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の ST ビットか DT ビットが "1" に設定されていると , 転送要求受付 / 転送終了信号を出力できます。 • ST ビットが "1" の場合 - 転送元の読出しサイクルで転送要求に対し転送要求受付信号を出力します ( 毎 回)。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1033 第 31 章 DMA コントローラ (DMAC) 31.5 - MB91665 シリーズ DMA転送回数レジスタ (DTCR0∼DTCR3) に設定した回数の最後の転送時, 転送 元読出しサイクルで転送終了信号を出力します (1 回のみ ) 。 • DT ビットが "1" の場合 - 転送先への書込みサイクルで転送要求に対し転送要求受付信号を出力します(毎 回)。 - DMA転送回数レジスタ (DTCR0∼DTCR3) に設定した回数の最後の転送時, 転送 先への書込みサイクルで転送終了信号を出力します (1 回のみ ) 。 < 注意事項 > DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TM1, TM0 ビットで転送モー ドをデマンド転送に設定 (TM1, TM0=11) した場合は , 必ず次の両方またはいずれかの ビットを "1" にしてください。 - DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の ST ビット - DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の DT ビット ● 注意事項 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の ST ビット /DT ビットの設 定により , 転送ウェイトが入ることがあります。 • ch.0 の ST ビットと DT ビットの両方を "1" に設定した場合 ch.0の転送において, 転送元から転送先の間, また転送先から転送元の間で転送ウェ イトが入ります。 • 転送先タイプを設定しているチャネルから転送元タイプを設定しているチャネル に移る場合 設定例:転送チャネルが ch.0 から ch. 1 へ移る場合 ST DT チャネル番号 ch.0 0 1 ch.1 1 0 先に転送しているチャネル (ch.0) の転送先から , 次に転送するチャネル (ch.1) の転 送元の間で転送ウェイトが入ります。 1034 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ 31.5.3 転送の中断 DMA コントローラ (DMAC) は , 次の場合に DMA 転送を中断します。 DMA 転送が中断されたときの動作について説明します。 ■ 概要 DMA 転送は , 次の場合に中断されます。 • DMA コントロールレジスタ (DMACR) の DME ビットに "0" が書き込まれたとき • DMAチャネルコントロールレジスタ (DCCR0∼DCCR3) のCEビットに"0"が書き込 まれたとき • 転送要求元から転送停止要求が出力されたとき ■ 転送中断 / 再開 転送の中断は, ブロック単位で行われます。そのため, 転送中に中断要因が発生すると , 転送中のデータを 1 ブロック転送完了後に , 転送が中断されます。 また , 1 度転送が中断されると , 新たな転送は行わず DMA コントローラ (DMAC) は停 止状態になります。 • DMA コントロールレジスタ (DMACR) の DME ビットに "0" が書き込まれた場合 すべてのチャネルが停止状態になります。 DME ビットが "0" にクリアされたときに , 転送を行っていたチャネルは , 転送中の データを 1 ブロック転送し終わった時点で転送を中断します。また , 既に検出した 転送要求はクリアされません。 次の手順で DMA 転送を再開してください。 1. DMA コントロールレジスタ (DMACR) の DME ビットに "1" を書き込む • DMAチャネルコントロールレジスタ (DCCR0∼DCCR3) のCEビットに"0"が書き 込まれた場合 対応するチャネルが停止状態になります。 対応するチャネルが転送中の場合は , 転送中のデータを 1 ブロック転送し終わった 時点で転送を中断します。また , 既に検出した転送要求もクリアされます。 次の手順で DMA 転送を再開してください。 1. 停止状態にあるチャネルの DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を書き込む 2. 新たに転送要求を行う • 転送要求元からの転送停止要求による中断 マルチファンクションシリアルインタフェースで DMA コントローラ (DMAC) を起 動したときに , 受信エラーが発生し , 転送停止要求が発行されると , 転送中のデータ を 1 ブロック転送し終わった時点で転送が中断されます。 転送が中断されると次の状態が発生します。 - DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の SP ビットが "1" に変わ る。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1035 第 31 章 DMA コントローラ (DMAC) 31.5 - MB91665 シリーズ DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットが "0" に変 わる。 - 既に検出した転送要求がクリアされる。 転送停止要求が発行されている期間は , 新たな転送要求を受け付けません。 次の手順で DMA 転送を再開してください 1. 転送停止要求を無効にする 2. 対応するチャネルの DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の SP ビットに "0" を書き込む 3. DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を 書き込む 4. 新たに転送要求を行う < 注意事項 > DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の SP ビットは自動では "0" にク リアされません。クリアするには , SP ビットに "0" を書き込んでください。 ■ 再開時の動作 再開手順を実施すると , DMA 転送が再開されます。再開時の動作は , DMA コントロー ルレジスタ (DMACR) の DME ビットに "1" を書き込んだ場合と , DMA チャネルコント ロールレジスタ (DCCR0 ∼DCCR3) の CEビットに "1"を書き込んだ場合で異なります。 また , 転送モードによっても異なります。 転送再開時の動作を表 31.5-4 に示します。 表 31.5-4 転送再開時の動作 転送モード ブロック転送 バースト転送 デマンド転送 DME ビットに "1" を書き込んだ CE ビットに "1" を書き込んだ場合 場合 新たな転送要求を検出すると , 優 新たな転送要求を検出すると , 優 先順位にしたがって転送再開。 先順位にしたがって転送再開。 優先順位にしたがって直ちに転 (デマンド転送の場合, 新たに転送 要求を発生させるには , オンチッ 送再開。 DME ビットに "1" を書き込んだと プバス IP から , 再び DMA 転送要 き , 引き続き転送要求が発行され 求を入力する必要があります。) ていると , 優先順位判定を行なわ ず直ちに転送再開。 1036 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ 転送終了時の動作 31.5.4 DMA 転送の終了動作について説明します。 転送終了には , 正常終了と異常終了があります。 • 正常終了 DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した回数の転送が終了すると , DMA 転送は正常終了します。 DMA 転送が正常終了すると , 次のようになります。 1. 対応するチャネルの DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の NC ビットが "1" に変わる 2. DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットが "0" に 変わる。 DMA コントローラ (DMAC) が停止状態となります。 ただし , 転送要求元がソフトウェア以外で転送回数のリロードが設定されている場 合は , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットはクリ アされません。 また , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定された値が "0" のときに , 対応するチャネルの DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットに "1" を書き込むと , 正常終了と同様に , 対応するチャネルの DMA チャネル ステータスレジスタ (DCSR0 ∼ DCSR3) の NC ビットが "1" に変わります。 必ず DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) が "1" 以上になるように設定して から DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビット "1" を 書き込んでください。 < 注意事項 > • 転送要求元に割込み要求を選択した場合は , DMA 転送が終了すると , 周辺機能の割込 み要求フラグが DMA コントローラ (DMAC) によってクリアされます。 • DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の NC ビットは自動では "0" に クリアされません。クリアするには , NC ビットに "0" を書き込んでください。 • 異常終了 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) に設定禁止の値を設定す ると異常終了割込み要求を出力します。 DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の値が , 次のいずれかに 当てはまると DMA 転送が異常終了します。 - TM1, TM0 ビット =10 ( 設定禁止 ) - SAC1, SAC0 ビット =10 ( 設定禁止 ) - DAC1, DAC0 ビット =10 ( 設定禁止 ) - TS1, TS0 ビット =11 ( 設定禁止 ) - RS1, RS0 ビット =00 かつ , TM1, TM0 ビット =11 ( 転送要求元:ソフトウェア , 転送 モード:デマンド転送 ) CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1037 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ DMA 転送が異常終了すると , 次のようになります。 1. 対応するチャネルの DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の AC ビットが "1" に変わる。 2. DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットが "0" に 変わる。 DMA コントローラ (DMAC) が停止状態となります。 < 注意事項 > DMA チャネルステータスレジスタ (DCSR0 ∼ DCSR3) の AC ビットは自動では "0" にク リアされません。クリアするには , AC ビットに "0" を書き込んでください。 転送後の動作 31.5.5 設定された転送回数のブロックの DMA 転送後の動作について説明します。 ■ リロード動作 DMA コントローラ (DMAC) は , 転送前に書き込まれた転送元アドレスや転送先アドレ ス , 転送回数を保持するリロードレジスタを搭載しています。このため , 転送前に指定 した転送元アドレス , 転送先アドレス , 転送回数を転送後にリロードすることができま す。 リロードレジスタが用意されているレジスタは次のとおりです。 • DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) • DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) • DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) < 注意事項 > リロードレジスタは , 対応する各レジスタに書き込まれた値を記憶するレジスタです。リ ロードレジスタの値を読み出すことはできません。 ● 転送元アドレスのリロード動作 転送元アドレスを DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) にリロードする かどうかは , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の SAR ビット で設定します。 設定方法と転送後の動作を表 31.5-5 に示します。 表 31.5-5 設定方法と転送後の動作 SAR 1038 転送後の動作 0 転送終了後 , DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) の値が最 後にアクセスしたアドレスの次のアドレスになります。 1 転送終了後 , DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) の値が , 転送前に書き込んだ値に戻ります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の SAR ビットでリロードを 許可 (SAR=1) した場合の動作を図 31.5-6 に示します。 図 31.5-6 転送元アドレスリロード動作 レジスタ設定 ( レジスタ書込み ) DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) 転送元アドレス リロードレジスタ 転送終了時 リロード レジスタ更新 < 注意事項 > DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した転送回数の転送が終了する前に , 転 送 の 中 断 や 異 常 終 了 が 発 生 し た 場 合 は , DMA チ ャ ネ ル コ ン ト ロ ー ル レ ジ ス タ (DCCR0 ∼ DCCR3) の SAR ビットでリロードを許可 (SAR=1) していても , 転送元アドレ スはリロードされません。 DMA 転送元アドレスレジスタ (DSAR0 ∼ DSAR3) は , 最後にアクセスしたアドレスの次 のアドレスになります。 ● 転送先アドレスのリロード動作 転送先アドレスを DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) にリロードする かどうかは , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の DAR ビット で設定します。 設定方法と転送後の動作を表 31.5-6 に示します。 表 31.5-6 設定方法と転送後の動作 DAR CM71-10158-1 転送後の動作 0 転送終了後 , DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) の値が 最後にアクセスしたアドレスの次のアドレスになります。 1 転送終了後 , DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) の値が , 転送前に書き込んだ値に戻ります。 FUJITSU SEMICONDUCTOR LIMITED 1039 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の DAR ビットでリロードを 許可 (DAR=1) した場合の動作を図 31.5-7 に示します。 図 31.5-7 転送先アドレスリロード動作 レジスタ設定 ( レジスタ書込み ) DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) 転送先アドレス リロードレジスタ 転送終了時 リロード レジスタ更新 < 注意事項 > DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) に設定した転送回数の転送が終了する前に , 転 送 の 中 断 や 異 常 終 了 が 発 生 し た 場 合 は , DMA チ ャ ネ ル コ ン ト ロ ー ル レ ジ ス タ (DCCR0 ∼ DCCR3) の DAR ビットでリロードを許可 (DAR=1) していても , 転送先アド レスはリロードされません。 DMA 転送先アドレスレジスタ (DDAR0 ∼ DDAR3) は , 最後にアクセスしたアドレスの次 のアドレスになります。 ● 転送回数のリロード動作 転送回数を DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) にリロードするかどうかは , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TCR ビットで設定します。 設定方法と転送後の動作を表 31.5-7 に示します。 表 31.5-7 設定方法と転送後の動作 TCR 1040 転送後の動作 0 転送終了後 , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) の値は "0" にな ります。 1 転送終了後 , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) の値が , 転送前 に書き込んだ値に戻ります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 31 章 DMA コントローラ (DMAC) 31.5 MB91665 シリーズ DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TCR ビットでリロードを 許可 (TCR=1) した場合の動作を図 31.5-8 に示します。 図 31.5-8 転送回数リロード動作 レジスタ設定 ( レジスタ書込み ) DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) 転送回数 リロードレジスタ 転送終了時 リロード レジスタ更新 また , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TCR ビットの設定 によって , 転送終了後に DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の CE ビットがクリアされるかどうかが決まります。 TCR ビットと転送終了後の CE ビットの関係を表 31.5-8 に示します。 表 31.5-8 TCR ビットと転送終了後の CE ビットの関係 TCR 転送要求元 ソフトウェア ソフトウェア以外 0 CE ビットが "0" にクリアされる CE ビットが "0" にクリアされる 1 CE ビットが "0" にクリアされる CE ビットはクリアされない < 注意事項 > • DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の TCR ビットで転送回数の リロードを許可 (TCR=1) した場合 , デマンド転送では転送要求が出力されている間は 連続して転送を行います。 • DMA 転送が中断された場合や , 転送が異常終了した場合は , DMA 転送回数レジスタ (DTCR0 ∼ DTCR3) は残りの転送回数を示します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1041 第 31 章 DMA コントローラ (DMAC) 31.5 31.5.6 MB91665 シリーズ DMA 転送の抑止 周辺機能で割込み要求が発生すると , DMA 転送が抑止されます。 DMA 転送の抑止はブロック単位で行われます。そのため DMA 転送抑止割込みレベル レジスタ (DILVR) に設定した割込みレベルより強いレベルの割込み要求が発生する と , 転送中のデータを 1 ブロック転送し終わってから , 転送が抑止されます。 DMA 転送が抑止されると新たな転送は行わず , DMA コントローラ (DMAC) は抑止状 態となります。 割込み要求をクリアし , 割込みレベルが DMA 転送抑止割込みレベルレジスタ (DILVR) の LVL4 ∼ LVL0 ビットと同じか弱いレベルになると DMA 転送を再開します。 DMA 転送抑止割込みレベルレジスタ (DILVR) の LVL4 ∼ LVL0 ビットの設定と DMA 転送を抑止する割込み要求レベルの対応を表 31.5-9 に示します。 表 31.5-9 DMA 転送を抑止する割込み要求レベル 1042 LVL4 LVL3 LVL2 LVL1 LVL0 1 0 0 0 0 DMA 転送は抑止されません。 1 0 0 0 1 "11H" より高いレベルの割込み要求 1 0 0 1 0 "12H" より高いレベルの割込み要求 1 0 0 1 1 "13H" より高いレベルの割込み要求 1 0 1 0 0 "14H" より高いレベルの割込み要求 1 0 1 0 1 "15H" より高いレベルの割込み要求 1 0 1 1 0 "16H" より高いレベルの割込み要求 1 0 1 1 1 "17H" より高いレベルの割込み要求 1 1 0 0 0 "18H" より高いレベルの割込み要求 1 1 0 0 1 "19H" より高いレベルの割込み要求 1 1 0 1 0 "1AH" より高いレベルの割込み要求 1 1 0 1 1 "1BH" より高いレベルの割込み要求 1 1 1 0 0 "1CH" より高いレベルの割込み要求 1 1 1 0 1 "1DH" より高いレベルの割込み要求 1 1 1 1 0 "1EH" より高いレベルの割込み要求 1 1 1 1 1 すべての割込み要求 DMA 転送を抑止する割込み要求レベル FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の 発生 / クリア選択 機能 周辺機能の割込み要求を利用して DMA 転送要求を 発生させる方法と, DMAコントローラ (DMAC) から 周辺機能の割込み要求フラグをクリアする方法を 説明します。 32.1 概要 32.2 構成 32.3 レジスタ 32.4 動作説明と設定手順例 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1043 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.1 MB91665 シリーズ 32.1 概要 本製品では , 周辺機能の割込み要求を利用して DMA 転送を起動することができます。 DMA 転送を起動する割込み要求を選択するレジスタが DMA コントローラ (DMAC) のチャネ ルごとに用意されています。 1つの割込みベクタ番号に複数の割込み要求が割り当てられていた場合に, どの割込み要求フ ラグを DMA コントローラ (DMAC) でクリアするのかも設定する必要があります。 ■ 周辺機能による DMA 転送要求発生についての概要 DMA コントローラ (DMAC) のレジスタで DMA 転送要求の発生要因 ( 転送要求元 ) を 周辺機能の割込み要求に設定できます。 割込みベクタ番号に対応する値を指定して , 使用する割込み要求を選択します。 ■ 周辺機能による DMA 転送要求クリア選択機能の概要 • 割込み要求の選択 DMA 転送要求の発生要因 ( 転送要求元 ) を周辺機能の割込み要求にすると , その割 込み要求フラグは DMA 転送後に DMA コントローラ (DMAC) によってクリアされ ます。 そのため , DMA 転送要求の発生要因 ( 転送要求元 ) として選択した割込みベクタ番 号に複数の割込み要求が割り当てられていると , DMA 転送の終了後 , DMA コント ローラ (DMAC) がクリアする割込み要求フラグを選択する必要があります。 1044 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.2 MB91665 シリーズ 32.2 構成 周辺機能による DMA 転送要求発生部および DMA 転送要求のクリア選択機能の構成について 説明します。 ■ 周辺機能による DMA 転送要求発生部のブロックダイヤグラム 周辺機能の割込み要求を DMA 転送の転送要求元として使用する部分のブロックダイ ヤグラムを図 32.2-1 に示します。 図 32.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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1045 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.2 MB91665 シリーズ ■ DMA 転送要求のクリア選択機能のブロックダイヤグラム DMA 転送要求のクリア選択機能のブロックダイヤグラムを図 32.2-2 に示します。 図 32.2-2 DMA 転送要求のクリア選択機能のブロックダイヤグラム DMA コントローラ (DMAC) から DMA 転送要求クリア 周 辺 バ ス 16 ビット 周辺機能による DMA転送要求の クリア選択レジスタ (ICSELx) デコーダ デコーダ 各周辺機能へ DMA 転送要求をクリア • DMA コントローラ (DMAC) へ DMA 転送停止要求 各周辺機能からの DMA 転送停止要求 周辺機能による DMA 転送要求のクリア選択レジスタ (ICSELx) DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択するレ ジスタです。 • 1046 デコーダ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 32.3 レジスタ DMA転送要求の発生/クリア選択機能で使用するレジスタの構成と機能について説明します。 ■ 周辺機能による DMA 転送要求発生部のレジスタ一覧 DMA 転送要求発生部のレジスタ一覧を表 32.3-1 に示します。 表 32.3-1 周辺機能による DMA 転送要求発生部のレジスタ一覧 DMAC のチャネル CM71-10158-1 レジスタ略称 レジスタ名 参照先 0 IORR0 IO 転送要求設定レジスタ 0 32.3.1 1 IORR1 IO 転送要求設定レジスタ 1 32.3.1 2 IORR2 IO 転送要求設定レジスタ 2 32.3.1 3 IORR3 IO 転送要求設定レジスタ 3 32.3.1 FUJITSU SEMICONDUCTOR LIMITED 1047 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ ■ DMA 転送要求のクリア選択機能のレジスタ一覧 DMA 転送要求のクリア選択機能のレジスタ一覧を表 32.3-2 に示します。 表 32.3-2 DMA 転送要求のクリア選択機能のレジスタ一覧 チャネル 共通 1048 レジスタ略称 レジスタ名 参照先 ICSEL0 周辺機能による DMA 転送要求のクリア選択 32.3.2 レジスタ 0 ICSEL2 周辺機能による DMA 転送要求のクリア選択 32.3.3 レジスタ 2 ICSEL4 周辺機能による DMA 転送要求のクリア選択 32.3.4 レジスタ 4 ICSEL6 周辺機能による DMA 転送要求のクリア選択 32.3.5 レジスタ 6 ICSEL7 周辺機能による DMA 転送要求のクリア選択 32.3.6 レジスタ 7 ICSEL8 周辺機能による DMA 転送要求のクリア選択 32.3.7 レジスタ 8 ICSEL9 周辺機能による DMA 転送要求のクリア選択 32.3.8 レジスタ 9 ICSEL10 周辺機能による DMA 転送要求のクリア選択 32.3.9 レジスタ 10 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ IO 転送要求設定レジスタ (IORR0 ∼ IORR3) 32.3.1 DMA 転送要求の発生要因を周辺機能の割込み要求に設定したときに , どの周辺機能の割込み 要求を DMA 転送要求の発生要因にするかを設定するレジスタです。 DMA コントローラ (DMAC) のチャネルごとに , このレジスタが用意されています。 IO 転送要求設定レジスタ (IORR0 ∼ IORR3) のビット構成を図 32.3-1 に示します。 図 32.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:リード / ライト可能 < 注意事項 > このレジスタは , DMA チャネルコントロールレジスタ (DCCR0 ∼ DCCR3) の RS1, RS0 ビットでDMA転送要求の発生要因を周辺機能の割込み要求に設定 (RS1, RS0=01) したと きに有効になります。 [bit7]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit6]:IOE ( 転送要求許可ビット ) IOS5∼IOS0ビットで指定した割込み要求が発生したときに, 対応するチャネルのDMA コントローラ (DMAC) に , DMA 転送要求を出力するかどうかを設定します。 書込み値 説明 0 DMA 転送要求を出力しません。 ( 周辺機能で発生した割込み要求を DMA 転送要求として使用しません ) 1 DMA 転送要求を出力します。 ( 周辺機能で発生した割込み要求を DMA 転送要求として使用します ) [bit5 ∼ bit0]:IOS5 ∼ IOS0 ( 転送要求選択ビット ) このレジスタに対応するチャネルのDMAコントローラ (DMAC) が, どの周辺機能で発 生した割込み要求を転送要求元として使用するか設定します。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1049 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 IOS5 ∼ IOS0 1050 割込みベクタ 番号 10 進 MB91665 シリーズ 周辺機能 16 進 000000 16 10 外部割込み要求 ch.0 ∼ ch.7 000001 17 11 − 000010 18 12 外部割込み要求 ch.16 ∼ ch.23 000011 19 13 − 000100 20 14 16 ビットリロードタイマ ch.0 ∼ ch.2 000101 21 15 UART/CSIO/I2C ch.0 の受信割込み要求 000110 22 16 UART/CSIO/I2C ch.0 の送信割込み要求 UART/CSIO ch.0 の送信バスアイドル割込み要求 000111 23 17 UART/CSIO/I2C ch.1 の受信割込み要求 001000 24 18 UART/CSIO/I2C ch.1 の送信割込み要求 UART/CSIO ch.1 の送信バスアイドル割込み要求 001001 25 19 − 001010 26 1A UART/CSIO/I2C ch.2 の受信割込み要求 001011 27 1B UART/CSIO/I2C ch.2 の送信割込み要求 UART/CSIO ch.2 の送信バスアイドル割込み要求 001100 28 1C − 001101 29 1D − 001110 30 1E − 001111 31 1F − 010000 32 20 − 010001 33 21 − 010010 34 22 − 010011 35 23 UART/CSIO/I2C ch.6 の受信割込み要求 010100 36 24 UART/CSIO/I2C ch.6 の送信割込み要求 UART/CSIO/I2C ch.6 の送信バスアイドル割込み要求 010101 37 25 32 ビットインプットキャプチャ ch.4 ∼ ch.7 のエッジ検 出割込み要求 010110 38 26 − 010111 39 27 − 011000 40 28 − 011001 41 29 メインタイマ割込み要求 サブタイマ割込み要求 時計カウンタのアンダフロー割込み要求 011010 42 2A 10 ビット A/D コンバータ ・A/D スキャン変換割込み要求 ・A/D 優先変換割込み要求 011011 43 2B − 011100 44 2C 32 ビットインプットキャプチャ ch.0 ∼ ch.3 のエッジ検 出割込み要求 011101 45 2D − FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ IOS5 ∼ IOS0 CM71-10158-1 割込みベクタ 番号 10 進 周辺機能 16 進 011110 46 2E ベースタイマ ch.0 ・アンダフロー割込み要求 ・オーバフロー割込み要求 ・デューティ一致割込み要求 ・トリガ割込み要求 ・測定終了割込み要求 011111 47 2F ベースタイマ ch.1 ・アンダフロー割込み要求 ・オーバフロー割込み要求 ・デューティ一致割込み要求 ・トリガ割込み要求 ・測定終了割込み要求 100000 48 30 ベースタイマ ch.2 ・アンダフロー割込み要求 ・オーバフロー割込み要求 ・デューティ一致割込み要求 ・トリガ割込み要求 ・測定終了割込み要求 100001 49 31 ベースタイマ ch.3 ・アンダフロー割込み要求 ・オーバフロー割込み要求 ・デューティ一致割込み要求 ・トリガ割込み要求 ・測定終了割込み要求 100010 50 32 − 100011 51 33 − 100100 52 34 − 100101 53 35 − 100110 54 36 − 100111 55 37 − 101000 56 38 − 101001 57 39 − 101010 58 3A − 101011 59 3B − 101100 60 3C − 101101 61 3D − 101110 62 3E − 101111 63 3F − FUJITSU SEMICONDUCTOR LIMITED 1051 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ < 注意事項 > • 1 つの割込みベクタ番号を複数の割込み要求で兼用している場合 , DMA 転送の転送要 求元として使用できる割込み要求は 1 つだけです。 DMA 転送の転送要求元にしない割込み要求の発生は禁止してください。 • 1 つの割込みベクタ番号を複数の割込み要求で兼用している場合 , 周辺機能による DMA 転送要求のクリア選択レジスタ (ICSELx) でフラグビットをクリアする割込み要求を 設定してください。 • このレジスタで選択する割込み要求は , 割込みレベルマスクレジスタ (ILM) と割込み コントロールレジスタ (ICR00 ∼ ICR47) の値が次のようになるよう , 割込みレベルを 設定してください。 ILM ≦ ICR 1052 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) 32.3.2 割込みベクタ番号 16 (10 進 ) には , 外部割込み要求 ch.0 ∼ ch.7 が割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) のビット構成を図 32.3-2 に示します。 図 32.3-2 周辺機能による DMA 転送要求のクリア選択レジスタ 0 (ICSEL0) のビット構成 bit 属性 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W EISEL02 EISEL01 EISEL00 R/W R/W R/W 0 0 0 0 0 0 0 0 初期値 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit3]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 1053 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ [bit2 ∼ bit0]:EISEL02 ∼ EISEL00 ( 割込み要求選択ビット ) 割込みベクタ番号 16 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でクリアするフラグビットを選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 16 (10 進 ) に対して , 割込み要求クリ ア信号を出力すると , ここで選択したビットがクリアされます。 EISEL02 EISEL01 EISEL00 1054 説明 割込み要求名 クリアするフラグビット 0 0 0 外部割込み要求 ch.0 EIRR0:ER0 0 0 1 外部割込み要求 ch.1 EIRR0:ER1 0 1 0 外部割込み要求 ch.2 EIRR0:ER2 0 1 1 外部割込み要求 ch.3 EIRR0:ER3 1 0 0 外部割込み要求 ch.4 EIRR0:ER4 1 0 1 外部割込み要求 ch.5 EIRR0:ER5 1 1 0 外部割込み要求 ch.6 EIRR0:ER6 1 1 1 外部割込み要求 ch.7 EIRR0:ER7 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) 32.3.3 割込みベクタ番号 18 (10 進 ) には , 外部割込み要求 ch.16 ∼ ch.23 が割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) のビット構成を図 32.3-3 に示します。 図 32.3-3 周辺機能による DMA 転送要求のクリア選択レジスタ 2 (ICSEL2) のビット構成 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]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 1055 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ [bit2 ∼ bit0]:EISEL22 ∼ EISEL20 ( 割込み要求選択ビット ) 割込みベクタ番号 18 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 18 (10 進 ) に対して , 割込み要求クリ ア信号を出力すると , ここで選択したビットがクリアされます。 EISEL22 EISEL21 EISEL20 1056 説明 割込み要求名 クリアするフラグビット 0 0 0 外部割込み要求 ch.16 EIRR2:ER16 0 0 1 外部割込み要求 ch.17 EIRR2:ER17 0 1 0 外部割込み要求 ch.18 EIRR2:ER18 0 1 1 外部割込み要求 ch.19 EIRR2:ER19 1 0 0 外部割込み要求 ch.20 EIRR2:ER20 1 0 1 外部割込み要求 ch.21 EIRR2:ER21 1 1 0 外部割込み要求 ch.22 EIRR2:ER22 1 1 1 外部割込み要求 ch.23 EIRR2:ER23 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 4 (ICSEL4) 32.3.4 割込みベクタ番号 20 (10 進 ) には , 16 ビットリロードタイマ ch.0 ∼ ch.2 の割込み要求が割 り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 4 (ICSEL4) のビット構成を図 32.3-4 に示します。 図 32.3-4 周辺機能による DMA 転送要求のクリア選択レジスタ 4 (ICSEL4) のビット構成 bit 属性 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W RTSEL1 RTSEL0 R/W R/W 0 0 0 0 0 0 0 0 初期値 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit2]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit1, bit0]:RTSEL1 ∼ RTSEL0 ( 割込み要求選択ビット ) 割込みベクタ番号 20 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 20 (10 進 ) に対して , 割込み要求クリ ア信号を出力すると , ここで選択したビットがクリアされます。 RTSEL1 CM71-10158-1 RTSEL0 説明 割込み要求名 クリアするフラグビット 0 0 16 ビットリロードタイマ ch.0のア ンダフロー割込み要求 TMCSR0:UF 0 1 16 ビットリロードタイマ ch.1のア ンダフロー割込み要求 TMCSR1:UF 1 0 1 1 16 ビットリロードタイマ ch.2のア ンダフロー割込み要求 TMCSR2:UF FUJITSU SEMICONDUCTOR LIMITED 1057 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 6 (ICSEL6) 32.3.5 割込みベクタ番号 41 (10 進 ) には , 次の割込み要求が割り当てられています。 • メインタイマ割込み要求 • サブタイマ割込み要求 • 時計カウンタのアンダフロー割込み要求 DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択するレジスタで す。 周辺機能による DMA 転送要求のクリア選択レジスタ 6 (ICSEL6) のビット構成を図 32.3-5 に示します。 図 32.3-5 周辺機能による DMA 転送要求のクリア選択レジスタ 6 (ICSEL6) のビット構成 bit 属性 初期値 7 6 5 4 3 2 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 0 0 1 0 MWSEL1 MWSEL0 R/W R/W 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit2]:予約ビット 1058 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 [bit1, bit0]:MWSEL1, MWSEL0 ( 割込み要求選択ビット ) 割込みベクタ番号 41 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 41 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 MWSEL1 CM71-10158-1 MWSEL0 説明 割込み要求名 クリアするフラグビット 0 0 メインタイマ割込み要求 MTMCR:MTIF 0 1 サブタイマ割込み要求 STMCR:STIF 1 0 1 1 時計カウンタのアンダフロー WCCR:WCIF 割込み要求 FUJITSU SEMICONDUCTOR LIMITED 1059 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 7 (ICSEL7) 32.3.6 割込みベクタ番号 42 (10 進 ) には , 10 ビット A/D コンバータの優先変換割込み要求と , ス キャン変換割込み要求が割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求をそれぞれ 選択するレジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 7 (ICSEL7) のビット構成を図 32.3-6 に示します。 図 32.3-6 周辺機能による DMA 転送要求のクリア選択レジスタ 7 (ICSEL7) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W ADCSEL0 0 0 0 0 0 0 0 0 R/W R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit1]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit0]:ADCSEL0 ( 割込み要求選択ビット ) 割込みベクタ番号 42 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 42 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 書込み値 1060 説明 割込み要求名 クリアするフラグビット 0 10ビットA/Dコンバータユニット0の ADCR0:PCIF 優先変換割込み要求 1 10ビットA/Dコンバータユニット0の ADCR0:SCIF スキャン変換割込み要求 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 8 (ICSEL8) 32.3.7 割込みベクタ番号 44 (10 進 ) には , 32 ビットインプットキャプチャ ch.0 ∼ ch.3 の割込み要 求が割り当てられています。 DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択するレジスタで す。 周辺機能による DMA 転送要求のクリア選択レジスタ 8 (ICSEL8) のビット構成を図 32.3-7 に示します。 図 32.3-7 周辺機能による DMA 転送要求のクリア選択レジスタ 8 (ICSEL8) のビット構成 bit 属性 7 6 5 4 3 2 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 0 0 初期値 1 0 ICUSEL1 ICUSEL0 R/W R/W 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit2]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 1061 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ [bit1, bit0]:ICUSEL1, ICUSEL0 ( 割込み要求選択ビット ) 割込みベクタ番号 44 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 44 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 説明 ICUSEL1 ICUSEL0 1062 割込み要求名 クリアするフラグ ビット 0 0 32 ビットインプットキャプチャ ch.0 の ICS01:ICP0 エッジ検出割込み要求 0 1 32 ビットインプットキャプチャ ch.1 の ICS01:ICP1 エッジ検出割込み要求 1 0 32 ビットインプットキャプチャ ch.2 の ICS23:ICP2 エッジ検出割込み要求 1 1 32 ビットインプットキャプチャ ch.3 の ICS23:ICP3 エッジ検出割込み要求 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 9 (ICSEL9) 32.3.8 割込みベクタ番号 37 (10 進 ) には , 次の割込み要求が割り当てられています。 • 32 ビットインプットキャプチャ ch.4 ∼ ch.7 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択する レジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 9 (ICSEL9) のビット構成を図 32.3-8 に示します。 図 32.3-8 周辺機能による DMA 転送要求のクリア選択レジスタ 9 (ICSEL9) のビット構成 bit 属性 7 6 5 4 3 予約 R/W 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 0 初期値 2 1 0 ICUSEL12 ICUSEL11 ICUSEL10 R/W R/W R/W 0 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit3]:予約ビット CM71-10158-1 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED 1063 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ [bit2 ∼ bit0]:ICUSEL12 ∼ ICUSEL10 ( 割込み要求選択ビット ) 割込みベクタ番号 37 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を選択します。 DMA コントローラ (DMAC) が割込みベクタ番号 37 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 説明 ICUSEL12 ICUSEL11 ICUSEL10 1064 割込み要求名 クリアするフ ラグビット 0 0 0 32 ビットインプットキャプチャ ICS45:ICP4 ch.4 のエッジ検出割込み要求 0 0 1 32 ビットインプットキャプチャ ICS45:ICP5 ch.5 のエッジ検出割込み要求 0 1 0 32 ビットインプットキャプチャ ICS67:ICP6 ch.6 のエッジ検出割込み要求 0 1 1 32 ビットインプットキャプチャ ICS67:ICP7 ch.7 のエッジ検出割込み要求 1 0 0 1 0 1 1 1 0 1 1 1 FUJITSU SEMICONDUCTOR LIMITED 予約 CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ 周辺機能による DMA 転送要求のクリア選択レジスタ 10 (ICSEL10) 32.3.9 割込みベクタ番号 46 ∼ 49 (10 進 ) には , それぞれベースタイマ ch.0 ∼ ch.3 の割込み要求が 割り当てられています。 この中から , DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求をそれぞれ 選択するレジスタです。 周辺機能による DMA 転送要求のクリア選択レジスタ 10 (ICSEL10) のビット構成を図 32.3-9 に示します。 図 32.3-9 周辺機能による DMA 転送要求のクリア選択レジスタ 10 (ICSEL10) のビット構成 bit 属性 7 6 5 4 予約 R/W 予約 R/W 予約 R/W 予約 R/W 0 0 0 0 初期値 3 2 1 0 BTSEL03 BTSEL02 BTSEL01 BTSEL00 R/W R/W R/W R/W 0 0 0 0 R/W:リード / ライト可能 < 注意事項 > DMA 転送中にこのレジスタを書き換えないでください。 [bit7 ∼ bit4]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit3]:BTSEL03 ( 割込み要求選択ビット ) 割込みベクタ番号 49 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を , 割込み要求 0 と割込み要求 1 の中 から選択します。 割込み要求 0 および割込み要求 1 に割り当てられている割込み要求は , ベースタイマの 使用方法によって異なります。 ベースタイマの使用方法 CM71-10158-1 割込み要求 0 割込み要求 1 16/32 ビットリロードタイマ アンダフロー割込み要求 トリガ割込み要求 16 ビット PWM タイマ アンダフロー割込み要求 デューティ一致割込み要求 トリガ割込み要求 16/32 ビット PWC タイマ オーバフロー割込み要求 測定終了割込み要求 16 ビット PPG タイマ アンダフロー割込み要求 トリガ割込み要求 FUJITSU SEMICONDUCTOR LIMITED 1065 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ DMA コントローラ (DMAC) が割込みベクタ番号 49 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 説明 書込み値 割込み要求名 クリアするフラグビット ベースタイマ ch.3 の割込み要求 0 BT3STC:UDIR BT3STC:DTIR BT3STC:OVIR ベースタイマ ch.3 の割込み要求 1 BT3STC:TGIR BT3STC:EDIR 0 1 [bit2]:BTSEL02 ( 割込み要求選択ビット ) 割込みベクタ番号 48 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を , 割込み要求 0 と割込み要求 1 の中 から選択します。 割込み要求 0 および割込み要求 1 に割り当てられている割込み要求は , ベースタイマの 使用方法によって異なります。 ベースタイマの使用方法 割込み要求 0 割込み要求 1 16/32 ビットリロードタイマ アンダフロー割込み要求 トリガ割込み要求 16 ビット PWM タイマ アンダフロー割込み要求 デューティ一致割込み要求 トリガ割込み要求 16/32 ビット PWC タイマ オーバフロー割込み要求 測定終了割込み要求 16 ビット PPG タイマ アンダフロー割込み要求 トリガ割込み要求 DMA コントローラ (DMAC) が割込みベクタ番号 48 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 説明 書込み値 割込み要求名 BT2STC:UDIR BT2STC:DTIR BT2STC:OVIR ベースタイマ ch.2 の割込み要求 1 BT2STC:TGIR BT2STC:EDIR 0 1 クリアするフラグビット ベースタイマ ch.2 の割込み要求 0 [bit1]:BTSEL01 ( 割込み要求選択ビット ) 割込みベクタ番号 47 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を , 割込み要求 0 と割込み要求 1 の中 から選択します。 割込み要求 0 および割込み要求 1 に割り当てられている割込み要求は , ベースタイマの 使用方法によって異なります。 1066 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.3 MB91665 シリーズ ベースタイマの使用方法 割込み要求 0 割込み要求 1 16/32 ビットリロードタイマ アンダフロー割込み要求 トリガ割込み要求 16 ビット PWM タイマ アンダフロー割込み要求 デューティ一致割込み要求 トリガ割込み要求 16/32 ビット PWC タイマ オーバフロー割込み要求 測定終了割込み要求 16 ビット PPG タイマ アンダフロー割込み要求 トリガ割込み要求 DMA コントローラ (DMAC) が割込みベクタ番号 47 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 説明 書込み値 割込み要求名 クリアするフラグビット ベースタイマ ch.1 の割込み要求 0 BT1STC:UDIR BT1STC:DTIR BT1STC:OVIR ベースタイマ ch.1 の割込み要求 1 BT1STC:TGIR BT1STC:EDIR 0 1 [bit0]:BTSEL00 ( 割込み要求選択ビット ) 割込みベクタ番号 46 (10 進 ) に割り当てられた割込み要求の中から DMA コントローラ (DMAC) でフラグビットをクリアする割込み要求を , 割込み要求 0 と割込み要求 1 の中 から選択します。 割込み要求 0 および割込み要求 1 に割り当てられている割込み要求は , ベースタイマの 使用方法によって異なります。 ベースタイマの使用方法 割込み要求 0 割込み要求 1 16/32 ビットリロードタイマ アンダフロー割込み要求 トリガ割込み要求 16 ビット PWM タイマ アンダフロー割込み要求 デューティ一致割込み要求 トリガ割込み要求 16/32 ビット PWC タイマ オーバフロー割込み要求 測定終了割込み要求 16 ビット PPG タイマ アンダフロー割込み要求 トリガ割込み要求 DMA コントローラ (DMAC) が割込みベクタ番号 46 (10 進 ) に対して , 割込み要求クリ ア信号を出力するとこのビットで選択した割込み要求のフラグビットがクリアされま す。 書込み値 説明 割込み要求名 ベースタイマ ch.0 の割込み要求 0 クリアするフラグビット BT0STC:UDIR BT0STC:DTIR BT0STC:OVIR ベースタイマ ch.0 の割込み要求 1 BT0STC:TGIR BT0STC:EDIR 0 1 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1067 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.4 MB91665 シリーズ 32.4 動作説明と設定手順例 周辺機能の割込み要求で DMA 転送を起動する場合の動作と設定手順について説明します。 DMA 転送時の動作 32.4.1 ■ 設定 DMA 転送の転送要求元を周辺機能の割込み要求にする場合は , 割込みベクタ番号の選 択や , 各周辺機能での設定も必要です。 設定する順番は次のようになります。 1. 割込みベクタ番号の選択 (IO 転送要求設定レジスタ (IORR0 ∼ IORR3) ) - IOS5 ∼ IOS0 ビットに割込みベクタ番号に対応した値を書き込む - IOE ビットで周辺機能の割込み要求による DMA 転送の開始を許可する (IOE=1) 2. DMA コントローラ (DMAC) でクリアする割込み要求を選択 ( 周辺回路による DMA 転送要求のクリア選択レジスタ (ICSELx) ) 3. DMA コントローラ (DMAC) の設定 詳しくは , 「第 31 章 DMA コントローラ (DMAC)」を参照してください。 - DMA 転送の転送要求元を周辺機能の割込み要求に設定 - DMA 転送の動作を許可して , 転送要求待ち状態に設定 4. 周辺機能の設定 使用する周辺機能の章を参照してください。 - DMA 転送に使用する割込み要求のフラグをクリア - DMA 転送に使用する割込み要求の発生を許可 < 注意事項 > • 周辺機能の割込み要求フラグは DMA コントローラ (DMAC) によってクリアされるた め , 周辺機能の割込み要求としては使用できません。 DMA 転送の転送要求元として使用する割込み要求は , 割込みレベルを "31" ( 割込み禁 止 ) にしてください。 割込みレベルの設定方法については , 「第 10 章 割込みコントローラ」を参照してく ださい。 • 1068 周辺機能の設定をする際は, 割込み要求フラグをクリアしてから, 割込み要求の発生を 許可してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.4 MB91665 シリーズ ■ 動作 次のように動作します。 1. 周辺機能を起動 2. 周辺機能で DMA 転送要求元になる割込み要求が発生 3. DMA 転送要求が発生し , DMA コントローラ (DMAC) が起動 4. ブロックサイズ×転送回数分 , 1 転送ごとに , DMA コントローラ (DMAC) から周辺 機能の割込み要求フラグのクリアを要求 5. DMA 転送終了 < 注意事項 > 割込み要求が発生した時点での割込みレベルマスクレジスタ (ILM) と割込みコントロー ルレジスタ (ICR00 ∼ ICR47) の値が次のようになるよう , 割込みレベルを設定してくだ さい。 ILM ≦ ICR 割込みレベルマスクレジスタ (ILM) の値が割込みコントロールレジスタ (ICR00 ∼ICR47) の値より大きいと , 周辺機能の割込み要求発生動作が成立し , DMA 転送要求も発生できま すが , 割込み要求処理動作が不安定になります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1069 第 32 章 周辺機能による DMA 転送要求の発生 / クリア選択機能 32.4 1070 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 第 33 章 内蔵プログラム メモリ制御 本製品は , 内蔵プログラムメモリとしてフラッシュ メモリを搭載している品種とマスク ROM を搭載し ている品種があります。 これらの内蔵プログラムメモリを使用する場合の レジスタ設定について説明します。 33.1 内蔵プログラムメモリ制御部の概要 33.2 内蔵プログラムメモリ制御部のレジスタ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1071 第 33 章 内蔵プログラムメモリ制御 33.1 MB91665 シリーズ 33.1 内蔵プログラムメモリ制御部の概要 本製品は , 内蔵プログラムメモリとしてフラッシュメモリを搭載している品種とマスク ROM を搭載している品種があります。 ■ 概要 内蔵プログラムメモリを使用するときに設定が必要なレジスタは次のレジスタです。 フラッシュメモリ品 , マスク ROM 品どちらの品種を使用している場合も設定が必要で す。 • FLASH 制御レジスタ (FCTLR) フラッシュメモリ品をご使用の場合は ,「第 34 章 フラッシュメモリ」もご一読くださ い。 ■ クロック 内蔵プログラム制御部で使用するクロックを表 33.1-1 に示します。 表 33.1-1 内蔵プログラム制御部で使用するクロック クロック名 動作クロック 1072 内容 ソースクロック (SRCCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 MB91665 シリーズ 第 33 章 内蔵プログラムメモリ制御 33.2 33.2 内蔵プログラムメモリ制御部のレジスタ 内蔵プログラムメモリ制御部のレジスタの構成と機能について説明します。 ■ 内蔵プログラムメモリ制御部のレジスタ一覧 内蔵プログラムメモリ制御部のレジスタ一覧を表 33.2-1 に示します。 表 33.2-1 内蔵プログラムメモリ制御部のレジスタ一覧 レジスタ略称 レジスタ名 FCTLR FLASH 制御レジスタ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 参照先 33.2.1 1073 第 33 章 内蔵プログラムメモリ制御 33.2 MB91665 シリーズ FLASH 制御レジスタ (FCTLR) 33.2.1 内蔵プログラムメモリへのアクセスを制御するレジスタです。 FLASH 制御レジスタ (FCTLR) のビット構成を図 33.2-1 に示します。 図 33.2-1 FLASH 制御レジスタ (FCTLR) のビット構成 bit 属性 初期値 15 14 13 12 11 10 9 8 予約 R/W FWE 未定義 R/W 未定義 R/W FSZ1 FSZ0 FWC1 FWC0 R/W R/W R/W R/W R/W 1 0 0 0 1 0 1 1 bit 7 0 予約 R/W 属性 0 初期値 R/W:リード / ライト可能 < 注意事項 > 内蔵プログラムメモリにアクセス中に , このレジスタの FWC1, FWC0 以外のビットを書 き換えると正常にアクセスできません。このレジスタの FWC1, FWC0 以外のビットは必 ず , 次のように内蔵プログラムメモリにアクセスが行われていないときに書き換えてくだ さい。 • 読出しアクセス時:読出し動作の直前 • コマンド発行時:FLASH ステータスレジスタ (FSTR) の FRDY ビットが "1" のとき また , 内蔵プログラムメモリ領域のプログラムにこのレジスタの FWC1, FWC0 以外の ビット値を変更する命令を書かないでください。このレジスタの FWC1, FWC0 以外の ビットは , 内蔵 RAM か外部領域上のプログラムで書き換えてください。 [bit15]:予約ビット 1074 書込み時 必ず "1" を書き込んでください。 読出し時 "1" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 33 章 内蔵プログラムメモリ制御 33.2 MB91665 シリーズ [bit14]:FWE (FLASH 書込み許可 ) • フラッシュメモリ品の場合 フラッシュメモリへの書込みを許可/禁止することでアクセスモードを設定します。 書込み値 説明 0 書込みを禁止します。CPU ROM モードが設定されます。 1 書込みを許可します。CPU プログラミングモードが設定されます。 • マスク ROM 品の場合 予約ビットとなります。 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit13, bit12]:未定義ビット 書込み時 無視されます。 読出し時 "0" が読み出されます。 [bit11, bit10]:FSZ1, FSZ0 (FLASH アクセスサイズ設定ビット ) 内蔵プログラムメモリにアクセスするときの , サイズ ( ビット幅 ) を設定します。 FSZ1 FSZ0 アクセスサイズ 0 0 設定禁止 0 1 16 ビット 1 0 32 ビット 1 1 設定禁止 FCTLR の FSZ [1:0] は , "10"(32 ビット ) に設定して使用してください。 内蔵プログラムメモリを読み出すときと , 書き込む場合で , 設定できるアクセスサイズ が異なります。 読出し CM71-10158-1 書込み CPU ROM モード 32 ビット ― CPU プログラミングモード 16 ビット 16 ビット FUJITSU SEMICONDUCTOR LIMITED 1075 第 33 章 内蔵プログラムメモリ制御 33.2 MB91665 シリーズ [bit9, bit8]:FWC1, FWC0 (FLASH ウェイト設定ビット ) 内蔵プログラムメモリを読み出す場合の読出し要求間隔 (ウェイトサイクル) を設定し ます。 FWC1 FWC0 ウェイトサイクル 0 0 0 1 設定禁止 1 1 0 2 1 1 3 [bit7 ∼ bit0]:予約ビット 1076 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ フラッシュメモリの機能と動作について説明しま す。 34.1 フラッシュメモリの概要 34.2 フラッシュメモリの構成 34.3 フラッシュメモリのレジスタ 34.4 フラッシュメモリのアクセスモード 34.5 自動アルゴリズム 34.6 フラッシュメモリの動作説明 34.7 データポーリングフラグ (DQ7) の制約事項と回避方法 34.8 フラッシュメモリの使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1077 第 34 章 フラッシュメモリ 34.1 MB91665 シリーズ 34.1 フラッシュメモリの概要 本製品に内蔵されているフラッシュメモリの容量は 128K バイトになります。 CPU からデータをセクタ単位または全セクタ一括で消去できます。また , ハーフワード単位 でデータを書き込むことができます。 ■ 概要 本製品に内蔵されているフラッシュメモリは , CPU モード 2 種類と ROM ライタモード の計 3 種類の中からアクセスモードを選択できます。 • CPU モード フラッシュメモリを CPU のプログラム / データ格納用のメモリとして使用します。 次の 2 種類のモードがあります。 - CPU プログラミングモード フラッシュメモリのデータ書込み/消去ができるモードです (自動アルゴリズム *) 。 ワードアクセスできないため , このモードで動作しているときはフラッシュメ モリ上のプログラムを実行することはできません。ハーフワードアクセスが可 能です。 - CPU ROM モード フラッシュメモリのデータの読出しのみを行うモードです。ワードアクセスで きます。ただし , このモードでは , データ書込み / 消去の自動アルゴリズムの起 動は行えません。 • ROM ライタモード ROM ライタからフラッシュメモリの読出し , 書込みおよび消去ができます ( 自動ア ルゴリズム *) 。 *: 自動アルゴリズム =Embedded Algorithm < 注意事項 > 本書では , フラッシュメモリを CPU モードで利用する場合について記載します。 ROM ライタからフラッシュメモリにアクセスする場合については , ご利用の ROM ライ タの取扱い説明書を参照してください。 1078 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.2 MB91665 シリーズ 34.2 フラッシュメモリの構成 フラッシュメモリはブロック構成について説明します。 ■ フラッシュメモリのブロックダイヤグラム フラッシュメモリのブロックダイヤグラムを図 34.2-1 に示します。 図 34.2-1 フラッシュメモリのブロックダイヤグラム CPU RAM XBS フラッシュ オンチップバス レディ制御用 カウンタ RDY RESETX BYTEX アクセス制御 信号生成 OEX WEX XBS フラッシュメモリ CEX アドレス変換 FA[19:0] DIN[15:0] データ処理 CM71-10158-1 DO[31:0] FUJITSU SEMICONDUCTOR LIMITED 1079 第 34 章 フラッシュメモリ 34.2 MB91665 シリーズ ■ フラッシュメモリのセクタ構成 フラッシュメモリのセクタ構成を容量ごとに示します。 128K バイトのフラッシュメモリのメモリマップを図 34.2-2 に示します。 図 34.2-2 メモリマップ (128K バイトフラッシュメモリ ) 0024 0000H 000F FFFFH 000F E000H 0020 0000H SA3 (8KB) SA2 (8KB) 000F C000H 001C 0000H SA1 (8KB) 000F A000H 0018 0000H SA0 (8KB) 000F 8000H 000F 7FFFH 0014 0000H SA5 (32KB) 0010 0000H フラッシュメモリ 128Kバイト 000F 0000H 000E 0000H SA4 (64KB) 0004 0000H 000E 0000H bit 31 bit 0 +0 +1 +2 +3 ■ クロック フラッシュメモリで使用するクロックを表 34.2-1 に示します。 表 34.2-1 フラッシュメモリで使用するクロック クロック名 動作クロック 1080 内容 ソースクロック (SRCCLK) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.3 MB91665 シリーズ 34.3 フラッシュメモリのレジスタ フラッシュメモリで使用するレジスタの構成と機能について説明します。 ■ フラッシュメモリのレジスタ一覧 フラッシュメモリのレジスタ一覧を表 34.3-1 に示します。 表 34.3-1 フラッシュメモリのレジスタ一覧 CM71-10158-1 レジスタ略称 FSTR レジスタ名 FLASH ステータスレジスタ 34.3.1 FCTLR FLASH 制御レジスタ 34.3.2 FUJITSU SEMICONDUCTOR LIMITED 参照先 1081 第 34 章 フラッシュメモリ 34.3 34.3.1 MB91665 シリーズ FLASH ステータスレジスタ (FSTR) フラッシュメモリの状態を示すレジスタです。 FLASH ステータスレジスタ (FSTR) のビット構成を図 34.3-1 に示します。 図 34.3-1 FLASH ステータスレジスタ (FSTR) のビット構成 bit 属性 初期値 7 6 5 4 3 2 1 0 予約 R 予約 R 予約 R 予約 R 予約 R 予約 R 予約 R FRDY 0 0 0 0 0 0 0 1 R R:リードオンリ [bit7 ∼ bit1]:予約ビット 書込み時 必ず "0" を書き込んでください。 読出し時 "0" が読み出されます。 [bit0]:FRDY ( フラッシュ動作ステータスビット ) 自動アルゴリズムでフラッシュメモリのデータ書込み / 消去動作が実行中か完了して いるかを示します。動作中の場合 , フラッシュメモリへデータを書き込んだりデータを 消去したりすることはできません。 読出し値 説明 0 動作中 ( データ書込み / 消去不可 ) 1 動作完了 ( データ書込み / 消去可能 ) ・マスク ROM 品の場合 常に "1" が読み出されます。 1082 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.3 MB91665 シリーズ 34.3.2 FLASH 制御レジスタ (FCTLR) 内蔵プログラムメモリへのアクセスを制御するレジスタです。 このレジスタについては , 「第 33 章 内蔵プログラムメモリ制御」の「33.2.1 FLASH 制御 レジスタ (FCTLR)」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1083 第 34 章 フラッシュメモリ 34.4 MB91665 シリーズ 34.4 フラッシュメモリのアクセスモード CPU からフラッシュメモリにアクセスする場合は次の 2 つのアクセスモードがあります。 • CPU プログラミングモード • CPU ROM モード ■ 概要 FLASH 制御レジスタ (FCTLR) の FWE ビットで設定できます。 • CPU ROM モード (FWE=0) フラッシュメモリのデータの読出しのみを行うモードです。ワードアクセスできる ため , 32 ビット長のデータを一括で読み出せます。 ただし , このモードでは , データ書込み / 消去の自動アルゴリズムの起動は行えませ ん。 < 注意事項 > リセットが解除されるとこのモードが設定されます。 • CPU プログラミングモード (FWE=1) フラッシュメモリの読出し , およびデータ書込み / 消去ができるモードです。この モードでは , ワードアクセスできないため , このモードで動作しているときはフ ラッシュメモリ上のプログラムを実行することはできません。動作内容は次のとお りです。 - 読出し時 ハーフワードでフラッシュメモリにアクセスして , 16 ビットのデータを一括で 読み出します。 - コマンド書込み時 自動アルゴリズムを起動しデータ書込み / 消去を行います。自動アルゴリズムに ついては , 「34.5 自動アルゴリズム」を参照してください。 < 注意事項 > CPU が動作時にリセットが解除されると CPU ROM モードが設定されます。このモード に設定したい場合は , リセット解除後 FWE ビットに "1" を書き込んでください。また , CPU プログラミングモード設定後にリセットが発生すると , FWE ビットが "0" に変わり CPU ROM モードに戻ります。 1084 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ 34.5 自動アルゴリズム CPU プログラミングモードを利用する場合 , フラッシュメモリへのデータ書込み / 消去は自 動アルゴリズムを起動して行います。 自動アルゴリズムについて説明します。 コマンドシーケンス 34.5.1 フラッシュメモリへ 1 回∼ 6 回連続でハーフワード (16 ビット ) のデータを書き込むと 自動アルゴリズムが起動します。これをコマンドとよびます。コマンドシーケンスを 表 34.5-1 に示します。 表 34.5-1 コマンドシーケンス 1 回目 2 回目 3 回目 4 回目 5 回目 6 回目 書込み 回数 Addr Data Addr Data Addr Data Addr Data Addr Data Addr Data リセット 1 FXXXXH F0F0H -- -- -- -- -- -- -- -- -- -- リセット 4 FAAAAH AAAAH F5556H 5555H FAAAAH F0F0H -- -- -- -- -- -- データ 書込み 4 FAAAAH AAAAH F5556H 5555H FAAAAH A0A0H PA PD -- -- -- -- チップ消去 6 FAAAAH AAAAH F5556H 5555H FAAAAH 8080H FAAAAH AAAAH F5556H 5555H FAAAAH 1010H セクタ消去 6 FAAAAH AAAAH F5556H 5555H FAAAAH 8080H FAAAAH AAAAH F5556H 5555H セクタ消去 一時停止 1 FXXXXH B0B0 H -- -- -- -- -- -- -- セクタ消去 再開 1 FXXXXH 3030 H -- -- -- -- -- -- 連続モード 3 FAAAAH AAAAH F5556H -- 連続書込み 2 FXXXXH A0A0 H 連続モード リセット 2 FXXXXH コマンド PA 5555H FAAAAH 2020H PD F0F0H 9090 H FXXXXH または 0000H SA 3030H -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- PA:書込みアドレス SA:セクタアドレス (*) PA:アドレス PD:書込みデータ < 注意事項 > • 必ずハーフワードで書き込んでください。( アドレスは CPU モード時のアドレスを記 載しています ) • 不正なアドレスやデータを書き込んだ場合や , 書き込む順番を間違えた場合はフラッ シュメモリは読出しモードにリセットされます。 セクタアドレスは下位 4 ビットが "2H, "6 H ", "AH", "E H " のいずれかを示す 32 ビット • アドレス空間の下位側を指定してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1085 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ ■ リセットコマンド 表 34.5-1 に記載されているリセットコマンドをフラッシュメモリ領域に連続して書き 込むとフラッシュメモリを読出し / リセット状態にできます。 書込みサイクルが 1 回だけのリセットコマンドと 4 回のリセットコマンドがあります が , 本質的に違いはありません。 リセットコマンドを発行すると , フラッシュメモリは , 他のコマンドが発行されるまで 読出し / リセット状態を保ちます。 自動アルゴリズムの実行がタイミングリミットを超過した場合は , リセットコマンド を発行してフラッシュメモリを読出し / リセット状態へ復帰させてください。読出し サイクルでフラッシュメモリからデータを読み出してください。 実際の動作については , 「34.6.1 リセット動作」を参照してください。 < 注意事項 > 本デバイスに電源が投入されると , フラッシュメモリは自動的に読出し / リセット状態に 設定されます。この場合は , リセットコマンドを発行する必要はありません。コマンドが 正常に終了しなかった場合や自動アルゴリズムを初期化するときにリセットコマンドを 発行してください。 ■ プログラム ( データ書込み ) コマンド 表 34.5-1 に記載されているデータ書込みコマンドをフラッシュメモリ領域に4回連続し て書き込むと自動アルゴリズムを起動してフラッシュメモリにデータを書き込めます。 データの書込みはどのようなアドレスの順番でもセクタの境界を越えても行えます。 CPU プログラミングモードでは , ハーフワードで書込みを行います。 表 34.5-1 に記載されている 4 回目の書込みが終了すると , 自動アルゴリズムが起動し , フラッシュメモリへのデータ書込みが開始されます。 データ書込みのコマンドシーケンスを書き込んだあと , 外部からフラッシュメモリを 制御する必要はありません。 実際の動作については , 「34.6.2 データ書込み動作」を参照してください。 < 注意事項 > • 4 回目の書込みコマンド ( 書込みデータサイクル ) を奇数番地に書き込むと , 書込みが 正しく行われません。必ず偶数番地に書き込んでください。 • 1 回のデータ書込みのコマンドシーケンスではハーフワードのデータ 1 つしか書き込 めません。複数のデータを書き込みたい場合は , 1 データに 1 度データ書込みのコマン ドシーケンスを発行してください。 ■ チップ消去コマンド 表 34.5-1 に記載されているチップ消去コマンドをフラッシュメモリ領域に 6 回連続し て書き込むとフラッシュメモリの全セクタを一括で消去できます。 1086 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ 表 34.5-1 に記載されている 6 回目の書込みが終了すると , 自動アルゴリズムが起動し チップ消去動作が開始されます。 チップ消去の自動アルゴリズムが起動するとチップ消去する前に , フラッシュメモリ がチップ内のすべてのセルに "0" を書き込んで , マージンを検証 ( プリプログラム ) す るため , チップ消去前に , フラッシュメモリに書込みを行う必要はありません。 また , マージン検証中は , 外部からフラッシュメモリを制御する必要はありません。 実際の動作については , 「34.6.3 チップ消去動作」を参照してください。 ■ セクタ消去コマンド 表 34.5-1 に記載されているセクタ消去コマンドをフラッシュメモリ領域に 6 回連続し て書き込むとフラッシュメモリのセクタを消去できます。 表 34.5-1 に記載されている 6 回目の書込みが終了し , 最短で 50μs 経過 ( タイムアウト 期間 ) すると , セクタ消去動作が開始されます。 複数のセクタを消去したい場合は , 50μs ( タイムアウト期間 ) 以内に消去するセクタの アドレスにセクタ消去コード (3030H) を書き込んでください。セクタ消去コードが , タ イムアウト期間内に入力されず , タイムアウト期間を過ぎてから入力された場合 , その セクタ消去コードは無効になります。 セクタ消去の自動アルゴリズムが起動するとセクタ消去する前に , フラッシュメモリ が消去するセクタのセルに "0" を書き込んで , マージンを検証 ( プリプログラム ) する ため , セクタ消去前に , フラッシュメモリに書込みを行う必要はありません。 また , マージン検証中は , 外部からフラッシュメモリを制御する必要はありません。 実際の動作については , 「34.6.4 セクタ消去動作」を参照してください。 ■ セクタ消去一時停止コマンド セクタ消去中に , 表 34.5-1 に記載されているセクタ消去一時停止コマンドをフラッ シュメモリ領域に書き込むとセクタ消去を一時停止し , 消去中以外のセクタからデー タを読み出したり , データを書き込んだりできます。 セクタ消去コマンド後のタイムアウト期間に , このコマンドが発行されると , 直ちにタ イムアウトを終了し消去動作を中止します。このコマンドが発行されてから実際にセ クタ消去が停止するまでに最大で 20μs の時間がかかります。 実際の動作については , 「34.6.5 セクタ消去一時停止動作」を参照してください。 < 注意事項 > このコマンドはセクタ消去中のみ有効です。チップ消去中やデータ書込み中にこのコマン ドを発行しても無視されます。 ■ セクタ消去再開コマンド 表 34.5-1 に記載されているセクタ消去再開コマンドをフラッシュメモリ領域に連続し て書き込むとセクタ消去一時停止状態を解除し , セクタ消去を再開できます。 実際の動作については , 「34.6.6 セクタ消去再開動作」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1087 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ < 注意事項 > このコマンドはセクタ消去一時停止中のみ有効です。セクタ消去中にこのコマンドを発行 しても無視されます。 自動アルゴリズムの実行状態 34.5.2 フラッシュメモリでは , データ書込み / 消去を自動アルゴリズムで行うため , 自動アルゴリズ ムが実行中かどうかを FLASH ステータスレジスタ (FSTR) の FRDY ビットで , 動作状態を ハードウェアシーケンスフラグで確認できます。 FLASH ステータスレジスタ (FSTR) の FRDY ビットについては , 「34.3.1 FLASH ス テータスレジスタ (FSTR)」を参照してください。 ■ ハードウェアシーケンスフラグ 自動アルゴリズムの状態を示すフラグです。FLASH ステータスレジスタ (FSTR) の FRDY ビットが "0" のときに , フラッシュメモリの任意のアドレスを読み出すと動作状 態を確認できます。 ハードウェアシーケンスフラグのビット構成を図 34.5-1 に示します。 図 34.5-1 ハードウェアシーケンスフラグのビット構成 ハーフワードアクセスの場合 bit 15 14 未定義 bit 未定義 13 12 11 10 9 8 未定義 未定義 未定義 未定義 未定義 未定義 7 6 5 4 3 2 1 0 DPOLL TOGG TLOV 未定義 SETI 未定義 未定義 未定義 6 5 4 3 2 1 0 TOGG TLOV 未定義 SETI 未定義 未定義 未定義 バイトアクセスの場合 bit 7 DPOLL < 注意事項 > 1088 • ワードアクセスで読み出すことはできません。必ず , CPU プログラミングモードのと きにハーフワードかバイトアクセスで読み出してください。 • CPU ROM モードで任意のアドレスを読み出しても , ハードウェアシーケンスフラグ を読み出すことはできません。 • バイトアクセスで読み出すときは , 奇数アドレスを読み出してください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ ● 各ビットとフラッシュメモリの状態 ハードウェアシーケンスフラグの各ビットの状態とフラッシュメモリ状態の対応を表 34.5-2 に示します。 表 34.5-2 フラグとフラッシュメモリ状態の対応 DPOLL 状態 実行中 書込み中 セクタ消去 TOGG 反転 トグル *1 データ タイムアウト期間 1 トグル 0 消去期間 トグル チップ消去 0 セクタ消去 一時停止中 1 読出し ( 消去一時停止中セ クタ ) トグル 1 TLOV SETI 0 0 0 1 0 1 0 1 0 0 読出し データ *1 データ *1 データ *1 データ *1 ( 消去一時停止中セ クタ以外 ) 書込み 反転デー トグル *2 1 ( 消去一時停止中セ タ *1 クタ ) 0 1 0 タイム セクタ / チップ消去コマンド リミット 超過 セクタ消去一時停止 反転デー トグル タ *1 0 トグル 0 セクタ消去一時停止中の書込み トグル 動作 1 1 1 1 *1 : 読み出される値については , 「● ビット説明」を参照してください。 *2 : 連続で読み出すと指定したアドレスに関係なく "1" と "0" を交互に出力するトグ ル動作になります。 ● ビット説明 [bit15 ∼ bit8]:未定義ビット [bit7]:DPOLL ( データポーリングフラグ DQ7) 任意のアドレスを指定してハードウェアシーケンスフラグを読み出すと , データポー リング機能で自動アルゴリズムが実行中かどうかをこのビットに示します。 読み出される値は動作状態によって異なります。 • データ書込み時 - データ書込み中: 最後に書き込まれたデータのbit7の値と逆の値 (反転データ) が読み出されます。 ハードウェアシーケンスフラグを読み出すために指定したアドレスにはアクセ スされません。 - データ書込み終了後: ハードウェアシーケンスフラグを読み出すために指定したアドレスの bit7 の値 が読み出されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1089 第 34 章 フラッシュメモリ 34.5 • • • MB91665 シリーズ セクタ消去時 - セクタ消去実行中:消去中のセクタから "0" が読み出されます。 - セクタ消去後:必ず "1" が読み出されます。 チップ消去時 - チップ消去実行中:必ず "0" が読み出されます。 - チップ消去後:必ず "1" が読み出されます。 セクタ消去一時停止時 このビットとトグルビットフラグ DQ6(TOGG) を参照することでセクタ一時停止中 のセクタや消去中のセクタを確認できます。 - 消去一時停止読出しモード時に消去中セクタのアドレスを指定して読み出した 場合: "1" が読み出されます。 - 消去一時停止読出しモード時に消去中セクタ以外のアドレスを指定して読み出 した場合: 指定したアドレスの bit7 の値が読み出されます。 - 消去一時停止書込みモード時に消去中セクタのアドレスを指定して読み出した 場合: 消去中セクタのデータの bit7 の値と逆の値 ( 反転データ ) が読み出されます。 < 注意事項 > 自動アルゴリズムを起動しているときは , 指定したアドレスのデータを読み出すことはで きません。このビットで自動アルゴリズムの動作が終了していることを確認してから , データを読み出してください。 [bit6]:TOGG ( トグルビットフラグ DQ6) 任意のアドレスを指定してハードウェアシーケンスフラグを読み出すと , 自動アルゴ リズムが実行中かどうかをこのビットで示します。 読み出される値は動作状態によって異なります。 1090 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ • データ書込み / セクタ消去 / チップ消去時 - データ書込み / セクタ消去 / チップ消去中: 連続でこのビットを読み出すと , "1" と "0" が交互に読み出されます ( トグル動 作)。 ハードウェアシーケンスフラグを読み出すために指定したアドレスにはアクセ スされません。 - データ書込み / セクタ消去 / チップ消去終了後: ハードウェアシーケンスフラグを読み出すために指定したアドレスの bit6 の値 が読み出されます。 • セクタ消去一時停止時 - 消去中セクタのアドレスを指定して読み出した場合:"1" が読み出されます。 - 消去中セクタ以外のアドレスを指定して読み出した場合: 指定したアドレスの bit6 の値が読み出されます。 [bit5]:TLOV ( タイミングリミット超過フラグ DQ5) 任意のアドレスを指定してハードウェアシーケンスフラグを読み出すと , 自動アルゴ リズムの実行時間がフラッシュメモリ内部で規定している時間 (内部パルスの回数) を 超過したかどうかをこのビットで示します。 読み出される値は動作状態によって異なります。 • データ書込み / セクタ消去 / チップ消去時 次の値が読み出されます。 読出し値 説明 0 規定時間内 1 規定時間を超えている このビットが "1" のときに , データポーリングフラグ DQ7(DPOLL) やトグルビットフ ラグ DQ6(TOGG) が自動アルゴリズム実行中であることを示していると , 書込みや消去 に失敗したことになります。 例えば , フラッシュメモリでは "0" が書き込まれているデータを "1" に書き換えること ができないため , "0" が書き込まれているアドレスに "1" を書き込もうとすると , フラッ シュメモリがロックされ自動アルゴリズムが終了しません。この場合は , データポーリ ングフラグ DQ7(DPOLL) の値は無効のままになり , トグルビットフラグ DQ6(TOGG) からは "1" と "0" が交互に読み出され続けます。 この状態のまま規定時間を超えたときに , このビットが "1" に変わります。このビット が "1" になった場合はリセットコマンドを発行してください。 < 注意事項 > このビットが "1" の場合は , フラッシュメモリが正しく使用されなかったことを示してい ます。フラッシュメモリの不良ではありません。 リセットコマンドを発行してから適切な処理を行ってください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1091 第 34 章 フラッシュメモリ 34.5 MB91665 シリーズ [bit4]:未定義ビット [bit3]:SETI ( セクタ消去タイマフラグ (DQ3)) セクタ消去時は , セクタ消去コマンドを発行してから実際にセクタ消去が開始される までには , 最短で 50μs のタイムアウト期間が必要です。 任意のアドレスを指定してハードウェアシーケンスフラグを読み出すと , セクタ消去 コマンドのタイムアウト期間中かどうかをこのビットで示します。 読み出される値は動作状態によって異なります。 • セクタ消去時: セクタ消去時に次のセクタ消去コードを入力する前に , このビットを確認すること で次のセクタ消去コードが受け付けられる状態かどうかを確認できます。 ハードウェアシーケンスフラグを読み出すために指定したアドレスにはアクセス せず , 次の値が読み出されます。 読出し値 説明 0 セクタ消去タイムアウト期間中 次のセクタ消去コード (3030H) を受け付けられます。 1 セクタ消去タイムアウト期間を超過している * * : このビットが "1" のときに , データポーリングフラグ DQ7(DPOLL) やトグルビット フラグ DQ6(TOGG) が自動アルゴリズム実行中であることを示していると , フラッ シュメモリ内部の消去が開始されています。この場合 , セクタ消去コード (3030H) や 消去一時停止コマンド以外のコマンドはフラッシュメモリ内部の消去が完了するま で無視されます。 • セクタ消去一時停止時 - 消去中セクタのアドレスを指定して読み出した場合:"1" が読み出されます。 - 消去中セクタ以外のアドレスを指定して読み出した場合: 指定したアドレスの bit3 の値が読み出されます。 [bit2 ∼ bit0]:未定義ビット 1092 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ 34.6 フラッシュメモリの動作説明 フラッシュメモリの動作について , コマンドごとに説明します。 ■ 概要 フラッシュメモリは , 1 回∼ 6 回連続して書込みを行い , コマンドシーケンスを発行す ることで , 自動アルゴリズムを起動して以下の操作を行えます。 • リセット • データ書込み • チップ消去 • セクタ消去 • セクタ消去一時停止 • 消去再開 ハードウェアシーケンスフラグを利用して自動アルゴリズムの実行状態を確認できま す。 コマンドおよび自動アルゴリズムの実行状態については「34.5 自動アルゴリズム」を 参照してください。 34.6.1 リセット動作 フラッシュメモリの読出し / リセット状態について説明します。 リセットコマンドをフラッシュメモリ領域に連続して発行するとフラッシュメモリを 読出し / リセット状態にできます。 この状態は , フラッシュメモリの初期状態です。電源を投入したときやコマンドが正常 終了すると , フラッシュメモリは常に読出し / リセット状態に戻ります。電源投入時は リセットコマンドを発行する必要はありません。また , 読出し / リセット状態では通常 の読出しアクセスでデータを読み出したり , CPU からプログラムアクセスしたりでき るため , データを読み出すときにリセットコマンドを発行する必要はありません。 リセットコマンドについては , 「34.5 自動アルゴリズム」を参照してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1093 第 34 章 フラッシュメモリ 34.6 34.6.2 MB91665 シリーズ データ書込み動作 フラッシュメモリへのデータ書込み動作について説明します。 ■ データ書込み動作 次の順番でデータ書込みを行います。 1. データ書込みコマンドをフラッシュメモリ領域に連続して発行する 自動アルゴリズムが起動されフラッシュメモリへデータが書き込まれます。 データ書込みコマンド発行後は外部からフラッシュメモリを制御する必要はあり ません。 2. データ書込みを行ったアドレスにリードアクセスする 読み出したデータはハードウェアシーケンスフラグになります。そのため , 読み出 したデータのデータポーリングフラグ DQ7 (DPOLL) が書き込んだ値と一致してい ると , フラッシュメモリへのデータ書込みが終了したことになります。 データ書込みが終了していない場合は , 最後に書き込んだデータの bit7 の値と逆の 値 ( 反転データ ) が読み出されます。 1094 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ フラッシュメモリへのデータ書込み動作例を図 34.6-1 に示します。 図 34.6-1 データ書込み手順例 書込み開始 FLASH 制御レジスタ (FCTLR) の FWE ビットでフラッシュへの書込みを許可 (FWE=1) と , FSZ1,FSZ0 ビットの値を退 避後に 16 ビットに設定 (FSZ1,FSZ0=01) 書込みコマンドシーケンス FAAAAH ← AAAAH F5556H ← 5555H FAAAAH ← A0A0H 書込みアドレス 書込みデータ 内部アドレス読出し データポーリング (DPOLL ビット ) 次のアドレス データ 反転データ 0 タイミングリミット (TLOV ビット ) 1 内部アドレス読出し 反転データ データポーリング (DPOLL ビット ) データ 書込みエラー 最終アドレス NO YES FLASH 制御レジスタ (FCTLR) の FWE ビットでフラッシュへの書込みを禁止 (FWE=0) と , FSZ1,FSZ0 ビットを退避 していた値に戻す 書込み完了 :ハードウェアシーケンスフラグで確認 データ書込みが終了すると , フラッシュメモリは読出し / リセット状態に戻ります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1095 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ < 注意事項 > • データ書込みコマンドについては , 「34.5 自動アルゴリズム」を参照してください。 • ハードウェアシーケンスフラグのデータポーリングフラグ DQ7(DPOLL) は , タイミン グリミット超過フラグ DQ5(TLOV) とほぼ同時に値が変わることがあるのでタイミン グリミット超過フラグ DQ5(TLOV) が "1" の場合でも再度確認する必要があります。 • ハードウェアシーケンスフラグのトグルビットフラグ DQ6(TOGG) は , タイミングリ ミット超過フラグ DQ5(TLOV) が "1" に変わるとほぼ同時にトグル動作を停止する場合 があります。そのため , タイミングリミット超過フラグ DQ5(TLOV) が "1" の場合でも トグルビットフラグ DQ6(TOGG) を再度確認する必要があります。 • フラッシュメモリへは, どのようなアドレスの順番でも, またセクタの境界を越えても 書き込めますが , 1 回のデータ書込みコマンドシーケンスではハーフワードのデータ 1 つしか書き込めません。複数のデータを書き込みたい場合は , 1 データに 1 度データ書 込みコマンドシーケンスを発行してください。 ■ データ書込み上の注意 • 一度, "0"が書き込まれたデータを"1"に戻すことはできません。 "0"を"1"に書き換え ると , データポーリングアルゴリズムにより素子が不良と判定され , 以下のいずれ かになります。 - 書込み規定時間を超え , ハードウェアシーケンスフラグのタイミングリミット 超過フラグ DQ5(TLOV) が "1" に変わる - "1" が書き込まれたように見える ただし , "1" が書き込まれたように見えた場合でも , 実際のデータは '0' のままのた め読出し / リセット状態でデータを読み出すと "0" が読み出されます。データを "1" に戻したい場合は , チップ消去かセクタ消去を行ってください。 • データ書込み動作中はフラッシュメモリに書き込まれたすべてのコマンドが無視 されます。 • データ書込み中に本デバイスがリセットされた場合は , 書き込んでいるデータは保 証されません。 1096 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ チップ消去動作 34.6.3 フラッシュメモリのセクタを一括して消去できます。セクタを一括して消去することをチッ プ消去といいます。 チップ消去コマンドをフラッシュメモリ領域に連続して書き込むと自動アルゴリズム を起動して , 全セクタを一括で消去できます。 チップ消去コマンドについては , 「34.5 自動アルゴリズム」を参照してください。 1. チップ消去コマンドをフラッシュメモリ領域に連続して発行する 自動アルゴリズムが起動されフラッシュメモリの全セクタの消去が開始されます。 2. 任意のアドレスにリードアクセスする 読み出したデータはハードウェアシーケンスフラグになります。そのため , 読み出 したデータのデータポーリングフラグ DQ7(DPOLL) が "1" だと , チップ消去が終了 したことになります。 チップ消去に必要な時間は「セクタ消去時間×全セクタ数+チップ書込み時間 ( プリ プログラム ) 」となります。 チップ消去動作が終了すると , フラッシュメモリは読出し / リセット状態に戻ります。 < 注意事項 > チップ消去の自動アルゴリズムが起動するとチップ消去する前に , フラッシュメモリが チップ内のすべてのセルに "0" を書き込んで , マージンを検証 ( プリプログラム ) するた め , チップ消去前に , フラッシュメモリに書込みを行う必要はありません。 また , マージン検証中は外部からフラッシュメモリを制御する必要もありません。 34.6.4 セクタ消去動作 フラッシュメモリ内のセクタを選択して , 選択したセクタのデータのみを消去できます。複 数のセクタを同時に指定することもできます。 次の順番でセクタ消去を行います。 1. セクタ消去コマンドをフラッシュメモリ領域に連続して発行する 最短で 50μs 経過 ( タイムアウト期間 ) すると , 自動アルゴリズムによりセクタ消去 動作が開始されます。 複数のセクタを消去したい場合は, 50μs (タイムアウト期間) 以内に消去するセクタ のアドレスに消去コード (3030H) を書き込んでください。タイムアウト期間経過後 に書き込むと , その消去コード (3030H) が無効になります。 2. 任意のアドレスにリードアクセスする 読み出したデータはハードウェアシーケンスフラグになります。データポーリング フラグ DQ7(DPOLL) は , セクタ消去コマンドの書込み直後から , タイムアウト期間 の間 "1" を示し , セクタ消去タイマフラグ DQ3(SETI) が "1" になるのと , ほぼ同時に "0" になります。その後 , セクタ消去の自動アルゴリズムが終了すると , "1" になり ます。そのため , 読み出したデータのデータポーリングフラグ DQ7 (DPOLL) が "1" だと , セクタ消去が終了したことになります。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1097 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ また , トグルビットフラグ DQ6(TOGG) を利用してセクタ消去が完了したかどうか を確認することもできます。確認動作にトグルビットフラグ DQ6(TOGG) を使用し た場合を例にとって , セクタ消去手順例を図 34.6-2 に示します。 図 34.6-2 セクタ消去手順例 消去開始 FLASH 制御レジスタ (FCTLR) の FWE ビットでフラッシュの消去を許可 (FWE =1) と , FSZ1,FSZ0 ビットの値を退避後 に 16 ビットに設定 (FSZ1,FSZ0=01) セクタ消去コマンドシーケンス ← AAAAH FAAAAH F5556H ← 5555H FAAAAH ← 8080H FAAAAH ← AAAAH F5556H ← 5555H 消去するセクタに 消去コード (3030H) を書き込む YES ⑥消去セクタへ コード入力 (30H) 他に消去する セクタがある ? NO 内部アドレス読出し 内部アドレス読出し 1 0 内部アドレス読出し 2 セクタ消去タイマ (DQ3) 内部アドレス読出し 1 と 2 の TOGG ビットの 値が同じ ? 1 消去指定の追加が 50μs 以 内になされなかった。 残りをやり直すフラグを立 て , いったん消去を終える。 YES NO 0 タイミングリミット超過 (TLOV ビット ) 1 内部アドレス読出し 1 内部アドレス読出し 2 NO 内部アドレス読出し 1 と 2 の TOGG ビットの 値が同じ ? YES 消去完了 残りやり直し フラグ YES NO FLASH 制御レジスタ (FCTLR) の FWE ビットでフラッシュの消去を禁止 (FWE=0) と , FSZ1,FSZ0 ビットを退避 していた値に戻す 消去完了 :ハードウェアシーケンスフラグで確認 1098 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ セクタ消去に必要な時間は「 ( セクタ消去時間+セクタ書込み時間 ( プリプログラム )) ×セクタ数」となります。 セクタ消去動作が終了すると , フラッシュメモリは読出し / リセット状態に戻ります。 本シリーズでは , 機能上の制約により , セクタ消去コマンド発行後にデータポーリング フラグ DQ7(DPOLL) は 40 ∼ 160μs の期間 "1" を示してから , "0" に変化します。セク タ消去が終了するとデータポーリングフラグ DQ7(DPOLL) は "1" を示します。 セクタ消去のときのデータポーリングフラグ DQ7(DPOLL) の制約事項の内容と回避方 法については「34.7 データポーリングフラグ (DQ7) の制約事項と回避方法」を参照し てください。 < 注意事項 > • セクタ消去コマンドについては , 「34.5 自動アルゴリズム」を参照してください。 • 消去するセクタを指定するときは , 下位 4 ビットが 2H, 6 H, A H, E H のいずれかのアド レス (32 ビット下位側 ) を指定してください。 • ハードウェアシーケンスフラグのデータポーリングフラグ DQ7(DPOLL) は , タイミン グリミット超過フラグ DQ5(TLOV) とほぼ同時に値が変わることがあるのでタイミン グリミット超過フラグ DQ5(TLOV) が "1" の場合でも再度確認する必要があります。 • ハードウェアシーケンスフラグのトグルビットフラグ DQ6(TOGG) は , タイミングリ ミット超過フラグ DQ5(TLOV) が "1" に変わるのとほぼ同時にトグル動作を停止する場 合があります。そのため , タイミングリミット超過フラグ DQ5(TLOV) が "1" の場合で もトグルビットフラグ DQ6(TOGG) を再度確認する必要があります。 • タイムアウト期間を含むセクタ消去中に , セクタ消去コード / 消去一時停止コマンド以 外のコマンドを発行すると , フラッシュメモリが読出し / リセット状態になります。 この場合, フラッシュメモリがリセットされるので, セクタ消去コマンドが無効になり ます。 セクタ消去を行う場合は , 最初からセクタ消去コマンドを発行しなおしてください。 • セクタ消去の自動アルゴリズムが起動すると, セクタ消去する前に, フラッシュメモリ が消去するセルに "0" を書き込んで , マージンを検証 ( プリプログラム ) するため , セ クタ消去前に , フラッシュメモリに書込みを行う必要はありません。 また , マージン検証中は外部からフラッシュメモリを制御する必要もありません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1099 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ セクタ消去一時停止動作 34.6.5 セクタ消去を一時停止して消去中以外のセクタ内からデータを読み出したり , データを書き 込んだりできます。セクタ消去が一時停止されると , セクタ消去再開コマンドが発行される までセクタ消去一時停止状態を保持します。 セクタ消去停止中に , セクタ消去一時停止コマンドをフラッシュメモリ領域に書き込 むと , セクタ消去を一時停止し , 違うセクタからデータを読み出したり , データを書き 込んだりできます。 本書では , セクタ消去一時停止中に他のセクタからデータを読み出すことをセクタ消 去一時停止読出し , 他のセクタにデータを書き込むことをセクタ消去一時停止書込み といいます。 ■ セクタ消去一時停止動作 次の順番でセクタ消去を一時停止します。 1. セクタ消去のタイムアウト期間∼セクタ消去中の間にセクタ消去一時停止コマン ドをフラッシュメモリ領域に書き込む タイムアウト期間中にコマンドを発行した場合は , 直ちにタイムアウトを終了し , 消去動作を中止します。 セクタ消去中はコマンドを発行した場合は , 実際にセクタ消去が停止するまでに最 大で 20μs の時間がかかります。 2. 書込みアドレスかセクタ消去一時停止を行ったアドレスにリードアクセスする 読み出したデータはハードウェアシーケンスフラグになります。そのため , 読み出 したデータのデータポーリングフラグ DQ7 (DPOLL) とトグルビットフラグ DQ6 (TOGG) から "1" が読み出されると , セクタ消去が終了したことになります。 また , セクタ消去が停止すると , FLASH ステータスレジスタ (FSTR) の FRDY ビッ トが "1" に変わります。 < 注意事項 > • セクタ消去一時停止コマンドについては , 「34.5 自動アルゴリズム」を参照してくだ さい。 • 消去を一時停止できるのは , セクタ消去のタイムアウト期間∼セクタ消去中のみです。 チップ消去を一時停止することはできません。また , セクタ消去一時停止中に再度セ クタ消去一時停止コマンドを発行しても無視されます。 ■ セクタ消去一時停止後の状態 ● セクタ消去一時停止読出しモード セクタ消去が一時停止されると , セクタ消去一時停止中以外のセクタを通常と同じ動 作で読み出すことができます。この状態をセクタ消去一時停止読出しモードといいま す。 1100 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.6 MB91665 シリーズ < 注意事項 > セクタ消去一時停止中のセクタは読み出すことができません。セクタ消去一時停止中のセ クタを読み出すと , ハードウェアシーケンスフラグが読み出されます。ハードウェアシー ケンスフラグを読み出した場合は , 読み出したデータの各ビットの値が次のようになりま す。 • データポーリングフラグ DQ7(DPOLL) とトグルビットフラグ DQ6(TOGG) :"1" ● セクタ消去一時停止書込みモード セクタ消去一時停止読出しモードでプログラム ( 書込み ) コマンドを発行すると , セク タ消去一時停止中以外のセクタにデータを書き込めるようになります。この状態をセ クタ消去一時停止書込みモードといいます。 書込み動作は通常と同じです。必ずハーフワードで書き込んでください。 < 注意事項 > • セクタ消去一時停止中のセクタに書き込むことはできません。 セクタ消去一時停止書込みモード時 , セクタ消去一時停止中のセクタを読み出すと , ハードウェアシーケンスフラグが読み出されます。ハードウェアシーケンスフラグを 読み出した場合は , 読み出したデータの各ビットの値が次のようになります。 - トグルビットフラグ DQ6(TOGG) : • 連続で読み出すと "1" と "0" が交互に読み 出されるトグル動作 セクタ消去一時書込みモード時 , セクタ消去一時停止中以外のセクタからデータを読 み出すと , bit7 には実際の値の反転値が読み出されます。 セクタ消去再開動作 34.6.6 セクタ消去一時停止中にセクタ消去を再開する動作について説明します。 セクタ消去を一時停止中に , 任意のアドレスにセクタ消去再開コマンドを発行すると セクタ消去を再開できます。 セクタ消去再開コマンドが発行されると , セクタ消去一時停止中のセクタの消去動作 が開始されます。 セクタ消去再開コマンドについては , 「34.5 自動アルゴリズム」を参照してください。 < 注意事項 > セクタ消去再開コマンドは , セクタ消去一時停止中のみ有効です。セクタ消去中にセクタ 消去再開コマンドを発行しても無視されます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1101 第 34 章 フラッシュメモリ 34.7 MB91665 シリーズ 34.7 データポーリングフラグ (DQ7) の制約事項 と回避方法 本シリーズでは , セクタ消去時の自動アルゴリズム実行時のデータポーリングフラグ (DQ7) の使用方法に制約があります。本節では , 制約事項の内容と回避方法について説明します。 ■ 制約事項による不具合内容 データポーリングフラグ (DQ7) は , 自動アルゴリズム実行が進行中もしくは終了状態 であることを , データポーリング機能によって知らせるためのフラグです。この DQ7 の本来の動作は , 図 34.7-1 に示すとおり , 自動アルゴリズム起動時にセクタ消去コマン ド発行後 , "0" を出力し , 消去完了後 "1" に戻ります。DQ7 のポーリングアルゴリズム では , この "1" 出力をもって消去完了を示します。 本シリーズでは , DQ7 はセクタ消去コマンド発行後から 50 ∼ 160 μs の間 "1" を出力し 続け , その後に "0" を出力し , 消去完了後 "1" に戻ります。このために , セクタ消去の ポーリングを , セクタ消去コマンド発行直後の "1" 出力期間内から始めると , 実際は消 去開始前であるにもかかわらず , 消去が完了したように誤判定する可能性があります。 セクタ消去コマンド受付後 , DQ7 が "1" から "0" になるタイミングは , セクタ消去タイ ムアウト期間を示すセクタ消去タイマフラグ (DQ3) が "0" から "1" になるタイミングと 同じです。 図 34.7-1 データポーリングフラグ (DQ7) の実際の動作 セクタ消去コマンドの 最後の30Hをライト 消去完了 内部の書込み 信号 直後のリードから DQ7 (本来) 50~160 μ s DQ7(不具合) DQ3 消去が完了したように誤判定した結果 , 誤判定後の不具合動作の例としては , 以下が考 えられます。 (1) CPU が命令 / データをフェッチしようとしてもフラッシュメモリからはシーケンス フラグの値が読み出されるため , 正常にプログラムの値が読めず , 暴走や異常動作 を起こす可能性があります。 (2) 誤ってセクタ消去完了判定した後 , 次のコマンドを発行すると , 最初のコマンドが キャンセルされて読出し状態に戻ったり , 次のコマンドが受け付けられない可能性 があります。 1102 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.7 MB91665 シリーズ ■ 不具合の回避方法 以下のいずれかの方法で不具合を回避してください。 ● トグルビットフラグ (DQ6) を用いたポーリング 図 34.6-2 に示しますように , DQ6 を使用して自動アルゴリズムの状態を判定してくだ さい。 トグルビットフラグ (DQ6) は , データポーリングフラグ (DQ7) と同様に , 主に自動アル ゴリズム実行が進行中 , もしくは終了状態であることをトグルビット機能によって知 らせるためのフラグです。 ● セクタ消去タイムアウト期間が過ぎた後で DQ7 のポーリングを開始 セクタ消去コマンド発行後 , ソフトウェアにて 160 μs 以上待つか , DQ3=1( セクタ消去 タイムアウト期間終了 ) を待ってから DQ7 のポーリングを開始してください。図 34.72 に , セクタ消去コマンド発行後に DQ3 を使用した場合の判定方法を示します。 図 34.7-2 セクタ消去タイマフラグ (DQ3) による不具合回避方法 P 内部アドレスリード 0 セクタ消去タイマ フラグDQ3は? 1 内部アドレスリード データポーリング フラグDQ7は? 1 0 0 タイミングリミット 超過フラグDQ5は? 1 内部アドレスリード 0 データポーリング フラグDQ7は? 1 消去エラー CM71-10158-1 セクタ消去終了 FUJITSU SEMICONDUCTOR LIMITED 1103 第 34 章 フラッシュメモリ 34.7 MB91665 シリーズ ● ハードウェアシーケンスフラグの 8 ビットを使用したデータポーリング DQ7 だけのポーリングを使って判定する代わりに , ハードウェアシーケンスフラグの 8 ビットを使ったデータポーリングによって判定してください。 図 34.7-3 に , セクタ消去コマンド発行後に 8 ビットデータポーリングを使用した場合 の判定方法を示します。 図 34.7-3 8 ビットデータポーリングによる不具合回避方法 P 内部アドレスリード Data (DQ0~DQ7)? FFH FFH以外 0 タイミングリミット 超過フラグDQ5は? 1 内部アドレスリード FFH以外 Data (DQ0~DQ7)? FFH 消去エラー 1104 セクタ消去終了 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 34 章 フラッシュメモリ 34.8 MB91665 シリーズ 34.8 フラッシュメモリの使用上の注意 フラッシュメモリを使用する際は , 次の点に注意してください。 • データ書込み中に本デバイスがリセットされた場合は , 書き込んでいるデータは保 証されません。 • FLASH 制御レジスタ (FCTLR) の FWE ビットで CPU プログラミングモードを設定 (FWE=1) したときは , フラッシュメモリ上のプログラムを実行しないでください。 正常な値を取り出せずにプログラムが暴走します。 FLASH 制御レジスタについては ,「第 33 章 内蔵プログラムメモリ制御」の「33.2.1 FLASH 制御レジスタ (FCTLR)」を参照してください。 • FLASH 制御レジスタ (FCTLR) の FWE ビットで CPU プログラミングモードを設定 (FWE=1) し , フラッシュメモリ上に割込みベクタテーブルがある場合は , 割込み要 求を発生させないでください。正常な値を取り出せずにプログラムが暴走します。 FLASH 制御レジスタについては ,「第 33 章 内蔵プログラムメモリ制御」の「33.2.1 FLASH 制御レジスタ (FCTLR)」を参照してください • FLASH 制御レジスタ (FCTLR) の FWE ビットで CPU プログラミングモードを設定 (FWE=1) した場合 , サブランモードおよび低消費電力モードには遷移しないでくだ さい。 FLASH 制御レジスタについては ,「第 33 章 内蔵プログラムメモリ制御」の「33.2.1 FLASH 制御レジスタ (FCTLR)」を参照してください • FLASH 制御レジスタ (FCTLR) の FWE ビットで CPU ROM モードを設定 (FWE=0) し た場合は , フラッシュメモリに書込みを行わないでください。 FLASH 制御レジスタについては ,「第 33 章 内蔵プログラムメモリ制御」の「33.2.1 FLASH 制御レジスタ (FCTLR)」を参照してください • FLASH 制御レジスタ (FCTLR) の FWE ビットで CPU プログラミングモードを設定 (FWE=1) した場合 , フラッシュメモリへの書込みは必ずハーフワードで行ってくだ さい。バイト書込みはしないでください。 FLASH 制御レジスタについては ,「第 33 章 内蔵プログラムメモリ制御」の「33.2.1 FLASH 制御レジスタ (FCTLR)」を参照してください • フラッシュメモリへ連続で書込みを行わないでください。連続で書込みを行う場合 は , 必ず "NOP"1 命令以上あけるようにしてください。 • フラッシュメモリに書き込んだ後は , 必ずダミーの読出しをしてから実際に読み出 したいデータを読み出してください。書込み直後にデータを読み出しても , 読出し 値は保証できません。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1105 第 34 章 フラッシュメモリ 34.8 1106 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 35 章 ワイルドレジスタ ワイルドレジスタの機能と動作について説明しま す。 35.1 ワイルドレジスタの概要 35.2 ワイルドレジスタの構成 35.3 ワイルドレジスタのレジスタ 35.4 ワイルドレジスタの動作説明と設定手順例 35.5 ワイルドレジスタの使用上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1107 第 35 章 ワイルドレジスタ 35.1 MB91665 シリーズ 35.1 ワイルドレジスタの概要 ワイルドレジスタとは , パッチ対象アドレスのデータを置換する機能です。 本製品はワイルドレジスタを 16 チャネル内蔵しており , 16 組のパッチ対象アドレスと置き 換えデータを設定できます。 ■ 概要 ワイルドレジスタ機能を利用すると , 指定したアドレスのメモリ内容 ( 命令コード / データ ) をあらかじめ決めてあるレジスタ内のデータに置き換えて読み出せます。 この機能を利用すると , フラッシュメモリ /ROM の内容を書き換えることなく , 読み出 されるデータを修正できます。 1108 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 35 章 ワイルドレジスタ 35.2 MB91665 シリーズ 35.2 ワイルドレジスタの構成 ワイルドレジスタの構成を示します。 • ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) ワイルドレジスタ機能を利用して , 修正するデータがあるアドレスを指定するレジ スタです。 • ワイルドレジスタデータレジスタ (WRDR00 ∼ WRDR15) 置き換えるデータを設定するレジスタです。 • ワイルドレジスタデータイネーブルレジスタ (WREN) ワイルドレジスタ機能の動作を許可 / 禁止するレジスタです。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1109 第 35 章 ワイルドレジスタ 35.3 MB91665 シリーズ 35.3 ワイルドレジスタのレジスタ ワイルドレジスタで使用するレジスタの構成と機能について説明します。 ■ ワイルドレジスタのレジスタ一覧 ワイルドレジスタのレジスタ一覧を表 35.3-1 に示します。 表 35.3-1 ワイルドレジスタのレジスタ一覧 ( 1 / 2 ) チャネル レジスタ略称 レジスタ名 参照先 WREN 共通 ワイルドレジスタデータイネーブルレジスタ 35.3.3 0 WRAR00 35.3.1 ワイルドレジスタアドレスレジスタ 00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1110 WRDR00 ワイルドレジスタデータレジスタ 00 35.3.2 WRAR01 ワイルドレジスタアドレスレジスタ 01 35.3.1 WRDR01 ワイルドレジスタデータレジスタ 01 35.3.2 WRAR02 ワイルドレジスタアドレスレジスタ 02 35.3.1 WRDR02 ワイルドレジスタデータレジスタ 02 35.3.2 WRAR03 ワイルドレジスタアドレスレジスタ 03 35.3.1 WRDR03 ワイルドレジスタデータレジスタ 03 35.3.2 WRAR04 ワイルドレジスタアドレスレジスタ 04 35.3.1 WRDR04 ワイルドレジスタデータレジスタ 04 35.3.2 WRAR05 ワイルドレジスタアドレスレジスタ 05 35.3.1 WRDR05 ワイルドレジスタデータレジスタ 05 35.3.2 WRAR06 ワイルドレジスタアドレスレジスタ 06 35.3.1 WRDR06 ワイルドレジスタデータレジスタ 06 35.3.2 WRAR07 ワイルドレジスタアドレスレジスタ 07 35.3.1 WRDR07 ワイルドレジスタデータレジスタ 07 35.3.2 WRAR08 ワイルドレジスタアドレスレジスタ 08 35.3.1 WRDR08 ワイルドレジスタデータレジスタ 08 35.3.2 WRAR09 ワイルドレジスタアドレスレジスタ 09 35.3.1 WRDR09 ワイルドレジスタデータレジスタ 09 35.3.2 WRAR10 ワイルドレジスタアドレスレジスタ 10 35.3.1 WRDR10 ワイルドレジスタデータレジスタ 10 35.3.2 WRAR11 ワイルドレジスタアドレスレジスタ 11 35.3.1 WRDR11 ワイルドレジスタデータレジスタ 11 35.3.2 WRAR12 ワイルドレジスタアドレスレジスタ 12 35.3.1 WRDR12 ワイルドレジスタデータレジスタ 12 35.3.2 WRAR13 ワイルドレジスタアドレスレジスタ 13 35.3.1 WRDR13 ワイルドレジスタデータレジスタ 13 35.3.2 WRAR14 ワイルドレジスタアドレスレジスタ 14 35.3.1 WRDR14 ワイルドレジスタデータレジスタ 14 35.3.2 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 35 章 ワイルドレジスタ 35.3 MB91665 シリーズ 表 35.3-1 ワイルドレジスタのレジスタ一覧 ( 2 / 2 ) チャネル レジスタ略称 レジスタ名 15 WRAR15 ワイルドレジスタアドレスレジスタ 15 WRDR15 CM71-10158-1 ワイルドレジスタデータレジスタ 15 FUJITSU SEMICONDUCTOR LIMITED 参照先 35.3.1 35.3.2 1111 第 35 章 ワイルドレジスタ 35.3 MB91665 シリーズ ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) 35.3.1 ワイルドレジスタ機能を利用して , 修正するデータがあるアドレスを指定するレジスタです。 WRAR21 ∼ WRAR2 ビットの値が実際のアドレスと比較されます。このレジスタに設定した アドレスのメモリ内容を読み出すと, 実際のメモリ内容ではなく, ワイルドレジスタデータレ ジスタ (WRDR00 ∼ WRDR15) に設定した値が読み出されます。 ワイルドレジスタアドレスレジスタ (WRAR00∼WRAR15) のビット構成を図 35.3-1に 示します。 図 35.3-1 ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) のビット構成 bit 31 属性 初期値 22 21 2 1 0 未定義 WRAR21 ∼ WRAR2 未定義 − X R/W − X X R/W:リード / ライト可能 −:未定義 X:不定 < 注意事項 > • アドレスはワード単位で指定してください。 • ワイルドレジスタの動作が許可されているときは , このレジスタは読み出せません。読 み出した場合の値は不定です。 このレジスタにアドレスを設定するプログラムは , 内蔵のフラッシュメモリ /ROM 領 域以外に配置してください。 • • 1112 設定するアドレスが重ならないようご注意ください。アドレスが重なった場合の読出 し値は不定になります。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 35 章 ワイルドレジスタ 35.3 MB91665 シリーズ ワイルドレジスタデータレジスタ (WRDR00 ∼ WRDR15) 35.3.2 置 き 換 え る デ ー タ を 設 定 す る レ ジ ス タ で す。ワ イ ル ド レ ジ ス タ ア ド レ ス レ ジ ス タ (WRAR00 ∼WRAR15) で指定したアドレスのメモリ内容を読み出すと, 実際のメモリ内容で はなく , このレジスタに設定した値が読み出されます。 ワイルドレジスタデータレジスタ (WRDR00∼WRDR15) のビット構成を図 35.3-2に示 します。 図 35.3-2 ワイルドレジスタデータレジスタ (WRDR00 ∼ WRDR15) のビット構成 bit 31 0 WRDR31 ∼ WRDR0 R/W 属性 X 初期値 R/W:リード / ライト可能 X:不定 < 注意事項 > • このレジスタにはワードデータを設定してください。 • ワイルドレジスタの動作が許可されているときは , このレジスタは読み出せません。読 み出した場合の値は不定です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1113 第 35 章 ワイルドレジスタ 35.3 MB91665 シリーズ ワイルドレジスタデータイネーブルレジスタ (WREN) 35.3.3 ワイルドレジスタ機能の動作を許可 / 禁止するレジスタです。 ワイルドレジスタデータイネーブルレジスタ (WREN) のビット構成を図 35.3-3 に示し ます。 図 35.3-3 ワイルドレジスタデータイネーブルレジスタ (WREN) のビット構成 bit 15 0 WREN15 ∼ WREN0 R/W 属性 0 初期値 R/W:リード / ライト可能 X:不定 [bit15 ∼ bit0]:WREN15 ∼ WREN0 ( 動作許可ビット ) 対応するチャネルのワイルドレジスタ機能の動作を許可 / 禁止します。 WREN15 ビットが ch.15, WREN14 ビットが ch.14•••WREN0 ビットが ch.0 に対応してい ます。 書込み値 説明 0 動作を禁止します。 1 動作を許可します。 < 注意事項 > フラッシュメモリの自動アルゴリズム実行中は , ワイルドレジスタ機能の動作を有効にし ないでください。 自動アルゴリズムが動作していることは , フラッシュステータスレジスタ (FSTR) の FRDY ビットで確認できます (FRDY=0) 。 1114 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 35 章 ワイルドレジスタ 35.4 MB91665 シリーズ 35.4 ワイルドレジスタの動作説明と設定手順例 ワイルドレジスタの動作について説明します。また , 動作するための設定手順例も示します。 35.4.1 ワイルドレジスタの動作 次の設定がされている場合を例に , ワイルドレジスタの動作を図 35.4-1 示します。 • ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) に 0008 7654H 番地を設 定 • ワイルドレジスタデータレジスタ (WRDR00 ∼ WRDR15) の値:0123 4567H • フラッシュメモリ /ROM の 0008 7654H 番地の値:7654 3210H 図 35.4-1 ワイルドレジスタの動作 フラッシュメモリ /ROM ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) 0008 7654H 番地 アドレス 0008 7654H 7654 3210H ( 命令コード / データ ) ワイルドレジスタデータレジスタ (WRDR00 ∼ WRDR15) 0123 4567H ( 置き換え命令コード / データ ) 読み出される 無視される CPU がフラッシュメモリ /ROM の 0008 7654H 番地に格納されているデータを読み出そ うとすると , 0008 7654H 番地の値である "7654 3210H" の代わりに , ワイルドレジスタ データレジスタ (WRDR0 ∼ WRDR15) に設定されている値 "0123 4567H" が読み出され ます。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1115 第 35 章 ワイルドレジスタ 35.5 MB91665 シリーズ 35.5 ワイルドレジスタの使用上の注意 ワイルドレジスタを使用する際は , 次の点に注意してください。 ■ プログラムで設定する場合の注意 • ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) にアドレスを設定する プログラムは , 内蔵のフラッシュメモリ /ROM 領域以外に配置してください。 • ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) に設定するアドレスが 重ならないようご注意ください。アドレスが重なった場合 , 読出し値は不定になり ます。 • フラッシュメモリの自動アルゴリズム実行中は , ワイルドレジスタ機能の動作を有 効にしないでください。自動アルゴリズムが動作していることは , フラッシュス テータスレジスタ (FSTR) の FRDY ビットで確認できます (FRDY=0) 。 ■ 動作に関する注意 • ワイルドレジスタアドレスレジスタ (WRAR00 ∼ WRAR15) およびワイルドレジス タデータレジスタ (WRDR00 ∼ WRDR15) はビッグエンディアン方式で読み出され ます。 • 16 ビット長命令を超える命令 (32/48 ビット長命令 ) が配置されているアドレスにワ イルドレジスタを設定すると , CPU が正しく命令を解釈せず誤動作する場合があり ます。32/48 ビット長命令が配置されているアドレスにワイルドレジスタを設定す る場合は , 命令の途中に設定しないでください。 32/48 ビット長命令の場合の動作を示します。 1. 32 ビット長命令 (LDI:20) の場合 例 )LDI:20 #0x12345,r0(9B102345H) 図 35.5-1 0004 0000H 番地に配置されている場合のメモリマップ bit アドレス 0004 0000H 0004 0004H - 31 ∼ 24 23 ∼ 16 15 ∼ 8 7∼0 +0 +1 +2 +3 9B10 2345 ワイルドレジスタ機能をしない場合 (WREN=0000) 置換後のデータ:9B10 2345 ◎ R0 に 0001 2345 H が設定される。 - 下位 16 ビットを "INT" 命令に置換する場合 (WRAR00=0004 0004, WRDR00=1FF4 ????, WREN=0001) 置換後のデータ:9B10 1FF4 1116 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 35 章 ワイルドレジスタ 35.5 MB91665 シリーズ ▼ 1FF4H を命令ではなく LDI:20 の即値データとして解釈するため , R0 に 0001 1FF4H が設定される。 - 上位 16 ビットを INT 命令に置換する場合 (WRAR00=0004 0000, WRDR00=???? 1FF4, WREN=0001) 置換後のデータ:1FF4 2345 ◎ 1FF4H を命令として解釈する。 ▼次の 2345H を LDI:20 の即値データとしてではなく , 命令として解釈する。 2. 48 ビット長命令 (LDI:32) の場合 例 )LDI:32 #0x12345678,r0(9F8012345678H) 図 35.5-2 0004 0000H/0004 0004H 番地に配置されている場合のメモリマップ bit 31 ∼ 24 23 ∼ 16 15 ∼ 8 7∼0 +0 +1 +2 +3 アドレス 0004 0000H 9F80 5678 0004 0004H - 1234 ワイルドレジスタ機能をしない場合 (WREN = 0000) 置換後のデータ:9F80 1234 5678 ◎ R0 に 12345678 H が設定される。 - 0004 0000H 番地の下位 16 ビットを INT 命令に置換する場合 (WRAR00=0004 0000, WRDR00=9F80 1FF4, WREN=0001) 置換後のデータ:9F80 1FF4 5678 ▼ 1FF4H を命令ではなく LDI:32 の即値データとして解釈するため , R0 に 1FF4 5678H が設定される。 - 0004 0004H 番地の上位 16 ビットを INT 命令に置換する場合 (WRAR00=0004 0004, WRDR00=1FF4 ????, WREN=0001) 置換後のデータ:9F80 1234 1FF4 ▼ 1FF4H を命令ではなく LDI:32 の即値データとして解釈するため , R0 に 1234 1FF4 H が設定される。 - 0004 0000H 番地の上位 16 ビットを INT 命令に置換する場合 (WRAR00=0004 0004, WRDR00=1FF4 1234, WREN=0001) 置換後のデータ:1FF4 1234 5678 ◎ 1FF4H を命令として解釈する。 ▼次の 1234H と 5678H を LDI:32 の即値データとしてではなく , 命令として解釈 する。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1117 第 35 章 ワイルドレジスタ 35.5 1118 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 36 章 シリアル書込み 接続 MB91F66x は , フラッシュメモリのシリアルオン ボード書込み ( 富士通セミコンダクター標準 ) に対 応しています。 本章では , フラッシュメモリのシリアル書込みにつ いて , 富士通セミコンダクター製シリアルプログラ マを用いた場合の基本構成を説明します。 36.1 富士通セミコンダクター製シリアルプログラマ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1119 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ 36.1 富士通セミコンダクター製シリアルプログラマ 富士通セミコンダクター製シリアルプログラマ ( ソフトウェア ) は , 富士通セミコンダクター 製のフラッシュメモリ内蔵マイコン全製品を対象にしたオンボードプログラミングツールで す。 本シリアルプログラマは , PC との I/F (RS-232C, USB) により , 2 種類のツールを用意してい ますので , 環境に合わせてご利用いただけます。 なお , MB91F66x は USB ファンクションを搭載しておりますので , USB- シリアル変換をす ることなくパソコンとマイコンをダイレクトに接続してオンボード書込みすることが可能で す。 ■ FUJITSU SEMICONDUCTOR MCU Programmer( クロック非同期 シリアル書込み ) の基本構成 FUJITSU SEMICONDUCTOR MCU Programmer は , パソコンとマイコンを RS-232C ケー ブルで接続し , クロック非同期シリアル通信によりユーザシステムに実装されている マイコン内蔵フラッシュメモリへデータの書込みを行います。 FUJITSU SEMICONDUCTOR MCU Programmer の基本構成を図 36.1-1, システム構成を 表 36.1-1 に示します。 図 36.1-1 FUJITSU SEMICONDUCTOR MCU Programmer の基本構成 ※ ユーザシステム RS-232C ※ RS-232C のドライバ IC が別途必要です。 表 36.1-1 FUJITSU SEMICONDUCTOR MCU Programmer のシステム構成 名称 FUJITSU SEMICONDUCTOR MCU Programmer 型格 − 仕様 ソフト (Webよりダウンロード可能 (登録制) ) * * 登録は営業部門までお問い合わせください。 1120 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ 接続例を図 36.1-2 に示します。 図 36.1-2 FUJITSU SEMICONDUCTOR MCU Programmer の接続例 MB91F66x Vcc MD1 シリアル書込み時 0 10 kΩ シリアル書込み時 1 MD0 X0 X1 シリアル書込み時 0 RS-232C ドライバ PH3 INIT 10 kΩ P76/SIN0 10 kΩ P75/SOUT0 RS-232C Vss プルアップ抵抗値は一例です。システムごとに最適な抵抗値を選択してください。 表 36.1-2 クロック非同期シリアル通信時の入力可能な発振周波数と通信ボーレート 原発振周波数 4MHz CM71-10158-1 通信ボーレート 9600bps 8MHz 19200bps 16MHz 38400bps 24MHz 57600bps 48MHz 115200bps FUJITSU SEMICONDUCTOR LIMITED 1121 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ ■ FUJITSU SEMICONDUCTOR USB Programmer ( クロック同期シリ アル書込み ) の基本構成 FUJITSU SEMICONDUCTOR USB Programmer は , パ ソ コ ン と マ イ コ ン を ア ダ プ タ (MB2146-09A-E) で接続し , クロック同期シリアル通信によりマイコン内蔵フラッシュ メモリへデータの書込みを行います。 FUJITSU SEMICONDUCTOR USB Programmer の基本構成を図 36.1-3, システム構成を 表 36.1-3 に示します。 図 36.1-3 FUJITSU SEMICONDUCTOR USB Programmer の基本構成 CLK 同期シリアル USB アダプタ (MB2146-09A-E) ユーザシステム 表 36.1-3 FUJITSU SEMICONDUCTOR USB Programmer のシステム構成 名称 型格 仕様 FUJITSU SEMICONDUCTOR USB Programmer − ソフト (Web よりダウンロード可能 ( 登録制 ) ) * アダプタ MB2146-09A-E F2MC ファミリ BGM アダプタ ( 付属品:USB ケーブル ) * 登録は営業部門までお問い合わせください。 1122 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ 接続例を図 36.1-4 に示します。 図 36.1-4 FUJITSU SEMICONDUCTOR USB Programmer の接続例 MB91F66x Vcc 山一電機製コネクタ FAP-10-08#4-0BS MD1 シリアル書込み時 0 1, 10 山一電機製コネクタ FAP-10-08#4-0BS インデックスマーク 9 pin 10 kΩ シリアル書込み時 1 1 pin 10 pin MD0 2 pin X0 (TOP VIEW) X1 BGM マイコン コネクタ 端子 1 Vcc BGM マイコン端子 コネクタ 6 P77/SCK0 2 GND 7 P76/SIN0 3 INIT 8 未接続 4 未接続 9 GND ( 未接続でも OK) 5 P75/ SOUT0 10 Vcc ( 未接続でも OK) シリアル書込み時 0 PH3 3 INIT 7 P76/SIN0 10 kΩ 5 P75/SOUT0 6 P77/SCK0 2, 9 Vss プルアップ抵抗値は一例です。システムごとに最適な抵抗値を選択してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1123 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ ■ FUJITSU USB DIRECT Programmer(USB シリアル書込み ) の 基本構成 FUJITSU USB DIRECT Programmer は , パソコンとマイコンを USB ケーブルで接続し , USB 通信モードによりユーザシステムに実装されているマイコン内蔵フラッシュメモ リへデータの書込みを行います。 FUJITSU USB DIRECT Programmer の基本構成を図 36.1-5, システム構成を表 36.1-4 に 示します。 図 36.1-5 FUJITSU USB DIRECT Programmer の基本構成 USB シリアル通信 USB ユーザシステム 表 36.1-4 FUJITSU USB DIRECT Programmer のシステム構成 名称 FUJITSU USB DIRECT Programmer − 型格 ソフト (Web よりダウンロード可能 ( 登録制 ) ) * 仕様 USB ケーブル − 市販品 * 登録は営業部門までお問い合わせください。 接続例については FUJITSU USB DIRECT Programmer のマニュアル (HELP) をご確認く ださい。 1124 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ FUJITSU USB DIRECT Programmer の接続例 ( 自己電源使用時 ) を図 36.1-6 に示します。 図 36.1-6 FUJITSU USB DIRECT Programmer の接続例 ( 自己電源使用時 ) MB91F66x Vcc MD1 シリアル書込み時 0 10kΩ MD0 シリアル書込み時 1 4MHz or 48MHz X0 10kΩ シリアル書込み時 1 ユーザ回路 シリアル書込み USB通信モード 4MHz時 0 48MHz時 1 P75 X1 10k Ω P77 10 kΩ USB コネクタ INIT Vbus PH3 51kΩ UDM D- 100kΩ 1.5kΩ 27Ω PH2 10Ω UDP D+ 27Ω GND Vss プルアップ・プルダウン抵抗値は一例です。システムごとに最適な抵抗値を選択してください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1125 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ FUJITSU USB DIRECT Programmer の接続例 ( バス電源使用時 ) を図 36.1-7 に示します。 図 36.1-7 FUJITSU USB DIRECT Programmer の接続例 ( バス電源使用時 ) MB91F66x Vcc MD1 シリアル書込み時 0 10kΩ シリアル書込み時 1 MD0 レギュレータ 3.3V出力 4MHz or 48MHz シリアル書込み時 1 10kΩ ユーザ回路 シリアル書込み USB通信モード 4MHz時 0 48MHz時 1 X0 P75 X1 10k Ω P50 10kΩ USB コネクタ INIT Vbus PH3 51kΩ UDM D- 27Ω 100kΩ 1.5kΩ 10Ω PH2 UDP D D+ 27Ω Vss GND プルアップ・プルダウン抵抗値は一例です。システムごとに最適な抵抗値を選択してください。 1126 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 36 章 シリアル書込み接続 36.1 MB91665 シリーズ 36.1.1 使用する端子 表 36.1-5 使用する端子 端子 機能 MD1, MD0 モード端子 X0, X1 発振用端子 補足説明 MD1=L, MD0=H に設定し , SOUT0=H の状態で リセットすると (INIT:L → H), シリアル書込 みモードとなります。 なお , プルアップ / プルダウン抵抗を付ける場 合は , 配線の引き回しをしないでください。 シリアル書込みモード時に使用可能な 原ク ロック周波数は『データシート』を参照してく ださい。 ( クロック非同期通信の場合は制限がありま す。詳細は表 36.1-2 をご確認ください。) P75/SOUT0 シリアル書込みモード 外部にプルアップ抵抗を付加し , リセット解除 起動端子 /UART シリア 後にレベルを"H"にすることでシリアル書込み ルデータ出力端子 モードが起動します。 通信モードを UART とした場合 , シリアル書込 みモードが起動し , 通信が開始された時点でシ リアルデータ出力端子となります。 通信モードを USB とした場合 , プルアップ状 態を保持したままで出力動作は行いません。 P76/SIN0 クロック同期・非同期選 通信を開始するまでの本端子の入力レベルを 択端子 /UART シリアル "H" にするとクロック非同期通信モードとな データ入力端子 り , "L" にするとクロック同期通信モードとな ります。シリアル書込みモードが起動し通信が 開始された時点で , UART シリアルデータ入力 端子として使用します。 P77/SCK0 シリアルクロック入出 通信モードをクロック同期通信とした場合 , 力端子 シリアルクロック入出力端子となります。 通信モードを USB とした場合 , 原発振の周波 数を設定します。 P77=L : 原発振 4MHz P77=H : 原発振 48MHz P50/CS0 CM71-10158-1 PH3 通信モード選択端子 PH2 UDP 用プルアップ制御 通信モードを USB とした場合 , USB(+) 側のプ 端子 ルアップ制御を行います。 PH2=L:プルアップ抵抗接続 PH2=H:プルアップ抵抗切断 UDP USB 入出力端子 通信モードを USB とした場合 , USB( + ) 側の 入出力端子となります。 UDM USB 入出力端子 通信モードを USB とした場合 , USB( − ) 側の 入出力端子となります。 INIT リセット端子 ― VCC 電源電圧供給端子 書込み時マイコンの電圧はユーザシステムか ら供給してください。 VSS GND 端子 ― シリアル書き込みモードに移行するリセット 時の本端子の入力レベルにより通信モードを 決定します。H のときは USB 通信モードとなり , L のときは UART 通信モードとなります。 FUJITSU SEMICONDUCTOR LIMITED 1127 第 36 章 シリアル書込み接続 36.1 1128 MB91665 シリーズ FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 37 章 デバイスの取扱い について 本製品の使用上の注意について説明します。 37.1 デバイス取扱い上の注意 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1129 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ 37.1 デバイス取扱い上の注意 本製品を使用する際は , 次の点に注意してください。 ■ デバイスの取扱い上の注意事項 半導体デバイスは , ある確率で故障します。また , 半導体デバイスの故障は , 使用さ れる条件 ( 回路条件 , 環境条件 など ) によっても大きく左右されます。 以下に , 半導体デバイスをより信頼性の高い状態で使用していただくために , 注意・ 配慮しなければならない事項について説明します。 1. 設計上の注意事項 ここでは , 半導体デバイスを使用して電子機器の設計を行う際に注意すべき事項に ついて述べます。 • 絶対最大定格の遵守 絶対最大定格を超えるストレス ( 電圧 , 電流 , 温度など ) の印加は , 半導体デバイス を破壊する可能性があります。したがって , 定格を一項目でも超えることのないよ うご注意ください。 • 推奨動作条件の遵守 推奨動作条件は , 半導体デバイスの正常な動作を保証する条件です。電気的特性の 規格値は , すべてこの条件の範囲内で保証されます。常に推奨動作条件下で使用し てください。この条件を超えて使用すると , 信頼性に悪影響を及ぼすことがありま す。 データシートに記載されていない項目 , 使用条件 , 論理の組合せでの使用は , 保証し ていません。記載されている以外の条件での使用をお考えの場合は , 必ず事前に営 業部門までご相談ください。 • 端子の処理と保護 半導体デバイスには , 電源および各種入出力端子があります。これらに対して以下 の注意が必要です。 (1) 過電圧・過電流の防止 各端子に最大定格を超える電圧・電流が印加されると , デバイスの内部に劣化 が生じ , 著しい場合には破壊に至ります。機器の設計の際には , このような過電 圧・過電流の発生を防止してください。 (2) 出力端子の保護 出力端子を電源端子または他の出力端子とショートしたり , 大きな容量負荷を 接続すると大電流が流れる場合があります。この状態が長時間続くとデバイス が劣化しますので , このような接続はしないようにしてください。 1130 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ (3) 未使用入力端子の処理 インピーダンスの非常に高い入力端子は , オープン状態で使用すると動作が不 安定になる場合があります。適切な抵抗を介して電源端子やグランド端子に接 続してください。 • ラッチアップ 半導体デバイスは, 基板上にP 型とN 型の領域を形成することにより構成されます。 外部から異常な電圧が加えられた場合, 内部の寄生PNPN 接合 ( サイリスタ構造) が 導通して , 数 100 mA を超える大電流が電源端子に流れ続けることがあります。こ れをラッチアップとよびます。この現象が起きるとデバイスの信頼性を損ねるだけ でなく , 破壊に至り発熱・発煙・発火の恐れもあります。これを防止するために , 以下の点にご注意ください。 (1) 最大定格以上の電圧が端子に加わることがないようにしてください。 異常なノイズ , サージなどにも注意してください。 (2) 電源投入シーケンスを考慮し , 異常な電流が流れないようにしてください。 • 安全などの規制と規格の遵守 世界各国では , 安全や 電磁妨害などの各種規制と規格が設けられています。お客様 が機器を設計するに際しては , これらの規制と規格に適合するようお願いします。 • フェイル・セーフ設計 半導体デバイスは , ある確率で故障が発生します。半導体デバイスが故障しても , 結果的に人身事故 , 火災事故 , 社会的な損害を生じさせないよう , お客様は , 装置の 冗長設計 , 延焼対策設計 , 過電流防止設計 , 誤動作防止設計などの安全設計をお願い します。 • 用途に関する注意 マニュアルに記載された製品は , 通常の産業用 , 一般事務用 , パーソナル用 , 家庭用 などの一般的用途に使用されることを意図して設計・製造されています。極めて高 度な安全性が要求され , 仮に当該安全性が確保されない場合 , 社会的に重大な影響 を与えかつ直接生命・身体に対する重大な危険性を伴う用途 ( 原子力施設における 核反応制御 , 航空機自動飛行制御 , 航空交通管制 , 大量輸送システムにおける運行制 御 , 生命維持のための医療機器 , 兵器システムにおけるミサイル発射制御をいう ), な らびに極めて高い信頼性が要求される用途 ( 海底中継器 , 宇宙衛星をいう ) に使用 されるよう設計・製造されたものではありません。当社は , これらの用途に当該製 品が使用されたことにより発生した損害などについては , 責任を負いかねますので ご了承ください。 2. パッケージ実装上の注意事項 パッケージには , リード挿入形と表面実装形があります。いずれの場合も , はんだ 付け時の耐熱性に関する品質保証は , 当社の推奨する条件での実装に対してのみ適 用されます。実装条件の詳細については営業部門までお問い合わせください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1131 第 37 章 デバイスの取扱いについて 37.1 • MB91665 シリーズ リード挿入形 リード挿入形パッケージのプリント板への実装方法は , プリント板へ直接はんだ付 けする方法とソケットを使用してプリント板に実装する方法とがあります。 プリント板へ直接はんだ付けする場合は , プリント板のスルーホールにリード挿入 後 , 噴流はんだによるフローはんだ方法 ( ウェーブソルダリング法 ) が一般的に使 用されます。この場合 , はんだ付け実装時には , 通常最大定格の保存温度を上回る 熱ストレスがリード部分に加わります。当社の実装推奨条件で実装してください。 ソケット実装方法でご使用になる場合, ソケットの接点の表面処理とIC のリードの 表面処理が異なるとき , 長時間経過後 , 接触不良を起こすことがあります。このた め, ソケットの接点の表面処理とIC のリードの表面処理の状態を確認してから実装 することをお勧めします。 • 表面実装形 表面実装形パッケージは , リード挿入形と比較して , リードが細く薄いため , リード が変形し易い性質をもっています。また , パッケージの多ピン化に伴い , リードピッ チも狭く , リード変形によるオープン不良や , はんだブリッジによるショート不良 が発生しやすいため , 適切な実装技術が必要となります。 当社ははんだリフロー方法を推奨し , 製品ごとに実装条件のランク分類を実施して います。当社推奨のランク分類に従って実装してください。 • 鉛フリーパッケージ BGA パッケージの Sn-Ag-Cu 系ボール品を Sn-Pb 共晶はんだにて実装した場合 , 使 用状況により接合強度が低下することがありますのでご注意願います。 • 半導体デバイスの保管について プラスチックパッケージは樹脂でできているため , 自然の環境に放置することによ り吸湿します。吸湿したパッケージに実装時の熱が加わった場合 , 界面剥離発生に よる耐湿性の低下やパッケージクラックが発生することがあります。以下の点にご 注意ください。 (1) 急激な温度変化のある所では製品に水分の結露が起こります。このような環境 を避けて , 温度変化の少ない場所に保管してください。 (2) 製品の保管にはドライボックスの使用を推奨します。相対湿度 70 %RH 以下 , 温 度 5 °C ∼ 30 °C で保管をお願いします。ドライパッケージを開封した場合に は湿度 40 % ∼ 70 %RH を推奨いたします。 (3) 当社では必要に応じて半導体デバイスの梱包材として防湿性の高いアルミラミ ネート袋を用い , 乾燥剤としてシリカゲルを使用しております。半導体デバイ スはアルミラミネート袋に入れて密封して保管してください。 (4) 腐食性ガスの発生する場所や塵埃の多い場所は避けてください。 • ベーキングについて 吸湿したパッケージはベーキング ( 加熱乾燥 ) を実施することにより除湿すること が可能です。ベーキングは , 当社の推奨する条件で実施してください。 条件:125 °C/24 時間 1132 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ • 静電気 半導体デバイスは静電気による破壊を起こしやすいため , 以下の点についてご注意 ください。 (1) 作業環境の相対湿度は 40 % ∼ 70 %RH にしてください。 除電装置 ( イオン発生装置 ) の使用なども必要に応じて検討してください。 (2) 使用するコンベア , 半田槽 , 半田ゴテ , および周辺付帯設備は大地に接地してく ださい。 (3) 人体の帯電防止のため , 指輪または腕輪などから高抵抗 (1 MΩ 程度 ) で大地に 接地したり , 導電性の衣服・靴を着用し , 床に導電マットを敷くなど帯電電荷を 最小限に保つようにしてください。 (4) 治具 , 計器類は , 接地または帯電防止化を実施してください。 (5) 組立完了基板の収納時 , 発泡スチロールなどの帯電し易い材料の使用は避けて ください。 3. 使用環境に関する注意事項 半導体デバイスの信頼性は , 前述のとおり周囲温度とそれ以外の環境条件にも依存 します。ご使用にあたっては , 以下の点にご注意ください。 (1) 湿度環境 高湿度環境下での長期の使用は , デバイス自身だけでなくプリント基板などに もリーク性の不具合が発生する場合があります。高湿度が想定される場合は , 防 湿処理を施すなどの配慮をお願いします。 (2) 静電気放電 半導体デバイスの直近に高電圧に帯電したものが存在すると , 放電が発生し誤 動作の原因となることがあります。このような場合 , 帯電の防止または放電の 防止の処置をお願いします。 (3) 腐食性ガス , 塵埃 , 油 腐食性ガス雰囲気中や , 塵埃 , 油などがデバイスに付着した状態で使用すると , 化学反応によりデバイスに悪影響を及ぼす場合があります。このような環境下 でご使用の場合は , 防止策についてご検討ください。 (4) 放射線・宇宙線 一般のデバイスは , 設計上 , 放射線 , 宇宙線にさらされる環境を想定しておりま せん。したがって , これらを遮蔽してご使用ください。 (5) 発煙・発火 樹脂モールド型のデバイスは , 不燃性ではありません。発火物の近くでは , ご使 用にならないでください。発煙・発火しますと , その際に毒性を持ったガスが 発生する恐れがあります。 その他 , 特殊な環境下でのご使用をお考えの場合は , 営業部門にご相談ください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1133 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ ■ デバイス使用上の注意 ● 電源端子について VCC・VSS 端子が複数ある場合 , デバイス設計上はラッチアップなどの誤動作を防 止するためにデバイス内部で同電位にすべきものどうしを接続してありますが , 不 要輻射の低減・グランドレベルの上昇によるストローブ信号の誤動作の防止・総出 力電流規格を遵守などのために , 必ずそれらすべてを外部で電源およびグランドに 接続してください。また , 電流供給源からできる限り低インピーダンスで本デバイ スの VCC, VSS 端子に接続するような配慮をお願いします。 さらに , 本デバイスの近くで , VCC と VSS 端子の間に 0.1μF 程度のセラミックコン デンサをバイパスコンデンサとして接続することをお勧めします。 ● 水晶発振回路について X0, X1 端子の近辺のノイズは本デバイスの誤動作のもととなります。X0 と X1 端 子および水晶発振子さらにグランドへのバイパスコンデンサはできる限り近くに 配置するようにプリント板を設計してください。 また , X0, X1 端子の回りをグランドで囲むようなプリント板アートワークは安定し た動作を期待できますので , 強くお勧めします。 ● 外部クロック使用時の注意 外部クロックを使用する場合は , X0 端子のみを駆動し , X1 端子は開放としてくだ さい。 図 37.1-1 外部クロック使用例 ( 通常 ) MB91665 シリーズ X0 開放 1134 X1 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ ● C 端子について 本シリーズはレギュレータを内蔵しており , C 端子にはレギュレータ用に 4.7 μF 程 度のバイパスコンデンサを必ず入れてください。 図 37.1-2 C 端子の使用例 C MB91665シリーズ 4.7 µF VSS GND ● MD0, MD1 ( モード端子 ) について モード端子 (MD0, MD1) は VCC 端子または VSS 端子に直接接続してください。内蔵 Flash 書き換えなどの目的で , モード端子レベルを変更できるようにプルアップま たはプルダウンをする場合には , ノイズによりデバイスが意図せずテストモードに 入るのを防止するため , プルアップまたはプルダウンに使用する抵抗値はできるだ け低く抑えると共に, モード端子からVCC 端子またはVSS 端子への距離を最小にし, できるだけ低インピーダンスで接続するようにプリント基板を設計してください。 ● 電源投入順序について • 電源投入直後は, 内部レギュレータ+発振回路の発振安定待ち時間を確保するため, INIT端子への "L" レベル入力をレギュレータ電圧安定待ち時間+振動子の発振時間 +メイン発振安定待ち時間の間持続してください。 • 電源を投入 / 切断する際は , 次の順番で投入 / 切断を行ってください。 投入時:VCC ⇒ AVCC ⇒ AVRH 切断時:AVRH ⇒ AVCC ⇒ VCC • リセットの解除 (INIT 端子を "L" レベル→ "H" レベル ) は , 電源が安定している状態 で行ってください。 ● PLL クロックモード動作中の注意について 本デバイスで PLL クロック (PLLCLK) を選択しているときに発振子が外れたり , ク ロック入力が停止したりすると , PLL 内部の自励発振回路の自走周波数で動作を継 続し続ける場合があります。この動作は保証外の動作です。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1135 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ ■ プログラムステータスレジスタ (PS) に関する注意事項 一部の命令でプログラムステータスレジスタ (PS) を先行処理しているため , 次の例外 動作により , デバッガ使用時に割込み処理ルーチンでブレークしたり , プログラムス テータスレジスタ (PS) 内のフラグの表示内容が更新されたりする場合があります。い ずれの場合も , EIT から復帰後以降に , 正しく再処理を行うように設計されていますの で , EIT 前後の動作は仕様どおりの処理を行います。 1. 次の 1 ∼ 3 のいずれかが DIV0U/DIV0S 命令の直前の命令で発生すると , 1. ユーザ割込みを受け付けた 2. ステップ実行を行った 3. データイベントまたはエミュレータメニューにてブレークした 以下の動作を行うことがあります。 - D0, D1 フラグが , 先行して更新されます。 - EIT 処理ルーチン ( ユーザ割込み・またはエミュレータ ) を実行します。 - EITから復帰後, DIV0U/DIV0S命令が実行され, D0, D1フラグが1.と同じ値に更新 されます。 2. ユーザ割込み要求が発生している状態で , 割込みを許可するために ORCCR/STILM/ MOV Ri, PS の各命令が実行されると , 以下のような動作を行います。 - プログラムステータスレジスタ (PS) が先行して更新されます。 - EIT 処理ルーチン ( ユーザ割込みまたはエミュレータ ) を実行します。 - EIT から復帰後 , 上記命令が実行され , プログラムステータスレジスタ (PS) が 1. と同じ値に更新されます。 1136 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 第 37 章 デバイスの取扱いについて 37.1 MB91665 シリーズ ■ デバッガ関連の注意事項 ● RETI 命令のステップ実行 ステップ実行する際 , 割込みが頻繁に発生する環境下では , 該当割込み処理ルーチ ンだけを繰り返して実行します。その結果 , メインルーチンや割込みレベルの低い プログラムの実行が行われなくなります。( 例えば , ベースタイマの割込みを許可し ていた場合 , RETI をステップ実行すると , 必ずベースタイマのルーチンの先頭でブ レークすることになります ) 該当割込み処理ルーチンのデバッグが不要になった段階で , 該当割込みを禁止して ください。 ● ブレーク機能 ハードウェアブレーク ( イベントブレーク含む ) の対象アドレスが現在のシステム スタックポインタのアドレスや , スタックポインタを含む領域に設定されている と , ユーザプログラムに実際のデータアクセス命令がないにもかかわらず, 1命令実 行後にブレークしてしまいます。 回避するために , システムスタックポインタのアドレスを含む領域に対する ( ワー ド ) アクセスを , ハードウェアブレーク ( イベントブレーク含む ) の対象に設定しな いでください。 ● 内蔵 ROM ( フラッシュメモリ , マスク ROM) • エバチップ使用時の注意事項 - 内蔵ROM領域をDMAコントローラ (DMAC) の転送先に設定しないでください。 - 内蔵ROM領域をDMAコントローラ (DMAC) の転送先に設定した場合, DMAC転 送中にブレークが発生すると , 内蔵 ROM 領域が書きかえられるおそれがありま す。 - 内蔵 ROM 領域を DMA コントローラ (DMAC) の転送元とすることは可能です。 ● オペランドブレークについて DSU のオペランドブレークとして設定している領域にスタックポインタがあると 誤動作の原因となります。システムスタックポインタのアドレスを含む領域に対す るアクセスを , データイベントブレークの対象にしないでください。 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1137 第 37 章 デバイスの取扱いについて 37.1 1138 FUJITSU SEMICONDUCTOR LIMITED MB91665 シリーズ CM71-10158-1 付録 I/O マップ , レジスタ一覧 , CPU の状態における端 子状態および FR80 ファミリ CPU の命令一覧につ いて説明します。 付録 A I/O マップ 付録 B レジスタ一覧 付録 C 割込みベクタ 付録 D CPU の状態における端子状態 付録 E 命令一覧 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1139 付録 A I/O マップ 付録 A MB91665 シリーズ I/O マップ メモリ空間領域と周辺機能の各レジスタの対応を示します。 ■ I/O マップの見かた 図 A-1 I/O マップの見かた レジスタ アドレス 周辺機能 +0 +1 +2 +3 0000 0000H PDR0 [R/W] B, H XXXXXXXX PDR1 [R/W] B, H XXXXXXXX PDR2 [R/W] B, H XXXXXXXXXXX PDR3 [R/W] B, H XXXXXXXX 0000 003CH WDTCR0 [R/W] B, H -0--0000 WDTCPR0 [R/W] B, H 00000000 -- ウォッチドッグタイマ ENIR0 [R/W] B, H, W 00000000 ELVR0 [R/W] B, H, W 00000000 00000000 外部割込み制御部 0 ∼ 7 0000 0040H EIRR0 [R/W] B, H, W 000 0000 リセット後のレジスタ初期値 ポートデータレジスタ --:予約領域 "1" :初期値 "1" "0" :初期値 "0" "X" :初期値 不定 "-" :予約ビットまたは未定義ビット アクセス単位 B :バイト H :ハーフワード W :ワード リード / ライトの属性 "R" :リードオンリのビットが存在することを示します。 "R/W" :リード / ライト可能なビットが存在することを示します。 "W" :ライトオンリのビットが存在することを示します。 レジスタ名 (1 コラムのレジスタが 4n 番地 , 2 コラム目が 4n+2 番地・・・) 最左のレジスタ番地 ( ワードアクセスした場合は , 1 コラム目のレジスタがデータの MSB 側になる < 注意事項 > • データアクセスを行う際 , アクセスサイズにより以下のとおりのアドレスとしてくだ さい。 - ワードアクセス:アドレスは 4 の倍数 ( 最下位 2 ビットは "00B") - ハーフワードアクセス:アドレスは 2 の倍数 ( 最下位ビットは "0B") - バイトアクセス:− • 1140 予約領域にはアクセスしないでください。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 1 / 14 ) レジスタ アドレス +0 +1 +2 +3 0000 0000H PDR0 [R/W] B,H XXXXXXXX PDR1 [R/W] B,H XXXXXXXX PDR2 [R/W] B,H XXXXXXXX ⎯ 0000 0004H ⎯ PDR5 [R/W] B,H XXXXXXXX PDR6 [R/W] B,H XXXXXXXX PDR7[R/W] B,H XXXXXXXX 0000 0008H PDR8 [R/W] B,H XXXXXXXX ⎯ ⎯ 0000 000CH 0000 0010H ⎯ 0000 0014H PDRK [R/W] B ----XXXX ブロック PDRH [R/W] B,H ----XXXX ポートデータ レジスタ ⎯ ⎯ 0000 0018H ⎯ ∼ 0000 001CH 0000 0020H ⎯ ∼ 0000 0038H 0000 003CH WDTCR0[R/W] B,H WDTCPR0[R/W] B,H -0--0000 00000000 0000 0040H EIRR0[R/W] B,H,W 00000000 0000 0044H DICR [R/W] B -------0 ENIR0[R/W] B,H,W 00000000 予約領域 ⎯ ウォッチ ドッグタイマ ELVR0[R/W] B,H,W 00000000 00000000 外部割込み 制御部 0 ∼ 7 ⎯ 遅延割込み 0000 0048H TMRLRA0 [R/W] H XXXXXXXX XXXXXXXX TMR0 [R] H XXXXXXXX XXXXXXXX 0000 004CH TMRLRB0 [R/W] H XXXXXXXX XXXXXXXX TMCSR0 [R/W] H --000000 --000000 0000 0050H TMRLRA1 [R/W] H XXXXXXXX XXXXXXXX TMR1 [R] H XXXXXXXX XXXXXXXX 0000 0054H TMRLRB1 [R/W] H XXXXXXXX XXXXXXXX TMCSR1 [R/W] H --000000 --000000 0000 0058H TMRLRA2 [R/W] H XXXXXXXX XXXXXXXX TMR2 [R] H XXXXXXXX XXXXXXXX 0000 005CH TMRLRB2 [R/W] H XXXXXXXX XXXXXXXX TMCSR2 [R/W] H --000000 --000000 0000 0060H SCR0[R/W] IBCR0[R,R/W] 0000 0064H CM71-10158-1 B,H,W * 2 0--00000 SMR0 [R/W] B,H,W 000-0000 RDR0[R]/TDR0[W] B,H,W * 1 -------0 00000000 ESCR0[R/W] IBSR0[R,R/W] SSR0 [R,R/W] B,H,W 0-000011 BGR10[R/W]H,W 00000000 B,H,W * 2 -0000000 BGR00[R/W] H,W 00000000 FUJITSU SEMICONDUCTOR LIMITED 16 ビット リロード タイマ ch.0 16 ビット リロード タイマ ch.1 16 ビット リロード タイマ ch.2 マルチ ファンクション シリアル インタフェース ch.0 1141 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 2 / 14 ) アドレス 0000 0068H レジスタ +0 +1 +2 +3 SCR1[R/W] IBCR1[R,R/W] B,H,W*2 0--00000 SMR1 [R/W] B,H,W 000-0000 SSR1 [R,R/W] B,H,W 0-000011 ESCR1[R/W] IBSR1[R,R/W] B,H,W*2 -0000000 BGR11[R/W] H,W 00000000 BGR01[R/W] H,W 00000000 0000 006CH RDR1[R]/TDR1[W] B,H,W * 1 -------0 00000000 0000 0070H ISMK1 [R/W] B,H*2 ISBA1 [R/W] B,H*2 --------------- 0000 0074H SCR2[R/W] IBCR2[R,R/W] B,H,W*2 0--00000 RDR2[R]/TDR2[W] B,H,W * 1 -------0 00000000 0000 007CH ISMK2 [R/W] B,H*2 ISBA2 [R/W] B,H*2 --------------- マルチ ファンクション シリアル インタフェース ch.1 ⎯ SMR2 [R/W] B,H,W 000-0000 0000 0078H ブロック SSR2 [R,R/W] B,H,W 0-000011 ESCR2[R/W] IBSR2 [R,R/W] B,H,W*2 -0000000 BGR12[R/W] H,W 00000000 BGR02[R/W] H,W 00000000 マルチ ファンクション シリアル インタフェース ch.2 ⎯ 0000 0080H ⎯ ∼ 0000 00A0H 0000 00A4H SCR6[R/W] IBCR6[R,R/W] B,H,W*2 0--00000 SMR6 [R/W] B,H,W 000-0000 0000 00A8H RDR6[R]/TDR6[W] B,H,W * 1 -------0 00000000 0000 00ACH ISMK6 [R/W] B,H*2 ISBA6 [R/W] B,H*2 --------------- 予約領域 SSR6 [R,R/W] B,H,W 0-000011 ESCR6[R/W] IBSR6[R,R/W] B,H,W*2 -0000000 BGR16 [R/W] H,W 00000000 BGR06 [R/W] H,W 00000000 マルチ ファンクション シリアル インタフェース ch.6 ⎯ 0000 00B0H ⎯ ∼ 0000 00B8H 0000 00BCH ISMK0 [R/W] B,H*2 ISBA0 [R/W] B,H*2 --------------- 予約領域 ⎯ マルチ ファンクション シリアル インタフェース ch.0 0000 00C0H ⎯ ∼ 0000 0110H 0000 0114H EIRR2[R/W] B,H,W 00000000 ENIR2[R/W] B,H,W 00000000 予約領域 ELVR2[R/W] B,H,W 00000000 00000000 外部割込み 制御部 16 ∼ 23 0000 0118H ∼ 0000 011CH 1142 ⎯ FUJITSU SEMICONDUCTOR LIMITED 予約領域 CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 3 / 14 ) レジスタ アドレス +0 +1 0000 0120H ADCR0[R/W] B,H 000-0000 ADSR0[R,R/W] B,H 00---000 ⎯ 0000 0124H SCCR0[R,R/W] B,H 1000-000 SFNS0[R/W] B,H ----0000 SCFD0[R] B,H XXXXXXXX XX-XXXXX 0000 0128H ⎯ SCIS20[R/W] B 00000000 0000 012CH PCCR0[R,R/W] B,H 1000-000 PFNS0[R/W] B,H ------00 0000 0130H PCIS0[R/W] B 00000000 ⎯ CMPD0[R/W] B,H 00000000 CMPCR0[R/W] B,H 00000000 0000 0134H ⎯ ADSS20[R/W] B 00000000 ADSS10[R/W] B,H 00000000 ADSS00[R/W] B,H 00000000 0000 0138H ADST00[R/W] B,H 00100000 ADST10[R/W] B,H 00100000 ADCT0[R/W] B -----111 ⎯ +3 SCIS10[R/W] B,H 00000000 PCFD0[R] B,H XXXXXXXX XXXXXXXX BT0TMR[R]H 00000000 00000000 0000 0140H BT0TMCR[R/W] B,H -0000000 00000000 ⎯ BT0PCSR/BT0PRLL[R/W]H XXXXXXXX XXXXXXXX 0000 0148H A/D コンバータ 予約領域 BT0STC[R/W]B 0000-000 ⎯ 0000 0144H ブロック SCIS00[R/W] B,H 00000000 ⎯ 0000 013CH BT0PDUT/BT0PRLH/BT0DTBF[R/W]H XXXXXXXX XXXXXXXX ベースタイマ ch.0 ⎯ 0000 014CH BT1TMR[R]H 00000000 00000000 0000 0150H BT1TMCR[R/W] B,H -0000000 00000000 BT1STC[R/W]B 0000-000 ⎯ 0000 0154H ⎯ BT1PCSR/BT1PRLL[R/W]H XXXXXXXX XXXXXXXX 0000 0158H BT1PDUT/BT1PRLH/BT1DTBF[R/W]H XXXXXXXX XXXXXXXX ベースタイマ ch.1 ⎯ 0000 015CH BT2TMR[R]H 00000000 00000000 0000 0160H BT2TMCR [R/W] B,H -0000000 00000000 BT2STC[R/W]B 0000-000 ⎯ 0000 0164H ⎯ BT2PCSR/BT2PRLL[R/W]H XXXXXXXX XXXXXXXX 0000 0168H BT2PDUT/BT2PRLH/BT2DTBF[R/W]H XXXXXXXX XXXXXXXX ベースタイマ ch.2 ⎯ 0000 016CH BT3TMR[R]H 00000000 00000000 0000 0170H ⎯ 0000 0174H BTSEL0123 [R/W] B 00000000 CM71-10158-1 BT3TMCR[R/W] B,H -0000000 00000000 BT3STC[R/W]B 0000-000 BT3PCSR/BT3PRLL[R/W]H XXXXXXXX XXXXXXXX 0000 0178H 0000 017CH +2 ⎯ BT3PDUT/BT3PRLH/BT3DTBF[R/W]H XXXXXXXX XXXXXXXX ベースタイマ ch.3 ⎯ FUJITSU SEMICONDUCTOR LIMITED 1143 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 4 / 14 ) アドレス レジスタ +0 +1 +2 ブロック +3 0000 0180H ⎯ 予約領域 ADCHE [R/W] B,H,W -------- 111111-- ----1111 11111111 A/D チャネル イネーブル ∼ 0000 01A8H 0000 01ACH 0000 01B0H IRPR0H [R] B 000----- 0000 01B4H ⎯ IRPR2L [R] B,H,W 000----- 0000 01B8H IRPR4H [R] B,H,W 0000---- IRPR4L [R] B,H,W 000000-- ⎯ IRPR3H [R] B,H,W 0000---- IRPR3L [R] B,H,W 00000--- 割込み要求 一括読出し 機能 ⎯ ⎯ 0000 01BCH 0000 01C0H ⎯ ∼ 0000 01CCH 0000 01D0H RCRH1 [W] H,W 00000000 RCRL1 [W] B, H,W 00000000 予約領域 UDCRH1 [R] H,W 00000000 UDCRL1 [R] B,H,W 00000000 ⎯ CSR1 [R,R/W] B 00000000 CCR1 [R,R/W] B,H 00000000 -0001000 0000 01D4H アップダウン カウンタ ch.1 ⎯ 0000 01D8H 0000 01DCH ⎯ ∼ 0000 01FCH 予約領域 0000 0200H CPCLR0 [R/W] W 11111111 11111111 11111111 11111111 0000 0204H TCDT0 [R/W] W 00000000 00000000 00000000 00000000 0000 0208H TCCSH0 [R/W] B,H 0-----00 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX IPCP1 [R] W 0000 0210H XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX IPCP2 [R] W 0000 0214H XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX IPCP3 [R] W 0000 0218H 1144 ⎯ IPCP0 [R] W 0000 020CH 0000 021CH TCCSL0 [R/W] B,H -1-00000 32 ビット フリーラン タイマ ch.0 32 ビット インプット キャプチャ ch.0 ∼ ch.3 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX ⎯ ICS01 [R/W] B 00000000 ⎯ FUJITSU SEMICONDUCTOR LIMITED ICS23 [R/W] B 00000000 CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 5 / 14 ) レジスタ アドレス +0 +1 +2 +3 IPCP4 [R] W 0000 0220H XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX IPCP5 [R] W 0000 0224H XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX IPCP6 [R] W 0000 0228H XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX IPCP7 [R] W 0000 022CH ICS45 [R/W] B 00000000 ⎯ ICS67 [R/W] B 00000000 ⎯ 0000 0234H OCCP0 [R/W] W 00000000 00000000 00000000 00000000 0000 0238H OCCP1 [R/W] W 00000000 00000000 00000000 00000000 0000 023CH OCCP2 [R/W] W 00000000 00000000 00000000 00000000 0000 0240H OCCP3 [R/W] W 00000000 00000000 00000000 00000000 0000 0244H OCSH1 [R/W] B,H,W OCSL0 [R/W] B,H,W OCSH3 [R/W] B,H,W OCSL2 [R/W] B,H,W ---0--00 0000--00 ---0--00 0000--00 0000 0248H OCCP4 [R/W] W 00000000 00000000 00000000 00000000 0000 024CH OCCP5 [R/W] W 00000000 00000000 00000000 00000000 0000 0250H OCCP6 [R/W] W 00000000 00000000 00000000 00000000 0000 0254H OCCP7 [R/W] W 00000000 00000000 00000000 00000000 0000 0258H OCSH5 [R/W] B,H,W OCSL4 [R/W] B,H,W OCSH7 [R/W] B,H,W OCSL6 [R/W] B,H,W ---0--00 0000--00 ---0--00 0000--00 FRTSEL [R/W] B ------00 CPCLR1 [R/W] W 11111111 11111111 11111111 11111111 0000 0264H TCDT1 [R/W] W 00000000 00000000 00000000 00000000 TCCSH1 [R/W] B,H 0-----00 32 ビット アウトプット コンペア ch.0 ∼ ch.3 32 ビット アウトプット コンペア ch.4 ∼ ch.7 フリーラン タイマ セレクタ ⎯ 0000 0260H 0000 0268H 32 ビット インプット キャプチャ ch.4 ∼ ch.7 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0230H 0000 025CH ブロック TCCSL1 [R/W] B,H -1-00000 32 ビット フリーラン タイマ ch.1 ⎯ 0000 026CH ⎯ ∼ 0000 031CH 0000 0320H CM71-10158-1 FCTLR[R/W] H -0--1011 -------- 予約領域 ⎯ FUJITSU SEMICONDUCTOR LIMITED FSTR[R] B -------1 フラッシュ メモリ制御 1145 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 6 / 14 ) アドレス レジスタ +0 +1 +2 +3 ブロック 0000 0324H ⎯ ∼ 0000 0334H 0000 0338H 0000 033CH 予約領域 WREN[R/W] B,H 00000000 00000000 ⎯ ⎯ ワイルド レジスタ 0000 0340H ∼ 0000 037CH ⎯ 0000 0380H WRAR00[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 0384H WRDR00[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0388H WRAR01[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 038CH WRDR01[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0390H WRAR02[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 0394H WRDR02[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0398H WRAR03[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 039CH WRDR03[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03A0H WRAR04[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03A4H WRDR04[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03A8H WRAR05[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03ACH WRDR05[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03B0H WRAR06[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03B4H WRDR06[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03B8H WRAR07[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03BCH WRDR07[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03C0H WRAR08[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 1146 FUJITSU SEMICONDUCTOR LIMITED 予約領域 ワイルド レジスタ CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 7 / 14 ) レジスタ アドレス +0 +1 +2 +3 0000 03C4H WRDR08[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03C8H WRAR09[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03CCH WRDR09[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03D0H WRAR10[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03D4H WRDR10[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03D8H WRAR11[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03DCH WRDR11[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03E0H WRAR12[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03E4H WRDR12[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03E8H WRAR13[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03ECH WRDR13[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03F0H WRAR14[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03F4H WRDR14[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 03F8H WRAR15[R/W] W -------- --XXXXXX XXXXXXXX XXXXXX-- 0000 03FCH WRDR15[R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX ワイルド レジスタ 0000 0400H DDR0 [R/W] B,H 00000000 DDR1 [R/W] B,H 00000000 DDR2 [R/W] B,H 00000000 DDR3 [R/W] B,H 00000000 0000 0404H DDR4 [R/W] B,H 00000000 DDR5 [R/W] B,H 00000000 DDR6 [R/W] B,H 00000000 DDR7[R/W] B,H 00000000 0000 0408H DDR8 [R/W] B 00000000 ⎯ DDRA [R/W] B 00000000 ⎯ ⎯ 0000 040CH 0000 0410H DDRG [R/W] B,H 00000000 0000 0414H DDRK [R/W] B ----0000 DDRH [R/W] B,H ----0000 ⎯ ブロック データ方向 レジスタ ⎯ 0000 0418H ∼ 0000 041CH CM71-10158-1 ⎯ FUJITSU SEMICONDUCTOR LIMITED 1147 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 8 / 14 ) アドレス レジスタ +0 +1 0000 0420H PCR0 [R/W] B,H 00000000 PCR1 [R/W] B,H 00000000 0000 0424H ⎯ PCR5 [R/W] B 00000000 0000 0428H PCR8 [R/W] B,H 00000000 +2 +3 ブロック ⎯ PCR6 [R/W] B,H 00000000 PCR7[R/W] B,H 00000000 プルアップ 制御レジスタ ⎯ 0000 042CH ⎯ ∼ 0000 043CH 0000 0440H ICR00 [R,R/W] B,H,W ---11111 ICR01 [R,R/W] B,H,W ---11111 ICR02 [R,R/W] B,H,W ---11111 ICR03 [R,R/W] B,H,W ---11111 0000 0444H ICR04 [R,R/W] B,H,W ---11111 ICR05 [R,R/W] B,H,W ---11111 ICR06 [R,R/W] B,H,W ---11111 ICR07 [R,R/W] B,H,W ---11111 0000 0448H ICR08 [R,R/W] B,H,W ---11111 ICR09 [R,R/W] B,H,W ---11111 ICR10 [R,R/W] B,H,W ---11111 ICR11 [R,R/W] B,H,W ---11111 0000 044CH ICR12 [R,R/W] B,H,W ---11111 ICR13 [R,R/W] B,H,W ---11111 ICR14 [R,R/W] B,H,W ---11111 ICR15 [R,R/W] B,H,W ---11111 0000 0450H ICR16 [R,R/W] B,H,W ---11111 ICR17 [R,R/W] B,H,W ---11111 ICR18 [R,R/W] B,H,W ---11111 ICR19 [R,R/W] B,H,W ---11111 0000 0454H ICR20 [R,R/W] B,H,W ---11111 ICR21 [R,R/W] B,H,W ---11111 ICR22 [R,R/W] B,H,W ---11111 ICR23 [R,R/W] B,H,W ---11111 0000 0458H ICR24 [R,R/W] B,H,W ---11111 ICR25 [R,R/W] B,H,W ---11111 ICR26 [R,R/W] B,H,W ---11111 ICR27 [R,R/W] B,H,W ---11111 0000 045CH ICR28 [R,R/W] B,H,W ---11111 ICR29 [R,R/W] B,H,W ---11111 ICR30 [R,R/W] B,H,W ---11111 ICR31 [R,R/W] B,H,W ---11111 0000 0460H ICR32 [R,R/W] B,H,W ---11111 ICR33 [R,R/W] B,H,W ---11111 ICR34 [R,R/W] B,H,W ---11111 ICR35 [R,R/W] B,H,W ---11111 0000 0464H ICR36 [R,R/W] B,H,W ---11111 ICR37 [R,R/W] B,H,W ---11111 ICR38 [R,R/W] B,H,W ---11111 ICR39 [R,R/W] B,H,W ---11111 0000 0468H ICR40 [R,R/W] B,H,W ---11111 ICR41 [R,R/W] B,H,W ---11111 ICR42 [R,R/W] B,H,W ---11111 ICR43 [R,R/W] B,H,W ---11111 0000 046CH ICR44 [R,R/W] B,H,W ---11111 ICR45 [R,R/W] B,H,W ---11111 ICR46 [R,R/W] B,H,W ---11111 ICR47 [R,R/W] B,H,W ---11111 1148 FUJITSU SEMICONDUCTOR LIMITED 割込み コントローラ CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 9 / 14 ) レジスタ アドレス +0 +1 +2 +3 ブロック 0000 0470H ⎯ ∼ 0000 047CH 0000 0480H RSTRR [R] B,H,W 11-X---X*3 0000 0484H 0000 0488H DIVR0 [R/W] B,H 000----- 予約領域 RSTCR [R/W] B,H,W STBCR [R/W] B,H,W SLPRR [R/W] B,H,W リセット制御 / 000----0 0000--11 00000000 消費電力制御 ⎯ DIVR1 [R/W] B,H 0001---- DIVR2 [R/W] B 0011---- ⎯ クロック 分周制御 0000 048CH ⎯ 0000 0490H IORR0 [R/W] B,H,W IORR1 [R/W] B,H,W IORR2 [R/W] B,H,W IORR3 [R/W] B,H,W -0000000 -0000000 -0000000 -0000000 周辺 DMA 転送要求制御 ⎯ 予約領域 0000 0494H ∼ 0000 049CH 0000 04A0H PFR0 [R/W] B,H 00000000 PFR1 [R/W] B,H 00000000 PFR2 [R/W] B,H 00000000 PFR3 [R/W] B,H 00000000 0000 04A4H PFR4 [R/W] B,H 00000000 PFR5 [R/W] B,H 00000000 PFR6 [R/W] B,H 00-00-0- PFR7[R/W] B,H 00000000 0000 04A8H PFR8 [R/W] B 00000000 ⎯ PFRA [R/W] B 00-00000 ⎯ ⎯ 0000 04ACH 0000 04B0H ポート機能 レジスタ PFRG [R/W] B,H -000-000 PFRH [R/W] B,H -----0-0 ⎯ ⎯ 0000 04B4H 0000 04B8H EPFR0 [R/W] B,H --000000 EPFR1 [R/W] B,H --000000 EPFR2 [R/W] B,H --000000 EPFR3 [R/W] B,H --000000 0000 04BCH EPFR4 [R/W] B,H 00000000 EPFR5 [R/W] B,H 00000000 EPFR6 [R/W] B,H 00000000 EPFR7 [R/W] B,H ---00000 0000 04C0H EPFR8 [R/W] B,H ---00000 EPFR9 [R/W] B,H ---00000 EPFR10 [R/W] B,H ---00000 EPFR11 [R/W] B,H ---00000 0000 04C4H EPFR12 [R/W] B,H ---00000 EPFR13 [R/W] B,H ---00000 EPFR14 [R/W] B,H ---00000 EPFR15 [R/W] B,H ---00000 0000 04C8H EPFR16 [R/W] B,H ---00000 EPFR17 [R/W] B,H ---00000 EPFR18 [R/W] B,H 00000000 EPFR19 [R/W] B,H ----0001 EPFR20 [R/W] B,H 0000 04CCH --000000 EPFR21 [R/W] B,H --000000 EPFR22 [R/W] B,H --000000 EPFR23 [R/W] B,H --000000 0000 04D0H EPFR24 [R/W] B,H --000000 EPFR25 [R/W] B,H --000000 EPFR26 [R/W] B,H --000000 EPFR27 [R/W] B,H --000000 0000 04D4H EPFR28 [R/W] B,H 00000000 EPFR29 [R/W] B,H 00000000 EPFR30 [R/W] B,H ----0000 EPFR31 [R/W] B,H -0000000 0000 04D8H EPFR32 [R/W] B,H 00000000 EPFR33 [R/W] B,H --000000 EPFR34 [R/W] B,H -0000000 EPFR35 [R/W] B,H ------00 0000 04DCH NDE0 [R/W] B,H 00000000 NDE1 [R/W] B,H 00000000 EXBS [R/W] B -------0 ⎯ CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 拡張ポート 機能レジスタ 1149 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 10 / 14 ) アドレス レジスタ +0 +1 +2 ブロック +3 0000 04E0H ⎯ ∼ 0000 04ECH 予約領域 0000 04F0H ICSEL0[R/W] B,H,W -----000 ⎯ ICSEL2[R/W] B,H,W -----000 0000 04F4H ICSEL4[R/W] B,H,W ------00 ⎯ ICSEL6[R/W] B,H,W ICSEL7[R/W] B,H,W ------00 -------0 0000 04F8H ICSEL8[R/W] B,H,W ------00 ICSEL9[R/W] B,H,W -----000 ICSEL10[R/W] B,H,W ----0000 0000 04FCH ⎯ 0000 0500H ⎯ 0000 0504H ⎯ ⎯ DMA 起動 要求クリア 選択機能 予約領域 FRID [R] W 初期値は , 「14.4.9 FR 識別情報レジスタ (FRID)」を参照してください。 FR80ID 0000 0508H ⎯ ∼ 0000 050CH 0000 0510H 0000 0514H CSELR [R/W] B,H,W 001---00 CMONR [R] B,H,W 001---00 PLLCR [R/W] B,H --000000 11110000 0000 0518H WCRD [R] B,H --000000 0000 051CH UCCR [R/W] B -----001 WCRL [R/W] B,H --000000 予約領域 MTMCR [R/W] B,H,W 00001111 STMCR [R/W] B,H,W 0000-111 CSTBR [R/W] B -0000000 ⎯ WCCR [R,R/W] B 00--0000 ⎯ ⎯ クロック生成 / メインタイマ / サブタイマ 時計カウンタ USB クロック 生成 0000 0520H ∼ 0000 05FCH ⎯ 0000 0600H ASR0 [R/W] W 00000000 00000000 -------- 1111-001 0000 0604H ASR1 [R/W] W XXXXXXXX XXXXXXXX -------- XXXX-XX0 0000 0608H ASR2 [R/W] W XXXXXXXX XXXXXXXX -------- XXXX-XX0 0000 060CH ASR3 [R/W] W XXXXXXXX XXXXXXXX -------- XXXX-XX0 予約領域 外部バス I/F 0000 0610H ∼ 0000 063CH ⎯ 0000 0640H ACR0[R/W] W -------- -------- -------- 00--00-0 0000 0644H ACR1[R/W] W -------- -------- -------- XX--XX-X 1150 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 11 / 14 ) アドレス レジスタ +0 +1 +2 0000 0648H ACR2[R/W] W -------- -------- -------- XX--XX-X 0000 064CH ACR3[R/W] W -------- -------- -------- XX--XX-X +3 ブロック 0000 0650H ⎯ ∼ 0000 067CH 0000 0680H AWR0 [R/W] W ----1111 00000000 11110000 00000-0- 0000 0684H AWR1 [R/W] W ----XXXX XXXXXXXX XXXXXXXX XXXXX-X- 0000 0688H AWR2 [R/W] W ----XXXX XXXXXXXX XXXXXXXX XXXXX-X- 0000 068CH AWR3 [R/W] W ----XXXX XXXXXXXX XXXXXXXX XXXXX-X- 外部バス I/F 0000 0690H ⎯ ∼ 0000 06BCH 0000 06C0H ⎯ ∼ 0000 0BFCH 0000 0C00H 0000 0C04H 予約領域 DCCR0 [R/W] W 0----000 --00--00 00000000 0-000000 DCSR0 [R,R/W] H 0------- -----000 DTCR0 [R/W] H 00000000 00000000 0000 0C08H DSAR0 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0C0CH DDAR0 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0C10H DCCR1 [R/W] W 0----000 --00--00 00000000 0-000000 0000 0C14H DCSR1 [R,R/W] H 0------- -----000 DTCR1 [R/W] H 00000000 00000000 0000 0C18H DSAR1 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0C1CH DDAR1 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0C20H DCCR2 [R/W] W 0----000 --00--00 00000000 0-000000 0000 0C24H 0000 0C28H CM71-10158-1 DCSR2 [R,R/W] H 0------- -----000 DMAC DTCR2 [R/W] H 00000000 00000000 DSAR2 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX FUJITSU SEMICONDUCTOR LIMITED 1151 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 12 / 14 ) アドレス レジスタ +0 +1 +2 +3 0000 0C2CH DDAR2 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0C30H DCCR3 [R/W] W 0----000 --00--00 00000000 0-000000 DCSR3 [R,R/W] H 0------- -----000 0000 0C34H DTCR3 [R/W] H 00000000 00000000 0000 0C38H DSAR3 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX 0000 0C3CH DDAR3 [R/W] W XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX ブロック DMAC 0000 0C40H ⎯ ∼ 0000 0C7CH 予約領域 0000 0C80H ⎯ ∼ 0000 0DF0H DILVR [R,R/W] B ---11111 ⎯ 0000 0DF4H DMAC DMACR [R/W] W 0------- -------- 0------- -------- 0000 0DF8H 0000 0DFCH ⎯ ∼ 0000 20FCH 予約領域 0000 2100H HCNT1[R/W] B,H -----001 HCNT0[R/W] B,H 00000000 ⎯ 0000 2104H HERR[R/W] B,H 00000011 HIRQ[R/W] B,H 0-000000 ⎯ 0000 2108H HFCOMP[R/W] B,H HSTATE[R,R/W] B,H 00000000 ---10010 ⎯ 0000 210CH HRTIMER1[R/W] B,H 00000000 HRTIMER0[R/W] B,H 00000000 ⎯ 0000 2110H HADR[R/W] B,H -0000000 HRTIMER2[R/W] B,H ------00 ⎯ 0000 2114H HEOF1[R/W] B,H --000000 HEOF0[R/W] B,H 00000000 ⎯ 0000 2118H HFRAME1[R/W] B,H HFRAME0[R/W] B,H -----000 00000000 ⎯ 0000 211CH ⎯ HTOKEN[R/W] B 00000000 ⎯ 0000 2120H ⎯ UDCC[R/W] B 1010--00 ⎯ 1152 USB ファンク ション / ホスト FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 13 / 14 ) レジスタ アドレス +0 +1 +2 +3 0000 2124H EP0C[R/W] H ------0- -1000000 ⎯ 0000 2128H EP1C[R/W] H 01100001 00000000 ⎯ 0000 212CH EP2C[R/W] H 0110000- -1000000 ⎯ 0000 2130H EP3C[R/W] H 0110000- -1000000 ⎯ ブロック 0000 2134H ⎯ ∼ 0000 2138H TMSP[R] H -----000 00000000 0000 213CH 0000 2140H UDCIE[R,R/W] B,H --000000 ⎯ UDCS[R/W] B,H --000000 ⎯ 0000 2144H EP0IS[R/W] H 10---1-- -------- ⎯ 0000 2148H EP00S[R,R/W] H 100--00- -XXXXXXX ⎯ 0000 214CH EP1S[R,R/W] H 100-000X XXXXXXXX ⎯ 0000 2150H EP2S[R,R/W] H 100-000- -XXXXXXX ⎯ 0000 2154H EP3S[R,R/W] H 100-000- -XXXXXXX ⎯ USB ファンク ション / ホスト 0000 2158H ⎯ ∼ 0000 215CH 0000 2160H EP0DTH [R/W] B,H XXXXXXXX EP0DTL [R/W] B,H XXXXXXXX ⎯ 0000 2164H EP1DTH [R/W] B,H XXXXXXXX EP1DTL [R/W] B,H XXXXXXXX ⎯ 0000 2168H EP2DTH [R/W] B,H XXXXXXXX EP2DTL [R/W] B,H XXXXXXXX ⎯ 0000 216CH EP3DTH [R/W] B,H XXXXXXXX EP3DTL [R/W] B,H XXXXXXXX ⎯ 0000 2170H ∼ 0000 217CH ⎯ 0000 2180H ∼ 0000 21A0H CM71-10158-1 ⎯ FUJITSU SEMICONDUCTOR LIMITED 予約領域 1153 付録 A I/O マップ MB91665 シリーズ 表 A-1 I/O マップ ( 14 / 14 ) アドレス 0000 21A4H レジスタ +0 +1 DREQSEL [R/W] B,H USBSEL [R/W] B,H 00111011 -------0 +2 +3 USBEN [R/W] B -------0 ⎯ ブロック DMA 転送要求 セレクタ / USB 許可 0000 21A8H ∼ 0000 FFFCH ⎯ 予約領域 * 1: 9 ビットのうち , 下位 8 ビットにアクセスする場合のみ , バイトアクセスが可能です。 * 2: I2C のレジスタはリセット直後にリードできません。 * 3: INIT 端子によるリセット直後の値です。 予約領域に対してアクセスしないでください。 1154 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 B レジスタ一覧 MB91665 シリーズ 付録 B レジスタ一覧 本製品で利用できるレジスタを示します。 本製品のレジスタをレジスタ略称順に示します。 略称 レジスタ名 アドレス 参照先 ACR0 CS バス設定レジスタ 0 0000 0640H 13.4.2 ACR1 CS バス設定レジスタ 1 0000 0644H 13.4.2 ACR2 CS バス設定レジスタ 2 0000 0648H 13.4.2 ACR3 CS バス設定レジスタ 3 0000 064CH 13.4.2 ADCHE A A/D チャネルイネーブルレジスタ 0000 01ACH 14.4.6 ADCR0 A/DC コントロールレジスタ 0 0000 0120H 25.4.1 ADCT0 コンペア時間設定レジスタ 0 0000 013AH 25.4.15 ADSR0 A/DC ステータスレジスタ 0 0000 0121H 25.4.2 ADSS00 サンプリング時間選択レジスタ 00 0000 0137H 25.4.14 ADSS10 サンプリング時間選択レジスタ 10 0000 0136H 25.4.14 ADSS20 サンプリング時間選択レジスタ 20 0000 0135H 25.4.14 ADST00 サンプリング時間設定レジスタ 00 0000 0138H 25.4.13 ADST10 サンプリング時間設定レジスタ 10 0000 0139H 25.4.13 ASR0 CS 領域設定レジスタ 0 0000 0600H 13.4.1 ASR1 CS 領域設定レジスタ 1 0000 0604H 13.4.1 ASR2 CS 領域設定レジスタ 2 0000 0608H 13.4.1 ASR3 CS 領域設定レジスタ 3 0000 060CH 13.4.1 AWR0 CS ウェイトレジスタ 0 0000 0680H 13.4.3 AWR1 CS ウェイトレジスタ 1 0000 0684H 13.4.3 AWR2 CS ウェイトレジスタ 2 0000 0688H 13.4.3 AWR3 CS ウェイトレジスタ 3 0000 068CH 13.4.3 B BGR00 ボーレートジェネレータレジスタ 00 0000 0067H 26.4.6, 26.13.6, 26.21.8 BGR01 ボーレートジェネレータレジスタ 01 0000 006FH 26.4.6, 26.13.6, 26.21.8 BGR02 ボーレートジェネレータレジスタ 02 0000 007BH 26.4.6, 26.13.6, 26.21.8 BGR06 ボーレートジェネレータレジスタ 06 0000 00ABH 26.4.6, 26.13.6, 26.21.8 BGR10 ボーレートジェネレータレジスタ 10 0000 0066H 26.4.6, 26.13.6, 26.21.8 BGR11 ボーレートジェネレータレジスタ 11 0000 006EH 26.4.6, 26.13.6, 26.21.8 BGR12 ボーレートジェネレータレジスタ 12 0000 007AH 26.4.6, 26.13.6, 26.21.8 BGR16 ボーレートジェネレータレジスタ 16 0000 00AAH 26.4.6, 26.13.6, 26.21.8 BT0DTBF ベースタイマ 0 データバッファレジスタ 0000 014AH 23.8.4.2 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1155 付録 B レジスタ一覧 MB91665 シリーズ BT0PCSR ベースタイマ 0 周期設定レジスタ 0000 0148H 23.8.1.2, 23.8.3.2 BT0PDUT ベースタイマ 0 デューティ設定レジスタ 0000 014AH 23.8.1.3 BT0PRLH ベースタイマ 0 H 幅設定リロードレジスタ 0000 014AH 23.8.2.3 BT0PRLL ベースタイマ 0 L 幅設定リロードレジスタ 0000 0148H 23.8.2.2 BT0STC ベースタイマ 0 ステータス制御レジスタ 0000 0145H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT0TMCR ベースタイマ 0 タイマ制御レジスタ 0000 0142H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT0TMR ベースタイマ 0 タイマレジスタ 0000 0140H 23.8.1.4, 23.8.2.4, 23.8.3.3 BT1DTBF ベースタイマ 1 データバッファレジスタ 0000 015AH 23.8.4.2 BT1PCSR ベースタイマ 1 周期設定レジスタ 0000 0158H 23.8.1.2, 23.8.3.2 BT1PDUT ベースタイマ 1 デューティ設定レジスタ 0000 015AH 23.8.1.3 BT1PRLH ベースタイマ 1 H 幅設定リロードレジスタ 0000 015AH 23.8.2.3 BT1PRLL ベースタイマ 1 L 幅設定リロードレジスタ 0000 0158H 23.8.2.2 BT1STC ベースタイマ 1 ステータス制御レジスタ 0000 0155H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT1TMCR ベースタイマ 1 タイマ制御レジスタ 0000 0152H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT1TMR ベースタイマ 1 タイマレジスタ 0000 0150H 23.8.1.4, 23.8.2.4, 23.8.3.3 BT2DTBF ベースタイマ 2 データバッファレジスタ 0000 016AH 23.8.4.2 BT2PCSR ベースタイマ 2 周期設定レジスタ 0000 0168H 23.8.1.2, 23.8.3.2 BT2PDUT ベースタイマ 2 デューティ設定レジスタ 0000 016AH 23.8.1.3 BT2PRLH ベースタイマ 2 H 幅設定リロードレジスタ 0000 016AH 23.8.2.3 BT2PRLL ベースタイマ 2 L 幅設定リロードレジスタ 0000 0168H 23.8.2.2 BT2STC ベースタイマ 2 ステータス制御レジスタ 0000 0165H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT2TMCR ベースタイマ 2 タイマ制御レジスタ 0000 0162H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT2TMR ベースタイマ 2 タイマレジスタ 0000 0160H 23.8.1.4, 23.8.2.4, 23.8.3.3 BT3DTBF ベースタイマ 3 データバッファレジスタ 0000 017AH 23.8.4.2 BT3PCSR ベースタイマ 3 周期設定レジスタ 0000 0178H 23.8.1.2, 23.8.3.2 BT3PDUT ベースタイマ 3 デューティ設定レジスタ 0000 017AH 23.8.1.3 BT3PRLH ベースタイマ 3 H 幅設定リロードレジスタ 0000 017AH 23.8.2.3 BT3PRLL ベースタイマ 3 L 幅設定リロードレジスタ 0000 0178H 23.8.2.2 BT3STC ベースタイマ 3 ステータス制御レジスタ 0000 0175H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT3TMCR ベースタイマ 3 タイマ制御レジスタ 0000 0172H 23.8.1.1, 23.8.2.1, 23.8.3.1, 23.8.4.1 BT3TMR ベースタイマ 3 タイマレジスタ 0000 0170H 23.8.1.4, 23.8.2.4, 23.8.3.3 BTSEL0123 入出力選択レジスタ 0123 0000 017CH 22.4.1 BTSSSR 同時ソフト起動レジスタ 0000 0FFEH 22.4.2 1156 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 B レジスタ一覧 MB91665 シリーズ C CCR1 カウンタコントロールレジスタ 1 0000 01D4H 24.4.3 CMONR クロックソース監視レジスタ 0000 0511H 4.4.2 CMPCR0 A/D 比較コントロールレジスタ 0 0000 0133H 25.4.12 CMPD0 A/D 比較値設定レジスタ 0 0000 0132H 25.4.11 CPCLR0 コンペアクリアレジスタ 0 0000 0200H 18.4.2 CPCLR1 コンペアクリアレジスタ 1 0000 0260H 18.4.2 CSELR クロックソース設定レジスタ 0000 0510H 4.4.1 CSR1 カウンタステータスレジスタ 1 0000 01D7H 24.4.4 CSTBR 発振安定待ち設定レジスタ 0000 0516H 4.4.3 DCCR0 DMA チャネルコントロールレジスタ 0 0000 0C00H 31.3.5 DCCR1 DMA チャネルコントロールレジスタ 1 0000 0C10H 31.3.5 DCCR2 DMA チャネルコントロールレジスタ 2 0000 0C20H 31.3.5 DCCR3 DMA チャネルコントロールレジスタ 3 0000 0C30H 31.3.5 DCSR0 DMA チャネルステータスレジスタ 0 0000 0C04H 31.3.6 DCSR1 DMA チャネルステータスレジスタ 1 0000 0C14H 31.3.6 DCSR2 DMA チャネルステータスレジスタ 2 0000 0C24H 31.3.6 DCSR3 D DMA チャネルステータスレジスタ 3 0000 0C34H 31.3.6 DDAR0 DMA 転送先アドレスレジスタ 0 0000 0C0CH 31.3.3 DDAR1 DMA 転送先アドレスレジスタ 1 0000 0C1CH 31.3.3 DDAR2 DMA 転送先アドレスレジスタ 2 0000 0C2CH 31.3.3 DDAR3 DMA 転送先アドレスレジスタ 3 0000 0C3CH 31.3.3 DDR0 ポートデータ方向レジスタ 0 0000 0400H 14.4.1 DDR1 ポートデータ方向レジスタ 1 0000 0401H 14.4.1 DDR2 ポートデータ方向レジスタ 2 0000 0402H 14.4.1 DDR3 ポートデータ方向レジスタ 3 0000 0403H 14.4.1 DDR4 ポートデータ方向レジスタ 4 0000 0404H 14.4.1 DDR5 ポートデータ方向レジスタ 5 0000 0405H 14.4.1 DDR6 ポートデータ方向レジスタ 6 0000 0406H 14.4.1 DDR7 ポートデータ方向レジスタ 7 0000 0407H 14.4.1 DDR8 ポートデータ方向レジスタ 8 0000 0408H 14.4.1 DDRA ポートデータ方向レジスタ A 0000 040AH 14.4.1 DDRG ポートデータ方向レジスタ G 0000 0410H 14.4.1 DDRH ポートデータ方向レジスタ H 0000 0411H 14.4.1 DDRK ポートデータ方向レジスタ K 0000 0414H 14.4.1 DICR 遅延割込み制御レジスタ 0000 0044H 12.3.1 DILVR DMA 転送抑止割込みレベルレジスタ 0000 0DF7H 31.3.7 DIVR0 分周設定レジスタ 0 0000 0488H 5.4.1 DIVR1 分周設定レジスタ 1 0000 0489H 5.4.2 DIVR2 分周設定レジスタ 2 0000 048AH 5.4.3 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1157 付録 B レジスタ一覧 MB91665 シリーズ DMACR DMA コントロールレジスタ 0000 0DF8H 31.3.1 DREQSEL DREQ 選択レジスタ 0000 21A4H 28.3.1 DSAR0 DMA 転送元アドレスレジスタ 0 0000 0C08H 31.3.2 DSAR1 DMA 転送元アドレスレジスタ 1 0000 0C18H 31.3.2 DSAR2 DMA 転送元アドレスレジスタ 2 0000 0C28H 31.3.2 DSAR3 DMA 転送元アドレスレジスタ 3 0000 0C38H 31.3.2 DTCR0 DMA 転送回数レジスタ 0 0000 0C06H 31.3.4 DTCR1 DMA 転送回数レジスタ 1 0000 0C16H 31.3.4 DTCR2 DMA 転送回数レジスタ 2 0000 0C26H 31.3.4 DTCR3 DMA 転送回数レジスタ 3 0000 0C36H 31.3.4 EIRR0 外部割込み要因レジスタ 0 0000 0040H 15.4.2 EIRR2 外部割込み要因レジスタ 2 0000 0114H 15.4.2 ELVR0 外部割込み要求レベル設定レジスタ 0 0000 0042H 15.4.1 ELVR2 外部割込み要求レベル設定レジスタ 2 0000 0116H 15.4.1 ENIR0 割込み許可レジスタ 0 0000 0041H 15.4.3 ENIR2 割込み許可レジスタ 2 0000 0115H 15.4.3 EP0C E EP0 制御レジスタ 0000 2124H 29.3.4 EP0DTH EP0 データレジスタ上位 0000 2160H 29.3.12 EP0DTL EP0 データレジスタ下位 0000 2161H 29.3.12 EP0IS EP0I ステータスレジスタ 0000 2144H 29.3.9 EP0OS EP0O ステータレジスタ 0000 2148H 29.3.10 EP1C EP1 制御レジスタ 0000 2128H 29.3.5 EP1DTH EP1 データレジスタ上位 0000 2164H 29.3.12 EP1DTL EP1 データレジスタ下位 0000 2165H 29.3.12 EP1S EP1 ステータスレジスタ 0000 214CH 29.3.11 EP2C EP2 制御レジスタ 0000 212CH 29.3.5 EP2DTH EP2 データレジスタ上位 0000 2168H 29.3.12 EP2DTL EP2 データレジスタ下位 0000 2169H 29.3.12 EP2S EP2 ステータスレジスタ 0000 2150H 29.3.11 EP3C EP3 制御レジスタ 0000 2130H 29.3.5 EP3DTH EP3 データレジスタ上位 0000 216CH 29.3.12 EP3DTL EP3 データレジスタ下位 0000 216DH 29.3.12 EP3S EP3 ステータスレジスタ 0000 2154H 29.3.11 EPFR0 拡張ポート機能レジスタ 0 0000 04B8H 14.4.3 EPFR1 拡張ポート機能レジスタ 1 0000 04B9H 14.4.3 EPFR2 拡張ポート機能レジスタ 2 0000 04BAH 14.4.3 EPFR3 拡張ポート機能レジスタ 3 0000 04BBH 14.4.3 EPFR4 拡張ポート機能レジスタ 4 0000 04BCH 14.4.3 EPFR5 拡張ポート機能レジスタ 5 0000 04BDH 14.4.3 EPFR6 拡張ポート機能レジスタ 6 0000 04BEH 14.4.3 拡張ポート機能レジスタ 7 0000 04BFH 14.4.3 EPFR7 1158 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 B レジスタ一覧 MB91665 シリーズ EPFR8 拡張ポート機能レジスタ 8 0000 04C0H 14.4.3 EPFR9 拡張ポート機能レジスタ 9 0000 04C1H 14.4.3 EPFR10 拡張ポート機能レジスタ 10 0000 04C2H 14.4.3 EPFR11 拡張ポート機能レジスタ 11 0000 04C3H 14.4.3 EPFR12 拡張ポート機能レジスタ 12 0000 04C4H 14.4.3 EPFR13 拡張ポート機能レジスタ 13 0000 04C5H 14.4.3 EPFR14 拡張ポート機能レジスタ 14 0000 04C6H 14.4.3 EPFR15 拡張ポート機能レジスタ 15 0000 04C7H 14.4.3 EPFR16 拡張ポート機能レジスタ 16 0000 04C8H 14.4.3 EPFR17 拡張ポート機能レジスタ 17 0000 04C9H 14.4.3 EPFR18 拡張ポート機能レジスタ 18 0000 04CAH 14.4.3 EPFR19 拡張ポート機能レジスタ 19 0000 04CBH 14.4.3 EPFR20 拡張ポート機能レジスタ 20 0000 04CCH 14.4.3 EPFR21 拡張ポート機能レジスタ 21 0000 04CDH 14.4.3 EPFR22 拡張ポート機能レジスタ 22 0000 04CEH 14.4.3 EPFR23 拡張ポート機能レジスタ 23 0000 04CFH 14.4.3 EPFR24 拡張ポート機能レジスタ 24 0000 04D0H 14.4.3 EPFR25 拡張ポート機能レジスタ 25 0000 04D1H 14.4.3 EPFR26 拡張ポート機能レジスタ 26 0000 04D2H 14.4.3 EPFR27 拡張ポート機能レジスタ 27 0000 04D3H 14.4.3 EPFR28 拡張ポート機能レジスタ 28 0000 04D4H 14.4.3 EPFR29 拡張ポート機能レジスタ 29 0000 04D5H 14.4.3 EPFR30 拡張ポート機能レジスタ 30 0000 04D6H 14.4.3 EPFR31 拡張ポート機能レジスタ 31 0000 04D7H 14.4.3 EPFR32 拡張ポート機能レジスタ 32 0000 04D8H 14.4.3 EPFR33 拡張ポート機能レジスタ 33 0000 04D9H 14.4.3 EPFR34 拡張ポート機能レジスタ 34 0000 04DAH 14.4.3 EPFR35 拡張ポート機能レジスタ 35 0000 04DBH 14.4.3 ESCR0 拡張通信制御レジスタ 0 0000 0063H 26.4.4, 26.13.4 ESCR1 拡張通信制御レジスタ 1 0000 006BH 26.4.4, 26.13.4 ESCR2 拡張通信制御レジスタ 2 0000 0077H 26.4.4, 26.13.4 ESCR6 拡張通信制御レジスタ 6 0000 00A7H 26.4.4, 26.13.4 EXBS 外部バスアドレス選択レジスタ 0000 04DEH 14.4.8 FCTLR FLASH 制御レジスタ 0000 0320H 33.2.1, 34.3.2 FRID FR 識別情報レジスタ 0000 0504H 14.4.9 FRTSEL フリーランタイマ選択レジスタ 0000 025CH 18.4.1 FSTR FLASH ステータスレジスタ 0000 0323H 34.3.1 HADR ホストアドレスレジスタ 0000 2110H 30.3.7 HCNT0 ホストコントロールレジスタ 0 0000 2101H 30.3.1 F H CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1159 付録 B レジスタ一覧 MB91665 シリーズ HCNT1 ホストコントロールレジスタ 1 0000 2100H 30.3.1 HEOF0 EOF 設定レジスタ 0 0000 2115H 30.3.8 HEOF1 EOF 設定レジスタ 1 0000 2114H 30.3.8 HERR ホストエラーステータスレジスタ 0000 2104H 30.3.3 HFCOMP SOF 割込み FRAME 比較レジスタ 0000 2108H 30.3.5 HFRAME0 FRAME 設定レジスタ 0 0000 2119H 30.3.9 HFRAME1 FRAME 設定レジスタ 1 0000 2118H 30.3.9 HIRQ ホスト割込みレジスタ 0000 2105H 30.3.2 HRTIMER0 リトライタイマ設定レジスタ 0 0000 210DH 30.3.6 HRTIMER1 リトライタイマ設定レジスタ 1 0000 210CH 30.3.6 HRTIMER2 リトライタイマ設定レジスタ 2 0000 2111H 30.3.6 HSTATE ホスト状態ステータスレジスタ 0000 2109H 30.3.4 ホストトークンエンドポイントレジスタ 0000 211DH 30.3.10 IBCR0 I2C バス制御レジスタ 0 0000 0060H 26.21.1 IBCR1 I2C バス制御レジスタ 1 0000 0068H 26.21.1 IBCR2 I2C バス制御レジスタ 2 0000 0074H 26.21.1 IBCR6 I2C バス制御レジスタ 6 0000 00A4H 26.21.1 IBSR0 I2C バスステータスレジスタ 0 0000 0063H 26.21.3 IBSR1 I2C バスステータスレジスタ 1 0000 006BH 26.21.3 IBSR2 I2C バスステータスレジスタ 2 0000 0077H 26.21.3 IBSR6 I2C バスステータスレジスタ 6 0000 00A7H 26.21.3 ICR00 割込みコントロールレジスタ 00 0000 0440H 10.3.1 ICR01 HTOKEN I 割込みコントロールレジスタ 01 0000 0441H 10.3.1 ICR02 割込みコントロールレジスタ 02 0000 0442H 10.3.1 ICR03 割込みコントロールレジスタ 03 0000 0443H 10.3.1 ICR04 割込みコントロールレジスタ 04 0000 0444H 10.3.1 ICR05 割込みコントロールレジスタ 05 0000 0445H 10.3.1 ICR06 割込みコントロールレジスタ 06 0000 0446H 10.3.1 ICR07 割込みコントロールレジスタ 07 0000 0447H 10.3.1 ICR08 割込みコントロールレジスタ 08 0000 0448H 10.3.1 ICR09 割込みコントロールレジスタ 09 0000 0449H 10.3.1 ICR10 割込みコントロールレジスタ 10 0000 044AH 10.3.1 ICR11 割込みコントロールレジスタ 11 0000 044BH 10.3.1 ICR12 割込みコントロールレジスタ 12 0000 044CH 10.3.1 ICR13 割込みコントロールレジスタ 13 0000 044DH 10.3.1 ICR14 割込みコントロールレジスタ 14 0000 044EH 10.3.1 ICR15 割込みコントロールレジスタ 15 0000 044FH 10.3.1 ICR16 割込みコントロールレジスタ 16 0000 0450H 10.3.1 ICR17 割込みコントロールレジスタ 17 0000 0451H 10.3.1 ICR18 割込みコントロールレジスタ 18 0000 0452H 10.3.1 ICR19 割込みコントロールレジスタ 19 0000 0453H 10.3.1 1160 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 B レジスタ一覧 MB91665 シリーズ ICR20 割込みコントロールレジスタ 20 0000 0454H 10.3.1 ICR21 割込みコントロールレジスタ 21 0000 0455H 10.3.1 ICR22 割込みコントロールレジスタ 22 0000 0456H 10.3.1 ICR23 割込みコントロールレジスタ 23 0000 0457H 10.3.1 ICR24 割込みコントロールレジスタ 24 0000 0458H 10.3.1 ICR25 割込みコントロールレジスタ 25 0000 0459H 10.3.1 ICR26 割込みコントロールレジスタ 26 0000 045AH 10.3.1 ICR27 割込みコントロールレジスタ 27 0000 045BH 10.3.1 ICR28 割込みコントロールレジスタ 28 0000 045CH 10.3.1 ICR29 割込みコントロールレジスタ 29 0000 045DH 10.3.1 ICR30 割込みコントロールレジスタ 30 0000 045EH 10.3.1 ICR31 割込みコントロールレジスタ 31 0000 045FH 10.3.1 ICR32 割込みコントロールレジスタ 32 0000 0460H 10.3.1 ICR33 割込みコントロールレジスタ 33 0000 0461H 10.3.1 ICR34 割込みコントロールレジスタ 34 0000 0462H 10.3.1 ICR35 割込みコントロールレジスタ 35 0000 0463H 10.3.1 ICR36 割込みコントロールレジスタ 36 0000 0464H 10.3.1 ICR37 割込みコントロールレジスタ 37 0000 0465H 10.3.1 ICR38 割込みコントロールレジスタ 38 0000 0466H 10.3.1 ICR39 割込みコントロールレジスタ 39 0000 0467H 10.3.1 ICR40 割込みコントロールレジスタ 40 0000 0468H 10.3.1 ICR41 割込みコントロールレジスタ 41 0000 0469H 10.3.1 ICR42 割込みコントロールレジスタ 42 0000 046AH 10.3.1 ICR43 割込みコントロールレジスタ 43 0000 046BH 10.3.1 ICR44 割込みコントロールレジスタ 44 0000 046CH 10.3.1 ICR45 割込みコントロールレジスタ 45 0000 046DH 10.3.1 ICR46 割込みコントロールレジスタ 46 0000 046EH 10.3.1 ICR47 割込みコントロールレジスタ 47 0000 046FH 10.3.1 ICS01 インプットキャプチャ状態制御レジスタ 01 0000 021DH 19.4.1 ICS23 インプットキャプチャ状態制御レジスタ 23 0000 021FH 19.4.1 ICS45 インプットキャプチャ状態制御レジスタ 45 0000 0231H 19.4.1 ICS67 インプットキャプチャ状態制御レジスタ 67 0000 0233H 19.4.1 ICSEL0 周辺機能による DMA 転送要求のクリア選択レジスタ 0 0000 04F0H 32.3.2 ICSEL2 周辺機能による DMA 転送要求のクリア選択レジスタ 2 0000 04F2H 32.3.3 ICSEL4 周辺機能による DMA 転送要求のクリア選択レジスタ 4 0000 04F4H 32.3.4 ICSEL6 周辺機能による DMA 転送要求のクリア選択レジスタ 6 0000 04F6H 32.3.5 ICSEL7 周辺機能による DMA 転送要求のクリア選択レジスタ 7 0000 04F7H 32.3.6 ICSEL8 周辺機能による DMA 転送要求のクリア選択レジスタ 8 0000 04F8H 32.3.7 ICSEL9 周辺機能による DMA 転送要求のクリア選択レジスタ 9 0000 04F9H 32.3.8 ICSEL10 周辺機能による DMA 転送要求のクリア選択レジスタ 10 0000 04FAH 32.3.9 IORR0 IO 転送要求設定レジスタ 0 0000 0490H 32.3.1 IORR1 IO 転送要求設定レジスタ 1 0000 0491H 32.3.1 IORR2 IO 転送要求設定レジスタ 2 0000 0492H 32.3.1 IORR3 IO 転送要求設定レジスタ 3 0000 0493H 32.3.1 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1161 付録 B レジスタ一覧 MB91665 シリーズ IPCP0 インプットキャプチャデータレジスタ 0 0000 020CH 19.4.2 IPCP1 インプットキャプチャデータレジスタ 1 0000 0210H 19.4.2 IPCP2 インプットキャプチャデータレジスタ 2 0000 0214H 19.4.2 IPCP3 インプットキャプチャデータレジスタ 3 0000 0218H 19.4.2 IPCP4 インプットキャプチャデータレジスタ 4 0000 0220H 19.4.2 IPCP5 インプットキャプチャデータレジスタ 5 0000 0224H 19.4.2 IPCP6 インプットキャプチャデータレジスタ 6 0000 0228H 19.4.2 IPCP7 インプットキャプチャデータレジスタ 7 0000 022CH 19.4.2 IRPR0H 割込み要求一括読出し機能レジスタ 0 上位 0000 01B0H 11.3.1 IRPR3H 割込み要求一括読出し機能レジスタ 3 上位 0000 01B6H 11.3.3 IRPR4H 割込み要求一括読出し機能レジスタ 4 上位 0000 01B8H 11.3.5 IRPR2L 割込み要求一括読出し機能レジスタ 2 下位 0000 01B5H 11.3.2 IRPR3L 割込み要求一括読出し機能レジスタ 3 下位 0000 01B7H 11.3.4 IRPR4L 割込み要求一括読出し機能レジスタ 4 下位 0000 01B9H 11.3.6 ISBA0 7 ビットスレーブアドレスレジスタ 0 0000 00BDH 26.21.7 ISBA1 7 ビットスレーブアドレスレジスタ 1 0000 0071H 26.21.7 ISBA2 7 ビットスレーブアドレスレジスタ 2 0000 007DH 26.21.7 ISBA6 7 ビットスレーブアドレスレジスタ 6 0000 00ADH 26.21.7 ISMK0 7 ビットスレーブアドレスマスクレジスタ 0 0000 00BCH 26.21.6 ISMK1 7 ビットスレーブアドレスマスクレジスタ 1 0000 0070H 26.21.6 ISMK2 7 ビットスレーブアドレスマスクレジスタ 2 0000 007CH 26.21.6 ISMK6 7 ビットスレーブアドレスマスクレジスタ 6 0000 00ACH 26.21.6 メインタイマ制御レジスタ 0000 0512H 6.3.1 NDE0 N-ch オープンドレイン制御レジスタ 0 0000 04DCH 14.4.7 NDE1 N-ch オープンドレイン制御レジスタ 1 0000 04DDH 14.4.7 OCCP0 アウトプットコンペアレジスタ 0 0000 0234H 20.4.1 OCCP1 アウトプットコンペアレジスタ 1 0000 0238H 20.4.1 OCCP2 アウトプットコンペアレジスタ 2 0000 023CH 20.4.1 OCCP3 M MTMCR N O アウトプットコンペアレジスタ 3 0000 0240H 20.4.1 OCCP4 アウトプットコンペアレジスタ 4 0000 0248H 20.4.1 OCCP5 アウトプットコンペアレジスタ 5 0000 024CH 20.4.1 OCCP6 アウトプットコンペアレジスタ 6 0000 0250H 20.4.1 OCCP7 アウトプットコンペアレジスタ 7 0000 0254H 20.4.1 OCSH1 コンペア制御レジスタ上位 1 0000 0244H 20.4.2 OCSH3 コンペア制御レジスタ上位 3 0000 0246H 20.4.2 OCSH5 コンペア制御レジスタ上位 5 0000 0258H 20.4.2 1162 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 B レジスタ一覧 MB91665 シリーズ OCSH7 コンペア制御レジスタ上位 7 0000 025AH 20.4.2 OCSL0 コンペア制御レジスタ下位 0 0000 0245H 20.4.3 OCSL2 コンペア制御レジスタ下位 2 0000 0247H 20.4.3 OCSL4 コンペア制御レジスタ下位 4 0000 0259H 20.4.3 OCSL6 コンペア制御レジスタ下位 6 0000 025BH 20.4.3 P PCCR0 優先変換コントロールレジスタ 0 0000 012CH 25.4.7 PCFD0 優先変換 FIFO データレジスタ 0 0000 012EH 25.4.9 PCIS0 優先変換入力選択レジスタ 0 0000 0130H 25.4.10 PCR0 プルアップ制御レジスタ 0 0000 0420H 14.4.5 PCR1 プルアップ制御レジスタ 1 0000 0421H 14.4.5 PCR5 プルアップ制御レジスタ 5 0000 0425H 14.4.5 PCR6 プルアップ制御レジスタ 6 0000 0426H 14.4.5 PCR7 プルアップ制御レジスタ 7 0000 0427H 14.4.5 PCR8 プルアップ制御レジスタ 8 0000 0428H 14.4.5 PDR0 ポートデータレジスタ 0 0000 0000H 14.4.4 PDR1 ポートデータレジスタ 1 0000 0001H 14.4.4 PDR2 ポートデータレジスタ 2 0000 0002H 14.4.4 PDR5 ポートデータレジスタ 5 0000 0005H 14.4.4 PDR6 ポートデータレジスタ 6 0000 0006H 14.4.4 PDR7 ポートデータレジスタ 7 0000 0007H 14.4.4 PDR8 ポートデータレジスタ 8 0000 0008H 14.4.4 PDRH ポートデータレジスタ H 0000 0011H 14.4.4 PDRK ポートデータレジスタ K 0000 0014H 14.4.4 PFNS0 優先 FIFO 段数設定レジスタ 0 0000 012DH 25.4.8 PFR0 ポート機能レジスタ 0 0000 04A0H 14.4.2 PFR1 ポート機能レジスタ 1 0000 04A1H 14.4.2 PFR2 ポート機能レジスタ 2 0000 04A2H 14.4.2 PFR3 ポート機能レジスタ 3 0000 04A3H 14.4.2 PFR4 ポート機能レジスタ 4 0000 04A4H 14.4.2 PFR5 ポート機能レジスタ 5 0000 04A5H 14.4.2 PFR6 ポート機能レジスタ 6 0000 04A6H 14.4.2 PFR7 ポート機能レジスタ 7 0000 04A7H 14.4.2 PFR8 ポート機能レジスタ 8 0000 04A8H 14.4.2 PFRA ポート機能レジスタ A 0000 04AAH 14.4.2 PFRG ポート機能レジスタ G 0000 04B0H 14.4.2 PFRH ポート機能レジスタ H 0000 04B1H 14.4.2 PLLCR PLL 設定レジスタ 0000 0514H 4.4.4 RCRH1 リロードコンペアレジスタ上位 1 0000 01D0H 24.4.1 RCRL1 リロードコンペアレジスタ下位 1 0000 01D1H 24.4.1 R CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1163 付録 B レジスタ一覧 MB91665 シリーズ RDR0 受信データレジスタ 0 0000 0064H 26.4.5, 26.13.5, 26.21.5 RDR1 受信データレジスタ 1 0000 006CH 26.4.5, 26.13.5, 26.21.5 RDR2 受信データレジスタ 2 0000 0078H 26.4.5, 26.13.5, 26.21.5 RDR6 受信データレジスタ 6 0000 00A8H 26.4.5, 26.13.5, 26.21.5 RSTCR リセット制御レジスタ 0000 0481H 9.4.2 RSTRR リセット要因レジスタ 0000 0480H 9.4.1 SCCR0 スキャン変換コントロールレジスタ 0 0000 0124H 25.4.3 SCFD0 スキャン変換 FIFO データレジスタ 0 0000 0126H 25.4.5 SCIS00 スキャン変換入力選択レジスタ 00 0000 012BH 25.4.6 SCIS10 スキャン変換入力選択レジスタ 10 0000 012AH 25.4.6 SCIS20 スキャン変換入力選択レジスタ 20 0000 0129H 25.4.6 SCR0 シリアル制御レジスタ 0 0000 0060H 26.4.1, 26.13.1 SCR1 シリアル制御レジスタ 1 0000 0068H 26.4.1, 26.13.1 SCR2 シリアル制御レジスタ 2 0000 0074H 26.4.1, 26.13.1 SCR6 シリアル制御レジスタ 6 0000 00A4H 26.4.1, 26.13.1 SFNS0 スキャン変換 FIFO 段数設定レジスタ 0 0000 0125H 25.4.4 SLPRR S スリープレート設定レジスタ 0000 0483H 8.3.2 SMR0 シリアルモードレジスタ 0 0000 0061H 26.4.2, 26.13.2, 26.21.2 SMR1 シリアルモードレジスタ 1 0000 0069H 26.4.2, 26.13.2, 26.21.2 SMR2 シリアルモードレジスタ 2 0000 0075H 26.4.2, 26.13.2, 26.21.2 SMR6 シリアルモードレジスタ 6 0000 00A5H 26.4.2, 26.13.2, 26.21.2 SSR0 シリアルステータスレジスタ 0 0000 0062H 26.4.3, 26.13.3, 26.21.4 SSR1 シリアルステータスレジスタ 1 0000 006AH 26.4.3, 26.13.3, 26.21.4 SSR2 シリアルステータスレジスタ 2 0000 0076H 26.4.3, 26.13.3, 26.21.4 SSR6 シリアルステータスレジスタ 6 0000 00A6H 26.4.3, 26.13.3, 26.21.4 STBCR スタンバイ制御レジスタ 0000 0482H 8.3.1 STMCR サブタイマ制御レジスタ 0000 0513H 7.3.1 TCCSH0 タイマ状態制御レジスタ上位 0 0000 0208H 18.4.4 TCCSH1 タイマ状態制御レジスタ上位 1 0000 0268H 18.4.4 TCCSL0 タイマ状態制御レジスタ下位 0 0000 0209H 18.4.4 TCCSL1 タイマ状態制御レジスタ下位 1 0000 0269H 18.4.4 TCDT0 タイマデータレジスタ 0 0000 0204H 18.4.3 TCDT1 タイマデータレジスタ 1 0000 0264H 18.4.3 TDR0 T 送信データレジスタ 0 0000 0064H 26.4.5, 26.13.5, 26.21.5 TDR1 送信データレジスタ 1 0000 006CH 26.4.5, 26.13.5, 26.21.5 TDR2 送信データレジスタ 2 0000 0078H 26.4.5, 26.13.5, 26.21.5 TDR6 送信データレジスタ 6 0000 00A8H 26.4.5, 26.13.5, 26.21.5 TMCSR0 コントロールステータスレジスタ 0 0000 004EH 21.4.1 TMCSR1 コントロールステータスレジスタ 1 0000 0056H 21.4.1 1164 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 B レジスタ一覧 MB91665 シリーズ TMCSR2 コントロールステータスレジスタ 2 0000 005EH 21.4.1 TMR0 16 ビットタイマレジスタ 0 0000 004AH 21.4.3 TMR1 16 ビットタイマレジスタ 1 0000 0052H 21.4.3 TMR2 16 ビットタイマレジスタ 2 0000 005AH 21.4.3 TMRLRA0 16 ビットタイマリロードレジスタ A0 0000 0048H 21.4.2 TMRLRA1 16 ビットタイマリロードレジスタ A1 0000 0050H 21.4.2 TMRLRA2 16 ビットタイマリロードレジスタ A2 0000 0058H 21.4.2 TMRLRB0 16 ビットタイマリロードレジスタ B0 0000 004CH 21.4.2 TMRLRB1 16 ビットタイマリロードレジスタ B1 0000 0054H 21.4.2 TMRLRB2 16 ビットタイマリロードレジスタ B2 0000 005CH 21.4.2 TMSP タイムスタンプレジスタ 0000 213CH 29.3.6 UCCR USB クロック設定レジスタ 0000 051CH 27.3.1 UDCC UDC 制御レジスタ 0000 2121H 29.3.3 UDCIE UDC 割込み許可レジスタ 0000 2140H 29.3.8 UDCRH1 アップダウンカウントレジスタ上位 1 0000 01D2H 24.4.2 UDCRL1 アップダウンカウントレジスタ下位 1 0000 01D3H 24.4.2 UDCS U UDC ステータスレジスタ 0000 2141H 29.3.7 USBEN USB 許可レジスタ 0000 21A6H 29.3.2 USBSEL USB 選択レジスタ 0000 21A5H 29.3.1 WCCR 時計カウンタ制御レジスタ 0000 051AH 17.3.2 WCRD 時計カウンタリードレジスタ 0000 0518H 17.3.3 WCRL 時計カウンタリロードレジスタ 0000 0519H 17.3.1 WDTCPR0 W ウォッチドッグタイマ 0 クリアレジスタ 0000 003DH 16.3.2 WDTCR0 ウォッチドッグタイマ 0 制御レジスタ 0000 003CH 16.3.1 WRAR00 ワイルドレジスタアドレスレジスタ 00 0000 0380H 35.3.1 WRAR01 ワイルドレジスタアドレスレジスタ 01 0000 0388H 35.3.1 WRAR02 ワイルドレジスタアドレスレジスタ 02 0000 0390H 35.3.1 WRAR03 ワイルドレジスタアドレスレジスタ 03 0000 0398H 35.3.1 WRAR04 ワイルドレジスタアドレスレジスタ 04 0000 03A0H 35.3.1 WRAR05 ワイルドレジスタアドレスレジスタ 05 0000 03A8H 35.3.1 WRAR06 ワイルドレジスタアドレスレジスタ 06 0000 03B0H 35.3.1 WRAR07 ワイルドレジスタアドレスレジスタ 07 0000 03B8H 35.3.1 WRAR08 ワイルドレジスタアドレスレジスタ 08 0000 03C0H 35.3.1 WRAR09 ワイルドレジスタアドレスレジスタ 09 0000 03C8H 35.3.1 WRAR10 ワイルドレジスタアドレスレジスタ 10 0000 03D0H 35.3.1 WRAR11 ワイルドレジスタアドレスレジスタ 11 0000 03D8H 35.3.1 WRAR12 ワイルドレジスタアドレスレジスタ 12 0000 03E0H 35.3.1 WRAR13 ワイルドレジスタアドレスレジスタ 13 0000 03E8H 35.3.1 WRAR14 ワイルドレジスタアドレスレジスタ 14 0000 03F0H 35.3.1 CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1165 付録 B レジスタ一覧 MB91665 シリーズ WRAR15 ワイルドレジスタアドレスレジスタ 15 0000 03F8H 35.3.1 WRDR00 ワイルドレジスタデータレジスタ 00 0000 0384H 35.3.2 WRDR01 ワイルドレジスタデータレジスタ 01 0000 038CH 35.3.2 WRDR02 ワイルドレジスタデータレジスタ 02 0000 0394H 35.3.2 WRDR03 ワイルドレジスタデータレジスタ 03 0000 039CH 35.3.2 WRDR04 ワイルドレジスタデータレジスタ 04 0000 03A4H 35.3.2 WRDR05 ワイルドレジスタデータレジスタ 05 0000 03ACH 35.3.2 WRDR06 ワイルドレジスタデータレジスタ 06 0000 03B4H 35.3.2 WRDR07 ワイルドレジスタデータレジスタ 07 0000 03BCH 35.3.2 WRDR08 ワイルドレジスタデータレジスタ 08 0000 03C4H 35.3.2 WRDR09 ワイルドレジスタデータレジスタ 09 0000 03CCH 35.3.2 WRDR10 ワイルドレジスタデータレジスタ 10 0000 03D4H 35.3.2 WRDR11 ワイルドレジスタデータレジスタ 11 0000 03DCH 35.3.2 WRDR12 ワイルドレジスタデータレジスタ 12 0000 03E4H 35.3.2 WRDR13 ワイルドレジスタデータレジスタ 13 0000 03ECH 35.3.2 WRDR14 ワイルドレジスタデータレジスタ 14 0000 03F4H 35.3.2 WRDR15 ワイルドレジスタデータレジスタ 15 0000 03FCH 35.3.2 WREN ワイルドレジスタデータイネーブルレジスタ 0000 033AH 35.3.3 1166 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 C 割込みベクタ MB91665 シリーズ 付録 C 割込みベクタ 本製品の割込みベクタテーブルについて説明します。割込み要因と割込みベクタおよび割込 みコントロールレジスタ (ICR00 ∼ ICR47) の割当てが配置されています。 リセット TBR 割込みレベル オフセット 初期値時の 10 進 16 進 設定レジスタ アドレス 000F FFFCH 0 00 3FC − H システム予約 1 01 − 3F8H 000F FFF8H システム予約 2 02 − 3F4H 000F FFF4H システム予約 3 03 − 3F0H 000F FFF0H システム予約 4 04 − 3ECH 000F FFECH システム予約 5 05 − 3E8H 000F FFE8H システム予約 6 06 − 3E4H 000F FFE4H システム予約 7 07 − 3E0H 000F FFE0H システム予約 8 08 − 3DCH 000F FFDCH INTE 命令 9 09 − 3D8H 000F FFD8H システム予約 10 0A − 3D4H 000F FFD4H システム予約 11 0B − 3D0H 000F FFD0H ステップトレーストラップ 12 0C − 3CCH 000F FFCCH システム予約 13 0D − 3C8H 000F FFC8H 未定義命令例外 14 0E − 3C4H 000F FFC4H − 15 0F 15 (FH) 固定 3C0H 000F FFC0H 外部割込み要求 ch.0 ∼ ch.7 16 10 ICR00 3BCH 000F FFBCH 予約 17 11 ICR01 3B8H 000F FFB8H 外部割込み要求 ch.16 ∼ ch.23 18 12 ICR02 3B4H 000F FFB4H 予約 19 13 ICR03 3B0H 000F FFB0H 16 ビットリロードタイマ ch.0 ∼ ch.2 20 14 ICR04 3ACH 000F FFACH UART/CSIO/ I2C ch.0 の受信割込み要求 21 15 ICR05 3A8H 000F FFA8H UART/CSIO/ I2C ch.0 の送信割込み要求 UART/CSIO ch.0 の送信バスアイドル割込み要求 22 16 ICR06 3A4H 000F FFA4H UART/CSIO/ I2C ch.1 の受信割込み要求 23 17 ICR07 3A0H 000F FFA0H UART/CSIO/ I2C ch.1 の送信割込み要求 UART/CSIO ch.1 の送信バスアイドル割込み要求 24 18 ICR08 39CH 000F FF9CH I2C ch.1 のステータス割込み要求 25 19 ICR09 398H 000F FF98H UART/CSIO/ I2C ch.2 の受信割込み要求 26 1A ICR10 394H 000F FF94H UART/CSIO/ ch.2 の送信割込み要求 UART/CSIO ch.2 の送信バスアイドル割込み要求 27 1B ICR11 390H 000F FF90H I2C ch.2 のステータス割込み要求 28 1C ICR12 38CH 000F FF8CH 予約 29 1D ICR13 388H 000F FF88H 予約 30 1E ICR14 384H 000F FF84H 予約 31 1F ICR15 380H 000F FF80H 割込み番号 割込み要因 ( 周辺機能 ) I2C CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1167 付録 C 割込みベクタ MB91665 シリーズ 予約 TBR 割込みレベル オフセット 初期値時の 10 進 16 進 設定レジスタ アドレス 000F FF7CH 32 20 ICR16 37CH 予約 33 21 ICR17 378H 000F FF78H 予約 34 22 ICR18 374H 000F FF74H UART/CSIO/ I2C ch.6 の受信割込み要求 35 23 ICR19 370H 000F FF70H UART/CSIO/ I2C ch.6 の送信割込み要求 UART/CSIO ch.6 の送信バスアイドル割込み要求 I2C ch.6 のステータス割込み要求 36 24 ICR20 36CH 000F FF6CH 32 ビットインプットキャプチャ ch.4 ∼ ch.7 37 25 ICR21 368H 000F FF68H 32 ビットアウトプットコンペア ch.4 ∼ ch.7 38 26 ICR22 364H 000F FF64H 予約 39 27 ICR23 360H 000F FF60H 16 ビットアップダウンカウンタ ch.0 40 28 ICR24 35CH 000F FF5CH メインタイマ / サブタイマ / 時計カウンタ 41 29 ICR25 358H 000F FF58H 10 ビット A/D コンバータ ・スキャン変換割込み要求 ・優先変換割込み要求 ・FIFO オーバラン割込み要求 ・変換結果比較割込み要求 42 2A ICR26 354H 000F FF54H 32 ビットフリーランタイマ ch.0, ch.1 43 2B ICR27 350H 000F FF50H 32 ビットインプットキャプチャ ch.0 ∼ ch.3 44 2C ICR28 34CH 000F FF4CH 32 ビットアウトプットコンペア ch.0 ∼ ch.3 45 2D ICR29 348H 000F FF48H ベースタイマ ch.0 46 2E ICR30 344H 000F FF44H ベースタイマ ch.1 47 2F ICR31 340H 000F FF40H ベースタイマ ch.2 48 30 ICR32 33CH 000F FF3CH ベースタイマ ch.3 49 31 ICR33 338H 000F FF38H 予約 50 32 ICR34 334H 000F FF34H 予約 51 33 ICR35 330H 000F FF30H 予約 52 34 ICR36 32CH 000F FF2CH 予約 53 35 ICR37 328H 000F FF28H USB ファンクション (End point 1 ∼ 3 の DRQ) 割込み番号 割込み要因 ( 周辺機能 ) 54 36 ICR38 324H 000F FF24H USB ファンクション (End point 0 の DRQI, DRQO と各ス 55 テータス )/USB ホスト ( 各ステータス ) 37 ICR39 320H 000F FF20H 予約 56 38 ICR40 31CH 000F FF1CH DMA コントローラ (DMAC) ch.0 57 39 ICR41 318H 000F FF18H DMA コントローラ (DMAC) ch.1 58 3A ICR42 314H 000F FF14H DMA コントローラ (DMAC) ch.2 59 3B ICR43 310H 000F FF10H DMA コントローラ (DMAC) ch.3 60 3C ICR44 30CH 000F FF0CH 予約 61 3D ICR45 308H 000F FF08H システム予約 62 3E ICR46 304H 000F FF04H 遅延割込み 63 3F ICR47 300H 000F FF00H システム予約 (REALOS で使用 ) 64 40 − 2FCH 000F FEFCH システム予約 (REALOS で使用 ) 65 41 − 2F8H 000F FEF8H INT 命令で使用 66 ∼ 255 42 ~ FF − 2F4H 000F FEF4H ∼ 000H ∼ 000F FC00H 1168 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 C 割込みベクタ MB91665 シリーズ *:USB 割込み要因 割込み番号 10 進 16 進 54 36 55 CM71-10158-1 37 USB 割込み要因 詳細内容 USB ファンクション (End Point1 ∼ 3 の DRQ) DRQ (End Point1 ∼ 3) USB ファンクション (End Point 0 の DRQI, DRQO と各ステータス ) DRQI, DRQO, SPK, SUSP, SOF, BRST, CONF, WKUP USB ホスト ( 各ステータス ) DIRQ, URIRQ, RWKIRQ, CNNIRQ, SOFIRQ, CMPIRQ FUJITSU SEMICONDUCTOR LIMITED 1169 付録 D CPU の状態における端子状態 付録 D MB91665 シリーズ CPU の状態における端子状態 CPU の状態と端子の状態を示します。 ■ 端子状態 端子の状態として使用している語句は , 以下の意味を持ちます。 • INIT="L" 時 INIT 端子が "L" レベルの期間です。 • INIT="H" 時 INIT 端子が "L" レベルから "H" レベルに遷移した直後の状態です。 • SLVL1 スタンバイ制御レジスタ (STBCR) にあるスタンバイレベル設定ビットです。 • 入力可 入力機能が使用可能な状態です。 • 入力不可 入力機能が使用できない状態です。 • 出力 Hi-Z 端子駆動用トランジスタを駆動禁止状態にし , 端子を Hi-Z にします。 • 直前状態保持 本モードになる直前に出力していた状態を保持します。 内蔵されている周辺機能が動作中であれば , その周辺機能にしたがって出力を行い ます。 ポートなどとして出力している場合は , その出力を保持します。 • 内部入力 "0" 固定 端子からすぐの入力ゲートで外部入力を遮断し , 内部へ "0" を伝えています。 • 割込み機能選択許可時入力可能 端子機能を外部割込み要求入力端子に設定し , 外部割込み要求を許可している場合 にのみ入力できます。 1170 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 D CPU の状態における端子状態 MB91665 シリーズ • 端子状態一覧 端子名 機能名 INIT INIT 初期値 INIT="L" 時 INIT="H" 時 ― ― X0 X0 入力可 入力可 X1 X1 入力可 入力可 X0A X0A スリープ モード 入力可 (INIT 入力時は , PK1 参照 ポート選択時は , 入力不可 ) 入力不可 入力不可 X1A X1A (INIT 入力時は , PK0 参照 ポート選択時は , 入力不可 ) 入力不可 入力不可 MD0 MD0 入力可 入力可 MD1 MD1 入力可 入力可 P00 P00/D00/TIOA0/SOUT0_1/IN0 P01 P01/D01/TIOB0/SIN0_1/IN1 P02 P02/D02/TIOA1/SCK0_1/IN2 P03 P03/D03/TIOB1/IN3 出力 Hi-Z 出力 Hi-Z 入力可 P04 P04/D04/TIOA2/SOUT1/IN4 P05 P05/D05/TIOB2/SIN1/IN5 P06 P06/D06/TIOA3/SCK1/IN6 P07 P07/D07/TIOB3/IN7 P10 P10/D08/SOUT2/INT0 P11 P11/D09/SIN2/INT1 P12 P12/D10/SCK2/INT2 P13 P13/D11/INT3 P14 P14/D12/AIN1/INT4/OUT4 P15 P15/D13/BIN1/INT5/OUT5 P16 P16/D14/ZIN1/INT6/OUT6 P17 P17/D15/INT7/OUT7 P20 P20/A00/TMO1_1/A16 P21 P21/A01/TMO2_1/A17 P22 P22/A02/TIOA0_1/A18 P23 P23/A03/TIOB0_1/A19 P24 P24/A04/OUT0/A20 P25 P25/A05/OUT1/A21 P26 P26/A06/OUT2/A22 P27 P27/A07/OUT3/A23 CM71-10158-1 直前状態 保持 スタンバイモード SLVL1=0 SLVL1=1 入力可 入力可 Hi-Z Hi-Z または 入力可 または 入力可 “H” 出力 または 入力可 “H” 出力 または 入力可 Hi-Z Hi-Z または 入力可 または 入力可 “H” 出力 または 入力可 “H” 出力 または 入力可 入力可 入力可 直前状態 保持 出力 Hi-Z/ 内部入力 “0” 固定 出力 Hi-Z/ 内部入力 “0” 固定 出力 Hi-Z 出力 Hi-Z 入力可 直前状態 保持 直前状態 保持 出力 Hi-Z 出力 Hi-Z 入力可 直前状態 保持 直前状態 保持 FUJITSU SEMICONDUCTOR LIMITED 割込み 機能選択 許可時 入力可能 出力 Hi-Z / 内部入力 “0” 固定 1171 付録 D CPU の状態における端子状態 初期値 端子名 機能名 P50 P50/CS0/TMO0_1 P51 P51/CS1/TIOA2_1/SOUT1_1 P52 P52/CS2/TIOB2_1/SIN1_1 P53 P53/CS3/FRCK1/TIOA3_1/SCK_1 P54 P54/AS/AIN1_1/SOUT6 P55 P55/RD/BIN1_1/ADTRG0/SIN6 P56 P56/WR0/ZIN1_1/FRCK0/SCK6 P57 P57/WR1/TIOB3_1/TMI2_1 P60 P60/RDY/TIOA1_1/SOUT2_1 P61 P61/SYSCLK/TIOB1_1/SIN2_1 P70 P70/AN0/OUT0_1/INT16 P71 P71/AN1/OUT1_1/INT17 P72 P72/AN2/TMO0/OUT2_1/INT18 P73 P73/AN3/TMO1/OUT3_1/INT19 P74 P74/AN4/TMO2/OUT4_1/INT20 P75 P75/AN5/SOUT0/TMI0/OUT5_1/ INT21 P76 P76/AN6/SIN0/TMI1/OUT6_1/ INT22 P77 P77/AN7/SCK0/TMI2/OUT7_1/ INT23 P80 P80/AN8/IN0_1/TMI0_1 P81 P81/AN9/IN1_1/TMI1_1 P82 P82/AN10/IN2_1 P83 P83/AN11/IN3_1 PH2 PH2/SCK2_1/INT2_1 PH3 PH3/INT3_1 PK0 PK0 PK1 PK1 UDP UDP (USB) UDM 1172 UDM (USB) MB91665 シリーズ スタンバイモード INIT="L" 時 INIT="H" 時 スリープ モード 出力 Hi-Z 出力 Hi-Z 入力可 直前状態 保持 直前状態 保持 出力 Hi-Z / 内部入力 “0” 固定 出力 Hi-Z 出力 Hi-Z 入力可 直前状態 保持 直前状態 保持 出力 Hi-Z/ 内部入力 “0” 固定 SLVL1=0 SLVL1=1 出力 Hi-Z/ 内部入力 “0” 固定 出力 Hi-Z 出力 Hi-Z 入力不可 直前状態 保持 直前状態 保持 出力 Hi-Z 出力 Hi-Z 入力不可 直前状態 保持 直前状態 保持 割込み 機能選択 許可時 入力可能 出力 Hi-Z/ 内部入力 “0” 固定 出力 Hi-Z/ 内部入力 “0” 固定 出力 Hi-Z 出力 Hi-Z 入力可 直前状態 保持 直前状態 保持 出力 Hi-Z 出力 Hi-Z/ 内部入力 “0” 固定 直前状態 保持 直前状態 保持 出力 Hi-Z/ 内部入力 “0” 固定 出力 Hi-Z 出力 Hi-Z 入力可 直前状態 保持 または 入力可 直前状態 保持 直前状態 保持 FUJITSU SEMICONDUCTOR LIMITED 割込み 機能選択 許可時 入力可能 CM71-10158-1 付録 D CPU の状態における端子状態 MB91665 シリーズ • 端子状態一覧 ( シリアルライタモード ) 端子名 初期値 機能名 非同期シリアル 書込み時 INIT = “L” 時 同期シリアル 書込み時 INIT = “H” 時 INIT INIT ― ― ― X0 X0 入力可 入力可 入力可 X1 X1 入力可 入力可 入力可 入力不可 入力不可 入力不可 X0A X0A (INIT 入力時は , PK1 参照 ポート選択時は , 入力不可 ) X1A (INIT 入力時は , PK0 参照 ポート選択時は , 入力不可 ) 入力不可 入力不可 入力不可 MD0 MD0 入力可 入力可 入力可 MD1 MD1 入力可 入力可 入力可 P00 P00/D00/TIOA0/SOUT0_1/IN0 P01 P01/D01/TIOB0/SIN0_1/IN1 P02 P02/D02/TIOA1/SCK0_1/IN2 P03 P03/D03/TIOB1/IN3 P04 P04/D04/TIOA2/SOUT1/IN4 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 P05 P05/D05/TIOB2/SIN1/IN5 P06 P06/D06/TIOA3/SCK1/IN6 P07 P07/D07/TIOB3/IN7 P10 P10/D08/SOUT2/INT0 P11 P11/D09/SIN2/INT1 P12 P12/D10/SCK2/INT2 P13 P13/D11/INT3 P14 P14/D12/AIN1/INT4/OUT4 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 P15 P15/D13/BIN1/INT5/OUT5 P16 P16/D14/ZIN1/INT6/OUT6 P17 P17/D15/INT7/OUT7 P20 P20/A00/TMO1_1/A16 P21 P21/A01/TMO2_1/A17 P22 P22/A02/TIOA0_1/A18 P23 P23/A03/TIOB0_1/A19 P24 P24/A04/OUT0/A20 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 P25 P25/A05/OUT1/A21 P26 P26/A06/OUT2/A22 P27 P27/A07/OUT3/A23 X1A CM71-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1173 付録 D CPU の状態における端子状態 端子名 MB91665 シリーズ 初期値 機能名 非同期シリアル 書込み時 INIT = “L” 時 P50 P50/CS0/TMO0_1 P51 P51/CS1/TIOA2_1/SOUT1_1 P52 P52/CS2/TIOB2_1/SIN1_1 P53 P53/CS3/FRCK1/TIOA3_1/SCK_1 P54 P54/AS/AIN1_1/SOUT6 P55 P55/RD/BIN1_1/ADTRG0/SIN6 P56 P56/WR0/ZIN1_1/FRCK0/SCK6 P57 P57/WR1/TIOB3_1/TMI2_1 P60 P60/RDY/TIOA1_1/SOUT2_1 P61 P61/SYSCLK/TIOB1_1/SIN2_1 P70 P70/AN0/OUT0_1/INT16 P71 P71/AN1/OUT1_1/INT17 P72 P72/AN2/TMO0/OUT2_1/INT18 P73 P73/AN3/TMO1/OUT3_1/INT19 P74 P74/AN4/TMO2/OUT4_1/INT20 P75 P75/AN5/SOUT0/TMI0/OUT5_1/INT21 P76 P76/AN6/SIN0/TMI1/OUT6_1/INT22 同期シリアル 書込み時 INIT = “H” 時 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 出力 Hi-Z 出力 Hi-Z 入力不可 出力 Hi-Z 入力不可 出力 Hi-Z 入力可 出力 出力 出力 Hi-Z 入力可 出力 Hi-Z 入力可 出力 Hi-Z 入力不可 出力 Hi-Z 入力可 出力 Hi-Z 出力 Hi-Z 入力不可 出力 Hi-Z 入力不可 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 出力 Hi-Z 出力 Hi-Z 入力可 出力 Hi-Z 入力可 出力 Hi-Z P77 P77/AN7/SCK0/TMI2/OUT7_1/INT23 P80 P80/AN8/IN0_1/TMI0_1 P81 P81/AN9/IN1_1/TMI1_1 P82 P82/AN10/IN2_1 P83 P83/AN11/IN3_1 PH2 PH2/SCK2_1/INT2_1 PH3 PH3/INT3_1 PK0 PK0 PK1 PK1 UDP UDP (USB) UDM 1174 UDM (USB) FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 E 命令一覧 E.1 MB91665 シリーズ 付録 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 ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ │ │ │ │ │ │ │ (2) (3) (4) (5) (6) (7) (8) ニーモニック ADD *ADD │ (1) RMW 動作 ○ 備考 ・ ・ (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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1175 付録 E 命令一覧 E.1 MB91665 シリーズ (6) フラグ変化を表しています。 フラグ変化 フラグの意味 C : 変化する N : ネガティブフラグ − : 変化しない Z : ゼロフラグ 0 : クリア V : オーバフラグ 1 : セット C : キャリフラグ (7) RMW 系命令時は○が入ります。 (8) 命令動作が表記されています。 ■ アドレッシングモードの記号 1176 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-10158-1 付録 E 命令一覧 E.1 MB91665 シリーズ @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-10158-1 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 1177 付録 E 命令一覧 E.1 MB91665 シリーズ ■ 動作欄 命令一覧表の動作欄と , 命令細則のオペレーションに使用されている記号です。 extu ( ) ゼロ拡張操作を示します。上位ビットの欠けている部分に "0" ビットを補います。 extn ( ) マイナス拡張操作を示します。上位ビットの欠けている部分 に "1" ビットを補います。 exts ( ) 符号拡張操作を示します。( ) 内のデータの MSB が "0" なら ばゼロ拡張操作をし , MSB が "1" ならばマイナス拡張操作をし ます。 & ビット毎の論理積 (AND) を示します。 | ビット毎の論理和 (OR) を示します。 ^ ビット毎の排他的論理和 (EXOR) を示します。 () 間接アドレス指定を示します。( ) 内のレジスタまたは式の示 すアドレスのメモリ読み出し・書き込み値です。 {} 演算の優先順位を明示するための括弧になります。( ) を間接 アドレス指定に使用しているため , { } を使用します。 条件実行を示します。条件が成立したときに then の次の式を , if ( 条件 ) then { 式 } 成立しなかったときに else の次の式を実行します。式は { } で または if ( 条件 ) then { 式 1} 囲み複数記述できます。 else { 式 2} [m:n] 1178 ビット m からビット n までを取り出して , 操作対象とします。 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 E 命令一覧 E.2 MB91665 シリーズ E.2 命令一覧表 FR80 ファミリ CPU の命令一覧を示します。 FR80 ファミリ CPU の命令数は全部で 162 あります。以下の 15 種類に分類しています。 • 加減算命令 • 比較演算命令 • 論理演算命令 • ビット操作演算命令 • 乗除算命令 • シフト演算命令 • 即値データ転送命令 • メモリロード命令 • メモリストア命令 • レジスタ間転送命令 / 専用レジスタ転送命令 • 遅延なし分岐命令 • 遅延分岐命令 • ダイレクトアドレス指定命令 • ビットサーチ命令 • その他の命令 表 E-1 加減算命令 ニーモニック CM71-10158-1 型 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 キャリ付き減算 1179 付録 E 命令一覧 E.2 MB91665 シリーズ 表 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 両方生成する場合もある。 1180 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 E 命令一覧 E.2 MB91665 シリーズ 表 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-10158-1 型 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 備考 論理シフト 論理シフト 算術シフト 1181 付録 E 命令一覧 E.2 MB91665 シリーズ 表 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 1182 FUJITSU SEMICONDUCTOR LIMITED CM71-10158-1 付録 E 命令一覧 E.2 MB91665 シリーズ 表 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-10158-1 型 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 1183 付録 E 命令一覧 E.2 MB91665 シリーズ 表 E-11 遅延なし分岐命令 ニーモニック 1184 型 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-10158-1 付録 E 命令一覧 E.2 MB91665 シリーズ • 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-10158-1 FUJITSU SEMICONDUCTOR LIMITED 1185 付録 E 命令一覧 E.2 MB91665 シリーズ 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 ビットサーチ命令 1186 OP CYC FLAG NZVC RMW ニーモニック 型 動作 SRCH0 Ri E 97-C 1 ----